diff options
author | ElectroDeoxys <ElectroDeoxys@gmail.com> | 2019-09-15 20:41:51 +0100 |
---|---|---|
committer | ElectroDeoxys <ElectroDeoxys@gmail.com> | 2019-09-15 20:41:51 +0100 |
commit | 7ceca8371ebcc3bd9db892b8315f23934fa93e45 (patch) | |
tree | 22e5b2553275a9022f48591959ec174dd529b39f /src | |
parent | bfe775e2bb249eb77d65d97d46dab83cd1a13399 (diff) |
Disassemble Func_169ca
Diffstat (limited to 'src')
-rw-r--r-- | src/engine/bank05.asm | 38 | ||||
-rw-r--r-- | src/wram.asm | 2 |
2 files changed, 29 insertions, 11 deletions
diff --git a/src/engine/bank05.asm b/src/engine/bank05.asm index b56c149..18b4217 100644 --- a/src/engine/bank05.asm +++ b/src/engine/bank05.asm @@ -3778,13 +3778,13 @@ CheckForEvolutionInDeck: ; 16451 (5:6451) Func_16488 ; 16488 (5:6488) INCROM $16488, $164a1 -; copies wPlayAreaAIScore to wcddd. +; copies wPlayAreaAIScore to wTempPlayAreaAIScore. ; copies AIScore to wcde3. ; decides which card to get energy card. Func_164a1: ; 164a1 (5:64a1) ld a, $03 ld [wcdd8], a - ld de, wcddd + ld de, wTempPlayAreaAIScore ld hl, wPlayAreaAIScore ld b, MAX_PLAY_AREA_POKEMON .loop_play_area @@ -3801,7 +3801,7 @@ Func_164a1: ; 164a1 (5:64a1) Func_164ba: ; 164ba (5:64ba) ld a, $83 ld [wcdd8], a - ld de, wcddd + ld de, wTempPlayAreaAIScore ld hl, wPlayAreaAIScore ld b, MAX_PLAY_AREA_POKEMON .asm_164c7 @@ -3815,13 +3815,13 @@ Func_164ba: ; 164ba (5:64ba) ld [de], a jr AIDecideWhichCardToAttachEnergy -; copies Play Area AI score to wcddd +; copies Play Area AI score to wTempPlayAreaAIScore ; and loads wAIscore with value in wcde3. ; identical to Func_169e3. Func_164d3: ; 164d3 (5:64d3) push af ld de, wPlayAreaAIScore - ld hl, wcddd + ld hl, wTempPlayAreaAIScore ld b, MAX_PLAY_AREA_POKEMON .loop ld a, [hli] @@ -4788,16 +4788,33 @@ CheckSpecificDecksToAttachDoubleColorless: ; 1696e (5:696e) ret ; 0x169ca -Func_169ca ; 169ca (5:69ca) - INCROM $169ca, $169e3 +Func_169ca: ; 169ca (5:69ca) + ld a, $01 + ld [wcdd9], a + +; copy wPlayAreaAIScore to wTempPlayAreaAIScore. + ld de, wTempPlayAreaAIScore + ld hl, wPlayAreaAIScore + ld b, MAX_PLAY_AREA_POKEMON +.loop + ld a, [hli] + ld [de], a + inc de + dec b + jr nz, .loop + + ld a, [wAIScore] + ld [de], a + jr Func_169f8.asm_169fc -; copies Play Area AI score to wcddd +; copies wPlayAreaAIScore to wTempPlayAreaAIScore ; and loads wAIscore with value in wcde3. ; identical to Func_164d3. +; TODO: reconsider function structure here. Func_169e3: ; 169e3 (5:69e3) push af ld de, wPlayAreaAIScore - ld hl, wcddd + ld hl, wTempPlayAreaAIScore ld b, MAX_PLAY_AREA_POKEMON .loop ld a, [hli] @@ -4814,6 +4831,7 @@ Func_169e3: ; 169e3 (5:69e3) Func_169f8: ; 169f8 (5:69f8) xor a ld [wcdd9], a +.asm_169fc ld a, [wce20] and $01 jr z, .asm_16a0b @@ -4839,7 +4857,7 @@ Func_169f8: ; 169f8 (5:69f8) ld a, [wAIScore] cp b jr nc, .asm_16a30 - ; first attack is higher score + ; first attack has higher score dec c ld a, b diff --git a/src/wram.asm b/src/wram.asm index d53f639..7015d96 100644 --- a/src/wram.asm +++ b/src/wram.asm @@ -1282,7 +1282,7 @@ wcddb:: ; cddb wcddc:: ; cddc ds $1 -wcddd:: ; cddd +wTempPlayAreaAIScore:: ; cddd ds MAX_PLAY_AREA_POKEMON wcde3:: ; cde3 |