diff options
author | ElectroDeoxys <ElectroDeoxys@gmail.com> | 2019-09-11 12:41:51 +0100 |
---|---|---|
committer | ElectroDeoxys <ElectroDeoxys@gmail.com> | 2019-09-11 12:41:51 +0100 |
commit | 6cc0384220283a0c7be627fc76dccc7f5320ac70 (patch) | |
tree | 318def5923a291638ca2cdc1ba35127934b079c9 /src | |
parent | 68e1190a67dcb9b44e63fff454a84ecd0bf5b842 (diff) |
Disassemble Func_164a1
Diffstat (limited to 'src')
-rw-r--r-- | src/engine/bank05.asm | 48 |
1 files changed, 40 insertions, 8 deletions
diff --git a/src/engine/bank05.asm b/src/engine/bank05.asm index 5d3d726..e2e1ae0 100644 --- a/src/engine/bank05.asm +++ b/src/engine/bank05.asm @@ -74,7 +74,7 @@ Func_14078: ; 14078 (5:4078) call AIDecideBenchPokemonToSwitchTo call AIChooseEnergyToDiscardForRetreatCost .asm_14091 - call AIDecidePlayEnergyCard + call AIDecidePlayEnergyCardFromHand call Func_169f8 ret c ld a, OPPACTION_FINISH_NO_ATTACK @@ -3778,8 +3778,42 @@ CheckForEvolutionInDeck: ; 16451 (5:6451) Func_16488 ; 16488 (5:6488) INCROM $16488, $164a1 -Func_164a1 ; 164a1 (5:64a1) - INCROM $164a1, $164d3 +; copies wBenchAIScore to wcddd. +; 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 hl, wBenchAIScore + ld b, MAX_PLAY_AREA_POKEMON +.loop_play_area + ld a, [hli] + ld [de], a + inc de + dec b + jr nz, .loop_play_area + + ld a, [wAIScore] + ld [de], a + jr AIDecideWhichCardToAttachEnergy + +Func_164ba: ; 164ba (5:64ba) + ld a, $83 + ld [wcdd8], a + ld de, wcddd + ld hl, wBenchAIScore + ld b, MAX_PLAY_AREA_POKEMON +.asm_164c7 + ld a, [hli] + ld [de], a + inc de + dec b + jr nz, .asm_164c7 + + ld a, [wAIScore] + ld [de], a + jr AIDecideWhichCardToAttachEnergy ; copies bench AI score to wcddd ; and loads in wAIscore value in wcde3 @@ -3800,24 +3834,22 @@ Func_164d3: ; 164d3 (5:64d3) ret ; 0x164e8 -AIDecidePlayEnergyCard: ; 164e8 (5:64e8) +AIDecidePlayEnergyCardFromHand: ; 164e8 (5:64e8) xor a ld [wcdd8], a call CreateEnergyCardListFromHand - jr nc, .has_energy + jr nc, AIDecideWhichCardToAttachEnergy ; no energy ld a, [wcdd8] or a jr z, .exit - ; can this even be reached? jp Func_164d3 .exit or a ret -; initialize wcde4 to $80 -.has_energy +AIDecideWhichCardToAttachEnergy: ; 164fc (5:64fc) ld a, $80 ld b, MAX_PLAY_AREA_POKEMON ld hl, wcde4 |