2024年05月23日
【ゲーム制作】パズルゲーム 第16回
パズルゲーム 第16回です。
今回はオープニング・エンディング処理を組んでいきます。
今作も、前作同様1画面オープニングとエンディングにします。
前作そのままのBASICロジックで、タイトル画面で放っておくと、ストーリーに替わるパターンです。
こちらがタイトル。
放置すると、ストーリーが表示。
因みに、翻訳はやっぱりMicrosoftのBing翻訳を使用して、詳細設計時に作ったストーリーを翻訳しています。
エンディングも1画面メッセージとBGMのみ。
ロゴ表示もそのまま。
今作もロードするものが少ないので、一瞬です。
次回はパズルゲームの肝「面データ」を作成します。
2024年05月22日
【ゲーム制作】パズルゲーム 第15回
2024年05月21日
【ゲーム制作】パズルゲーム 第14回
2024年05月20日
【ゲーム制作】パズルゲーム 第13回
パズルゲーム 第13回です。
今回は「じゃんけんブロック」の勝敗判定を組んでいきます。
飛ばされたブロックが、他の「じゃんけんブロック」に当たった時、飛ばされたブロックの手(例えばパー)がぶつけられたブロックの手(例えばグー)に勝っていればぶつけられた方のブロックは消滅します。
ぶつけられたブロックの手がそれ以外(例えばパー、チョキ)ならば、ぶつかった位置で停まります。
衝突チェックの後に、面クリア判定を行います。
飛ばされたブロックが最終格納場所に入れられたなら、マップ上の「じゃんけんブロック」数をカウントし、「0」ならば面クリア、「0」以外ならギブアップとなります。
勝判定後のブロック消滅も最初は、FONTキャラクタで崩れるパターンを用意して…と、思っていたのですが、やっぱりSPRITEが余っているので、そちらを利用する方向で。
でも、ただ崩れるだけのアニメーションだと地味…。
うーん、何かいい案はないかな?
次回は、「ブロック消滅」を組んでいきます。
2024年05月19日
【ゲーム制作】パズルゲーム 第12回
パズルゲーム 第12回です。
今回は「じゃんけんブロック」の動きを組んでいきます。
途中まで「じゃんけんブロック」の動きはFONTで組んでいたのですが、SPRITEが余りに余っているので使わないともったいないな…と、考え直しました。
そこで「じゃんけんブロック」が飛んでいく時だけ、SPRITEで動かす事にします。
「SPRITE EDITOR」で「じゃんけんブロック」用のパターンを作成。
FONTのブロックを押したら、その位置にSPRITEのブロックを表示し、FONTのブロックは床FONTで消去。
飛んだ先で障害物に当たったら、その位置にFONTのブロックを表示し、SPRITEのブロックは隠します。
おぉ、滑らかにブロックが飛んで行って、良い感じです。
横から押すと、SPRITEが水平方向に5枚並びますが、「水平ライン4枚(MSX2は8枚)を超えてSPRITEを表示させたい」処理されているので大丈夫です。
飛んでいくブロックのキャラクタ数は、いくつ必要かな…?
飛んでいくブロックは速いので、次のブロックを押すまでに障害物にぶつかり止まっていると思われるので、ひとつで十分かな?とも思いましたが、念のため4個まで同時に動かせるようにしておきます。
(画面中央辺りで4方向じゃんけんブロックに囲まれていて4方向次々に押せるような状況でない限りは不要。)
SPRITEとFONTの切り替え以外は、直進して障害物にぶつかったら停まるだけのロジックなので、単純です。
次回は、「じゃんけんブロック」の勝敗判定を組んでいきます。
2024年05月18日
2024年05月17日
【ゲーム制作】パズルゲーム 第11回
パズルゲーム 第11回です。
今回は「管理人」の動きを組んでいきます。
「管理人」が倉庫内をジョイスティックで動くロジックは、前回問題ないことが確認できました。
ほぼ、前作「ハンド君」のロジックのままです。
今作では、前作では一切使わなかった「ボタン」を使います。
「Aボタン(若しくはスペースバー)で、じゃんけんブロックを押す」動作をします。
キャラクタパターンを変えるわけではなく、押した感じに見えるように動かします。
↓ Aボタン打下
こんな感じで、4ドット分前に移動して押した感じにします。
「管理人」の操作部では、Aボタンの連続押し不可処理と、「管理人」の4ドットずらし表示をし、「ブロックを押したよ」フラグ(&HE05D)と効果音bセットします。
最後にBボタン(若しくは「Graph」キー)で「ギブアップ」となります。
戻り値(&HE053)に「2」(ギブアップ)を設定してBASICに戻します。
ギブアップらしく、「??」を表示。
次回は、「じゃんけんブロック」の動作を組んでいきます。
2024年05月16日
【ゲーム制作】パズルゲーム 第10回
パズルゲーム 第10回です。
今回はメインのマシン語設定プログラムを用意します。
メインのマシン語設定プログラム「BINSET.BAS」を用意します。
こちらもExcelで作成して、「.BAS」にコンバートして、「.BIN」ファイル作成。
サブルーチンは前作のものを、ほぼ流用。
残数表示にSPRITEを重ねるなど、一部改訂。
ハイスコア表示などは削除。
忘れちゃいけない、タイトル・ロゴ表示用のキャラクタ埋めルーチンと、SPRITE全隠しルーチン。
サブルーチン群がちゃんと動作するか、面表示テスト。
問題なく表示されました。
残数表示もいい感じ。
前作「ハンド君」の動作ロジックそのままで動くと思うので、表示ルーチンだけ4枚表示に変更し、「管理人」の動作テスト。
良い感じです。
「管理人」ハッキリしていて見易いです。
SPRITE4枚重ねの効果バッチリですね。
なんにせよMSX1で4色キャラクタって珍しいのでは?
次回は、「管理人」の動作を組んでいきます。
2024年05月15日
【ゲーム制作】パズルゲーム 第9回
2024年05月14日
【ゲーム制作】パズルゲーム 第8回
パズルゲーム 第8回です。
今回は、面データを作成します。
面データの作成には「MAP16 EDITOR」を利用します。
今作も1面16×11キャラクタです。
設計では20面作成するので、MAPデータの幅は16キャラ×20面=320キャラとなります。
高さはそのまま11キャラです。
「設定画面」で、2×2で4FONT使い1キャラクタを作成していきます。
試作で作った使わないキャラもありますが、気にしない…。
次に「エディット画面」で、作ったキャラクタを使いMAPを作成していきます。
こんな感じになります。
面データを思考中なので、とりあえずプログラムテストできるよう1面分だけ作っておきます。
残りの面は後で作成します。
次回は「走査線割込み処理」を組んでいきます。