赤上げて!白下げて!の、旗揚げゲームを作ってみました。 キーボードの左キーで赤旗の上下、右キーで白旗の上下、下キーで現状維持(今のままでいい時)です。正しい行動をするとスコアが10増えます。 間違えたり関係ない色の旗を動かすとミスになります。時間制限は有りません。 今回ハイスコア記録機能は作っていません。(^ ^ ;
※このプログラムには、キーを押しっぱなしにしているとスコアが増えつづけてしまうというバグが有ります。キーは1回だけポンと押すようにして下さい。誰か修正する方法を思いついたら教えて下さい。
それでは以下、プログラム本文です。
'------------------------------------------------------- '旗揚げ風ゲーム '-------------------------------------------------------
'母艦の設定 母艦の、タイトルは、「旗揚げ風ゲーム」 母艦の、幅は、300 母艦の、高さは、200 母艦の、リサイズは、オフ 黒色で、画面クリア
'タイトルの作成(手抜き、ボタン以外いりません) タイトルを、ラベルとして、作成 その、テキストは、「旗揚げゲーム」 その、フォント色は、白色 その、フォントサイズは、35 その、Xは、10 その、Yは、40
開始ボタンを、ボタンとして、作成 その、テキストは、「ゲーム開始」 その、フォントサイズは、11 その、イベントは、ゲームスタート その、Xは、70 その、Yは、140 その、幅は、150 待機
*ゲームスタート タイトルの、オブジェクト破壊 開始ボタンの、オブジェクト破壊 *リセット 母艦の、キー押した時を、キーイベントに、設定。
'キー設定 赤キー=37 白キー=39 現状維持キー=40
'変数設定 右入力=右下 左入力=左下 右正解=右下 左正解=左下 赤旗=オフ 白旗=オフ スコア=0
'台詞の設定 右上げる台詞#0=「赤上げて」 右上げる台詞#1=「赤下げない」
右下げる台詞#0=「赤下げて」 右下げる台詞#1=「赤上げない」
左上げる台詞#0=「白上げて」 左上げる台詞#1=「白下げない」
左下げる台詞#0=「白下げて」 左下げる台詞#1=「白上げない」
'旗揚人の作成 センタリング 顔を、ラベルとして、作成 その、Xは、130 その、Yは、50 その、テキストは、「○」 その、フォント色は、白色 その、フォントサイズは、20
胴体を、ラベルとして、作成 その、Xは、128 その、Yは、73 その、テキストは、「□」 その、フォント色は、白色 その、フォントサイズは、24
両足を、ラベルとして、作成 その、Xは、126 その、Yは、95 その、テキストは、「∧」 その、フォント色は、白色 その、フォントサイズは、28
右手上を、ラベルとして、作成 その、Xは、100 その、Yは、50 その、テキストは、「\」 その、フォント色は、白色 その、フォントサイズは、25 その、可視は、オフ
右手下を、ラベルとして、作成 その、Xは、100 その、Yは、75 その、テキストは、「/」 その、フォント色は、白色 その、フォントサイズは、25 その、可視は、オン
左手上を、ラベルとして、作成 その、Xは、153 その、Yは、50 その、テキストは、「/」 その、フォント色は、白色 その、フォントサイズは、25 その、可視は、オフ
左手下を、ラベルとして、作成 その、Xは、153 その、Yは、75 その、テキストは、「\」 その、フォント色は、白色 その、フォントサイズは、25 その、可視は、オン
右手上旗を、ラベルとして、作成 その、Xは、80 その、Yは、50 その、テキストは、「■」 その、フォント色は、赤色 その、フォントサイズは、20 その、可視は、オフ
右手下旗を、ラベルとして、作成 その、Xは、80 その、Yは、98 その、テキストは、「■」 その、フォント色は、赤色 その、フォントサイズは、20 その、可視は、オン
左手上旗を、ラベルとして、作成 その、Xは、180 その、Yは、50 その、テキストは、「■」 その、フォント色は、白色 その、フォントサイズは、19 その、可視は、オフ
左手下旗を、ラベルとして、作成 その、Xは、180 その、Yは、98 その、テキストは、「■」 その、フォント色は、白色 その、フォントサイズは、19 その、可視は、オン
'表示ラベルの作成 表示ラベルを、ラベルとして、作成 その、テキストは、「スタート」 その、フォント色は、白色 その、Xは、115 その、Yは、170
スコアラベルを、ラベルとして、作成 その、テキストは、「SCORE{スコア}」 その、フォント色は、白色 その、Xは、230 その、Yは、10
判定を、呼ぶ 待機
*キーイベント もし、押されたキーが、赤キーならば、( もし、赤旗=オフならば、( 右手上の、可視は、オン 右手上旗の、可視は、オン 右手下の、可視は、オフ 右手下旗の、可視は、オフ 赤旗=オン 右入力=右上 もし、右正解=右入力ならば、( スコア=スコア+10 スコアラベルの、テキストは、「SCORE{スコア}」 表示ラベルの、テキストは、「OK!」 0.8秒、待つ ) 違えば、( 表示ラベルの、テキストは、「OH、NO!」 0.8秒、待つ ゲームオーバーへ、飛ぶ ) 判定を、呼ぶ 待機 ) もし、赤旗=オンならば、( 右手上の、可視は、オフ 右手上旗の、可視は、オフ 右手下の、可視は、オン 右手下旗の、可視は、オン 赤旗=オフ 右入力=右下 もし、右正解=右入力ならば、( スコア=スコア+10 スコアラベルの、テキストは、「SCORE{スコア}」 表示ラベルの、テキストは、「OK!」 0.8秒、待つ ) 違えば、( 表示ラベルの、テキストは、「OH、NO!」 0.8秒、待つ ゲームオーバーへ、飛ぶ ) 判定を、呼ぶ 待機 ) ) もし、押されたキーが、白キーならば、( もし、白旗=オフならば、( 左手上の、可視は、オン 左手上旗の、可視は、オン 左手下の、可視は、オフ 左手下旗の、可視は、オフ 白旗=オン 左入力=左上 もし、左正解=左入力ならば、( スコア=スコア+10 スコアラベルの、テキストは、「SCORE{スコア}」 表示ラベルの、テキストは、「OK!」 0.8秒、待つ ) 違えば、( 表示ラベルの、テキストは、「OH、NO!」 0.8秒、待つ ゲームオーバーへ、飛ぶ ) 判定を、呼ぶ 待機 ) もし、白旗=オンならば、( 左手上の、可視は、オフ 左手上旗の、可視は、オフ 左手下の、可視は、オン 左手下旗の、可視は、オン 白旗=オフ 左入力=左下 もし、左正解=左入力ならば、( スコア=スコア+10 スコアラベルの、テキストは、「SCORE{スコア}」 表示ラベルの、テキストは、「OK!」 0.8秒、待つ ) 違えば、( 表示ラベルの、テキストは、「OH、NO!」 0.8秒、待つ ゲームオーバーへ、飛ぶ ) 判定を、呼ぶ 待機 ) ) もし、押されたキーが、現状維持キーならば、( もし、右正解=右入力&&左正解=左入力ならば、( スコア=スコア+10 スコアラベルの、テキストは、「SCORE{スコア}」 表示ラベルの、テキストは、「OK!」 0.8秒、待つ ) 違えば、( 表示ラベルの、テキストは、「OH、NO!」 0.8秒、待つ ゲームオーバーへ、飛ぶ ) 判定を、呼ぶ 待機 )
待機
*判定 乱数(4) もし、それ=0ならば、( n=乱数(2) 表示ラベルの、テキストは、右上げる台詞#n 右正解=右上 ) もし、それ=1ならば、( n=乱数(2) 表示ラベルの、テキストは、右下げる台詞#n 右正解=右下 ) もし、それ=2ならば、( n=乱数(2) 表示ラベルの、テキストは、左上げる台詞#n 左正解=左上 ) もし、それ=3ならば、( n=乱数(2) 表示ラベルの、テキストは、左下げる台詞#n 左正解=左下 ) 戻る
*ゲームオーバー 「再チャレンジしますか?」と、二択 もし、それが、はいならば、( オブジェクト全破壊 リセットへ、飛ぶ。 ) 違えば、終わり。 |