diff options
author | ElectroDeoxys <ElectroDeoxys@gmail.com> | 2019-07-28 17:26:53 +0100 |
---|---|---|
committer | ElectroDeoxys <ElectroDeoxys@gmail.com> | 2019-07-28 17:26:53 +0100 |
commit | 4e94e9685360f6ee561adc6c60d4b11154bf1f00 (patch) | |
tree | f4a8b22d0dfb0c6f26ddf3fe70b83ae0827c9a88 | |
parent | 7792991b6724b4306819c2dbdab7cd8cf737d5e7 (diff) |
Clean Func_158b2
-rw-r--r-- | src/engine/bank05.asm | 78 |
1 files changed, 41 insertions, 37 deletions
diff --git a/src/engine/bank05.asm b/src/engine/bank05.asm index 6924807..200fc44 100644 --- a/src/engine/bank05.asm +++ b/src/engine/bank05.asm @@ -1184,6 +1184,7 @@ ZeroData: ; 1575e (5:575e) INCROM $1576b, $158b2 +; determine AI score for retreating Func_158b2: ; 158b2 (5:58b2) ld a, [wGotHeadsFromConfusionCheckDuringRetreat] or a @@ -1191,7 +1192,7 @@ Func_158b2: ; 158b2 (5:58b2) xor a ld [$cdd7], a call StoreDefendingPokemonColorWRAndPrizeCards - ld a, $80 + ld a, 128 ; initial retreat score ld [wcdbe], a ld a, [$cdb4] or a @@ -1208,14 +1209,14 @@ Func_158b2: ; 158b2 (5:58b2) jr z, .check_ko_1 ; no status and DOUBLE_POISONED jr z, .check_cnf ; no poison - ld a, $02 + ld a, 2 call AddToWcdbe .check_cnf ld a, [hl] and CNF_SLP_PRZ cp CONFUSED jr nz, .check_ko_1 - ld a, $01 + ld a, 1 call AddToWcdbe .check_ko_1 @@ -1229,18 +1230,18 @@ Func_158b2: ; 158b2 (5:58b2) jr nc, .active_cant_ko .active_cant_use_move - ld a, $05 + ld a, 5 call SubFromWcdbe ld a, [wAIOpponentPrizeCount] cp 2 jr nc, .active_cant_ko - ld a, $23 + ld a, 35 call SubFromWcdbe .active_cant_ko call CheckIfDefendingPokemonCanKnockOut jr nc, .defending_cant_ko - ld a, $02 + ld a, 2 call AddToWcdbe call CheckIfNotABossDeckID @@ -1257,14 +1258,14 @@ Func_158b2: ; 158b2 (5:58b2) ld a, [wAIPlayerPrizeCount] cp 2 jr nc, .check_prize_count - ld a, $02 + ld a, 2 call AddToWcdbe .check_prize_count ld a, [wAIOpponentPrizeCount] cp 2 jr nc, .check_resistance_1 - ld a, $02 + ld a, 2 call SubFromWcdbe .check_resistance_1 @@ -1274,7 +1275,7 @@ Func_158b2: ; 158b2 (5:58b2) ld a, [wAIPlayerResistance] and b jr z, .check_weakness_1 - ld a, $01 + ld a, 1 call AddToWcdbe ; check bench for Pokémon that @@ -1295,7 +1296,7 @@ Func_158b2: ; 158b2 (5:58b2) jr nz, .loop_resistance_1 jr .check_weakness_1 .exit_loop_resistance_1 - ld a, $02 + ld a, 2 call SubFromWcdbe .check_weakness_1 @@ -1304,7 +1305,7 @@ Func_158b2: ; 158b2 (5:58b2) call GetArenaCardWeakness and b jr z, .check_resistance_2 - ld a, $02 + ld a, 2 call AddToWcdbe ; check bench for Pokémon that @@ -1324,7 +1325,7 @@ Func_158b2: ; 158b2 (5:58b2) jr nz, .loop_weakness_1 jr .check_resistance_2 .exit_loop_weakness_1 - ld a, $03 + ld a, 3 call SubFromWcdbe .check_resistance_2 @@ -1333,7 +1334,7 @@ Func_158b2: ; 158b2 (5:58b2) call GetArenaCardResistance and b jr z, .check_weakness_2 - ld a, $03 + ld a, 3 call SubFromWcdbe ; check bench for Pokémon that @@ -1357,7 +1358,7 @@ Func_158b2: ; 158b2 (5:58b2) pop de and b jr z, .loop_weakness_2 - ld a, $02 + ld a, 2 call AddToWcdbe push de @@ -1373,7 +1374,7 @@ Func_158b2: ; 158b2 (5:58b2) ld a, e call CheckIfCanDamageDefendingPokemon jr nc, .check_weakness_3 - ld a, $0a + ld a, 10 call AddToWcdbe jr .check_resistance_3 @@ -1384,7 +1385,7 @@ Func_158b2: ; 158b2 (5:58b2) ld a, [wAIPlayerWeakness] and b jr z, .check_resistance_3 - ld a, $03 + ld a, 3 call SubFromWcdbe ; check bench for Pokémon that @@ -1403,7 +1404,7 @@ Func_158b2: ; 158b2 (5:58b2) ld a, [wLoadedCard1Resistance] and b jr z, .loop_resistance_2 - ld a, $01 + ld a, 1 call AddToWcdbe ; check bench for Pokémon that @@ -1435,7 +1436,7 @@ Func_158b2: ; 158b2 (5:58b2) .success pop bc pop hl - ld a, $02 + ld a, 2 call AddToWcdbe ld a, [wAIOpponentPrizeCount] @@ -1452,7 +1453,7 @@ Func_158b2: ; 158b2 (5:58b2) call CheckIfCardCanUseSelectedMove jp nc, .check_defending_id .active_can_ko - ld a, $28 + ld a, 40 call AddToWcdbe ld a, $01 ld [$cdd7], a @@ -1496,7 +1497,7 @@ Func_158b2: ; 158b2 (5:58b2) .cant_damage pop bc pop hl - ld a, $05 + ld a, 5 call AddToWcdbe ld a, $01 ld [$cdd7], a @@ -1515,12 +1516,12 @@ Func_158b2: ; 158b2 (5:58b2) cp 3 jr nc, .three_or_more ; exactly two - ld a, $01 + ld a, 1 call SubFromWcdbe jr .one_or_none .three_or_more - ld a, $02 + ld a, 2 call SubFromWcdbe .one_or_none @@ -1563,7 +1564,7 @@ Func_158b2: ; 158b2 (5:58b2) jr c, .loop_ko_2 jr .check_active_id .exit_loop_ko - ld a, $14 + ld a, 20 call SubFromWcdbe .check_active_id @@ -1576,9 +1577,9 @@ Func_158b2: ; 158b2 (5:58b2) cp CLEFAIRY_DOLL jr z, .mysterious_fossil_or_clefairy_doll -; if wcdbe is at least $83, set carry +; if wcdbe is at least 131, set carry ld a, [wcdbe] - cp $83 + cp 131 jr nc, .set_carry .no_carry or a @@ -1717,6 +1718,8 @@ Func_15eae: ; 15eae (5:5eae) Func_15f4c ; 15f4c (5:5f4c) INCROM $15f4c, $161d5 +; determine AI score for the legendary cards +; Moltres, Zapdos and Articuno Func_161d5: ; 161d5 (5:61d5) ; check if deck applies ld a, [wOpponentDeckID] @@ -1747,18 +1750,18 @@ Func_161d5: ; 161d5 (5:61d5) ret c call CheckIfCardCanKnockOutAndUseSelectedMove - jr c, .asm_16258 + jr c, .subtract call CheckIfActivePokemonCanUseAnyNonResidualMove - jr nc, .asm_16258 + jr nc, .subtract call Func_158b2 - jr c, .asm_16258 + jr c, .subtract ; checks for player's active card status ld a, DUELVARS_ARENA_CARD_STATUS call GetNonTurnDuelistVariable and CNF_SLP_PRZ or a - jr nz, .asm_16258 + jr nz, .subtract ; checks for player's Pokemon Power call SwapTurn @@ -1783,7 +1786,7 @@ Func_161d5: ; 161d5 (5:61d5) ; checks for Muk in both Play Areas ld a, MUK call CountPokemonIDInBothPlayAreas - jr c, .asm_16258 + jr c, .subtract ; checks if player's active card is Snorlax ld a, DUELVARS_ARENA_CARD call GetNonTurnDuelistVariable @@ -1792,13 +1795,14 @@ Func_161d5: ; 161d5 (5:61d5) call SwapTurn ld a, e cp SNORLAX - jr z, .asm_16258 + jr z, .subtract - ld a, $46 +; add + ld a, 70 call AddToWcdbe ret -.asm_16258 - ld a, $64 +.subtract + ld a, 100 call SubFromWcdbe ret @@ -1806,15 +1810,15 @@ Func_161d5: ; 161d5 (5:61d5) ; checks if there's enough cards in deck ld a, DUELVARS_NUMBER_OF_CARDS_NOT_IN_DECK call GetTurnDuelistVariable - cp $38 ; max number of cards not in deck to activate - jr nc, .asm_16258 + cp 56 ; max number of cards not in deck to activate + jr nc, .subtract ret .zapdos ; checks for Muk in both Play Areas ld a, MUK call CountPokemonIDInBothPlayAreas - jr c, .asm_16258 + jr c, .subtract ret ; 0x16270 |