2023年09月21日
Laboratoryテーマ23「選択肢メニューを開いて、選択したい」その@
さて、今回はLaboratoryテーマ23「選択肢メニューを開いて、選択したい」その@です。
「ゲーム製作」カテゴリで制作中の3Dダンジョンロールプレイングゲームで利用する、ドラクエ風メッセージウィンドウで、メニューを開いて選択処理を実装します。
前回独自スクリプトを組み込むと書きましたが、今回のサンプルには既に多くの命令を組み込んであります。
その中で、メニュー選択を伴う命令、「はい/いいえ」(YN命令)と、「複数メニュー選択」(SW命令)を使ったサンプルとなっています。
「はい/いいえ」はそのまま、2択のメニュー選択となります。
「複数メニュー選択」は、任意数でのメニュー選択で、選択肢が多くウィンドウに収まらない選択肢は上下スクロールして表示されます。(上図)
詳しくはサンプルプログラムで機能デモをしていますのでご覧ください。
メッセージデータは、前回公開した「メッセージエディタ」を利用します。
スクリプト部の「YN」(185行)、「SW」(255行)命令の次のメッセージからが選択肢となります。
「YN」は、2メッセージ分(190、200行)、「SW」は任意メッセージ分(選択肢数11項目、260〜360行)となります。
注意事項ですが、選択項目の桁数は必ず合わせてください。(280行の「あらいぐま」が6桁で最長なのでそれに合わせてあります。)
この時「SW」のウィンドウ幅は、6+2(選択カーソル+空白)の8を設定してください。
「YN」は3桁固定です。
「MSELSMPL.BAS」【ダウンロード】
メニュー選択の機能を紹介するデモが実行されます。
マシン語のサンプルです。
起動すると、MSELSMPL.BINを作成します。
「MSELSMPL.BAS」【ダウンロード】
スクリプトの大半を実装済みですので、かなり長いサンプルとなっています。
今回のテーマのメニュー選択部分は、実質1,270行〜1,980行となっています。
前回説明した独自スクリプトで一部、引数を変更したものもありますので、また後日改めて説明します。