概要
プロデルが、CLRらしいので、調べて見た。
サンプル、やってみた。
写真
サンプルコード
ーー// [77] もぐらたたきゲーム //
ーー動作環境 プロデル1.6.667以降
ーー投稿日 2019-08-12 22:16:53
ーー投稿者 ゆうと
// もぐらたたき //
穴画像という画像(「images\tile.png」)を作る
もぐら画像という画像(「images\mogura.png」)を作る
当たり画像という画像(「images\mogura-hit.png」)を作る
当たり音は「sounds\button51.mp3」
メイン画面を表示する
待機する
メイン画面とは
ウィンドウを継承する
-穴一覧
-得点=0
-残り時間:日時期間形式
はじめの手順
初期化する
穴一覧={}
残り時間=日時期間形式(「0:01:00」)を作ったもの
9回数にカウントして繰り返す
N=数-1
キャンバス1へ画像を描いて穴一覧(数)とする
その位置と大きさは{20 + N % 3 * 110, 20 + ((N - N % 3) / 3) * 110, 100, 100}
その伸縮は○
そのタグは、数
その画像は、穴画像
そのクリックされた時の手順は、画像クリック
そして
キャンバス1へ「もぐらたたき」という文字を描く
その位置は{350, 20}
そのフォントは「メイリオ」
その文字色は、緑色
その文字サイズは16
キャンバス1へ「Score:0」という文字を描いて得点ラベルとする
その位置は{350, 60}
そのフォントは「メイリオ」
その文字色は、緑色
その文字サイズは18
キャンバス1へ文字を描いて残り時間ラベルとする
その位置は{350, 100}
そのフォントは「メイリオ」
その文字色は、赤色
その文字サイズは16
キャンバス1へ「GAME OVER」という文字を描いてゲームオーバーラベルとする
その位置は{60, 150}
その文字色は、赤色
その文字サイズは、30
その表示は×
キャンバス1に子キャンバスを作って表紙キャンバスとする
その位置と大きさは{0, 0, 520, 520}
その背景色は、白
そのクリックされた時の手順は、スタートする
表紙キャンバスへ「もぐらたたき」という文字を描く
その位置は{60, 100}
その文字色は、緑色
その文字サイズは32
表紙キャンバスへ「クリックしてスタート」という文字を描く
その位置は{40, 200}
その文字色は、青色
その文字サイズは24
キャンバス1を更新する
タイマー1というタイマーを作る
タイマー1の時間になった時の手順は、時間になった
終わり
初期化する手順
この実質大きさは{740, 540}
この内容は「もぐらたたき」
初期化開始する
キャンバス1というキャンバスを作る
その位置と大きさは{0, 0, 740, 540}
そのフォントは「メイリオ,9」
その実質大きさは{740, 540}
そのドッキング方向は「全体」
初期化終了する
メイン画面の設計スケール比率は{144, 144}
終わり
スタートする手順
表紙キャンバスの表示は×
タイマー1の間隔は2000
タイマー1を開始する
終わり
画像クリックの手順
発生元の画像がもぐら画像なら
発生元の画像は、当たり画像
得点を10だけ増やす
得点ラベルの内容は「Score:[得点]」
得点が100なら
タイマー1の間隔を1000に変える
タイマー1を開始する
他で得点が200なら
タイマー1の間隔を800に変える
タイマー1を開始する
他で得点が300なら
タイマー1の間隔を500に変える
タイマー1を開始する
そして
そして
終わり
時間になった手順
9回数にカウントして繰り返す
穴一覧(数)の画像を穴画像に変える
そして
番号は、1から9までの乱数
穴一覧(番号)の画像をもぐら画像に変える
番号は、1から9までの乱数
穴一覧(番号)の画像をもぐら画像に変える
残り時間から1秒引く
残り時間ラベルの内容は、残り時間を「mm:ss」に整えたもの
残り時間の合計秒数が0なら
ゲームオーバーラベルの表示を○に変える
タイマー1を停止する
そして
終わり
終わり
【ファイル名】を鳴らす手順
エイリアス名は「wave1」
メディア制御へ「open "[ファイル名]" alias [エイリアス名]」を命令する
メディア制御へ「play [エイリアス名]」を命令する
繰り返す
もし[メディア制御から「status [エイリアス名] mode」を取得したもの]が「playing」でないなら、繰り返しから抜ける
0.1秒待つ
そして
メディア制御へ「stop [エイリアス名]」を命令する
メディア制御へ「close [エイリアス名]」を命令する
終わり
以上。