ちょっと間があいてしまいました。ようやく幽霊船編の変更が一通り終わったので余裕ができました。演出的にはまだ不満はありますが。さて、前回は中途半端なところで止まっていたので、今回は一気にイベントを実装してしまいたいと思います。
- SR: $0BF059 ロマリア追加処理(新SR)
0BF059 | LDA $3619 | A=$3619 | |
---|---|---|---|
0BF05C | AND #$0002 | A&=#$0002 | |
0BF05F | BNE #$1F | if(z==off) goto $0BF080 | |
0BF061 | LDA $35B0 | A=$35B0 | |
0BF064 | AND #$0020 | A&=#$0020 | |
0BF067 | BNE #$17 | if(z==off) goto $0BF080 | |
0BF069 | LDA $35B0 | A=$35B0 | |
0BF06C | AND #$0010 | A&=#$0010 | |
0BF06F | BEQ #$12 | if(z==on) goto $0BF083 | |
0BF071 | BRK $0FE8 ($0B0FE8) | goto $00FFE6(メッセージ表示) #$0FE8 | |
0BF074 | JSL $CDACD2 | SR: $0DACD2 | |
0BF078 | LDA #$0020 | A=#$0020 | |
0BF07B | TSB $35B0 | A or $35B0 | |
0BF07E | SEC | c=on | |
0BF07F | RTS | return | |
0BF080 | JMP $F0A5 ($0BF0A5) | goto $0BF0A5 | |
0BF083 | LDA $35B0 | A=$35B0 | |
0BF086 | AND #$0008 | A&=#$0008 | |
0BF089 | BNE #$1A | if(z==off) goto $0BF0A5 | |
0BF08B | JSL $CDADD8 | SR: $0DADD8 | |
0BF08F | LDA $35B0 | A=$35B0 | |
0BF092 | AND #$0004 | A&=#$0004 | |
0BF095 | BEQ #$0E | if(z==on) goto $0BF0A5 | |
0BF097 | LDA #$0008 | A=#$0008 | |
0BF09A | TSB $35B0 | A or $35B0 | |
0BF09D | LDA #$0002 | A=#$0002 | |
0BF0A0 | TSB $3619 | A or $3619 | |
0BF0A3 | SEC | c=on | |
0BF0A4 | RTS | return | |
0BF0A5 | LDA $354F | A=$354F | |
0BF0A8 | AND #$0004 | A&=#$0004 | |
0BF0AB | CLC | c=off | |
0BF0AC | RTS | return |
- SR: $0CF280 NPC1_MoveSR_0572(新SR) イベント時の王様のNPC
0CF280 | JSL $CCDADF | SR: $0CDADF | |
---|---|---|---|
0CF284 | COP | goto $00FFE4 | |
0CF285 | JSL $CDAEB1 | SR: $0DAEB1 | カウンタが1000になるまで待機 |
0CF289 | JSL $CCD847 | SR: $0CD847 | キャラクターを下に向かせる |
0CF28D | RTL | return |
- SR: $0CF300 NPC1_MoveSR_056E(新SR) イベント時のPC1人目のNPC
0CF300 | COP | goto $00FFE4 | |
---|---|---|---|
0CF301 | JSL $CCD392 | SR: $0CD392 | |
0CF305 | JSL $CDAEB1 | SR: $0DAEB1 | カウンタが1000になるまで待機 |
0CF309 | JSL $CCD46A | SR: $0CD46A | PC1人目を行動対象にする? |
0CF30D | JSL $CDADBB | SR: $0DADBB | |
0CF311 | LDA $3434 | A=$3434 | |
0CF314 | CMP #$0578 | A>=#$0578? | |
0CF317 | BCC #$03 | if(c==off) goto $0CF31C | |
0CF319 | JMP $F320 ($0CF320) | goto $0CF320 | |
0CF31C | COP | goto $00FFE4 | |
0CF31D | JMP $F311 ($0CF311) | goto $0CF311 | |
0CF320 | JSL $CDE09B | SR: $0DE09B | 視点移動をキャラクターの移動にあわせる? |
0CF324 | LDX #$0035 | X=#$0035 | |
0CF327 | LDA #$0027 | A=#$0027 | |
0CF32A | JSL $C75474 | SR: $075474 | キャラクター移動先座標を指定 |
0CF32E | JSL $CCD59D | SR: $0CD59D | 指定座標にY軸→X軸の順でキャラクター移動 |
0CF332 | JSL $CCD837 | SR: $0CD837 | キャラクターを上に向かせる |
0CF336 | LDX #$09A8 | X=#$09A8 | |
0CF339 | STX $C5E5 | $C5E5=X | |
0CF33C | LDA #$0928 | A=#$0928 | |
0CF33F | STA $C625 | $C625=A | |
0CF342 | LDX #$0024 | X=#$0024 | |
0CF345 | STX $C725 | $C725=X | |
0CF348 | LDA #$0011 | A=#$0011 | |
0CF34B | STA $C765 | $C765=A | |
0CF34E | STZ $CFA5 | $CFA5=#$00 | |
0CF351 | JSL $CDADE6 | SR: $0DADE6 | |
0CF355 | JSL $CDAF41 | SR: $0DAF41 | |
0CF359 | JSL $C75930 | SR: $075930 | キャラクター消滅 |
0CF35D | JSL $CDAE1E | SR: $0DAE1E | |
0CF361 | RTL | return |
- SR: $0CF385 NPC1_MoveSR_056E(新SR) イベント時のPC2人目のNPC
0CF385 | COP | goto $00FFE4 | |
---|---|---|---|
0CF386 | JSL $CDAEB1 | SR: $0DAEB1 | カウンタが1000になるまで待機 |
0CF38A | JSL $CCD4AA | SR: $0CD4AA | PC2人目を行動対象にする? |
0CF38E | JSL $CDADBB | SR: $0DADBB | |
0CF392 | JSL $CCD392 | SR: $0CD392 | |
0CF396 | LDX #$0035 | X=#$0035 | |
0CF399 | LDA #$0029 | A=#$0029 | |
0CF39C | JSL $C75474 | SR: $075474 | キャラクター移動先座標を指定 |
0CF3A0 | JSL $CCD59D | SR: $0CD59D | 指定座標にY軸→X軸の順でキャラクター移動 |
0CF3A4 | JSL $CCD837 | SR: $0CD837 | キャラクターを上に向かせる |
略 | |||
0CF3C3 | JSL $CDAF41 | SR: $0DAF41 | |
0CF3C7 | JSL $C75930 | SR: $075930 | キャラクター消滅 |
0CF3CB | RTL | return |
- SR: $0CF400 NPC1_MoveSR_056F(新SR) イベント時のPC3人目のNPC(省略)
- SR: $0CF480 NPC1_MoveSR_0570(新SR) イベント時のPC4人目のNPC(省略)
まだイベントのさわりなのですが、この時点でかなりの分量なのでまたここで一旦切ります。3人目、4人目は移動先の座標が違うだけなので省略しました。この時点でやっていることは2点
- 話し掛けたタイミングで王様を下に向かせる
- 話し掛けたタイミングでパーティを王様の前に整列させる
です。パーティの整列はすごろく場で先頭のキャラクターがすごろくを開始した後の残りのパーティーの処理を参考にしました。
コメント