{---プログラム掲示板投稿フォーム--- 【ソフト名】脱出ゲーム 【作 成 者】Nodo 【種 別】フリーソフトウェア 【ひまわりのバージョン】ver.1.49 【転 件】可(連絡の必要もありません) 【改変運用】可(使える所はどんどん使って下さい) 【ひまわり本体への梱包】可 【実列時に利用作成するファイル】無 【コメント】 主人公キャラ(♀)を移動させ、 制限歩数以内に扉(●)まで移動させてください。 マップにある星は、ネクストと同じ種類の星のみ通れます。 また、星を取ると、次に取れる星の種類が変わります。 転載、改変等はご自由にどうぞ〜。連絡いりません。 というか、筆不精なので連絡貰っても返事書くの面倒なんです(^^; 大した事はしてませんが、使える部分があればどんどん流用しちゃってください。 ---投稿フォームここまで---}
*画面設定
母艦の、タイトルは、『脱出ゲーム』。 母艦の、幅は、192。母艦の、高さは、240。 母艦を、中央へ移動。塗り色は、白色。ペン色は、白色。 母艦浮上。
文字サイズは、12。面数=1。
*変数初期化 (0,0)から、(192,240)へ、四角形。 キャラ横=1。キャラ縦=1。星=2。 もし、面数=1ならば、( マップ=「1,1,1,1,1,1,1,1,1,1,1,1 1,0,2,3,2,3,2,3,2,3,2,1 1,1,1,1,1,1,1,1,1,1,3,1 1,1,1,1,1,1,1,1,1,1,2,1 1,1,1,1,1,1,1,1,1,1,3,1 1,1,1,1,1,1,1,1,1,1,2,1 1,1,1,1,1,1,1,1,1,1,3,1 1,1,1,1,1,1,1,1,1,1,2,1 1,1,1,1,1,1,1,1,1,1,3,1 1,1,1,1,1,1,1,1,1,1,2,1 1,1,1,1,1,1,1,1,1,1,4,1 1,1,1,1,1,1,1,1,1,1,1,1」 残歩数=17。) もし、面数=2ならば、( マップ=「1,1,1,1,1,1,1,1,1,1,1,1 1,0,2,1,1,1,1,1,1,1,1,1 1,1,3,2,2,2,1,1,1,1,1,1 1,1,3,1,1,2,1,1,1,1,1,1 1,1,3,1,1,3,1,1,1,1,1,1 1,1,2,1,1,2,1,1,1,1,1,1 1,1,3,3,2,3,3,1,1,1,1,1 1,1,3,3,1,3,1,3,1,1,1,1 1,1,2,1,1,2,3,2,1,1,1,1 1,1,2,1,3,2,3,2,1,1,1,1 1,1,1,1,3,3,1,2,2,2,4,1 1,1,1,1,1,1,1,1,1,1,1,1」 残歩数=69。) もし、面数=3ならば、( マップ=「1,1,1,1,1,1,1,1,1,1,1,1 1,0,2,3,2,3,2,2,2,2,3,1 1,3,3,3,3,3,2,2,2,2,3,1 1,2,2,3,3,1,1,3,3,3,3,1 1,3,3,3,2,3,1,1,1,1,2,1 1,2,3,2,1,3,3,2,3,2,3,1 1,2,2,3,1,2,2,3,2,3,3,1 1,2,2,3,1,3,2,3,2,3,2,1 1,3,2,3,1,2,3,2,3,3,3,1 1,3,2,2,1,3,2,2,3,3,3,1 1,3,3,2,2,3,3,3,3,3,4,1 1,1,1,1,1,1,1,1,1,1,1,1」 残歩数=45。)
マップの描画を、呼ぶ。 ネクスト表示を、呼ぶ。
{↑マップ定義の悪い例(^_^; テキストファイルを使うなり、文字列の切り取りを使うなり データ圧縮するなりして、見やすくしませう}
*メイン 母艦の、キー押した時は、キャラ移動。 待機。
*キャラ移動
仮横=キャラ横; 仮縦=キャラ縦 もし、押されたキー=38ならば、仮縦=キャラ縦-1 もし、押されたキー=39ならば、仮横=キャラ横+1 もし、押されたキー=37ならば、仮横=キャラ横-1 もし、押されたキー=40ならば、仮縦=キャラ縦+1 もし、マップ#仮横#仮縦が、0ならば、移動処理。 もし、(マップ#仮横#仮縦=2)かつ(星=2)ならば、星を取得。 もし、(マップ#仮横#仮縦=3)かつ(星=3)ならば、星を取得。 もし、マップ#仮横#仮縦が、4ならば、ゲームクリア。 戻る。
*移動処理 (キャラ横*16, キャラ縦*16)から、(キャラ横*16+16, キャラ縦*16+16)へ、四角形。 (キャラ横*16, キャラ縦*16)へ、移動。「・」を、表示。 キャラ横は、仮横。キャラ縦は、仮縦。 ネクスト表示を、呼ぶ。 残歩数=残歩数-1。もし、(残歩数<0)ならば、ゲームオーバー。 戻る。
*ネクスト表示 (キャラ横*16,キャラ縦*16)から、(キャラ横*16+16, キャラ縦*16+16)へ、四角形。 (キャラ横*16,キャラ縦*16)へ、移動。「♀」を、表示。 (0,196)から、(196,240)へ、四角形。 (0,196)へ、移動。 もし、星=2ならば、文字色=青色。 もし、星=3ならば、文字色=赤色。 「 ネクスト=★」を、表示。 文字色=黒色。「 残り {残歩数}歩」を、表示。 戻る。
*星を取得 もし、星=2ならば、星=3。違えば、星=2。 マップ#仮横#仮縦=0。 移動処理へ、飛ぶ。
*ゲームクリア もし、面数=3ならば、全面クリア。 「やったね!ゲームクリア!」と、言う。 「次のステージにチャレンジ!」と、言う。 面数=面数+1。変数初期化に、飛ぶ。
*全面クリア 「(*^▽^)/★☆おめでとうございます!」と、言う。 「みごと、全面クリアです!」と、言う。 「おつかれさまでした!」と、言う。 おわり。
*ゲームオーバー 「失敗!」と、言う。 「もういちど挑戦する?」と、二択。 もし、それが、はいならば、変数初期化。 もし、それが、いいえならば、おわり。
*マップの描画
仮縦を、0から、11まで、繰り返す( 仮横を、0から、11まで、繰り返す( (仮横*16, 仮縦*16)へ、移動。 もし、マップ#仮横#仮縦=0ならば、「・」を、表示。 もし、マップ#仮横#仮縦=1ならば、「■」を、表示。 もし、マップ#仮横#仮縦=2ならば、(文字色=青色。「★」を、表示) もし、マップ#仮横#仮縦=3ならば、(文字色=赤色。「★」を、表示) もし、マップ#仮横#仮縦=4ならば、(文字色=緑色。「●」を、表示) 文字色=黒色。 ) )
戻る。 |