diff options
-rw-r--r-- | audio/engine.asm | 4 | ||||
-rw-r--r-- | constants/audio_constants.asm | 2 | ||||
-rw-r--r-- | constants/battle_constants.asm | 6 | ||||
-rw-r--r-- | docs/bugs_and_glitches.md | 23 | ||||
-rw-r--r-- | engine/battle/battle_transition.asm | 77 | ||||
-rw-r--r-- | engine/battle/core.asm | 48 | ||||
-rw-r--r-- | engine/battle/effect_commands.asm | 4 | ||||
-rw-r--r-- | engine/battle/link_result.asm | 14 | ||||
-rw-r--r-- | engine/events/battle_tower/battle_tower.asm | 2 | ||||
-rw-r--r-- | engine/events/bug_contest/display_stats.asm | 2 | ||||
-rw-r--r-- | engine/events/celebi.asm | 6 | ||||
-rw-r--r-- | engine/games/card_flip.asm | 2 | ||||
-rw-r--r-- | engine/items/item_effects.asm | 8 | ||||
-rw-r--r-- | engine/movie/trade_animation.asm | 2 | ||||
-rw-r--r-- | engine/overworld/scripting.asm | 10 | ||||
-rw-r--r-- | engine/overworld/variables.asm | 2 | ||||
-rw-r--r-- | engine/pokemon/bills_pc.asm | 6 | ||||
-rw-r--r-- | engine/pokemon/party_menu.asm | 2 | ||||
-rw-r--r-- | home/trainers.asm | 2 | ||||
-rw-r--r-- | mobile/mobile_5c.asm | 2 | ||||
-rw-r--r-- | wram.asm | 13 |
21 files changed, 140 insertions, 97 deletions
diff --git a/audio/engine.asm b/audio/engine.asm index 0bd7706a5..50f2f5843 100644 --- a/audio/engine.asm +++ b/audio/engine.asm @@ -1081,7 +1081,7 @@ HandleNoise: ; e858c ret z ; are we in a sfx channel? ld a, [wCurChannel] - bit 2, a ; sfx + bit NOISE_CHAN_F, a jr nz, .next ; is ch8 on? (noise) ld hl, wChannel8Flags @@ -1330,7 +1330,7 @@ GetNoiseSample: ; e86c5 call SetNoteDuration ; check current channel ld a, [wCurChannel] - bit 2, a ; are we in a sfx channel? + bit NOISE_CHAN_F, a jr nz, .sfx ld hl, wChannel8Flags bit SOUND_CHANNEL_ON, [hl] ; is ch8 on? (noise) diff --git a/constants/audio_constants.asm b/constants/audio_constants.asm index 288caad91..85c5cc577 100644 --- a/constants/audio_constants.asm +++ b/constants/audio_constants.asm @@ -31,6 +31,8 @@ NUM_NOISE_CHANS EQU const_value const CHAN8 ; 7 NUM_CHANNELS EQU const_value +NOISE_CHAN_F EQU 2 ; bit set in CHAN5-CHAN7 + ; Flags1 const_def const SOUND_CHANNEL_ON ; 0 diff --git a/constants/battle_constants.asm b/constants/battle_constants.asm index b1f57514a..64e99d1d7 100644 --- a/constants/battle_constants.asm +++ b/constants/battle_constants.asm @@ -157,7 +157,7 @@ SLP EQU %111 ; 0-7 turns const FRZ const PAR -ALL_STATUS EQU (1 << PSN) + (1 << BRN) + (1 << FRZ) + (1 << PAR) + SLP +ALL_STATUS EQU (1 << PSN) | (1 << BRN) | (1 << FRZ) | (1 << PAR) | SLP ; wPlayerSubStatus1 or wEnemySubStatus1 bit flags enum_start 7, -1 @@ -248,3 +248,7 @@ SUBSTATUS_CURLED EQU 0 const WIN const LOSE const DRAW + +BATTLERESULT_CAUGHT_CELEBI EQU 6 +BATTLERESULT_BOX_FULL EQU 7 +BATTLERESULT_BITMASK EQU (1 << BATTLERESULT_CAUGHT_CELEBI) | (1 << BATTLERESULT_BOX_FULL) diff --git a/docs/bugs_and_glitches.md b/docs/bugs_and_glitches.md index 95c5e032f..2e83e6908 100644 --- a/docs/bugs_and_glitches.md +++ b/docs/bugs_and_glitches.md @@ -949,18 +949,18 @@ StartTrainerBattle_DetermineWhichAnimation: ; 8c365 (23:4365) add 3 ld hl, wEnemyMonLevel cp [hl] - jr nc, .okay - set 0, e -.okay + jr nc, .not_stronger + set TRANS_STRONGER_F, e +.not_stronger ld a, [wEnvironment] cp CAVE - jr z, .okay2 + jr z, .cave cp ENVIRONMENT_5 - jr z, .okay2 + jr z, .cave cp DUNGEON - jr z, .okay2 - set 1, e -.okay2 + jr z, .cave + set TRANS_NO_CAVE_F, e +.cave ld hl, .StartingPoints add hl, de ld a, [hl] @@ -969,8 +969,11 @@ StartTrainerBattle_DetermineWhichAnimation: ; 8c365 (23:4365) ; 8c38f (23:438f) .StartingPoints: ; 8c38f - db 1, 9 - db 16, 24 +; entries correspond to TRANS_* constants + db BATTLETRANSITION_CAVE + db BATTLETRANSITION_CAVE_STRONGER + db BATTLETRANSITION_NO_CAVE + db BATTLETRANSITION_NO_CAVE_STRONGER ; 8c393 ``` diff --git a/engine/battle/battle_transition.asm b/engine/battle/battle_transition.asm index 1de84421d..42dd440ea 100644 --- a/engine/battle/battle_transition.asm +++ b/engine/battle/battle_transition.asm @@ -1,3 +1,11 @@ +; BattleTransitionJumptable.Jumptable indexes +BATTLETRANSITION_CAVE EQU $01 +BATTLETRANSITION_CAVE_STRONGER EQU $09 +BATTLETRANSITION_NO_CAVE EQU $10 +BATTLETRANSITION_NO_CAVE_STRONGER EQU $18 +BATTLETRANSITION_FINISH EQU $20 +BATTLETRANSITION_END EQU $80 + DoBattleTransition: ; 8c20f call .InitGFX ld a, [rBGP] @@ -14,7 +22,7 @@ DoBattleTransition: ; 8c20f .loop ld a, [wJumptableIndex] - bit 7, a + bit 7, a ; BATTLETRANSITION_END? jr nz, .done call BattleTransitionJumptable call DelayFrame @@ -145,13 +153,13 @@ INCBIN "gfx/overworld/trainer_battle_pokeball_tiles.2bpp" BattleTransitionJumptable: ; 8c314 - jumptable .dw, wJumptableIndex + jumptable .Jumptable, wJumptableIndex ; 8c323 -.dw ; 8c323 (23:4323) +.Jumptable ; 8c323 (23:4323) dw StartTrainerBattle_DetermineWhichAnimation ; 00 - ; Animation 1: cave + ; BATTLETRANSITION_CAVE dw StartTrainerBattle_LoadPokeBallGraphics ; 01 dw StartTrainerBattle_SetUpBGMap ; 02 dw StartTrainerBattle_Flash ; 03 @@ -161,7 +169,7 @@ BattleTransitionJumptable: ; 8c314 dw StartTrainerBattle_SetUpForWavyOutro ; 07 dw StartTrainerBattle_SineWave ; 08 - ; Animation 2: cave, stronger + ; BATTLETRANSITION_CAVE_STRONGER dw StartTrainerBattle_LoadPokeBallGraphics ; 09 dw StartTrainerBattle_SetUpBGMap ; 0a dw StartTrainerBattle_Flash ; 0b @@ -171,7 +179,7 @@ BattleTransitionJumptable: ; 8c314 ; There is no setup for this one dw StartTrainerBattle_ZoomToBlack ; 0f - ; Animation 3: no cave + ; BATTLETRANSITION_NO_CAVE dw StartTrainerBattle_LoadPokeBallGraphics ; 10 dw StartTrainerBattle_SetUpBGMap ; 11 dw StartTrainerBattle_Flash ; 12 @@ -181,7 +189,7 @@ BattleTransitionJumptable: ; 8c314 dw StartTrainerBattle_SetUpForSpinOutro ; 16 dw StartTrainerBattle_SpinToBlack ; 17 - ; Animation 4: no cave, stronger + ; BATTLETRANSITION_NO_CAVE_STRONGER dw StartTrainerBattle_LoadPokeBallGraphics ; 18 dw StartTrainerBattle_SetUpBGMap ; 19 dw StartTrainerBattle_Flash ; 1a @@ -191,9 +199,19 @@ BattleTransitionJumptable: ; 8c314 dw StartTrainerBattle_SetUpForRandomScatterOutro ; 1e dw StartTrainerBattle_SpeckleToBlack ; 1f - ; All animations jump to here. + ; BATTLETRANSITION_FINISH dw StartTrainerBattle_Finish ; 20 +; transition animations + const_def + const TRANS_CAVE + const TRANS_CAVE_STRONGER + const TRANS_NO_CAVE + const TRANS_NO_CAVE_STRONGER + +; transition animation bits +TRANS_STRONGER_F EQU 0 ; bit set in TRANS_CAVE_STRONGER and TRANS_NO_CAVE_STRONGER +TRANS_NO_CAVE_F EQU 1 ; bit set in TRANS_NO_CAVE and TRANS_NO_CAVE_STRONGER StartTrainerBattle_DetermineWhichAnimation: ; 8c365 (23:4365) ; The screen flashes a different number of times depending on the level of @@ -205,18 +223,18 @@ StartTrainerBattle_DetermineWhichAnimation: ; 8c365 (23:4365) add 3 ld hl, wEnemyMonLevel cp [hl] - jr nc, .okay - set 0, e -.okay + jr nc, .not_stronger + set TRANS_STRONGER_F, e +.not_stronger ld a, [wEnvironment] cp CAVE - jr z, .okay2 + jr z, .cave cp ENVIRONMENT_5 - jr z, .okay2 + jr z, .cave cp DUNGEON - jr z, .okay2 - set 1, e -.okay2 + jr z, .cave + set TRANS_NO_CAVE_F, e +.cave ld hl, .StartingPoints add hl, de ld a, [hl] @@ -225,13 +243,16 @@ StartTrainerBattle_DetermineWhichAnimation: ; 8c365 (23:4365) ; 8c38f (23:438f) .StartingPoints: ; 8c38f - db 1, 9 - db 16, 24 +; entries correspond to TRANS_* constants + db BATTLETRANSITION_CAVE + db BATTLETRANSITION_CAVE_STRONGER + db BATTLETRANSITION_NO_CAVE + db BATTLETRANSITION_NO_CAVE_STRONGER ; 8c393 StartTrainerBattle_Finish: ; 8c393 (23:4393) call ClearSprites - ld a, $80 + ld a, BATTLETRANSITION_END ld [wJumptableIndex], a ret @@ -322,7 +343,7 @@ StartTrainerBattle_SineWave: ; 8c408 (23:4408) ret .end - ld a, $20 + ld a, BATTLETRANSITION_FINISH ld [wJumptableIndex], a ret @@ -394,7 +415,7 @@ endr call DelayFrame xor a ld [hBGMapMode], a - ld a, $20 + ld a, BATTLETRANSITION_FINISH ld [wJumptableIndex], a ret ; 8c490 (23:4490) @@ -406,6 +427,10 @@ endr const LOWER_LEFT const LOWER_RIGHT +; quadrant bits +RIGHT_QUADRANT_F EQU 0 ; bit set in UPPER_RIGHT and LOWER_RIGHT +LOWER_QUADRANT_F EQU 1 ; bit set in LOWER_LEFT and LOWER_RIGHT + .spintable ; 8c490 spintable_entry: MACRO db \1 @@ -451,7 +476,7 @@ ENDM .loop1 ld [hl], $ff ld a, [wcf65] - bit 0, a + bit RIGHT_QUADRANT_F, a jr z, .leftside inc hl jr .okay1 @@ -462,7 +487,7 @@ ENDM jr nz, .loop1 pop hl ld a, [wcf65] - bit 1, a + bit LOWER_QUADRANT_F, a ld bc, SCREEN_WIDTH jr z, .upper ld bc, -SCREEN_WIDTH @@ -477,7 +502,7 @@ ENDM ld c, a .loop2 ld a, [wcf65] - bit 0, a + bit RIGHT_QUADRANT_F, a jr z, .leftside2 dec hl jr .okay2 @@ -530,7 +555,7 @@ StartTrainerBattle_SpeckleToBlack: ; 8c58f (23:458f) call DelayFrame xor a ld [hBGMapMode], a - ld a, $20 + ld a, BATTLETRANSITION_FINISH ld [wJumptableIndex], a ret @@ -778,7 +803,7 @@ StartTrainerBattle_ZoomToBlack: ; 8c768 (23:4768) jr .loop .done - ld a, $20 + ld a, BATTLETRANSITION_FINISH ld [wJumptableIndex], a ret ; 8c792 (23:4792) diff --git a/engine/battle/core.asm b/engine/battle/core.asm index fe20333b5..78dae4dd3 100644 --- a/engine/battle/core.asm +++ b/engine/battle/core.asm @@ -119,8 +119,8 @@ DoBattle: ; 3c000 WildFled_EnemyFled_LinkBattleCanceled: ; 3c0e5 call Call_LoadTempTileMapToTileMap ld a, [wBattleResult] - and $c0 - add $2 + and BATTLERESULT_BITMASK + add DRAW ld [wBattleResult], a ld a, [wLinkMode] and a @@ -128,8 +128,8 @@ WildFled_EnemyFled_LinkBattleCanceled: ; 3c0e5 jr z, .print_text ld a, [wBattleResult] - and $c0 - ld [wBattleResult], a + and BATTLERESULT_BITMASK + ld [wBattleResult], a ; WIN ld hl, BattleText_EnemyFled call CheckMobileBattleError jr nc, .print_text @@ -575,8 +575,8 @@ CheckContestBattleOver: ; 3c3f5 and a jr nz, .contest_not_over ld a, [wBattleResult] - and $c0 - add $2 + and BATTLERESULT_BITMASK + add DRAW ld [wBattleResult], a scf ret @@ -2199,8 +2199,8 @@ UpdateBattleStateAndExperienceAfterEnemyFaint: ; 3ce01 call EmptyBattleTextBox call LoadTileMapToTempTileMap ld a, [wBattleResult] - and $c0 - ld [wBattleResult], a + and BATTLERESULT_BITMASK + ld [wBattleResult], a ; WIN call IsAnyMonHoldingExpShare jr z, .skip_exp ld hl, wEnemyMonBaseStats @@ -2745,8 +2745,8 @@ PlayerMonFaintHappinessMod: ; 3d1aa ld [wCurPartyMon], a callfar ChangeHappiness ld a, [wBattleResult] - and %11000000 - add $1 + and BATTLERESULT_BITMASK + add LOSE ld [wBattleResult], a ld a, [wWhichMonFaintedFirst] and a @@ -3050,8 +3050,8 @@ LostBattle: ; 3d38e jr nz, .not_tied ld hl, TiedAgainstText ld a, [wBattleResult] - and $c0 - add 2 + and BATTLERESULT_BITMASK + add DRAW ld [wBattleResult], a jr .text @@ -3928,11 +3928,11 @@ TryToRunAwayFromBattle: ; 3d8b3 cp BATTLEACTION_FORFEIT ld a, DRAW jr z, .fled - dec a + dec a ; LOSE .fled ld b, a ld a, [wBattleResult] - and $c0 + and BATTLERESULT_BITMASK add b ld [wBattleResult], a call StopDangerSound @@ -5180,8 +5180,8 @@ BattleMenu_Pack: ; 3e1c7 xor a ld [wWildMon], a ld a, [wBattleResult] - and $c0 - ld [wBattleResult], a + and BATTLERESULT_BITMASK + ld [wBattleResult], a ; WIN call ClearWindowData call SetPalettes scf @@ -8607,9 +8607,10 @@ DisplayLinkBattleResult: ; 3f77c .proceed ld a, [wBattleResult] and $f - cp $1 - jr c, .victory - jr z, .loss + cp LOSE + jr c, .victory ; WIN + jr z, .loss ; LOSE + ; DRAW farcall StubbedTrainerRankings_ColosseumDraws ld de, .Draw jr .store_result @@ -8841,7 +8842,7 @@ BattleEnd_HandleRoamMons: ; 3f998 jr nz, .not_roaming ld a, [wBattleResult] and $f - jr z, .caught_or_defeated_roam_mon + jr z, .caught_or_defeated_roam_mon ; WIN call GetRoamMonHP ld a, [wEnemyMonHP + 1] ld [hl], a @@ -9001,11 +9002,12 @@ AddLastMobileBattleToLinkRecord: ; 3fa42 .StoreResult: ; 3faa0 ld a, [wBattleResult] and $f - cp $1 + cp LOSE ld bc, sLinkBattleWins + 1 - sLinkBattleResults - jr c, .okay + jr c, .okay ; WIN ld bc, sLinkBattleLosses + 1 - sLinkBattleResults - jr z, .okay + jr z, .okay ; LOSE + ; DRAW ld bc, sLinkBattleDraws + 1 - sLinkBattleResults .okay add hl, bc diff --git a/engine/battle/effect_commands.asm b/engine/battle/effect_commands.asm index ea6c22dda..580c25583 100644 --- a/engine/battle/effect_commands.asm +++ b/engine/battle/effect_commands.asm @@ -5390,8 +5390,8 @@ INCLUDE "engine/battle/move_effects/teleport.asm" SetBattleDraw: ; 36804 ld a, [wBattleResult] - and $c0 - or $2 + and BATTLERESULT_BITMASK + or DRAW ld [wBattleResult], a ret diff --git a/engine/battle/link_result.asm b/engine/battle/link_result.asm index 8f456da9b..1dbc40aa9 100644 --- a/engine/battle/link_result.asm +++ b/engine/battle/link_result.asm @@ -41,20 +41,20 @@ DetermineLinkBattleResult: ; 2b930 .victory ld a, [wBattleResult] and $f0 - ld [wBattleResult], a + ld [wBattleResult], a ; WIN ret .defeat ld a, [wBattleResult] and $f0 - add $1 + add LOSE ld [wBattleResult], a ret .drawn ld a, [wBattleResult] and $f0 - add $2 + add DRAW ld [wBattleResult], a ret @@ -123,16 +123,16 @@ DetermineLinkBattleResult: ; 2b930 jr nz, .finish ; we have a pokemon that's neither fainted nor at full health ld hl, wOTPartyMon1HP call .CheckFaintedOrFullHealth - ld e, $1 + ld e, $1 ; victory ret .finish ld hl, wOTPartyMon1HP call .CheckFaintedOrFullHealth - ld e, $0 + ld e, $0 ; drawn ret nz ; we both have pokemon that are neither fainted nor at full health - ld e, $2 - ld a, $1 + ld e, $2 ; defeat + ld a, $1 ; not drawn and a ret diff --git a/engine/events/battle_tower/battle_tower.asm b/engine/events/battle_tower/battle_tower.asm index d2e3b1c4c..d75015d5b 100644 --- a/engine/events/battle_tower/battle_tower.asm +++ b/engine/events/battle_tower/battle_tower.asm @@ -254,7 +254,7 @@ RunBattleTowerTrainer: ; 17024d farcall HealParty ld a, [wBattleResult] ld [wScriptVar], a - and a + and a ; WIN? jr nz, .lost ld a, BANK(sNrOfBeatenBattleTowerTrainers) call GetSRAMBank diff --git a/engine/events/bug_contest/display_stats.asm b/engine/events/bug_contest/display_stats.asm index 13b90d0a3..9f6eb50d0 100644 --- a/engine/events/bug_contest/display_stats.asm +++ b/engine/events/bug_contest/display_stats.asm @@ -7,7 +7,7 @@ DisplayCaughtContestMonStats: ; cc000 ld hl, wOptions ld a, [hl] push af - set 4, [hl] + set NO_TEXT_SCROLL, [hl] hlcoord 0, 0 ld b, 4 diff --git a/engine/events/celebi.asm b/engine/events/celebi.asm index 99c22f49f..cb5d08d95 100644 --- a/engine/events/celebi.asm +++ b/engine/events/celebi.asm @@ -325,15 +325,15 @@ CelebiEvent_SetBattleType: ; 49bf3 CheckCaughtCelebi: ; 49bf9 ld a, [wBattleResult] - bit 6, a + bit BATTLERESULT_CAUGHT_CELEBI, a jr z, .false - ld a, $1 + ld a, TRUE ld [wScriptVar], a jr .done .false - xor a + xor a ; FALSE ld [wScriptVar], a .done diff --git a/engine/games/card_flip.asm b/engine/games/card_flip.asm index fbeb3e3b6..8f5131983 100644 --- a/engine/games/card_flip.asm +++ b/engine/games/card_flip.asm @@ -12,7 +12,7 @@ ret_e00ed: ; e00ed (38:40ed) _CardFlip: ; e00ee (38:40ee) ld hl, wOptions - set 4, [hl] + set NO_TEXT_SCROLL, [hl] call ClearBGPalettes call ClearTileMap call ClearSprites diff --git a/engine/items/item_effects.asm b/engine/items/item_effects.asm index 0b5285608..597a75e47 100644 --- a/engine/items/item_effects.asm +++ b/engine/items/item_effects.asm @@ -537,7 +537,7 @@ PokeBallEffect: ; e8a2 cp BATTLETYPE_CELEBI jr nz, .not_celebi ld hl, wBattleResult - set 6, [hl] + set BATTLERESULT_CAUGHT_CELEBI, [hl] .not_celebi ld a, [wPartyCount] @@ -615,7 +615,7 @@ PokeBallEffect: ; e8a2 cp MONS_PER_BOX jr nz, .BoxNotFullYet ld hl, wBattleResult - set 7, [hl] + set BATTLERESULT_BOX_FULL, [hl] .BoxNotFullYet: ld a, [wCurItem] cp FRIEND_BALL @@ -2196,8 +2196,8 @@ PokeDollEffect: ; f48f inc a ld [wForcedSwitch], a ld a, [wBattleResult] - and $c0 - or $2 + and BATTLERESULT_BITMASK + or DRAW ld [wBattleResult], a jp UseItemText diff --git a/engine/movie/trade_animation.asm b/engine/movie/trade_animation.asm index 04c31df80..0b9c72681 100644 --- a/engine/movie/trade_animation.asm +++ b/engine/movie/trade_animation.asm @@ -126,7 +126,7 @@ RunTradeAnimScript: ; 28fa1 ld hl, wOptions ld a, [hl] push af - set 4, [hl] + set NO_TEXT_SCROLL, [hl] call .TradeAnimLayout ld a, [wcf66] and a diff --git a/engine/overworld/scripting.asm b/engine/overworld/scripting.asm index f65f2f9c0..93bb3a5c0 100644 --- a/engine/overworld/scripting.asm +++ b/engine/overworld/scripting.asm @@ -1372,7 +1372,7 @@ Script_startbattle: call BufferScreen predef StartBattle ld a, [wBattleResult] - and $3f + and $ff ^ BATTLERESULT_BITMASK ld [wScriptVar], a ret @@ -1391,10 +1391,10 @@ Script_reloadmapafterbattle: ld hl, wBattleScriptFlags ld d, [hl] - ld [hl], $0 + ld [hl], 0 ld a, [wBattleResult] - and $3f - cp $1 + and $ff ^ BATTLERESULT_BITMASK + cp LOSE jr nz, .notblackedout ld b, BANK(Script_BattleWhiteout) ld hl, Script_BattleWhiteout @@ -1408,7 +1408,7 @@ Script_reloadmapafterbattle: .was_wild ld a, [wBattleResult] - bit 7, a + bit BATTLERESULT_BOX_FULL, a jr z, .done ld b, BANK(Script_SpecialBillCall) ld de, Script_SpecialBillCall diff --git a/engine/overworld/variables.asm b/engine/overworld/variables.asm index 89026fdba..3adf6df33 100644 --- a/engine/overworld/variables.asm +++ b/engine/overworld/variables.asm @@ -146,6 +146,6 @@ _GetVarAction:: ; 80648 (20:4648) .BattleResult: ; 80728 ld a, [wBattleResult] - and $3f + and $ff ^ BATTLERESULT_BITMASK jp .loadstringbuffer2 ; 80730 diff --git a/engine/pokemon/bills_pc.asm b/engine/pokemon/bills_pc.asm index 96d6ac310..75cc3fe35 100644 --- a/engine/pokemon/bills_pc.asm +++ b/engine/pokemon/bills_pc.asm @@ -2,7 +2,7 @@ _DepositPKMN: ; e2391 (38:6391) ld hl, wOptions ld a, [hl] push af - set 4, [hl] + set NO_TEXT_SCROLL, [hl] ld a, [wVramState] push af xor a @@ -264,7 +264,7 @@ _WithdrawPKMN: ; e2583 (38:6583) ld hl, wOptions ld a, [hl] push af - set 4, [hl] + set NO_TEXT_SCROLL, [hl] ld a, [wVramState] push af xor a @@ -507,7 +507,7 @@ _MovePKMNWithoutMail: ; e2759 ld hl, wOptions ld a, [hl] push af - set 4, [hl] + set NO_TEXT_SCROLL, [hl] ld a, [wVramState] push af xor a diff --git a/engine/pokemon/party_menu.asm b/engine/pokemon/party_menu.asm index fc1783c71..11edc0412 100644 --- a/engine/pokemon/party_menu.asm +++ b/engine/pokemon/party_menu.asm @@ -778,7 +778,7 @@ PrintPartyMenuText: ; 5049a .gotstring ; 504be ld a, [wOptions] push af - set 4, a ; disable text delay + set NO_TEXT_SCROLL, a ld [wOptions], a hlcoord 1, 16 ; Coord call PlaceString diff --git a/home/trainers.asm b/home/trainers.asm index 575af65a7..337c67709 100644 --- a/home/trainers.asm +++ b/home/trainers.asm @@ -247,7 +247,7 @@ PrintWinLossText:: ; 3718 .canlose ld a, [wBattleResult] ld hl, wWinTextPointer - and $f + and $f ; WIN? jr z, .ok ld hl, wLossTextPointer diff --git a/mobile/mobile_5c.asm b/mobile/mobile_5c.asm index 86cb67b71..e74321fc9 100644 --- a/mobile/mobile_5c.asm +++ b/mobile/mobile_5c.asm @@ -106,7 +106,7 @@ Function170c06: ; 170c06 call GetSRAMBank ld hl, $a894 ld a, [wBattleResult] - and a + and a ; WIN? jr nz, .asm_170c15 inc [hl] @@ -1504,8 +1504,11 @@ wGameTimerPause:: ; cfbc ds 1 -wcfbe:: ; SGB flags? -; bit 7 +wcfbe:: ; cfbe +; bits 4, 6, or 7 can be used to disable joypad input +; bit 4 +; bit 6: mon fainted? +; bit 7: SGB flag? db ds 1 @@ -1893,7 +1896,11 @@ wVramState:: ; d0ed ; flickers when climbing waterfall db -wBattleResult:: db ; d0ee +wBattleResult:: ; d0ee +; WIN, LOSE, or DRAW +; bit 6: caught celebi +; bit 7: box full + db wUsingItemWithSelect:: db ; d0ef UNION ; d0f0 |