Last active
September 12, 2018 08:04
-
-
Save furai-no-ffff/d6a6defd47228c3c8d8b to your computer and use it in GitHub Desktop.
ダメージ時特技
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
;; ダメージを受けたときの特技判定 | |
;; $00:ダメージを受けるキャラ $01:ダメージを与えるキャラ | |
C2/2C1C: 08 php | |
C2/2C1D: E230 sep #$30 ;; | |
C2/2C1F: A600 ldx $00 ;; X = $00 (ダメージを受けるキャラ) | |
C2/2C21: E013 cpx #$13 ;; | |
C2/2C23: D01A bne $2C3F ;; X != 0x13 なら飛ぶ (ダメージを受けるキャラがシレン以外) | |
C2/2C25: AFBC877E lda $7E87BC ;; A = $87A9[0x13] (シレンの外見) | |
C2/2C29: C91D cmp #$1D ;; | |
C2/2C2B: D012 bne $2C3F ;; A != 0x1D なら飛ぶ (ぴーたんでない) | |
C2/2C2D: AF2C867E lda $7E862C ;; A = $8619[0x13] (シレンの変身したモンスターのレベル) | |
C2/2C31: C902 cmp #$02 ;; | |
C2/2C33: D00A bne $2C3F ;; A != 2 なら飛ぶ (Lvが2でない) | |
C2/2C35: A913 lda #$13 ;; | |
C2/2C37: 8500 sta $00 ;; $00 = 0x13 (シレン) | |
C2/2C39: 229043C2 jsr $C24390 ;; ワープ処理 | |
C2/2C3D: 28 plp | |
C2/2C3E: 6B rtl | |
; ダメージを受けるキャラが逃げピータンに変身したシレンでない | |
C2/2C3F: BF81877E lda $7E8781,X ;; | |
C2/2C43: F055 beq $2C9A ;; $8781[X] == 0 なら終了 (封印フラグが0 = 封印されている) | |
C2/2C45: BFF1857E lda $7E85F1,X ;; | |
C2/2C49: F04F beq $2C9A ;; $85F1[X] == 0 なら終了 (現在HPが0) | |
C2/2C4B: BFA1857E lda $7E85A1,X ;; A = $85A1[X] (キャラコード) | |
C2/2C4F: C94C cmp #$4C ;; | |
C2/2C51: F004 beq $2C57 ;; A == 0x4C なら飛ぶ (つかみ取り店主) | |
C2/2C53: C94D cmp #$4D ;; | |
C2/2C55: D015 bne $2C6C ;; A != 0x4D なら飛ぶ (店主) (ダメージを受けるのが店主以外) | |
; 店主の特技 | |
C2/2C57: A501 lda $01 ;; A = $01 (ダメージを与えるキャラ) | |
C2/2C59: C913 cmp #$13 ;; | |
C2/2C5B: D00C bne $2C69 ;; A != 0x13 なら飛ぶ (シレン以外が店主に攻撃) | |
C2/2C5D: A900 lda #$00 ;; | |
C2/2C5F: 9F35887E sta $7E8835,X ;; $8835[X] = 0 (NPCフラグ) | |
C2/2C63: 9F81877E sta $7E8781,X ;; $8781[X] = 0 (封印フラグ) | |
C2/2C67: 28 plp ;; | |
C2/2C68: 6B rtl | |
; シレン以外が店主に攻撃 | |
C2/2C69: 4C9C2C jmp $2C9C ;; $C22C9Cへ飛ぶ | |
; ダメージを受けるのが店主以外 | |
C2/2C6C: C90A cmp #$0A ;; | |
C2/2C6E: F004 beq $2C74 ;; A == 0xA なら飛ぶ (ぬすっトド) | |
C2/2C70: C909 cmp #$09 ;; | |
C2/2C72: D006 bne $2C7A ;; A != 0x9 なら飛ぶ (ミドロ) | |
; ぬすっトド・ミドロ系の特技 | |
C2/2C74: 22F12CC2 jsr $C22CF1 ;; 分裂判定 | |
C2/2C78: 28 plp ;; | |
C2/2C79: 6B rtl | |
; ダメージを受けるのがトド・ミドロ以外 | |
C2/2C7A: C918 cmp #$18 ;; | |
C2/2C7C: D012 bne $2C90 ;; A != 0x18 なら飛ぶ (ぼうれい武者) | |
; ぼうれい武者の特技 | |
C2/2C7E: 225FF6C3 jsr $C3F65F ;; $00 = 乱数 | |
C2/2C82: A500 lda $00 ;; A = $00 | |
C2/2C84: C920 cmp #$20 ;; | |
C2/2C86: B006 bcs $2C8E ;; A >= 0x20 なら終了 (ぼうれい武者はワープしない) | |
C2/2C88: 8600 stx $00 ;; $00 = X | |
C2/2C8A: 229043C2 jsr $C24390 ;; ランダムな位置にワープ | |
C2/2C8E: 28 plp ;; | |
C2/2C8F: 6B rtl | |
; ダメージを受けるのがぼうれい武者以外 | |
C2/2C90: C919 cmp #$19 ;; | |
C2/2C92: D006 bne $2C9A ;; A != 0x19 なら終了 (マスターチキン) | |
; マスターチキン系の特技 | |
C2/2C94: 229269C2 jsr $C26992 ;; レベルダウン判定 | |
C2/2C98: 28 plp ;; | |
C2/2C99: 6B rtl | |
; 終了 | |
C2/2C9A: 28 plp | |
C2/2C9B: 6B rtl | |
; シレン以外が店主に攻撃 | |
C2/2C9C: E230 sep #$30 ;; 8bitモード | |
C2/2C9E: A900 lda #$00 ;; | |
C2/2CA0: 9F95877E sta $7E8795,X ;; $8795[X] = 0 (シレンに攻撃されたことがある) | |
C2/2CA4: BF81877E lda $7E8781,X ;; | |
C2/2CA8: 9FD1877E sta $7E87D1,X ;; $87D1[X] = $8781[X] (目的地のX座標 = 封印フラグ・店主の初期X) | |
C2/2CAC: BF71887E lda $7E8871,X ;; | |
C2/2CB0: 9FE5877E sta $7E87E5,X ;; $87E5[X] = $8871[X] (目的地のY座標 = イベントフラグ・店主の初期Y) | |
C2/2CB4: A401 ldy $01 ;; Y = $01 (ダメージを与えるキャラ) | |
C2/2CB6: DA phx ;; | |
C2/2CB7: 5A phy ;; | |
C2/2CB8: 22B377C2 jsr $C277B3 ;; 店主と$01との位置関係を取得 | |
C2/2CBC: 7A ply ;; | |
C2/2CBD: FA plx ;; | |
C2/2CBE: A500 lda $00 ;; A = $00 (距離) | |
C2/2CC0: C901 cmp #$01 ;; | |
C2/2CC2: D00E bne $2CD2 ;; A != 1 なら終了 (隣接していない) | |
C2/2CC4: A501 lda $01 ;; | |
C2/2CC6: 9FDD857E sta $7E85DD,X ;; $85DD[X] = $01 (店主の方向 = 店主から見た$01の方向) | |
C2/2CCA: 8600 stx $00 ;; $00 = X | |
C2/2CCC: 8401 sty $01 ;; $01 = Y | |
C2/2CCE: 221514C2 jsr $C21415 ;; 店主が攻撃した敵に反撃しようとする | |
C2/2CD2: 28 plp | |
C2/2CD3: 6B rtl |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment