スロットマシン

ゲームを作ってみる

(スロットマシン)

スロットマシン (slot machine)とは、ギャンブルを目的とするコイン作動式のゲーム機のことである。複数の回転輪を並べて回転させ、停止した時の絵柄の組合せで得喪を決定する。


                                                                                                                             (出展: wikipedia)

●仕様

 ①16種類のLEDの表示パターンをランダムに生成する。
 ②パターンは回転中は位置関係を変更しないこと。
    ※当たりが出る確率は1/16であること。
 ③回転輪の絵柄は①で生成したLEDの表示パターンとする。
 ④PA0を押すと、回転輪が回転を始める。(回転速度は任意)
 ⑤PA1を押すと、回転輪が徐々に回転を遅くし停止する。この時、7が出れば当たり。表示を点滅させる。 
  (回転輪の停止に惰性を付ける事が難しければ、PA1を押した直後に停止するようにしてもよい。ただし、10点減点とする)
 ⑥外れた場合は、外れた数値をLEDに表示。
 ⑦PA2でリセット。初めから。

以上の状態遷移図と(50点)とプログラム(50点)を作成する。

なお、ランダムな数値を生成する関数として、以下を使用する。
※乱数を使ってパターンを作ることが難しければ、配列等を使って、パターンを固してしまってもよい。(10点減点とする)
 

#define S    1
#define A    1103515245
#define C    12345


// 乱数の発生
// 関数の返り値は0~65535の範囲
// 関数の返り値をunsigned intにして、符号の無い(=負の値の無い)値とする
unsigned int  rand () 
{
    static long int x;

    x = x * A + C;
    return (int)(x >>16) & 0xFFFF;
}


具体的な動作は、このプログラムで確認せよ。
 

最終更新:2014年12月24日 13:30
添付ファイル