;スプライト下から LDA $14C8,x CMP #$09 ;投げられた状態で無ければ終了 BNE RETURN LDA $0F CMP #$02 ;上からぶつかったなら終了 BNE LABEL01 RETURN: RTS ;スプライト左右から LDA $14C8,x CMP #$0A ;蹴り飛ばされた状態で無ければ終了 BNE RETURN LABEL01: LDA $1686,x ;Tweaker5 AND #$04 ;Weird ground behaivor 4 BNE RETURN REP #$20 LDA $0A ;スプライトから求められた座標をブロック用の座標に代入 STA $9A LDA $0C STA $98 SEP #$20 ;マリオかマントが触れたとき LDA #$0F TRB $9A TRB $98 ;座標正規化 LDA $0F PHA PHY PHX ;透明なセメントタイルの生成 LDA #$09 STA $9C JSL $00BEB0 ;跳ねるタイルスプライトの生成 LDX #$02 ;グラフィックは?ブロック LDY #$03 LOOP100: LDA $1699,y BEQ LBL100 DEY BPL LOOP100 LDY #$03 LBL100: LDA $028789,x STA $1901,y TXA INC A STA $1699,y LDA #$01 STA $169D,y LDA $9A STA $16A5,y LDA $9B STA $16AD,y LDA $98 STA $16A1,y LDA $99 STA $16A9,y LDA #$08 STA $16C5,y ;タイマ LDA #$0D ;タイマ0時にプンプンブロックに変化 STA $16C1,y LDA $1933 LSR A ROR STA $08 LDX #$00 ;上向きに跳ねる LDA $02873A,x STA $16B1,y LDA $02873E,x STA $16B5,y TXA ORA $08 STA $16C9,y ;レイヤー2フラグ ;上の敵を吹っ飛ばすスプライトの生成 LDY #$03 LOOP200: LDA $16CD,y BEQ LBL200 DEY BPL LOOP200 INY LBL200: LDA $9A STA $16D1,y LDA $9B STA $16D5,y LDA $98 STA $16D9,y LDA $99 STA $16DD,y LDA $1933 BEQ LBL201 LDA $9A ;レイヤー2時の座標修正 SEC SBC $26 STA $16D1,y LDA $9B SBC $27 STA $16D5,y LDA $98 SEC SBC $28 STA $16D9,y LDA $99 SBC $29 STA $16DD,y LBL201: LDA #$01 STA $16CD,y LDA #$06 STA $18F8,y ;毒キノコ生成 LDX #$0B ;12番目からチェック LOOP301: LDA $14C8,x BEQ LBL300 DEX CPX #$FF BNE LOOP301 DEC $1861 BPL LBL301 LDA #$01 STA $1861 LBL301: LDA $1861 CLC ADC #$0A TAX LBL300: STX $185E LDA #$08 STA $14C8,x LDA #$85 ;毒キノコ STA $9E,x JSL $07F7D2 ;スプライト初期化ルーチン LDA #$02 STA $1DFC LDA $9A STA $E4,x LDA $9B STA $14E0,x LDA $98 STA $D8,x LDA $99 STA $14D4,x LDA $1933 BEQ LBL302 LDA $9A ;レイヤー2時の座標修正 SEC SBC $26 STA $E4,x LDA $9B SBC $27 STA $14E0,x LDA $98 SEC SBC $28 STA $D8,x LDA $99 SBC $29 STA $14D4,x LBL302: LDA #$3E ;にょきにょき出てくるタイマ STA $1540,x PLX PLY PLA STA $0F RTS