From 83023cda1927525d942f53f87a11b642b979ea96 Mon Sep 17 00:00:00 2001 From: YamaArashi Date: Sat, 7 Feb 2015 12:27:36 -0800 Subject: commented menu stuff --- engine/save.asm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'engine/save.asm') diff --git a/engine/save.asm b/engine/save.asm index 7b1db4c7..29c839f3 100755 --- a/engine/save.asm +++ b/engine/save.asm @@ -173,10 +173,10 @@ NowSavingString: SaveSAVConfirm: ; 73768 (1c:7768) call PrintText hlCoord 0, 7 - ld bc,$0801 ;arrow's coordinates |b = Y|c = X| - ld a,$14 ;one line shifting ($28 = 2 lines) + ld bc,$0801 + ld a,TWO_OPTION_MENU ld [wTextBoxID],a - call DisplayTextBoxID ;handle Yes/No KeyPress + call DisplayTextBoxID ; yes/no menu ld a,[wCurrentMenuItem] ret -- cgit v1.3.1-sl0p From 4fd7a42b235b68ffc11d4f02305b695c2ed05549 Mon Sep 17 00:00:00 2001 From: YamaArashi Date: Sat, 7 Feb 2015 16:24:16 -0800 Subject: commented battle stuff --- engine/battle/14.asm | 64 ++++++++++----------- engine/battle/16.asm | 2 +- engine/battle/1c.asm | 73 +++++++++++++----------- engine/battle/4.asm | 36 ++++++------ engine/battle/4_2.asm | 60 ++++++++++---------- engine/battle/5.asm | 10 ++-- engine/battle/9.asm | 48 +++++++++------- engine/battle/a.asm | 2 +- engine/battle/c.asm | 2 +- engine/battle/core.asm | 30 +++++----- engine/battle/e_2.asm | 107 +++++++++++++++++------------------ engine/cable_club.asm | 8 +-- engine/hall_of_fame.asm | 2 +- engine/hp_bar.asm | 2 +- engine/items/items.asm | 16 +++--- engine/learn_move.asm | 12 ++-- engine/menu/party_menu.asm | 8 +-- engine/menu/status_screen.asm | 2 +- engine/overworld/healing_machine.asm | 17 +++--- engine/predefs.asm | 4 +- engine/save.asm | 8 +-- home.asm | 4 +- home/text.asm | 2 +- hram.asm | 3 + main.asm | 2 +- wram.asm | 1 + 26 files changed, 272 insertions(+), 253 deletions(-) (limited to 'engine/save.asm') diff --git a/engine/battle/14.asm b/engine/battle/14.asm index cabaae07..1b2d7462 100755 --- a/engine/battle/14.asm +++ b/engine/battle/14.asm @@ -1,4 +1,4 @@ -Func_525af: ; 525af (14:65af) +InitBattleVariables: ; 525af (14:65af) ld a, [hTilesetType] ld [wd0d4], a xor a @@ -9,7 +9,7 @@ Func_525af: ; 525af (14:65af) ld [hli], a ld [hli], a ld [hl], a - ld [wListScrollOffset], a ; wcc36 + ld [wListScrollOffset], a ld [wCriticalHitOrOHKO], a ld [wBattleMonSpecies], a ld [wPartyGainExpFlags], a @@ -21,73 +21,73 @@ Func_525af: ; 525af (14:65af) ld [hl], a ld hl, wccd3 ld b, $3c -.asm_525e1 +.loop ld [hli], a dec b - jr nz, .asm_525e1 + jr nz, .loop inc a ld [wccd9], a ld a, [W_CURMAP] cp SAFARI_ZONE_EAST - jr c, .asm_525f9 + jr c, .notSafariBattle cp SAFARI_ZONE_REST_HOUSE_1 - jr nc, .asm_525f9 - ld a, $2 - ld [W_BATTLETYPE], a ; wd05a -.asm_525f9 + jr nc, .notSafariBattle + ld a, $2 ; safari battle + ld [W_BATTLETYPE], a +.notSafariBattle ld hl, PlayBattleMusic ld b, BANK(PlayBattleMusic) jp Bankswitch ParalyzeEffect_: ; 52601 (14:6601) - ld hl, wEnemyMonStatus ; wcfe9 - ld de, W_PLAYERMOVETYPE ; wcfd5 - ld a, [H_WHOSETURN] ; $fff3 + ld hl, wEnemyMonStatus + ld de, W_PLAYERMOVETYPE + ld a, [H_WHOSETURN] and a - jp z, .asm_52613 + jp z, .next ld hl, wBattleMonStatus - ld de, W_ENEMYMOVETYPE ; wcfcf - -.asm_52613 + ld de, W_ENEMYMOVETYPE +.next ld a, [hl] - and a - jr nz, .asm_52659 + and a ; does the target already have a status ailment? + jr nz, .didntAffect +; check if the target is immune due to types ld a, [de] - cp EVASION_DOWN1_EFFECT - jr nz, .asm_5262a + cp ELECTRIC + jr nz, .hitTest ld b, h ld c, l inc bc ld a, [bc] - cp $4 - jr z, .asm_52666 + cp GROUND + jr z, .doesntAffect inc bc ld a, [bc] - cp $4 - jr z, .asm_52666 -.asm_5262a + cp GROUND + jr z, .doesntAffect +.hitTest push hl callab MoveHitTest pop hl ld a, [W_MOVEMISSED] and a - jr nz, .asm_52659 + jr nz, .didntAffect set PAR, [hl] callab QuarterSpeedDueToParalysis - ld c, $1e + ld c, 30 call DelayFrames - callab Func_3fba8 + callab PlayCurrentMoveAnimation ld hl, PrintMayNotAttackText ld b, BANK(PrintMayNotAttackText) jp Bankswitch -.asm_52659 - ld c, $32 +.didntAffect + ld c, 50 call DelayFrames ld hl, PrintDidntAffectText ld b, BANK(PrintDidntAffectText) jp Bankswitch -.asm_52666 - ld c, $32 +.doesntAffect + ld c, 50 call DelayFrames ld hl, PrintDoesntAffectText ld b, BANK(PrintDoesntAffectText) diff --git a/engine/battle/16.asm b/engine/battle/16.asm index d1cecbbe..4a215a37 100755 --- a/engine/battle/16.asm +++ b/engine/battle/16.asm @@ -55,7 +55,7 @@ PrintBeginningBattleText: ; 58d99 (16:4d99) ld hl, UnveiledGhostText call PrintText callab LoadEnemyMonData - callab Func_708ca + callab DoGhostMarowakRevelationAnimation ld hl, WildMonAppearedText call PrintText diff --git a/engine/battle/1c.asm b/engine/battle/1c.asm index b905777b..2e360e65 100755 --- a/engine/battle/1c.asm +++ b/engine/battle/1c.asm @@ -1,85 +1,90 @@ -Func_708ca: ; 708ca (1c:48ca) +DoGhostMarowakRevelationAnimation: ; 708ca (1c:48ca) ld a, $e4 - ld [rOBP1], a ; $ff49 - call Func_7092a + ld [rOBP1], a + call CopyMonPicFromBGToSpriteVRAM ; cover the BG ghost pic with a sprite ghost pic that looks the same +; now that the ghost pic is being displayed using sprites, clear the ghost pic from the BG tilemap hlCoord 12, 0 ld bc, $707 call ClearScreenArea call Delay3 xor a - ld [H_AUTOBGTRANSFERENABLED], a ; $ffba - ld a, $91 + ld [H_AUTOBGTRANSFERENABLED], a ; disable BG transfer so we don't see the Marowak too soon +; replace ghost pic with Marowak in BG + ld a, MAROWAK ld [wHPBarMaxHP], a ld a, $1 - ld [H_WHOSETURN], a ; $fff3 + ld [H_WHOSETURN], a callab Func_79793 + ; alternate between black and light grey 8 times. + ; this makes the ghost's body appear to flash ld d, $80 - call Func_704f3 -.asm_708f6 - ld c, $a + call FlashSprite8Times +.fadeOutGhostLoop + ld c, 10 call DelayFrames - ld a, [rOBP1] ; $ff49 + ld a, [rOBP1] sla a sla a - ld [rOBP1], a ; $ff49 - jr nz, .asm_708f6 + ld [rOBP1], a + jr nz, .fadeOutGhostLoop call ClearSprites - call Func_7092a + call CopyMonPicFromBGToSpriteVRAM ; copy Marowak pic from BG to sprite VRAM ld b, $e4 -.asm_7090d - ld c, $a +.fadeInMarowakLoop + ld c, 10 call DelayFrames - ld a, [rOBP1] ; $ff49 + ld a, [rOBP1] srl b rra srl b rra - ld [rOBP1], a ; $ff49 + ld [rOBP1], a ld a, b and a - jr nz, .asm_7090d + jr nz, .fadeInMarowakLoop ld a, $1 - ld [H_AUTOBGTRANSFERENABLED], a ; $ffba + ld [H_AUTOBGTRANSFERENABLED], a ; enable BG transfer so the BG Marowak pic will be visible after the sprite one is cleared call Delay3 jp ClearSprites -Func_7092a: ; 7092a (1c:492a) +; copies a mon pic's from background VRAM to sprite VRAM and sets up OAM +CopyMonPicFromBGToSpriteVRAM: ; 7092a (1c:492a) ld de, vFrontPic ld hl, vSprites ld bc, 7 * 7 call CopyVideoData ld a, $10 - ld [W_BASECOORDY], a ; wd082 + ld [W_BASECOORDY], a ld a, $70 - ld [W_BASECOORDX], a ; wd081 + ld [W_BASECOORDX], a ld hl, wOAMBuffer ld bc, $606 ld d, $8 -.asm_70948 +.oamLoop push bc - ld a, [W_BASECOORDY] ; wd082 + ld a, [W_BASECOORDY] ld e, a -.asm_7094d +.oamInnerLoop ld a, e add $8 ld e, a ld [hli], a - ld a, [W_BASECOORDX] ; wd081 + ld a, [W_BASECOORDX] ld [hli], a ld a, d ld [hli], a - ld a, $10 + ld a, $10 ; use OBP1 ld [hli], a inc d dec c - jr nz, .asm_7094d + jr nz, .oamInnerLoop inc d - ld a, [W_BASECOORDX] ; wd081 + ld a, [W_BASECOORDX] add $8 - ld [W_BASECOORDX], a ; wd081 + ld [W_BASECOORDX], a pop bc dec b - jr nz, .asm_70948 + jr nz, .oamLoop ret BattleTransition: ; 7096d (1c:496d) @@ -270,9 +275,9 @@ BattleTransitionTile: ; 70a59 (1c:4a59) BattleTransition_BlackScreen: ; 70a69 (1c:4a69) ld a, $ff - ld [rBGP], a ; $ff47 - ld [rOBP0], a ; $ff48 - ld [rOBP1], a ; $ff49 + ld [rBGP], a + ld [rOBP0], a + ld [rOBP1], a ret ; for non-dungeon trainer battles diff --git a/engine/battle/4.asm b/engine/battle/4.asm index db6614cc..37ffaa05 100755 --- a/engine/battle/4.asm +++ b/engine/battle/4.asm @@ -1,14 +1,14 @@ -Func_128d8: ; 128d8 (4:68d8) - ld a, [W_YCOORD] ; wd361 +; returns whether the player is one tile outside the map in Z +IsPlayerJustOutsideMap: ; 128d8 (4:68d8) + ld a, [W_YCOORD] ld b, a - ld a, [W_CURMAPHEIGHT] ; wd368 - call Func_128ea + ld a, [W_CURMAPHEIGHT] + call .compareCoordWithMapDimension ret z - ld a, [W_XCOORD] ; wd362 + ld a, [W_XCOORD] ld b, a - ld a, [W_CURMAPWIDTH] ; wd369 - -Func_128ea: ; 128ea (4:68ea) + ld a, [W_CURMAPWIDTH] +.compareCoordWithMapDimension add a cp b ret z @@ -24,7 +24,7 @@ Func_128f6: ; 128f6 (4:68f6) call GetPredefRegisters ld a, $2 asm_128fb: ; 128fb (4:68fb) - ld [wListMenuID], a ; wListMenuID + ld [wListMenuID], a push hl ld a, [wcf99] ld b, a @@ -37,7 +37,7 @@ asm_128fb: ; 128fb (4:68fb) ld e, a ld a, $6 ld d, a - jp Func_12924 + jp DrawHPBarAndFraction .asm_12913 ld a, [wcfba] ld d, a @@ -48,21 +48,21 @@ asm_128fb: ; 128fb (4:68fb) ld d, a ld c, a -Func_12924: ; 12924 (4:6924) +DrawHPBarAndFraction: ; 12924 (4:6924) pop hl push de push hl push hl call DrawHPBar pop hl - ld a, [$fff6] + ld a, [hFlags_0xFFF6] bit 0, a - jr z, .asm_12937 - ld bc, $9 - jr .asm_1293a -.asm_12937 - ld bc, $15 -.asm_1293a + jr z, .printFractionBelowBar + ld bc, $9 ; right of bar + jr .printHPFraction +.printFractionBelowBar + ld bc, SCREEN_WIDTH + 1 ; below bar +.printHPFraction add hl, bc ld de, wcf99 ld bc, $203 diff --git a/engine/battle/4_2.asm b/engine/battle/4_2.asm index a3ef1264..287c8eae 100755 --- a/engine/battle/4_2.asm +++ b/engine/battle/4_2.asm @@ -87,7 +87,9 @@ PickUpPayDayMoneyText: ; 1386b (4:786b) TX_FAR _PickUpPayDayMoneyText db "@" -Func_13870: ; 13870 (4:7870) +; try to initiate a wild pokemon encounter +; returns success in Z +TryDoWildEncounter: ; 13870 (4:7870) ld a, [wNPCMovementScriptPointerTableNum] and a ret nz @@ -95,14 +97,14 @@ Func_13870: ; 13870 (4:7870) and a ret nz callab IsPlayerStandingOnDoorTileOrWarpTile - jr nc, .asm_13888 -.asm_13884 + jr nc, .notStandingOnDoorOrWarpTile +.CantEncounter ld a, $1 and a ret -.asm_13888 - callab Func_128d8 - jr z, .asm_13884 +.notStandingOnDoorOrWarpTile + callab IsPlayerJustOutsideMap + jr z, .CantEncounter ld a, [wRepelRemainingSteps] and a jr z, .asm_1389e @@ -110,8 +112,8 @@ Func_13870: ; 13870 (4:7870) jr z, .lastRepelStep ld [wRepelRemainingSteps], a .asm_1389e -; determine if wild pokémon can appear in the half-block we’re standing -; is the bottom right tile (9,9) of the half-block are we standing a grass/water tile? +; determine if wild pokémon can appear in the half-block we’re standing in +; is the bottom right tile (9,9) of the half-block we're standing in a grass/water tile? hlCoord 9, 9 ld c, [hl] ld a, [W_GRASSTILE] @@ -127,17 +129,17 @@ Func_13870: ; 13870 (4:7870) ; …as long as it’s not Viridian Forest or Safari Zone. ld a, [W_CURMAP] cp REDS_HOUSE_1F ; is this an indoor map? - jr c, .CantEncounter + jr c, .CantEncounter2 ld a, [W_CURMAPTILESET] cp FOREST ; Viridian Forest/Safari Zone - jr z, .CantEncounter + jr z, .CantEncounter2 ld a, [W_GRASSRATE] .CanEncounter -; weigh encounter chance to a random number to determine if there will be an encounter +; compare encounter chance with a random number to determine if there will be an encounter ld b, a ld a, [hRandomAdd] cp b - jr nc, .CantEncounter + jr nc, .CantEncounter2 ld a, [hRandomSub] ld b, a ld hl, WildMonEncounterSlotChances @@ -148,15 +150,15 @@ Func_13870: ; 13870 (4:7870) inc hl jr .determineEncounterSlot .gotEncounterSlot -; determine which wild pokémon (grass or water) can appear in the half-block we’re standing +; determine which wild pokémon (grass or water) can appear in the half-block we’re standing in ld c, [hl] ld hl, W_GRASSMONS aCoord 8, 9 - cp $14 ; is the bottom left tile (8,9) of the half-block are we standing a water tile? + cp $14 ; is the bottom left tile (8,9) of the half-block we're standing in a water tile? jr nz, .gotWildEncounterType ; else, it's treated as a grass tile by default ld hl, W_WATERMONS ; since the bottom right tile of a "left shore" half-block is $14 but the bottom left tile is not, -; "left shore" half-blocks (such as the one in the east coast of Cinnabar), load grass encounters. +; "left shore" half-blocks (such as the one in the east coast of Cinnabar) load grass encounters. .gotWildEncounterType ld b, $0 add hl, bc @@ -172,15 +174,15 @@ Func_13870: ; 13870 (4:7870) ld b, a ld a, [W_CURENEMYLVL] cp b - jr c, .CantEncounter + jr c, .CantEncounter2 ; repel prevents encounters if the leading party mon's level is higher than the wild mon jr .willEncounter .lastRepelStep ld [wRepelRemainingSteps], a ld a, $d2 - ld [H_DOWNARROWBLINKCNT2], a ; $ff8c + ld [H_DOWNARROWBLINKCNT2], a call EnableAutoTextBoxDrawing call DisplayTextID -.CantEncounter +.CantEncounter2 ld a, $1 and a ret @@ -293,8 +295,8 @@ ConversionEffect_: ; 139a3 (4:79a3) inc de ld a, [hl] ld [de], a - ld hl, Func_3fba8 - call Func_139d5 + ld hl, PlayCurrentMoveAnimation + call CallBankF ld hl, ConvertedTypeText jp PrintText @@ -304,22 +306,22 @@ ConvertedTypeText: ; 139cd (4:79cd) PrintButItFailedText: ; 139d2 (4:79d2) ld hl, PrintButItFailedText_ -Func_139d5: ; 139d5 (4:79d5) +CallBankF: ; 139d5 (4:79d5) ld b, BANK(PrintButItFailedText_) jp Bankswitch HazeEffect_: ; 139da (4:79da) ld a, $7 ld hl, wPlayerMonAttackMod - call Func_13a43 + call ResetStatMods ld hl, wEnemyMonAttackMod - call Func_13a43 + call ResetStatMods ld hl, wPlayerMonUnmodifiedAttack ld de, wBattleMonAttack - call Func_13a4a + call ResetStats ld hl, wEnemyMonUnmodifiedAttack ld de, wEnemyMonAttack - call Func_13a4a + call ResetStats ld hl, wEnemyMonStatus ld de, wEnemySelectedMove ld a, [H_WHOSETURN] @@ -347,8 +349,8 @@ HazeEffect_: ; 139da (4:79da) call CureStatuses ld hl, W_ENEMYBATTSTATUS1 call CureStatuses - ld hl, Func_3fba8 - call Func_139d5 + ld hl, PlayCurrentMoveAnimation + call CallBankF ld hl, StatusChangesEliminatedText jp PrintText @@ -363,7 +365,7 @@ CureStatuses: ; 13a37 (4:7a37) ld [hl], a ret -Func_13a43: ; 13a43 (4:7a43) +ResetStatMods: ; 13a43 (4:7a43) ld b, $8 .loop ld [hli], a @@ -371,7 +373,7 @@ Func_13a43: ; 13a43 (4:7a43) jr nz, .loop ret -Func_13a4a: ; 13a4a (4:7a4a) +ResetStats: ; 13a4a (4:7a4a) ld b, $8 .loop ld a, [hli] diff --git a/engine/battle/5.asm b/engine/battle/5.asm index e534470d..ef3e1362 100755 --- a/engine/battle/5.asm +++ b/engine/battle/5.asm @@ -4,7 +4,7 @@ SubstituteEffectHandler: ; 17dad (5:7dad) ld hl, wBattleMonMaxHP ld de, wPlayerSubstituteHP ld bc, W_PLAYERBATTSTATUS2 - ld a, [$fff3] ;whose turn? + ld a, [H_WHOSETURN] and a jr z, .notEnemy ld hl, wEnemyMonMaxHP @@ -23,8 +23,8 @@ SubstituteEffectHandler: ; 17dad (5:7dad) srl a rr b push de - ld de, $fff2 ;subtract 8 to point to [current hp] instead of [max hp] - add hl, de ;HL -= 8 + ld de, wBattleMonHP - wBattleMonMaxHP + add hl, de ; point hl to current HP pop de ld a, b ld [de], a ;save copy of HP to subtract in ccd7/ccd8 [how much HP substitute has] @@ -44,8 +44,8 @@ SubstituteEffectHandler: ; 17dad (5:7dad) set HasSubstituteUp, [hl] ;set bit 4 of flags, user now has substitute ld a, [W_OPTIONS] ;load options bit 7, a ;battle animation is enabled? - ld hl, Func_3fba8 ;animation enabled: 0F:7BA8 - ld b, BANK(Func_3fba8) + ld hl, PlayCurrentMoveAnimation ;animation enabled: 0F:7BA8 + ld b, BANK(PlayCurrentMoveAnimation) jr z, .animationEnabled ld hl, AnimationSubstitute ;animation disabled: 1E:56E0 ld b, BANK(AnimationSubstitute) diff --git a/engine/battle/9.asm b/engine/battle/9.asm index eb86cce0..e7265f41 100755 --- a/engine/battle/9.asm +++ b/engine/battle/9.asm @@ -1,35 +1,43 @@ -Func_27d6b: ; 27d6b (9:7d6b) +; [wd0b5] = pokemon ID +; hl = dest addr +PrintMonType: ; 27d6b (9:7d6b) call GetPredefRegisters push hl call GetMonHeader pop hl push hl ld a, [W_MONHTYPE1] - call Func_27d89 + call PrintType ld a, [W_MONHTYPE1] ld b, a ld a, [W_MONHTYPE2] cp b pop hl - jr z, asm_27d8c - ld bc, $28 + jr z, EraseType2Text + ld bc, SCREEN_WIDTH * 2 add hl, bc -Func_27d89: ; 27d89 (9:7d89) +; a = type +; hl = dest addr +PrintType: ; 27d89 (9:7d89) push hl - jr asm_27d9f -asm_27d8c: ; 27d8c (9:7d8c) - ld a, $7f + jr PrintType_ + +; erase "TYPE2/" if the mon only has 1 type +EraseType2Text: ; 27d8c (9:7d8c) + ld a, " " ld bc, $13 add hl, bc ld bc, $6 jp FillMemory -Func_27d98: ; 27d98 (9:7d98) +PrintMoveType: ; 27d98 (9:7d98) call GetPredefRegisters push hl - ld a, [W_PLAYERMOVETYPE] ; wcfd5 -asm_27d9f: ; 27d9f (9:7d9f) + ld a, [W_PLAYERMOVETYPE] +; fall through + +PrintType_: ; 27d9f (9:7d9f) add a ld hl, TypeNames ld e, a @@ -157,19 +165,19 @@ CooltrainerFName: ; 27f79 (9:7f79) db "COOLTRAINER♀@" FocusEnergyEffect_: ; 27f86 (9:7f86) - ld hl, W_PLAYERBATTSTATUS2 ; W_PLAYERBATTSTATUS2 - ld a, [H_WHOSETURN] ; $fff3 + ld hl, W_PLAYERBATTSTATUS2 + ld a, [H_WHOSETURN] and a - jr z, .asm_27f91 - ld hl, W_ENEMYBATTSTATUS2 ; W_ENEMYBATTSTATUS2 -.asm_27f91 + jr z, .notEnemy + ld hl, W_ENEMYBATTSTATUS2 +.notEnemy bit GettingPumped, [hl] ; is mon already using focus energy? - jr nz, .asm_27fa5 + jr nz, .alreadyUsing set GettingPumped, [hl] ; mon is now using focus energy - callab Func_3fba8 - ld hl, GettingPumpedText ; $7fb2 + callab PlayCurrentMoveAnimation + ld hl, GettingPumpedText jp PrintText -.asm_27fa5 +.alreadyUsing ld c, $32 call DelayFrames ld hl, PrintButItFailedText_ diff --git a/engine/battle/a.asm b/engine/battle/a.asm index 917a462b..a257d143 100755 --- a/engine/battle/a.asm +++ b/engine/battle/a.asm @@ -21,7 +21,7 @@ LeechSeedEffect_: ; 2bea9 (a:7ea9) bit Seeded, [hl] jr nz, .asm_2bee7 set Seeded, [hl] - callab Func_3fba8 + callab PlayCurrentMoveAnimation ld hl, WasSeededText ; $7ef2 jp PrintText .asm_2bee7 diff --git a/engine/battle/c.asm b/engine/battle/c.asm index 07369375..b7c20ef6 100755 --- a/engine/battle/c.asm +++ b/engine/battle/c.asm @@ -8,7 +8,7 @@ MistEffect_: ; 33f2b (c:7f2b) bit ProtectedByMist, [hl] ; is mon protected by mist? jr nz, .asm_33f4a set ProtectedByMist, [hl] ; mon is now protected by mist - callab Func_3fba8 + callab PlayCurrentMoveAnimation ld hl, ShroudedInMistText jp PrintText .asm_33f4a diff --git a/engine/battle/core.asm b/engine/battle/core.asm index de6bc2e3..6ea2c55b 100755 --- a/engine/battle/core.asm +++ b/engine/battle/core.asm @@ -2541,13 +2541,13 @@ MoveSelectionMenu: ; 3d219 (f:5219) .writemoves ld de, wd0e1 - ld a, [$fff6] + ld a, [hFlags_0xFFF6] set 2, a - ld [$fff6], a + ld [hFlags_0xFFF6], a call PlaceString - ld a, [$fff6] + ld a, [hFlags_0xFFF6] res 2, a - ld [$fff6], a + ld [hFlags_0xFFF6], a ret .regularmenu @@ -2666,10 +2666,10 @@ SelectMenuItem: ; 3d2fe (f:52fe) call AddNTimes ld [hl], $ec .select - ld hl, $fff6 + ld hl, hFlags_0xFFF6 set 1, [hl] call HandleMenuInput - ld hl, $fff6 + ld hl, hFlags_0xFFF6 res 1, [hl] bit 6, a jp nz, CursorUp ; up @@ -2959,7 +2959,7 @@ PrintMenuItem: ; 3d4b6 (f:54b6) call PrintNumber call GetCurrentMove hlCoord 2, 10 - predef Func_27d98 + predef PrintMoveType .moveDisabled ld a, $1 ld [H_AUTOBGTRANSFERENABLED], a @@ -6814,7 +6814,7 @@ asm_3ef23: ; 3ef23 (f:6f23) ld a, [wNumberOfNoRandomBattleStepsLeft] and a ret nz - callab Func_13870 + callab TryDoWildEncounter ret nz asm_3ef3d: ; 3ef3d (f:6f3d) ld a, [wMapPalOffset] @@ -6823,7 +6823,7 @@ asm_3ef3d: ; 3ef3d (f:6f3d) ld a, [hl] push af res 1, [hl] - callab Func_525af + callab InitBattleVariables ld a, [wEnemyMonSpecies2] sub $c8 jp c, InitWildBattle @@ -7637,7 +7637,7 @@ UpdateStatDone: ; 3f4ca (f:74ca) call nz, Bankswitch ; play Minimize animation unless there's Substitute involved pop de .asm_3f4f9 - call Func_3fba8 + call PlayCurrentMoveAnimation ld a, [de] cp MINIMIZE jr nz, .applyBadgeBoostsAndStatusPenalties @@ -8451,7 +8451,7 @@ MimicEffect: ; 3f9ed (f:79ed) ld [hl], a ld [wd11e], a call GetMoveName - call Func_3fba8 + call PlayCurrentMoveAnimation ld hl, MimicLearnedMoveText jp PrintText .asm_3fa74 @@ -8467,7 +8467,7 @@ LeechSeedEffect: ; 3fa7c (f:7a7c) jp Bankswitch SplashEffect: ; 3fa84 (f:7a84) - call Func_3fba8 + call PlayCurrentMoveAnimation jp PrintNoEffectText DisableEffect: ; 3fa8a (f:7a8a) @@ -8662,15 +8662,15 @@ Func_3fb96: ; 3fb96 (f:7b96) ld [wcc5b], a jp Func_3fbbc -Func_3fba8: ; 3fba8 (f:7ba8) +PlayCurrentMoveAnimation: ; 3fba8 (f:7ba8) xor a ld [wcc5b], a ld a, [H_WHOSETURN] and a ld a, [W_PLAYERMOVENUM] - jr z, .asm_3fbb7 + jr z, .notEnemyTurn ld a, [W_ENEMYMOVENUM] -.asm_3fbb7 +.notEnemyTurn and a ret z diff --git a/engine/battle/e_2.asm b/engine/battle/e_2.asm index 6c159c56..1106f531 100755 --- a/engine/battle/e_2.asm +++ b/engine/battle/e_2.asm @@ -1,13 +1,13 @@ HealEffect_: ; 3b9ec (e:79ec) - ld a, [H_WHOSETURN] ; $fff3 + ld a, [H_WHOSETURN] and a - ld de, wBattleMonHP ; wd015 - ld hl, wBattleMonMaxHP ; wd023 - ld a, [W_PLAYERMOVENUM] ; wcfd2 + ld de, wBattleMonHP + ld hl, wBattleMonMaxHP + ld a, [W_PLAYERMOVENUM] jr z, .asm_3ba03 - ld de, wEnemyMonHP ; wEnemyMonHP - ld hl, wEnemyMonMaxHP ; wEnemyMonMaxHP - ld a, [W_ENEMYMOVENUM] ; W_ENEMYMOVENUM + ld de, wEnemyMonHP + ld hl, wEnemyMonMaxHP + ld a, [W_ENEMYMOVENUM] .asm_3ba03 ld b, a ld a, [de] @@ -16,27 +16,27 @@ HealEffect_: ; 3b9ec (e:79ec) inc hl ld a, [de] sbc [hl] - jp z, Func_3ba97 + jp z, .failed ld a, b cp REST jr nz, .asm_3ba37 push hl push de push af - ld c, $32 + ld c, 50 call DelayFrames - ld hl, wBattleMonStatus ; wBattleMonStatus - ld a, [H_WHOSETURN] ; $fff3 + ld hl, wBattleMonStatus + ld a, [H_WHOSETURN] and a jr z, .asm_3ba25 - ld hl, wEnemyMonStatus ; wcfe9 + ld hl, wEnemyMonStatus .asm_3ba25 ld a, [hl] and a ld [hl], 2 ; Number of turns from Rest - ld hl, StartedSleepingEffect ; $7aa2 + ld hl, StartedSleepingEffect jr z, .asm_3ba31 - ld hl, FellAsleepBecameHealthyText ; $7aa7 + ld hl, FellAsleepBecameHealthyText .asm_3ba31 call PrintText pop af @@ -81,9 +81,9 @@ HealEffect_: ; 3b9ec (e:79ec) ld [de], a ld [wHPBarNewHP], a .asm_3ba6f - ld hl, Func_3fba8 ; $7ba8 + ld hl, PlayCurrentMoveAnimation call BankswitchEtoF - ld a, [H_WHOSETURN] ; $fff3 + ld a, [H_WHOSETURN] and a hlCoord 10, 9 ld a, $1 @@ -91,15 +91,14 @@ HealEffect_: ; 3b9ec (e:79ec) hlCoord 2, 2 xor a .asm_3ba83 - ld [wListMenuID], a ; wListMenuID + ld [wListMenuID], a predef UpdateHPBar2 - ld hl, DrawHUDsAndHPBars ; $4d5a + ld hl, DrawHUDsAndHPBars call BankswitchEtoF - ld hl, RegainedHealthText ; $7aac + ld hl, RegainedHealthText jp PrintText - -Func_3ba97: ; 3ba97 (e:7a97) - ld c, $32 +.failed + ld c, 50 call DelayFrames ld hl, PrintButItFailedText_ jp BankswitchEtoF @@ -119,37 +118,37 @@ RegainedHealthText: ; 3baac (e:7aac) TransformEffect_: ; 3bab1 (e:7ab1) ld hl, wBattleMonSpecies ld de, wEnemyMonSpecies - ld bc, W_ENEMYBATTSTATUS3 ; W_ENEMYBATTSTATUS3 - ld a, [W_ENEMYBATTSTATUS1] ; W_ENEMYBATTSTATUS1 - ld a, [H_WHOSETURN] ; $fff3 + ld bc, W_ENEMYBATTSTATUS3 + ld a, [W_ENEMYBATTSTATUS1] + ld a, [H_WHOSETURN] and a jr nz, .asm_3bad1 ld hl, wEnemyMonSpecies ld de, wBattleMonSpecies - ld bc, W_PLAYERBATTSTATUS3 ; W_PLAYERBATTSTATUS3 - ld [wPlayerMoveListIndex], a ; wPlayerMoveListIndex - ld a, [W_PLAYERBATTSTATUS1] ; W_PLAYERBATTSTATUS1 + ld bc, W_PLAYERBATTSTATUS3 + ld [wPlayerMoveListIndex], a + ld a, [W_PLAYERBATTSTATUS1] .asm_3bad1 bit Invulnerable, a ; is mon invulnerable to typical attacks? (fly/dig) - jp nz, Func_3bb8c + jp nz, .failed push hl push de push bc - ld hl, W_PLAYERBATTSTATUS2 ; W_PLAYERBATTSTATUS2 - ld a, [H_WHOSETURN] ; $fff3 + ld hl, W_PLAYERBATTSTATUS2 + ld a, [H_WHOSETURN] and a jr z, .asm_3bae4 - ld hl, W_ENEMYBATTSTATUS2 ; W_ENEMYBATTSTATUS2 + ld hl, W_ENEMYBATTSTATUS2 .asm_3bae4 bit HasSubstituteUp, [hl] push af ld hl, Func_79747 ld b, BANK(Func_79747) call nz, Bankswitch - ld a, [W_OPTIONS] ; W_OPTIONS + ld a, [W_OPTIONS] add a - ld hl, Func_3fba8 ; $7ba8 - ld b, BANK(Func_3fba8) + ld hl, PlayCurrentMoveAnimation + ld b, BANK(PlayCurrentMoveAnimation) jr nc, .asm_3baff ld hl, AnimationTransformMon ld b, BANK(AnimationTransformMon) @@ -178,7 +177,7 @@ TransformEffect_: ; 3bab1 (e:7ab1) inc bc inc bc call CopyData - ld a, [H_WHOSETURN] ; $fff3 + ld a, [H_WHOSETURN] and a jr z, .asm_3bb32 ld a, [de] @@ -228,15 +227,15 @@ TransformEffect_: ; 3bab1 (e:7ab1) call GetMonName ld hl, wEnemyMonUnmodifiedAttack ld de, wPlayerMonUnmodifiedAttack - call Func_3bb7d - ld hl, wEnemyMonStatMods ; wcd2e - ld de, wPlayerMonStatMods ; wcd1a - call Func_3bb7d - ld hl, TransformedText ; $7b92 + call .copyBasedOnTurn + ld hl, wEnemyMonStatMods + ld de, wPlayerMonStatMods + call .copyBasedOnTurn + ld hl, TransformedText jp PrintText -Func_3bb7d: ; 3bb7d (e:7b7d) - ld a, [H_WHOSETURN] ; $fff3 +.copyBasedOnTurn + ld a, [H_WHOSETURN] and a jr z, .asm_3bb86 push hl @@ -247,8 +246,8 @@ Func_3bb7d: ; 3bb7d (e:7b7d) ld bc, $8 jp CopyData -Func_3bb8c: ; 3bb8c (e:7b8c) - ld hl, PrintButItFailedText_ ; $7b53 +.failed + ld hl, PrintButItFailedText_ jp BankswitchEtoF TransformedText: ; 3bb92 (e:7b92) @@ -256,13 +255,13 @@ TransformedText: ; 3bb92 (e:7b92) db "@" ReflectLightScreenEffect_: ; 3bb97 (e:7b97) - ld hl, W_PLAYERBATTSTATUS3 ; W_PLAYERBATTSTATUS3 - ld de, W_PLAYERMOVEEFFECT ; wcfd3 - ld a, [H_WHOSETURN] ; $fff3 + ld hl, W_PLAYERBATTSTATUS3 + ld de, W_PLAYERMOVEEFFECT + ld a, [H_WHOSETURN] and a jr z, .asm_3bba8 - ld hl, W_ENEMYBATTSTATUS3 ; W_ENEMYBATTSTATUS3 - ld de, W_ENEMYMOVEEFFECT ; W_ENEMYMOVEEFFECT + ld hl, W_ENEMYBATTSTATUS3 + ld de, W_ENEMYMOVEEFFECT .asm_3bba8 ld a, [de] cp LIGHT_SCREEN_EFFECT @@ -270,23 +269,23 @@ ReflectLightScreenEffect_: ; 3bb97 (e:7b97) bit HasLightScreenUp, [hl] ; is mon already protected by light screen? jr nz, .moveFailed set HasLightScreenUp, [hl] ; mon is now protected by light screen - ld hl, LightScreenProtectedText ; $7bd7 + ld hl, LightScreenProtectedText jr .asm_3bbc1 .reflect bit HasReflectUp, [hl] ; is mon already protected by reflect? jr nz, .moveFailed set HasReflectUp, [hl] ; mon is now protected by reflect - ld hl, ReflectGainedArmorText ; $7bdc + ld hl, ReflectGainedArmorText .asm_3bbc1 push hl - ld hl, Func_3fba8 ; $7ba8 + ld hl, PlayCurrentMoveAnimation call BankswitchEtoF pop hl jp PrintText .moveFailed ld c, $32 call DelayFrames - ld hl, PrintButItFailedText_ ; $7b53 + ld hl, PrintButItFailedText_ jp BankswitchEtoF LightScreenProtectedText: ; 3bbd7 (e:7bd7) diff --git a/engine/cable_club.asm b/engine/cable_club.asm index 92a4e33b..68c6a8dc 100755 --- a/engine/cable_club.asm +++ b/engine/cable_club.asm @@ -338,10 +338,10 @@ TradeCenter_SelectMon: ld a, 1 ld [wTopMenuItemX], a .enemyMonMenu_HandleInput - ld hl, $fff6 + ld hl, hFlags_0xFFF6 set 1, [hl] call HandleMenuInput - ld hl, $fff6 + ld hl, hFlags_0xFFF6 res 1, [hl] and a jp z, .getNewInput @@ -403,10 +403,10 @@ TradeCenter_SelectMon: ld bc, $0601 call ClearScreenArea .playerMonMenu_HandleInput - ld hl, $fff6 + ld hl, hFlags_0xFFF6 set 1, [hl] call HandleMenuInput - ld hl, $fff6 + ld hl, hFlags_0xFFF6 res 1, [hl] and a ; was anything pressed? jr nz, .playerMonMenu_SomethingPressed diff --git a/engine/hall_of_fame.asm b/engine/hall_of_fame.asm index 80acfeeb..30979118 100755 --- a/engine/hall_of_fame.asm +++ b/engine/hall_of_fame.asm @@ -170,7 +170,7 @@ Func_702f0: ; 702f0 (1c:42f0) ld a, [wWhichTrade] ; wWhichTrade ld [wd0b5], a hlCoord 3, 9 - predef Func_27d6b + predef PrintMonType ld a, [wWhichTrade] ; wWhichTrade jp PlayCry diff --git a/engine/hp_bar.asm b/engine/hp_bar.asm index 9ff9e3cf..a53511c7 100755 --- a/engine/hp_bar.asm +++ b/engine/hp_bar.asm @@ -211,7 +211,7 @@ UpdateHPBar_PrintHPNumber: ; faf5 (3:7af5) ld a, [wHPBarOldHP+1] ld [wcef0], a push hl - ld a, [$fff6] + ld a, [hFlags_0xFFF6] bit 0, a jr z, .asm_fb15 ld de, $9 diff --git a/engine/items/items.asm b/engine/items/items.asm index 05f77175..99c97fef 100755 --- a/engine/items/items.asm +++ b/engine/items/items.asm @@ -919,15 +919,15 @@ ItemUseMedicine: ; dabb (3:5abb) call AddNTimes ; calculate coordinates of HP bar of pokemon that used Softboiled ld a,(SFX_02_3d - SFX_Headers_02) / 3 call PlaySoundWaitForCurrent ; play sound - ld a,[$fff6] + ld a,[hFlags_0xFFF6] set 0,a - ld [$fff6],a + ld [hFlags_0xFFF6],a ld a,$02 ld [wListMenuID],a predef UpdateHPBar2 ; animate HP bar decrease of pokemon that used Softboiled - ld a,[$fff6] + ld a,[hFlags_0xFFF6] res 0,a - ld [$fff6],a + ld [hFlags_0xFFF6],a pop af ld b,a ; store heal amount (1/5 of max HP) ld hl,wHPBarOldHP + 1 @@ -1069,15 +1069,15 @@ ItemUseMedicine: ; dabb (3:5abb) jr z,.playStatusAilmentCuringSound ld a,(SFX_02_3d - SFX_Headers_02) / 3 ; HP healing sound call PlaySoundWaitForCurrent ; play sound - ld a,[$fff6] + ld a,[hFlags_0xFFF6] set 0,a - ld [$fff6],a + ld [hFlags_0xFFF6],a ld a,$02 ld [wListMenuID],a predef UpdateHPBar2 ; animate the HP bar lengthening - ld a,[$fff6] + ld a,[hFlags_0xFFF6] res 0,a - ld [$fff6],a + ld [hFlags_0xFFF6],a ld a,$f7 ; revived message ld [wd07d],a ld a,[wcf91] diff --git a/engine/learn_move.asm b/engine/learn_move.asm index f96c1aeb..c991058d 100755 --- a/engine/learn_move.asm +++ b/engine/learn_move.asm @@ -126,13 +126,13 @@ TryingToLearn: ; 6f07 (1:6f07) call TextBoxBorder hlCoord 6, 8 ld de, wd0e1 - ld a, [$fff6] + ld a, [hFlags_0xFFF6] set 2, a - ld [$fff6], a + ld [hFlags_0xFFF6], a call PlaceString - ld a, [$fff6] + ld a, [hFlags_0xFFF6] res 2, a - ld [$fff6], a + ld [hFlags_0xFFF6], a ld hl, wTopMenuItemY ld a, $8 ld [hli], a @@ -146,10 +146,10 @@ TryingToLearn: ; 6f07 (1:6f07) ld a, $3 ld [hli], a ld [hl], $0 - ld hl, $fff6 + ld hl, hFlags_0xFFF6 set 1, [hl] call HandleMenuInput - ld hl, $fff6 + ld hl, hFlags_0xFFF6 res 1, [hl] push af call LoadScreenTilesFromBuffer1 diff --git a/engine/menu/party_menu.asm b/engine/menu/party_menu.asm index 10fc4182..a2c02481 100755 --- a/engine/menu/party_menu.asm +++ b/engine/menu/party_menu.asm @@ -88,14 +88,14 @@ RedrawPartyMenu_: ; 12ce3 (4:6ce3) pop hl push hl ld bc,20 + 1 ; down 1 row and right 1 column - ld a,[$FFF6] + ld a,[hFlags_0xFFF6] set 0,a - ld [$FFF6],a + ld [hFlags_0xFFF6],a add hl,bc predef Func_128f6 ; draw HP bar and prints current / max HP - ld a,[$FFF6] + ld a,[hFlags_0xFFF6] res 0,a - ld [$FFF6],a + ld [hFlags_0xFFF6],a call SetPartyMenuHealthBarColor ; color the HP bar (on SGB) pop hl jr .printLevel diff --git a/engine/menu/status_screen.asm b/engine/menu/status_screen.asm index f215fd0e..2fc5e713 100755 --- a/engine/menu/status_screen.asm +++ b/engine/menu/status_screen.asm @@ -82,7 +82,7 @@ StatusScreen: ; 12953 (4:6953) ld bc, $8103 ; Zero-padded, 3 call PrintNumber ; Pokémon no. hlCoord 11, 10 - predef Func_27d6b ; Prints the type (?) + predef PrintMonType ld hl, NamePointers2 ; $6a9d call .unk_12a7e ld d, h diff --git a/engine/overworld/healing_machine.asm b/engine/overworld/healing_machine.asm index 53174630..90d306c3 100755 --- a/engine/overworld/healing_machine.asm +++ b/engine/overworld/healing_machine.asm @@ -48,7 +48,7 @@ AnimateHealingMachine: ; 70433 (1c:4433) ld [wc0ee], a call PlaySound ld d, $28 - call Func_704f3 + call FlashSprite8Times .asm_704a2 ld a, [wc026] cp MUSIC_PKMN_HEALED @@ -74,16 +74,17 @@ PokeCenterOAMData: ; 704d7 (1c:44d7) db $35,$30,$7D,$10 db $35,$38,$7D,$30 -Func_704f3: ; 704f3 (1c:44f3) - ld b, $8 -.asm_704f5 - ld a, [rOBP1] ; $ff49 +; d = value to xor with palette +FlashSprite8Times: ; 704f3 (1c:44f3) + ld b, 8 +.loop + ld a, [rOBP1] xor d - ld [rOBP1], a ; $ff49 - ld c, $a + ld [rOBP1], a + ld c, 10 call DelayFrames dec b - jr nz, .asm_704f5 + jr nz, .loop ret Func_70503: ; 70503 (1c:4503) diff --git a/engine/predefs.asm b/engine/predefs.asm index 8a98bd3d..f2bedf96 100755 --- a/engine/predefs.asm +++ b/engine/predefs.asm @@ -127,7 +127,7 @@ PredefPointers:: ; 4fe79 (13:7e79) add_predef UpdateHPBar2 add_predef DrawEnemyHUDAndHPBar add_predef LoadTownMap_Nest - add_predef Func_27d6b + add_predef PrintMonType add_predef EmotionBubble; 4C player exclamation add_predef EmptyFunc3; return immediately add_predef AskName @@ -145,7 +145,7 @@ PredefPointers:: ; 4fe79 (13:7e79) add_predef CheckForCollisionWhenPushingBoulder add_predef PrintStrengthTxt add_predef PickupItem - add_predef Func_27d98 + add_predef PrintMoveType add_predef LoadMovePPs add_predef DrawHP ; 5F add_predef Func_128f6 diff --git a/engine/save.asm b/engine/save.asm index 29c839f3..c1231871 100755 --- a/engine/save.asm +++ b/engine/save.asm @@ -346,10 +346,10 @@ ChangeBox:: ; 738a1 (1c:78a1) call z, Func_73a29 call Func_7393f call UpdateSprites - ld hl, $fff6 + ld hl, hFlags_0xFFF6 set 1, [hl] call HandleMenuInput - ld hl, $fff6 + ld hl, hFlags_0xFFF6 res 1, [hl] bit 1, a ret nz @@ -436,12 +436,12 @@ Func_7393f: ; 7393f (1c:793f) ld b, $c ld c, $7 call TextBoxBorder - ld hl, $fff6 + ld hl, hFlags_0xFFF6 set 2, [hl] ld de, BoxNames ; $79d9 hlCoord 13, 1 call PlaceString - ld hl, $fff6 + ld hl, hFlags_0xFFF6 res 2, [hl] ld a, [wd5a0] and $7f diff --git a/home.asm b/home.asm index 00da859a..be56a70a 100644 --- a/home.asm +++ b/home.asm @@ -4046,7 +4046,7 @@ PlaceMenuCursor:: ; 3b7c (0:3b7c) and a ; was the previous menu id 0? jr z,.checkForArrow1 push af - ld a,[$fff6] + ld a,[hFlags_0xFFF6] bit 1,a ; is the menu double spaced? jr z,.doubleSpaced1 ld bc,20 @@ -4072,7 +4072,7 @@ PlaceMenuCursor:: ; 3b7c (0:3b7c) and a jr z,.checkForArrow2 push af - ld a,[$fff6] + ld a,[hFlags_0xFFF6] bit 1,a ; is the menu double spaced? jr z,.doubleSpaced2 ld bc,20 diff --git a/home/text.asm b/home/text.asm index 362347cc..276b652e 100644 --- a/home/text.asm +++ b/home/text.asm @@ -62,7 +62,7 @@ PlaceNextChar:: ; 1956 (0:1956) cp $4E jr nz,.next ld bc,$0028 - ld a,[$FFF6] + ld a,[hFlags_0xFFF6] bit 2,a jr z,.next2 ld bc,$14 diff --git a/hram.asm b/hram.asm index dfe14d66..29eb4353 100644 --- a/hram.asm +++ b/hram.asm @@ -151,5 +151,8 @@ H_CURRENTSPRITEOFFSET EQU $FFDA ; multiple of $10 H_WHOSETURN EQU $FFF3 ; 0 on player’s turn, 1 on enemy’s turn +; bit 0: draw HP fraction to the right of bar instead of below (for party menu) +hFlags_0xFFF6 EQU $FFF6 + hJoyInput EQU $FFF8 diff --git a/main.asm b/main.asm index b40093aa..6f5b5324 100755 --- a/main.asm +++ b/main.asm @@ -126,7 +126,7 @@ LoadMonData_: .copyMonData ld de, wcf98 - ld bc, 44 + ld bc, wPartyMon2 - wPartyMon1 jp CopyData diff --git a/wram.asm b/wram.asm index f55b383a..389b4cc4 100755 --- a/wram.asm +++ b/wram.asm @@ -824,6 +824,7 @@ wcfbc:: ds 2 wcfbe:: ds 2 wcfc0:: ds 2 wcfc2:: ds 2 + wcfc4:: ds 1 wWalkCounter:: ; cfc5 -- cgit v1.3.1-sl0p From 72bbaed99f725b2b8b0d2653968042ce1625354c Mon Sep 17 00:00:00 2001 From: YamaArashi Date: Sat, 7 Feb 2015 22:18:42 -0800 Subject: fixed hp bar wram label and misc --- engine/battle/1.asm | 2 +- engine/battle/4.asm | 22 ++++---- engine/battle/4_2.asm | 22 ++++---- engine/battle/core.asm | 8 +-- engine/battle/e.asm | 2 +- engine/battle/e_2.asm | 2 +- engine/clear_save.asm | 4 +- engine/give_pokemon.asm | 2 +- engine/hp_bar.asm | 2 +- engine/items/items.asm | 46 ++++++++-------- engine/menu/bills_pc.asm | 120 +++++++++++++++++++++--------------------- engine/menu/party_menu.asm | 2 +- engine/menu/players_pc.asm | 52 +++++++++--------- engine/menu/status_screen.asm | 2 +- engine/predefs.asm | 2 +- engine/predefs7.asm | 12 ++--- engine/save.asm | 2 +- engine/titlescreen.asm | 12 ++--- engine/town_map.asm | 4 +- home.asm | 4 +- wram.asm | 6 +++ 21 files changed, 169 insertions(+), 161 deletions(-) (limited to 'engine/save.asm') diff --git a/engine/battle/1.asm b/engine/battle/1.asm index ccc82c55..517d53d1 100755 --- a/engine/battle/1.asm +++ b/engine/battle/1.asm @@ -77,7 +77,7 @@ DrainHPEffect_: ; 783f (1:783f) hlCoord 2, 2 xor a .next2 - ld [wListMenuID], a + ld [wHPBarType], a predef UpdateHPBar2 predef DrawPlayerHUDAndHPBar predef DrawEnemyHUDAndHPBar diff --git a/engine/battle/4.asm b/engine/battle/4.asm index 97db1ba3..e96267c4 100755 --- a/engine/battle/4.asm +++ b/engine/battle/4.asm @@ -18,27 +18,28 @@ IsPlayerJustOutsideMap: ; 128d8 (4:68d8) DrawHP: ; 128ef (4:68ef) call GetPredefRegisters ld a, $1 - jr asm_128fb + jr DrawHP_ -Func_128f6: ; 128f6 (4:68f6) +DrawHP2: ; 128f6 (4:68f6) call GetPredefRegisters ld a, $2 -asm_128fb: ; 128fb (4:68fb) - ld [wListMenuID], a + +DrawHP_: ; 128fb (4:68fb) + ld [wHPBarType], a push hl ld a, [wLoadedMonHP] ld b, a ld a, [wLoadedMonHP + 1] ld c, a or b - jr nz, .asm_12913 + jr nz, .nonzeroHP xor a ld c, a ld e, a ld a, $6 ld d, a - jp DrawHPBarAndFraction -.asm_12913 + jp .drawHPBarAndPrintFraction +.nonzeroHP ld a, [wLoadedMonMaxHP] ld d, a ld a, [wLoadedMonMaxHP + 1] @@ -47,8 +48,7 @@ asm_128fb: ; 128fb (4:68fb) ld a, $6 ld d, a ld c, a - -DrawHPBarAndFraction: ; 12924 (4:6924) +.drawHPBarAndPrintFraction pop hl push de push hl @@ -59,10 +59,10 @@ DrawHPBarAndFraction: ; 12924 (4:6924) bit 0, a jr z, .printFractionBelowBar ld bc, $9 ; right of bar - jr .printHPFraction + jr .printFraction .printFractionBelowBar ld bc, SCREEN_WIDTH + 1 ; below bar -.printHPFraction +.printFraction add hl, bc ld de, wLoadedMonHP ld bc, $203 diff --git a/engine/battle/4_2.asm b/engine/battle/4_2.asm index 287c8eae..8d8c6077 100755 --- a/engine/battle/4_2.asm +++ b/engine/battle/4_2.asm @@ -207,16 +207,16 @@ WildMonEncounterSlotChances: ; 13918 (4:7918) db $FF, $12 ; 3/256 = 1.2% chance of slot 9 RecoilEffect_: ; 1392c (4:792c) - ld a, [H_WHOSETURN] ; $fff3 + ld a, [H_WHOSETURN] and a - ld a, [W_PLAYERMOVENUM] ; wcfd2 - ld hl, wBattleMonMaxHP ; wd023 + ld a, [W_PLAYERMOVENUM] + ld hl, wBattleMonMaxHP jr z, .asm_1393d - ld a, [W_ENEMYMOVENUM] ; W_ENEMYMOVENUM - ld hl, wEnemyMonMaxHP ; wEnemyMonMaxHP + ld a, [W_ENEMYMOVENUM] + ld hl, wEnemyMonMaxHP .asm_1393d ld d, a - ld a, [W_DAMAGE] ; W_DAMAGE + ld a, [W_DAMAGE] ld b, a ld a, [W_DAMAGE + 1] ld c, a @@ -260,16 +260,16 @@ RecoilEffect_: ; 1392c (4:792c) ld [hl], a .asm_13982 hlCoord 10, 9 - ld a, [H_WHOSETURN] ; $fff3 + ld a, [H_WHOSETURN] and a ld a, $1 jr z, .asm_13990 hlCoord 2, 2 xor a .asm_13990 - ld [wListMenuID], a ; wListMenuID + ld [wHPBarType], a predef UpdateHPBar2 - ld hl, HitWithRecoilText ; $799e + ld hl, HitWithRecoilText jp PrintText HitWithRecoilText: ; 1399e (4:799e) TX_FAR _HitWithRecoilText @@ -392,8 +392,8 @@ GetTrainerName_: ; 13a58 (4:7a58) ld a, [wLinkState] and a jr nz, .rival - ld hl, W_RIVALNAME ; wd34a - ld a, [W_TRAINERCLASS] ; wd031 + ld hl, W_RIVALNAME + ld a, [W_TRAINERCLASS] cp SONY1 jr z, .rival cp SONY2 diff --git a/engine/battle/core.asm b/engine/battle/core.asm index a502ed7c..d51abb43 100755 --- a/engine/battle/core.asm +++ b/engine/battle/core.asm @@ -768,7 +768,7 @@ UpdateCurMonHPBar: ; 3c4f6 (f:44f6) xor a .playersTurn push bc - ld [wListMenuID], a + ld [wHPBarType], a predef UpdateHPBar2 pop bc ret @@ -2029,7 +2029,7 @@ DrawEnemyHUDAndHPBar: ; 3cdec (f:4dec) ld c, a .drawHPBar xor a - ld [wListMenuID], a + ld [wHPBarType], a hlCoord 2, 2 call DrawHPBar ld a, $1 @@ -4899,7 +4899,7 @@ ApplyDamageToEnemyPokemon: ; 3e142 (f:6142) ld [wHPBarNewHP],a hlCoord 2, 2 xor a - ld [wListMenuID],a + ld [wHPBarType],a predef UpdateHPBar2 ; animate the HP bar shortening ApplyAttackToEnemyPokemonDone: ; 3e19d (f:619d) jp DrawHUDsAndHPBars @@ -5017,7 +5017,7 @@ ApplyDamageToPlayerPokemon: ; 3e200 (f:6200) ld [wHPBarMaxHP],a hlCoord 10, 9 ld a,$01 - ld [wListMenuID],a + ld [wHPBarType],a predef UpdateHPBar2 ; animate the HP bar shortening ApplyAttackToPlayerPokemonDone jp DrawHUDsAndHPBars diff --git a/engine/battle/e.asm b/engine/battle/e.asm index ff3ac839..5592702a 100755 --- a/engine/battle/e.asm +++ b/engine/battle/e.asm @@ -1174,7 +1174,7 @@ Func_3a718: ; 3a718 (e:6718) call AIPrintItemUse_ hlCoord 2, 2 xor a - ld [wListMenuID],a + ld [wHPBarType],a predef UpdateHPBar2 jp DecrementAICount diff --git a/engine/battle/e_2.asm b/engine/battle/e_2.asm index 1106f531..9400282d 100755 --- a/engine/battle/e_2.asm +++ b/engine/battle/e_2.asm @@ -91,7 +91,7 @@ HealEffect_: ; 3b9ec (e:79ec) hlCoord 2, 2 xor a .asm_3ba83 - ld [wListMenuID], a + ld [wHPBarType], a predef UpdateHPBar2 ld hl, DrawHUDsAndHPBars call BankswitchEtoF diff --git a/engine/clear_save.asm b/engine/clear_save.asm index c1140531..66d7e920 100755 --- a/engine/clear_save.asm +++ b/engine/clear_save.asm @@ -1,4 +1,4 @@ -Func_1c98a: ; 1c98a (7:498a) +DoClearSaveDialogue: ; 1c98a (7:498a) call ClearScreen call GoPAL_SET_CF1C call LoadFontTilePatterns @@ -15,7 +15,7 @@ Func_1c98a: ; 1c98a (7:498a) ld a, [wCurrentMenuItem] and a jp z, Init - callba Func_73b6a + callba ClearSAV jp Init ClearSaveDataText: ; 1c9c1 (7:49c1) diff --git a/engine/give_pokemon.asm b/engine/give_pokemon.asm index d4d58d33..64876d22 100755 --- a/engine/give_pokemon.asm +++ b/engine/give_pokemon.asm @@ -14,7 +14,7 @@ _GivePokemon: ; 4fda5 (13:7da5) ld [wEnemyMonSpecies2], a callab LoadEnemyMonData call SetPokedexOwnedFlag - callab Func_e7a4 + callab SendNewMonToBox ld hl, wcf4b ld a, [wd5a0] and $7f diff --git a/engine/hp_bar.asm b/engine/hp_bar.asm index a53511c7..333b0b90 100755 --- a/engine/hp_bar.asm +++ b/engine/hp_bar.asm @@ -203,7 +203,7 @@ UpdateHPBar_CalcHPDifference: ; fad7 (3:7ad7) UpdateHPBar_PrintHPNumber: ; faf5 (3:7af5) push af push de - ld a, [wListMenuID] ; wListMenuID + ld a, [wHPBarType] and a jr z, .asm_fb2d ld a, [wHPBarOldHP] diff --git a/engine/items/items.asm b/engine/items/items.asm index 99c97fef..aaee9403 100755 --- a/engine/items/items.asm +++ b/engine/items/items.asm @@ -430,7 +430,7 @@ ItemUseBall: ; d687 (3:5687) jr .End .sendToBox ;$5907 call ClearSprites - call Func_e7a4 + call SendNewMonToBox ld hl,ItemUseBallText07 ld a,[wd7f1] bit 0,a ;already met Bill? @@ -923,7 +923,7 @@ ItemUseMedicine: ; dabb (3:5abb) set 0,a ld [hFlags_0xFFF6],a ld a,$02 - ld [wListMenuID],a + ld [wHPBarType],a predef UpdateHPBar2 ; animate HP bar decrease of pokemon that used Softboiled ld a,[hFlags_0xFFF6] res 0,a @@ -1073,7 +1073,7 @@ ItemUseMedicine: ; dabb (3:5abb) set 0,a ld [hFlags_0xFFF6],a ld a,$02 - ld [wListMenuID],a + ld [wHPBarType],a predef UpdateHPBar2 ; animate the HP bar lengthening ld a,[hFlags_0xFFF6] res 0,a @@ -1090,7 +1090,7 @@ ItemUseMedicine: ; dabb (3:5abb) jr .showHealingItemMessage .playStatusAilmentCuringSound ld a,(SFX_02_3e - SFX_Headers_02) / 3 ; status ailment curing sound - call PlaySoundWaitForCurrent ; play sound + call PlaySoundWaitForCurrent .showHealingItemMessage xor a ld [H_AUTOBGTRANSFERENABLED],a @@ -1102,7 +1102,7 @@ ItemUseMedicine: ; dabb (3:5abb) ld [H_AUTOBGTRANSFERENABLED],a ld c,50 call DelayFrames - call WaitForTextScrollButtonPress ; wait for a button press + call WaitForTextScrollButtonPress jr .done .canceledItemUse xor a @@ -1118,7 +1118,7 @@ ItemUseMedicine: ; dabb (3:5abb) ld a,[W_ISINBATTLE] and a ret nz - jp ReloadMapData ; restore saved screen + jp ReloadMapData .useVitamin push hl ld a,[hl] @@ -2567,7 +2567,7 @@ IsKeyItem_: ; e764 (3:6764) INCLUDE "data/key_items.asm" -Func_e7a4: ; e7a4 (3:67a4) +SendNewMonToBox: ; e7a4 (3:67a4) ld de, W_NUMINBOX ; wda80 ld a, [de] inc a @@ -2818,49 +2818,51 @@ ItemUseReloadOverworldData: ; e9c5 (3:69c5) call LoadCurrentMapView jp UpdateSprites -Func_e9cb: ; e9cb (3:69cb) - ld hl, WildDataPointers ; $4eeb - ld de, wHPBarMaxHP +; creates a list at wBuffer of maps where the mon in [wd11e] can be found. +; this is used by the pokedex to display locations the mon can be found on the map. +FindWildLocationsOfMon: ; e9cb (3:69cb) + ld hl, WildDataPointers + ld de, wBuffer ld c, $0 -.asm_e9d3 +.loop inc hl ld a, [hld] inc a - jr z, .asm_e9ec + jr z, .done push hl ld a, [hli] ld h, [hl] ld l, a ld a, [hli] and a - call nz, Func_e9f0 + call nz, CheckMapForMon ; land ld a, [hli] and a - call nz, Func_e9f0 + call nz, CheckMapForMon ; water pop hl inc hl inc hl inc c - jr .asm_e9d3 -.asm_e9ec - ld a, $ff + jr .loop +.done + ld a, $ff ; list terminator ld [de], a ret -Func_e9f0: ; e9f0 (3:69f0) +CheckMapForMon: ; e9f0 (3:69f0) inc hl ld b, $a -.asm_e9f3 +.loop ld a, [wd11e] cp [hl] - jr nz, .asm_e9fc + jr nz, .nextEntry ld a, c ld [de], a inc de -.asm_e9fc +.nextEntry inc hl inc hl dec b - jr nz, .asm_e9f3 + jr nz, .loop dec hl ret diff --git a/engine/menu/bills_pc.asm b/engine/menu/bills_pc.asm index 9e8422c0..f4a40cf9 100644 --- a/engine/menu/bills_pc.asm +++ b/engine/menu/bills_pc.asm @@ -1,6 +1,6 @@ Func_213c8:: ; 213c8 (8:53c8) xor a - ld [H_AUTOBGTRANSFERENABLED], a ; $ffba + ld [H_AUTOBGTRANSFERENABLED], a call SaveScreenTilesToBuffer2 ld a, [wd5a2] and a @@ -28,64 +28,64 @@ Func_213c8:: ; 213c8 (8:53c8) call TextBoxBorder call UpdateSprites ld a, $3 - ld [wMaxMenuItem], a ; wMaxMenuItem + ld [wMaxMenuItem], a ld a, [wd7f1] bit 0, a jr nz, .asm_21414 hlCoord 2, 2 - ld de, SomeonesPCText ; $548b + ld de, SomeonesPCText jr .asm_2141a .asm_21414 hlCoord 2, 2 - ld de, BillsPCText ; $5497 + ld de, BillsPCText .asm_2141a call PlaceString hlCoord 2, 4 - ld de, wPlayerName ; wd158 + ld de, wPlayerName call PlaceString ld l, c ld h, b - ld de, PlayersPCText ; $54a0 + ld de, PlayersPCText call PlaceString ld a, [wd74b] bit 5, a jr z, .asm_21462 hlCoord 2, 6 - ld de, OaksPCText ; $54a5 + ld de, OaksPCText call PlaceString ld a, [wd5a2] and a jr z, .asm_2145a ld a, $4 - ld [wMaxMenuItem], a ; wMaxMenuItem + ld [wMaxMenuItem], a hlCoord 2, 8 - ld de, PKMNLeaguePCText ; $54b2 + ld de, PKMNLeaguePCText call PlaceString hlCoord 2, 10 - ld de, LogOffPCText ; $54ba + ld de, LogOffPCText jr .asm_2146d .asm_2145a hlCoord 2, 8 - ld de, LogOffPCText ; $54ba + ld de, LogOffPCText jr .asm_2146d .asm_21462 ld a, $2 - ld [wMaxMenuItem], a ; wMaxMenuItem + ld [wMaxMenuItem], a hlCoord 2, 6 - ld de, LogOffPCText ; $54ba + ld de, LogOffPCText .asm_2146d call PlaceString ld a, $3 - ld [wMenuWatchedKeys], a ; wMenuWatchedKeys + ld [wMenuWatchedKeys], a ld a, $2 - ld [wTopMenuItemY], a ; wTopMenuItemY + ld [wTopMenuItemY], a ld a, $1 - ld [wTopMenuItemX], a ; wTopMenuItemX + ld [wTopMenuItemX], a xor a - ld [wCurrentMenuItem], a ; wCurrentMenuItem - ld [wLastMenuItem], a ; wLastMenuItem + ld [wCurrentMenuItem], a + ld [wLastMenuItem], a ld a, $1 - ld [H_AUTOBGTRANSFERENABLED], a ; $ffba + ld [H_AUTOBGTRANSFERENABLED], a ret SomeonesPCText: db "SOMEONE's PC@" @@ -103,7 +103,7 @@ BillsPC_:: ; 0x214c2 inc a ; MONSTER_NAME ld [W_LISTTYPE], a call LoadHpBarAndStatusTilePatterns - ld a, [wListScrollOffset] ; wcc36 + ld a, [wListScrollOffset] push af ld a, [wFlags_0xcd60] bit 3, a @@ -116,9 +116,9 @@ BillsPC_:: ; 0x214c2 Func_214e8: ; 214e8 (8:54e8) BillsPCMenu: ld a, [wccd3] - ld [wCurrentMenuItem], a ; wCurrentMenuItem + ld [wCurrentMenuItem], a ld hl, vChars2 + $780 - ld de, PokeballTileGraphics ; $697e + ld de, PokeballTileGraphics ld bc, (BANK(PokeballTileGraphics) << 8) + $01 call CopyVideoData call LoadScreenTilesFromBuffer2DisableBGTransfer @@ -127,9 +127,9 @@ BillsPCMenu: ld c, $c call TextBoxBorder hlCoord 2, 2 - ld de, BillsPCMenuText ; $56e1 + ld de, BillsPCMenuText call PlaceString - ld hl, wTopMenuItemY ; wTopMenuItemY + ld hl, wTopMenuItemY ld a, $2 ld [hli], a dec a @@ -143,10 +143,10 @@ BillsPCMenu: xor a ld [hli], a ld [hli], a - ld hl, wListScrollOffset ; wcc36 + ld hl, wListScrollOffset ld [hli], a ld [hl], a - ld [wPlayerMonNumber], a ; wPlayerMonNumber + ld [wPlayerMonNumber], a ld hl, WhatText call PrintText hlCoord 9, 14 @@ -167,16 +167,16 @@ BillsPCMenu: .asm_21551 Coorda 18, 16 hlCoord 10, 16 - ld de, BoxNoPCText ; $5713 + ld de, BoxNoPCText call PlaceString ld a, $1 - ld [H_AUTOBGTRANSFERENABLED], a ; $ffba + ld [H_AUTOBGTRANSFERENABLED], a call Delay3 call HandleMenuInput bit 1, a jp nz, Func_21588 ; b button call PlaceUnfilledArrowMenuCursor - ld a, [wCurrentMenuItem] ; wCurrentMenuItem + ld a, [wCurrentMenuItem] ld [wccd3], a and a jp z, Func_21618 ; withdraw @@ -200,28 +200,28 @@ Func_21588: ; 21588 (8:5588) res 5, [hl] call LoadScreenTilesFromBuffer2 pop af - ld [wListScrollOffset], a ; wcc36 + ld [wListScrollOffset], a ld hl, wd730 res 6, [hl] ret Func_215ac: ; 215ac (8:55ac) BillsPCDeposit: - ld a, [wPartyCount] ; wPartyCount + ld a, [wPartyCount] dec a jr nz, .asm_215bb ld hl, CantDepositLastMonText call PrintText jp BillsPCMenu .asm_215bb - ld a, [W_NUMINBOX] ; wda80 + ld a, [W_NUMINBOX] cp MONS_PER_BOX jr nz, .asm_215cb - ld hl, BoxFullText ; $5802 + ld hl, BoxFullText call PrintText jp BillsPCMenu .asm_215cb - ld hl, wPartyCount ; wPartyCount + ld hl, wPartyCount call Func_216be jp c, BillsPCMenu call Func_2174b @@ -236,7 +236,7 @@ BillsPCDeposit: ld [wcf95], a call RemovePokemon call WaitForSoundToFinish - ld hl, wWhichTrade ; wWhichTrade + ld hl, wWhichTrade ld a, [wd5a0] and $7f cp 9 @@ -251,31 +251,31 @@ BillsPCDeposit: .asm_2160c ld [hli], a ld [hl], $50 - ld hl, MonWasStoredText ; $57f8 + ld hl, MonWasStoredText call PrintText jp BillsPCMenu Func_21618: ; 21618 (8:5618) - ld a, [W_NUMINBOX] ; wda80 + ld a, [W_NUMINBOX] and a jr nz, .asm_21627 - ld hl, NoMonText ; $580c + ld hl, NoMonText call PrintText jp Func_214e8 .asm_21627 - ld a, [wPartyCount] ; wPartyCount + ld a, [wPartyCount] cp PARTY_LENGTH jr nz, .asm_21637 - ld hl, CantTakeMonText ; $5811 + ld hl, CantTakeMonText call PrintText jp Func_214e8 .asm_21637 - ld hl, W_NUMINBOX ; wda80 + ld hl, W_NUMINBOX call Func_216be jp c, Func_214e8 call Func_2174b jp nc, Func_214e8 - ld a, [wWhichPokemon] ; wWhichPokemon + ld a, [wWhichPokemon] ld hl, wBoxMonNicks call GetPartyMonName ld a, [wcf91] @@ -288,25 +288,25 @@ Func_21618: ; 21618 (8:5618) ld [wcf95], a call RemovePokemon call WaitForSoundToFinish - ld hl, MonIsTakenOutText ; $5807 + ld hl, MonIsTakenOutText call PrintText jp Func_214e8 Func_21673: ; 21673 (8:5673) - ld a, [W_NUMINBOX] ; wda80 + ld a, [W_NUMINBOX] and a jr nz, .asm_21682 - ld hl, NoMonText ; $580c + ld hl, NoMonText call PrintText jp Func_214e8 .asm_21682 - ld hl, W_NUMINBOX ; wda80 + ld hl, W_NUMINBOX call Func_216be jp c, Func_214e8 - ld hl, OnceReleasedText ; $581b + ld hl, OnceReleasedText call PrintText call YesNoChoice - ld a, [wCurrentMenuItem] ; wCurrentMenuItem + ld a, [wCurrentMenuItem] and a jr nz, .asm_21682 inc a @@ -315,7 +315,7 @@ Func_21673: ; 21673 (8:5673) call WaitForSoundToFinish ld a, [wcf91] call PlayCry - ld hl, MonWasReleasedText ; $5820 + ld hl, MonWasReleasedText call PrintText jp Func_214e8 @@ -330,13 +330,13 @@ Func_216be: ; 216be (8:56be) ld [wList + 1], a xor a ld [wcf93], a - ld [wListMenuID], a ; wListMenuID + ld [wListMenuID], a inc a ; MONSTER_NAME ld [W_LISTTYPE], a ld a, [wcc2b] - ld [wCurrentMenuItem], a ; wCurrentMenuItem + ld [wCurrentMenuItem], a call DisplayListMenuID - ld a, [wCurrentMenuItem] ; wCurrentMenuItem + ld a, [wCurrentMenuItem] ld [wcc2b], a ret @@ -368,7 +368,7 @@ Func_2171b:: ; 2171b (8:571b) ld a, [hli] push hl push bc - ld hl, HMMoveArray ; $5745 + ld hl, HMMoveArray ld de, 1 call IsInArray pop bc @@ -394,16 +394,16 @@ Func_2174b: ; 2174b (8:574b) call TextBoxBorder ld a, [wccd3] and a - ld de, DepositPCText ; $57cb + ld de, DepositPCText jr nz, .asm_21761 - ld de, WithdrawPCText ; $57d3 + ld de, WithdrawPCText .asm_21761 hlCoord 11, 12 call PlaceString hlCoord 11, 14 - ld de, StatsCancelPCText ; $57dc + ld de, StatsCancelPCText call PlaceString - ld hl, wTopMenuItemY ; wTopMenuItemY + ld hl, wTopMenuItemY ld a, $c ld [hli], a ld a, $a @@ -417,16 +417,16 @@ Func_2174b: ; 2174b (8:574b) ld [hli], a xor a ld [hl], a - ld hl, wListScrollOffset ; wcc36 + ld hl, wListScrollOffset ld [hli], a ld [hl], a - ld [wPlayerMonNumber], a ; wPlayerMonNumber + ld [wPlayerMonNumber], a ld [wcc2b], a .asm_2178f call HandleMenuInput bit 1, a jr nz, .asm_2179f - ld a, [wCurrentMenuItem] ; wCurrentMenuItem + ld a, [wCurrentMenuItem] and a jr z, .asm_217a1 dec a diff --git a/engine/menu/party_menu.asm b/engine/menu/party_menu.asm index 86474be9..97e520c2 100755 --- a/engine/menu/party_menu.asm +++ b/engine/menu/party_menu.asm @@ -92,7 +92,7 @@ RedrawPartyMenu_: ; 12ce3 (4:6ce3) set 0,a ld [hFlags_0xFFF6],a add hl,bc - predef Func_128f6 ; draw HP bar and prints current / max HP + predef DrawHP2 ; draw HP bar and prints current / max HP ld a,[hFlags_0xFFF6] res 0,a ld [hFlags_0xFFF6],a diff --git a/engine/menu/players_pc.asm b/engine/menu/players_pc.asm index 5217befa..ad6c8140 100755 --- a/engine/menu/players_pc.asm +++ b/engine/menu/players_pc.asm @@ -17,7 +17,7 @@ PlayerPC: ; 78e6 (1:78e6) Func_790c: ; 790c (1:790c) ld a, [wccd3] - ld [wCurrentMenuItem], a ; wCurrentMenuItem + ld [wCurrentMenuItem], a ld hl, wFlags_0xcd60 set 5, [hl] call LoadScreenTilesFromBuffer2 @@ -27,9 +27,9 @@ Func_790c: ; 790c (1:790c) call TextBoxBorder call UpdateSprites hlCoord 2, 2 - ld de, PlayersPCMenuEntries ; $7af5 + ld de, PlayersPCMenuEntries call PlaceString - ld hl, wTopMenuItemY ; wTopMenuItemY + ld hl, wTopMenuItemY ld a, $2 ld [hli], a dec a @@ -42,17 +42,17 @@ Func_790c: ; 790c (1:790c) ld [hli], a xor a ld [hl], a - ld hl, wListScrollOffset ; wcc36 + ld hl, wListScrollOffset ld [hli], a ld [hl], a - ld [wPlayerMonNumber], a ; wPlayerMonNumber + ld [wPlayerMonNumber], a ld hl, WhatDoYouWantText call PrintText call HandleMenuInput bit 1, a jp nz, Func_796d call PlaceUnfilledArrowMenuCursor - ld a, [wCurrentMenuItem] ; wCurrentMenuItem + ld a, [wCurrentMenuItem] ld [wccd3], a and a jp z, Func_7a12 @@ -73,7 +73,7 @@ Func_796d: ; 796d (1:796d) res 5, [hl] call LoadScreenTilesFromBuffer2 xor a - ld [wListScrollOffset], a ; wcc36 + ld [wListScrollOffset], a ld [wcc2c], a ld hl, wd730 res 6, [hl] @@ -83,9 +83,9 @@ Func_796d: ; 796d (1:796d) Func_7995: ; 7995 (1:7995) xor a - ld [wCurrentMenuItem], a ; wCurrentMenuItem - ld [wListScrollOffset], a ; wcc36 - ld a, [wNumBagItems] ; wNumBagItems + ld [wCurrentMenuItem], a + ld [wListScrollOffset], a + ld a, [wNumBagItems] and a jr nz, Func_79ab ld hl, NothingToDepositText @@ -95,7 +95,7 @@ Func_7995: ; 7995 (1:7995) Func_79ab: ; 79ab (1:79ab) ld hl, WhatToDepositText call PrintText - ld hl, wNumBagItems ; wNumBagItems + ld hl, wNumBagItems ld a, l ld [wList], a ld a, h @@ -103,7 +103,7 @@ Func_79ab: ; 79ab (1:79ab) xor a ld [wcf93], a ld a, $3 - ld [wListMenuID], a ; wListMenuID + ld [wListMenuID], a call DisplayListMenuID jp c, Func_790c call IsKeyItem @@ -118,14 +118,14 @@ Func_79ab: ; 79ab (1:79ab) cp $ff jp z, Func_79ab .asm_79e7 - ld hl, wNumBoxItems ; wNumBoxItems + ld hl, wNumBoxItems call AddItemToInventory jr c, .asm_79f8 ld hl, NoRoomToStoreText call PrintText jp Func_79ab .asm_79f8 - ld hl, wNumBagItems ; wNumBagItems + ld hl, wNumBagItems call RemoveItemFromInventory call WaitForSoundToFinish ld a, (SFX_02_55 - SFX_Headers_02) / 3 @@ -137,9 +137,9 @@ Func_79ab: ; 79ab (1:79ab) Func_7a12: ; 7a12 (1:7a12) xor a - ld [wCurrentMenuItem], a ; wCurrentMenuItem - ld [wListScrollOffset], a ; wcc36 - ld a, [wNumBoxItems] ; wNumBoxItems + ld [wCurrentMenuItem], a + ld [wListScrollOffset], a + ld a, [wNumBoxItems] and a jr nz, Func_7a28 ld hl, NothingStoredText @@ -149,7 +149,7 @@ Func_7a12: ; 7a12 (1:7a12) Func_7a28: ; 7a28 (1:7a28) ld hl, WhatToWithdrawText call PrintText - ld hl, wNumBoxItems ; wNumBoxItems + ld hl, wNumBoxItems ld a, l ld [wList], a ld a, h @@ -157,7 +157,7 @@ Func_7a28: ; 7a28 (1:7a28) xor a ld [wcf93], a ld a, $3 - ld [wListMenuID], a ; wListMenuID + ld [wListMenuID], a call DisplayListMenuID jp c, Func_790c call IsKeyItem @@ -172,14 +172,14 @@ Func_7a28: ; 7a28 (1:7a28) cp $ff jp z, Func_7a28 .asm_7a64 - ld hl, wNumBagItems ; wNumBagItems + ld hl, wNumBagItems call AddItemToInventory jr c, .asm_7a75 ld hl, CantCarryMoreText call PrintText jp Func_7a28 .asm_7a75 - ld hl, wNumBoxItems ; wNumBoxItems + ld hl, wNumBoxItems call RemoveItemFromInventory call WaitForSoundToFinish ld a, (SFX_02_55 - SFX_Headers_02) / 3 @@ -191,9 +191,9 @@ Func_7a28: ; 7a28 (1:7a28) Func_7a8f: ; 7a8f (1:7a8f) xor a - ld [wCurrentMenuItem], a ; wCurrentMenuItem - ld [wListScrollOffset], a ; wcc36 - ld a, [wNumBoxItems] ; wNumBoxItems + ld [wCurrentMenuItem], a + ld [wListScrollOffset], a + ld a, [wNumBoxItems] and a jr nz, Func_7aa5 ld hl, NothingStoredText @@ -203,7 +203,7 @@ Func_7a8f: ; 7a8f (1:7a8f) Func_7aa5: ; 7aa5 (1:7aa5) ld hl, WhatToTossText call PrintText - ld hl, wNumBoxItems ; wNumBoxItems + ld hl, wNumBoxItems ld a, l ld [wList], a ld a, h @@ -211,7 +211,7 @@ Func_7aa5: ; 7aa5 (1:7aa5) xor a ld [wcf93], a ld a, $3 - ld [wListMenuID], a ; wListMenuID + ld [wListMenuID], a push hl call DisplayListMenuID pop hl diff --git a/engine/menu/status_screen.asm b/engine/menu/status_screen.asm index 79daa0c0..685839cb 100755 --- a/engine/menu/status_screen.asm +++ b/engine/menu/status_screen.asm @@ -55,7 +55,7 @@ StatusScreen: ; 12953 (4:6953) ld de, Type1Text call PlaceString ; "TYPE1/" hlCoord 11, 3 - predef DrawHP ; predef $5f + predef DrawHP ld hl, wcf25 call GetHealthBarColor ld b, $3 diff --git a/engine/predefs.asm b/engine/predefs.asm index f2bedf96..23eb8cd1 100755 --- a/engine/predefs.asm +++ b/engine/predefs.asm @@ -148,6 +148,6 @@ PredefPointers:: ; 4fe79 (13:7e79) add_predef PrintMoveType add_predef LoadMovePPs add_predef DrawHP ; 5F - add_predef Func_128f6 + add_predef DrawHP2 add_predef Func_1c9c6 add_predef OaksAideScript diff --git a/engine/predefs7.asm b/engine/predefs7.asm index e2f58ca8..9786c097 100755 --- a/engine/predefs7.asm +++ b/engine/predefs7.asm @@ -6,23 +6,23 @@ Func_1c9c6: ; 1c9c6 (7:49c6) ld [wList], a ld a, h ld [wList + 1], a - ld a, [wListScrollOffset] ; wcc36 + ld a, [wListScrollOffset] push af xor a - ld [wCurrentMenuItem], a ; wCurrentMenuItem - ld [wListScrollOffset], a ; wcc36 + ld [wCurrentMenuItem], a + ld [wListScrollOffset], a ld [wcf93], a ld a, $4 - ld [wListMenuID], a ; wListMenuID + ld [wListMenuID], a call DisplayListMenuID pop bc ld a, b - ld [wListScrollOffset], a ; wcc36 + ld [wListScrollOffset], a ret c ld hl, wd126 set 7, [hl] ld hl, wcc5b - ld a, [wWhichPokemon] ; wWhichPokemon + ld a, [wWhichPokemon] add a ld d, $0 ld e, a diff --git a/engine/save.asm b/engine/save.asm index c1231871..d3127f04 100755 --- a/engine/save.asm +++ b/engine/save.asm @@ -665,7 +665,7 @@ HallOfFame_Copy: ; 73b51 (1c:7b51) ld [MBC1SRamEnable], a ret -Func_73b6a: ; 73b6a (1c:7b6a) +ClearSAV: ; 73b6a (1c:7b6a) ld a, SRAM_ENABLE ld [MBC1SRamEnable], a ld a, $1 diff --git a/engine/titlescreen.asm b/engine/titlescreen.asm index 5e8a15d5..ed23fbc4 100755 --- a/engine/titlescreen.asm +++ b/engine/titlescreen.asm @@ -237,14 +237,14 @@ ENDC call LoadGBPal ld a, [hJoyHeld] ld b, a - and $46 - cp $46 - jp z, Func_448e + and D_UP | SELECT | B_BUTTON + cp D_UP | SELECT | B_BUTTON + jp z, .doClearSaveDialogue jp MainMenu -Func_448e: ; 448e (1:448e) - ld b, BANK(Func_1c98a) - ld hl, Func_1c98a +.doClearSaveDialogue + ld b, BANK(DoClearSaveDialogue) + ld hl, DoClearSaveDialogue jp Bankswitch Func_4496: ; 4496 (1:4496) diff --git a/engine/town_map.asm b/engine/town_map.asm index dece8d1f..7974cf1a 100755 --- a/engine/town_map.asm +++ b/engine/town_map.asm @@ -364,10 +364,10 @@ Func_711c4: ; 711c4 (1c:51c4) jp CopyData Func_711ef: ; 711ef (1c:51ef) - callba Func_e9cb + callba FindWildLocationsOfMon call Func_712d9 ld hl, wOAMBuffer - ld de, wHPBarMaxHP + ld de, wBuffer .asm_71200 ld a, [de] cp $ff diff --git a/home.asm b/home.asm index ef7d35bb..1557755a 100644 --- a/home.asm +++ b/home.asm @@ -173,7 +173,7 @@ LoadDestinationWarpPosition:: ; 1313 (0:1313) DrawHPBar:: ; 1336 (0:1336) ; Draw an HP bar d tiles long, and fill it to e pixels. ; If c is nonzero, show at least a sliver regardless. -; The right end of the bar changes with [wListMenuID]. +; The right end of the bar changes with [wHPBarType]. push hl push de @@ -195,7 +195,7 @@ DrawHPBar:: ; 1336 (0:1336) jr nz, .draw ; Right - ld a,[wListMenuID] + ld a,[wHPBarType] dec a ld a, $6d ; status screen and battle jr z, .ok diff --git a/wram.asm b/wram.asm index 2cde6d12..b2fd4eb8 100755 --- a/wram.asm +++ b/wram.asm @@ -803,6 +803,12 @@ wWhichPokemon:: ; cf92 wcf93:: ds 1 +wHPBarType:: ; cf94 +; type of HP bar +; $00 = enemy HUD in battle +; $01 = player HUD in battle / status screen +; $02 = party menu + wListMenuID:: ; cf94 ; ID used by DisplayListMenuID ds 1 -- cgit v1.3.1-sl0p