DQ3 ストーリー変更(オリハルコンの洞窟4)

前回マップの追加とギミックのひとつの封魔石関連について説明したので、今回はもうひとつのギミックであるB2Fにある「じごくのかぎ(仮)」でしか開かない扉の設定を実装します。幸いにして、定義できる鍵の種別にずいぶんと余裕があったので比較的作業は楽でした(1バイトのフィールドにもかかわらずデータは0-6までしかありませんでした)。

  • データ: $080AE3 ドア開閉*1
IDドア種別XY不明2不明3鍵種別フロア内管理番号
154361970070

新たに鍵種別「7」を追加します。さらに、各ドア種別に対応した処理SR群に鍵種別「7」の場合の処理を追加します。

  • データ: $0896A6 ドア開閉関連処理SRアドレス群*2
IDドアを開けられるかチェックするSRドアの前でアイテムを使用したときのSR
07CCFC72CCFC84
  • SR: $0CFC72 ドア種別7を開けられるかチェックするSR(新SR)
0CFC72LDA #$00EAA=#$00EAじごくのかぎのアイテムID
0CFC75LDX #$0104X=#$0104
0CFC78JSL $C78238SR: $078238アイテム保持チェック(持っているc=on)
0CFC7CBCS #$05if(c==on) goto $0CFC83
0CFC7EJSL $CCA587SR: $0CA587鍵のかかった扉を開けられなかったときの処理
0CFC82CLCc=off
0CFC83RTLreturn

  • SR: $0CFC84 ドアの前でアイテムを使用したときのSR(新SR)
0CFC84LDA $C11BA=$C11B使用したアイテムID取得?
0CFC87CMP #$00EAA==#$00EA?アイテムIDがじごくのかぎか?
0CFC8ABEQ #$02if(z==on) goto $0CFC8E
0CFC8CBRA #$03goto $0CFC91
0CFC8ESECc=on
0CFC8FBRA #$01goto $0CFC92
0CFC91CLCc=off
0CFC92RTLreturn

もっと大変かと思っていたのですが割とさっくり実装できました。次回はボス戦を実装して追加ダンジョン編は終わりです。

*1:サイズ拡張のため場所を移動しています

*2:サイズ拡張のため場所を移動しています

スポンサーリンク

コメントを書く

メールアドレスが公開されることはありません。コメントは管理者の承認後表示されます。