ランダム関数を使用する
stop();これにより、このムービーを再生したときに1フレーム目で再生が止まった状態のままになります。
4.スクリプトアシストをオフにし以下のActionScriptを記述してください。
on(release){ gotoAndStop(Math.floor((Math.random()*4)+2)); }この式を分割して説明します。
on(release){ gotoAndStop(移動したいフレーム); }「on(release){}」でクリックされたとき「{ }」の中を実行する。「gotoAndStop()」は「( )」の中のフレームに移動して再生を停止するというのは以前登場しました。
2~5フレーム目がおみくじの結果画面になっているので、「( )」の中は2~5の整数が入力されれば良いです。そこで、「Math.random()」と「Math.floor()」という二つの関数を使用します。
X = (Math.random()*4)+2;「Math.random()」は0以上1未満の数値をランダムに出力する関数です。実際は「0.858065959531814」といった少数が出力されます。これに4をかけることで0以上、4未満の数字が出力されます。更に2を足すことで、2以上、6未満の数値を得られます。
Y = Math.floor(X);先程出力した数値を「Math.floor()」は小数点以下を切り捨てるという関数です。これを小数点以下を切り捨て2~5までの整数を得ることができました。
これでおみくじの完成です。今年の運勢はどうでしたか?
完成したファイルをダウンロード
今回解説した「Math.floor((Math.random()*整数の個数)+最小の整数)」というのは公式的にあらゆる言語で使用されています。フラッシュゲームを作成するには必須ですので是非マスターしてください。