第1章-3 イベントエンジンのコマンド
イベントエンジンはパラメータなし~パラメータ2つまでを与えることにより実行し、入力されたキーコードやコマンド実行で更新されるフラグや変数を持つ。
条件分岐によるイベントコードの次読み出し位置の変更や無条件でのイベントコードの次読み出し位置変更のコマンドを持たせてフラグ変化により処理内容を変化させる条件分岐を可能にした。
この実装により特定のアイテムの所持でゲーム進行に分岐を持たせる、一定の所持金があれば所持金を減らしてなおかつインベントリを増やす等の処理をイベントコードの組み合わせで処理できるようになった。
イベントコードの例(実装中のもの、完成時までに仕様変更の可能性あり)
00...イベント終了
01...テキスト表示
02...キー入力を待機、入力結果を変数KI$に格納
03...メッセージ表示エリアをクリア
04...PLAYERスプライト表示の状態変更(座標の更新含む)
05...キー入力結果の処理
06...インベントリ内容変更
07...ステータス表示の更新
08...インベントリ内のアイテム所有チェック、結果を変数GFに返す
09...イベント次読み込み位置の強制オフセット
10...変数GFが0でなければイベント次読み込み位置を変更
11...プレイヤーのステータスと引数を比較して大きければ変数GFを1に、そうでなければ0に
12...プレイヤーのステータスに渡された引数を加算
13...プレイヤーのステータスから渡された引数を減算
14....ゲーム進行用フラグを比較、成立していたら変数GFを1にする
15...エンカウント歩数再設定
16...エンカウントまでの歩数カウンタを参照、0なら変数GFを1にする
17...プレイヤーの経験値を参照してエンカウント時に出現する敵のテーブル番号を返す
条件分岐によるイベントコードの次読み出し位置の変更や無条件でのイベントコードの次読み出し位置変更のコマンドを持たせてフラグ変化により処理内容を変化させる条件分岐を可能にした。
この実装により特定のアイテムの所持でゲーム進行に分岐を持たせる、一定の所持金があれば所持金を減らしてなおかつインベントリを増やす等の処理をイベントコードの組み合わせで処理できるようになった。
イベントコードの例(実装中のもの、完成時までに仕様変更の可能性あり)
00...イベント終了
01...テキスト表示
02...キー入力を待機、入力結果を変数KI$に格納
03...メッセージ表示エリアをクリア
04...PLAYERスプライト表示の状態変更(座標の更新含む)
05...キー入力結果の処理
06...インベントリ内容変更
07...ステータス表示の更新
08...インベントリ内のアイテム所有チェック、結果を変数GFに返す
09...イベント次読み込み位置の強制オフセット
10...変数GFが0でなければイベント次読み込み位置を変更
11...プレイヤーのステータスと引数を比較して大きければ変数GFを1に、そうでなければ0に
12...プレイヤーのステータスに渡された引数を加算
13...プレイヤーのステータスから渡された引数を減算
14....ゲーム進行用フラグを比較、成立していたら変数GFを1にする
15...エンカウント歩数再設定
16...エンカウントまでの歩数カウンタを参照、0なら変数GFを1にする
17...プレイヤーの経験値を参照してエンカウント時に出現する敵のテーブル番号を返す
アップロード日:2023/10/18