diff --git a/battle/ai/items.asm b/battle/ai/items.asm index 75245dd94..2fb479590 100644 --- a/battle/ai/items.asm +++ b/battle/ai/items.asm @@ -663,7 +663,7 @@ EnemyPotionFinish: ; 38436 call PrintText_UsedItemOn hlcoord 2, 2 xor a - ld [wd10a], a + ld [wWhichHPBar], a call AIUsedItemSound predef AnimateHPBar jp AIUpdateHUD diff --git a/battle/core.asm b/battle/core.asm index dcc4fe31d..7bc7d54f1 100644 --- a/battle/core.asm +++ b/battle/core.asm @@ -2098,7 +2098,7 @@ UpdateHPBar: ; 3cd3c xor a .ok push bc - ld [wd10a], a + ld [wWhichHPBar], a predef AnimateHPBar pop bc ret @@ -2494,7 +2494,7 @@ WinTrainerBattle: ; 3cfa4 jr nz, .skip_heal predef HealParty .skip_heal - ld a, [wc2cc] + ld a, [wMonStatusFlags] bit 0, a jr nz, .skip_win_loss_text call PrintWinLossText @@ -2888,7 +2888,7 @@ AskUseNextPokemon: ; 3d1f8 ForcePlayerMonChoice: ; 3d227 call EmptyBattleTextBox call LoadStandardMenuDataHeader - call Function3d2f7 + call SetUpBattlePartyMenu_NoLoop call ForcePickPartyMonInBattle ld a, [wLinkMode] and a @@ -2992,12 +2992,12 @@ IsMobileBattle: ; 3d2f1 ret ; 3d2f7 -Function3d2f7: ; 3d2f7 +SetUpBattlePartyMenu_NoLoop: ; 3d2f7 call ClearBGPalettes -Function3d2fa: ; switch to fullscreen menu? +SetUpBattlePartyMenu: ; switch to fullscreen menu? callba LoadPartyMenuGFX callba InitPartyMenuWithCancel - callba Function8e85 + callba InitBattlePartyMenuPals callba InitPartyMenuGFX ret ; 3d313 @@ -3113,7 +3113,7 @@ LostBattle: ; 3d38e ld c, 40 call DelayFrames - ld a, [wc2cc] + ld a, [wMonStatusFlags] bit 0, a jr nz, .skip_win_loss_text call PrintWinLossText @@ -3701,7 +3701,7 @@ OfferSwitch: ; 3d74b ld a, [wMenuCursorY] dec a jr nz, .said_no - call Function3d2f7 + call SetUpBattlePartyMenu_NoLoop call PickSwitchMonInBattle jr c, .canceled_switch ld a, [CurBattleMon] @@ -4563,14 +4563,14 @@ HandleHPHealingItem: ; 3dd2f ld a, [Buffer5] ld [de], a ld a, [hBattleTurn] - ld [wd10a], a + ld [wWhichHPBar], a and a hlcoord 2, 2 jr z, .got_hp_bar_coords hlcoord 10, 9 .got_hp_bar_coords - ld [wd10a], a + ld [wWhichHPBar], a predef AnimateHPBar UseOpponentItem: call RefreshBattleHuds @@ -5113,7 +5113,7 @@ DrawEnemyHUD: ; 3e043 .draw_bar xor a - ld [wd10a], a + ld [wWhichHPBar], a hlcoord 2, 2 ld b, 0 call DrawBattleHPBar @@ -5332,7 +5332,7 @@ Function3e290: call LoadStandardMenuDataHeader call ClearBGPalettes BattleMenuPKMN_Loop: - call Function3d2fa + call SetUpBattlePartyMenu xor a ld [PartyMenuActionText], a call Function3d313 diff --git a/battle/effect_commands.asm b/battle/effect_commands.asm index a52fb46db..2a482a8ce 100644 --- a/battle/effect_commands.asm +++ b/battle/effect_commands.asm @@ -6,6 +6,7 @@ DoPlayerTurn: ; 34000 ret nz jr DoTurn + ; 3400a @@ -115,6 +116,7 @@ endr .DoMoveEffectCommand jp [hl] + ; 34084 @@ -352,6 +354,7 @@ CheckPlayerTurn: call StdBattleTextBox call CantMove jp EndTurn + ; 341f0 @@ -380,6 +383,7 @@ CantMove: ; 341f0 res SUBSTATUS_UNDERGROUND, [hl] res SUBSTATUS_FLYING, [hl] jp AppearUserRaiseSub + ; 34216 @@ -388,6 +392,7 @@ OpponentCantMove: ; 34216 call BattleCommand_SwitchTurn call CantMove jp BattleCommand_SwitchTurn + ; 3421f @@ -623,6 +628,7 @@ EndTurn: ; 34385 ld a, $1 ld [wTurnEnded], a jp ResetDamage + ; 3438d @@ -640,6 +646,7 @@ MoveDisabled: ; 3438d ld hl, DisabledMoveText jp StdBattleTextBox + ; 343a5 @@ -672,6 +679,7 @@ HitConfusion: ; 343a5 ld c, $1 call PlayerHurtItself jp BattleCommand_RaiseSub + ; 343db @@ -821,7 +829,7 @@ BattleCommand_CheckObedience: ; 343db ld hl, WontObeyText call StdBattleTextBox call HitConfusion - jp .asm_3450c + jp .EndDisobedience .Nap @@ -857,7 +865,7 @@ BattleCommand_CheckObedience: ; 343db .Print call StdBattleTextBox - jp .asm_3450c + jp .EndDisobedience .UseInstead @@ -962,7 +970,7 @@ BattleCommand_CheckObedience: ; 343db ld [CurMoveNum], a -.asm_3450c +.EndDisobedience xor a ld [LastPlayerMove], a ld [LastEnemyCounterMove], a @@ -974,6 +982,7 @@ BattleCommand_CheckObedience: ; 343db ld [PlayerEncoreCount], a jp EndMoveEffect + ; 3451f @@ -1003,6 +1012,7 @@ IgnoreSleepOnly: ; 3451f scf ret + ; 34541 @@ -1010,6 +1020,7 @@ BattleCommand_UsedMoveText: ; 34541 ; usedmovetext callba DisplayUsedMoveText ret + ; 34548 @@ -1023,6 +1034,7 @@ CheckUserIsCharging: ; 34548 .end and a ret + ; 34555 @@ -1151,6 +1163,7 @@ endr call StdBattleTextBox ld b, 1 ret + ; 34602 .continuousmoves ; 34602 @@ -1194,6 +1207,7 @@ CheckMimicUsed: ; 3460b .mimic and a ret + ; 34631 @@ -1324,6 +1338,7 @@ BattleCommand_TripleKick: ; 346b2 ld [hld], a ld [hl], a ret + ; 346cd @@ -1333,6 +1348,7 @@ BattleCommand_KickCounter: ; 346cd ld hl, wKickCounter inc [hl] ret + ; 346d2 @@ -1520,6 +1536,7 @@ endr or b ld [TypeModifier], a ret + ; 347c8 @@ -1558,6 +1575,7 @@ CheckTypeMatchup: ; 347d3 bit SUBSTATUS_IDENTIFIED, a jr nz, .End jr .TypesLoop + .Next cp d jr nz, .Nope @@ -1567,11 +1585,13 @@ CheckTypeMatchup: ; 347d3 cp c jr z, .Yup jr .Nope2 + .Nope inc hl .Nope2 inc hl jr .TypesLoop + .Yup xor a ld [hDividend + 0], a @@ -1597,6 +1617,7 @@ CheckTypeMatchup: ; 347d3 pop de pop hl ret + ; 34833 @@ -1618,6 +1639,7 @@ BattleCommand_ResetTypeMatchup: ; 34833 .reset ld [wTypeMatchup], a ret + ; 3484e INCLUDE "battle/ai/switch.asm" @@ -1679,6 +1701,7 @@ BattleCommand_DamageVariation: ; 34cfd ld a, [hQuotient + 2] ld [hl], a ret + ; 34d32 @@ -1729,16 +1752,16 @@ BattleCommand_CheckHit: ; 34d32 cp HELD_BRIGHTPOWDER ld a, c ; % miss pop bc - jr nz, .asm_34d81 + jr nz, .skip_brightpowder ld c, a ld a, b sub c ld b, a - jr nc, .asm_34d81 + jr nc, .skip_brightpowder ld b, 0 -.asm_34d81 +.skip_brightpowder ld a, b cp $ff jr z, .Hit @@ -1834,7 +1857,7 @@ BattleCommand_CheckHit: ; 34d32 .DrainSub ; Return z if using an HP drain move on a substitute. call CheckSubstituteOpp - jr z, .asm_34e00 + jr z, .not_draining_sub ld a, BATTLE_VARS_MOVE_EFFECT call GetBattleVar @@ -1844,7 +1867,7 @@ BattleCommand_CheckHit: ; 34d32 cp EFFECT_DREAM_EATER ret z -.asm_34e00 +.not_draining_sub ld a, 1 and a ret @@ -1916,7 +1939,7 @@ BattleCommand_CheckHit: ; 34d32 ld a, [EnemyEvaLevel] ld c, a - jr z, .asm_34e60 + jr z, .got_acc_eva ld hl, wEnemyMoveStruct + MOVE_ACC ld a, [EnemyAccLevel] @@ -1924,17 +1947,17 @@ BattleCommand_CheckHit: ; 34d32 ld a, [PlayerEvaLevel] ld c, a -.asm_34e60 +.got_acc_eva cp b - jr c, .asm_34e6b + jr c, .eva_less_than_acc ld a, BATTLE_VARS_SUBSTATUS1_OPP call GetBattleVar bit SUBSTATUS_IDENTIFIED, a ret nz -.asm_34e6b - ld a, $e +.eva_less_than_acc + ld a, 14 sub c ld c, a xor a @@ -1943,9 +1966,9 @@ BattleCommand_CheckHit: ; 34d32 ld a, [hl] ld [hMultiplicand + 2], a push hl - ld d, $2 + ld d, 2 -.asm_34e7a +.accuracy_loop push bc ld hl, .AccProb dec b @@ -1959,29 +1982,29 @@ BattleCommand_CheckHit: ; 34d32 call Multiply ld a, [hl] ld [hDivisor], a - ld b, $4 + ld b, 4 call Divide ld a, [hQuotient + 2] ld b, a ld a, [hQuotient + 1] or b - jr nz, .asm_34ea2 + jr nz, .min_accuracy ld [hQuotient + 1], a ld a, $1 ld [hQuotient + 2], a -.asm_34ea2 +.min_accuracy ld b, c dec d - jr nz, .asm_34e7a + jr nz, .accuracy_loop ld a, [hQuotient + 1] and a ld a, [hQuotient + 2] - jr z, .asm_34eaf + jr z, .finish_accuracy ld a, $ff -.asm_34eaf +.finish_accuracy pop hl ld [hl], a ret @@ -2016,9 +2039,9 @@ BattleCommand_EffectChance: ; 34ecc ld hl, wPlayerMoveStruct + MOVE_CHANCE ld a, [hBattleTurn] and a - jr z, .asm_34ee1 + jr z, .got_move_chance ld hl, wEnemyMoveStruct + MOVE_CHANCE -.asm_34ee1 +.got_move_chance call BattleRandom cp [hl] @@ -2030,6 +2053,7 @@ BattleCommand_EffectChance: ; 34ecc ld [EffectFailed], a and a ret + ; 34eee @@ -2100,6 +2124,7 @@ BattleCommand_LowerSub: ; 34eee ld a, 0 ld [wc73e], a ret + ; 34f57 @@ -2108,6 +2133,7 @@ BattleCommand_HitTarget: ; 34f57 call BattleCommand_LowerSub call BattleCommand_HitTargetNoSub jp BattleCommand_RaiseSub + ; 34f60 @@ -2159,6 +2185,7 @@ BattleCommand_HitTargetNoSub: ; 34f60 .fly_dig ; clear sprite jp AppearUserLowerSub + .multihit .conversion .doublehit @@ -2179,6 +2206,7 @@ BattleCommand_HitTargetNoSub: ; 34f60 xor a ld [wNumHits], a jp PlayFXAnimID + ; 34fd1 @@ -2189,6 +2217,7 @@ BattleCommand_StatUpAnim: ; 34fd1 xor a jr BattleCommand_StatUpDownAnim + ; 34fdb @@ -2216,6 +2245,7 @@ BattleCommand_StatUpDownAnim: ; 34feb ld e, a ld d, 0 jp PlayFXAnimID + ; 34ffd @@ -2226,6 +2256,7 @@ BattleCommand_SwitchTurn: ; 34ffd xor 1 ld [hBattleTurn], a ret + ; 35004 @@ -2247,6 +2278,7 @@ BattleCommand_RaiseSub: ; 35004 ld [wKickCounter], a ld a, SUBSTITUTE jp LoadAnim + ; 35023 @@ -2291,6 +2323,7 @@ BattleCommand_FailureText: ; 35023 res SUBSTATUS_FLYING, [hl] call AppearUserRaiseSub jp EndMoveEffect + ; 3505e @@ -2382,6 +2415,7 @@ BattleCommand_CheckFaint: ; 3505e inc de ld [de], a ret + ; 350e4 @@ -2452,6 +2486,7 @@ FailText_CheckOpponentProtect: ; 35157 ld l, e .not_protected jp StdBattleTextBox + ; 35165 @@ -2464,6 +2499,7 @@ BattleCommanda5: ; 35165 and $7f jp z, PrintDoesntAffect jp PrintButItFailed + ; 35175 @@ -2512,6 +2548,7 @@ BattleCommand_StartLoop: ; 35197 xor a ld [hl], a ret + ; 351a5 @@ -2539,6 +2576,7 @@ BattleCommand_SuperEffectiveText: ; 351ad ld hl, NotVeryEffectiveText .print jp StdBattleTextBox + ; 351c0 @@ -2550,10 +2588,10 @@ BattleCommand_CheckDestinyBond: ; 351c0 ld hl, EnemyMonHP ld a, [hBattleTurn] and a - jr z, .asm_351cb + jr z, .got_hp ld hl, BattleMonHP -.asm_351cb +.got_hp ld a, [hli] or [hl] ret nz @@ -2561,7 +2599,7 @@ BattleCommand_CheckDestinyBond: ; 351c0 ld a, BATTLE_VARS_SUBSTATUS5_OPP call GetBattleVar bit SUBSTATUS_DESTINY_BOND, a - jr z, .asm_35231 + jr z, .no_dbond ld hl, TookDownWithItText call StdBattleTextBox @@ -2571,13 +2609,13 @@ BattleCommand_CheckDestinyBond: ; 351c0 ld hl, EnemyMonMaxHP + 1 bccoord 2, 2 ; hp bar ld a, 0 - jr nz, .asm_351f2 + jr nz, .got_max_hp ld hl, BattleMonMaxHP + 1 bccoord 10, 9 ; hp bar ld a, 1 -.asm_351f2 - ld [wd10a], a +.got_max_hp + ld [wWhichHPBar], a ld a, [hld] ld [Buffer1], a ld a, [hld] @@ -2607,27 +2645,28 @@ BattleCommand_CheckDestinyBond: ; 351c0 call LoadAnim call BattleCommand_SwitchTurn - jr .asm_3524d ; 3522f $1c + jr .finish -.asm_35231 +.no_dbond ld a, BATTLE_VARS_MOVE_EFFECT call GetBattleVar cp EFFECT_MULTI_HIT - jr z, .asm_3524a + jr z, .multiple_hit_raise_sub cp EFFECT_DOUBLE_HIT - jr z, .asm_3524a + jr z, .multiple_hit_raise_sub cp EFFECT_TWINEEDLE - jr z, .asm_3524a + jr z, .multiple_hit_raise_sub cp EFFECT_TRIPLE_KICK - jr z, .asm_3524a + jr z, .multiple_hit_raise_sub cp EFFECT_BEAT_UP - jr nz, .asm_3524d + jr nz, .finish -.asm_3524a +.multiple_hit_raise_sub call BattleCommand_RaiseSub -.asm_3524d +.finish jp EndMoveEffect + ; 35250 @@ -2635,6 +2674,7 @@ BattleCommand_BuildOpponentRage: ; 35250 ; buildopponentrage jp .start + .start ld a, [AttackMissed] and a @@ -2660,6 +2700,7 @@ BattleCommand_BuildOpponentRage: ; 35250 ld hl, RageBuildingText call StdBattleTextBox jp BattleCommand_SwitchTurn + ; 3527b @@ -2675,21 +2716,22 @@ BattleCommand_RageDamage: ; 3527b ld a, [hBattleTurn] and a ld a, [wPlayerRageCounter] - jr z, .asm_35290 + jr z, .rage_loop ld a, [wEnemyRageCounter] -.asm_35290 +.rage_loop and a - jr z, .asm_3529a + jr z, .done dec a add hl, bc - jr nc, .asm_35290 + jr nc, .rage_loop ld hl, -1 -.asm_3529a +.done ld a, h ld [CurDamage], a ld a, l ld [CurDamage + 1], a ret + ; 352a3 @@ -2704,6 +2746,7 @@ rept 2 endr ld [hl], a ret + ; 352b1 @@ -2736,12 +2779,13 @@ DittoMetalPowder: ; 352b1 srl b ld a, b and a - jr nz, .asm_352d8 + jr nz, .done inc b -.asm_352d8 +.done scf rr c ret + ; 352dc @@ -2837,6 +2881,7 @@ PlayerAttackDamage: ; 352e2 ld a, 1 and a ret + ; 3534d @@ -2882,6 +2927,7 @@ TruncateHL_BC: ; 3534d .done ld b, l ret + ; 35378 @@ -2936,6 +2982,7 @@ GetDamageStats: ; 3537e pop bc pop hl ret + ; 353b5 @@ -2953,6 +3000,7 @@ ThickClubBoost: ; 353b5 pop de pop bc ret + ; 353c3 @@ -2970,6 +3018,7 @@ LightBallBoost: ; 353c3 pop de pop bc ret + ; 353d1 @@ -3012,6 +3061,7 @@ SpeciesItemBoost: ; 353d1 sla l rl h ret + ; 353f6 @@ -3092,6 +3142,7 @@ EnemyAttackDamage: ; 353f6 ld a, 1 and a ret + ; 35461 @@ -3275,12 +3326,14 @@ BattleCommand_BeatUp: ; 35461 ld a, [wEnemyMoveStruct + MOVE_POWER] ld d, a ret + ; 355b0 .beatup_fail: ; 355b0 ld b, buildopponentrage_command jp SkipToBattleCommand + ; 355b5 @@ -3290,6 +3343,7 @@ BattleCommanda8: ; 355b5 ret nz jp PrintButItFailed + ; 355bd @@ -3300,10 +3354,10 @@ GetBeatupMonLocation: ; 355bd ld a, [hBattleTurn] and a ld hl, PartyMon1Species - jr z, .asm_355cc + jr z, .got_species ld hl, OTPartyMon1Species -.asm_355cc +.got_species ld a, [wd002] add hl, bc call GetPartyLocation @@ -3318,6 +3372,7 @@ BattleCommand_ClearMissDamage: ; 355d5 ret z jp ResetDamage + ; 355dd @@ -3356,6 +3411,7 @@ endr pop af ld e, a ret + ; 35612 @@ -3592,6 +3648,7 @@ endr ld [hProduct + 3], a ret + ; 35703 @@ -3659,18 +3716,18 @@ BattleCommand_ConstantDamage: ; 35726 .psywave_loop call BattleRandom and a - jr z, .psywave_loop ; 35761 $fa + jr z, .psywave_loop cp b - jr nc, .psywave_loop ; 35764 $f7 + jr nc, .psywave_loop ld b, a ld a, $0 - jr .got_power ; 35769 $21 + jr .got_power .super_fang ld hl, EnemyMonHP ld a, [hBattleTurn] and a - jr z, .got_hp ; 35771 $3 + jr z, .got_hp ld hl, BattleMonHP .got_hp ld a, [hli] @@ -3682,12 +3739,12 @@ BattleCommand_ConstantDamage: ; 35726 ld a, b pop bc and a - jr nz, .got_power ; 35781 $9 + jr nz, .got_power or b ld a, $0 - jr nz, .got_power ; 35786 $4 + jr nz, .got_power ld b, $1 - jr .got_power ; 3578a $0 + jr .got_power .got_power ld hl, CurDamage @@ -3699,7 +3756,7 @@ BattleCommand_ConstantDamage: ; 35726 ld hl, BattleMonHP ld a, [hBattleTurn] and a - jr z, .reversal_got_hp ; 35798 $3 + jr z, .reversal_got_hp ld hl, EnemyMonHP .reversal_got_hp xor a @@ -3844,6 +3901,7 @@ BattleCommand_Counter: ; 35813 xor a ld [AttackMissed], a ret + ; 35864 @@ -3870,12 +3928,12 @@ BattleCommand_Encore: ; 35864 jp z, .failed ld b, a -.asm_3588e +.got_move ld a, [hli] cp b - jr nz, .asm_3588e + jr nz, .got_move - ld bc, $0005 + ld bc, BattleMonPP - BattleMonMoves - 1 add hl, bc ld a, [hl] and $3f @@ -3895,33 +3953,32 @@ rept 3 endr ld [de], a call CheckOpponentWentFirst - jr nz, .asm_3591a + jr nz, .finish_move ld a, [hBattleTurn] and a - jr z, .asm_358ef + jr z, .force_last_enemy_move push hl ld a, [LastPlayerMove] ld b, a ld c, 0 ld hl, BattleMonMoves -.asm_358cc +.find_player_move ld a, [hli] cp b - jr z, .asm_358dd + jr z, .got_player_move inc c ld a, c cp NUM_MOVES - jr c, .asm_358cc + jr c, .find_player_move pop hl res SUBSTATUS_ENCORED, [hl] xor a ld [de], a jr .failed -.asm_358dd +.got_player_move pop hl - ld a, c ld [CurMoveNum], a ld a, b @@ -3929,30 +3986,30 @@ endr dec a ld de, wPlayerMoveStruct call GetMoveData - jr .asm_3591a + jr .finish_move -.asm_358ef +.force_last_enemy_move push hl ld a, [LastEnemyMove] ld b, a ld c, 0 ld hl, EnemyMonMoves -.asm_358f9 +.find_enemy_move ld a, [hli] cp b - jr z, .asm_3590a + jr z, .got_enemy_move inc c ld a, c cp NUM_MOVES - jr c, .asm_358f9 + jr c, .find_enemy_move pop hl res SUBSTATUS_ENCORED, [hl] xor a ld [de], a jr .failed -.asm_3590a - pop hl +.got_enemy_move + pop hl ld a, c ld [CurEnemyMoveNum], a ld a, b @@ -3961,13 +4018,14 @@ endr ld de, wEnemyMoveStruct call GetMoveData -.asm_3591a +.finish_move call AnimateCurrentMove ld hl, GotAnEncoreText jp StdBattleTextBox .failed jp PrintDidntAffect2 + ; 35926 @@ -3976,15 +4034,15 @@ BattleCommand_PainSplit: ; 35926 ld a, [AttackMissed] and a - jp nz, PainSplit_PrintButItFailed + jp nz, .ButItFailed call CheckSubstituteOpp - jp nz, PainSplit_PrintButItFailed + jp nz, .ButItFailed call AnimateCurrentMove ld hl, BattleMonMaxHP + 1 ld de, EnemyMonMaxHP + 1 call .PlayerShareHP ld a, $1 - ld [wd10a], a + ld [wWhichHPBar], a hlcoord 10, 9 predef AnimateHPBar ld hl, EnemyMonHP @@ -3998,7 +4056,7 @@ BattleCommand_PainSplit: ; 35926 ld [Buffer1], a call .EnemyShareHP xor a - ld [wd10a], a + ld [wWhichHPBar], a call ResetDamage hlcoord 2, 2 predef AnimateHPBar @@ -4062,10 +4120,12 @@ endr ld [hli], a ld [Buffer6], a ret + ; 359cd -PainSplit_PrintButItFailed: ; 359cd +.ButItFailed jp PrintDidntAffect2 + ; 359d0 @@ -4080,6 +4140,7 @@ BattleCommand_Snore: ; 359d0 ld [AttackMissed], a call FailSnore jp EndMoveEffect + ; 359e6 @@ -4088,17 +4149,17 @@ BattleCommand_Conversion2: ; 359e6 ld a, [AttackMissed] and a - jr nz, .asm_35a50 + jr nz, .failed ld hl, BattleMonType1 ld a, [hBattleTurn] and a - jr z, .asm_359f7 + jr z, .got_type ld hl, EnemyMonType1 -.asm_359f7 +.got_type ld a, BATTLE_VARS_LAST_COUNTER_MOVE_OPP call GetBattleVar and a - jr z, .asm_35a50 + jr z, .failed push hl dec a ld hl, Moves + MOVE_TYPE @@ -4106,20 +4167,20 @@ BattleCommand_Conversion2: ; 359e6 ld d, a pop hl cp CURSE_T - jr z, .asm_35a50 + jr z, .failed call AnimateCurrentMove call BattleCommand_SwitchTurn -.asm_35a13 +.loop call BattleRandom and $1f cp UNUSED_TYPES - jr c, .asm_35a24 + jr c, .okay cp UNUSED_TYPES_END - jr c, .asm_35a13 + jr c, .loop cp TYPES_END - jr nc, .asm_35a13 -.asm_35a24 + jr nc, .loop +.okay ld [hli], a ld [hld], a push hl @@ -4136,7 +4197,7 @@ BattleCommand_Conversion2: ; 359e6 pop hl ld a, [wTypeMatchup] cp 10 - jr nc, .asm_35a13 + jr nc, .loop call BattleCommand_SwitchTurn ld a, [hl] @@ -4145,8 +4206,9 @@ BattleCommand_Conversion2: ; 359e6 ld hl, TransformedTypeText jp StdBattleTextBox -.asm_35a50 +.failed jp FailConversion2 + ; 35a53 @@ -4171,6 +4233,7 @@ BattleCommand_LockOn: ; 35a53 .fail call AnimateFailedMove jp PrintDidntAffect + ; 35a74 @@ -4291,6 +4354,7 @@ BattleCommand_Sketch: ; 35a74 .fail call AnimateFailedMove jp PrintDidntAffect + ; 35b16 @@ -4319,6 +4383,7 @@ BattleCommand_DefrostOpponent: ; 35b16 pop hl ld [hl], a ret + ; 35b33 @@ -4334,11 +4399,11 @@ BattleCommand_SleepTalk: ; 35b33 ld hl, BattleMonMoves + 1 ld a, [DisabledMove] ld d, a - jr z, .asm_35b4f + jr z, .got_moves ld hl, EnemyMonMoves + 1 ld a, [EnemyDisabledMove] ld d, a -.asm_35b4f +.got_moves ld a, BATTLE_VARS_STATUS call GetBattleVar and SLP @@ -4346,10 +4411,10 @@ BattleCommand_SleepTalk: ; 35b33 ld a, [hl] and a jr z, .fail - call .asm_35ba9 + call .safely_check_has_usable_move jr c, .fail dec hl -.asm_35b62 +.sample_move push hl call BattleRandom and 3 ; TODO factor in NUM_MOVES @@ -4359,17 +4424,17 @@ BattleCommand_SleepTalk: ; 35b33 ld a, [hl] pop hl and a - jr z, .asm_35b62 + jr z, .sample_move ld e, a ld a, BATTLE_VARS_MOVE_ANIM call GetBattleVar cp e - jr z, .asm_35b62 + jr z, .sample_move ld a, e cp d - jr z, .asm_35b62 - call .asm_35bdf - jr z, .asm_35b62 + jr z, .sample_move + call .check_two_turn_move + jr z, .sample_move ld a, BATTLE_VARS_MOVE call GetBattleVarAddr ld a, e @@ -4390,57 +4455,57 @@ BattleCommand_SleepTalk: ; 35b33 call AnimateFailedMove jp TryPrintButItFailed -.asm_35ba9 +.safely_check_has_usable_move push hl push de push bc - call .asm_35bb3 + call .check_has_usable_move pop bc pop de pop hl ret -.asm_35bb3 +.check_has_usable_move ld a, [hBattleTurn] and a ld a, [DisabledMove] - jr z, .asm_35bbe + jr z, .got_move_2 ld a, [EnemyDisabledMove] -.asm_35bbe +.got_move_2 ld b, a ld a, BATTLE_VARS_MOVE call GetBattleVar ld c, a dec hl ld d, NUM_MOVES -.asm_35bc8 +.loop2 ld a, [hl] and a - jr z, .asm_35bdb + jr z, .carry cp c - jr z, .asm_35bd7 + jr z, .nope cp b - jr z, .asm_35bd7 + jr z, .nope - call .asm_35bdf - jr nz, .asm_35bdd + call .check_two_turn_move + jr nz, .no_carry -.asm_35bd7 +.nope inc hl dec d - jr nz, .asm_35bc8 + jr nz, .loop2 -.asm_35bdb +.carry scf ret -.asm_35bdd +.no_carry and a ret -.asm_35bdf +.check_two_turn_move push hl push de push bc @@ -4465,6 +4530,7 @@ BattleCommand_SleepTalk: ; 35b33 ret z cp EFFECT_BIDE ret + ; 35bff @@ -4477,6 +4543,7 @@ BattleCommand_DestinyBond: ; 35bff call AnimateCurrentMove ld hl, DestinyBondEffectText jp StdBattleTextBox + ; 35c0f @@ -4485,27 +4552,27 @@ BattleCommand_Spite: ; 35c0f ld a, [AttackMissed] and a - jp nz, .asm_35c91 + jp nz, .failed ld bc, PARTYMON_STRUCT_LENGTH ; ???? ld hl, EnemyMonMoves ld a, [hBattleTurn] and a - jr z, .asm_35c24 + jr z, .got_moves ld hl, BattleMonMoves -.asm_35c24 +.got_moves ld a, BATTLE_VARS_LAST_COUNTER_MOVE_OPP call GetBattleVar and a - jr z, .asm_35c91 + jr z, .failed cp STRUGGLE - jr z, .asm_35c91 + jr z, .failed ld b, a ld c, -1 -.asm_35c33 +.loop inc c ld a, [hli] cp b - jr nz, .asm_35c33 + jr nz, .loop ld [wTypeMatchup], a dec hl ld b, 0 @@ -4515,7 +4582,7 @@ BattleCommand_Spite: ; 35c0f pop bc ld a, [hl] and $3f - jr z, .asm_35c91 + jr z, .failed push bc call GetMoveName call BattleRandom @@ -4527,9 +4594,9 @@ endr ld a, [hl] and $3f cp b - jr nc, .asm_35c5b + jr nc, .deplete_pp ld b, a -.asm_35c5b +.deplete_pp ld a, [hl] sub b ld [hl], a @@ -4544,18 +4611,18 @@ endr ld a, BATTLE_VARS_SUBSTATUS5_OPP call GetBattleVar bit SUBSTATUS_TRANSFORMED, a - jr nz, .asm_35c82 + jr nz, .transformed ld a, [hBattleTurn] and a - jr nz, .asm_35c81 + jr nz, .not_wildmon ld a, [wBattleMode] dec a - jr nz, .asm_35c81 - ld hl, wc739 + jr nz, .not_wildmon + ld hl, wWildMonPP add hl, bc -.asm_35c81 +.not_wildmon ld [hl], e -.asm_35c82 +.transformed push de call AnimateCurrentMove pop de @@ -4563,8 +4630,10 @@ endr ld [wTypeMatchup], a ld hl, SpiteEffectText jp StdBattleTextBox -.asm_35c91 + +.failed jp PrintDidntAffect2 + ; 35c94 @@ -4574,17 +4643,17 @@ BattleCommand_FalseSwipe: ; 35c94 ld hl, EnemyMonHP ld a, [hBattleTurn] and a - jr z, .asm_35c9f + jr z, .got_hp ld hl, BattleMonHP -.asm_35c9f +.got_hp ld de, CurDamage - ld c, $2 + ld c, 2 push hl push de call StringCmp pop de pop hl - jr c, .asm_35cc7 + jr c, .done ld a, [hli] ld [de], a inc de @@ -4592,23 +4661,25 @@ BattleCommand_FalseSwipe: ; 35c94 dec a ld [de], a inc a - jr nz, .asm_35cba + jr nz, .okay dec de ld a, [de] dec a ld [de], a -.asm_35cba +.okay ld a, [CriticalHit] cp $2 - jr nz, .asm_35cc5 + jr nz, .carry xor a ld [CriticalHit], a -.asm_35cc5 +.carry scf ret -.asm_35cc7 + +.done and a ret + ; 35cc9 @@ -4621,9 +4692,9 @@ BattleCommand_HealBell: ; 35cc9 ld de, PartyMon1Status ld a, [hBattleTurn] and a - jr z, .asm_35cdb + jr z, .got_status ld de, OTPartyMon1Status -.asm_35cdb +.got_status ld a, BATTLE_VARS_STATUS call GetBattleVarAddr xor a @@ -4631,12 +4702,12 @@ BattleCommand_HealBell: ; 35cc9 ld h, d ld l, e ld bc, PARTYMON_STRUCT_LENGTH - ld d, PartyEnd - PartySpecies -.asm_35ce9 + ld d, PARTY_LENGTH +.loop ld [hl], a add hl, bc dec d - jr nz, .asm_35ce9 + jr nz, .loop call AnimateCurrentMove ld hl, BellChimedText @@ -4646,6 +4717,7 @@ BattleCommand_HealBell: ; 35cc9 and a jp z, CalcPlayerStats jp CalcEnemyStats + ; 35d00 @@ -4672,6 +4744,7 @@ PlayFXAnimID: ; 35d08 callab PlayBattleAnim ret + ; 35d1c @@ -4729,10 +4802,11 @@ EnemyHurtItself: ; 35d1c ld [Buffer5], a hlcoord 2, 2 xor a - ld [wd10a], a + ld [wWhichHPBar], a predef AnimateHPBar .did_no_damage jp RefreshBattleHuds + ; 35d7e @@ -4788,10 +4862,11 @@ PlayerHurtItself: ; 35d7e ld [Buffer1], a hlcoord 10, 9 ld a, $1 - ld [wd10a], a + ld [wWhichHPBar], a predef AnimateHPBar .did_no_damage jp RefreshBattleHuds + ; 35de0 @@ -4852,6 +4927,7 @@ SelfInflictDamageToSubstitute: ; 35de0 call RefreshBattleHuds .done jp ResetDamage + ; 35e40 @@ -4871,6 +4947,7 @@ UpdateMoveData: ; 35e40 call GetMoveData call GetMoveName jp CopyName1 + ; 35e5c @@ -4944,6 +5021,7 @@ BattleCommand_SleepTarget: ; 35e5c call AnimateFailedMove pop hl jp StdBattleTextBox + ; 35ece @@ -4974,6 +5052,7 @@ BattleCommand_SleepTarget: ; 35e5c .dont_fail xor a ret + ; 35eee @@ -5011,6 +5090,7 @@ BattleCommand_PoisonTarget: ; 35eee callba UseHeldStatusHealingItem ret + ; 35f2c @@ -5101,6 +5181,7 @@ BattleCommand_Poison: ; 35f2c call AnimateFailedMove pop hl jp StdBattleTextBox + ; 35fc0 @@ -5108,6 +5189,7 @@ BattleCommand_Poison: ; 35f2c call AnimateCurrentMove call PoisonOpponent jp RefreshBattleHuds + ; 35fc9 @@ -5124,6 +5206,7 @@ BattleCommand_Poison: ; 35f2c call GetBattleVar cp EFFECT_TOXIC ret + ; 35fe1 @@ -5141,6 +5224,7 @@ CheckIfTargetIsPoisonType: ; 35fe1 ld a, [de] cp POISON ret + ; 35ff5 @@ -5149,6 +5233,7 @@ PoisonOpponent: ; 35ff5 call GetBattleVarAddr set PSN, [hl] jp UpdateOpponentInParty + ; 35fff @@ -5157,6 +5242,7 @@ BattleCommand_DrainTarget: ; 35fff call SapHealth ld hl, SuckedHealthText jp StdBattleTextBox + ; 36008 @@ -5165,6 +5251,7 @@ BattleCommand_EatDream: ; 36008 call SapHealth ld hl, DreamEatenText jp StdBattleTextBox + ; 36011 @@ -5178,7 +5265,7 @@ SapHealth: ; 36011 rr a ld [hDividend + 1], a or b - jr nz, .ok1 ; 0x36020 $4 + jr nz, .ok1 ld a, $1 ld [hDividend + 1], a .ok1 @@ -5186,7 +5273,7 @@ SapHealth: ; 36011 ld de, BattleMonMaxHP ld a, [hBattleTurn] and a - jr z, .battlemonhp ; 0x3602f $6 + jr z, .battlemonhp ld hl, EnemyMonHP ld de, EnemyMonMaxHP .battlemonhp @@ -5213,7 +5300,7 @@ SapHealth: ; 36011 adc b ld [hli], a ld [Buffer6], a - jr c, .okay2 ; 0x36056 $c + jr c, .okay2 ld a, [hld] ld b, a ld a, [de] @@ -5224,7 +5311,7 @@ SapHealth: ; 36011 ld a, [de] inc de sbc b - jr nc, .okay3 ; 0x36062 $c + jr nc, .okay3 .okay2 ld a, [de] ld [hld], a @@ -5239,14 +5326,15 @@ SapHealth: ; 36011 and a hlcoord 10, 9 ld a, $1 - jr z, .hp_bar ; 0x36078 $4 + jr z, .hp_bar hlcoord 2, 2 xor a .hp_bar - ld [wd10a], a + ld [wWhichHPBar], a predef AnimateHPBar call RefreshBattleHuds jp UpdateBattleMonInParty + ; 3608c @@ -5290,6 +5378,7 @@ BattleCommand_BurnTarget: ; 3608c callba UseHeldStatusHealingItem ret + ; 360dd @@ -5317,6 +5406,7 @@ Defrost: ; 360dd ld hl, DefrostedOpponentText jp StdBattleTextBox + ; 36102 @@ -5372,6 +5462,7 @@ BattleCommand_FreezeTarget: ; 36102 .finish ld [hl], $1 ret + ; 36165 @@ -5410,6 +5501,7 @@ BattleCommand_ParalyzeTarget: ; 36165 call PrintParalyze ld hl, UseHeldStatusHealingItem jp CallBattleCore + ; 361ac @@ -5417,58 +5509,72 @@ BattleCommand_AttackUp: ; 361ac ; attackup ld b, ATTACK jr BattleCommand_StatUp + BattleCommand_DefenseUp: ; 361b0 ; defenseup ld b, DEFENSE jr BattleCommand_StatUp + BattleCommand_SpeedUp: ; 361b4 ; speedup ld b, SPEED jr BattleCommand_StatUp + BattleCommand_SpecialAttackUp: ; 361b8 ; specialattackup ld b, SP_ATTACK jr BattleCommand_StatUp + BattleCommand_SpecialDefenseUp: ; 361bc ; specialdefenseup ld b, SP_DEFENSE jr BattleCommand_StatUp + BattleCommand_AccuracyUp: ; 361c0 ; accuracyup ld b, ACCURACY jr BattleCommand_StatUp + BattleCommand_EvasionUp: ; 361c4 ; evasionup ld b, EVASION jr BattleCommand_StatUp + BattleCommand_AttackUp2: ; 361c8 ; attackup2 ld b, $10 | ATTACK jr BattleCommand_StatUp + BattleCommand_DefenseUp2: ; 361cc ; defenseup2 ld b, $10 | DEFENSE jr BattleCommand_StatUp + BattleCommand_SpeedUp2: ; 361d0 ; speedup2 ld b, $10 | SPEED jr BattleCommand_StatUp + BattleCommand_SpecialAttackUp2: ; 361d4 ; specialattackup2 ld b, $10 | SP_ATTACK jr BattleCommand_StatUp + BattleCommand_SpecialDefenseUp2: ; 361d8 ; specialdefenseup2 ld b, $10 | SP_DEFENSE jr BattleCommand_StatUp + BattleCommand_AccuracyUp2: ; 361dc ; accuracyup2 ld b, $10 | ACCURACY jr BattleCommand_StatUp + BattleCommand_EvasionUp2: ; 361e0 ; evasionup2 ld b, $10 | EVASION jr BattleCommand_StatUp + BattleCommand_StatUp: ; 361e4 ; statup call CheckIfStatCanBeRaised @@ -5476,6 +5582,7 @@ BattleCommand_StatUp: ; 361e4 and a ret nz jp StatUpAnimation + ; 361ef @@ -5485,7 +5592,7 @@ CheckIfStatCanBeRaised: ; 361ef ld hl, PlayerStatLevels ld a, [hBattleTurn] and a - jr z, .got_stat_levels ; 0x361f9 $3 + jr z, .got_stat_levels ld hl, EnemyStatLevels .got_stat_levels ld a, [AttackMissed] @@ -5506,23 +5613,23 @@ CheckIfStatCanBeRaised: ; 361ef jp c, .cant_raise_stat ld a, [LoweredStat] and $f0 - jr z, .got_num_stages ; 0x36222 $7 + jr z, .got_num_stages inc b ld a, $d cp b - jr nc, .got_num_stages ; 0x36228 $1 + jr nc, .got_num_stages ld b, a .got_num_stages ld [hl], b push hl ld a, c cp $5 - jr nc, .done_calcing_stats ; 0x36230 $36 + jr nc, .done_calcing_stats ld hl, BattleMonStats + 1 ld de, PlayerStats ld a, [hBattleTurn] and a - jr z, .got_stats_pointer ; 0x3623b $6 + jr z, .got_stats_pointer ld hl, EnemyMonStats + 1 ld de, EnemyStats .got_stats_pointer @@ -5533,22 +5640,23 @@ CheckIfStatCanBeRaised: ; 361ef ld a, c add e ld e, a - jr nc, .no_carry ; 0x3624c $1 + jr nc, .no_carry inc d .no_carry pop bc ld a, [hld] sub 999 % $100 - jr nz, .not_already_max ; 0x36253 $6 + jr nz, .not_already_max ld a, [hl] sbc 999 / $100 jp z, .stats_already_max .not_already_max ld a, [hBattleTurn] and a - jr z, .calc_player_stats ; 0x3625e $5 + jr z, .calc_player_stats call CalcEnemyStats - jr .done_calcing_stats ; 0x36263 $3 + jr .done_calcing_stats + .calc_player_stats call CalcPlayerStats .done_calcing_stats @@ -5556,6 +5664,7 @@ CheckIfStatCanBeRaised: ; 361ef xor a ld [FailedMessage], a ret + ; 3626e @@ -5572,6 +5681,7 @@ CheckIfStatCanBeRaised: ; 361ef ld a, $1 ld [AttackMissed], a ret + ; 3627b @@ -5579,6 +5689,7 @@ CheckIfStatCanBeRaised: ; 361ef ld a, $1 ld [FailedMessage], a ret + ; 36281 @@ -5587,7 +5698,7 @@ StatUpAnimation: ; 36281 ld hl, DropPlayerSub ld a, [hBattleTurn] and a - jr z, .do_player ; 0x3628a $6 + jr z, .do_player ld bc, wEnemyMinimized ld hl, DropEnemySub .do_player @@ -5606,6 +5717,7 @@ StatUpAnimation: ; 36281 call CallBattleCore call WaitBGMap jp BattleCommand_MoveDelay + ; 362ad @@ -5613,54 +5725,67 @@ BattleCommand_AttackDown: ; 362ad ; attackdown ld a, ATTACK jr BattleCommand_StatDown + BattleCommand_DefenseDown: ; 362b1 ; defensedown ld a, DEFENSE jr BattleCommand_StatDown + BattleCommand_SpeedDown: ; 362b5 ; speeddown ld a, SPEED jr BattleCommand_StatDown + BattleCommand_SpecialAttackDown: ; 362b9 ; specialattackdown ld a, SP_ATTACK jr BattleCommand_StatDown + BattleCommand_SpecialDefenseDown: ; 362bd ; specialdefensedown ld a, SP_DEFENSE jr BattleCommand_StatDown + BattleCommand_AccuracyDown: ; 362c1 ; accuracydown ld a, ACCURACY jr BattleCommand_StatDown + BattleCommand_EvasionDown: ; 362c5 ; evasiondown ld a, EVASION jr BattleCommand_StatDown + BattleCommand_AttackDown2: ; 362c9 ; attackdown2 ld a, $10 | ATTACK jr BattleCommand_StatDown + BattleCommand_DefenseDown2: ; 362cd ; defensedown2 ld a, $10 | DEFENSE jr BattleCommand_StatDown + BattleCommand_SpeedDown2: ; 362d1 ; speeddown2 ld a, $10 | SPEED jr BattleCommand_StatDown + BattleCommand_SpecialAttackDown2: ; 362d5 ; specialattackdown2 ld a, $10 | SP_ATTACK jr BattleCommand_StatDown + BattleCommand_SpecialDefenseDown2: ; 362d9 ; specialdefensedown2 ld a, $10 | SP_DEFENSE jr BattleCommand_StatDown + BattleCommand_AccuracyDown2: ; 362dd ; accuracydown2 ld a, $10 | ACCURACY jr BattleCommand_StatDown + BattleCommand_EvasionDown2: ; 362e1 ; evasiondown2 ld a, $10 | EVASION @@ -5787,6 +5912,7 @@ BattleCommand_StatDown: ; 362e3 ld a, 1 ld [AttackMissed], a ret + ; 36391 @@ -5814,6 +5940,7 @@ CheckMist: ; 36391 call GetBattleVar bit SUBSTATUS_MIST, a ret + ; 363b8 @@ -5926,6 +6053,7 @@ TryLowerStat: ; 3641a ld a, 1 and a ret + ; 3644c @@ -5946,6 +6074,7 @@ BattleCommand_StatUpFailText: ; 3644c call GetStatName ld hl, WontRiseAnymoreText jp StdBattleTextBox + ; 3646a @@ -5969,6 +6098,7 @@ BattleCommand_StatDownFailText: ; 3646a call GetStatName ld hl, WontDropAnymoreText jp StdBattleTextBox + ; 3648f @@ -5983,6 +6113,7 @@ GetStatName: ; 3648f cp c jr z, .CheckName jr .GetName + .Copy ld de, StringBuffer2 ld bc, StringBuffer3 - StringBuffer2 @@ -6051,6 +6182,7 @@ ResetMiss: ; 3652d xor a ld [AttackMissed], a ret + ; 36532 @@ -6124,6 +6256,7 @@ LowerStat: ; 36532 ld a, 2 ld [FailedMessage], a ret + ; 3658f @@ -6143,6 +6276,7 @@ BattleCommand_TriStatusChance: ; 3658f ld hl, .ptrs rst JumpTable ret + .ptrs dw BattleCommand_ParalyzeTarget ; paralyze dw BattleCommand_FreezeTarget ; freeze @@ -6156,6 +6290,7 @@ BattleCommand_Curl: ; 365a7 call GetBattleVarAddr set SUBSTATUS_CURLED, [hl] ret + ; 365af @@ -6163,13 +6298,14 @@ BattleCommand_RaiseSubNoAnim: ; 365af ld hl, GetMonBackpic ld a, [hBattleTurn] and a - jr z, .PlayerTurn ; 365b5 $3 + jr z, .PlayerTurn ld hl, GetMonFrontpic .PlayerTurn xor a ld [hBGMapMode], a call CallBattleCore jp WaitBGMap + ; 365c3 @@ -6177,13 +6313,14 @@ BattleCommand_LowerSubNoAnim: ; 365c3 ld hl, DropPlayerSub ld a, [hBattleTurn] and a - jr z, .PlayerTurn ; 365c9 $3 + jr z, .PlayerTurn ld hl, DropEnemySub .PlayerTurn xor a ld [hBGMapMode], a call CallBattleCore jp WaitBGMap + ; 365d7 @@ -6207,6 +6344,7 @@ CalcPlayerStats: ; 365d7 call CallBattleCore jp BattleCommand_SwitchTurn + ; 365fd @@ -6227,6 +6365,7 @@ CalcEnemyStats: ; 365fd call CallBattleCore jp BattleCommand_SwitchTurn + ; 3661d @@ -6299,6 +6438,7 @@ endr jr nz, .loop ret + ; 36671 @@ -6372,6 +6512,7 @@ BattleCommand_StoreEnergy: ; 36671 ld hl, StoringEnergyText call StdBattleTextBox jp EndMoveEffect + ; 366e5 @@ -6382,10 +6523,10 @@ BattleCommand_UnleashEnergy: ; 366e5 ld bc, PlayerRolloutCount ld a, [hBattleTurn] and a - jr z, .asm_366f6 + jr z, .got_damage ld de, EnemyDamageTaken ld bc, EnemyRolloutCount -.asm_366f6 +.got_damage ld a, BATTLE_VARS_SUBSTATUS3 call GetBattleVarAddr set SUBSTATUS_BIDE, [hl] @@ -6405,6 +6546,7 @@ endr ld [wKickCounter], a call AnimateCurrentMove jp EndMoveEffect + ; 3671a @@ -6414,7 +6556,7 @@ BattleCommand_CheckRampage: ; 3671a ld de, PlayerRolloutCount ld a, [hBattleTurn] and a - jr z, .player ; 36720 $3 + jr z, .player ld de, EnemyRolloutCount .player ld a, BATTLE_VARS_SUBSTATUS3 @@ -6424,7 +6566,7 @@ BattleCommand_CheckRampage: ; 3671a ld a, [de] dec a ld [de], a - jr nz, .continue_rampage ; 36730 $1a + jr nz, .continue_rampage res SUBSTATUS_RAMPAGE, [hl] call BattleCommand_SwitchTurn @@ -6432,7 +6574,7 @@ BattleCommand_CheckRampage: ; 3671a push af call BattleCommand_SwitchTurn pop af - jr nz, .continue_rampage ; 3673f $b + jr nz, .continue_rampage set SUBSTATUS_CONFUSED, [hl] call BattleRandom @@ -6445,6 +6587,7 @@ endr .continue_rampage ld b, rampage_command jp SkipToBattleCommand + ; 36751 @@ -6474,6 +6617,7 @@ BattleCommand_Rampage: ; 36751 ld a, 1 ld [wc73e], a ret + ; 36778 @@ -6515,12 +6659,12 @@ BattleCommand_Teleport: ; 36778 .loop_player call BattleRandom cp c - jr nc, .loop_player ; 367b0 $fa + jr nc, .loop_player ; If that number is greater than 4 times your level, run away. srl b srl b cp b - jr nc, .run_away ; 367b7 $26 + jr nc, .run_away .failed call AnimateFailedMove @@ -6534,18 +6678,18 @@ BattleCommand_Teleport: ; 36778 ld b, a ld a, [CurPartyLevel] cp b - jr nc, .run_away ; 367cd $10 + jr nc, .run_away add b ld c, a inc c .loop_enemy call BattleRandom cp c - jr nc, .loop_enemy ; 367d6 $fa + jr nc, .loop_enemy srl b srl b cp b - jr nc, .run_away ; 367dd $0 + jr nc, .run_away .run_away call UpdateBattleMonInParty xor a @@ -6562,6 +6706,7 @@ BattleCommand_Teleport: ; 36778 ld hl, FledFromBattleText jp StdBattleTextBox + ; 36804 @@ -6571,6 +6716,7 @@ SetBattleDraw: ; 36804 or $2 ld [wBattleResult], a ret + ; 3680f @@ -6591,26 +6737,26 @@ BattleCommand_ForceSwitch: ; 3680f jp nz, .force_player_switch ld a, [AttackMissed] and a - jr nz, .missed ; 36830 $20 + jr nz, .missed ld a, [wBattleMode] dec a - jr nz, .trainer ; 36836 $31 + jr nz, .trainer ld a, [CurPartyLevel] ld b, a ld a, [BattleMonLevel] cp b - jr nc, .wild_force_flee ; 36840 $13 + jr nc, .wild_force_flee add b ld c, a inc c .random_loop_wild call BattleRandom cp c - jr nc, .random_loop_wild ; 36849 $fa + jr nc, .random_loop_wild srl b srl b cp b - jr nc, .wild_force_flee ; 36850 $3 + jr nc, .wild_force_flee .missed jp .fail @@ -6626,10 +6772,10 @@ BattleCommand_ForceSwitch: ; 3680f .trainer call FindAliveEnemyMons - jr c, .switch_fail ; 3686c $5c + jr c, .switch_fail ld a, [wEnemyGoesFirst] and a - jr z, .switch_fail ; 36872 $56 + jr z, .switch_fail call UpdateEnemyMonInParty ld a, $1 ld [wKickCounter], a @@ -6650,9 +6796,9 @@ BattleCommand_ForceSwitch: ; 3680f call BattleRandom and $7 cp b - jr nc, .random_loop_trainer ; 368a0 $f8 + jr nc, .random_loop_trainer cp c - jr z, .random_loop_trainer ; 368a3 $f5 + jr z, .random_loop_trainer push af push bc ld hl, OTPartyMon1HP @@ -6661,7 +6807,7 @@ BattleCommand_ForceSwitch: ; 3680f or [hl] pop bc pop de - jr z, .random_loop_trainer ; 368b1 $e7 + jr z, .random_loop_trainer ld a, d inc a ld [wEnemySwitchMonIndex], a @@ -6792,6 +6938,7 @@ BattleCommand_ForceSwitch: ; 3680f ld hl, BlownAwayText .do_text jp StdBattleTextBox + ; 36994 @@ -6823,6 +6970,7 @@ CheckPlayerHasMonToSwitchTo: ; 36994 .not_fainted and a ret + ; 369b6 @@ -6835,87 +6983,91 @@ BattleCommand_EndLoop: ; 369b6 ld bc, PlayerDamageTaken ld a, [hBattleTurn] and a - jr z, .asm_369c7 + jr z, .got_addrs ld de, EnemyRolloutCount ld bc, EnemyDamageTaken -.asm_369c7 +.got_addrs ld a, BATTLE_VARS_SUBSTATUS3 call GetBattleVarAddr bit SUBSTATUS_IN_LOOP, [hl] - jp nz, .asm_36a43 + jp nz, .in_loop set SUBSTATUS_IN_LOOP, [hl] ld a, BATTLE_VARS_MOVE_EFFECT call GetBattleVarAddr ld a, [hl] cp EFFECT_TWINEEDLE - jr z, .asm_36a3f + jr z, .twineedle cp EFFECT_DOUBLE_HIT - ld a, $1 - jr z, .asm_36a3a + ld a, 1 + jr z, .double_hit ld a, [hl] cp EFFECT_BEAT_UP - jr z, .asm_369fb + jr z, .beat_up cp EFFECT_TRIPLE_KICK - jr nz, .asm_36a2b -.asm_369ec + jr nz, .not_triple_kick +.reject_triple_kick_sample call BattleRandom and $3 - jr z, .asm_369ec + jr z, .reject_triple_kick_sample dec a - jr nz, .asm_36a3a - ld a, $1 + jr nz, .double_hit + ld a, 1 ld [bc], a - jr .asm_36a48 -.asm_369fb + jr .done_loop + +.beat_up ld a, [hBattleTurn] and a - jr nz, .asm_36a0b + jr nz, .check_ot_beat_up ld a, [PartyCount] - cp $1 - jp z, .asm_36a1e + cp 1 + jp z, .only_one_beatup dec a - jr .asm_36a3a -.asm_36a0b - ld a, [wBattleMode] - cp $1 - jp z, .asm_36a1e - ld a, [OTPartyCount] - cp $1 - jp z, .asm_36a1e - dec a - jr .asm_36a3a + jr .double_hit -.asm_36a1e +.check_ot_beat_up + ld a, [wBattleMode] + cp WILD_BATTLE + jp z, .only_one_beatup + ld a, [OTPartyCount] + cp 1 + jp z, .only_one_beatup + dec a + jr .double_hit + +.only_one_beatup ld a, BATTLE_VARS_SUBSTATUS3 call GetBattleVarAddr res SUBSTATUS_IN_LOOP, [hl] call BattleCommanda8 jp EndMoveEffect -.asm_36a2b + +.not_triple_kick call BattleRandom and $3 - cp $2 - jr c, .asm_36a39 + cp 2 + jr c, .got_number_hits call BattleRandom and $3 -.asm_36a39 +.got_number_hits inc a -.asm_36a3a +.double_hit ld [de], a inc a ld [bc], a - jr .asm_36a6b -.asm_36a3f - ld a, $1 - jr .asm_36a3a + jr .loop_back_to_critical -.asm_36a43 +.twineedle + ld a, 1 + jr .double_hit + +.in_loop ld a, [de] dec a ld [de], a - jr nz, .asm_36a6b -.asm_36a48 + jr nz, .loop_back_to_critical +.done_loop ld a, BATTLE_VARS_SUBSTATUS3 call GetBattleVarAddr res SUBSTATUS_IN_LOOP, [hl] @@ -6923,17 +7075,17 @@ BattleCommand_EndLoop: ; 369b6 ld hl, PlayerHitTimesText ld a, [hBattleTurn] and a - jr z, .asm_36a5a + jr z, .got_hit_n_times_text ld hl, EnemyHitTimesText -.asm_36a5a +.got_hit_n_times_text push bc ld a, BATTLE_VARS_MOVE_EFFECT call GetBattleVar cp EFFECT_BEAT_UP - jr z, .asm_36a67 + jr z, .beat_up_2 call StdBattleTextBox -.asm_36a67 +.beat_up_2 pop bc xor a @@ -6941,21 +7093,22 @@ BattleCommand_EndLoop: ; 369b6 ret ; Loop back to the command before 'critical'. -.asm_36a6b +.loop_back_to_critical ld a, [BattleScriptBufferLoc + 1] ld h, a ld a, [BattleScriptBufferLoc] ld l, a -.asm_36a73 +.not_critical ld a, [hld] - cp $5 ; critical - jr nz, .asm_36a73 + cp critical_command + jr nz, .not_critical inc hl ld a, h ld [BattleScriptBufferLoc + 1], a ld a, l ld [BattleScriptBufferLoc], a ret + ; 36a82 @@ -6979,6 +7132,7 @@ BattleCommand_FakeOut: ; 36a82 ld a, 1 ld [AttackMissed], a ret + ; 36aa0 @@ -7007,6 +7161,7 @@ FlinchTarget: ; 36ab5 call GetBattleVarAddr set SUBSTATUS_FLINCHED, [hl] jp EndRechargeOpp + ; 36abf @@ -7020,6 +7175,7 @@ CheckOpponentWentFirst: ; 36abf xor b ; 1 if opponent went first pop bc ret + ; 36ac9 @@ -7050,6 +7206,7 @@ BattleCommand_KingsRock: ; 36ac9 call GetBattleVarAddr set SUBSTATUS_FLINCHED, [hl] ret + ; 36af3 @@ -7059,29 +7216,29 @@ BattleCommand_OHKO: ; 36af3 call ResetDamage ld a, [TypeModifier] and $7f - jr z, .asm_36b2f + jr z, .no_effect ld hl, EnemyMonLevel ld de, BattleMonLevel ld bc, wPlayerMoveStruct + MOVE_ACC ld a, [hBattleTurn] and a - jr z, .asm_36b12 + jr z, .got_move_accuracy push hl ld h, d ld l, e pop de ld bc, wEnemyMoveStruct + MOVE_ACC -.asm_36b12 +.got_move_accuracy ld a, [de] sub [hl] - jr c, .asm_36b2f + jr c, .no_effect add a ld e, a ld a, [bc] add e - jr nc, .asm_36b1e + jr nc, .finish_ohko ld a, $ff -.asm_36b1e +.finish_ohko ld [bc], a call BattleCommand_CheckHit ld hl, CurDamage @@ -7091,12 +7248,14 @@ BattleCommand_OHKO: ; 36af3 ld a, $2 ld [CriticalHit], a ret -.asm_36b2f + +.no_effect ld a, $ff ld [CriticalHit], a ld a, $1 ld [AttackMissed], a ret + ; 36b3a @@ -7112,6 +7271,7 @@ BattleCommand_CheckCharge: ; 36b3a res SUBSTATUS_FLYING, [hl] ld b, charge_command jp SkipToBattleCommand + ; 36b4d @@ -7153,6 +7313,7 @@ BattleCommand_Charge: ; 36b4d jr z, .flying call BattleCommand_RaiseSub jr .not_flying + .flying call DisappearUser .not_flying @@ -7261,6 +7422,7 @@ BattleCommand_Charge: ; 36b4d BattleCommand3c: ; 36c2c ; unused ret + ; 36c2d @@ -7274,11 +7436,11 @@ BattleCommand_TrapTarget: ; 36c2d ld de, wEnemyTrappingMove ld a, [hBattleTurn] and a - jr z, .asm_36c43 + jr z, .got_trap ld hl, wPlayerWrapCount ld de, wPlayerTrappingMove -.asm_36c43 +.got_trap ld a, [hl] and a ret nz @@ -7298,16 +7460,16 @@ endr ld b, a ld hl, .Traps -.asm_36c61 +.find_trap_text ld a, [hli] cp b - jr z, .asm_36c69 + jr z, .found_trap_text rept 2 inc hl endr - jr .asm_36c61 + jr .find_trap_text -.asm_36c69 +.found_trap_text ld a, [hli] ld h, [hl] ld l, a @@ -7328,14 +7490,16 @@ BattleCommand_Mist: ; 36c7e ld a, BATTLE_VARS_SUBSTATUS4 call GetBattleVarAddr bit SUBSTATUS_MIST, [hl] - jr nz, .asm_36c92 + jr nz, .already_mist set SUBSTATUS_MIST, [hl] call AnimateCurrentMove ld hl, MistText jp StdBattleTextBox -.asm_36c92 + +.already_mist call AnimateFailedMove jp PrintButItFailed + ; 36c98 @@ -7345,14 +7509,16 @@ BattleCommand_FocusEnergy: ; 36c98 ld a, BATTLE_VARS_SUBSTATUS4 call GetBattleVarAddr bit SUBSTATUS_FOCUS_ENERGY, [hl] - jr nz, .asm_36cac + jr nz, .already_pumped set SUBSTATUS_FOCUS_ENERGY, [hl] call AnimateCurrentMove ld hl, GettingPumpedText jp StdBattleTextBox -.asm_36cac + +.already_pumped call AnimateFailedMove jp PrintButItFailed + ; 36cb2 @@ -7362,12 +7528,13 @@ BattleCommand_Recoil: ; 36cb2 ld hl, BattleMonMaxHP ld a, [hBattleTurn] and a - jr z, .asm_36cbd + jr z, .got_hp ld hl, EnemyMonMaxHP -.asm_36cbd +.got_hp ld a, BATTLE_VARS_MOVE_ANIM call GetBattleVar ld d, a +; get 1/4 damage or 1 HP, whichever is higher ld a, [CurDamage] ld b, a ld a, [CurDamage + 1] @@ -7378,9 +7545,9 @@ BattleCommand_Recoil: ; 36cb2 rr c ld a, b or c - jr nz, .asm_36cd8 + jr nz, .min_damage inc c -.asm_36cd8 +.min_damage ld a, [hli] ld [Buffer2], a ld a, [hl] @@ -7398,27 +7565,28 @@ endr sbc b ld [hl], a ld [Buffer6], a - jr nc, .asm_36cfe + jr nc, .dont_ko xor a ld [hli], a ld [hl], a ld hl, Buffer5 ld [hli], a ld [hl], a -.asm_36cfe +.dont_ko hlcoord 10, 9 ld a, [hBattleTurn] and a - ld a, $1 - jr z, .asm_36d0c + ld a, 1 + jr z, .animate_hp_bar hlcoord 2, 2 xor a -.asm_36d0c - ld [wd10a], a +.animate_hp_bar + ld [wWhichHPBar], a predef AnimateHPBar call RefreshBattleHuds ld hl, RecoilText jp StdBattleTextBox + ; 36d1d @@ -7440,7 +7608,7 @@ BattleCommand_ConfuseTarget: ; 36d1d call GetBattleVarAddr bit SUBSTATUS_CONFUSED, [hl] ret nz - jr Function36d70 + jr BattleCommand_FinishConfusingTarget BattleCommand_Confuse: ; 36d3b @@ -7449,7 +7617,7 @@ BattleCommand_Confuse: ; 36d3b call GetOpponentItem ld a, b cp HELD_PREVENT_CONFUSE - jr nz, .asm_36d53 + jr nz, .no_item_protection ld a, [hl] ld [wNamedObjectIndexBuffer], a call GetItemName @@ -7457,34 +7625,29 @@ BattleCommand_Confuse: ; 36d3b ld hl, ProtectedByText jp StdBattleTextBox -.asm_36d53 +.no_item_protection ld a, BATTLE_VARS_SUBSTATUS3_OPP call GetBattleVarAddr bit SUBSTATUS_CONFUSED, [hl] - jr z, .asm_36d65 + jr z, .not_already_confused call AnimateFailedMove ld hl, AlreadyConfusedText jp StdBattleTextBox -.asm_36d65 +.not_already_confused call CheckSubstituteOpp - jr nz, Function36db6 + jr nz, BattleCommand_Confuse_CheckSnore_Swagger_ConfuseHit ld a, [AttackMissed] and a - jr nz, Function36db6 - - ; fallthrough -; 36d70 - - -Function36d70: ; 36d70 + jr nz, BattleCommand_Confuse_CheckSnore_Swagger_ConfuseHit +BattleCommand_FinishConfusingTarget: ; 36d70 ld bc, EnemyConfuseCount ld a, [hBattleTurn] and a - jr z, .asm_36d7b + jr z, .got_confuse_count ld bc, PlayerConfuseCount -.asm_36d7b +.got_confuse_count set SUBSTATUS_CONFUSED, [hl] call BattleRandom and 3 @@ -7519,9 +7682,10 @@ endr .heal_confusion ld hl, UseConfusionHealingItem jp CallBattleCore + ; 36db6 -Function36db6: ; 36db6 +BattleCommand_Confuse_CheckSnore_Swagger_ConfuseHit: ; 36db6 ld a, BATTLE_VARS_MOVE_EFFECT call GetBattleVar cp EFFECT_CONFUSE_HIT @@ -7531,6 +7695,7 @@ Function36db6: ; 36db6 cp EFFECT_SWAGGER ret z jp PrintDidntAffect2 + ; 36dc7 @@ -7540,14 +7705,14 @@ BattleCommand_Paralyze: ; 36dc7 ld a, BATTLE_VARS_STATUS_OPP call GetBattleVar bit PAR, a - jr nz, .asm_36e49 + jr nz, .paralyzed ld a, [TypeModifier] and $7f - jr z, .asm_36e55 + jr z, .didnt_affect call GetOpponentItem ld a, b cp HELD_PREVENT_PARALYZE - jr nz, .asm_36def + jr nz, .no_item_protection ld a, [hl] ld [wNamedObjectIndexBuffer], a call GetItemName @@ -7555,37 +7720,37 @@ BattleCommand_Paralyze: ; 36dc7 ld hl, ProtectedByText jp StdBattleTextBox -.asm_36def +.no_item_protection ld a, [hBattleTurn] and a - jr z, .asm_36e0e + jr z, .dont_sample_failure ld a, [wLinkMode] and a - jr nz, .asm_36e0e + jr nz, .dont_sample_failure ld a, [InBattleTowerBattle] and a - jr nz, .asm_36e0e + jr nz, .dont_sample_failure ld a, [PlayerSubStatus5] bit SUBSTATUS_LOCK_ON, a - jr nz, .asm_36e0e + jr nz, .dont_sample_failure call BattleRandom - cp $40 - jr c, .asm_36e52 + cp 1 + 25 percent + jr c, .failed -.asm_36e0e +.dont_sample_failure ld a, BATTLE_VARS_STATUS_OPP call GetBattleVarAddr and a - jr nz, .asm_36e52 + jr nz, .failed ld a, [AttackMissed] and a - jr nz, .asm_36e52 + jr nz, .failed call CheckSubstituteOpp - jr nz, .asm_36e52 + jr nz, .failed ld c, 30 call DelayFrames call AnimateCurrentMove @@ -7601,15 +7766,19 @@ BattleCommand_Paralyze: ; 36dc7 call PrintParalyze ld hl, UseHeldStatusHealingItem jp CallBattleCore -.asm_36e49 + +.paralyzed call AnimateFailedMove ld hl, AlreadyParalyzedText jp StdBattleTextBox -.asm_36e52 + +.failed jp PrintDidntAffect2 -.asm_36e55 + +.didnt_affect call AnimateFailedMove jp PrintDoesntAffect + ; 36e5b @@ -7647,6 +7816,7 @@ CheckMoveTypeMatchesTarget: ; 36e5b and a pop hl ret + ; 36e7c @@ -7739,6 +7909,7 @@ endr ld hl, TooWeakSubText .jp_stdbattletextbox jp StdBattleTextBox + ; 36f0b BattleCommand_RechargeNextTurn: ; 36f0b @@ -7747,6 +7918,7 @@ BattleCommand_RechargeNextTurn: ; 36f0b call GetBattleVarAddr set SUBSTATUS_RECHARGE, [hl] ret + ; 36f13 @@ -7757,6 +7929,7 @@ EndRechargeOpp: ; 36f13 res SUBSTATUS_RECHARGE, [hl] pop hl ret + ; 36f1d @@ -7766,6 +7939,7 @@ BattleCommand_Rage: ; 36f1d call GetBattleVarAddr set SUBSTATUS_RAGE, [hl] ret + ; 36f25 @@ -7776,6 +7950,7 @@ BattleCommand_DoubleFlyingDamage: ; 36f25 bit SUBSTATUS_FLYING, a ret z jr DoubleDamage + ; 36f2f @@ -7802,6 +7977,7 @@ DoubleDamage: ; 36f37 ld [hl], a .quit ret + ; 36f46 @@ -7855,6 +8031,7 @@ BattleCommand_Mimic: ; 36f46 .fail jp FailMimic + ; 36f9d @@ -7898,6 +8075,7 @@ BattleCommand_LeechSeed: ; 36f9d call AnimateFailedMove ld hl, EvadedText jp StdBattleTextBox + ; 36fe1 @@ -7905,6 +8083,7 @@ BattleCommand_Splash: ; 36fe1 call AnimateCurrentMove callba MobileFn_1060e5 jp PrintNothingHappened + ; 36fed @@ -7913,51 +8092,51 @@ BattleCommand_Disable: ; 36fed ld a, [AttackMissed] and a - jr nz, .asm_37059 + jr nz, .failed ld de, EnemyDisableCount ld hl, EnemyMonMoves ld a, [hBattleTurn] and a - jr z, .asm_37004 + jr z, .got_moves ld de, PlayerDisableCount ld hl, BattleMonMoves -.asm_37004 +.got_moves ld a, [de] and a - jr nz, .asm_37059 + jr nz, .failed ld a, BATTLE_VARS_LAST_COUNTER_MOVE_OPP call GetBattleVar and a - jr z, .asm_37059 + jr z, .failed cp STRUGGLE - jr z, .asm_37059 + jr z, .failed ld b, a ld c, $ff -.asm_37017 +.loop inc c ld a, [hli] cp b - jr nz, .asm_37017 + jr nz, .loop ld a, [hBattleTurn] and a ld hl, EnemyMonPP - jr z, .asm_37027 + jr z, .got_pp ld hl, BattleMonPP -.asm_37027 +.got_pp ld b, 0 add hl, bc ld a, [hl] and a - jr z, .asm_37059 -.asm_3702e + jr z, .failed +.loop2 call BattleRandom and 7 - jr z, .asm_3702e + jr z, .loop2 inc a inc c swap c @@ -7967,9 +8146,9 @@ BattleCommand_Disable: ; 36fed ld hl, DisabledMove ld a, [hBattleTurn] and a - jr nz, .asm_37047 + jr nz, .got_disabled_move_pointer inc hl -.asm_37047 +.got_disabled_move_pointer ld a, BATTLE_VARS_LAST_COUNTER_MOVE_OPP call GetBattleVar ld [hl], a @@ -7977,8 +8156,10 @@ BattleCommand_Disable: ; 36fed call GetMoveName ld hl, WasDisabledText jp StdBattleTextBox -.asm_37059 + +.failed jp FailDisable + ; 3705c @@ -8008,6 +8189,7 @@ BattleCommand_PayDay: ; 3705c .done ld hl, CoinsScatteredText jp StdBattleTextBox + ; 3707f @@ -8018,21 +8200,21 @@ BattleCommand_Conversion: ; 3707f ld de, BattleMonType1 ld a, [hBattleTurn] and a - jr z, .asm_37090 + jr z, .got_moves ld hl, EnemyMonMoves ld de, EnemyMonType1 -.asm_37090 +.got_moves push de ld c, 0 ld de, StringBuffer1 -.asm_37096 +.loop push hl ld b, 0 add hl, bc ld a, [hl] pop hl and a - jr z, .asm_370b2 + jr z, .okay push hl push bc dec a @@ -8045,8 +8227,8 @@ BattleCommand_Conversion: ; 3707f inc c ld a, c cp NUM_MOVES - jr c, .asm_37096 -.asm_370b2 + jr c, .loop +.okay ld a, $ff ld [de], a inc de @@ -8055,28 +8237,30 @@ BattleCommand_Conversion: ; 3707f ld [de], a pop de ld hl, StringBuffer1 -.asm_370bd +.loop2 ld a, [hl] - cp $ff - jr z, .asm_370d3 + cp -1 + jr z, .fail cp CURSE_T - jr z, .asm_370d0 + jr z, .next ld a, [de] cp [hl] - jr z, .asm_370d0 + jr z, .next inc de ld a, [de] dec de cp [hl] - jr nz, .asm_370d9_a -.asm_370d0 + jr nz, .done +.next inc hl - jr .asm_370bd -.asm_370d3 + jr .loop2 + +.fail call AnimateFailedMove jp PrintButItFailed -.asm_370d9_a -.asm_370d9_b + +.done +.loop3 call BattleRandom and 3 ; TODO factor in NUM_MOVES ld c, a @@ -8084,18 +8268,18 @@ BattleCommand_Conversion: ; 3707f ld hl, StringBuffer1 add hl, bc ld a, [hl] - cp $ff - jr z, .asm_370d9_b + cp -1 + jr z, .loop3 cp CURSE_T - jr z, .asm_370d9_b + jr z, .loop3 ld a, [de] cp [hl] - jr z, .asm_370d9_b + jr z, .loop3 inc de ld a, [de] dec de cp [hl] - jr z, .asm_370d9_b + jr z, .loop3 ld a, [hl] ld [de], a inc de @@ -8105,6 +8289,7 @@ BattleCommand_Conversion: ; 3707f call AnimateCurrentMove ld hl, TransformedTypeText jp StdBattleTextBox + ; 3710e @@ -8140,6 +8325,7 @@ BattleCommand_ResetStats: ; 3710e dec b jr nz, .next ret + ; 3713e @@ -8150,10 +8336,10 @@ BattleCommand_Heal: ; 3713e ld hl, BattleMonMaxHP ld a, [hBattleTurn] and a - jr z, .asm_3714f + jr z, .got_hp ld de, EnemyMonHP ld hl, EnemyMonMaxHP -.asm_3714f +.got_hp ld a, BATTLE_VARS_MOVE_ANIM call GetBattleVar ld b, a @@ -8165,10 +8351,11 @@ BattleCommand_Heal: ; 3713e pop bc pop de pop hl - jp z, .asm_371c4 + jp z, .hp_full ld a, b cp REST - jr nz, .asm_37199 + jr nz, .not_rest + push hl push de push af @@ -8182,30 +8369,33 @@ BattleCommand_Heal: ; 3713e and a ld [hl], REST_TURNS + 1 ld hl, WentToSleepText - jr z, .asm_37186 + jr z, .no_status_to_heal ld hl, RestedText -.asm_37186 +.no_status_to_heal call StdBattleTextBox ld a, [hBattleTurn] and a - jr nz, .asm_37193 + jr nz, .calc_enemy_stats call CalcPlayerStats - jr .asm_37196 -.asm_37193 + jr .got_stats + +.calc_enemy_stats call CalcEnemyStats -.asm_37196 +.got_stats pop af pop de pop hl -.asm_37199 - jr z, .asm_371a3 + +.not_rest + jr z, .restore_full_hp ld hl, GetHalfMaxHP call CallBattleCore - jr .asm_371a9 -.asm_371a3 + jr .finish + +.restore_full_hp ld hl, GetMaxHP call CallBattleCore -.asm_371a9 +.finish call AnimateCurrentMove call BattleCommand_SwitchTurn ld hl, RestoreHP @@ -8216,10 +8406,11 @@ BattleCommand_Heal: ; 3713e ld hl, RegainedHealthText jp StdBattleTextBox -.asm_371c4 +.hp_full call AnimateFailedMove ld hl, HPIsFullText jp StdBattleTextBox + ; 371cd @@ -8230,9 +8421,9 @@ BattleCommand_Transform: ; 371cd ld a, BATTLE_VARS_SUBSTATUS5_OPP call GetBattleVarAddr bit SUBSTATUS_TRANSFORMED, [hl] - jp nz, Function372d2 + jp nz, BattleEffect_ButItFailed call CheckHiddenOpponent - jp nz, Function372d2 + jp nz, BattleEffect_ButItFailed xor a ld [wNumHits], a ld [FXAnimIDHi], a @@ -8347,6 +8538,7 @@ endr jr nz, .mimic_anims call LoadMoveAnim jr .after_anim + .mimic_anims call BattleCommand_MoveDelay call BattleCommand_RaiseSubNoAnim @@ -8361,6 +8553,7 @@ endr call nz, LoadAnim ld hl, TransformedText jp StdBattleTextBox + ; 372c6 @@ -8378,12 +8571,14 @@ BattleSideCopy: ; 372c6 pop de .copy jp CopyBytes + ; 372d2 -Function372d2: ; 372d2 +BattleEffect_ButItFailed: ; 372d2 call AnimateFailedMove jp PrintButItFailed + ; 372d8 @@ -8398,6 +8593,7 @@ ClearLastMove: ; 372d8 xor a ld [hl], a ret + ; 372e7 @@ -8416,6 +8612,7 @@ ResetActorDisable: ; 372e7 ld [PlayerDisableCount], a ld [DisabledMove], a ret + ; 372fc @@ -8426,11 +8623,11 @@ BattleCommand_Screen: ; 372fc ld bc, PlayerLightScreenCount ld a, [hBattleTurn] and a - jr z, .asm_3730d + jr z, .got_screens_pointer ld hl, EnemyScreens ld bc, EnemyLightScreenCount -.asm_3730d +.got_screens_pointer ld a, BATTLE_VARS_MOVE_EFFECT call GetBattleVar cp EFFECT_LIGHT_SCREEN @@ -8442,7 +8639,7 @@ BattleCommand_Screen: ; 372fc ld a, 5 ld [bc], a ld hl, LightScreenEffectText - jr .asm_37331 + jr .good .Reflect bit SCREENS_REFLECT, [hl] @@ -8456,13 +8653,14 @@ BattleCommand_Screen: ; 372fc ld [bc], a ld hl, ReflectEffectText -.asm_37331 +.good call AnimateCurrentMove jp StdBattleTextBox .failed call AnimateFailedMove jp PrintButItFailed + ; 3733d @@ -8470,6 +8668,7 @@ PrintDoesntAffect: ; 3733d ; 'it doesn't affect' ld hl, DoesntAffectText jp StdBattleTextBox + ; 37343 @@ -8477,6 +8676,7 @@ PrintNothingHappened: ; 37343 ; 'but nothing happened!' ld hl, NothingHappenedText jp StdBattleTextBox + ; 37349 @@ -8493,6 +8693,7 @@ PrintButItFailed: ; 3734e ; 'but it failed!' ld hl, ButItFailedText jp StdBattleTextBox + ; 37354 @@ -8510,6 +8711,7 @@ FailMimic: ; 37357 ld hl, ButItFailedText ; 'but it failed!' ld de, ItFailedText ; 'it failed!' jp FailText_CheckOpponentProtect + ; 37360 @@ -8517,6 +8719,7 @@ PrintDidntAffect: ; 37360 ; 'it didn't affect' ld hl, DidntAffect1Text jp StdBattleTextBox + ; 37366 @@ -8525,6 +8728,7 @@ PrintDidntAffect2: ; 37366 ld hl, DidntAffect1Text ; 'it didn't affect' ld de, DidntAffect2Text ; 'it didn't affect' jp FailText_CheckOpponentProtect + ; 37372 @@ -8532,6 +8736,7 @@ PrintParalyze: ; 37372 ; 'paralyzed! maybe it can't attack!' ld hl, ParalyzedText jp StdBattleTextBox + ; 37378 @@ -8540,6 +8745,7 @@ CheckSubstituteOpp: ; 37378 call GetBattleVar bit SUBSTATUS_SUBSTITUTE, a ret + ; 37380 @@ -8572,6 +8778,7 @@ BattleCommand_SelfDestruct: ; 37380 callba DrawEnemyHUD call WaitBGMap jp RefreshBattleHuds + ; 373c9 @@ -8603,6 +8810,7 @@ CheckUserMove: ; 37462 ld a, 1 and a ret + ; 3747b @@ -8619,6 +8827,7 @@ ResetTurn: ; 3747b ld [AlreadyDisobeyed], a call DoMove jp EndMoveEffect + ; 37492 @@ -8650,6 +8859,7 @@ BattleCommand_ArenaTrap: ; 37517 .failed call AnimateFailedMove jp PrintButItFailed + ; 37536 @@ -8686,6 +8896,7 @@ BattleCommand_Defrost: ; 37563 call RefreshBattleHuds ld hl, WasDefrostedText jp StdBattleTextBox + ; 37588 @@ -8709,6 +8920,7 @@ INCLUDE "battle/effects/rollout.asm" BattleCommand5d: ; 37791 ; unused ret + ; 37792 @@ -8751,6 +8963,7 @@ BattleCommand_FuryCutter: ; 37792 ld [hli], a ld [hl], a ret + ; 377be @@ -8770,6 +8983,7 @@ ResetFuryCutterCount: ; 377be pop hl ret + ; 377ce @@ -8800,6 +9014,7 @@ BattleCommand_HappinessPower: ; 3784b ld d, a pop bc ret + ; 37874 @@ -8812,9 +9027,9 @@ BattleCommand_FrustrationPower: ; 3790e ld hl, BattleMonHappiness ld a, [hBattleTurn] and a - jr z, .asm_3791a ; 37915 $3 + jr z, .got_happiness ld hl, EnemyMonHappiness -.asm_3791a +.got_happiness ld a, $ff sub [hl] ld [hMultiplicand + 2], a @@ -8832,6 +9047,7 @@ BattleCommand_FrustrationPower: ; 3790e ld d, a pop bc ret + ; 37939 @@ -8854,9 +9070,11 @@ BattleCommand_Safeguard: ; 37939 call AnimateCurrentMove ld hl, CoveredByVeilText jp StdBattleTextBox + .failed call AnimateFailedMove jp PrintButItFailed + ; 37962 @@ -8872,6 +9090,7 @@ SafeCheckSafeguard: ; 37962 bit SCREENS_SAFEGUARD, [hl] pop hl ret + ; 37972 @@ -8880,7 +9099,7 @@ BattleCommand_CheckSafeguard: ; 37972 ld hl, EnemyScreens ld a, [hBattleTurn] and a - jr z, .got_turn ; 37978 $3 + jr z, .got_turn ld hl, PlayerScreens .got_turn bit SCREENS_SAFEGUARD, [hl] @@ -8891,6 +9110,7 @@ BattleCommand_CheckSafeguard: ; 37972 ld hl, SafeguardProtectText call StdBattleTextBox jp EndMoveEffect + ; 37991 @@ -8909,6 +9129,7 @@ rept 2 inc hl endr jr .loop + .ok ld d, [hl] push de @@ -8954,7 +9175,7 @@ BattleCommand_BatonPass: ; 379c9 ; Transition into switchmon menu call LoadStandardMenuDataHeader - callba Function3d2f7 + callba SetUpBattlePartyMenu_NoLoop callba ForcePickSwitchMonInBattle @@ -9016,6 +9237,7 @@ BattleCommand_BatonPass: ; 379c9 call CallBattleCore jr ResetBatonPassStatus + ; 37a67 @@ -9035,6 +9257,7 @@ BatonPass_LinkPlayerSwitch: ; 37a67 xor a ld [wPlayerAction], a ret + ; 37a82 @@ -9062,12 +9285,14 @@ BatonPass_LinkEnemySwitch: ; 37a82 ld [wBattleAction], a .switch jp CloseWindow + ; 37aab FailedBatonPass: ; 37aab call AnimateFailedMove jp PrintButItFailed + ; 37ab1 @@ -9109,6 +9334,7 @@ ResetBatonPassStatus: ; 37ab1 ld [wPlayerWrapCount], a ld [wEnemyWrapCount], a ret + ; 37ae9 @@ -9119,6 +9345,7 @@ CheckAnyOtherAlivePartyMons: ; 37ae9 ld a, [CurBattleMon] ld e, a jr CheckAnyOtherAliveMons + ; 37af6 @@ -9167,6 +9394,7 @@ CheckAnyOtherAliveMons: ; 37b01 ld a, b and a ret + ; 37b1d @@ -9194,6 +9422,7 @@ BattleCommand_Pursuit: ; 37b1d ld [hli], a ld [hl], a ret + ; 37b39 @@ -9203,28 +9432,28 @@ BattleCommand_ClearHazards: ; 37b39 ld a, BATTLE_VARS_SUBSTATUS4 call GetBattleVarAddr bit SUBSTATUS_LEECH_SEED, [hl] - jr z, .asm_37b4a ; 37b40 $8 + jr z, .not_leeched res SUBSTATUS_LEECH_SEED, [hl] ld hl, ShedLeechSeedText call StdBattleTextBox -.asm_37b4a +.not_leeched ld hl, PlayerScreens ld de, wPlayerWrapCount ld a, [hBattleTurn] and a - jr z, .asm_37b5b ; 37b53 $6 + jr z, .got_screens_wrap ld hl, EnemyScreens ld de, wEnemyWrapCount -.asm_37b5b +.got_screens_wrap bit SCREENS_SPIKES, [hl] - jr z, .asm_37b69 ; 37b5d $a + jr z, .no_spikes res SCREENS_SPIKES, [hl] ld hl, BlewSpikesText push de call StdBattleTextBox pop de -.asm_37b69 +.no_spikes ld a, [de] and a @@ -9233,6 +9462,7 @@ BattleCommand_ClearHazards: ; 37b39 ld [de], a ld hl, ReleasedByText jp StdBattleTextBox + ; 37b74 @@ -9240,12 +9470,14 @@ BattleCommand_HealMorn: ; 37b74 ; healmorn ld b, MORN jr BattleCommand_TimeBasedHealContinue + ; 37b78 BattleCommand_HealDay: ; 37b78 ; healday ld b, DAY jr BattleCommand_TimeBasedHealContinue + ; 37b7c BattleCommand_HealNite: ; 37b7c @@ -9348,6 +9580,7 @@ BattleCommand_HiddenPower: ; 37be8 ret nz callba HiddenPowerDamage ret + ; 37bf4 @@ -9360,6 +9593,7 @@ BattleCommand_StartRain: ; 37bf4 call AnimateCurrentMove ld hl, DownpourText jp StdBattleTextBox + ; 37c07 @@ -9372,6 +9606,7 @@ BattleCommand_StartSun: ; 37c07 call AnimateCurrentMove ld hl, SunGotBrightText jp StdBattleTextBox + ; 37c1a @@ -9409,6 +9644,7 @@ BattleCommand_BellyDrum: ; 37c1a .failed call AnimateFailedMove jp PrintButItFailed + ; 37c55 @@ -9419,7 +9655,7 @@ BattleCommand_PsychUp: ; 37c55 ld de, PlayerStatLevels ld a, [hBattleTurn] and a - jr z, .pointers_correct ; 37c5e $4 + jr z, .pointers_correct ; It's the enemy's turn, so swap the pointers. push hl ld h, d @@ -9433,9 +9669,9 @@ BattleCommand_PsychUp: ; 37c55 .loop ld a, [hli] cp BASE_STAT_LEVEL - jr nz, .break ; 37c6a $a + jr nz, .break dec b - jr nz, .loop ; 37c6d $f8 + jr nz, .loop pop hl call AnimateFailedMove jp PrintButItFailed @@ -9448,12 +9684,12 @@ BattleCommand_PsychUp: ; 37c55 ld [de], a inc de dec b - jr nz, .loop2 ; 37c7d $fa + jr nz, .loop2 ld a, [hBattleTurn] and a - jr nz, .calc_enemy_stats ; 37c82 $5 + jr nz, .calc_enemy_stats call CalcPlayerStats - jr .merge ; 37c87 $3 + jr .merge .calc_enemy_stats call CalcEnemyStats @@ -9461,6 +9697,7 @@ BattleCommand_PsychUp: ; 37c55 call AnimateCurrentMove ld hl, CopiedStatsText jp StdBattleTextBox + ; 37c95 @@ -9523,6 +9760,7 @@ BattleCommand_MirrorCoat: ; 37c95 xor a ld [AttackMissed], a ret + ; 37ce6 @@ -9547,6 +9785,7 @@ BattleCommand_DoubleMinimizeDamage: ; 37ce6 ld [hli], a ld [hl], a ret + ; 37d02 @@ -9557,6 +9796,7 @@ BattleCommand_SkipSunCharge: ; 37d02 ret nz ld b, charge_command jp SkipToBattleCommand + ; 37d0d @@ -9564,12 +9804,12 @@ BattleCommand_CheckFutureSight: ; 37d0d ; checkfuturesight ld hl, wPlayerFutureSightCount - ld de, wc727 + ld de, wPlayerFutureSightDamage ld a, [hBattleTurn] and a jr z, .ok ld hl, wEnemyFutureSightCount - ld de, wc729 + ld de, wEnemyFutureSightDamage .ok ld a, [hl] @@ -9586,13 +9826,14 @@ BattleCommand_CheckFutureSight: ; 37d0d ld [CurDamage + 1], a ld b, futuresight_command jp SkipToBattleCommand + ; 37d34 BattleCommand_FutureSight: ; 37d34 ; futuresight call CheckUserIsCharging - jr nz, .asm_37d4b ; 37d37 $12 + jr nz, .AlreadyChargingFutureSight ld a, BATTLE_VARS_MOVE_ANIM call GetBattleVar ld b, a @@ -9602,29 +9843,29 @@ BattleCommand_FutureSight: ; 37d34 ld a, BATTLE_VARS_LAST_MOVE call GetBattleVarAddr ld [hl], b -.asm_37d4b +.AlreadyChargingFutureSight ld hl, wPlayerFutureSightCount ld a, [hBattleTurn] and a - jr z, .asm_37d56 ; 37d51 $3 + jr z, .GotFutureSightCount ld hl, wEnemyFutureSightCount -.asm_37d56 +.GotFutureSightCount ld a, [hl] and a - jr nz, .asm_37d87 ; 37d58 $2d - ld a, $4 + jr nz, .failed + ld a, 4 ld [hl], a call BattleCommand_LowerSub call BattleCommand_MoveDelay ld hl, ForesawAttackText call StdBattleTextBox call BattleCommand_RaiseSub - ld de, wc727 + ld de, wPlayerFutureSightDamage ld a, [hBattleTurn] and a - jr z, .asm_37d77 ; 37d72 $3 - ld de, wc729 -.asm_37d77 + jr z, .StoreDamage + ld de, wEnemyFutureSightDamage +.StoreDamage ld hl, CurDamage ld a, [hl] ld [de], a @@ -9635,12 +9876,14 @@ BattleCommand_FutureSight: ; 37d34 ld [de], a ld [hl], 0 jp EndMoveEffect -.asm_37d87 + +.failed pop bc call ResetDamage call AnimateFailedMove call PrintButItFailed jp EndMoveEffect + ; 37d94 @@ -9657,9 +9900,11 @@ BattleCommand_ThunderAccuracy: ; 37d94 ret nz ld [hl], 50 percent + 1 ret + .rain ld [hl], 100 percent ret + ; 37daa @@ -9668,6 +9913,7 @@ CheckHiddenOpponent: ; 37daa call GetBattleVar and 1 << SUBSTATUS_FLYING | 1 << SUBSTATUS_UNDERGROUND ret + ; 37db2 @@ -9681,6 +9927,7 @@ GetUserItem: ; 37db2 .go ld b, [hl] jp GetItemHeldEffect + ; 37dc1 @@ -9694,6 +9941,7 @@ GetOpponentItem: ; 37dc1 .go ld b, [hl] jp GetItemHeldEffect + ; 37dd0 @@ -9716,6 +9964,7 @@ GetItemHeldEffect: ; 37dd0 ld c, h pop hl ret + ; 37de9 @@ -9734,6 +9983,7 @@ AnimateCurrentMoveEitherSide: ; 37de9 pop de pop hl ret + ; 37e01 @@ -9752,6 +10002,7 @@ AnimateCurrentMove: ; 37e01 pop de pop hl ret + ; 37e19 @@ -9776,6 +10027,7 @@ PlayDamageAnim: ; 37e19 ld [wNumHits], a jp PlayUserBattleAnim + ; 37e36 @@ -9810,6 +10062,7 @@ PlayUserBattleAnim: ; 37e47 pop de pop hl ret + ; 37e54 @@ -9833,6 +10086,7 @@ PlayOpponentBattleAnim: ; 37e54 pop de pop hl ret + ; 37e73 @@ -9840,6 +10094,7 @@ CallBattleCore: ; 37e73 ld a, BANK(BattleCore) rst FarCall ret + ; 37e77 @@ -9847,6 +10102,7 @@ AnimateFailedMove: ; 37e77 call BattleCommand_LowerSub call BattleCommand_MoveDelay jp BattleCommand_RaiseSub + ; 37e80 @@ -9855,6 +10111,7 @@ BattleCommand_MoveDelay: ; 37e80 ; Wait 40 frames. ld c, 40 jp DelayFrames + ; 37e85 @@ -9864,6 +10121,7 @@ BattleCommand_ClearText: ; 37e85 ; Used in multi-hit moves. ld hl, .text jp BattleTextBox + .text db "@" ; 37e8c @@ -9885,6 +10143,7 @@ SkipToBattleCommand: ; 37e8c ld a, l ld [BattleScriptBufferLoc], a ret + ; 37ea1 @@ -9896,6 +10155,7 @@ GetMoveAttr: ; 37ea1 call GetMoveByte pop bc ret + ; 37ead @@ -9906,30 +10166,35 @@ GetMoveData: ; 37ead call AddNTimes ld a, Bank(Moves) jp FarCopyBytes + ; 37ebb GetMoveByte: ; 37ebb ld a, BANK(Moves) jp GetFarByte + ; 37ec0 DisappearUser: ; 37ec0 callba _DisappearUser ret + ; 37ec7 AppearUserLowerSub: ; 37ec7 callba _AppearUserLowerSub ret + ; 37ece AppearUserRaiseSub: ; 37ece callba _AppearUserRaiseSub ret + ; 37ed5 @@ -9943,4 +10208,5 @@ _CheckBattleScene: ; 37ed5 pop de pop hl ret + ; 37ee2 diff --git a/engine/anim_hp_bar.asm b/engine/anim_hp_bar.asm index 3075ef323..c00a97921 100755 --- a/engine/anim_hp_bar.asm +++ b/engine/anim_hp_bar.asm @@ -202,7 +202,7 @@ Functiond6f5: ; d6f5 Functiond730: ; d730 call Functiond784 ld d, $6 - ld a, [wd10a] + ld a, [wWhichHPBar] and $1 ld b, a ld a, [wd1f1] @@ -228,7 +228,7 @@ Functiond749: ; d749 call ComputeHPBarPixels ld c, e ld d, $6 - ld a, [wd10a] + ld a, [wWhichHPBar] and $1 ld b, a push de @@ -239,7 +239,7 @@ Functiond749: ; d749 ; d771 Functiond771: ; d771 - ld a, [wd10a] + ld a, [wWhichHPBar] cp $2 jr nz, .skip ld a, $28 @@ -254,7 +254,7 @@ Functiond771: ; d771 ; d784 Functiond784: ; d784 - ld a, [wd10a] + ld a, [wWhichHPBar] and a ret z cp $1 @@ -292,7 +292,7 @@ Functiond7b4: ; d7b4 call SetHPPal ld a, [wd1f0] ld c, a - callba Function8c43 + callba ApplyHPBarPals ret ; d7c9 @@ -305,7 +305,7 @@ Functiond7c9: ; d7c9 ret .cgb - ld a, [wd10a] + ld a, [wWhichHPBar] and a jr z, .load_0 cp $1 diff --git a/engine/color.asm b/engine/color.asm index 7f7cdd7ad..1571bbb36 100644 --- a/engine/color.asm +++ b/engine/color.asm @@ -324,21 +324,21 @@ Function8bec: ; 8bec ret ; 8c1d -Function8c1d: ; 8c1d +ApplyMonOrTrainerPals: ; 8c1d call CheckCGB ret z ld a, e and a - jr z, .asm_8c2d + jr z, .get_trainer ld a, [CurPartySpecies] call GetMonPalettePointer_ - jr .asm_8c33 + jr .load_palettes -.asm_8c2d +.get_trainer ld a, [TrainerClass] call GetTrainerPalettePointer -.asm_8c33 +.load_palettes ld de, UnknBGPals call LoadPalette_White_Col1_Col2_Black call WipeAttrMap @@ -347,24 +347,24 @@ Function8c1d: ; 8c1d ret ; 8c43 -Function8c43: ; 8c43 - ld a, [wd10a] +ApplyHPBarPals: ; 8c43 + ld a, [wWhichHPBar] and a - jr z, .asm_8c52 + jr z, .Enemy cp $1 - jr z, .asm_8c57 + jr z, .Player cp $2 - jr z, .asm_8c70 + jr z, .PartyMenu ret -.asm_8c52 +.Enemy ld de, BGPals + 2 palettes + 2 - jr .asm_8c5a + jr .okay -.asm_8c57 +.Player ld de, BGPals + 3 palettes + 2 -.asm_8c5a +.okay ld l, c ld h, $0 rept 2 @@ -372,27 +372,27 @@ rept 2 endr ld bc, Palettes_a8be add hl, bc - ld bc, $4 + ld bc, 4 ld a, $5 call FarCopyWRAM ld a, $1 ld [hCGBPalUpdate], a ret -.asm_8c70 +.PartyMenu ld e, c inc e hlcoord 11, 1, AttrMap - ld bc, $28 + ld bc, 2 * SCREEN_WIDTH ld a, [CurPartyMon] -.asm_8c7b +.loop and a - jr z, .asm_8c82 + jr z, .done add hl, bc dec a - jr .asm_8c7b + jr .loop -.asm_8c82 +.done lb bc, 2, 8 ld a, e call FillBoxCGB @@ -2088,7 +2088,7 @@ TilesetColors4: ; b289 db $18, $19, $1a, $1b, $1c, $1d, $1e, $1f ; b309 -Palette_b309: ; b309 +Palette_b309: ; b309 mobile RGB 31, 31, 31 RGB 31, 19, 24 RGB 30, 10, 06 @@ -2096,7 +2096,7 @@ Palette_b309: ; b309 ; b311 -Palette_b311: ; b311 +Palette_b311: ; b311 not mobile RGB 31, 31, 31 RGB 17, 19, 31 RGB 14, 16, 31 diff --git a/engine/events_2.asm b/engine/events_2.asm index e6f872a2f..eaabef9aa 100644 --- a/engine/events_2.asm +++ b/engine/events_2.asm @@ -144,7 +144,7 @@ RandomEncounter:: ; 97cc0 WildBattleScript: ; 97cf9 randomwildmon startbattle - returnafterbattle + reloadmapafterbattle end ; 97cfd diff --git a/engine/intro_menu.asm b/engine/intro_menu.asm index 187dc0347..9081c1461 100755 --- a/engine/intro_menu.asm +++ b/engine/intro_menu.asm @@ -68,7 +68,7 @@ OptionsMenu: ; 5b64 NewGame: ; 5b6b xor a - ld [wc2cc], a + ld [wMonStatusFlags], a call ResetWRAM call NewGame_ClearTileMapEtc call AreYouABoyOrAreYouAGirl @@ -86,7 +86,7 @@ NewGame: ; 5b6b ; 5b8f AreYouABoyOrAreYouAGirl: ; 5b8f - callba Function10632f ; some mobile stuff + callba Mobile_AlwaysReturnNotCarry ; some mobile stuff jr c, .ok callba InitGender ret @@ -211,9 +211,9 @@ ENDC ld [Money + 2], a xor a - ld [wdc17], a + ld [wWhichMomItem], a - ld hl, wdc19 + ld hl, MomItemTriggerBalance ld [hl], 2300 / $10000 inc hl ld [hl], 2300 / $100 % $100 @@ -385,7 +385,7 @@ Continue: ; 5d65 ld c, 20 call DelayFrames callba JumpRoamMons - callba Function105091 ; Mystery Gift + callba MysteryGift_CopyReceivedDecosToPC ; Mystery Gift callba Function140ae ; time-related ld a, [wSpawnAfterChampion] cp SPAWN_LANCE @@ -399,14 +399,14 @@ Continue: ; 5d65 .SpawnAfterE4 ld a, SPAWN_NEW_BARK - ld [wd001], a + ld [DefaultSpawnpoint], a call PostCreditsSpawn jp FinishContinueFunction ; 5de2 SpawnAfterRed: ; 5de2 ld a, SPAWN_MT_SILVER - ld [wd001], a + ld [DefaultSpawnpoint], a ; 5de7 PostCreditsSpawn: ; 5de7 @@ -418,8 +418,11 @@ PostCreditsSpawn: ; 5de7 ; 5df0 Continue_MobileAdapterMenu: ; 5df0 - callba Function10632f ; mobile check + callba Mobile_AlwaysReturnNotCarry ; mobile check ret nc + +; the rest of this stuff is never reached because +; the previous function returns with carry not set ld hl, wd479 bit 1, [hl] ret nz @@ -480,7 +483,7 @@ Continue_CheckRTC_RestartClock: ; 5e48 FinishContinueFunction: ; 5e5d .loop xor a - ld [wc2c1], a + ld [wDontPlayMapMusicOnReload], a ld [wLinkMode], a ld hl, GameTimerPause set 0, [hl] @@ -641,7 +644,7 @@ Continue_DisplayBadgeCount: ; 5f58 Continue_DisplayPokedexNumCaught: ; 5f6b ld a, [StatusFlags] - bit 0, a + bit 0, a ; Pokedex ret z push hl ld hl, PokedexCaught @@ -787,7 +790,7 @@ NamePlayer: ; 0x6074 dec a jr z, .NewName call StorePlayerName - callba Function8c1d + callba ApplyMonOrTrainerPals callba MovePlayerPicLeft ret @@ -1024,7 +1027,7 @@ StartTitleScreen: ; 6219 call .TitleScreen call DelayFrame .loop - call Function627b + call RunTitleScreen jr nc, .loop call ClearSprites @@ -1079,7 +1082,7 @@ endr ret ; 627b -Function627b: ; 627b +RunTitleScreen: ; 627b ld a, [wJumptableIndex] bit 7, a jr nz, .done_title @@ -1126,7 +1129,7 @@ endr dw TitleScreenEnd ; 62b7 -Function62b7: ; Unreferenced +.NextScene ; Unreferenced ld hl, wJumptableIndex inc [hl] ret @@ -1152,7 +1155,7 @@ TitleScreenEntrance: ; 62bc ; Reversed signage for every other line's position. ; This is responsible for the interlaced effect. ld a, e - xor -1 + xor $ff inc a ld b, 8 * 10 / 2 ; logo height / 2 @@ -1191,7 +1194,7 @@ TitleScreenTimer: ; 62f6 ; Start a timer ld hl, wcf65 - ld de, $1140 ; 73.6 seconds + ld de, 73 * 60 + 36 ld [hl], e inc hl ld [hl], d @@ -1225,7 +1228,7 @@ TitleScreenMain: ; 6304 ; To bring up the clock reset dialog: ; Hold Down + B + Select to initiate the sequence. - ld a, [$ffeb] + ld a, [hClockResetTrigger] cp $34 jr z, .check_clock_reset @@ -1235,17 +1238,17 @@ TitleScreenMain: ; 6304 jr nz, .check_start ld a, $34 - ld [$ffeb], a + ld [hClockResetTrigger], a jr .check_start ; Keep Select pressed, and hold Left + Up. ; Then let go of Select. .check_clock_reset - bit 2, [hl] ; SELECT + bit SELECT_F, [hl] jr nz, .check_start xor a - ld [$ffeb], a + ld [hClockResetTrigger], a ld a, [hl] and D_LEFT + D_UP @@ -1368,12 +1371,12 @@ endr Data63ca: ; 63ca ; frame 0 y, x; frame 1 y, x - db $5c, $50, $00, $00 - db $5c, $68, $5c, $58 - db $5c, $68, $5c, $78 - db $5c, $88, $5c, $78 - db $00, $00, $5c, $78 - db $00, $00, $5c, $58 + db 11 * 8 + 4, 10 * 8, 0 * 8, 0 * 8 + db 11 * 8 + 4, 13 * 8, 11 * 8 + 4, 11 * 8 + db 11 * 8 + 4, 13 * 8, 11 * 8 + 4, 15 * 8 + db 11 * 8 + 4, 17 * 8, 11 * 8 + 4, 15 * 8 + db 0 * 8, 0 * 8, 11 * 8 + 4, 15 * 8 + db 0 * 8, 0 * 8, 11 * 8 + 4, 11 * 8 ; 63e2 Copyright: ; 63e2 @@ -1390,20 +1393,16 @@ Copyright: ; 63e2 CopyrightString: ; 63fd ; ©1995-2001 Nintendo - db $60, $61, $62, $63, $64, $65, $66 - db $67, $68, $69, $6a, $6b, $6c - - db $4e + db $60, $61, $62, $63, $64, $65, $66 + db $67, $68, $69, $6a, $6b, $6c ; ©1995-2001 Creatures inc. - db $60, $61, $62, $63, $64, $65, $66, $6d - db $6e, $6f, $70, $71, $72, $7a, $7b, $7c - - db $4e + next $60, $61, $62, $63, $64, $65, $66 + db $6d, $6e, $6f, $70, $71, $72, $7a, $7b, $7c ; ©1995-2001 GAME FREAK inc. - db $60, $61, $62, $63, $64, $65, $66, $73, $74 - db $75, $76, $77, $78, $79, $7a, $7b, $7c + next $60, $61, $62, $63, $64, $65, $66 + db $73, $74, $75, $76, $77, $78, $79, $7a, $7b, $7c db "@" ; 642e diff --git a/engine/move_mon.asm b/engine/move_mon.asm index de35f664e..43fe9dbb3 100755 --- a/engine/move_mon.asm +++ b/engine/move_mon.asm @@ -16,7 +16,7 @@ TryAddMonToParty: ; d88c ; Increase the party count ld [de], a ld a, [de] ; Why are we doing this? - ld [$ffae], a ; HRAM backup + ld [hMoveMon], a ; HRAM backup add e ld e, a jr nc, .loadspecies @@ -39,7 +39,7 @@ TryAddMonToParty: ; d88c ld hl, OTPartyMonOT .loadOTname - ld a, [$ffae] ; Restore index from backup + ld a, [hMoveMon] ; Restore index from backup dec a call SkipNames ld d, h @@ -54,7 +54,7 @@ TryAddMonToParty: ; d88c ld [wd265], a call GetPokemonName ld hl, PartyMonNicknames - ld a, [$ffae] + ld a, [hMoveMon] dec a call SkipNames ld d, h @@ -71,7 +71,7 @@ TryAddMonToParty: ; d88c ld hl, OTPartyMon1Species .initializeStats - ld a, [$ffae] + ld a, [hMoveMon] dec a ld bc, PARTYMON_STRUCT_LENGTH call AddNTimes @@ -1168,7 +1168,7 @@ GiveEgg:: ; df8c ld hl, PartyMon1Happiness ld bc, PARTYMON_STRUCT_LENGTH call AddNTimes - ld a, [wc2cc] + ld a, [wMonStatusFlags] bit 1, a ld a, 1 jr nz, .got_init_happiness diff --git a/engine/mysterygift.asm b/engine/mysterygift.asm index 987c6ac2a..68c13ea2f 100755 --- a/engine/mysterygift.asm +++ b/engine/mysterygift.asm @@ -51,7 +51,7 @@ DoMysteryGift: ; 1048ba (41:48ba) ld a, [wMysteryGiftPlayerBackupItem] and a jp nz, .GiftWaiting - ld a, [wc912] + ld a, [wMysteryGiftPartnerBackupItem] and a jp nz, .FriendNotReady ld a, [wc900] @@ -73,7 +73,7 @@ DoMysteryGift: ; 1048ba (41:48ba) ld c, a callba MysteryGiftGetDecoration push bc - call Function105069 + call MysteryGift_CheckAndSetDecorationAlreadyReceived pop bc jr nz, .item callab GetDecorationName_c @@ -680,24 +680,24 @@ Function104db7: ; 104db7 (41:4db7) Function104dc5: ; 104dc5 (41:4dc5) ld a, $c1 ld [$ff00+c], a -.asm_104dc8 +.wait dec d ret z xor a ld [rIF], a halt - jr .asm_104dc8 + jr .wait Function104dd1: ; 104dd1 (41:4dd1) ld a, $c0 ld [$ff00+c], a -.asm_104dd4 +.wait dec d ret z xor a ld [rIF], a halt - jr .asm_104dd4 + jr .wait Function104ddd: ; 104ddd (41:4ddd) ld d, $0 @@ -763,7 +763,7 @@ asm_104e3a: ; 104e3a (41:4e3a) Function104e46: ; 104e46 (41:4e46) ld a, $2 ld [hPrintNum9], a - ld c, $56 + ld c, rRP % $100 ld d, $0 ld e, d ld d, $3d @@ -800,14 +800,14 @@ Function104e8c: ; 104e8c (41:4e8c) Function104e93: ; 104e93 (41:4e93) xor a - ld [hDivisor], a - ld [hMathBuffer], a + ld [hPrintNum5], a + ld [hPrintNum6], a push hl push bc - ld c, $56 + ld c, rRP % $100 ld d, $3d call Function104dd1 - ld hl, hQuotient ; $ffb4 (aliases: hMultiplicand) + ld hl, hPrintNum2 ; $ffb4 (aliases: hMultiplicand) ld a, $5a ld [hli], a ld [hl], b @@ -817,26 +817,26 @@ Function104e93: ; 104e93 (41:4e93) pop bc pop hl call Function104ed6 - ld a, [hDivisor] - ld [hQuotient], a - ld a, [hMathBuffer] - ld [$ffb5], a + ld a, [hPrintNum5] + ld [hPrintNum2], a + ld a, [hPrintNum6] + ld [hPrintNum3], a push hl - ld hl, hQuotient ; $ffb4 (aliases: hMultiplicand) + ld hl, hPrintNum2 ; $ffb4 (aliases: hMultiplicand) ld b, $2 call Function104ed6 ld hl, hPrintNum10 ld b, $1 call Function104faf - ld a, [hQuotient] - ld [hDivisor], a - ld a, [$ffb5] - ld [hMathBuffer], a + ld a, [hPrintNum2] + ld [hPrintNum5], a + ld a, [hPrintNum3] + ld [hPrintNum6], a pop hl ret Function104ed6: ; 104ed6 (41:4ed6) - ld c, $56 + ld c, rRP % $100 ld d, $5 call Function104dd1 ld d, $5 @@ -852,15 +852,15 @@ Function104ed6: ; 104ed6 (41:4ed6) inc b jr z, .asm_104f2e ld a, $8 - ld [$ffb6], a + ld [hPrintNum4], a ld a, [hli] ld e, a - ld a, [hDivisor] + ld a, [hPrintNum5] add e - ld [hDivisor], a - ld a, [hMathBuffer] + ld [hPrintNum5], a + ld a, [hPrintNum6] adc $0 - ld [hMathBuffer], a + ld [hPrintNum6], a .asm_104f02 xor a ld [rIF], a @@ -885,10 +885,10 @@ Function104ed6: ; 104ed6 (41:4ed6) ld [rIF], a halt .asm_104f25 - ld a, [$ffb6] + ld a, [hPrintNum4] dec a jr z, .asm_104eee - ld [$ffb6], a + ld [hPrintNum4], a jr .asm_104f02 .asm_104f2e ld a, $fe @@ -922,35 +922,35 @@ Function104f50: ; 104f50 (41:4f50) Function104f57: ; 104f57 (41:4f57) xor a - ld [hDivisor], a - ld [hMathBuffer], a + ld [hPrintNum5], a + ld [hPrintNum6], a push bc push hl - ld hl, hQuotient ; $ffb4 (aliases: hMultiplicand) + ld hl, hPrintNum2 ; $ffb4 (aliases: hMultiplicand) ld b, $2 call Function104faf - ld a, [$ffb5] - ld [$ffba], a + ld a, [hPrintNum3] + ld [hPrintNum8], a ld b, a pop hl pop af cp b jp c, Function104f50 - ld a, [hQuotient] + ld a, [hPrintNum2] cp $5a jp nz, Function104f50 call Function104faf - ld a, [hDivisor] + ld a, [hPrintNum5] ld d, a - ld a, [hMathBuffer] + ld a, [hPrintNum6] ld e, a push hl push de - ld hl, hQuotient ; $ffb4 (aliases: hMultiplicand) + ld hl, hPrintNum2 ; $ffb4 (aliases: hMultiplicand) ld b, $2 call Function104faf pop de - ld hl, hQuotient ; $ffb4 (aliases: hMultiplicand) + ld hl, hPrintNum2 ; $ffb4 (aliases: hMultiplicand) ld a, [hli] xor d ld b, a @@ -967,9 +967,9 @@ Function104f57: ; 104f57 (41:4f57) pop de pop hl ld a, d - ld [hDivisor], a + ld [hPrintNum5], a ld a, e - ld [hMathBuffer], a + ld [hPrintNum6], a ret Function104faf: ; 104faf (41:4faf) @@ -993,7 +993,7 @@ Function104faf: ; 104faf (41:4faf) inc b jr z, .asm_10501a ld a, $8 - ld [$ffb6], a + ld [hPrintNum4], a .asm_104fd9 ld d, $0 .asm_104fdb @@ -1022,9 +1022,9 @@ Function104faf: ; 104faf (41:4faf) .asm_104ffd res 0, e .asm_104fff - ld a, [$ffb6] + ld a, [hPrintNum4] dec a - ld [$ffb6], a + ld [hPrintNum4], a jr z, .asm_10500b ld a, e rlca @@ -1033,12 +1033,12 @@ Function104faf: ; 104faf (41:4faf) .asm_10500b ld a, e ld [hli], a - ld a, [hDivisor] + ld a, [hPrintNum5] add e - ld [hDivisor], a - ld a, [hMathBuffer] + ld [hPrintNum5], a + ld a, [hPrintNum6] adc $0 - ld [hMathBuffer], a + ld [hPrintNum6], a jr .asm_104fd2 .asm_10501a call Function104d74 @@ -1088,7 +1088,7 @@ endr ld [rJOYP], a ret -Function105069: ; 105069 (41:5069) +MysteryGift_CheckAndSetDecorationAlreadyReceived: ; 105069 (41:5069) call GetMysteryGiftBank ld d, $0 ld b, CHECK_FLAG @@ -1110,7 +1110,7 @@ Function105069: ; 105069 (41:5069) xor a ret -Function105091: ; 105091 (41:5091) +MysteryGift_CopyReceivedDecosToPC: ; 105091 (41:5091) call GetMysteryGiftBank ld c, $0 .loop diff --git a/engine/scripting.asm b/engine/scripting.asm index 5de990006..de6644fbe 100644 --- a/engine/scripting.asm +++ b/engine/scripting.asm @@ -168,7 +168,7 @@ ENDC dw Script_loadwildmon ; 5d dw Script_loadtrainer ; 5e dw Script_startbattle ; 5f - dw Script_returnafterbattle ; 60 + dw Script_reloadmapafterbattle ; 60 dw Script_catchtutorial ; 61 dw Script_trainertext ; 62 dw Script_trainerflagaction ; 63 @@ -203,7 +203,7 @@ ENDC dw Script_encountermusic ; 80 dw Script_musicfadeout ; 81 dw Script_playmapmusic ; 82 - dw Script_reloadmapmusic ; 83 + dw Script_dontrestartmapmusic ; 83 dw Script_cry ; 84 dw Script_playsound ; 85 dw Script_waitsfx ; 86 @@ -1555,7 +1555,7 @@ Script_catchtutorial: ; 97447 jp Script_reloadmap ; 97459 -Script_returnafterbattle: ; 97459 +Script_reloadmapafterbattle: ; 97459 ; script command 0x60 ld hl, wBattleScriptFlags @@ -2905,11 +2905,11 @@ Script_blackoutmod: ; 97a78 ret ; 97a85 -Script_reloadmapmusic: ; 97a85 +Script_dontrestartmapmusic: ; 97a85 ; script command 0x83 ld a, 1 - ld [wc2c1], a + ld [wDontPlayMapMusicOnReload], a ret ; 97a8b diff --git a/engine/sprite_anims.asm b/engine/sprite_anims.asm index 89340f610..27c9fb9c9 100755 --- a/engine/sprite_anims.asm +++ b/engine/sprite_anims.asm @@ -94,13 +94,13 @@ endr add hl, bc ld a, d and $10 ; bit 4 - jr z, .load_Null + jr z, .load_zero ld a, e and a jr z, .load_minus_two cp $1 jr z, .load_minus_one -.load_Null +.load_zero xor a ld [hl], a ret @@ -140,11 +140,11 @@ endr ; 8d306 (23:5306) ; Anonymous jumptable (see .anonymous_jumptable) - dw .four_Null + dw .four_zero dw .four_one ; 8d30a -.four_Null: ; 8d30a +.four_zero: ; 8d30a call .IncrementSpriteAnimStruct0B ld hl, SPRITEANIMSTRUCT_INDEX @@ -425,7 +425,7 @@ endr ; 8d487 (23:5487) ; Anonymous jumptable (see .anonymous_jumptable) - dw .sixteen_Null + dw .sixteen_zero dw .sixteen_one dw .sixteen_two dw .sixteen_three @@ -433,7 +433,7 @@ endr dw .sixteen_five ; 8d493 -.sixteen_Null: ; 8d493 +.sixteen_zero: ; 8d493 ld a, $14 call _ReinitSpriteAnimFrame diff --git a/event/mom_phone.asm b/event/mom_phone.asm index 5cbe44e95..e7d2a1493 100755 --- a/event/mom_phone.asm +++ b/event/mom_phone.asm @@ -6,7 +6,7 @@ MomTriesToBuySomething:: ; fcfec and a ret nz xor a - ld [wdc18], a + ld [wWhichMomItemSet], a call CheckBalance_MomItem2 ret nc call Mom_GiveItemOrDoll @@ -26,10 +26,10 @@ MomTriesToBuySomething:: ; fcfec .ASMFunction: ; fd017 call MomBuysItem_DeductFunds call Mom_GetScriptPointer - ld a, [wdc18] + ld a, [wWhichMomItemSet] and a jr nz, .ok - ld hl, wdc17 + ld hl, wWhichMomItem inc [hl] .ok ld a, PHONE_MOM @@ -52,7 +52,7 @@ MomTriesToBuySomething:: ; fcfec ; fd044 CheckBalance_MomItem2: ; fd044 - ld a, [wdc17] + ld a, [wWhichMomItem] cp 10 jr nc, .nope call GetItemFromMom @@ -82,12 +82,12 @@ CheckBalance_MomItem2: ; fd044 inc hl ld [hl], (2300 % $100) ; $fc .loop - ld de, wdc19 + ld de, MomItemTriggerBalance ld bc, wMomsMoney callba CompareMoney jr z, .exact jr nc, .less_than - call Functionfd099 + call .AddMoney jr .loop .less_than @@ -95,17 +95,16 @@ CheckBalance_MomItem2: ; fd044 ret .exact - call Functionfd099 + call .AddMoney ld a, 5 call RandomRange inc a - ld [wdc18], a + ld [wWhichMomItemSet], a scf ret -; fd099 -Functionfd099: ; fd099 - ld de, wdc19 +.AddMoney + ld de, MomItemTriggerBalance ld bc, hMoneyTemp callba AddMoney ret @@ -183,7 +182,7 @@ Mom_GetScriptPointer: ; fd0eb (3f:50eb) GetItemFromMom: ; fd117 - ld a, [wdc18] + ld a, [wWhichMomItemSet] and a jr z, .zero dec a @@ -191,7 +190,7 @@ GetItemFromMom: ; fd117 jr .GetFromList1 .zero - ld a, [wdc17] + ld a, [wWhichMomItem] cp 10 ; length of MomItems_2 jr c, .ok xor a diff --git a/event/sweet_scent.asm b/event/sweet_scent.asm index 79a4b5819..01c43f8b9 100755 --- a/event/sweet_scent.asm +++ b/event/sweet_scent.asm @@ -18,7 +18,7 @@ UnknownScript_0x506c8: ; 0x506c8 iftrue UnknownScript_0x506e5 randomwildmon startbattle - returnafterbattle + reloadmapafterbattle end ; 0x506e5 diff --git a/home.asm b/home.asm index 733068dd2..1955a50a5 100644 --- a/home.asm +++ b/home.asm @@ -3,18 +3,15 @@ INCLUDE "includes.asm" SECTION "NULL", ROM0[0] NULL:: - INCLUDE "rst.asm" INCLUDE "interrupts.asm" - SECTION "Header", ROM0[$100] Start:: nop jp _Start - SECTION "Home", ROM0[$150] INCLUDE "home/init.asm" @@ -40,7 +37,6 @@ INCLUDE "home/handshake.asm" INCLUDE "home/game_time.asm" INCLUDE "home/map.asm" - Function2d43:: ; 2d43 ; Inexplicably empty. ; Seen in PredefPointers. @@ -50,29 +46,26 @@ Function2d43:: ; 2d43 ret ; 2d54 - INCLUDE "home/farcall.asm" INCLUDE "home/predef.asm" INCLUDE "home/window.asm" - Function2e4e:: ; 2e4e ; Unreferenced. scf ret ; 2e50 - INCLUDE "home/flag.asm" - Function2ebb:: ; 2ebb - ld a, [wc2cc] +; unreferenced + ld a, [wMonStatusFlags] bit 1, a ret z ld a, [hJoyDown] - bit 1, a ; B_BUTTON + bit B_BUTTON_F, a ret ; 2ec6 @@ -88,14 +81,14 @@ xor_a_dec_a:: ; 2ec8 ; 2ecb Function2ecb:: ; 2ecb +; unreferenced push hl - ld hl, wc2cc + ld hl, wMonStatusFlags bit 1, [hl] pop hl ret ; 2ed3 - DisableSpriteUpdates:: ; 0x2ed3 ; disables overworld sprite updating? xor a @@ -119,10 +112,8 @@ EnableSpriteUpdates:: ; 2ee4 ret ; 2ef6 - INCLUDE "home/string.asm" - IsInJohto:: ; 2f17 ; Return 0 if the player is in Johto, and 1 in Kanto. @@ -157,17 +148,14 @@ IsInJohto:: ; 2f17 ret ; 2f3e - ret_2f3e:: ; 2f3e ret ; 2f3f - INCLUDE "home/item.asm" INCLUDE "home/random.asm" INCLUDE "home/sram.asm" - ; Register aliases _hl_:: ; 2fec @@ -179,10 +167,8 @@ _de_:: ; 2fed ret ; 2fef - INCLUDE "home/double_speed.asm" - ClearSprites:: ; 300b ; Erase OAM data ld hl, Sprites @@ -209,10 +195,8 @@ HideSprites:: ; 3016 ret ; 3026 - INCLUDE "home/copy2.asm" - LoadTileMapToTempTileMap:: ; 309d ; Load TileMap into TempTileMap ld a, [rSVBK] @@ -252,7 +236,6 @@ LoadTempTileMapToTileMap:: ; 30bf ret ; 30d6 - CopyName1:: ; 30d6 ; Copies the name from de to StringBuffer2 ld hl, StringBuffer2 @@ -305,10 +288,8 @@ SkipNames:: ; 0x30f4 ret ; 0x30fe - INCLUDE "home/math.asm" - PrintLetterDelay:: ; 313d ; Wait before printing the next letter. @@ -392,7 +373,6 @@ PrintLetterDelay:: ; 313d ret ; 318c - CopyDataUntil:: ; 318c ; Copy [hl .. bc) to de. @@ -412,7 +392,6 @@ CopyDataUntil:: ; 318c ret ; 0x3198 - PrintNum:: ; 3198 ld a, [hROMBank] push af @@ -426,7 +405,6 @@ PrintNum:: ; 3198 ret ; 31a4 - MobilePrintNum:: ; 31a4 ld a, [hROMBank] push af @@ -440,7 +418,6 @@ MobilePrintNum:: ; 31a4 ret ; 31b0 - FarPrintText:: ; 31b0 ld [hBuffer], a ld a, [hROMBank] @@ -455,7 +432,6 @@ FarPrintText:: ; 31b0 ret ; 31be - CallPointerAt:: ; 31be ld a, [hROMBank] push af @@ -474,7 +450,6 @@ CallPointerAt:: ; 31be ret ; 31cd - QueueScript:: ; 31cd ; Push pointer hl in the current bank to wQueuedScriptBank. ld a, [hROMBank] @@ -489,7 +464,6 @@ FarQueueScript:: ; 31cf ret ; 31db - StringCmp:: ; 31db ; Compare c bytes at de and hl. ; Return z if they all match. @@ -504,7 +478,6 @@ StringCmp:: ; 31db ret ; 0x31e4 - CompareLong:: ; 31e4 ; Compare bc bytes at de and hl. ; Return carry if they all match. @@ -529,7 +502,6 @@ CompareLong:: ; 31e4 ret ; 31f3 - ClearBGPalettes:: ; 31f3 call ClearPalettes WaitBGMap:: ; 31f6 @@ -560,14 +532,12 @@ WaitBGMap2:: ; 0x3200 ret ; 0x3218 - IsCGB:: ; 3218 ld a, [hCGB] and a ret ; 321c - ApplyTilemap:: ; 321c ld a, [hCGB] and a @@ -685,7 +655,6 @@ endr ret ; 32f9 - SetPalettes:: ; 32f9 ; Inits the Palettes ; depending on the system the monochromes palettes or color palettes @@ -709,7 +678,6 @@ SetPalettes:: ; 32f9 ret ; 3317 - ClearPalettes:: ; 3317 ; Make all palettes white @@ -747,7 +715,6 @@ ClearPalettes:: ; 3317 ret ; 333e - GetMemSGBLayout:: ; 333e ld b, SCGB_RAM GetSGBLayout:: ; 3340 @@ -765,7 +732,6 @@ GetSGBLayout:: ; 3340 predef_jump Predef_LoadSGBLayout ; LoadSGBLayout ; 334e - SetHPPal:: ; 334e ; Set palette for hp bar pixel length e at hl. call GetHPPal @@ -773,7 +739,6 @@ SetHPPal:: ; 334e ret ; 3353 - GetHPPal:: ; 3353 ; Get palette for hp bar pixel length e in d. @@ -788,7 +753,6 @@ GetHPPal:: ; 3353 ret ; 335f - CountSetBits:: ; 0x335f ; Count the number of set bits in b bytes starting from hl. ; Return in a, c and [wd265]. @@ -815,7 +779,6 @@ CountSetBits:: ; 0x335f ret ; 0x3376 - GetWeekday:: ; 3376 ld a, [CurDay] .mod @@ -825,10 +788,8 @@ GetWeekday:: ; 3376 ret ; 3380 - INCLUDE "home/pokedex_flags.asm" - NamesPointers:: ; 33ab dba PokemonNames dba MoveNames @@ -904,7 +865,6 @@ endr ret ; 3411 - GetNthString:: ; 3411 ; Return the address of the ; ath string starting from hl. @@ -925,7 +885,6 @@ GetNthString:: ; 3411 ret ; 3420 - GetBasePokemonName:: ; 3420 ; Discards gender (Nidoran). @@ -951,7 +910,6 @@ GetBasePokemonName:: ; 3420 ; 343b - GetPokemonName:: ; 343b ; Get Pokemon name wd265. @@ -991,7 +949,6 @@ endr ret ; 3468 - GetItemName:: ; 3468 ; Get item name wd265. @@ -1016,7 +973,6 @@ GetItemName:: ; 3468 ret ; 3487 - GetTMHMName:: ; 3487 ; Get TM/HM name by item id wd265. @@ -1100,7 +1056,6 @@ GetTMHMName:: ; 3487 db "@" ; 34df - IsHM:: ; 34df cp HM01 jr c, .NotHM @@ -1111,7 +1066,6 @@ IsHM:: ; 34df ret ; 34e7 - IsHMMove:: ; 34e7 ld hl, .HMMoves ld de, 1 @@ -1128,7 +1082,6 @@ IsHMMove:: ; 34e7 db -1 ; 34f8 - GetMoveName:: ; 34f8 push hl @@ -1145,7 +1098,6 @@ GetMoveName:: ; 34f8 ret ; 350c - ScrollingMenu:: ; 350c call CopyMenuData2 ld a, [hROMBank] @@ -1212,7 +1164,6 @@ Function354b:: ; 354b joypad ret ; 3567 - HandleStoneQueue:: ; 3567 ld a, [hROMBank] push af @@ -1358,7 +1309,6 @@ endr ret ; 3600 - CheckTrainerBattle2:: ; 3600 ld a, [hROMBank] @@ -1373,7 +1323,6 @@ CheckTrainerBattle2:: ; 3600 ret ; 360d - CheckTrainerBattle:: ; 360d ; Check if any trainer on the map sees the player and wants to battle. @@ -1493,7 +1442,6 @@ LoadTrainer_continue:: ; 367e ret ; 36a5 - FacingPlayerDistance_bc:: ; 36a5 push de @@ -1504,7 +1452,6 @@ FacingPlayerDistance_bc:: ; 36a5 ret ; 36ad - FacingPlayerDistance:: ; 36ad ; Return carry if the sprite at bc is facing the player, ; and its distance in d. @@ -1575,7 +1522,6 @@ FacingPlayerDistance:: ; 36ad ret ; 36f5 - CheckTrainerFlag:: ; 36f5 push bc ld hl, OBJECT_MAP_OBJECT_INDEX @@ -1601,7 +1547,6 @@ CheckTrainerFlag:: ; 36f5 ret ; 3718 - PrintWinLossText:: ; 3718 ld a, [BattleType] cp BATTLETYPE_CANLOSE @@ -1629,8 +1574,6 @@ PrintWinLossText:: ; 3718 ret ; 3741 - - IsAPokemon:: ; 3741 ; Return carry if species a is not a Pokemon. and a @@ -1649,7 +1592,6 @@ IsAPokemon:: ; 3741 ret ; 3750 - DrawBattleHPBar:: ; 3750 ; Draw an HP bar d tiles long at hl ; Fill it up to e pixels @@ -1711,7 +1653,6 @@ DrawBattleHPBar:: ; 3750 ret ; 3786 - PrepMonFrontpic:: ; 3786 ld a, $1 ld [wBoxAlignment], a @@ -1741,10 +1682,8 @@ _PrepMonFrontpic:: ; 378b ret ; 37b6 - INCLUDE "home/cry.asm" - PrintLevel:: ; 382d ; Print TempMonLevel at hl @@ -1777,7 +1716,6 @@ Function3842:: ; 3842 jp PrintNum ; 384d - Function384d:: ; 384d ld hl, wListMoves_MoveIndicesBuffer ld c, a @@ -1787,7 +1725,6 @@ Function384d:: ; 384d ret ; 3856 - GetBaseData:: ; 3856 push bc push de @@ -1845,7 +1782,6 @@ GetBaseData:: ; 3856 ret ; 389c - GetCurNick:: ; 389c ld a, [CurPartyMon] ld hl, PartyMonNicknames @@ -1871,7 +1807,6 @@ GetNick:: ; 38a2 ret ; 38bb - PrintBCDNumber:: ; 38bb ; function to print a BCD (Binary-coded decimal) number ; de = address of BCD number @@ -1973,7 +1908,6 @@ GetPartyLocation:: ; 3927 jp AddNTimes ; 392d - Function392d:: ; 392d push hl ld a, b @@ -1991,7 +1925,6 @@ Function392d:: ; 392d ret ; 3945 - INCLUDE "home/battle.asm" Function3b0c:: ; 3b0c @@ -2015,8 +1948,6 @@ Function3b0c:: ; 3b0c ret ; 3b2a - - _InitSpriteAnimStruct:: ; 3b2a ld [wSpriteAnimIDBuffer], a @@ -2035,7 +1966,6 @@ _InitSpriteAnimStruct:: ; 3b2a ret ; 3b3c - ReinitSpriteAnimFrame:: ; 3b3c ld [wSpriteAnimIDBuffer], a @@ -2054,11 +1984,9 @@ ReinitSpriteAnimFrame:: ; 3b3c ret ; 3b4e - INCLUDE "home/audio.asm" INCLUDE "home/mobile.asm" - Function3eea:: ; 3eea push hl push bc diff --git a/home/audio.asm b/home/audio.asm index 191366d0d..63489cf68 100644 --- a/home/audio.asm +++ b/home/audio.asm @@ -397,7 +397,7 @@ EnterMapMusic:: ; 3d03 push af xor a - ld [wc2c1], a + ld [wDontPlayMapMusicOnReload], a ld de, MUSIC_BICYCLE ld a, [PlayerState] cp PLAYER_BIKE @@ -422,7 +422,7 @@ EnterMapMusic:: ; 3d03 ; 3d2f TryRestartMapMusic:: ; 3d2f - ld a, [wc2c1] + ld a, [wDontPlayMapMusicOnReload] and a jr z, RestartMapMusic xor a @@ -431,7 +431,7 @@ TryRestartMapMusic:: ; 3d2f call PlayMusic call DelayFrame xor a - ld [wc2c1], a + ld [wDontPlayMapMusicOnReload], a ret ; 3d47 diff --git a/home/init.asm b/home/init.asm index 753138748..dacc5ff75 100644 --- a/home/init.asm +++ b/home/init.asm @@ -22,17 +22,17 @@ Reset:: ; 150 _Start:: ; 16e cp $11 - jr z, .asm_175 + jr z, .cgb xor a - jr .asm_177 + jr .load -.asm_175 +.cgb ld a, $1 -.asm_177 +.load ld [hCGB], a ld a, $1 - ld [$ffea], a + ld [hFFEA], a ; 17d @@ -69,29 +69,29 @@ Init:: ; 17d ld [rLCDC], a ; Clear WRAM bank 0 - ld hl, $c000 - ld bc, $d000 - $c000 -.asm_1b1 + ld hl, wc000 + ld bc, wd000 - wc000 +.ByteFill ld [hl], 0 inc hl dec bc ld a, b or c - jr nz, .asm_1b1 + jr nz, .ByteFill ld sp, Stack ; Clear HRAM ld a, [hCGB] push af - ld a, [$ffea] + ld a, [hFFEA] push af xor a - ld hl, $ff80 - ld bc, $ffff - $ff80 + ld hl, HRAM_START + ld bc, HRAM_END - HRAM_START call ByteFill pop af - ld [$ffea], a + ld [hFFEA], a pop af ld [hCGB], a diff --git a/home/video.asm b/home/video.asm index 15ea9b72b..96a449071 100644 --- a/home/video.asm +++ b/home/video.asm @@ -20,10 +20,10 @@ DMATransfer:: ; 15d8 UpdateBGMapBuffer:: ; 15e3 -; Copy [$ffdc] 16x8 tiles from BGMapBuffer +; Copy [hFFDC] 16x8 tiles from BGMapBuffer ; to bg map addresses in BGMapBufferPtrs. -; [$ffdc] must be even since this is done in pairs. +; [hFFDC] must be even since this is done in pairs. ; Return carry on success. @@ -76,11 +76,11 @@ rept 2 endr ; We've done 2 16x8 blocks - ld a, [$ffdc] + ld a, [hFFDC] rept 2 dec a endr - ld [$ffdc], a + ld [hFFDC], a jr nz, .next diff --git a/hram.asm b/hram.asm index 772de0090..f04b28d3b 100644 --- a/hram.asm +++ b/hram.asm @@ -1,8 +1,9 @@ +HRAM_START EQU $ff80 hPushOAM EQU $ff80 hROMBankBackup EQU $ff8a hBuffer EQU $ff8b - +hFF8C EQU $ff8c hRTCDayHi EQU $ff8d hRTCDayLo EQU $ff8e hRTCHours EQU $ff8f @@ -34,7 +35,7 @@ hInMenu EQU $ffaa hPrinter EQU $ffac hFillBox EQU $ffad - +hMoveMon EQU $ffae hMapObjectIndexBuffer EQU $ffaf hObjectStructIndexBuffer EQU $ffb0 @@ -114,3 +115,7 @@ hCGB EQU $ffe6 hSGB EQU $ffe7 hDMATransfer EQU $ffe8 hMobile EQU $ffe9 +hFFEA EQU $ffea +hClockResetTrigger EQU $ffeb + +HRAM_END EQU $ffff diff --git a/items/item_effects.asm b/items/item_effects.asm index 827e35f57..2c554cea2 100644 --- a/items/item_effects.asm +++ b/items/item_effects.asm @@ -1842,7 +1842,7 @@ HealHP_SFX_GFX: ; f1db (3:71db) ld bc, SCREEN_WIDTH * 2 call AddNTimes ld a, $2 - ld [wd10a], a + ld [wWhichHPBar], a predef_jump AnimateHPBar UseItem_SelectMon: ; f1f9 (3:71f9) diff --git a/macros/event.asm b/macros/event.asm index 8ef05b141..23fa9c034 100644 --- a/macros/event.asm +++ b/macros/event.asm @@ -618,9 +618,9 @@ startbattle: macro db startbattle_command endm - enum returnafterbattle_command -returnafterbattle: macro - db returnafterbattle_command + enum reloadmapafterbattle_command +reloadmapafterbattle: macro + db reloadmapafterbattle_command endm enum catchtutorial_command @@ -833,9 +833,9 @@ playmapmusic: macro db playmapmusic_command endm - enum reloadmapmusic_command -reloadmapmusic: macro - db reloadmapmusic_command + enum dontrestartmapmusic_command +dontrestartmapmusic: macro + db dontrestartmapmusic_command endm enum cry_command diff --git a/main.asm b/main.asm index eb5d6bc94..a8bcb97b8 100644 --- a/main.asm +++ b/main.asm @@ -1922,7 +1922,7 @@ _PrintNum:: ; c4c7 ld a, [hPrintNum5] ld b, a ld a, [hPrintNum2] - ld [$ffba], a + ld [hPrintNum8], a cp b jr c, .skip1 sub b @@ -1970,7 +1970,7 @@ _PrintNum:: ; c4c7 ld a, [hPrintNum9] ld [hPrintNum3], a .skip3 - ld a, [$ffba] + ld a, [hPrintNum8] ld [hPrintNum2], a .skip1 ld a, [hPrintNum1] @@ -1981,7 +1981,7 @@ _PrintNum:: ; c4c7 jr nz, .done bit 5, d jr z, .done - ld a, $f0 + ld a, "¥" ld [hli], a res 5, d .done @@ -1993,7 +1993,7 @@ _PrintNum:: ; c4c7 dec e ret nz inc hl - ld [hl], $f2 + ld [hl], "·" ret .PrintLeadingZero: ; c644 @@ -3598,7 +3598,7 @@ HeadbuttScript: ; 0xceab closetext randomwildmon startbattle - returnafterbattle + reloadmapafterbattle end .no_battle @@ -3706,7 +3706,7 @@ RockSmashScript: ; cf32 iffalse .done randomwildmon startbattle - returnafterbattle + reloadmapafterbattle .done end ; 0xcf55 @@ -3894,7 +3894,7 @@ Script_GotABite: ; 0xd035 closetext randomwildmon startbattle - returnafterbattle + reloadmapafterbattle end ; 0xd05c @@ -5472,7 +5472,7 @@ BugCatchingContestBattleScript:: ; 0x135eb writecode VAR_BATTLETYPE, BATTLETYPE_CONTEST randomwildmon startbattle - returnafterbattle + reloadmapafterbattle copybytetovar wParkBallsRemaining iffalse BugCatchingContestOutOfBallsScript end @@ -9979,7 +9979,7 @@ DrawEnemyHP: ; 50b0e ld a, $2 DrawHP: ; 50b10 - ld [wd10a], a + ld [wWhichHPBar], a push hl push bc ld a, [MonType] @@ -12814,7 +12814,7 @@ StartBattleWithMapTrainerScript: ; 0xbe68a closetext loadmemtrainer startbattle - returnafterbattle + reloadmapafterbattle trainerflagaction SET_FLAG loadvar wRunningTrainerBattleScript, -1 diff --git a/maps/AzaleaGym.asm b/maps/AzaleaGym.asm index b7cb3e67e..7714c0e02 100644 --- a/maps/AzaleaGym.asm +++ b/maps/AzaleaGym.asm @@ -25,7 +25,7 @@ BugsyScript: winlosstext BugsyText_ResearchIncomplete, 0 loadtrainer BUGSY, 1 startbattle - returnafterbattle + reloadmapafterbattle setevent EVENT_BEAT_BUGSY opentext writetext Text_ReceivedHiveBadge diff --git a/maps/AzaleaTown.asm b/maps/AzaleaTown.asm index 41a73eb53..5921b1f0e 100644 --- a/maps/AzaleaTown.asm +++ b/maps/AzaleaTown.asm @@ -74,8 +74,8 @@ AzaleaTownRivalBattleScript: setlasttalked AZALEATOWN_SILVER loadtrainer RIVAL1, RIVAL1_6 startbattle - reloadmapmusic - returnafterbattle + dontrestartmapmusic + reloadmapafterbattle jump .AfterBattle .Totodile: @@ -83,8 +83,8 @@ AzaleaTownRivalBattleScript: setlasttalked AZALEATOWN_SILVER loadtrainer RIVAL1, RIVAL1_4 startbattle - reloadmapmusic - returnafterbattle + dontrestartmapmusic + reloadmapafterbattle jump .AfterBattle .Chikorita: @@ -92,8 +92,8 @@ AzaleaTownRivalBattleScript: setlasttalked AZALEATOWN_SILVER loadtrainer RIVAL1, RIVAL1_5 startbattle - reloadmapmusic - returnafterbattle + dontrestartmapmusic + reloadmapafterbattle jump .AfterBattle .AfterBattle: diff --git a/maps/BlackthornGym1F.asm b/maps/BlackthornGym1F.asm index d347a5c50..f51805859 100644 --- a/maps/BlackthornGym1F.asm +++ b/maps/BlackthornGym1F.asm @@ -43,7 +43,7 @@ BlackthornGymClairScript: winlosstext ClairWinText, 0 loadtrainer CLAIR, 1 startbattle - returnafterbattle + reloadmapafterbattle setevent EVENT_BEAT_CLAIR opentext writetext ClairText_GoToDragonsDen diff --git a/maps/BrunosRoom.asm b/maps/BrunosRoom.asm index d7e487869..6fe8772ff 100644 --- a/maps/BrunosRoom.asm +++ b/maps/BrunosRoom.asm @@ -58,7 +58,7 @@ BrunoScript_0x1809c5: winlosstext UnknownText_0x180b23, 0 loadtrainer BRUNO, 1 startbattle - returnafterbattle + reloadmapafterbattle setevent EVENT_BEAT_ELITE_4_BRUNO opentext writetext UnknownText_0x180b3c diff --git a/maps/BurnedTower1F.asm b/maps/BurnedTower1F.asm index fa8b112da..3adb8f2de 100644 --- a/maps/BurnedTower1F.asm +++ b/maps/BurnedTower1F.asm @@ -75,8 +75,8 @@ BurnedTowerRivalBattleScript: setlasttalked BURNEDTOWER1F_SILVER loadtrainer RIVAL1, RIVAL1_9 startbattle - reloadmapmusic - returnafterbattle + dontrestartmapmusic + reloadmapafterbattle jump .returnfrombattle .totodile: @@ -84,8 +84,8 @@ BurnedTowerRivalBattleScript: setlasttalked BURNEDTOWER1F_SILVER loadtrainer RIVAL1, RIVAL1_7 startbattle - reloadmapmusic - returnafterbattle + dontrestartmapmusic + reloadmapafterbattle jump .returnfrombattle .chikorita: @@ -93,8 +93,8 @@ BurnedTowerRivalBattleScript: setlasttalked BURNEDTOWER1F_SILVER loadtrainer RIVAL1, RIVAL1_8 startbattle - reloadmapmusic - returnafterbattle + dontrestartmapmusic + reloadmapafterbattle jump .returnfrombattle .returnfrombattle: diff --git a/maps/CeladonGym.asm b/maps/CeladonGym.asm index 9724442e6..8bedbffc4 100644 --- a/maps/CeladonGym.asm +++ b/maps/CeladonGym.asm @@ -24,7 +24,7 @@ ErikaScript_0x72a6a: winlosstext UnknownText_0x72c3e, 0 loadtrainer ERIKA, 1 startbattle - returnafterbattle + reloadmapafterbattle setevent EVENT_BEAT_ERIKA setevent EVENT_BEAT_LASS_MICHELLE setevent EVENT_BEAT_PICNICKER_TANYA diff --git a/maps/CeruleanGym.asm b/maps/CeruleanGym.asm index 005880d2b..a5d826eba 100644 --- a/maps/CeruleanGym.asm +++ b/maps/CeruleanGym.asm @@ -71,7 +71,7 @@ MistyScript_0x188432: winlosstext UnknownText_0x18870c, 0 loadtrainer MISTY, 1 startbattle - returnafterbattle + reloadmapafterbattle setevent EVENT_BEAT_MISTY setevent EVENT_BEAT_SWIMMERF_DIANA setevent EVENT_BEAT_SWIMMERF_BRIANA diff --git a/maps/CherrygroveCity.asm b/maps/CherrygroveCity.asm index c7beadb17..e3dc14c0a 100644 --- a/maps/CherrygroveCity.asm +++ b/maps/CherrygroveCity.asm @@ -128,7 +128,7 @@ CherrygroveSilverTriggerNorth: loadtrainer RIVAL1, RIVAL1_3 writecode VAR_BATTLETYPE, BATTLETYPE_CANLOSE startbattle - reloadmapmusic + dontrestartmapmusic reloadmap iftrue .AfterVictorious jump .AfterYourDefeat @@ -139,7 +139,7 @@ CherrygroveSilverTriggerNorth: loadtrainer RIVAL1, RIVAL1_1 writecode VAR_BATTLETYPE, BATTLETYPE_CANLOSE startbattle - reloadmapmusic + dontrestartmapmusic reloadmap iftrue .AfterVictorious jump .AfterYourDefeat @@ -150,7 +150,7 @@ CherrygroveSilverTriggerNorth: loadtrainer RIVAL1, RIVAL1_2 writecode VAR_BATTLETYPE, BATTLETYPE_CANLOSE startbattle - reloadmapmusic + dontrestartmapmusic reloadmap iftrue .AfterVictorious jump .AfterYourDefeat diff --git a/maps/CianwoodCity.asm b/maps/CianwoodCity.asm index 70d44054d..c05109db4 100644 --- a/maps/CianwoodCity.asm +++ b/maps/CianwoodCity.asm @@ -70,8 +70,8 @@ UnknownScript_0x1a001e: setlasttalked CIANWOODCITY_EUSINE loadtrainer MYSTICALMAN, EUSINE startbattle - reloadmapmusic - returnafterbattle + dontrestartmapmusic + reloadmapafterbattle playmusic MUSIC_MYSTICALMAN_ENCOUNTER opentext writetext UnknownText_0x1a05c3 diff --git a/maps/CianwoodGym.asm b/maps/CianwoodGym.asm index e8167cc9a..3d0a87751 100644 --- a/maps/CianwoodGym.asm +++ b/maps/CianwoodGym.asm @@ -42,7 +42,7 @@ ChuckScript_0x9d60f: winlosstext UnknownText_0x9d7f6, 0 loadtrainer CHUCK, 1 startbattle - returnafterbattle + reloadmapafterbattle setevent EVENT_BEAT_CHUCK opentext writetext UnknownText_0x9d835 diff --git a/maps/EcruteakGym.asm b/maps/EcruteakGym.asm index e31f9077b..43193217c 100644 --- a/maps/EcruteakGym.asm +++ b/maps/EcruteakGym.asm @@ -36,7 +36,7 @@ MortyScript_0x99d58: winlosstext UnknownText_0x9a00a, 0 loadtrainer MORTY, 1 startbattle - returnafterbattle + reloadmapafterbattle setevent EVENT_BEAT_MORTY opentext writetext UnknownText_0x9a043 diff --git a/maps/FuchsiaGym.asm b/maps/FuchsiaGym.asm index f7319f427..48a5d2684 100644 --- a/maps/FuchsiaGym.asm +++ b/maps/FuchsiaGym.asm @@ -25,7 +25,7 @@ JanineScript_0x195db9: winlosstext UnknownText_0x195fa1, 0 loadtrainer JANINE, 1 startbattle - returnafterbattle + reloadmapafterbattle setevent EVENT_BEAT_JANINE setevent EVENT_BEAT_LASS_ALICE setevent EVENT_BEAT_LASS_LINDA @@ -78,13 +78,13 @@ UnknownScript_0x195e2c: loadtrainer LASS, ALICE startbattle iftrue UnknownScript_0x195e4a - returnafterbattle + reloadmapafterbattle setevent EVENT_BEAT_LASS_ALICE end UnknownScript_0x195e4a: variablesprite SPRITE_FUCHSIA_GYM_1, SPRITE_JANINE - returnafterbattle + reloadmapafterbattle end UnknownScript_0x195e4f: @@ -112,13 +112,13 @@ UnknownScript_0x195e66: loadtrainer LASS, LINDA startbattle iftrue UnknownScript_0x195e84 - returnafterbattle + reloadmapafterbattle setevent EVENT_BEAT_LASS_LINDA end UnknownScript_0x195e84: variablesprite SPRITE_FUCHSIA_GYM_2, SPRITE_JANINE - returnafterbattle + reloadmapafterbattle end UnknownScript_0x195e89: @@ -146,13 +146,13 @@ UnknownScript_0x195ea0: loadtrainer PICNICKER, CINDY startbattle iftrue UnknownScript_0x195ebe - returnafterbattle + reloadmapafterbattle setevent EVENT_BEAT_PICNICKER_CINDY end UnknownScript_0x195ebe: variablesprite SPRITE_FUCHSIA_GYM_3, SPRITE_JANINE - returnafterbattle + reloadmapafterbattle end UnknownScript_0x195ec3: @@ -180,13 +180,13 @@ UnknownScript_0x195eda: loadtrainer CAMPER, BARRY startbattle iftrue UnknownScript_0x195ef8 - returnafterbattle + reloadmapafterbattle setevent EVENT_BEAT_CAMPER_BARRY end UnknownScript_0x195ef8: variablesprite SPRITE_FUCHSIA_GYM_4, SPRITE_JANINE - returnafterbattle + reloadmapafterbattle end UnknownScript_0x195efd: diff --git a/maps/GoldenrodGym.asm b/maps/GoldenrodGym.asm index 7441bdc9c..5704b54a9 100644 --- a/maps/GoldenrodGym.asm +++ b/maps/GoldenrodGym.asm @@ -34,7 +34,7 @@ WhitneyScript_0x5400c: winlosstext UnknownText_0x541a5, 0 loadtrainer WHITNEY, 1 startbattle - returnafterbattle + reloadmapafterbattle setevent EVENT_BEAT_WHITNEY setevent EVENT_MADE_WHITNEY_CRY dotrigger $1 diff --git a/maps/IlexForest.asm b/maps/IlexForest.asm index fd8623a18..5e6ad9f2e 100644 --- a/maps/IlexForest.asm +++ b/maps/IlexForest.asm @@ -473,7 +473,7 @@ MapIlexForestSignpost4Script: special Special_CelebiShrineEvent loadwildmon CELEBI, 30 startbattle - returnafterbattle + reloadmapafterbattle pause 20 special CheckCaughtCelebi iffalse .DidntCatchCelebi diff --git a/maps/IndigoPlateauPokeCenter1F.asm b/maps/IndigoPlateauPokeCenter1F.asm index fccd88346..620008472 100644 --- a/maps/IndigoPlateauPokeCenter1F.asm +++ b/maps/IndigoPlateauPokeCenter1F.asm @@ -103,8 +103,8 @@ UnknownScript_0x1800ce: setlasttalked INDIGOPLATEAUPOKECENTER1F_SILVER loadtrainer RIVAL2, 6 startbattle - reloadmapmusic - returnafterbattle + dontrestartmapmusic + reloadmapafterbattle jump UnknownScript_0x180113 UnknownScript_0x1800f3: @@ -112,8 +112,8 @@ UnknownScript_0x1800f3: setlasttalked INDIGOPLATEAUPOKECENTER1F_SILVER loadtrainer RIVAL2, 4 startbattle - reloadmapmusic - returnafterbattle + dontrestartmapmusic + reloadmapafterbattle jump UnknownScript_0x180113 UnknownScript_0x180103: @@ -121,8 +121,8 @@ UnknownScript_0x180103: setlasttalked INDIGOPLATEAUPOKECENTER1F_SILVER loadtrainer RIVAL2, 5 startbattle - reloadmapmusic - returnafterbattle + dontrestartmapmusic + reloadmapafterbattle jump UnknownScript_0x180113 UnknownScript_0x180113: diff --git a/maps/KarensRoom.asm b/maps/KarensRoom.asm index eb92f779a..035346da9 100644 --- a/maps/KarensRoom.asm +++ b/maps/KarensRoom.asm @@ -58,7 +58,7 @@ KarenScript_0x180bee: winlosstext UnknownText_0x180cf8, 0 loadtrainer KAREN, 1 startbattle - returnafterbattle + reloadmapafterbattle setevent EVENT_BEAT_ELITE_4_KAREN opentext writetext UnknownText_0x180d29 diff --git a/maps/KogasRoom.asm b/maps/KogasRoom.asm index f9c4f70e8..47ab0ba7c 100644 --- a/maps/KogasRoom.asm +++ b/maps/KogasRoom.asm @@ -58,7 +58,7 @@ KogaScript_0x18075a: winlosstext UnknownText_0x1808a9, 0 loadtrainer KOGA, 1 startbattle - returnafterbattle + reloadmapafterbattle setevent EVENT_BEAT_ELITE_4_KOGA opentext writetext UnknownText_0x1808ca diff --git a/maps/KrissHouse2F.asm b/maps/KrissHouse2F.asm index eb7c827a4..c6dc28738 100644 --- a/maps/KrissHouse2F.asm +++ b/maps/KrissHouse2F.asm @@ -40,22 +40,21 @@ KrissHouse2F_MapScriptHeader: Doll1: - describedecoration $1 + describedecoration 1 Doll2: - describedecoration $2 + describedecoration 2 BigDoll: - describedecoration $3 + describedecoration 3 GameConsole: - describedecoration $4 + describedecoration 4 KrissHousePoster: - dw EVENT_KRISS_ROOM_POSTER ; event - dw .Script + dw EVENT_KRISS_ROOM_POSTER, .Script .Script - describedecoration $0 + describedecoration 0 KrissHouseRadio: checkevent EVENT_GOT_A_POKEMON_FROM_ELM @@ -70,7 +69,7 @@ KrissHouseRadio: pause 45 writetext KrisRadioText3 pause 45 - musicfadeout MUSIC_NEW_BARK_TOWN, $10 + musicfadeout MUSIC_NEW_BARK_TOWN, 16 writetext KrisRadioText4 pause 45 closetext diff --git a/maps/LakeofRage.asm b/maps/LakeofRage.asm index b23b313d1..20f7c0997 100644 --- a/maps/LakeofRage.asm +++ b/maps/LakeofRage.asm @@ -97,7 +97,7 @@ GyaradosScript_0x70063: if_equal $1, UnknownScript_0x7007a disappear LAKEOFRAGE_GYARADOS UnknownScript_0x7007a: - returnafterbattle + reloadmapafterbattle opentext giveitem RED_SCALE waitsfx diff --git a/maps/LancesRoom.asm b/maps/LancesRoom.asm index d3572ec37..db050db6d 100644 --- a/maps/LancesRoom.asm +++ b/maps/LancesRoom.asm @@ -66,8 +66,8 @@ LanceScript_0x180e7b: setlasttalked LANCESROOM_LANCE loadtrainer CHAMPION, LANCE startbattle - reloadmapmusic - returnafterbattle + dontrestartmapmusic + reloadmapafterbattle setevent EVENT_BEAT_CHAMPION_LANCE opentext writetext UnknownText_0x181132 diff --git a/maps/MahoganyGym.asm b/maps/MahoganyGym.asm index 070469ce3..ac52fa203 100644 --- a/maps/MahoganyGym.asm +++ b/maps/MahoganyGym.asm @@ -25,7 +25,7 @@ PryceScript_0x199a9e: winlosstext UnknownText_0x199cb3, 0 loadtrainer PRYCE, 1 startbattle - returnafterbattle + reloadmapafterbattle setevent EVENT_BEAT_PRYCE opentext writetext UnknownText_0x199d3b diff --git a/maps/MountMoon.asm b/maps/MountMoon.asm index f633b9dce..5c1fdb985 100644 --- a/maps/MountMoon.asm +++ b/maps/MountMoon.asm @@ -38,8 +38,8 @@ MountMoon_MapScriptHeader: setlasttalked MOUNTMOON_SILVER loadtrainer RIVAL2, 3 startbattle - reloadmapmusic - returnafterbattle + dontrestartmapmusic + reloadmapafterbattle jump .FinishBattle .Totodile: @@ -47,8 +47,8 @@ MountMoon_MapScriptHeader: setlasttalked MOUNTMOON_SILVER loadtrainer RIVAL2, 1 startbattle - reloadmapmusic - returnafterbattle + dontrestartmapmusic + reloadmapafterbattle jump .FinishBattle .Chikorita: @@ -56,8 +56,8 @@ MountMoon_MapScriptHeader: setlasttalked MOUNTMOON_SILVER loadtrainer RIVAL2, 2 startbattle - reloadmapmusic - returnafterbattle + dontrestartmapmusic + reloadmapafterbattle jump .FinishBattle .FinishBattle: diff --git a/maps/MountMortarB1F.asm b/maps/MountMortarB1F.asm index e9f7d44a4..e523f5fcd 100644 --- a/maps/MountMortarB1F.asm +++ b/maps/MountMortarB1F.asm @@ -27,7 +27,7 @@ BlackBeltScript_0x7e1f6: winlosstext UnknownText_0x7e2a9, 0 loadtrainer BLACKBELT_T, KIYO startbattle - returnafterbattle + reloadmapafterbattle setevent EVENT_BEAT_BLACKBELT_KIYO opentext UnknownScript_0x7e217: diff --git a/maps/NationalPark.asm b/maps/NationalPark.asm index c15c589d4..81d7b0209 100644 --- a/maps/NationalPark.asm +++ b/maps/NationalPark.asm @@ -124,7 +124,7 @@ UnknownScript_0x5c088: .LoadFight0 loadtrainer SCHOOLBOY, JACK1 startbattle - returnafterbattle + reloadmapafterbattle loadvar wJackFightCount, 1 clearflag ENGINE_JACK end @@ -132,7 +132,7 @@ UnknownScript_0x5c088: .LoadFight1 loadtrainer SCHOOLBOY, JACK2 startbattle - returnafterbattle + reloadmapafterbattle loadvar wJackFightCount, 2 clearflag ENGINE_JACK end @@ -140,7 +140,7 @@ UnknownScript_0x5c088: .LoadFight2 loadtrainer SCHOOLBOY, JACK3 startbattle - returnafterbattle + reloadmapafterbattle loadvar wJackFightCount, 3 clearflag ENGINE_JACK end @@ -148,7 +148,7 @@ UnknownScript_0x5c088: .LoadFight3 loadtrainer SCHOOLBOY, JACK4 startbattle - returnafterbattle + reloadmapafterbattle loadvar wJackFightCount, 4 clearflag ENGINE_JACK end @@ -156,7 +156,7 @@ UnknownScript_0x5c088: .LoadFight4 loadtrainer SCHOOLBOY, JACK5 startbattle - returnafterbattle + reloadmapafterbattle clearflag ENGINE_JACK end diff --git a/maps/OlivineGym.asm b/maps/OlivineGym.asm index 7c7b54c3a..bece5068c 100644 --- a/maps/OlivineGym.asm +++ b/maps/OlivineGym.asm @@ -20,7 +20,7 @@ JasmineScript_0x9c12f: winlosstext UnknownText_0x9c2bb, 0 loadtrainer JASMINE, 1 startbattle - returnafterbattle + reloadmapafterbattle setevent EVENT_BEAT_JASMINE opentext writetext UnknownText_0x9c33a diff --git a/maps/OlivineLighthouse2F.asm b/maps/OlivineLighthouse2F.asm index d3095de7a..06b8a04ea 100644 --- a/maps/OlivineLighthouse2F.asm +++ b/maps/OlivineLighthouse2F.asm @@ -67,7 +67,7 @@ UnknownScript_0x5afc7: .LoadFight0 loadtrainer SAILOR, HUEY1 startbattle - returnafterbattle + reloadmapafterbattle loadvar wHueyFightCount, 1 clearflag ENGINE_HUEY end @@ -75,7 +75,7 @@ UnknownScript_0x5afc7: .LoadFight1 loadtrainer SAILOR, HUEY2 startbattle - returnafterbattle + reloadmapafterbattle loadvar wHueyFightCount, 2 clearflag ENGINE_HUEY end @@ -83,7 +83,7 @@ UnknownScript_0x5afc7: .LoadFight2 loadtrainer SAILOR, HUEY3 startbattle - returnafterbattle + reloadmapafterbattle loadvar wHueyFightCount, 3 clearflag ENGINE_HUEY end @@ -91,7 +91,7 @@ UnknownScript_0x5afc7: .LoadFight3 loadtrainer SAILOR, HUEY4 startbattle - returnafterbattle + reloadmapafterbattle clearflag ENGINE_HUEY checkevent EVENT_HUEY_PROTEIN iftrue UnknownScript_0x5b03f diff --git a/maps/PewterGym.asm b/maps/PewterGym.asm index 57818a9d9..8fce69b13 100644 --- a/maps/PewterGym.asm +++ b/maps/PewterGym.asm @@ -21,7 +21,7 @@ BrockScript_0x1a2864: winlosstext UnknownText_0x1a29bb, 0 loadtrainer BROCK, 1 startbattle - returnafterbattle + reloadmapafterbattle setevent EVENT_BEAT_BROCK setevent EVENT_BEAT_CAMPER_JERRY opentext diff --git a/maps/RadioTower5F.asm b/maps/RadioTower5F.asm index f157a4cff..eee02b34c 100644 --- a/maps/RadioTower5F.asm +++ b/maps/RadioTower5F.asm @@ -43,7 +43,7 @@ FakeDirectorScript: setlasttalked RADIOTOWER5F_DIRECTOR loadtrainer EXECUTIVEM, 3 startbattle - returnafterbattle + reloadmapafterbattle opentext writetext FakeDirectorTextAfter buttonsound @@ -92,7 +92,7 @@ RadioTower5FRocketBossTrigger: setlasttalked RADIOTOWER5F_ROCKET loadtrainer EXECUTIVEM, 1 startbattle - returnafterbattle + reloadmapafterbattle opentext writetext RadioTower5FRocketBossAfterText waitbutton diff --git a/maps/Route24.asm b/maps/Route24.asm index fc6b8a0c4..ef8570fe2 100644 --- a/maps/Route24.asm +++ b/maps/Route24.asm @@ -18,8 +18,8 @@ RocketScript_0x1adbfa: winlosstext UnknownText_0x1add67, -1 loadtrainer GRUNTM, 31 startbattle - reloadmapmusic - returnafterbattle + dontrestartmapmusic + reloadmapafterbattle playmusic MUSIC_ROCKET_ENCOUNTER opentext writetext UnknownText_0x1addc0 diff --git a/maps/Route25.asm b/maps/Route25.asm index 7c2ecf6a2..48ef12917 100644 --- a/maps/Route25.asm +++ b/maps/Route25.asm @@ -176,7 +176,7 @@ UnknownScript_0x19efc7: winlosstext UnknownText_0x19f4fd, 0 loadtrainer COOLTRAINERM, KEVIN startbattle - returnafterbattle + reloadmapafterbattle setevent EVENT_BEAT_COOLTRAINERM_KEVIN opentext UnknownScript_0x19efda: diff --git a/maps/Route26.asm b/maps/Route26.asm index 3f52254c4..f4ddbf8f6 100644 --- a/maps/Route26.asm +++ b/maps/Route26.asm @@ -71,7 +71,7 @@ UnknownScript_0x1a4d79: .LoadFight0 loadtrainer COOLTRAINERM, GAVEN3 startbattle - returnafterbattle + reloadmapafterbattle loadvar wGavenFightCount, 1 clearflag ENGINE_GAVEN end @@ -79,7 +79,7 @@ UnknownScript_0x1a4d79: .LoadFight1 loadtrainer COOLTRAINERM, GAVEN1 startbattle - returnafterbattle + reloadmapafterbattle loadvar wGavenFightCount, 2 clearflag ENGINE_GAVEN end @@ -87,7 +87,7 @@ UnknownScript_0x1a4d79: .LoadFight2 loadtrainer COOLTRAINERM, GAVEN2 startbattle - returnafterbattle + reloadmapafterbattle clearflag ENGINE_GAVEN end @@ -175,7 +175,7 @@ UnknownScript_0x1a4e35: .LoadFight0 loadtrainer COOLTRAINERF, BETH1 startbattle - returnafterbattle + reloadmapafterbattle loadvar wBethFightCount, 1 clearflag ENGINE_BETH end @@ -183,7 +183,7 @@ UnknownScript_0x1a4e35: .LoadFight1 loadtrainer COOLTRAINERF, BETH2 startbattle - returnafterbattle + reloadmapafterbattle loadvar wBethFightCount, 2 clearflag ENGINE_BETH end @@ -191,7 +191,7 @@ UnknownScript_0x1a4e35: .LoadFight2 loadtrainer COOLTRAINERF, BETH3 startbattle - returnafterbattle + reloadmapafterbattle clearflag ENGINE_BETH end diff --git a/maps/Route27.asm b/maps/Route27.asm index af849c443..fa199f2ad 100644 --- a/maps/Route27.asm +++ b/maps/Route27.asm @@ -108,7 +108,7 @@ UnknownScript_0x1a08ff: .LoadFight0 loadtrainer BIRD_KEEPER, JOSE2 startbattle - returnafterbattle + reloadmapafterbattle loadvar wJoseFightCount, 1 clearflag ENGINE_JOSE end @@ -116,7 +116,7 @@ UnknownScript_0x1a08ff: .LoadFight1 loadtrainer BIRD_KEEPER, JOSE1 startbattle - returnafterbattle + reloadmapafterbattle loadvar wJoseFightCount, 2 clearflag ENGINE_JOSE end @@ -124,7 +124,7 @@ UnknownScript_0x1a08ff: .LoadFight2 loadtrainer BIRD_KEEPER, JOSE3 startbattle - returnafterbattle + reloadmapafterbattle clearflag ENGINE_JOSE end @@ -241,7 +241,7 @@ UnknownScript_0x1a09e9: .LoadFight0 loadtrainer COOLTRAINERF, REENA1 startbattle - returnafterbattle + reloadmapafterbattle loadvar wReenaFightCount, 1 clearflag ENGINE_REENA end @@ -249,7 +249,7 @@ UnknownScript_0x1a09e9: .LoadFight1 loadtrainer COOLTRAINERF, REENA2 startbattle - returnafterbattle + reloadmapafterbattle loadvar wReenaFightCount, 2 clearflag ENGINE_REENA end @@ -257,7 +257,7 @@ UnknownScript_0x1a09e9: .LoadFight2 loadtrainer COOLTRAINERF, REENA3 startbattle - returnafterbattle + reloadmapafterbattle clearflag ENGINE_REENA end diff --git a/maps/Route30.asm b/maps/Route30.asm index 56f3cf298..e5ca13fe3 100644 --- a/maps/Route30.asm +++ b/maps/Route30.asm @@ -91,7 +91,7 @@ TrainerYoungsterJoey: .LoadFight0 loadtrainer YOUNGSTER, JOEY1 startbattle - returnafterbattle + reloadmapafterbattle loadvar wJoeyFightCount, 1 clearflag ENGINE_JOEY end @@ -99,7 +99,7 @@ TrainerYoungsterJoey: .LoadFight1 loadtrainer YOUNGSTER, JOEY2 startbattle - returnafterbattle + reloadmapafterbattle loadvar wJoeyFightCount, 2 clearflag ENGINE_JOEY end @@ -107,7 +107,7 @@ TrainerYoungsterJoey: .LoadFight2 loadtrainer YOUNGSTER, JOEY3 startbattle - returnafterbattle + reloadmapafterbattle loadvar wJoeyFightCount, 3 clearflag ENGINE_JOEY end @@ -115,7 +115,7 @@ TrainerYoungsterJoey: .LoadFight3 loadtrainer YOUNGSTER, JOEY4 startbattle - returnafterbattle + reloadmapafterbattle loadvar wJoeyFightCount, 4 clearflag ENGINE_JOEY end @@ -123,7 +123,7 @@ TrainerYoungsterJoey: .LoadFight4 loadtrainer YOUNGSTER, JOEY5 startbattle - returnafterbattle + reloadmapafterbattle clearflag ENGINE_JOEY checkevent EVENT_JOEY_HP_UP iftrue .GiveHPUp diff --git a/maps/Route31.asm b/maps/Route31.asm index 2b504797b..3309e292a 100644 --- a/maps/Route31.asm +++ b/maps/Route31.asm @@ -82,7 +82,7 @@ TrainerBug_catcherWade1: .LoadFight0 loadtrainer BUG_CATCHER, WADE1 startbattle - returnafterbattle + reloadmapafterbattle loadvar wWadeFightCount, 1 clearflag ENGINE_WADE end @@ -90,7 +90,7 @@ TrainerBug_catcherWade1: .LoadFight1 loadtrainer BUG_CATCHER, WADE2 startbattle - returnafterbattle + reloadmapafterbattle loadvar wWadeFightCount, 2 clearflag ENGINE_WADE end @@ -98,7 +98,7 @@ TrainerBug_catcherWade1: .LoadFight2 loadtrainer BUG_CATCHER, WADE3 startbattle - returnafterbattle + reloadmapafterbattle loadvar wWadeFightCount, 3 clearflag ENGINE_WADE end @@ -106,7 +106,7 @@ TrainerBug_catcherWade1: .LoadFight3 loadtrainer BUG_CATCHER, WADE4 startbattle - returnafterbattle + reloadmapafterbattle loadvar wWadeFightCount, 4 clearflag ENGINE_WADE end @@ -114,7 +114,7 @@ TrainerBug_catcherWade1: .LoadFight4 loadtrainer BUG_CATCHER, WADE5 startbattle - returnafterbattle + reloadmapafterbattle clearflag ENGINE_WADE end diff --git a/maps/Route32.asm b/maps/Route32.asm index 223745799..63f29e81c 100644 --- a/maps/Route32.asm +++ b/maps/Route32.asm @@ -225,7 +225,7 @@ TrainerFisherRalph1: .LoadFight0 loadtrainer FISHER, RALPH1 startbattle - returnafterbattle + reloadmapafterbattle loadvar wRalphFightCount, 1 clearflag ENGINE_RALPH end @@ -233,7 +233,7 @@ TrainerFisherRalph1: .LoadFight1 loadtrainer FISHER, RALPH2 startbattle - returnafterbattle + reloadmapafterbattle loadvar wRalphFightCount, 2 clearflag ENGINE_RALPH end @@ -241,7 +241,7 @@ TrainerFisherRalph1: .LoadFight2 loadtrainer FISHER, RALPH3 startbattle - returnafterbattle + reloadmapafterbattle loadvar wRalphFightCount, 3 clearflag ENGINE_RALPH end @@ -249,7 +249,7 @@ TrainerFisherRalph1: .LoadFight3 loadtrainer FISHER, RALPH4 startbattle - returnafterbattle + reloadmapafterbattle loadvar wRalphFightCount, 4 clearflag ENGINE_RALPH end @@ -257,7 +257,7 @@ TrainerFisherRalph1: .LoadFight4 loadtrainer FISHER, RALPH5 startbattle - returnafterbattle + reloadmapafterbattle clearflag ENGINE_RALPH end @@ -359,7 +359,7 @@ TrainerPicnickerLiz1: .LoadFight0 loadtrainer PICNICKER, LIZ1 startbattle - returnafterbattle + reloadmapafterbattle loadvar wLizFightCount, 1 clearflag ENGINE_LIZ end @@ -367,7 +367,7 @@ TrainerPicnickerLiz1: .LoadFight1 loadtrainer PICNICKER, LIZ2 startbattle - returnafterbattle + reloadmapafterbattle loadvar wLizFightCount, 2 clearflag ENGINE_LIZ end @@ -375,7 +375,7 @@ TrainerPicnickerLiz1: .LoadFight2 loadtrainer PICNICKER, LIZ3 startbattle - returnafterbattle + reloadmapafterbattle loadvar wLizFightCount, 3 clearflag ENGINE_LIZ end @@ -383,7 +383,7 @@ TrainerPicnickerLiz1: .LoadFight3 loadtrainer PICNICKER, LIZ4 startbattle - returnafterbattle + reloadmapafterbattle loadvar wLizFightCount, 4 clearflag ENGINE_LIZ end @@ -391,7 +391,7 @@ TrainerPicnickerLiz1: .LoadFight4 loadtrainer PICNICKER, LIZ5 startbattle - returnafterbattle + reloadmapafterbattle clearflag ENGINE_LIZ end diff --git a/maps/Route33.asm b/maps/Route33.asm index ad9d7d7d2..3d1db419c 100644 --- a/maps/Route33.asm +++ b/maps/Route33.asm @@ -68,7 +68,7 @@ TrainerHikerAnthony: .LoadFight0 loadtrainer HIKER, ANTHONY2 startbattle - returnafterbattle + reloadmapafterbattle loadvar wAnthonyFightCount, 1 clearflag ENGINE_ANTHONY end @@ -76,7 +76,7 @@ TrainerHikerAnthony: .LoadFight1 loadtrainer HIKER, ANTHONY1 startbattle - returnafterbattle + reloadmapafterbattle loadvar wAnthonyFightCount, 2 clearflag ENGINE_ANTHONY end @@ -84,7 +84,7 @@ TrainerHikerAnthony: .LoadFight2 loadtrainer HIKER, ANTHONY3 startbattle - returnafterbattle + reloadmapafterbattle loadvar wAnthonyFightCount, 3 clearflag ENGINE_ANTHONY end @@ -92,7 +92,7 @@ TrainerHikerAnthony: .LoadFight3 loadtrainer HIKER, ANTHONY4 startbattle - returnafterbattle + reloadmapafterbattle loadvar wAnthonyFightCount, 4 clearflag ENGINE_ANTHONY end @@ -100,7 +100,7 @@ TrainerHikerAnthony: .LoadFight4 loadtrainer HIKER, ANTHONY5 startbattle - returnafterbattle + reloadmapafterbattle clearflag ENGINE_ANTHONY end diff --git a/maps/Route34.asm b/maps/Route34.asm index c5c1aee86..d17dea61c 100644 --- a/maps/Route34.asm +++ b/maps/Route34.asm @@ -145,7 +145,7 @@ TrainerCamperTodd1: .LoadFight0 loadtrainer CAMPER, TODD1 startbattle - returnafterbattle + reloadmapafterbattle loadvar wToddFightCount, 1 clearflag ENGINE_TODD end @@ -153,7 +153,7 @@ TrainerCamperTodd1: .LoadFight1 loadtrainer CAMPER, TODD2 startbattle - returnafterbattle + reloadmapafterbattle loadvar wToddFightCount, 2 clearflag ENGINE_TODD end @@ -161,7 +161,7 @@ TrainerCamperTodd1: .LoadFight2 loadtrainer CAMPER, TODD3 startbattle - returnafterbattle + reloadmapafterbattle loadvar wToddFightCount, 3 clearflag ENGINE_TODD end @@ -169,7 +169,7 @@ TrainerCamperTodd1: .LoadFight3 loadtrainer CAMPER, TODD4 startbattle - returnafterbattle + reloadmapafterbattle loadvar wToddFightCount, 4 clearflag ENGINE_TODD end @@ -177,7 +177,7 @@ TrainerCamperTodd1: .LoadFight4 loadtrainer CAMPER, TODD5 startbattle - returnafterbattle + reloadmapafterbattle clearflag ENGINE_TODD end @@ -270,7 +270,7 @@ TrainerPicnickerGina1: .LoadFight0 loadtrainer PICNICKER, GINA1 startbattle - returnafterbattle + reloadmapafterbattle loadvar wGinaFightCount, 1 clearflag ENGINE_GINA end @@ -278,7 +278,7 @@ TrainerPicnickerGina1: .LoadFight1 loadtrainer PICNICKER, GINA2 startbattle - returnafterbattle + reloadmapafterbattle loadvar wGinaFightCount, 2 clearflag ENGINE_GINA end @@ -286,7 +286,7 @@ TrainerPicnickerGina1: .LoadFight2 loadtrainer PICNICKER, GINA3 startbattle - returnafterbattle + reloadmapafterbattle loadvar wGinaFightCount, 3 clearflag ENGINE_GINA end @@ -294,7 +294,7 @@ TrainerPicnickerGina1: .LoadFight3 loadtrainer PICNICKER, GINA4 startbattle - returnafterbattle + reloadmapafterbattle loadvar wGinaFightCount, 4 clearflag ENGINE_GINA end @@ -302,7 +302,7 @@ TrainerPicnickerGina1: .LoadFight4 loadtrainer PICNICKER, GINA5 startbattle - returnafterbattle + reloadmapafterbattle clearflag ENGINE_GINA end @@ -367,7 +367,7 @@ OfficerKeithScript: winlosstext OfficerKeithWinText, 0 loadtrainer OFFICER, KEITH startbattle - returnafterbattle + reloadmapafterbattle setevent EVENT_BEAT_OFFICER_KEITH closetext end diff --git a/maps/Route35.asm b/maps/Route35.asm index d0e37ef8a..68f00f694 100644 --- a/maps/Route35.asm +++ b/maps/Route35.asm @@ -183,7 +183,7 @@ UnknownScript_0x19c9bb: .LoadFight0 loadtrainer BUG_CATCHER, ARNIE1 startbattle - returnafterbattle + reloadmapafterbattle loadvar wArnieFightCount, 1 clearflag ENGINE_ARNIE end @@ -191,7 +191,7 @@ UnknownScript_0x19c9bb: .LoadFight1 loadtrainer BUG_CATCHER, ARNIE2 startbattle - returnafterbattle + reloadmapafterbattle loadvar wArnieFightCount, 2 clearflag ENGINE_ARNIE end @@ -199,7 +199,7 @@ UnknownScript_0x19c9bb: .LoadFight2 loadtrainer BUG_CATCHER, ARNIE3 startbattle - returnafterbattle + reloadmapafterbattle loadvar wArnieFightCount, 3 clearflag ENGINE_ARNIE end @@ -207,7 +207,7 @@ UnknownScript_0x19c9bb: .LoadFight3 loadtrainer BUG_CATCHER, ARNIE4 startbattle - returnafterbattle + reloadmapafterbattle loadvar wArnieFightCount, 4 clearflag ENGINE_ARNIE end @@ -215,7 +215,7 @@ UnknownScript_0x19c9bb: .LoadFight4 loadtrainer BUG_CATCHER, ARNIE5 startbattle - returnafterbattle + reloadmapafterbattle clearflag ENGINE_ARNIE end @@ -250,7 +250,7 @@ OfficerScript_0x19ca49: winlosstext UnknownText_0x19cf06, 0 loadtrainer OFFICER, DIRK startbattle - returnafterbattle + reloadmapafterbattle setevent EVENT_BEAT_OFFICER_DIRK closetext end diff --git a/maps/Route36.asm b/maps/Route36.asm index aaa64ffe9..87e44c101 100644 --- a/maps/Route36.asm +++ b/maps/Route36.asm @@ -88,7 +88,7 @@ WateredWeirdTreeScript:: if_equal $2, UnknownScript_0x19407b disappear ROUTE36_WEIRD_TREE variablesprite SPRITE_WEIRD_TREE, SPRITE_TWIN - returnafterbattle + reloadmapafterbattle end UnknownScript_0x194079: @@ -96,7 +96,7 @@ UnknownScript_0x194079: end UnknownScript_0x19407b: - returnafterbattle + reloadmapafterbattle applymovement ROUTE36_WEIRD_TREE, MovementData_0x19424b disappear ROUTE36_WEIRD_TREE variablesprite SPRITE_WEIRD_TREE, SPRITE_TWIN @@ -227,7 +227,7 @@ UnknownScript_0x194140: .LoadFight0 loadtrainer SCHOOLBOY, ALAN1 startbattle - returnafterbattle + reloadmapafterbattle loadvar wAlanFightCount, 1 clearflag ENGINE_ALAN end @@ -235,7 +235,7 @@ UnknownScript_0x194140: .LoadFight1 loadtrainer SCHOOLBOY, ALAN2 startbattle - returnafterbattle + reloadmapafterbattle loadvar wAlanFightCount, 2 clearflag ENGINE_ALAN end @@ -243,7 +243,7 @@ UnknownScript_0x194140: .LoadFight2 loadtrainer SCHOOLBOY, ALAN3 startbattle - returnafterbattle + reloadmapafterbattle loadvar wAlanFightCount, 3 clearflag ENGINE_ALAN end @@ -251,7 +251,7 @@ UnknownScript_0x194140: .LoadFight3 loadtrainer SCHOOLBOY, ALAN4 startbattle - returnafterbattle + reloadmapafterbattle loadvar wAlanFightCount, 4 clearflag ENGINE_ALAN end @@ -259,7 +259,7 @@ UnknownScript_0x194140: .LoadFight4 loadtrainer SCHOOLBOY, ALAN5 startbattle - returnafterbattle + reloadmapafterbattle clearflag ENGINE_ALAN end diff --git a/maps/Route38.asm b/maps/Route38.asm index 5946ab582..14d7cf852 100644 --- a/maps/Route38.asm +++ b/maps/Route38.asm @@ -91,7 +91,7 @@ TrainerLassDana1: .LoadFight0 loadtrainer LASS, DANA1 startbattle - returnafterbattle + reloadmapafterbattle loadvar wDanaFightCount, 1 clearflag ENGINE_DANA end @@ -99,7 +99,7 @@ TrainerLassDana1: .LoadFight1 loadtrainer LASS, DANA2 startbattle - returnafterbattle + reloadmapafterbattle loadvar wDanaFightCount, 2 clearflag ENGINE_DANA end @@ -107,7 +107,7 @@ TrainerLassDana1: .LoadFight2 loadtrainer LASS, DANA3 startbattle - returnafterbattle + reloadmapafterbattle loadvar wDanaFightCount, 3 clearflag ENGINE_DANA end @@ -115,7 +115,7 @@ TrainerLassDana1: .LoadFight3 loadtrainer LASS, DANA4 startbattle - returnafterbattle + reloadmapafterbattle loadvar wDanaFightCount, 4 clearflag ENGINE_DANA end @@ -123,7 +123,7 @@ TrainerLassDana1: .LoadFight4 loadtrainer LASS, DANA5 startbattle - returnafterbattle + reloadmapafterbattle clearflag ENGINE_DANA end @@ -227,7 +227,7 @@ TrainerSchoolboyChad1: .LoadFight0 loadtrainer SCHOOLBOY, CHAD1 startbattle - returnafterbattle + reloadmapafterbattle loadvar wChadFightCount, 1 clearflag ENGINE_CHAD end @@ -235,7 +235,7 @@ TrainerSchoolboyChad1: .LoadFight1 loadtrainer SCHOOLBOY, CHAD2 startbattle - returnafterbattle + reloadmapafterbattle loadvar wChadFightCount, 2 clearflag ENGINE_CHAD end @@ -243,7 +243,7 @@ TrainerSchoolboyChad1: .LoadFight2 loadtrainer SCHOOLBOY, CHAD3 startbattle - returnafterbattle + reloadmapafterbattle loadvar wChadFightCount, 3 clearflag ENGINE_CHAD end @@ -251,7 +251,7 @@ TrainerSchoolboyChad1: .LoadFight3 loadtrainer SCHOOLBOY, CHAD4 startbattle - returnafterbattle + reloadmapafterbattle loadvar wChadFightCount, 4 clearflag ENGINE_CHAD end @@ -259,7 +259,7 @@ TrainerSchoolboyChad1: .LoadFight4 loadtrainer SCHOOLBOY, CHAD5 startbattle - returnafterbattle + reloadmapafterbattle clearflag ENGINE_CHAD end diff --git a/maps/Route39.asm b/maps/Route39.asm index bdd247829..bf8b1c772 100644 --- a/maps/Route39.asm +++ b/maps/Route39.asm @@ -150,7 +150,7 @@ PokefanFScript_0x1a5bbe: winlosstext UnknownText_0x1a5f17, 0 loadtrainer POKEFANF, JAIME startbattle - returnafterbattle + reloadmapafterbattle setevent EVENT_BEAT_POKEFANF_JAIME closetext end diff --git a/maps/Route42.asm b/maps/Route42.asm index a85512ff4..a58e7c27b 100644 --- a/maps/Route42.asm +++ b/maps/Route42.asm @@ -89,7 +89,7 @@ UnknownScript_0x1a927f: .LoadFight0 loadtrainer FISHER, TULLY1 startbattle - returnafterbattle + reloadmapafterbattle loadvar wTullyFightCount, 1 clearflag ENGINE_TULLY end @@ -97,7 +97,7 @@ UnknownScript_0x1a927f: .LoadFight1 loadtrainer FISHER, TULLY2 startbattle - returnafterbattle + reloadmapafterbattle loadvar wTullyFightCount, 2 clearflag ENGINE_TULLY end @@ -105,7 +105,7 @@ UnknownScript_0x1a927f: .LoadFight2 loadtrainer FISHER, TULLY3 startbattle - returnafterbattle + reloadmapafterbattle loadvar wTullyFightCount, 3 clearflag ENGINE_TULLY end @@ -113,7 +113,7 @@ UnknownScript_0x1a927f: .LoadFight3 loadtrainer FISHER, TULLY4 startbattle - returnafterbattle + reloadmapafterbattle clearflag ENGINE_TULLY end diff --git a/maps/Route43.asm b/maps/Route43.asm index bb68bd59d..ddc2bfa1c 100644 --- a/maps/Route43.asm +++ b/maps/Route43.asm @@ -100,7 +100,7 @@ UnknownScript_0x19d0cf: .LoadFight0 loadtrainer POKEMANIAC, BRENT1 startbattle - returnafterbattle + reloadmapafterbattle loadvar wBrentFightCount, 1 clearflag ENGINE_BRENT end @@ -108,7 +108,7 @@ UnknownScript_0x19d0cf: .LoadFight1 loadtrainer POKEMANIAC, BRENT2 startbattle - returnafterbattle + reloadmapafterbattle loadvar wBrentFightCount, 2 clearflag ENGINE_BRENT end @@ -116,7 +116,7 @@ UnknownScript_0x19d0cf: .LoadFight2 loadtrainer POKEMANIAC, BRENT3 startbattle - returnafterbattle + reloadmapafterbattle loadvar wBrentFightCount, 3 clearflag ENGINE_BRENT end @@ -124,7 +124,7 @@ UnknownScript_0x19d0cf: .LoadFight3 loadtrainer POKEMANIAC, BRENT4 startbattle - returnafterbattle + reloadmapafterbattle clearflag ENGINE_BRENT end @@ -231,7 +231,7 @@ UnknownScript_0x19d1c1: .LoadFight0 loadtrainer PICNICKER, TIFFANY3 startbattle - returnafterbattle + reloadmapafterbattle loadvar wTiffanyFightCount, 1 clearflag ENGINE_TIFFANY end @@ -239,7 +239,7 @@ UnknownScript_0x19d1c1: .LoadFight1 loadtrainer PICNICKER, TIFFANY1 startbattle - returnafterbattle + reloadmapafterbattle loadvar wTiffanyFightCount, 2 clearflag ENGINE_TIFFANY end @@ -247,7 +247,7 @@ UnknownScript_0x19d1c1: .LoadFight2 loadtrainer PICNICKER, TIFFANY2 startbattle - returnafterbattle + reloadmapafterbattle loadvar wTiffanyFightCount, 3 clearflag ENGINE_TIFFANY end @@ -255,7 +255,7 @@ UnknownScript_0x19d1c1: .LoadFight3 loadtrainer PICNICKER, TIFFANY4 startbattle - returnafterbattle + reloadmapafterbattle clearflag ENGINE_TIFFANY end diff --git a/maps/Route44.asm b/maps/Route44.asm index a9eceb5b9..371099ab8 100644 --- a/maps/Route44.asm +++ b/maps/Route44.asm @@ -63,7 +63,7 @@ UnknownScript_0x19d86a: .LoadFight0 loadtrainer BIRD_KEEPER, VANCE1 startbattle - returnafterbattle + reloadmapafterbattle loadvar wVanceFightCount, 1 clearflag ENGINE_VANCE end @@ -71,7 +71,7 @@ UnknownScript_0x19d86a: .LoadFight1 loadtrainer BIRD_KEEPER, VANCE2 startbattle - returnafterbattle + reloadmapafterbattle loadvar wVanceFightCount, 2 clearflag ENGINE_VANCE end @@ -79,7 +79,7 @@ UnknownScript_0x19d86a: .LoadFight2 loadtrainer BIRD_KEEPER, VANCE3 startbattle - returnafterbattle + reloadmapafterbattle clearflag ENGINE_VANCE checkevent EVENT_VANCE_CARBOS iftrue UnknownScript_0x19d8cb @@ -207,7 +207,7 @@ UnknownScript_0x19d96e: .LoadFight0 loadtrainer FISHER, WILTON1 startbattle - returnafterbattle + reloadmapafterbattle loadvar wWiltonFightCount, 1 clearflag ENGINE_WILTON end @@ -215,7 +215,7 @@ UnknownScript_0x19d96e: .LoadFight1 loadtrainer FISHER, WILTON2 startbattle - returnafterbattle + reloadmapafterbattle loadvar wWiltonFightCount, 2 clearflag ENGINE_WILTON end @@ -223,7 +223,7 @@ UnknownScript_0x19d96e: .LoadFight2 loadtrainer FISHER, WILTON3 startbattle - returnafterbattle + reloadmapafterbattle clearflag ENGINE_WILTON end diff --git a/maps/Route45.asm b/maps/Route45.asm index 9d4fecbf1..d2ded8765 100644 --- a/maps/Route45.asm +++ b/maps/Route45.asm @@ -191,7 +191,7 @@ UnknownScript_0x19e1b8: .LoadFight0 loadtrainer HIKER, PARRY3 startbattle - returnafterbattle + reloadmapafterbattle loadvar wParryFightCount, 1 clearflag ENGINE_PARRY end @@ -199,7 +199,7 @@ UnknownScript_0x19e1b8: .LoadFight1 loadtrainer HIKER, PARRY1 startbattle - returnafterbattle + reloadmapafterbattle loadvar wParryFightCount, 2 clearflag ENGINE_PARRY end @@ -207,7 +207,7 @@ UnknownScript_0x19e1b8: .LoadFight2 loadtrainer HIKER, PARRY2 startbattle - returnafterbattle + reloadmapafterbattle clearflag ENGINE_PARRY checkevent EVENT_PARRY_IRON iftrue UnknownScript_0x19e219 @@ -276,7 +276,7 @@ YoungsterScript_0x19e269: winlosstext UnknownText_0x19e899, 0 loadtrainer CAMPER, QUENTIN startbattle - returnafterbattle + reloadmapafterbattle setevent EVENT_BEAT_CAMPER_QUENTIN closetext end diff --git a/maps/Route46.asm b/maps/Route46.asm index 00517f46c..ff7bcb463 100644 --- a/maps/Route46.asm +++ b/maps/Route46.asm @@ -69,7 +69,7 @@ UnknownScript_0x1a96da: .LoadFight0 loadtrainer PICNICKER, ERIN1 startbattle - returnafterbattle + reloadmapafterbattle loadvar wErinFightCount, 1 clearflag ENGINE_ERIN end @@ -77,7 +77,7 @@ UnknownScript_0x1a96da: .LoadFight1 loadtrainer PICNICKER, ERIN2 startbattle - returnafterbattle + reloadmapafterbattle loadvar wErinFightCount, 2 clearflag ENGINE_ERIN end @@ -85,7 +85,7 @@ UnknownScript_0x1a96da: .LoadFight2 loadtrainer PICNICKER, ERIN3 startbattle - returnafterbattle + reloadmapafterbattle clearflag ENGINE_ERIN checkevent EVENT_ERIN_CALCIUM iftrue UnknownScript_0x1a973b diff --git a/maps/SaffronGym.asm b/maps/SaffronGym.asm index 518e56fae..7ff9f504c 100644 --- a/maps/SaffronGym.asm +++ b/maps/SaffronGym.asm @@ -24,7 +24,7 @@ SabrinaScript_0x189c2e: winlosstext UnknownText_0x189df4, 0 loadtrainer SABRINA, 1 startbattle - returnafterbattle + reloadmapafterbattle setevent EVENT_BEAT_SABRINA setevent EVENT_BEAT_MEDIUM_REBECCA setevent EVENT_BEAT_MEDIUM_DORIS diff --git a/maps/SeafoamGym.asm b/maps/SeafoamGym.asm index 73d6f949b..82bfa156f 100644 --- a/maps/SeafoamGym.asm +++ b/maps/SeafoamGym.asm @@ -29,7 +29,7 @@ BlaineScript_0x1ab4fb: iftrue .ReturnAfterBattle appear SEAFOAMGYM_GYM_GUY .ReturnAfterBattle - returnafterbattle + reloadmapafterbattle setevent EVENT_BEAT_BLAINE opentext writetext UnknownText_0x1ab683 diff --git a/maps/SilverCaveRoom3.asm b/maps/SilverCaveRoom3.asm index b1187ab74..0a8933b67 100644 --- a/maps/SilverCaveRoom3.asm +++ b/maps/SilverCaveRoom3.asm @@ -18,8 +18,8 @@ RedScript_0x18c603: winlosstext UnknownText_0x18c63c, UnknownText_0x18c63c loadtrainer RED, 1 startbattle - reloadmapmusic - returnafterbattle + dontrestartmapmusic + reloadmapafterbattle special Special_FadeOutMusic opentext writetext UnknownText_0x18c63f diff --git a/maps/SproutTower3F.asm b/maps/SproutTower3F.asm index ed798c12f..03c49ee0b 100644 --- a/maps/SproutTower3F.asm +++ b/maps/SproutTower3F.asm @@ -76,7 +76,7 @@ SageLiScript: winlosstext SageLiBeatenText, 0 loadtrainer SAGE, LI startbattle - returnafterbattle + reloadmapafterbattle opentext writetext UnknownText_0x184cc2 buttonsound diff --git a/maps/TeamRocketBaseB1F.asm b/maps/TeamRocketBaseB1F.asm index 9a137ce56..de9012ab0 100644 --- a/maps/TeamRocketBaseB1F.asm +++ b/maps/TeamRocketBaseB1F.asm @@ -246,7 +246,7 @@ TrainerCameraGrunt1: loadtrainer GRUNTM, 20 startbattle disappear TEAMROCKETBASEB1F_ROCKET1 - returnafterbattle + reloadmapafterbattle end TrainerCameraGrunt2: @@ -259,7 +259,7 @@ TrainerCameraGrunt2: loadtrainer GRUNTM, 21 startbattle disappear TEAMROCKETBASEB1F_ROCKET1 - returnafterbattle + reloadmapafterbattle end PlaySecurityCameraSounds: @@ -280,7 +280,7 @@ ExplodingTrap1: checkevent EVENT_EXPLODING_TRAP_1 iftrue NoExplodingTrap scall KoffingExplodingTrap - returnafterbattle + reloadmapafterbattle setevent EVENT_EXPLODING_TRAP_1 end @@ -288,7 +288,7 @@ ExplodingTrap2: checkevent EVENT_EXPLODING_TRAP_2 iftrue NoExplodingTrap scall VoltorbExplodingTrap - returnafterbattle + reloadmapafterbattle setevent EVENT_EXPLODING_TRAP_2 end @@ -296,7 +296,7 @@ ExplodingTrap3: checkevent EVENT_EXPLODING_TRAP_3 iftrue NoExplodingTrap scall GeodudeExplodingTrap - returnafterbattle + reloadmapafterbattle setevent EVENT_EXPLODING_TRAP_3 end @@ -304,7 +304,7 @@ ExplodingTrap4: checkevent EVENT_EXPLODING_TRAP_4 iftrue NoExplodingTrap scall VoltorbExplodingTrap - returnafterbattle + reloadmapafterbattle setevent EVENT_EXPLODING_TRAP_4 end @@ -312,7 +312,7 @@ ExplodingTrap5: checkevent EVENT_EXPLODING_TRAP_5 iftrue NoExplodingTrap scall GeodudeExplodingTrap - returnafterbattle + reloadmapafterbattle setevent EVENT_EXPLODING_TRAP_5 end @@ -320,7 +320,7 @@ ExplodingTrap6: checkevent EVENT_EXPLODING_TRAP_6 iftrue NoExplodingTrap scall KoffingExplodingTrap - returnafterbattle + reloadmapafterbattle setevent EVENT_EXPLODING_TRAP_6 end @@ -328,7 +328,7 @@ ExplodingTrap7: checkevent EVENT_EXPLODING_TRAP_7 iftrue NoExplodingTrap scall VoltorbExplodingTrap - returnafterbattle + reloadmapafterbattle setevent EVENT_EXPLODING_TRAP_7 end @@ -336,7 +336,7 @@ ExplodingTrap8: checkevent EVENT_EXPLODING_TRAP_8 iftrue NoExplodingTrap scall KoffingExplodingTrap - returnafterbattle + reloadmapafterbattle setevent EVENT_EXPLODING_TRAP_8 end @@ -344,7 +344,7 @@ ExplodingTrap9: checkevent EVENT_EXPLODING_TRAP_9 iftrue NoExplodingTrap scall KoffingExplodingTrap - returnafterbattle + reloadmapafterbattle setevent EVENT_EXPLODING_TRAP_9 end @@ -352,7 +352,7 @@ ExplodingTrap10: checkevent EVENT_EXPLODING_TRAP_10 iftrue NoExplodingTrap scall VoltorbExplodingTrap - returnafterbattle + reloadmapafterbattle setevent EVENT_EXPLODING_TRAP_10 end @@ -360,7 +360,7 @@ ExplodingTrap11: checkevent EVENT_EXPLODING_TRAP_11 iftrue NoExplodingTrap scall GeodudeExplodingTrap - returnafterbattle + reloadmapafterbattle setevent EVENT_EXPLODING_TRAP_11 end @@ -368,7 +368,7 @@ ExplodingTrap12: checkevent EVENT_EXPLODING_TRAP_12 iftrue NoExplodingTrap scall GeodudeExplodingTrap - returnafterbattle + reloadmapafterbattle setevent EVENT_EXPLODING_TRAP_12 end @@ -376,7 +376,7 @@ ExplodingTrap13: checkevent EVENT_EXPLODING_TRAP_13 iftrue NoExplodingTrap scall GeodudeExplodingTrap - returnafterbattle + reloadmapafterbattle setevent EVENT_EXPLODING_TRAP_13 end @@ -384,7 +384,7 @@ ExplodingTrap14: checkevent EVENT_EXPLODING_TRAP_14 iftrue NoExplodingTrap scall KoffingExplodingTrap - returnafterbattle + reloadmapafterbattle setevent EVENT_EXPLODING_TRAP_14 end @@ -392,7 +392,7 @@ ExplodingTrap15: checkevent EVENT_EXPLODING_TRAP_15 iftrue NoExplodingTrap scall VoltorbExplodingTrap - returnafterbattle + reloadmapafterbattle setevent EVENT_EXPLODING_TRAP_15 end @@ -400,7 +400,7 @@ ExplodingTrap16: checkevent EVENT_EXPLODING_TRAP_16 iftrue NoExplodingTrap scall KoffingExplodingTrap - returnafterbattle + reloadmapafterbattle setevent EVENT_EXPLODING_TRAP_16 end @@ -408,7 +408,7 @@ ExplodingTrap17: checkevent EVENT_EXPLODING_TRAP_17 iftrue NoExplodingTrap scall VoltorbExplodingTrap - returnafterbattle + reloadmapafterbattle setevent EVENT_EXPLODING_TRAP_17 end @@ -416,7 +416,7 @@ ExplodingTrap18: checkevent EVENT_EXPLODING_TRAP_18 iftrue NoExplodingTrap scall GeodudeExplodingTrap - returnafterbattle + reloadmapafterbattle setevent EVENT_EXPLODING_TRAP_18 end @@ -424,7 +424,7 @@ ExplodingTrap19: checkevent EVENT_EXPLODING_TRAP_19 iftrue NoExplodingTrap scall GeodudeExplodingTrap - returnafterbattle + reloadmapafterbattle setevent EVENT_EXPLODING_TRAP_19 end @@ -432,7 +432,7 @@ ExplodingTrap20: checkevent EVENT_EXPLODING_TRAP_20 iftrue NoExplodingTrap scall VoltorbExplodingTrap - returnafterbattle + reloadmapafterbattle setevent EVENT_EXPLODING_TRAP_20 end @@ -440,7 +440,7 @@ ExplodingTrap21: checkevent EVENT_EXPLODING_TRAP_21 iftrue NoExplodingTrap scall KoffingExplodingTrap - returnafterbattle + reloadmapafterbattle setevent EVENT_EXPLODING_TRAP_21 end @@ -448,7 +448,7 @@ ExplodingTrap22: checkevent EVENT_EXPLODING_TRAP_22 iftrue NoExplodingTrap scall VoltorbExplodingTrap - returnafterbattle + reloadmapafterbattle setevent EVENT_EXPLODING_TRAP_22 end diff --git a/maps/TeamRocketBaseB2F.asm b/maps/TeamRocketBaseB2F.asm index 36377d5ea..3a675f92e 100644 --- a/maps/TeamRocketBaseB2F.asm +++ b/maps/TeamRocketBaseB2F.asm @@ -108,7 +108,7 @@ UnknownScript_0x6cfac: setevent EVENT_TEAM_ROCKET_BASE_B2F_EXECUTIVE setevent EVENT_TEAM_ROCKET_BASE_B2F_GRUNT_WITH_EXECUTIVE setevent EVENT_TEAM_ROCKET_BASE_B2F_LANCE - returnafterbattle + reloadmapafterbattle setevent EVENT_BEAT_ROCKET_EXECUTIVEF_2 opentext writetext UnknownText_0x6d4c6 @@ -239,7 +239,7 @@ VoltorbScript_0x6d101: iffalse UnknownScript_0x6d182 checkevent EVENT_TEAM_ROCKET_BASE_B2F_ELECTRODE_3 iffalse UnknownScript_0x6d182 - returnafterbattle + reloadmapafterbattle special PlayMapMusic applymovement PLAYER, MovementData_0x6d28c jump UnknownScript_0x6d184 @@ -257,7 +257,7 @@ VoltorbScript_0x6d12c: iffalse UnknownScript_0x6d182 checkevent EVENT_TEAM_ROCKET_BASE_B2F_ELECTRODE_3 iffalse UnknownScript_0x6d182 - returnafterbattle + reloadmapafterbattle special PlayMapMusic applymovement PLAYER, MovementData_0x6d299 jump UnknownScript_0x6d184 @@ -275,13 +275,13 @@ VoltorbScript_0x6d157: iffalse UnknownScript_0x6d182 checkevent EVENT_TEAM_ROCKET_BASE_B2F_ELECTRODE_3 iffalse UnknownScript_0x6d182 - returnafterbattle + reloadmapafterbattle special PlayMapMusic applymovement PLAYER, MovementData_0x6d2a4 jump UnknownScript_0x6d184 UnknownScript_0x6d182: - returnafterbattle + reloadmapafterbattle end UnknownScript_0x6d184: diff --git a/maps/TeamRocketBaseB3F.asm b/maps/TeamRocketBaseB3F.asm index c1cf917cd..a55e2c125 100644 --- a/maps/TeamRocketBaseB3F.asm +++ b/maps/TeamRocketBaseB3F.asm @@ -111,7 +111,7 @@ UnknownScript_0x6e056: setlasttalked TEAMROCKETBASEB3F_ROCKET1 loadtrainer EXECUTIVEM, 4 startbattle - returnafterbattle + reloadmapafterbattle setevent EVENT_BEAT_ROCKET_EXECUTIVEM_4 opentext writetext UnknownText_0x6e548 diff --git a/maps/TinTower1F.asm b/maps/TinTower1F.asm index 6a373b638..b0164dc88 100644 --- a/maps/TinTower1F.asm +++ b/maps/TinTower1F.asm @@ -127,7 +127,7 @@ UnknownScript_0x1850d7: loadwildmon SUICUNE, 40 writecode VAR_BATTLETYPE, BATTLETYPE_SUICUNE startbattle - reloadmapmusic + dontrestartmapmusic disappear TINTOWER1F_SUICUNE setevent EVENT_FOUGHT_SUICUNE setevent EVENT_SAW_SUICUNE_ON_ROUTE_42 @@ -138,7 +138,7 @@ UnknownScript_0x1850d7: domaptrigger CIANWOOD_CITY, $0 dotrigger $1 clearevent EVENT_SET_WHEN_FOUGHT_HO_OH - returnafterbattle + reloadmapafterbattle pause 20 spriteface PLAYER, DOWN playmusic MUSIC_MYSTICALMAN_ENCOUNTER diff --git a/maps/TinTowerRoof.asm b/maps/TinTowerRoof.asm index a24878415..61698aeae 100644 --- a/maps/TinTowerRoof.asm +++ b/maps/TinTowerRoof.asm @@ -39,7 +39,7 @@ HoOhScript_0x77244: loadwildmon HO_OH, 60 startbattle disappear TINTOWERROOF_HO_OH - returnafterbattle + reloadmapafterbattle setevent EVENT_SET_WHEN_FOUGHT_HO_OH end diff --git a/maps/TrainerHouseB1F.asm b/maps/TrainerHouseB1F.asm index c06c9ff41..bca44441c 100644 --- a/maps/TrainerHouseB1F.asm +++ b/maps/TrainerHouseB1F.asm @@ -50,14 +50,14 @@ TrainerHouseReceptionistScript: setlasttalked TRAINERHOUSEB1F_CHRIS loadtrainer CAL, CAL2 startbattle - returnafterbattle + reloadmapafterbattle iffalse .End .NoSpecialBattle: winlosstext TrainerHouseB1FCalBeatenText, 0 setlasttalked TRAINERHOUSEB1F_CHRIS loadtrainer CAL, CAL3 startbattle - returnafterbattle + reloadmapafterbattle .End: applymovement PLAYER, Movement_ExitTrainerHouseBattleRoom end diff --git a/maps/UndergroundPathSwitchRoomEntrances.asm b/maps/UndergroundPathSwitchRoomEntrances.asm index 58e569e84..20a2a338d 100644 --- a/maps/UndergroundPathSwitchRoomEntrances.asm +++ b/maps/UndergroundPathSwitchRoomEntrances.asm @@ -180,8 +180,8 @@ UndergroundSilverBattleScript: setlasttalked UNDERGROUNDPATHSWITCHROOMENTRANCES_SILVER loadtrainer RIVAL1, RIVAL1_12 startbattle - reloadmapmusic - returnafterbattle + dontrestartmapmusic + reloadmapafterbattle jump .FinishRivalBattle .Totodile: @@ -189,8 +189,8 @@ UndergroundSilverBattleScript: setlasttalked UNDERGROUNDPATHSWITCHROOMENTRANCES_SILVER loadtrainer RIVAL1, RIVAL1_10 startbattle - reloadmapmusic - returnafterbattle + dontrestartmapmusic + reloadmapafterbattle jump .FinishRivalBattle .Chikorita: @@ -198,8 +198,8 @@ UndergroundSilverBattleScript: setlasttalked UNDERGROUNDPATHSWITCHROOMENTRANCES_SILVER loadtrainer RIVAL1, RIVAL1_11 startbattle - reloadmapmusic - returnafterbattle + dontrestartmapmusic + reloadmapafterbattle jump .FinishRivalBattle .FinishRivalBattle: diff --git a/maps/UnionCaveB2F.asm b/maps/UnionCaveB2F.asm index 86e6eacf3..0425c1d67 100644 --- a/maps/UnionCaveB2F.asm +++ b/maps/UnionCaveB2F.asm @@ -37,7 +37,7 @@ SurfScript_0x5a31f: startbattle disappear UNIONCAVEB2F_SURF setflag ENGINE_UNION_CAVE_LAPRAS - returnafterbattle + reloadmapafterbattle end TrainerCooltrainermNick: diff --git a/maps/VermilionCity.asm b/maps/VermilionCity.asm index b47f39693..90b18c6b7 100644 --- a/maps/VermilionCity.asm +++ b/maps/VermilionCity.asm @@ -61,7 +61,7 @@ UnknownScript_0x1aa9ab: startbattle disappear VERMILIONCITY_BIG_SNORLAX setevent EVENT_FOUGHT_SNORLAX - returnafterbattle + reloadmapafterbattle end VermilionGymBadgeGuy: diff --git a/maps/VermilionGym.asm b/maps/VermilionGym.asm index 4040997e1..209986a0f 100644 --- a/maps/VermilionGym.asm +++ b/maps/VermilionGym.asm @@ -23,7 +23,7 @@ SurgeScript_0x1920a5: winlosstext UnknownText_0x192238, 0 loadtrainer LT_SURGE, 1 startbattle - returnafterbattle + reloadmapafterbattle setevent EVENT_BEAT_LTSURGE setevent EVENT_BEAT_GENTLEMAN_GREGORY setevent EVENT_BEAT_GUITARIST_VINCENT diff --git a/maps/VictoryRoad.asm b/maps/VictoryRoad.asm index f4cf89575..1e4b4ab72 100644 --- a/maps/VictoryRoad.asm +++ b/maps/VictoryRoad.asm @@ -68,8 +68,8 @@ UnknownScript_0x744d4: setlasttalked VICTORYROAD_SILVER loadtrainer RIVAL1, RIVAL1_15 startbattle - reloadmapmusic - returnafterbattle + dontrestartmapmusic + reloadmapafterbattle jump UnknownScript_0x7451f UnknownScript_0x744ff: @@ -77,8 +77,8 @@ UnknownScript_0x744ff: setlasttalked VICTORYROAD_SILVER loadtrainer RIVAL1, RIVAL1_13 startbattle - reloadmapmusic - returnafterbattle + dontrestartmapmusic + reloadmapafterbattle jump UnknownScript_0x7451f UnknownScript_0x7450f: @@ -86,8 +86,8 @@ UnknownScript_0x7450f: setlasttalked VICTORYROAD_SILVER loadtrainer RIVAL1, RIVAL1_14 startbattle - reloadmapmusic - returnafterbattle + dontrestartmapmusic + reloadmapafterbattle jump UnknownScript_0x7451f UnknownScript_0x7451f: diff --git a/maps/VioletGym.asm b/maps/VioletGym.asm index 99dfcb184..28c1dd218 100644 --- a/maps/VioletGym.asm +++ b/maps/VioletGym.asm @@ -22,7 +22,7 @@ FalknerScript_0x683c2: winlosstext UnknownText_0x6854a, 0 loadtrainer FALKNER, 1 startbattle - returnafterbattle + reloadmapafterbattle setevent EVENT_BEAT_FALKNER opentext writetext UnknownText_0x685af diff --git a/maps/ViridianGym.asm b/maps/ViridianGym.asm index fabb3b91d..b277f34b0 100644 --- a/maps/ViridianGym.asm +++ b/maps/ViridianGym.asm @@ -20,7 +20,7 @@ BlueScript_0x9aa26: winlosstext UnknownText_0x9abae, 0 loadtrainer BLUE, 1 startbattle - returnafterbattle + reloadmapafterbattle setevent EVENT_BEAT_BLUE opentext writetext UnknownText_0x9ac0f diff --git a/maps/WhirlIslandLugiaChamber.asm b/maps/WhirlIslandLugiaChamber.asm index 26d327faa..be55b8345 100644 --- a/maps/WhirlIslandLugiaChamber.asm +++ b/maps/WhirlIslandLugiaChamber.asm @@ -39,7 +39,7 @@ LugiaScript_0x18c518: loadwildmon LUGIA, 60 startbattle disappear WHIRLISLANDLUGIACHAMBER_LUGIA - returnafterbattle + reloadmapafterbattle end UnknownText_0x18c531: diff --git a/maps/WillsRoom.asm b/maps/WillsRoom.asm index b2eb59257..1ff5d3c40 100644 --- a/maps/WillsRoom.asm +++ b/maps/WillsRoom.asm @@ -58,7 +58,7 @@ WillScript_0x1804f8: winlosstext UnknownText_0x18062c, 0 loadtrainer WILL, 1 startbattle - returnafterbattle + reloadmapafterbattle setevent EVENT_BEAT_ELITE_4_WILL opentext writetext UnknownText_0x180644 diff --git a/misc/fixed_words.asm b/misc/fixed_words.asm index 4f56936a8..d1706778a 100755 --- a/misc/fixed_words.asm +++ b/misc/fixed_words.asm @@ -1281,7 +1281,7 @@ Function11c86e: ; 11c86e (47:486e) and a jr z, .asm_11c88a hlcoord 2, 17 - ld de, String_11c8f0 + ld de, MobileString_Prev call PlaceString hlcoord 6, 17 ld c, $3 @@ -1308,7 +1308,7 @@ Function11c86e: ; 11c86e (47:486e) cp [hl] jr nc, .asm_11c8b7 hlcoord 16, 17 - ld de, String_11c8f3 + ld de, MobileString_Next call PlaceString hlcoord 11, 17 ld a, $3 @@ -1332,7 +1332,7 @@ Function11c86e: ; 11c86e (47:486e) ret ; 11c8c7 (47:48c7) -Function11c8c7: ; 11c8c7 +BCD2String: ; 11c8c7 inc a push af and $f @@ -1340,30 +1340,30 @@ Function11c8c7: ; 11c8c7 pop af and $f0 swap a - ld [hQuotient], a + ld [hDividend + 1], a xor a - ld [$ffb5], a + ld [hDividend + 2], a push hl callba Function11a80c pop hl ld a, [wcd63] - add $f6 + add "0" ld [hli], a ld a, [wcd62] - add $f6 + add "0" ld [hli], a ret ; 11c8ec -String_11c8ec: ; 11c8ec +MobileString_Page: ; 11c8ec db "ぺージ@" ; 11c8f0 -String_11c8f0: ; 11c8f0 +MobileString_Prev: ; 11c8f0 db "まえ@" ; 11c8f3 -String_11c8f3: ; 11c8f3 +MobileString_Next: ; 11c8f3 db "つぎ@" ; 11c8f6 diff --git a/misc/mobile_12.asm b/misc/mobile_12.asm index eb601df17..f6e0e00e1 100755 --- a/misc/mobile_12.asm +++ b/misc/mobile_12.asm @@ -49,8 +49,8 @@ InitMobileProfile: ; 4802f (12:402f) call GetMysteryGift_MobileAdapterLayout call ClearBGPalettes hlcoord 0, 0 - ld b, $2 - ld c, $14 + ld b, 2 + ld c, 20 call ClearBox hlcoord 0, 1 ld a, $c diff --git a/misc/mobile_22_2.asm b/misc/mobile_22_2.asm index 080c21890..299c6643c 100644 --- a/misc/mobile_22_2.asm +++ b/misc/mobile_22_2.asm @@ -48,7 +48,7 @@ Function8b35d: ; 8b35d Function8b363: ; 8b363 push bc - callba Function10632f + callba Mobile_AlwaysReturnNotCarry pop bc ret ; 8b36c diff --git a/misc/mobile_40.asm b/misc/mobile_40.asm index 251876458..5d2799f0f 100644 --- a/misc/mobile_40.asm +++ b/misc/mobile_40.asm @@ -1808,7 +1808,7 @@ Function100b12: ; 100b12 ld [wMenuCursorBuffer], a call Function100e72 call Function100b45 - callba Function8e85 + callba InitBattlePartyMenuPals call Function100ed4 ld a, [wMenuCursorBuffer] ld [wd0d2], a @@ -1866,7 +1866,7 @@ MobileMoveSelectionScreen: ; 100b9f call Function100e72 call Function100bc2 push af - callba Function8e85 + callba InitBattlePartyMenuPals call Function100ed4 pop af ret @@ -2159,14 +2159,14 @@ Function100db0: ; 100db0 Function100dc0: ; 100dc0 ld a, [wLinkMode] cp LINK_MOBILE - jr nz, .asm_100dd0 + jr nz, .mobile ld hl, wcd2a bit 3, [hl] - jr z, .asm_100dd0 + jr z, .mobile scf ret -.asm_100dd0 +.mobile xor a ret ; 100dd2 @@ -2597,7 +2597,7 @@ Function10107d: ; 10107d ld bc, NAME_LENGTH call .CopyAllFromOT ld hl, OTPartyMonOT - ld de, wc656 + 1 + ld de, OTName + 1 ld bc, NAME_LENGTH call .CopyAllFromOT ld hl, OTPartyMon1Species @@ -7784,7 +7784,7 @@ MenuData2_103648: ; 103648 ; 103654 Function103654: ; 103654 - callba Function10632f + callba Mobile_AlwaysReturnNotCarry bit 7, c jr nz, .asm_103666 ld hl, wcd2a @@ -7800,7 +7800,7 @@ Function103654: ; 103654 ; 10366e Mobile_SelectThreeMons: ; 10366e - callba Function10632f + callba Mobile_AlwaysReturnNotCarry bit 7, c jr z, .asm_10369b ld hl, UnknownText_0x10375d @@ -8074,7 +8074,7 @@ UnknownText_0x10381e: ; 0x10381e ; 0x103823 Function103823: ; 103823 - callba Function10632f + callba Mobile_AlwaysReturnNotCarry bit 7, c jr nz, .asm_103838 callba Function1008a6 @@ -8126,7 +8126,7 @@ UnknownText_0x103876: ; 0x103876 ; 0x10387b Function10387b: ; 10387b - callba Function10632f + callba Mobile_AlwaysReturnNotCarry bit 7, c ret nz callba Function1008a6 diff --git a/misc/mobile_41.asm b/misc/mobile_41.asm index d86146a0d..e27d9a01e 100755 --- a/misc/mobile_41.asm +++ b/misc/mobile_41.asm @@ -766,7 +766,7 @@ MobileFn_106314: mobile ; 106314 ret ; 10632f -Function10632f: ; 10632f +Mobile_AlwaysReturnNotCarry: ; 10632f or a ret @@ -851,7 +851,7 @@ Function106392: ; 106392 ret .asm_1063a2 - call Function10632f + call Mobile_AlwaysReturnNotCarry ld a, c and a jr nz, .asm_1063b4 @@ -937,7 +937,7 @@ Function106403: ; 106403 ret .asm_106426 - call Function10632f + call Mobile_AlwaysReturnNotCarry ld a, c and a jr z, .asm_106435 diff --git a/misc/mobile_45.asm b/misc/mobile_45.asm index 9dc8a2aab..6e2c165f7 100644 --- a/misc/mobile_45.asm +++ b/misc/mobile_45.asm @@ -78,45 +78,45 @@ Jumptable_114165: ; 114165 ; 11417f Unknown_11417f: ; 11417f - dw String_114199 - dw String_11419f - dw String_1141a7 - dw String_1141b1 - dw String_1141b5 - dw String_1141b9 - dw String_1141c2 - dw String_1141c8 - dw String_1141d6 - dw String_1141e4 - dw String_1141ee - dw String_1141fc - dw String_114209 + dw .From + dw .Sender + dw .ReplyTo + dw .To + dw .CC + dw .Subject + dw .Date + dw .ContentType + dw .MimeVersion + dw .XMailer + dw .XGameTitle + dw .XGameCode + dw .XGBMailType -String_114199: ; 114199 +.From: ; 114199 db "FROM:", 0 -String_11419f: ; 11419f +.Sender: ; 11419f db "SENDER:", 0 -String_1141a7: ; 1141a7 +.ReplyTo: ; 1141a7 db "REPLY-TO:", 0 -String_1141b1: ; 1141b1 +.To: ; 1141b1 db "TO:", 0 -String_1141b5: ; 1141b5 +.CC: ; 1141b5 db "CC:", 0 -String_1141b9: ; 1141b9 +.Subject: ; 1141b9 db "SUBJECT:", 0 -String_1141c2: ; 1141c2 +.Date: ; 1141c2 db "DATE:", 0 -String_1141c8: ; 1141c8 +.ContentType: ; 1141c8 db "CONTENT-TYPE:", 0 -String_1141d6: ; 1141d6 +.MimeVersion: ; 1141d6 db "MIME-VERSION:", 0 -String_1141e4: ; 1141e4 +.XMailer: ; 1141e4 db "X-MAILER:", 0 -String_1141ee: ; 1141ee +.XGameTitle: ; 1141ee db "X-GAME-TITLE:", 0 -String_1141fc: ; 1141fc +.XGameCode: ; 1141fc db "X-GAME-CODE:", 0 -String_114209: ; 114209 +.XGBMailType: ; 114209 db "X-GBMAIL-TYPE:", 0 ; 114218 @@ -131,10 +131,10 @@ String_114232: ; 114232 ; 114243 Function114243:: ; 114243 - ld a, $a + ld a, SRAM_ENABLE ld [MBC3SRamEnable], a - ld a, [$ff8c] - push af + ld a, [hFF8C] + push af ; if [wdc02] == 0, this is popped to pc. push de ld a, [wdc02] add a @@ -153,9 +153,9 @@ Function11425c: ; 11425c ld [wdc02], a pop af rept 2 - ld [$ff8c], a + ld [hFF8C], a endr - ld [$4000], a + ld [MBC3SRamBank], a ret ; 114268 @@ -171,8 +171,8 @@ Function114269: ; 114269 ld [wdc03], a ld a, [hli] ld [wdc00], a - ld [$ff8c], a - ld [$4000], a + ld [hFF8C], a + ld [MBC3SRamBank], a ld e, [hl] inc hl ld d, [hl] @@ -370,8 +370,8 @@ Function11433c: ; 11433c pop bc ld a, [wdc03] ld [wdc00], a - ld [$ff8c], a - ld [$4000], a + ld [hFF8C], a + ld [MBC3SRamBank], a call Function114c0b ld hl, String_114004 .asm_114394 @@ -429,8 +429,8 @@ Function1143b7: ; 1143b7 push af ld a, [hli] ld [wCurrentMapSignpostCount], a - ld [$ff8c], a - ld [$4000], a + ld [hFF8C], a + ld [MBC3SRamBank], a ld a, [hli] ld h, [hl] ld l, a @@ -473,7 +473,7 @@ Function1143f3: ; 1143f3 jr nc, .asm_114400 .asm_114407 - ld bc, VBlank5 + lb bc, $4, $0 ld a, $2 ret @@ -486,8 +486,8 @@ Function1143f3: ; 1143f3 Function114412: ; 114412 ld a, c ld [wdc00], a - ld [$ff8c], a - ld [$4000], a + ld [hFF8C], a + ld [MBC3SRamBank], a ld hl, Unknown_11417f ld a, b add a @@ -506,17 +506,17 @@ Function114412: ; 114412 jp z, .asm_1144c2 inc e call z, Function1144c8 - cp $d + cp $d ; CR jr nz, .asm_11442b ld a, [de] inc e call z, Function1144c8 - cp $a + cp $a ; NL jr nz, .asm_11442b ld a, [de] - cp $2e + cp $2e ; . jr z, .asm_1144ae - cp $d + cp $d ; CR jr z, .asm_1144b8 .asm_11444a @@ -527,9 +527,9 @@ Function114412: ; 114412 jr z, .asm_1144c2 inc e call z, Function1144c8 - cp $61 + cp $61 ; "a" jr c, .asm_114462 - cp $7b + cp $7b ; "z" + 1 jr nc, .asm_114462 sub $20 @@ -553,10 +553,10 @@ Function114412: ; 114412 jr .asm_11446e .asm_114476 - ld a, $20 + ld a, $20 ; " " cp b jr z, .asm_114481 - ld a, $a + ld a, $a ; NL cp b jr z, .asm_114481 dec de @@ -572,18 +572,18 @@ Function114412: ; 114412 inc bc inc e call z, Function1144c8 - cp $d + cp $d ; CR jr nz, .asm_114486 ld a, [de] inc bc inc e call z, Function1144c8 - cp $a + cp $a ; NL jr nz, .asm_114486 ld a, [de] - cp $20 + cp $20 ; " " jr z, .asm_114486 - cp $9 + cp $9 ; TAB jr z, .asm_114486 ld d, h ld e, l @@ -596,14 +596,14 @@ Function114412: ; 114412 inc e call z, Function1144c8 ld a, [de] - cp $d + cp $d ; CR jp nz, .asm_11442b .asm_1144b8 inc e call z, Function1144c8 ld a, [de] - cp $a + cp $a ; NL jp nz, .asm_11442b .asm_1144c2 @@ -676,8 +676,8 @@ endr pop hl ld a, [hli] ld [wCurrentMapSignpostCount], a - ld [$ff8c], a - ld [$4000], a + ld [hFF8C], a + ld [MBC3SRamBank], a ld e, [hl] inc hl ld d, [hl] @@ -693,8 +693,8 @@ endr ld hl, wdc06 ld a, [hl] ld [wCurrentMapSignpostCount], a - ld [$ff8c], a - ld [$4000], a + ld [hFF8C], a + ld [MBC3SRamBank], a ld hl, wdc09 ld e, [hl] inc hl @@ -753,8 +753,8 @@ Function114576: ; 114576 jr nz, .asm_1145b4 ld a, h ld [wdc00], a - ld [$ff8c], a - ld [$4000], a + ld [hFF8C], a + ld [MBC3SRamBank], a push hl push de push bc @@ -771,8 +771,8 @@ Function114576: ; 114576 jr nz, .asm_1145ba ld a, h ld [wdc00], a - ld [$ff8c], a - ld [$4000], a + ld [hFF8C], a + ld [MBC3SRamBank], a ld hl, String_114218 call Function114acf @@ -945,8 +945,8 @@ Function11463c: ; 11463c pop de pop af ld [wdc00], a - ld [$ff8c], a - ld [$4000], a + ld [hFF8C], a + ld [MBC3SRamBank], a xor a ld [Carpet], a ld a, $1 @@ -968,8 +968,8 @@ Function1146a4: ; 1146a4 ld hl, wdc03 ld a, [hli] ld [wdc00], a - ld [$ff8c], a - ld [$4000], a + ld [hFF8C], a + ld [MBC3SRamBank], a ld e, [hl] inc hl ld d, [hl] @@ -982,8 +982,8 @@ Function1146a4: ; 1146a4 ld hl, wdc03 ld a, [hli] ld [wdc00], a - ld [$ff8c], a - ld [$4000], a + ld [hFF8C], a + ld [MBC3SRamBank], a ld e, [hl] inc hl ld d, [hl] @@ -1027,8 +1027,8 @@ Function1146fa: ; 1146fa ld hl, wdc03 ld a, [hli] ld [wdc00], a - ld [$ff8c], a - ld [$4000], a + ld [hFF8C], a + ld [MBC3SRamBank], a ld e, [hl] inc hl ld d, [hl] @@ -1041,8 +1041,8 @@ Function1146fa: ; 1146fa ld a, $1 ld [wdc0e], a ld a, [wdc00] - ld [$ff8c], a - ld [$4000], a + ld [hFF8C], a + ld [MBC3SRamBank], a ld a, $1 ld [RightOrnament], a call Function1147cd @@ -1068,8 +1068,8 @@ Function1146fa: ; 1146fa ld hl, wdc03 ld a, [hli] ld [wdc00], a - ld [$ff8c], a - ld [$4000], a + ld [hFF8C], a + ld [MBC3SRamBank], a ld e, [hl] inc hl ld d, [hl] @@ -1123,8 +1123,8 @@ endr ld hl, wdc03 ld a, [hli] ld [wdc00], a - ld [$ff8c], a - ld [$4000], a + ld [hFF8C], a + ld [MBC3SRamBank], a call Function114a7a and a jr z, .asm_1147cb @@ -1236,8 +1236,8 @@ Function114843: ; 114843 ld a, [wdc00] push af push de - ld [$ff8c], a - ld [$4000], a + ld [hFF8C], a + ld [MBC3SRamBank], a call Function114a18 and a jr nz, .asm_11485f @@ -1260,8 +1260,8 @@ Function114867: ; 114867 ld hl, wdc06 ld a, [hli] ld [wCurrentMapSignpostCount], a - ld [$ff8c], a - ld [$4000], a + ld [hFF8C], a + ld [MBC3SRamBank], a ld e, [hl] inc hl ld d, [hl] @@ -1327,8 +1327,8 @@ Function1148c2: ; 1148c2 ld hl, wdc06 ld a, [hli] ld [wCurrentMapSignpostCount], a - ld [$ff8c], a - ld [$4000], a + ld [hFF8C], a + ld [MBC3SRamBank], a ld e, [hl] inc hl ld d, [hl] @@ -1427,8 +1427,8 @@ Function11494d: ; 11494d ld hl, wdc06 ld a, [hli] ld [wCurrentMapSignpostCount], a - ld [$ff8c], a - ld [$4000], a + ld [hFF8C], a + ld [MBC3SRamBank], a ld e, [hl] inc hl ld d, [hl] @@ -1519,8 +1519,8 @@ Function1149cc: ; 1149cc ld hl, wdc06 ld a, [hl] ld [wCurrentMapSignpostCount], a - ld [$ff8c], a - ld [$4000], a + ld [hFF8C], a + ld [MBC3SRamBank], a push de ld hl, wdc09 ld e, [hl] @@ -1874,8 +1874,8 @@ endr ld hl, wdc06 ld a, [hli] ld [wCurrentMapSignpostCount], a - ld [$ff8c], a - ld [$4000], a + ld [hFF8C], a + ld [MBC3SRamBank], a ld e, [hl] inc hl ld d, [hl] @@ -1913,8 +1913,8 @@ Function114bbc: ; 114bbc jr nz, .asm_114bff ld a, h ld [wdc00], a - ld [$ff8c], a - ld [$4000], a + ld [hFF8C], a + ld [MBC3SRamBank], a call Function114c0b ld hl, wdc24 call Function114c5e @@ -1924,8 +1924,8 @@ Function114bbc: ; 114bbc pop hl ld a, [hli] ld [wCurrentMapSignpostCount], a - ld [$ff8c], a - ld [$4000], a + ld [hFF8C], a + ld [MBC3SRamBank], a ld a, [hli] ld e, a ld d, [hl] @@ -2136,8 +2136,8 @@ Function114cd9: ; 114cd9 ld [wdc04], a ld a, h ld [wdc00], a - ld [$ff8c], a - ld [$4000], a + ld [hFF8C], a + ld [MBC3SRamBank], a ld hl, wdc24 call Function114d39 ld hl, wdc24 @@ -2155,8 +2155,8 @@ endr pop hl ld a, [hli] ld [wCurrentMapSignpostCount], a - ld [$ff8c], a - ld [$4000], a + ld [hFF8C], a + ld [MBC3SRamBank], a ld a, [hli] ld e, a ld a, [hli] @@ -2460,8 +2460,8 @@ Function114ea0: ; 114ea0 ld hl, wdc06 ld a, [hli] ld [wCurrentMapSignpostCount], a - ld [$ff8c], a - ld [$4000], a + ld [hFF8C], a + ld [MBC3SRamBank], a ld a, [hli] ld e, a ld a, [hli] @@ -2666,8 +2666,8 @@ Function114f59: ; 114f59 inc hl ld a, [hli] ld [wdc00], a - ld [$ff8c], a - ld [$4000], a + ld [hFF8C], a + ld [MBC3SRamBank], a ld e, [hl] inc hl ld d, [hl] @@ -2745,8 +2745,8 @@ Function115020: ; 115020 ld hl, wdc06 ld a, [hli] ld [wCurrentMapSignpostCount], a - ld [$ff8c], a - ld [$4000], a + ld [hFF8C], a + ld [MBC3SRamBank], a ld a, [hli] ld e, a ld a, [hli] @@ -2804,8 +2804,8 @@ Function115062: ; 115062 ld c, a ld a, [hli] ld [wdc00], a - ld [$ff8c], a - ld [$4000], a + ld [hFF8C], a + ld [MBC3SRamBank], a ld e, [hl] inc hl ld d, [hl] @@ -2958,8 +2958,8 @@ Function115136: ; 115136 ld hl, wdc06 ld a, [hli] ld [wCurrentMapSignpostCount], a - ld [$ff8c], a - ld [$4000], a + ld [hFF8C], a + ld [MBC3SRamBank], a ld a, [hli] ld e, a ld a, [hli] @@ -3013,8 +3013,8 @@ Function115179: ; 115179 ld hl, wdc06 ld a, [hli] ld [wCurrentMapSignpostCount], a - ld [$ff8c], a - ld [$4000], a + ld [hFF8C], a + ld [MBC3SRamBank], a ld a, [hli] ld e, a ld a, [hli] @@ -3133,8 +3133,8 @@ Function115217: ; 115217 ld hl, wdc06 ld a, [hli] ld [wCurrentMapSignpostCount], a - ld [$ff8c], a - ld [$4000], a + ld [hFF8C], a + ld [MBC3SRamBank], a ld a, [hli] ld e, a ld a, [hli] @@ -3228,8 +3228,8 @@ Function11528f: ; 11528f inc hl ld a, [hli] ld [wdc00], a - ld [$ff8c], a - ld [$4000], a + ld [hFF8C], a + ld [MBC3SRamBank], a ld a, [hli] ld e, a ld a, [hli] @@ -3483,8 +3483,8 @@ Function1153d2: ; 1153d2 .asm_1153f5 ld a, [hli] ld [wdc00], a - ld [$ff8c], a - ld [$4000], a + ld [hFF8C], a + ld [MBC3SRamBank], a ld e, [hl] inc hl ld d, [hl] @@ -3617,8 +3617,8 @@ Function1153d2: ; 1153d2 ld hl, RightOrnament ld a, [hli] ld [wCurrentMapSignpostCount], a - ld [$ff8c], a - ld [$4000], a + ld [hFF8C], a + ld [MBC3SRamBank], a ld e, [hl] inc hl ld d, [hl] @@ -3854,8 +3854,8 @@ Function11560a: ; 11560a ld [wCurrentMapSignpostCount], a ld a, [wdc17] ld [wdc00], a - ld [$ff8c], a - ld [$4000], a + ld [hFF8C], a + ld [MBC3SRamBank], a ld hl, wdc1a ld c, [hl] inc hl @@ -3927,8 +3927,8 @@ Function11560a: ; 11560a ld [hl], d pop bc ld a, [wCurrentMapSignpostCount] - ld [$ff8c], a - ld [$4000], a + ld [hFF8C], a + ld [MBC3SRamBank], a ld hl, wCurrMapTriggerCount ld e, [hl] inc hl @@ -4238,8 +4238,8 @@ Function11581e: ; 11581e ld hl, wdc02 ld a, [hli] ld [wdc00], a - ld [$ff8c], a - ld [$4000], a + ld [hFF8C], a + ld [MBC3SRamBank], a ld e, [hl] inc hl ld d, [hl] @@ -4292,8 +4292,8 @@ Function11581e: ; 11581e ld hl, wCurrMapTriggerCount ld a, [hli] ld [wCurrentMapSignpostCount], a - ld [$ff8c], a - ld [$4000], a + ld [hFF8C], a + ld [MBC3SRamBank], a ld e, [hl] inc hl ld d, [hl] @@ -4767,8 +4767,8 @@ Function115b00: ; 115b00 ld hl, wdc02 ld a, [hli] ld [wdc00], a - ld [$ff8c], a - ld [$4000], a + ld [hFF8C], a + ld [MBC3SRamBank], a ld e, [hl] inc hl ld d, [hl] @@ -4856,8 +4856,8 @@ endr ld hl, wCurrMapTriggerCount ld a, [hli] ld [wCurrentMapSignpostCount], a - ld [$ff8c], a - ld [$4000], a + ld [hFF8C], a + ld [MBC3SRamBank], a ld e, [hl] inc hl ld d, [hl] @@ -5258,8 +5258,8 @@ Function115d80: ; 115d80 ld a, [bc] inc a ld [bc], a - ld [$ff8c], a - ld [$4000], a + ld [hFF8C], a + ld [MBC3SRamBank], a ld a, e ld d, $a0 ld e, $0 diff --git a/misc/mobile_46.asm b/misc/mobile_46.asm index 226f96100..a40829250 100755 --- a/misc/mobile_46.asm +++ b/misc/mobile_46.asm @@ -5453,7 +5453,7 @@ Function11a80c: ; 11a80c ld bc, hQuotient ld hl, Unknown_11a8ba call Function11a88c - ld bc, $ffb5 + ld bc, hPrintNum3 ld hl, Unknown_11a8da call Function11a88c xor a @@ -5461,11 +5461,11 @@ Function11a80c: ; 11a80c ld a, [hDivisor] and $f ld e, a - ld a, [$ffb9] + ld a, [hPrintNum7] and $f call Function11a884 ld e, a - ld a, [$ffbb] + ld a, [hPrintNum9] and $f call Function11a884 ld [wcd62], a @@ -5477,12 +5477,12 @@ Function11a80c: ; 11a80c swap a call Function11a884 ld e, a - ld a, [$ffb9] + ld a, [hPrintNum7] and $f0 swap a call Function11a884 ld e, a - ld a, [$ffbb] + ld a, [hPrintNum9] and $f0 swap a call Function11a884 @@ -5494,11 +5494,11 @@ Function11a80c: ; 11a80c and $f call Function11a884 ld e, a - ld a, [$ffba] + ld a, [hPrintNum8] and $f call Function11a884 ld e, a - ld a, [$ffbc] + ld a, [hPrintNum10] and $f call Function11a884 ld [wcd64], a diff --git a/misc/mobile_5b.asm b/misc/mobile_5b.asm index 735297e8b..24f2f9189 100755 --- a/misc/mobile_5b.asm +++ b/misc/mobile_5b.asm @@ -2,7 +2,7 @@ Function16c000: ; 16c000 ld a, [hCGB] and a ret z - ld a, [$ffea] + ld a, [hFFEA] and a ret z ld a, [wcfbe] @@ -15,7 +15,7 @@ Function16c000: ; 16c000 call Function16c031 callba Function1000a4 xor a - ld [$ffea], a + ld [hFFEA], a pop af ld [wcfbe], a ret diff --git a/predef/cgb.asm b/predef/cgb.asm index ab96ba8d3..c929c975c 100644 --- a/predef/cgb.asm +++ b/predef/cgb.asm @@ -118,7 +118,7 @@ endr ld [SGBPredef], a call ApplyPals Function8e23: ; 8e23 - call Function8e85 + call InitBattlePartyMenuPals hlcoord 0, 0, AttrMap ld bc, SCREEN_WIDTH * SCREEN_HEIGHT ld a, $2 @@ -157,15 +157,15 @@ Function8e23: ; 8e23 ; 8e85 -Function8e85: ; 8e85 +InitBattlePartyMenuPals: ; 8e85 callba Function100dc0 Function8e8b: ; 8e8b ld hl, Palette_b311 - jr nc, .asm_8e93 + jr nc, .not_mobile ld hl, Palette_b309 -.asm_8e93 +.not_mobile ld de, UnknBGPals + 8 * 7 - ld bc, $8 + ld bc, 1 palettes ld a, $5 call FarCopyWRAM ret @@ -174,11 +174,11 @@ Function8e8b: ; 8e8b Function8e9f: ; 8e9f callba Function100dc0 ld hl, Palette_b311 - jr nc, .asm_8ead + jr nc, .not_mobile ld hl, Palette_b309 -.asm_8ead +.not_mobile ld de, UnknBGPals - ld bc, $8 + ld bc, 1 palettes ld a, $5 call FarCopyWRAM ret @@ -596,7 +596,7 @@ _CGB0a: ; 91d1 ld hl, PalPacket_9c56 + 1 call CopyFourPalettes call Function8e9f - call Function8e85 + call InitBattlePartyMenuPals call Function971a call ApplyAttrMap ret diff --git a/wram.asm b/wram.asm index b575e3d84..386a0925a 100644 --- a/wram.asm +++ b/wram.asm @@ -343,7 +343,7 @@ CurSFX:: ; c2bf wMapMusic:: ; c2c0 ds 1 -wc2c1:: ds 1 +wDontPlayMapMusicOnReload:: ds 1 SECTION "WRAM", WRAM0 @@ -363,7 +363,7 @@ AutoInputBank:: ; c2ca AutoInputLength:: ; c2cb ds 1 -wc2cc:: ds 1 +wMonStatusFlags:: ds 1 wc2cd:: ds 1 wSpriteUpdatesEnabled:: ds 1 wc2cf:: ds 1 @@ -609,12 +609,10 @@ wEnemyTrainerItem1:: ds 1 wEnemyTrainerItem2:: ds 1 wEnemyTrainerBaseReward:: ds 1 wEnemyTrainerAIFlags:: ds 3 -wc656:: OTName:: ds NAME_LENGTH ; c656 ds 2 -wc663:: CurOTMon:: ; c663 ds 1 @@ -634,7 +632,9 @@ TypeModifier:: ; c665 ds 1 CriticalHit:: ; c666 -; nonzero for a critical hit +; 0 if not critical +; 1 for a critical hit +; 2 for a OHKO ds 1 AttackMissed:: ; c667 @@ -1064,8 +1064,8 @@ wEnemyFutureSightCount:: ds 1 wc71f:: ds 1 wc720:: ds 4 ; copy from/to EnemyMonBaseStats, length=7 wc724:: ds 3 -wc727:: ds 2 -wc729:: ds 2 +wPlayerFutureSightDamage:: ds 2 +wEnemyFutureSightDamage:: ds 2 wPlayerRageCounter:: ds 1 wEnemyRageCounter:: ds 1 wc72d:: ds 1 ; if 0 then PrintButItFailed @@ -1092,8 +1092,7 @@ wLinkPlayer1Name:: ds NAME_LENGTH wLinkPlayer2Name:: ds NAME_LENGTH ds wLinkPlayer1Name - @ wc736:: ds 3 -wWildMonPP:: -wc739:: ds 4 +wWildMonPP:: ds NUM_MOVES wAmuletCoin:: ds 1 wc73e:: ds 1 wPlayerJustGotFrozen:: ds 1 @@ -1246,7 +1245,7 @@ wc90f:: wMysteryGiftPartnerSentDeco:: ds 1 wMysteryGiftPartnerWhichItem:: ds 1 wMysteryGiftPartnerWhichDeco:: ds 1 -wc912:: ds 2 +wMysteryGiftPartnerBackupItem:: ds 2 wMysteryGiftPartnerDataEnd:: ds 12 wc920:: ds 16 @@ -2044,7 +2043,10 @@ CurPartyMon:: ; d109 ; 0-5 ds 1 -wd10a:: ds 1 +wWhichHPBar:: +; 0: Enemy +; 1: Player + ds 1 wPokemonWithdrawDepositParameter:: ; 0: Take from PC ; 1: Put into PC @@ -2982,11 +2984,16 @@ RightOrnament:: ; dc15 BigDoll:: ; dc16 ds 1 +; Items bought from Mom +wWhichMomItem:: wdc17:: ds 1 -wdc18:: ds 1 +wWhichMomItemSet:: + ds 1 +MomItemTriggerBalance:: wdc19:: ds 1 wdc1a:: ds 1 wdc1b:: ds 1 + wDailyResetTimer:: ds 2 DailyFlags:: ds 1 WeeklyFlags:: ds 1