mirror of
https://github.com/thornAvery/kep-hack.git
synced 2026-02-06 23:55:24 +13:00
Use monster struct macros in wram. Rename related labels for consistency.
This commit is contained in:
parent
9eefed45f7
commit
53ae0e93fa
53 changed files with 860 additions and 1018 deletions
|
|
@ -11,13 +11,13 @@ DrainHPEffect_: ; 783f (1:783f)
|
|||
inc hl
|
||||
inc [hl]
|
||||
.asm_784f
|
||||
ld hl, W_PLAYERMONCURHP ; wd015
|
||||
ld de, W_PLAYERMONMAXHP ; wd023
|
||||
ld hl, wBattleMonHP ; wd015
|
||||
ld de, wBattleMonMaxHP ; wd023
|
||||
ld a, [H_WHOSETURN] ; $fff3
|
||||
and a
|
||||
jp z, Func_7861
|
||||
ld hl, W_ENEMYMONCURHP ; W_ENEMYMONCURHP
|
||||
ld de, W_ENEMYMONMAXHP ; W_ENEMYMONMAXHP
|
||||
ld hl, wEnemyMonHP ; wEnemyMonHP
|
||||
ld de, wEnemyMonMaxHP ; wEnemyMonMaxHP
|
||||
|
||||
Func_7861: ; 7861 (1:7861)
|
||||
ld bc, wHPBarOldHP+1
|
||||
|
|
|
|||
|
|
@ -11,8 +11,8 @@ Func_525af: ; 525af (14:65af)
|
|||
ld [hl], a
|
||||
ld [wListScrollOffset], a ; wcc36
|
||||
ld [wd05e], a
|
||||
ld [W_PLAYERMONID], a
|
||||
ld [W_PLAYERMONSALIVEFLAGS], a
|
||||
ld [wBattleMonSpecies], a
|
||||
ld [wPartyAliveFlags], a
|
||||
ld [wPlayerMonNumber], a ; wPlayerMonNumber
|
||||
ld [wd078], a
|
||||
ld [wd35d], a
|
||||
|
|
@ -40,12 +40,12 @@ Func_525af: ; 525af (14:65af)
|
|||
jp Bankswitch
|
||||
|
||||
ParalyzeEffect_: ; 52601 (14:6601)
|
||||
ld hl, W_ENEMYMONSTATUS ; wcfe9
|
||||
ld hl, wEnemyMonStatus ; wcfe9
|
||||
ld de, W_PLAYERMOVETYPE ; wcfd5
|
||||
ld a, [H_WHOSETURN] ; $fff3
|
||||
and a
|
||||
jp z, .asm_52613
|
||||
ld hl, W_PLAYERMONSTATUS ; W_PLAYERMONSTATUS
|
||||
ld hl, wBattleMonStatus ; wBattleMonStatus
|
||||
ld de, W_ENEMYMOVETYPE ; wcfcf
|
||||
|
||||
.asm_52613
|
||||
|
|
|
|||
|
|
@ -1,11 +1,11 @@
|
|||
GainExperience: ; 5524f (15:524f)
|
||||
ld a, [W_ISLINKBATTLE] ; W_ISLINKBATTLE
|
||||
ld a, [W_ISLINKBATTLE]
|
||||
cp $4
|
||||
ret z
|
||||
call Func_5546c
|
||||
ld hl, W_PARTYMON1_NUM ; W_PARTYMON1_NUM (aliases: W_PARTYMON1DATA)
|
||||
ld hl, wPartyMons
|
||||
xor a
|
||||
ld [wWhichPokemon], a ; wWhichPokemon
|
||||
ld [wWhichPokemon], a
|
||||
|
||||
Func_5525f: ; 5525f (15:525f)
|
||||
inc hl
|
||||
|
|
@ -13,8 +13,8 @@ Func_5525f: ; 5525f (15:525f)
|
|||
or [hl]
|
||||
jp z, Func_55436
|
||||
push hl
|
||||
ld hl, W_PLAYERMONSALIVEFLAGS
|
||||
ld a, [wWhichPokemon] ; wWhichPokemon
|
||||
ld hl, wPartyAliveFlags
|
||||
ld a, [wWhichPokemon]
|
||||
ld c, a
|
||||
ld b, $2
|
||||
ld a, $10 ; FlagActionPredef
|
||||
|
|
@ -56,26 +56,26 @@ Func_5525f: ; 5525f (15:525f)
|
|||
jr .asm_55285
|
||||
.asm_552a1
|
||||
xor a
|
||||
ld [H_NUMTOPRINT], a ; $ff96 (aliases: H_MULTIPLICAND)
|
||||
ld [$ff97], a
|
||||
ld [H_MULTIPLICAND], a
|
||||
ld [H_MULTIPLICAND + 1], a
|
||||
ld a, [wd008]
|
||||
ld [$ff98], a
|
||||
ld a, [W_ENEMYMONLEVEL] ; W_ENEMYMONLEVEL
|
||||
ld [H_REMAINDER], a ; $ff99 (aliases: H_DIVISOR, H_MULTIPLIER, H_POWEROFTEN)
|
||||
ld [H_MULTIPLICAND + 2], a
|
||||
ld a, [wEnemyMonLevel]
|
||||
ld [H_MULTIPLIER], a
|
||||
call Multiply
|
||||
ld a, $7
|
||||
ld [H_REMAINDER], a ; $ff99 (aliases: H_DIVISOR, H_MULTIPLIER, H_POWEROFTEN)
|
||||
ld b, $4
|
||||
ld a, 7
|
||||
ld [H_DIVISOR], a
|
||||
ld b, 4
|
||||
call Divide
|
||||
ld hl, $fff2
|
||||
add hl, de
|
||||
ld b, [hl]
|
||||
inc hl
|
||||
ld a, [wPlayerID] ; wPlayerID
|
||||
ld a, [wPlayerID]
|
||||
cp b
|
||||
jr nz, .asm_552d1
|
||||
ld b, [hl]
|
||||
ld a, [wPlayerID + 1] ; wd35a
|
||||
ld a, [wPlayerID + 1]
|
||||
cp b
|
||||
ld a, $0
|
||||
jr z, .asm_552d6
|
||||
|
|
@ -84,7 +84,7 @@ Func_5525f: ; 5525f (15:525f)
|
|||
ld a, $1
|
||||
.asm_552d6
|
||||
ld [wcf4d], a
|
||||
ld a, [W_ISINBATTLE] ; W_ISINBATTLE
|
||||
ld a, [W_ISINBATTLE]
|
||||
dec a
|
||||
call nz, Func_5549f
|
||||
inc hl
|
||||
|
|
@ -107,17 +107,17 @@ Func_5525f: ; 5525f (15:525f)
|
|||
.asm_552f8
|
||||
inc hl
|
||||
push hl
|
||||
ld a, [wWhichPokemon] ; wWhichPokemon
|
||||
ld a, [wWhichPokemon]
|
||||
ld c, a
|
||||
ld b, $0
|
||||
ld hl, W_PARTYMON1 ; W_PARTYMON1
|
||||
ld b, 0
|
||||
ld hl, wPartySpecies
|
||||
add hl, bc
|
||||
ld a, [hl]
|
||||
ld [wd0b5], a
|
||||
call GetMonHeader
|
||||
ld d, MAX_LEVEL
|
||||
callab CalcExperience
|
||||
ld a, [H_NUMTOPRINT] ; $ff96 (aliases: H_MULTIPLICAND)
|
||||
ld a, [$ff96]
|
||||
ld b, a
|
||||
ld a, [$ff97]
|
||||
ld c, a
|
||||
|
|
@ -140,8 +140,8 @@ Func_5525f: ; 5525f (15:525f)
|
|||
dec hl
|
||||
.asm_5532e
|
||||
push hl
|
||||
ld a, [wWhichPokemon] ; wWhichPokemon
|
||||
ld hl, W_PARTYMON1NAME ; W_PARTYMON1NAME
|
||||
ld a, [wWhichPokemon]
|
||||
ld hl, wPartyMonNicks
|
||||
call GetPartyMonName
|
||||
ld hl, GainedText
|
||||
call PrintText
|
||||
|
|
@ -157,11 +157,11 @@ Func_5525f: ; 5525f (15:525f)
|
|||
ld a, [hl]
|
||||
cp d
|
||||
jp z, Func_55436
|
||||
ld a, [W_CURENEMYLVL] ; W_CURENEMYLVL
|
||||
ld a, [W_CURENEMYLVL]
|
||||
push af
|
||||
push hl
|
||||
ld a, d
|
||||
ld [W_CURENEMYLVL], a ; W_CURENEMYLVL
|
||||
ld [W_CURENEMYLVL], a
|
||||
ld [hl], a
|
||||
ld bc, $ffdf
|
||||
add hl, bc
|
||||
|
|
@ -198,12 +198,12 @@ Func_5525f: ; 5525f (15:525f)
|
|||
ld a, [hl]
|
||||
adc b
|
||||
ld [hl], a
|
||||
ld a, [wPlayerMonNumber] ; wPlayerMonNumber
|
||||
ld a, [wPlayerMonNumber]
|
||||
ld b, a
|
||||
ld a, [wWhichPokemon] ; wWhichPokemon
|
||||
ld a, [wWhichPokemon]
|
||||
cp b
|
||||
jr nz, .asm_553f7
|
||||
ld de, W_PLAYERMONCURHP ; wd015
|
||||
ld de, wBattleMonHP
|
||||
ld a, [hli]
|
||||
ld [de], a
|
||||
inc de
|
||||
|
|
@ -212,7 +212,7 @@ Func_5525f: ; 5525f (15:525f)
|
|||
ld bc, $1f
|
||||
add hl, bc
|
||||
push hl
|
||||
ld de, W_PLAYERMONLEVEL ; W_PLAYERMONLEVEL
|
||||
ld de, wBattleMonLevel ; wBattleMonLevel
|
||||
ld bc, $b
|
||||
call CopyData
|
||||
pop hl
|
||||
|
|
@ -258,7 +258,7 @@ Func_5525f: ; 5525f (15:525f)
|
|||
ld [W_CURENEMYLVL], a ; W_CURENEMYLVL
|
||||
|
||||
Func_55436: ; 55436 (15:5436)
|
||||
ld a, [W_NUMINPARTY] ; W_NUMINPARTY
|
||||
ld a, [wPartyCount] ; wPartyCount
|
||||
ld b, a
|
||||
ld a, [wWhichPokemon] ; wWhichPokemon
|
||||
inc a
|
||||
|
|
@ -266,11 +266,11 @@ Func_55436: ; 55436 (15:5436)
|
|||
jr z, .asm_55450
|
||||
ld [wWhichPokemon], a ; wWhichPokemon
|
||||
ld bc, $2c
|
||||
ld hl, W_PARTYMON1_NUM ; W_PARTYMON1_NUM (aliases: W_PARTYMON1DATA)
|
||||
ld hl, wPartyMon1Species ; wPartyMon1Species (aliases: wPartyMon1)
|
||||
call AddNTimes
|
||||
jp Func_5525f
|
||||
.asm_55450
|
||||
ld hl, W_PLAYERMONSALIVEFLAGS
|
||||
ld hl, wPartyAliveFlags
|
||||
xor a
|
||||
ld [hl], a
|
||||
ld a, [wPlayerMonNumber] ; wPlayerMonNumber
|
||||
|
|
@ -287,7 +287,7 @@ Func_55436: ; 55436 (15:5436)
|
|||
jp Predef
|
||||
|
||||
Func_5546c: ; 5546c (15:546c)
|
||||
ld a, [W_PLAYERMONSALIVEFLAGS]
|
||||
ld a, [wPartyAliveFlags]
|
||||
ld b, a
|
||||
xor a
|
||||
ld c, $8
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@ PrintBeginningBattleText: ; 58d99 (16:4d99)
|
|||
cp LAVENDER_HOUSE_1
|
||||
jr c, .pokemonTower
|
||||
.notPokemonTower
|
||||
ld a, [W_ENEMYMONID]
|
||||
ld a, [wEnemyMonSpecies2]
|
||||
call PlayCry
|
||||
ld hl, WildMonAppearedText
|
||||
ld a, [W_MOVEMISSED] ; W_MOVEMISSED
|
||||
|
|
@ -31,7 +31,7 @@ PrintBeginningBattleText: ; 58d99 (16:4d99)
|
|||
.pokemonTower
|
||||
ld b, SILPH_SCOPE
|
||||
call IsItemInBag
|
||||
ld a, [W_ENEMYMONID]
|
||||
ld a, [wEnemyMonSpecies2]
|
||||
ld [wcf91], a
|
||||
cp MAROWAK
|
||||
jr z, .isMarowak
|
||||
|
|
@ -95,14 +95,14 @@ GhostCantBeIDdText: ; 58e54 (16:4e54)
|
|||
db "@"
|
||||
|
||||
SendOutMon: ; 58e59 (16:4e59)
|
||||
ld hl, W_ENEMYMONCURHP ; W_ENEMYMONCURHP
|
||||
ld hl, wEnemyMonHP ; wEnemyMonHP
|
||||
ld a, [hli]
|
||||
or [hl]
|
||||
ld hl, GoText
|
||||
jr z, .printText
|
||||
xor a
|
||||
ld [H_NUMTOPRINT], a ; $ff96 (aliases: H_MULTIPLICAND)
|
||||
ld hl, W_ENEMYMONCURHP ; W_ENEMYMONCURHP
|
||||
ld hl, wEnemyMonHP ; wEnemyMonHP
|
||||
ld a, [hli]
|
||||
ld [wcce3], a
|
||||
ld [$ff97], a
|
||||
|
|
@ -112,7 +112,7 @@ SendOutMon: ; 58e59 (16:4e59)
|
|||
ld a, $19
|
||||
ld [H_REMAINDER], a ; $ff99 (aliases: H_DIVISOR, H_MULTIPLIER, H_POWEROFTEN)
|
||||
call Multiply
|
||||
ld hl, W_ENEMYMONMAXHP ; W_ENEMYMONMAXHP
|
||||
ld hl, wEnemyMonMaxHP ; wEnemyMonMaxHP
|
||||
ld a, [hli]
|
||||
ld b, [hl]
|
||||
srl a
|
||||
|
|
@ -173,7 +173,7 @@ PlayerMon2Text: ; 58ed7 (16:4ed7)
|
|||
db $08 ; asm
|
||||
push de
|
||||
push bc
|
||||
ld hl, W_ENEMYMONCURHP + 1
|
||||
ld hl, wEnemyMonHP + 1
|
||||
ld de, wcce4
|
||||
ld b, [hl]
|
||||
dec hl
|
||||
|
|
@ -188,7 +188,7 @@ PlayerMon2Text: ; 58ed7 (16:4ed7)
|
|||
ld a, $19
|
||||
ld [H_POWEROFTEN], a
|
||||
call Multiply
|
||||
ld hl, W_ENEMYMONMAXHP
|
||||
ld hl, wEnemyMonMaxHP
|
||||
ld a, [hli]
|
||||
ld b, [hl]
|
||||
srl a
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@ DecrementPP: ; 68000 (1a:4000)
|
|||
ret nz ; if any of these statuses are true, don't decrement PP
|
||||
bit 6, [hl] ; check 6th bit status flag on W_PLAYERBATTSTATUS2
|
||||
ret nz ; and return if it is set
|
||||
ld hl, W_PLAYERMONPP ; PP of first move (in battle)
|
||||
ld hl, wBattleMonPP ; PP of first move (in battle)
|
||||
call .DecrementPP
|
||||
|
||||
ld a, [W_PLAYERBATTSTATUS3] ; load pokemon status bits?
|
||||
|
|
@ -26,7 +26,7 @@ DecrementPP: ; 68000 (1a:4000)
|
|||
; its opponent, which is *not* the same as its real PP as part of your
|
||||
; party. So we return, and don't do that part.
|
||||
|
||||
ld hl, W_PARTYMON1_MOVE1PP ; PP of first move (in party)
|
||||
ld hl, wPartyMon1PP ; PP of first move (in party)
|
||||
ld a, [wPlayerMonNumber] ; which mon in party is active
|
||||
ld bc, $2C ; XXX probably size of party pokemon's data structure
|
||||
call AddNTimes ; calculate address of the mon to modify
|
||||
|
|
|
|||
|
|
@ -170,16 +170,16 @@ GetBattleTransitionID_WildOrTrainer: ; 709e2 (1c:49e2)
|
|||
ret
|
||||
|
||||
GetBattleTransitionID_CompareLevels: ; 709ef (1c:49ef)
|
||||
ld hl, W_PARTYMON1_HP
|
||||
ld hl, wPartyMon1HP
|
||||
.faintedLoop
|
||||
ld a, [hli]
|
||||
or [hl]
|
||||
jr nz, .notFainted
|
||||
ld de, W_PARTYMON2DATA - (W_PARTYMON1DATA + 1)
|
||||
ld de, wPartyMon2 - (wPartyMon1 + 1)
|
||||
add hl, de
|
||||
jr .faintedLoop
|
||||
.notFainted
|
||||
ld de, W_PARTYMON1_LEVEL - (W_PARTYMON1_HP + 1)
|
||||
ld de, wPartyMon1Level - (wPartyMon1HP + 1)
|
||||
add hl, de
|
||||
ld a, [hl]
|
||||
add $3
|
||||
|
|
|
|||
|
|
@ -2,11 +2,11 @@ Func_137aa: ; 137aa (4:77aa)
|
|||
ld a, [W_ISLINKBATTLE] ; W_ISLINKBATTLE
|
||||
cp $4
|
||||
jr nz, .asm_137eb
|
||||
ld a, [W_ENEMYMONNUMBER] ; W_ENEMYMONNUMBER
|
||||
ld hl, wd8a8
|
||||
ld bc, $2c
|
||||
ld a, [wEnemyMonPartyPos]
|
||||
ld hl, wEnemyMon1Status
|
||||
ld bc, wEnemyMon2 - wEnemyMon1
|
||||
call AddNTimes
|
||||
ld a, [W_ENEMYMONSTATUS] ; wcfe9
|
||||
ld a, [wEnemyMonStatus] ; wcfe9
|
||||
ld [hl], a
|
||||
call ClearScreen
|
||||
callab Func_372d6
|
||||
|
|
@ -151,7 +151,7 @@ Func_13870: ; 13870 (4:7870)
|
|||
ld a, [Coord]
|
||||
cp $14
|
||||
jr nz, .asm_138e5
|
||||
ld hl, W_WATERMONS ; wd8a5 (aliases: W_ENEMYMON1HP)
|
||||
ld hl, W_WATERMONS ; wd8a5 (aliases: wEnemyMon1HP)
|
||||
.asm_138e5
|
||||
ld b, $0
|
||||
add hl, bc
|
||||
|
|
@ -159,11 +159,11 @@ Func_13870: ; 13870 (4:7870)
|
|||
ld [W_CURENEMYLVL], a ; W_CURENEMYLVL
|
||||
ld a, [hl]
|
||||
ld [wcf91], a
|
||||
ld [W_ENEMYMONID], a
|
||||
ld [wEnemyMonSpecies2], a
|
||||
ld a, [wd0db]
|
||||
and a
|
||||
jr z, .asm_13916
|
||||
ld a, [W_PARTYMON1_LEVEL] ; W_PARTYMON1_LEVEL
|
||||
ld a, [wPartyMon1Level] ; wPartyMon1Level
|
||||
ld b, a
|
||||
ld a, [W_CURENEMYLVL] ; W_CURENEMYLVL
|
||||
cp b
|
||||
|
|
@ -203,10 +203,10 @@ RecoilEffect_: ; 1392c (4:792c)
|
|||
ld a, [H_WHOSETURN] ; $fff3
|
||||
and a
|
||||
ld a, [W_PLAYERMOVENUM] ; wcfd2
|
||||
ld hl, W_PLAYERMONMAXHP ; wd023
|
||||
ld hl, wBattleMonMaxHP ; wd023
|
||||
jr z, .asm_1393d
|
||||
ld a, [W_ENEMYMOVENUM] ; W_ENEMYMOVENUM
|
||||
ld hl, W_ENEMYMONMAXHP ; W_ENEMYMONMAXHP
|
||||
ld hl, wEnemyMonMaxHP ; wEnemyMonMaxHP
|
||||
.asm_1393d
|
||||
ld d, a
|
||||
ld a, [W_DAMAGE] ; W_DAMAGE
|
||||
|
|
@ -272,8 +272,8 @@ HitWithRecoilText: ; 1399e (4:799e)
|
|||
db "@"
|
||||
|
||||
ConversionEffect_: ; 139a3 (4:79a3)
|
||||
ld hl, W_ENEMYMONTYPE1
|
||||
ld de, W_PLAYERMONTYPE1
|
||||
ld hl, wEnemyMonType1
|
||||
ld de, wBattleMonType1
|
||||
ld a, [H_WHOSETURN]
|
||||
and a
|
||||
ld a, [W_ENEMYBATTSTATUS1]
|
||||
|
|
@ -313,17 +313,17 @@ HazeEffect_: ; 139da (4:79da)
|
|||
ld hl, wEnemyMonAttackMod
|
||||
call Func_13a43
|
||||
ld hl, wcd12
|
||||
ld de, W_PLAYERMONATK
|
||||
ld de, wBattleMonAttack
|
||||
call Func_13a4a
|
||||
ld hl, wcd26
|
||||
ld de, W_ENEMYMONATTACK
|
||||
ld de, wEnemyMonAttack
|
||||
call Func_13a4a
|
||||
ld hl, W_ENEMYMONSTATUS
|
||||
ld hl, wEnemyMonStatus
|
||||
ld de, wEnemySelectedMove
|
||||
ld a, [H_WHOSETURN]
|
||||
and a
|
||||
jr z, .asm_13a09
|
||||
ld hl, W_PLAYERMONSTATUS
|
||||
ld hl, wBattleMonStatus
|
||||
dec de
|
||||
|
||||
.asm_13a09
|
||||
|
|
|
|||
|
|
@ -1,13 +1,13 @@
|
|||
SubstituteEffectHandler: ; 17dad (5:7dad)
|
||||
ld c, 50
|
||||
call DelayFrames
|
||||
ld hl, W_PLAYERMONMAXHP
|
||||
ld hl, wBattleMonMaxHP
|
||||
ld de, wPlayerSubstituteHP
|
||||
ld bc, W_PLAYERBATTSTATUS2
|
||||
ld a, [$fff3] ;whose turn?
|
||||
and a
|
||||
jr z, .notEnemy
|
||||
ld hl, W_ENEMYMONMAXHP
|
||||
ld hl, wEnemyMonMaxHP
|
||||
ld de, wEnemySubstituteHP
|
||||
ld bc, W_ENEMYBATTSTATUS2
|
||||
.notEnemy
|
||||
|
|
|
|||
|
|
@ -4,12 +4,12 @@ LeechSeedEffect_: ; 2bea9 (a:7ea9)
|
|||
and a
|
||||
jr nz, .asm_2bee7
|
||||
ld hl, W_ENEMYBATTSTATUS2 ; W_ENEMYBATTSTATUS2
|
||||
ld de, W_ENEMYMONTYPE1 ; wcfea (aliases: W_ENEMYMONTYPES)
|
||||
ld de, wEnemyMonType1 ; wcfea (aliases: wEnemyMonType)
|
||||
ld a, [H_WHOSETURN] ; $fff3
|
||||
and a
|
||||
jr z, .asm_2bec8
|
||||
ld hl, W_PLAYERBATTSTATUS2 ; W_PLAYERBATTSTATUS2
|
||||
ld de, W_PLAYERMONTYPE1 ; wd019 (aliases: W_PLAYERMONTYPES)
|
||||
ld de, wBattleMonType1 ; wd019 (aliases: wBattleMonType)
|
||||
.asm_2bec8
|
||||
ld a, [de]
|
||||
cp GRASS
|
||||
|
|
|
|||
|
|
@ -1488,9 +1488,9 @@ AnimationBlinkMon: ; 7936f (1e:536f)
|
|||
|
||||
AnimationFlashMonPic: ; 79389 (1e:5389)
|
||||
; Flashes the mon's sprite on and off
|
||||
ld a, [W_PLAYERMONID]
|
||||
ld a, [wBattleMonSpecies]
|
||||
ld [wHPBarMaxHP + 1], a
|
||||
ld a, [wcfe5]
|
||||
ld a, [wEnemyMonSpecies]
|
||||
ld [wHPBarMaxHP], a
|
||||
jp Func_79793
|
||||
|
||||
|
|
@ -2117,9 +2117,9 @@ AnimationBoundUpAndDown: ; 7977a (1e:577a)
|
|||
AnimationTransformMon: ; 79787 (1e:5787)
|
||||
; Redraws this mon's sprite as the back/front sprite of the opposing mon.
|
||||
; Used in Transform.
|
||||
ld a, [wcfe5]
|
||||
ld a, [wEnemyMonSpecies]
|
||||
ld [wHPBarMaxHP + 1], a
|
||||
ld a, [W_PLAYERMONID]
|
||||
ld a, [wBattleMonSpecies]
|
||||
ld [wHPBarMaxHP], a
|
||||
|
||||
Func_79793: ; 79793 (1e:5793)
|
||||
|
|
@ -2137,10 +2137,10 @@ Func_79793: ; 79793 (1e:5793)
|
|||
call LoadFrontSpriteByMonIndex
|
||||
jr .asm_797d3
|
||||
.asm_797b0
|
||||
ld a, [wcfd9]
|
||||
ld a, [wBattleMonSpecies2]
|
||||
push af
|
||||
ld a, [wHPBarMaxHP + 1]
|
||||
ld [wcfd9], a
|
||||
ld [wBattleMonSpecies2], a
|
||||
ld [wd0b5], a
|
||||
call GetMonHeader
|
||||
ld a, $4
|
||||
|
|
@ -2150,7 +2150,7 @@ Func_79793: ; 79793 (1e:5793)
|
|||
call Func_79820
|
||||
call Func_79aae
|
||||
pop af
|
||||
ld [wcfd9], a
|
||||
ld [wBattleMonSpecies2], a
|
||||
.asm_797d3
|
||||
ld b, $1
|
||||
jp GoPAL_SET
|
||||
|
|
@ -2291,10 +2291,10 @@ Func_7986f: ; 7986f (1e:586f)
|
|||
ld a,[H_WHOSETURN]
|
||||
and a
|
||||
jr nz,.next
|
||||
ld a,[W_PLAYERMONID] ; get number of current monster
|
||||
ld a,[wBattleMonSpecies] ; get number of current monster
|
||||
jr .Continue
|
||||
.next
|
||||
ld a,[wcfe5]
|
||||
ld a,[wEnemyMonSpecies]
|
||||
.Continue
|
||||
push hl
|
||||
call GetCryData
|
||||
|
|
|
|||
|
|
@ -90,9 +90,9 @@ PayDayEffect_ ; 2feb8 (b:7eb8)
|
|||
ld [hli], a
|
||||
ld a, [$fff3]
|
||||
and a
|
||||
ld a, [W_PLAYERMONLEVEL]
|
||||
ld a, [wBattleMonLevel]
|
||||
jr z, .asm_2fec8 ; 0x2fec3 $3
|
||||
ld a, [W_ENEMYMONLEVEL]
|
||||
ld a, [wEnemyMonLevel]
|
||||
.asm_2fec8
|
||||
add a
|
||||
ld [$ff98], a
|
||||
|
|
|
|||
|
|
@ -27,13 +27,13 @@ OneHitKOEffect_: ; 33f57 (c:7f57)
|
|||
ld [hl], a ; set the damage output to zero
|
||||
dec a
|
||||
ld [wd05e], a
|
||||
ld hl, W_PLAYERMONSPEED + 1
|
||||
ld de, W_ENEMYMONSPEED + 1
|
||||
ld hl, wBattleMonSpeed + 1
|
||||
ld de, wEnemyMonSpeed + 1
|
||||
ld a, [H_WHOSETURN] ; $fff3
|
||||
and a
|
||||
jr z, .asm_33f72
|
||||
ld hl, W_ENEMYMONSPEED + 1
|
||||
ld de, W_PLAYERMONSPEED + 1
|
||||
ld hl, wEnemyMonSpeed + 1
|
||||
ld de, wBattleMonSpeed + 1
|
||||
.asm_33f72
|
||||
ld a, [de]
|
||||
dec de
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load diff
|
|
@ -7,7 +7,7 @@ Func_372d6: ; 372d6 (d:72d6)
|
|||
call TextBoxBorder
|
||||
FuncCoord 4, 5
|
||||
ld hl, Coord
|
||||
ld de, W_PLAYERNAME ; wd158
|
||||
ld de, wPlayerName ; wd158
|
||||
call PlaceString
|
||||
FuncCoord 4, 10
|
||||
ld hl, Coord
|
||||
|
|
|
|||
|
|
@ -2,10 +2,10 @@ Func_39680: ; 39680 (e:5680)
|
|||
ld a, [H_WHOSETURN] ; $fff3
|
||||
and a
|
||||
ld a, [wd060]
|
||||
ld hl, W_PLAYERMONATK + 1
|
||||
ld hl, wBattleMonAttack + 1
|
||||
jr z, .asm_39691
|
||||
ld a, [wd065]
|
||||
ld hl, W_ENEMYMONATTACK + 1
|
||||
ld hl, wEnemyMonAttack + 1
|
||||
.asm_39691
|
||||
ld c, $4
|
||||
ld b, a
|
||||
|
|
@ -31,10 +31,10 @@ Func_396a7: ; 396a7 (e:56a7)
|
|||
ld a, [H_WHOSETURN] ; $fff3
|
||||
and a
|
||||
ld a, [wd061]
|
||||
ld hl, W_PLAYERMONATK
|
||||
ld hl, wBattleMonAttack
|
||||
jr z, .asm_396b8
|
||||
ld a, [wd066]
|
||||
ld hl, W_ENEMYMONATTACK
|
||||
ld hl, wEnemyMonAttack
|
||||
.asm_396b8
|
||||
ld c, $4
|
||||
ld b, a
|
||||
|
|
@ -63,7 +63,7 @@ _ScrollTrainerPicAfterBattle: ; 396d3 (e:56d3)
|
|||
; Load the enemy trainer's pic and scrolls it into
|
||||
; the screen from the right.
|
||||
xor a
|
||||
ld [W_ENEMYMONID], a
|
||||
ld [wEnemyMonSpecies2], a
|
||||
ld b, $1
|
||||
call GoPAL_SET
|
||||
callab _LoadTrainerPic
|
||||
|
|
@ -166,7 +166,7 @@ AIEnemyTrainerChooseMoves: ; 39719 (e:5719)
|
|||
jp [hl] ; execute modification function
|
||||
.loopFindMinimumEntries ; all entries will be decremented sequentially until one of them is zero
|
||||
ld hl, wHPBarMaxHP ; temp move selection array
|
||||
ld de, W_ENEMYMONMOVES ; enemy moves
|
||||
ld de, wEnemyMonMoves ; enemy moves
|
||||
ld c, $4
|
||||
.loopDecrementEntries
|
||||
ld a, [de]
|
||||
|
|
@ -188,7 +188,7 @@ AIEnemyTrainerChooseMoves: ; 39719 (e:5719)
|
|||
cp $5
|
||||
jr nz, .loopUndoPartialIteration
|
||||
ld hl, wHPBarMaxHP ; temp move selection array
|
||||
ld de, W_ENEMYMONMOVES ; enemy moves
|
||||
ld de, wEnemyMonMoves ; enemy moves
|
||||
ld c, $4
|
||||
.filterMinimalEntries ; all minimal entries now have value 1. All other slots will be disabled (move set to 0)
|
||||
ld a, [de]
|
||||
|
|
@ -212,7 +212,7 @@ AIEnemyTrainerChooseMoves: ; 39719 (e:5719)
|
|||
ld hl, wHPBarMaxHP ; use created temporary array as move set
|
||||
ret
|
||||
.useOriginalMoveSet
|
||||
ld hl, W_ENEMYMONMOVES ; use original move set
|
||||
ld hl, wEnemyMonMoves ; use original move set
|
||||
ret
|
||||
|
||||
AIMoveChoiceModificationFunctionPointers: ; 397a3 (e:57a3)
|
||||
|
|
@ -223,11 +223,11 @@ AIMoveChoiceModificationFunctionPointers: ; 397a3 (e:57a3)
|
|||
|
||||
; discourages moves that cause no damage but only a status ailment if player's mon already has one
|
||||
AIMoveChoiceModification1: ; 397ab (e:57ab)
|
||||
ld a, [W_PLAYERMONSTATUS]
|
||||
ld a, [wBattleMonStatus]
|
||||
and a
|
||||
ret z ; return if no status ailment on player's mon
|
||||
ld hl, wBuffer - 1 ; temp move selection array (-1 byte offest)
|
||||
ld de, W_ENEMYMONMOVES ; enemy moves
|
||||
ld de, wEnemyMonMoves ; enemy moves
|
||||
ld b, $5
|
||||
.nextMove
|
||||
dec b
|
||||
|
|
@ -270,7 +270,7 @@ AIMoveChoiceModification2: ; 397e7 (e:57e7)
|
|||
cp $1
|
||||
ret nz
|
||||
ld hl, wBuffer - 1 ; temp move selection array (-1 byte offest)
|
||||
ld de, W_ENEMYMONMOVES ; enemy moves
|
||||
ld de, wEnemyMonMoves ; enemy moves
|
||||
ld b, $5
|
||||
.nextMove
|
||||
dec b
|
||||
|
|
@ -298,7 +298,7 @@ AIMoveChoiceModification2: ; 397e7 (e:57e7)
|
|||
; encourages moves that are effective against the player's mon
|
||||
AIMoveChoiceModification3: ; 39817 (e:5817)
|
||||
ld hl, wBuffer - 1 ; temp move selection array (-1 byte offest)
|
||||
ld de, W_ENEMYMONMOVES ; enemy moves
|
||||
ld de, wEnemyMonMoves ; enemy moves
|
||||
ld b, $5
|
||||
.nextMove
|
||||
dec b
|
||||
|
|
@ -328,7 +328,7 @@ AIMoveChoiceModification3: ; 39817 (e:5817)
|
|||
push bc
|
||||
ld a, [W_ENEMYMOVETYPE]
|
||||
ld d, a
|
||||
ld hl, W_ENEMYMONMOVES ; enemy moves
|
||||
ld hl, wEnemyMonMoves ; enemy moves
|
||||
ld b, $5
|
||||
ld c, $0
|
||||
.loopMoves
|
||||
|
|
@ -635,14 +635,14 @@ Func_39bd5: ; 39bd5 (e:5bd5)
|
|||
cp $1
|
||||
jr nz, .asm_39be6
|
||||
ld hl, wEnemyPartyCount ; wEnemyPartyCount
|
||||
ld de, W_ENEMYMON1OT ; wd9ac OT names of other player
|
||||
ld de, wEnemyMonOT ; wd9ac OT names of other player
|
||||
ld a, $6
|
||||
jr .asm_39c18
|
||||
.asm_39be6
|
||||
cp $4
|
||||
jr nz, .calcAttackStat4
|
||||
ld hl, W_NUMINPARTY ; W_NUMINPARTY
|
||||
ld de, W_PARTYMON1OT ; wd273
|
||||
ld hl, wPartyCount ; wPartyCount
|
||||
ld de, wPartyMonOT ; wd273
|
||||
ld a, $5
|
||||
jr .asm_39c18
|
||||
.calcAttackStat4
|
||||
|
|
@ -681,13 +681,13 @@ Func_39bd5: ; 39bd5 (e:5bd5)
|
|||
ret
|
||||
|
||||
Func_39c37: ; 39c37 (e:5c37)
|
||||
ld hl, W_PARTYMON1 ; W_PARTYMON1
|
||||
ld hl, wPartySpecies
|
||||
ld a, [wcc49]
|
||||
and a
|
||||
jr z, .asm_39c4b
|
||||
dec a
|
||||
jr z, .asm_39c48
|
||||
ld hl, wda81
|
||||
ld hl, wBoxSpecies
|
||||
jr .asm_39c4b
|
||||
.asm_39c48
|
||||
ld hl, wEnemyPartyMons
|
||||
|
|
@ -791,8 +791,8 @@ ReadTrainer: ; 39c53 (e:5c53)
|
|||
add hl,bc
|
||||
ld a,[hli]
|
||||
ld d,[hl]
|
||||
ld hl,W_ENEMYMON1MOVE3
|
||||
ld bc,W_ENEMYMON2MOVE3 - W_ENEMYMON1MOVE3
|
||||
ld hl,wEnemyMon1Moves + 2
|
||||
ld bc,wEnemyMon2 - wEnemyMon1
|
||||
call AddNTimes
|
||||
ld [hl],d
|
||||
jr .FinishUp
|
||||
|
|
@ -821,13 +821,13 @@ ReadTrainer: ; 39c53 (e:5c53)
|
|||
jr .FinishUp ; nope
|
||||
.GiveTeamMoves
|
||||
ld a,[hl]
|
||||
ld [W_ENEMYMON5MOVE3],a
|
||||
ld [wEnemyMon5Moves + 2],a
|
||||
jr .FinishUp
|
||||
.ChampionRival ; give moves to his team
|
||||
|
||||
; pidgeot
|
||||
ld a,SKY_ATTACK
|
||||
ld [W_ENEMYMON1MOVE3],a
|
||||
ld [wEnemyMon1Moves + 2],a
|
||||
|
||||
; starter
|
||||
ld a,[W_RIVALSTARTER]
|
||||
|
|
@ -840,7 +840,7 @@ ReadTrainer: ; 39c53 (e:5c53)
|
|||
ld b,BLIZZARD ; must be squirtle
|
||||
.GiveStarterMove
|
||||
ld a,b
|
||||
ld [W_ENEMYMON6MOVE3],a
|
||||
ld [wEnemyMon6Moves + 2],a
|
||||
.FinishUp ; XXX this needs documenting
|
||||
xor a ; clear D079-D07B
|
||||
ld de,wd079
|
||||
|
|
@ -985,7 +985,7 @@ CooltrainerFAI: ; 3a601 (e:6601)
|
|||
|
||||
BrockAI: ; 3a614 (e:6614)
|
||||
; if his active monster has a status condition, use a full heal
|
||||
ld a,[W_ENEMYMONSTATUS]
|
||||
ld a,[wEnemyMonStatus]
|
||||
and a
|
||||
ret z
|
||||
jp AIUseFullHeal
|
||||
|
|
@ -1094,23 +1094,23 @@ AIUseFullRestore: ; 3a6a0 (e:66a0)
|
|||
ld a,FULL_RESTORE
|
||||
ld [wcf05],a
|
||||
ld de,wHPBarOldHP
|
||||
ld hl,W_ENEMYMONCURHP + 1
|
||||
ld hl,wEnemyMonHP + 1
|
||||
ld a,[hld]
|
||||
ld [de],a
|
||||
inc de
|
||||
ld a,[hl]
|
||||
ld [de],a
|
||||
inc de
|
||||
ld hl,W_ENEMYMONMAXHP + 1
|
||||
ld hl,wEnemyMonMaxHP + 1
|
||||
ld a,[hld]
|
||||
ld [de],a
|
||||
inc de
|
||||
ld [wHPBarMaxHP],a
|
||||
ld [W_ENEMYMONCURHP + 1],a
|
||||
ld [wEnemyMonHP + 1],a
|
||||
ld a,[hl]
|
||||
ld [de],a
|
||||
ld [wHPBarMaxHP+1],a
|
||||
ld [W_ENEMYMONCURHP],a
|
||||
ld [wEnemyMonHP],a
|
||||
jr Func_3a718
|
||||
|
||||
AIUsePotion: ; 3a6ca (e:66ca)
|
||||
|
|
@ -1134,7 +1134,7 @@ AIUseHyperPotion: ; 3a6d6 (e:66d6)
|
|||
AIRecoverHP: ; 3a6da (e:66da)
|
||||
; heal b HP and print "trainer used $(a) on pokemon!"
|
||||
ld [wcf05],a
|
||||
ld hl,W_ENEMYMONCURHP + 1
|
||||
ld hl,wEnemyMonHP + 1
|
||||
ld a,[hl]
|
||||
ld [wHPBarOldHP],a
|
||||
add b
|
||||
|
|
@ -1151,7 +1151,7 @@ AIRecoverHP: ; 3a6da (e:66da)
|
|||
inc hl
|
||||
ld a,[hld]
|
||||
ld b,a
|
||||
ld de,W_ENEMYMONMAXHP + 1
|
||||
ld de,wEnemyMonMaxHP + 1
|
||||
ld a,[de]
|
||||
dec de
|
||||
ld [wHPBarMaxHP],a
|
||||
|
|
@ -1185,7 +1185,7 @@ Func_3a718: ; 3a718 (e:6718)
|
|||
Func_3a72a: ; 3a72a (e:672a)
|
||||
ld a,[wEnemyPartyCount]
|
||||
ld c,a
|
||||
ld hl,W_ENEMYMON1HP
|
||||
ld hl,wEnemyMon1HP
|
||||
|
||||
ld d,0 ; keep count of unfainted monsters
|
||||
|
||||
|
|
@ -1215,13 +1215,13 @@ Func_3a74b: ; 3a74b (e:674b)
|
|||
|
||||
; prepare to withdraw the active monster: copy hp, number, and status to roster
|
||||
|
||||
ld a,[W_ENEMYMONNUMBER]
|
||||
ld hl,W_ENEMYMON1HP
|
||||
ld bc,$2C
|
||||
ld a,[wEnemyMonPartyPos]
|
||||
ld hl,wEnemyMon1HP
|
||||
ld bc,wEnemyMon2 - wEnemyMon1
|
||||
call AddNTimes
|
||||
ld d,h
|
||||
ld e,l
|
||||
ld hl,W_ENEMYMONCURHP
|
||||
ld hl,wEnemyMonHP
|
||||
ld bc,4
|
||||
call CopyData
|
||||
|
||||
|
|
@ -1252,13 +1252,13 @@ AIUseFullHeal: ; 3a786 (e:6786)
|
|||
|
||||
AICureStatus: ; 3a791 (e:6791)
|
||||
; cures the status of enemy's active pokemon
|
||||
ld a,[W_ENEMYMONNUMBER]
|
||||
ld hl,wd8a8
|
||||
ld bc,$2C
|
||||
ld a,[wEnemyMonPartyPos]
|
||||
ld hl,wEnemyMon1Status
|
||||
ld bc,wEnemyMon2 - wEnemyMon1
|
||||
call AddNTimes
|
||||
xor a
|
||||
ld [hl],a ; clear status in enemy team roster
|
||||
ld [W_ENEMYMONSTATUS],a ; clear status of active enemy
|
||||
ld [wEnemyMonStatus],a ; clear status of active enemy
|
||||
ld hl,W_ENEMYBATTSTATUS3
|
||||
res 0,[hl]
|
||||
ret
|
||||
|
|
@ -1286,7 +1286,7 @@ AIUseDireHit: ; 0x3a7c2 unused
|
|||
|
||||
Func_3a7cf: ; 3a7cf (e:67cf)
|
||||
ld [H_DIVISOR],a
|
||||
ld hl,W_ENEMYMONMAXHP
|
||||
ld hl,wEnemyMonMaxHP
|
||||
ld a,[hli]
|
||||
ld [H_DIVIDEND],a
|
||||
ld a,[hl]
|
||||
|
|
@ -1297,7 +1297,7 @@ Func_3a7cf: ; 3a7cf (e:67cf)
|
|||
ld c,a
|
||||
ld a,[H_QUOTIENT + 2]
|
||||
ld b,a
|
||||
ld hl,W_ENEMYMONCURHP + 1
|
||||
ld hl,wEnemyMonHP + 1
|
||||
ld a,[hld]
|
||||
ld e,a
|
||||
ld a,[hl]
|
||||
|
|
@ -1388,8 +1388,8 @@ LoadPartyPokeballGfx: ; 3a85d (e:685d)
|
|||
|
||||
SetupOwnPartyPokeballs: ; 3a869 (e:6869)
|
||||
call PlacePlayerHUDTiles
|
||||
ld hl, W_PARTYMON1DATA
|
||||
ld de, W_NUMINPARTY ; W_NUMINPARTY
|
||||
ld hl, wPartyMon1
|
||||
ld de, wPartyCount ; wPartyCount
|
||||
call SetupPokeballs
|
||||
ld a, $60
|
||||
ld hl, W_BASECOORDX ; wd081
|
||||
|
|
@ -1537,8 +1537,8 @@ PlaceHUDTiles: ; 3a930 (e:6930)
|
|||
|
||||
SetupPlayerAndEnemyPokeballs: ; 3a948 (e:6948)
|
||||
call LoadPartyPokeballGfx
|
||||
ld hl, W_PARTYMON1_NUM ; W_PARTYMON1_NUM (aliases: W_PARTYMON1DATA)
|
||||
ld de, W_NUMINPARTY ; W_NUMINPARTY
|
||||
ld hl, wPartyMon1Species ; wPartyMon1Species (aliases: wPartyMon1)
|
||||
ld de, wPartyCount ; wPartyCount
|
||||
call SetupPokeballs
|
||||
ld hl, W_BASECOORDX ; wd081
|
||||
ld a, $50
|
||||
|
|
|
|||
|
|
@ -1,12 +1,12 @@
|
|||
HealEffect_: ; 3b9ec (e:79ec)
|
||||
ld a, [H_WHOSETURN] ; $fff3
|
||||
and a
|
||||
ld de, W_PLAYERMONCURHP ; wd015
|
||||
ld hl, W_PLAYERMONMAXHP ; wd023
|
||||
ld de, wBattleMonHP ; wd015
|
||||
ld hl, wBattleMonMaxHP ; wd023
|
||||
ld a, [W_PLAYERMOVENUM] ; wcfd2
|
||||
jr z, .asm_3ba03
|
||||
ld de, W_ENEMYMONCURHP ; W_ENEMYMONCURHP
|
||||
ld hl, W_ENEMYMONMAXHP ; W_ENEMYMONMAXHP
|
||||
ld de, wEnemyMonHP ; wEnemyMonHP
|
||||
ld hl, wEnemyMonMaxHP ; wEnemyMonMaxHP
|
||||
ld a, [W_ENEMYMOVENUM] ; W_ENEMYMOVENUM
|
||||
.asm_3ba03
|
||||
ld b, a
|
||||
|
|
@ -25,11 +25,11 @@ HealEffect_: ; 3b9ec (e:79ec)
|
|||
push af
|
||||
ld c, $32
|
||||
call DelayFrames
|
||||
ld hl, W_PLAYERMONSTATUS ; W_PLAYERMONSTATUS
|
||||
ld hl, wBattleMonStatus ; wBattleMonStatus
|
||||
ld a, [H_WHOSETURN] ; $fff3
|
||||
and a
|
||||
jr z, .asm_3ba25
|
||||
ld hl, W_ENEMYMONSTATUS ; wcfe9
|
||||
ld hl, wEnemyMonStatus ; wcfe9
|
||||
.asm_3ba25
|
||||
ld a, [hl]
|
||||
and a
|
||||
|
|
@ -120,15 +120,15 @@ RegainedHealthText: ; 3baac (e:7aac)
|
|||
db "@"
|
||||
|
||||
TransformEffect_: ; 3bab1 (e:7ab1)
|
||||
ld hl, W_PLAYERMONID
|
||||
ld de, wcfe5
|
||||
ld hl, wBattleMonSpecies
|
||||
ld de, wEnemyMonSpecies
|
||||
ld bc, W_ENEMYBATTSTATUS3 ; W_ENEMYBATTSTATUS3
|
||||
ld a, [W_ENEMYBATTSTATUS1] ; W_ENEMYBATTSTATUS1
|
||||
ld a, [H_WHOSETURN] ; $fff3
|
||||
and a
|
||||
jr nz, .asm_3bad1
|
||||
ld hl, wcfe5
|
||||
ld de, W_PLAYERMONID
|
||||
ld hl, wEnemyMonSpecies
|
||||
ld de, wBattleMonSpecies
|
||||
ld bc, W_PLAYERBATTSTATUS3 ; W_PLAYERBATTSTATUS3
|
||||
ld [wPlayerMoveListIndex], a ; wPlayerMoveListIndex
|
||||
ld a, [W_PLAYERBATTSTATUS1] ; W_PLAYERBATTSTATUS1
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@ PrintSafariZoneBattleText: ; 4277 (1:4277)
|
|||
ld hl, SafariZoneAngryText
|
||||
jr nz, .asm_429f
|
||||
push hl
|
||||
ld a, [wcfe5]
|
||||
ld a, [wEnemyMonSpecies]
|
||||
ld [wd0b5], a
|
||||
call GetMonHeader
|
||||
ld a, [W_MONHCATCHRATE]
|
||||
|
|
|
|||
|
|
@ -63,7 +63,7 @@ Func_5345: ; 5345
|
|||
ld a, b
|
||||
or c
|
||||
jr nz, .asm_537d
|
||||
ld hl, W_PARTYMONEND
|
||||
ld hl, wPartyMons - 1
|
||||
ld de, wTileMapBackup + 10
|
||||
ld bc, $0
|
||||
.asm_538d
|
||||
|
|
@ -191,7 +191,7 @@ Func_5345: ; 5345
|
|||
or c
|
||||
jr nz, .asm_5456
|
||||
ld de, wTileMapBackup
|
||||
ld hl, W_PARTYMON1_NUM ; W_PARTYMON1_NUM (aliases: W_PARTYMON1DATA)
|
||||
ld hl, wPartyMons
|
||||
ld c, $2
|
||||
.asm_546a
|
||||
ld a, [de]
|
||||
|
|
@ -206,7 +206,7 @@ Func_5345: ; 5345
|
|||
jr z, .asm_5489
|
||||
push hl
|
||||
push bc
|
||||
ld b, $0
|
||||
ld b, 0
|
||||
dec a
|
||||
ld c, a
|
||||
add hl, bc
|
||||
|
|
@ -216,11 +216,11 @@ Func_5345: ; 5345
|
|||
pop hl
|
||||
jr .asm_546a
|
||||
.asm_5489
|
||||
ld hl, W_PARTYMON6DATA + W_PARTYMON1_MOVE4PP - W_PARTYMON1DATA ; wd267
|
||||
ld hl, wPartyMons + $fc ; wd267
|
||||
dec c
|
||||
jr nz, .asm_546a
|
||||
ld de, wTileMapBackup + 200
|
||||
ld hl, W_WATERRATE ; wEnemyMon1Species
|
||||
ld hl, wEnemyMons
|
||||
ld c, $2
|
||||
.asm_5497
|
||||
ld a, [de]
|
||||
|
|
@ -245,7 +245,7 @@ Func_5345: ; 5345
|
|||
pop hl
|
||||
jr .asm_5497
|
||||
.asm_54b6
|
||||
ld hl, wd9a0
|
||||
ld hl, wEnemyMons + $fc
|
||||
dec c
|
||||
jr nz, .asm_5497
|
||||
ld a, $ac
|
||||
|
|
@ -370,7 +370,7 @@ TradeCenter_SelectMon:
|
|||
ld [hl], a
|
||||
ld a, [wCurrentMenuItem]
|
||||
ld b, a
|
||||
ld a, [W_NUMINPARTY]
|
||||
ld a, [wPartyCount]
|
||||
dec a
|
||||
cp b
|
||||
jr nc, .asm_55dc ; 0x55cd $d
|
||||
|
|
@ -386,7 +386,7 @@ TradeCenter_SelectMon:
|
|||
ld [wcc37], a
|
||||
ld a, $91
|
||||
ld [wMenuWatchedKeys], a
|
||||
ld a, [W_NUMINPARTY]
|
||||
ld a, [wPartyCount]
|
||||
ld [wMaxMenuItem], a
|
||||
ld a, $1
|
||||
ld [wTopMenuItemY], a
|
||||
|
|
@ -550,7 +550,7 @@ TradeCenter_SelectMon:
|
|||
jr z, .asm_574a ; 0x5758 $f0
|
||||
ld a, $7f
|
||||
ld [wTileMap + $141], a
|
||||
ld a, [W_NUMINPARTY]
|
||||
ld a, [wPartyCount]
|
||||
dec a
|
||||
ld [wCurrentMenuItem], a
|
||||
jp .asm_55dc
|
||||
|
|
@ -629,13 +629,13 @@ Func_57f2:
|
|||
ld c, $12
|
||||
call Func_5ab3
|
||||
ld hl, wTileMap + $5
|
||||
ld de, W_PLAYERNAME
|
||||
ld de, wPlayerName
|
||||
call PlaceString
|
||||
ld hl, wTileMap + $a5
|
||||
ld de, W_GRASSRATE
|
||||
call PlaceString
|
||||
ld hl, wTileMap + $16
|
||||
ld de, W_PARTYMON1
|
||||
ld de, wPartySpecies
|
||||
call Func_5827
|
||||
ld hl, wTileMap + $b6
|
||||
ld de, wEnemyPartyMons
|
||||
|
|
@ -678,7 +678,7 @@ TradeCenter_Trade:
|
|||
ld c, $12
|
||||
call Func_5ab3
|
||||
ld a, [wWhichTrade]
|
||||
ld hl, W_PARTYMON1
|
||||
ld hl, wPartySpecies
|
||||
ld c, a
|
||||
ld b, $0
|
||||
add hl, bc
|
||||
|
|
@ -740,12 +740,12 @@ TradeCenter_Trade:
|
|||
jp Func_5a18
|
||||
.asm_58fd
|
||||
ld a, [wWhichTrade]
|
||||
ld hl, W_PARTYMON1OT ; OT names of player
|
||||
ld hl, wPartyMonOT ; OT names of player
|
||||
call SkipFixedLengthTextEntries
|
||||
ld de, wTrainerScreenX
|
||||
ld bc, $000b
|
||||
call CopyData
|
||||
ld hl, W_PARTYMON1_NUM
|
||||
ld hl, wPartyMon1Species
|
||||
ld a, [wWhichTrade]
|
||||
ld bc, $002c
|
||||
call AddNTimes
|
||||
|
|
@ -756,7 +756,7 @@ TradeCenter_Trade:
|
|||
ld a, [hl]
|
||||
ld [wcd4d], a
|
||||
ld a, [wTrainerEngageDistance]
|
||||
ld hl, W_ENEMYMON1OT ; OT names of other player
|
||||
ld hl, wEnemyMonOT ; OT names of other player
|
||||
call SkipFixedLengthTextEntries
|
||||
ld de, wcd4e
|
||||
ld bc, $000b
|
||||
|
|
@ -773,7 +773,7 @@ TradeCenter_Trade:
|
|||
ld [wcd5a], a
|
||||
ld a, [wWhichTrade]
|
||||
ld [wWhichPokemon], a
|
||||
ld hl, W_PARTYMON1
|
||||
ld hl, wPartySpecies
|
||||
ld b, $0
|
||||
ld c, a
|
||||
add hl, bc
|
||||
|
|
@ -799,7 +799,7 @@ TradeCenter_Trade:
|
|||
ld bc, $002c
|
||||
call CopyData
|
||||
call AddEnemyMonToPlayerParty
|
||||
ld a, [W_NUMINPARTY]
|
||||
ld a, [wPartyCount]
|
||||
dec a
|
||||
ld [wWhichPokemon], a
|
||||
ld a, $1
|
||||
|
|
|
|||
|
|
@ -31,7 +31,7 @@ EvolveTradeMon: ; 17d7d (5:7d7d)
|
|||
ret nz
|
||||
|
||||
.ok
|
||||
ld a, [W_NUMINPARTY] ; W_NUMINPARTY
|
||||
ld a, [wPartyCount] ; wPartyCount
|
||||
dec a
|
||||
ld [wWhichPokemon], a ; wWhichPokemon
|
||||
ld a, $1
|
||||
|
|
|
|||
|
|
@ -17,7 +17,7 @@ Func_3ad1c: ; 3ad1c (e:6d1c)
|
|||
push hl
|
||||
push bc
|
||||
push de
|
||||
ld hl, W_NUMINPARTY ; W_NUMINPARTY
|
||||
ld hl, wPartyCount ; wPartyCount
|
||||
push hl
|
||||
asm_3ad2e: ; 3ad2e (e:6d2e)
|
||||
ld hl, wWhichPokemon ; wWhichPokemon
|
||||
|
|
@ -107,7 +107,7 @@ Func_3ad71: ; 3ad71 (e:6d71)
|
|||
ld a, [hl]
|
||||
ld [wHPBarMaxHP + 1], a
|
||||
ld a, [wWhichPokemon] ; wWhichPokemon
|
||||
ld hl, W_PARTYMON1NAME ; W_PARTYMON1NAME
|
||||
ld hl, wPartyMonNicks ; wPartyMonNicks
|
||||
call GetPartyMonName
|
||||
call CopyStringToCF4B
|
||||
ld hl, IsEvolvingText
|
||||
|
|
@ -170,7 +170,7 @@ Func_3ad71: ; 3ad71 (e:6d71)
|
|||
ld b, $1
|
||||
call CalcStats
|
||||
ld a, [wWhichPokemon] ; wWhichPokemon
|
||||
ld hl, W_PARTYMON1_NUM ; W_PARTYMON1_NUM (aliases: W_PARTYMON1DATA)
|
||||
ld hl, wPartyMon1Species ; wPartyMon1Species (aliases: wPartyMon1)
|
||||
ld bc, $2c
|
||||
call AddNTimes
|
||||
ld e, l
|
||||
|
|
@ -275,7 +275,7 @@ Func_3aef7: ; 3aef7 (e:6ef7)
|
|||
jr nz, .asm_3af0e
|
||||
ld a, [wWhichPokemon] ; wWhichPokemon
|
||||
ld bc, $b
|
||||
ld hl, W_PARTYMON1NAME ; W_PARTYMON1NAME
|
||||
ld hl, wPartyMonNicks ; wPartyMonNicks
|
||||
call AddNTimes
|
||||
push hl
|
||||
call GetName
|
||||
|
|
@ -344,7 +344,7 @@ Func_3af5b: ; 3af5b (e:6f5b)
|
|||
ld a, [wcc49]
|
||||
and a
|
||||
jr nz, .asm_3af96
|
||||
ld hl, W_PARTYMON1_MOVE1 ; W_PARTYMON1_MOVE1
|
||||
ld hl, wPartyMon1Moves ; wPartyMon1Moves
|
||||
ld a, [wWhichPokemon] ; wWhichPokemon
|
||||
ld bc, $2c
|
||||
call AddNTimes
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@ _GivePokemon: ; 4fda5 (13:7da5)
|
|||
call EnableAutoTextBoxDrawing
|
||||
xor a
|
||||
ld [wccd3], a
|
||||
ld a, [W_NUMINPARTY] ; W_NUMINPARTY
|
||||
ld a, [wPartyCount] ; wPartyCount
|
||||
cp $6
|
||||
jr c, .asm_4fe01
|
||||
ld a, [W_NUMINBOX] ; wda80
|
||||
|
|
@ -11,7 +11,7 @@ _GivePokemon: ; 4fda5 (13:7da5)
|
|||
xor a
|
||||
ld [W_ENEMYBATTSTATUS3], a ; W_ENEMYBATTSTATUS3
|
||||
ld a, [wcf91]
|
||||
ld [W_ENEMYMONID], a
|
||||
ld [wEnemyMonSpecies2], a
|
||||
callab Func_3eb01
|
||||
call SetPokedexOwnedFlag
|
||||
callab Func_e7a4
|
||||
|
|
|
|||
|
|
@ -36,7 +36,7 @@ AnimateHallOfFame: ; 701a0 (1c:41a0)
|
|||
ld c, BANK(Music_HallOfFame)
|
||||
ld a, MUSIC_HALL_OF_FAME
|
||||
call PlayMusic
|
||||
ld hl, W_PARTYMON1 ; W_PARTYMON1
|
||||
ld hl, wPartySpecies
|
||||
ld c, $ff
|
||||
.asm_701fb
|
||||
ld a, [hli]
|
||||
|
|
@ -48,7 +48,7 @@ AnimateHallOfFame: ; 701a0 (1c:41a0)
|
|||
ld [wWhichTrade], a ; wWhichTrade
|
||||
ld a, c
|
||||
ld [wTrainerEngageDistance], a
|
||||
ld hl, W_PARTYMON1_LEVEL ; W_PARTYMON1_LEVEL
|
||||
ld hl, wPartyMon1Level ; wPartyMon1Level
|
||||
ld bc, $2c
|
||||
call AddNTimes
|
||||
ld a, [hl]
|
||||
|
|
@ -105,7 +105,7 @@ Func_70278: ; 70278 (1c:4278)
|
|||
ld a, [wWhichTrade] ; wWhichTrade
|
||||
ld [wcf91], a
|
||||
ld [wd0b5], a
|
||||
ld [wcfd9], a
|
||||
ld [wBattleMonSpecies2], a
|
||||
ld [wcf1d], a
|
||||
ld a, [wTrainerScreenY]
|
||||
and a
|
||||
|
|
@ -152,7 +152,7 @@ Func_70278: ; 70278 (1c:4278)
|
|||
|
||||
Func_702e1: ; 702e1 (1c:42e1)
|
||||
ld a, [wTrainerEngageDistance]
|
||||
ld hl, W_PARTYMON1NAME ; W_PARTYMON1NAME
|
||||
ld hl, wPartyMonNicks ; wPartyMonNicks
|
||||
call GetPartyMonName
|
||||
call Func_702f0
|
||||
jp Func_70404
|
||||
|
|
@ -232,7 +232,7 @@ Func_70377: ; 70377 (1c:4377)
|
|||
call TextBoxBorder
|
||||
FuncCoord 7, 2
|
||||
ld hl, Coord
|
||||
ld de, W_PLAYERNAME ; wd158
|
||||
ld de, wPlayerName ; wd158
|
||||
call PlaceString
|
||||
FuncCoord 1, 6
|
||||
ld hl, Coord
|
||||
|
|
|
|||
|
|
@ -103,7 +103,7 @@ Func_71c07: ; 71c07 (1c:5c07)
|
|||
ld a,$2
|
||||
jr nz,.asm_c4bc2 ; 0x71c26 $75
|
||||
ld a,[wWhichPokemon]
|
||||
ld hl,W_PARTYMON1_LEVEL
|
||||
ld hl,wPartyMon1Level
|
||||
ld bc,$002c
|
||||
call AddNTimes
|
||||
ld a,[hl]
|
||||
|
|
@ -170,7 +170,7 @@ Func_71cc1: ; 71cc1 (1c:5cc1)
|
|||
ld [hli], a
|
||||
ld a, [wcd34]
|
||||
ld [hl], a
|
||||
ld hl, W_PARTYMON1OT ; wd273
|
||||
ld hl, wPartyMonOT ; wd273
|
||||
ld bc, $b
|
||||
ld a, [wWhichPokemon] ; wWhichPokemon
|
||||
call AddNTimes
|
||||
|
|
@ -182,7 +182,7 @@ Func_71cc1: ; 71cc1 (1c:5cc1)
|
|||
call Func_71d11
|
||||
ld de, W_GRASSRATE ; W_GRASSRATE
|
||||
call Func_71d11
|
||||
ld hl, W_PARTYMON1_OTID ; W_PARTYMON1_OTID
|
||||
ld hl, wPartyMon1OTID ; wPartyMon1OTID
|
||||
ld bc, $2c
|
||||
ld a, [wWhichPokemon] ; wWhichPokemon
|
||||
call AddNTimes
|
||||
|
|
@ -203,19 +203,19 @@ Func_71d11: ; 71d11 (1c:5d11)
|
|||
ret
|
||||
|
||||
Func_71d19: ; 71d19 (1c:5d19)
|
||||
ld hl, W_PARTYMON1NAME ; W_PARTYMON1NAME
|
||||
ld hl, wPartyMonNicks ; wPartyMonNicks
|
||||
ld bc, $b
|
||||
call Func_71d4f
|
||||
ld hl, wcd29
|
||||
ld bc, $b
|
||||
call CopyData
|
||||
ld hl, W_PARTYMON1OT ; wd273
|
||||
ld hl, wPartyMonOT ; wd273
|
||||
ld bc, $b
|
||||
call Func_71d4f
|
||||
ld hl, String_71d59 ; $5d59
|
||||
ld bc, $b
|
||||
call CopyData
|
||||
ld hl, W_PARTYMON1_OTID ; W_PARTYMON1_OTID
|
||||
ld hl, wPartyMon1OTID ; wPartyMon1OTID
|
||||
ld bc, $2c
|
||||
call Func_71d4f
|
||||
ld hl, wcd59
|
||||
|
|
@ -223,7 +223,7 @@ Func_71d19: ; 71d19 (1c:5d19)
|
|||
jp CopyData
|
||||
|
||||
Func_71d4f: ; 71d4f (1c:5d4f)
|
||||
ld a, [W_NUMINPARTY] ; W_NUMINPARTY
|
||||
ld a, [wPartyCount] ; wPartyCount
|
||||
dec a
|
||||
call AddNTimes
|
||||
ld e, l
|
||||
|
|
|
|||
|
|
@ -109,7 +109,7 @@ ItemUseBall: ; d687 (3:5687)
|
|||
ld a,[W_BATTLETYPE]
|
||||
dec a
|
||||
jr z,.UseBall
|
||||
ld a,[W_NUMINPARTY] ;is Party full?
|
||||
ld a,[wPartyCount] ;is Party full?
|
||||
cp a,6
|
||||
jr nz,.UseBall
|
||||
ld a,[W_NUMINBOX] ;is Box full?
|
||||
|
|
@ -141,7 +141,7 @@ ItemUseBall: ; d687 (3:5687)
|
|||
jr nz,.notOldManBattle
|
||||
.oldManBattle
|
||||
ld hl,W_GRASSRATE
|
||||
ld de,W_PLAYERNAME
|
||||
ld de,wPlayerName
|
||||
ld bc,11
|
||||
call CopyData ; save the player's name in the Wild Monster data (part of the Cinnabar Island Missingno glitch)
|
||||
jp .BallSuccess ;$578b
|
||||
|
|
@ -149,7 +149,7 @@ ItemUseBall: ; d687 (3:5687)
|
|||
ld a,[W_CURMAP]
|
||||
cp a,POKEMONTOWER_6
|
||||
jr nz,.loop
|
||||
ld a,[W_ENEMYMONID]
|
||||
ld a,[wEnemyMonSpecies2]
|
||||
cp a,MAROWAK
|
||||
ld b,$10
|
||||
jp z,.next12
|
||||
|
|
@ -178,7 +178,7 @@ ItemUseBall: ; d687 (3:5687)
|
|||
; Frozen/Asleep pokemon are relatively even easier to catch
|
||||
; for Frozen/Asleep pokemon, any random number from 0-24 ensures a catch.
|
||||
; for the others, a random number from 0-11 ensures a catch.
|
||||
ld a,[W_ENEMYMONSTATUS] ;status ailments
|
||||
ld a,[wEnemyMonStatus] ;status ailments
|
||||
and a
|
||||
jr z,.noAilments
|
||||
and a, 1 << FRZ | SLP ;is frozen and/or asleep?
|
||||
|
|
@ -194,7 +194,7 @@ ItemUseBall: ; d687 (3:5687)
|
|||
push bc ;save RANDOM number
|
||||
xor a
|
||||
ld [H_MULTIPLICAND],a
|
||||
ld hl,W_ENEMYMONMAXHP
|
||||
ld hl,wEnemyMonMaxHP
|
||||
ld a,[hli]
|
||||
ld [H_MULTIPLICAND + 1],a
|
||||
ld a,[hl]
|
||||
|
|
@ -211,7 +211,7 @@ ItemUseBall: ; d687 (3:5687)
|
|||
ld [H_DIVISOR],a
|
||||
ld b,4 ; number of bytes in dividend
|
||||
call Divide
|
||||
ld hl,W_ENEMYMONCURHP
|
||||
ld hl,wEnemyMonHP
|
||||
ld a,[hli]
|
||||
ld b,a
|
||||
ld a,[hl]
|
||||
|
|
@ -287,7 +287,7 @@ ItemUseBall: ; d687 (3:5687)
|
|||
ld [H_DIVISOR],a
|
||||
ld b,4
|
||||
call Divide
|
||||
ld a,[W_ENEMYMONSTATUS] ;status ailments
|
||||
ld a,[wEnemyMonStatus] ;status ailments
|
||||
and a
|
||||
jr z,.next13
|
||||
and a, 1 << FRZ | SLP
|
||||
|
|
@ -348,7 +348,7 @@ ItemUseBall: ; d687 (3:5687)
|
|||
cp a,$63
|
||||
ld hl,ItemUseBallText04
|
||||
jp z,.printText0
|
||||
ld hl,W_ENEMYMONCURHP ;current HP
|
||||
ld hl,wEnemyMonHP ;current HP
|
||||
ld a,[hli]
|
||||
push af
|
||||
ld a,[hli]
|
||||
|
|
@ -361,21 +361,21 @@ ItemUseBall: ; d687 (3:5687)
|
|||
bit 3,[hl]
|
||||
jr z,.next15
|
||||
ld a,$4c
|
||||
ld [W_ENEMYMONID],a
|
||||
ld [wEnemyMonSpecies2],a
|
||||
jr .next16
|
||||
.next15 ;$5871
|
||||
set 3,[hl]
|
||||
ld hl,wcceb
|
||||
ld a,[W_ENEMYMONATKDEFIV]
|
||||
ld a,[wEnemyMonDVs]
|
||||
ld [hli],a
|
||||
ld a,[W_ENEMYMONSPDSPCIV]
|
||||
ld a,[wEnemyMonDVs + 1]
|
||||
ld [hl],a
|
||||
.next16 ;$587e
|
||||
ld a,[wcf91]
|
||||
push af
|
||||
ld a,[W_ENEMYMONID]
|
||||
ld a,[wEnemyMonSpecies2]
|
||||
ld [wcf91],a
|
||||
ld a,[W_ENEMYMONLEVEL]
|
||||
ld a,[wEnemyMonLevel]
|
||||
ld [W_CURENEMYLVL],a
|
||||
callab Func_3eb01
|
||||
pop af
|
||||
|
|
@ -388,7 +388,7 @@ ItemUseBall: ; d687 (3:5687)
|
|||
ld [hld],a
|
||||
pop af
|
||||
ld [hl],a
|
||||
ld a,[wcfe5] ;enemy
|
||||
ld a,[wEnemyMonSpecies] ;enemy
|
||||
ld [wd11c],a
|
||||
ld [wcf91],a
|
||||
ld [wd11e],a
|
||||
|
|
@ -420,12 +420,12 @@ ItemUseBall: ; d687 (3:5687)
|
|||
ld hl,ItemUseBallText06
|
||||
call PrintText
|
||||
call ClearSprites
|
||||
ld a,[wcfe5] ;caught mon_ID
|
||||
ld a,[wEnemyMonSpecies] ;caught mon_ID
|
||||
ld [wd11e],a
|
||||
ld a,$3d
|
||||
call Predef
|
||||
.checkParty ;$58f4
|
||||
ld a,[W_NUMINPARTY]
|
||||
ld a,[wPartyCount]
|
||||
cp a,6 ;is party full?
|
||||
jr z,.sendToBox
|
||||
xor a
|
||||
|
|
@ -677,7 +677,7 @@ ItemUseVitamin: ; dab4 (3:5ab4)
|
|||
jp nz,ItemUseNotTime
|
||||
|
||||
ItemUseMedicine: ; dabb (3:5abb)
|
||||
ld a,[W_NUMINPARTY]
|
||||
ld a,[wPartyCount]
|
||||
and a
|
||||
jp z,.emptyParty
|
||||
ld a,[wWhichPokemon]
|
||||
|
|
@ -707,8 +707,8 @@ ItemUseMedicine: ; dabb (3:5abb)
|
|||
call DisplayPartyMenu
|
||||
.getPartyMonDataAddress
|
||||
jp c,.canceledItemUse
|
||||
ld hl,W_PARTYMON1DATA
|
||||
ld bc,44
|
||||
ld hl,wPartyMons
|
||||
ld bc,wPartyMon2 - wPartyMon1
|
||||
ld a,[wWhichPokemon]
|
||||
call AddNTimes
|
||||
ld a,[wWhichPokemon]
|
||||
|
|
@ -773,14 +773,14 @@ ItemUseMedicine: ; dabb (3:5abb)
|
|||
jp nz,.doneHealing
|
||||
; if it is active in battle
|
||||
xor a
|
||||
ld [W_PLAYERMONSTATUS],a ; remove the status ailment in the in-battle pokemon data
|
||||
ld [wBattleMonStatus],a ; remove the status ailment in the in-battle pokemon data
|
||||
push hl
|
||||
ld hl,W_PLAYERBATTSTATUS3
|
||||
res 0,[hl] ; heal Toxic status
|
||||
pop hl
|
||||
ld bc,30
|
||||
add hl,bc ; hl now points to party stats
|
||||
ld de,W_PLAYERMONMAXHP
|
||||
ld de,wBattleMonMaxHP
|
||||
ld bc,10
|
||||
call CopyData ; copy party stats to in-battle stat data
|
||||
ld a,$28
|
||||
|
|
@ -821,7 +821,7 @@ ItemUseMedicine: ; dabb (3:5abb)
|
|||
jr z,.next
|
||||
ld a,[wcf06]
|
||||
ld c,a
|
||||
ld hl,W_PLAYERMONSALIVEFLAGS
|
||||
ld hl,wPartyAliveFlags
|
||||
ld b,$01
|
||||
ld a,$10
|
||||
call Predef
|
||||
|
|
@ -890,9 +890,9 @@ ItemUseMedicine: ; dabb (3:5abb)
|
|||
push af
|
||||
ld a,[hl]
|
||||
push af
|
||||
ld hl,W_PARTYMON1_MAXHP
|
||||
ld hl,wPartyMon1MaxHP
|
||||
ld a,[wWhichPokemon]
|
||||
ld bc,44
|
||||
ld bc,wPartyMon2 - wPartyMon1
|
||||
call AddNTimes
|
||||
ld a,[hli]
|
||||
ld [wHPBarMaxHP + 1],a
|
||||
|
|
@ -904,7 +904,7 @@ ItemUseMedicine: ; dabb (3:5abb)
|
|||
ld [H_DIVISOR],a
|
||||
ld b,2 ; number of bytes
|
||||
call Divide ; get 1/5 of max HP of pokemon that used Softboiled
|
||||
ld bc,-33
|
||||
ld bc,wPartyMon1HP - wPartyMon1MaxHP
|
||||
add hl,bc ; hl now points to LSB of current HP of pokemon that used Softboiled
|
||||
; subtract 1/5 of max HP from current HP of pokemon that used Softboiled
|
||||
ld a,[H_QUOTIENT + 3]
|
||||
|
|
@ -1045,14 +1045,14 @@ ItemUseMedicine: ; dabb (3:5abb)
|
|||
jr nz,.calculateHPBarCoords
|
||||
; copy party HP to in-battle HP
|
||||
ld a,[hli]
|
||||
ld [W_PLAYERMONCURHP],a
|
||||
ld [wBattleMonHP],a
|
||||
ld a,[hld]
|
||||
ld [W_PLAYERMONCURHP + 1],a
|
||||
ld [wBattleMonHP + 1],a
|
||||
ld a,[wcf91]
|
||||
cp a,FULL_RESTORE
|
||||
jr nz,.calculateHPBarCoords
|
||||
xor a
|
||||
ld [W_PLAYERMONSTATUS],a ; remove the status ailment in the in-battle pokemon data
|
||||
ld [wBattleMonStatus],a ; remove the status ailment in the in-battle pokemon data
|
||||
.calculateHPBarCoords
|
||||
ld hl,wOAMBuffer + $90
|
||||
ld bc,2 * 20
|
||||
|
|
@ -1143,7 +1143,7 @@ ItemUseMedicine: ; dabb (3:5abb)
|
|||
call GetMonHeader
|
||||
push de
|
||||
ld a,d
|
||||
ld hl,W_PARTYMON1NAME
|
||||
ld hl,wPartyMonNicks
|
||||
call GetPartyMonName
|
||||
pop de
|
||||
pop hl
|
||||
|
|
@ -1634,20 +1634,20 @@ ItemUsePokeflute: ; e140 (3:6140)
|
|||
xor a
|
||||
ld [wWhichTrade],a ; initialize variable that indicates if any pokemon were woken up to zero
|
||||
ld b,~SLP & $FF
|
||||
ld hl,W_PARTYMON1_STATUS
|
||||
ld hl,wPartyMon1Status
|
||||
call WakeUpEntireParty
|
||||
ld a,[W_ISINBATTLE]
|
||||
dec a ; is it a trainer battle?
|
||||
jr z,.skipWakingUpEnemyParty
|
||||
; if it's a trainer battle
|
||||
ld hl,wd8a8 ; enemy party pokemon 1 status
|
||||
ld hl,wEnemyMon1Status
|
||||
call WakeUpEntireParty
|
||||
.skipWakingUpEnemyParty
|
||||
ld hl,W_PLAYERMONSTATUS
|
||||
ld hl,wBattleMonStatus
|
||||
ld a,[hl]
|
||||
and b ; remove Sleep status
|
||||
ld [hl],a
|
||||
ld hl,W_ENEMYMONSTATUS
|
||||
ld hl,wEnemyMonStatus
|
||||
ld a,[hl]
|
||||
and b ; remove Sleep status
|
||||
ld [hl],a
|
||||
|
|
@ -1916,7 +1916,7 @@ ItemUsePPRestore: ; e31e (3:631e)
|
|||
ld a,0
|
||||
ld [wPlayerMoveListIndex],a
|
||||
jr nz,.chooseMon
|
||||
ld hl,W_PARTYMON1_MOVE1
|
||||
ld hl,wPartyMon1Moves
|
||||
ld bc,44
|
||||
call GetSelectedMoveOffset
|
||||
push hl
|
||||
|
|
@ -1958,10 +1958,10 @@ ItemUsePPRestore: ; e31e (3:631e)
|
|||
ld a,[wPlayerMonNumber]
|
||||
cp b ; is the pokemon whose PP was restored active in battle?
|
||||
jr nz,.skipUpdatingInBattleData
|
||||
ld hl,W_PARTYMON1_MOVE1PP
|
||||
ld hl,wPartyMon1PP
|
||||
ld bc,44
|
||||
call AddNTimes
|
||||
ld de,W_PLAYERMONPP
|
||||
ld de,wBattleMonPP
|
||||
ld bc,4
|
||||
call CopyData ; copy party data to in-battle data
|
||||
.skipUpdatingInBattleData
|
||||
|
|
@ -1980,7 +1980,7 @@ ItemUsePPRestore: ; e31e (3:631e)
|
|||
xor a
|
||||
ld [wcc49],a ; party pokemon
|
||||
call GetMaxPP
|
||||
ld hl,W_PARTYMON1_MOVE1
|
||||
ld hl,wPartyMon1Moves
|
||||
ld bc,44
|
||||
call GetSelectedMoveOffset
|
||||
ld bc,21
|
||||
|
|
@ -2030,7 +2030,7 @@ ItemUsePPRestore: ; e31e (3:631e)
|
|||
; loop through each move and restore PP
|
||||
.elixirLoop
|
||||
push bc
|
||||
ld hl,W_PARTYMON1_MOVE1
|
||||
ld hl,wPartyMon1Moves
|
||||
ld bc,44
|
||||
call GetSelectedMoveOffset
|
||||
ld a,[hl]
|
||||
|
|
@ -2156,7 +2156,7 @@ ItemUseTMHM: ; e479 (3:6479)
|
|||
call Predef ; check if the pokemon can learn the move
|
||||
push bc
|
||||
ld a,[wWhichPokemon]
|
||||
ld hl,W_PARTYMON1NAME
|
||||
ld hl,wPartyMonNicks
|
||||
call GetPartyMonName
|
||||
pop bc
|
||||
ld a,c
|
||||
|
|
@ -2315,7 +2315,7 @@ GotOffBicycleText: ; e5fc (3:65fc)
|
|||
; 1: using a PP Up
|
||||
; [wCurrentMenuItem] = index of move (when using a PP Up)
|
||||
RestoreBonusPP: ; e606 (3:6606)
|
||||
ld hl,W_PARTYMON1_MOVE1
|
||||
ld hl,wPartyMon1Moves
|
||||
ld bc,44
|
||||
ld a,[wWhichPokemon]
|
||||
call AddNTimes
|
||||
|
|
@ -2411,20 +2411,20 @@ AddBonusPP: ; e642 (3:6642)
|
|||
GetMaxPP: ; e677 (3:6677)
|
||||
ld a,[wcc49]
|
||||
and a
|
||||
ld hl,W_PARTYMON1_MOVE1
|
||||
ld bc,44
|
||||
ld hl,wPartyMon1Moves
|
||||
ld bc,wPartyMon2 - wPartyMon1
|
||||
jr z,.sourceWithMultipleMon
|
||||
ld hl,wd8ac ; enemy party
|
||||
ld hl,wEnemyMon1Moves
|
||||
dec a
|
||||
jr z,.sourceWithMultipleMon
|
||||
ld hl,wda9e ; current box
|
||||
ld bc,33
|
||||
ld hl,wBoxMon1Moves
|
||||
ld bc,wBoxMon2 - wBoxMon1
|
||||
dec a
|
||||
jr z,.sourceWithMultipleMon
|
||||
ld hl,wda67 ; daycare
|
||||
ld hl,wDayCareMonMoves
|
||||
dec a
|
||||
jr z,.sourceWithOneMon
|
||||
ld hl,W_PLAYERMONMOVES ; player's in-battle pokemon
|
||||
ld hl,wBattleMonMoves ; player's in-battle pokemon
|
||||
.sourceWithOneMon
|
||||
call GetSelectedMoveOffset2
|
||||
jr .next
|
||||
|
|
@ -2607,7 +2607,7 @@ Func_e7a4: ; e7a4 (3:67a4)
|
|||
cp $ff
|
||||
jr nz, .asm_e7b1
|
||||
call GetMonHeader
|
||||
ld hl, W_BOXMON1OT
|
||||
ld hl, wBoxMonOT
|
||||
ld bc, $b
|
||||
ld a, [W_NUMINBOX] ; wda80
|
||||
dec a
|
||||
|
|
@ -2637,14 +2637,14 @@ Func_e7a4: ; e7a4 (3:67a4)
|
|||
dec b
|
||||
jr nz, .asm_e7db
|
||||
.asm_e7ee
|
||||
ld hl, W_PLAYERNAME ; wd158
|
||||
ld de, W_BOXMON1OT
|
||||
ld hl, wPlayerName ; wd158
|
||||
ld de, wBoxMonOT
|
||||
ld bc, $b
|
||||
call CopyData
|
||||
ld a, [W_NUMINBOX] ; wda80
|
||||
dec a
|
||||
jr z, .asm_e82a
|
||||
ld hl, W_BOXMON1NAME
|
||||
ld hl, wBoxMonNicks
|
||||
ld bc, $b
|
||||
dec a
|
||||
call AddNTimes
|
||||
|
|
@ -2671,7 +2671,7 @@ Func_e7a4: ; e7a4 (3:67a4)
|
|||
dec b
|
||||
jr nz, .asm_e817
|
||||
.asm_e82a
|
||||
ld hl, W_BOXMON1NAME
|
||||
ld hl, wBoxMonNicks
|
||||
ld a, $2
|
||||
ld [wd07d], a
|
||||
ld a, $4e
|
||||
|
|
@ -2679,12 +2679,12 @@ Func_e7a4: ; e7a4 (3:67a4)
|
|||
ld a, [W_NUMINBOX] ; wda80
|
||||
dec a
|
||||
jr z, .asm_e867
|
||||
ld hl, W_BOXMON1DATA
|
||||
ld bc, $21
|
||||
ld hl, wBoxMons
|
||||
ld bc, wBoxMon2 - wBoxMon1
|
||||
dec a
|
||||
call AddNTimes
|
||||
push hl
|
||||
ld bc, $21
|
||||
ld bc, wBoxMon2 - wBoxMon1
|
||||
add hl, bc
|
||||
ld d, h
|
||||
ld e, l
|
||||
|
|
@ -2695,7 +2695,7 @@ Func_e7a4: ; e7a4 (3:67a4)
|
|||
.asm_e854
|
||||
push bc
|
||||
push hl
|
||||
ld bc, $21
|
||||
ld bc, wBoxMon2 - wBoxMon1
|
||||
call CopyData
|
||||
pop hl
|
||||
ld d, h
|
||||
|
|
@ -2706,10 +2706,10 @@ Func_e7a4: ; e7a4 (3:67a4)
|
|||
dec b
|
||||
jr nz, .asm_e854
|
||||
.asm_e867
|
||||
ld a, [W_ENEMYMONLEVEL] ; W_ENEMYMONLEVEL
|
||||
ld [W_ENEMYMONNUMBER], a ; W_ENEMYMONNUMBER
|
||||
ld hl, wcfe5
|
||||
ld de, W_BOXMON1DATA
|
||||
ld a, [wEnemyMonLevel] ; wEnemyMonLevel
|
||||
ld [wEnemyMonBoxLevel], a
|
||||
ld hl, wEnemyMon
|
||||
ld de, wBoxMon1
|
||||
ld bc, $c
|
||||
call CopyData
|
||||
ld hl, wPlayerID ; wPlayerID
|
||||
|
|
@ -2740,13 +2740,13 @@ Func_e7a4: ; e7a4 (3:67a4)
|
|||
inc de
|
||||
dec b
|
||||
jr nz, .asm_e89f
|
||||
ld hl, W_ENEMYMONATKDEFIV
|
||||
ld hl, wEnemyMonDVs
|
||||
ld a, [hli]
|
||||
ld [de], a
|
||||
inc de
|
||||
ld a, [hli]
|
||||
ld [de], a
|
||||
ld hl, W_ENEMYMONPP ; wcffe
|
||||
ld hl, wEnemyMonPP ; wcffe
|
||||
ld b, $4
|
||||
.asm_e8b1
|
||||
ld a, [hli]
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
; checks if the mon in wWhichPokemon already knows the move in wd0e0
|
||||
CheckIfMoveIsKnown: ; 2fe18 (b:7e18)
|
||||
ld a, [wWhichPokemon]
|
||||
ld hl, W_PARTYMON1_MOVE1
|
||||
ld hl, wPartyMon1Moves
|
||||
ld bc, $2c
|
||||
call AddNTimes
|
||||
ld a, [wd0e0]
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
LearnMove: ; 6e43 (1:6e43)
|
||||
call SaveScreenTilesToBuffer1
|
||||
ld a, [wWhichPokemon] ; wWhichPokemon
|
||||
ld hl, W_PARTYMON1NAME ; W_PARTYMON1NAME
|
||||
ld hl, wPartyMonNicks ; wPartyMonNicks
|
||||
call GetPartyMonName
|
||||
ld hl, wcd6d
|
||||
ld de, wd036
|
||||
|
|
@ -9,7 +9,7 @@ LearnMove: ; 6e43 (1:6e43)
|
|||
call CopyData
|
||||
|
||||
DontAbandonLearning: ; 6e5b (1:6e5b)
|
||||
ld hl, W_PARTYMON1_MOVE1 ; W_PARTYMON1_MOVE1
|
||||
ld hl, wPartyMon1Moves ; wPartyMon1Moves
|
||||
ld bc, $2c
|
||||
ld a, [wWhichPokemon] ; wWhichPokemon
|
||||
call AddNTimes
|
||||
|
|
@ -63,12 +63,12 @@ DontAbandonLearning: ; 6e5b (1:6e5b)
|
|||
jp nz, PrintLearnedMove
|
||||
ld h, d
|
||||
ld l, e
|
||||
ld de, W_PLAYERMONMOVES
|
||||
ld de, wBattleMonMoves
|
||||
ld bc, $4
|
||||
call CopyData
|
||||
ld bc, $11
|
||||
add hl, bc
|
||||
ld de, W_PLAYERMONPP ; W_PLAYERMONPP
|
||||
ld de, wBattleMonPP ; wBattleMonPP
|
||||
ld bc, $4
|
||||
call CopyData
|
||||
jp PrintLearnedMove
|
||||
|
|
|
|||
|
|
@ -44,7 +44,7 @@ Func_213c8:: ; 213c8 (8:53c8)
|
|||
call PlaceString
|
||||
FuncCoord 2, 4
|
||||
ld hl, Coord
|
||||
ld de, W_PLAYERNAME ; wd158
|
||||
ld de, wPlayerName ; wd158
|
||||
call PlaceString
|
||||
ld l, c
|
||||
ld h, b
|
||||
|
|
@ -232,7 +232,7 @@ Func_21588: ; 21588 (8:5588)
|
|||
|
||||
Func_215ac: ; 215ac (8:55ac)
|
||||
BillsPCDeposit:
|
||||
ld a, [W_NUMINPARTY] ; W_NUMINPARTY
|
||||
ld a, [wPartyCount] ; wPartyCount
|
||||
dec a
|
||||
jr nz, .asm_215bb
|
||||
ld hl, CantDepositLastMonText
|
||||
|
|
@ -246,7 +246,7 @@ BillsPCDeposit:
|
|||
call PrintText
|
||||
jp BillsPCMenu
|
||||
.asm_215cb
|
||||
ld hl, W_NUMINPARTY ; W_NUMINPARTY
|
||||
ld hl, wPartyCount ; wPartyCount
|
||||
call Func_216be
|
||||
jp c, BillsPCMenu
|
||||
call Func_2174b
|
||||
|
|
@ -288,7 +288,7 @@ Func_21618: ; 21618 (8:5618)
|
|||
call PrintText
|
||||
jp Func_214e8
|
||||
.asm_21627
|
||||
ld a, [W_NUMINPARTY] ; W_NUMINPARTY
|
||||
ld a, [wPartyCount] ; wPartyCount
|
||||
cp $6
|
||||
jr nz, .asm_21637
|
||||
ld hl, CantTakeMonText ; $5811
|
||||
|
|
@ -301,7 +301,7 @@ Func_21618: ; 21618 (8:5618)
|
|||
call Func_2174b
|
||||
jp nc, Func_214e8
|
||||
ld a, [wWhichPokemon] ; wWhichPokemon
|
||||
ld hl, W_BOXMON1NAME
|
||||
ld hl, wBoxMonNicks
|
||||
call GetPartyMonName
|
||||
ld a, [wcf91]
|
||||
call GetCryData
|
||||
|
|
@ -372,21 +372,21 @@ BoxNoPCText: ; 21713 (8:5713)
|
|||
db "BOX No.@"
|
||||
|
||||
Func_2171b:: ; 2171b (8:571b)
|
||||
ld hl, W_PARTYMON1_MOVE1
|
||||
ld bc, $002c
|
||||
ld hl, wPartyMon1Moves
|
||||
ld bc, wPartyMon2 - wPartyMon1
|
||||
jr .asm_21729 ; 0x21721 $6
|
||||
ld hl, wda9e
|
||||
ld bc, $0021
|
||||
ld hl, wBoxMon1Moves
|
||||
ld bc, wBoxMon2 - wBoxMon1
|
||||
.asm_21729
|
||||
ld a, [wWhichPokemon]
|
||||
call AddNTimes
|
||||
ld b, $4
|
||||
ld b, NUM_MOVES
|
||||
.asm_21731
|
||||
ld a, [hli]
|
||||
push hl
|
||||
push bc
|
||||
ld hl, HMMoveArray ; $5745
|
||||
ld de, $0001
|
||||
ld de, 1
|
||||
call IsInArray
|
||||
pop bc
|
||||
pop hl
|
||||
|
|
|
|||
|
|
@ -36,7 +36,7 @@ DisplayDiploma: ; 566e2 (15:66e2)
|
|||
jr nz, .asm_56715 ; 0x56725 $ee
|
||||
FuncCoord 10, 4
|
||||
ld hl, Coord
|
||||
ld de, W_PLAYERNAME
|
||||
ld de, wPlayerName
|
||||
call PlaceString
|
||||
callba Func_44dd
|
||||
ld hl, wOAMBuffer + $01
|
||||
|
|
@ -68,7 +68,7 @@ DisplayDiploma: ; 566e2 (15:66e2)
|
|||
jp GBPalNormal
|
||||
|
||||
Func_56777: ; 56777 (15:6777)
|
||||
ld hl, W_PLAYERNAME
|
||||
ld hl, wPlayerName
|
||||
ld bc, $ff00
|
||||
.asm_5677d
|
||||
ld a, [hli]
|
||||
|
|
|
|||
|
|
@ -83,7 +83,7 @@ Func_76610: ; 76610 (1d:6610)
|
|||
ld [wWhichTrade], a
|
||||
ld [wcf91], a
|
||||
ld [wd0b5], a
|
||||
ld [wcfd9], a
|
||||
ld [wBattleMonSpecies2], a
|
||||
ld [wcf1d], a
|
||||
ld a, [hli]
|
||||
ld [wTrainerFacingDirection], a
|
||||
|
|
|
|||
|
|
@ -355,7 +355,7 @@ ContinueGame: ; 5db5 (1:5db5)
|
|||
call PlaceString
|
||||
FuncCoord 12, 9
|
||||
ld hl, Coord
|
||||
ld de, W_PLAYERNAME ; wd158
|
||||
ld de, wPlayerName ; wd158
|
||||
call PlaceString
|
||||
FuncCoord 17, 11
|
||||
ld hl, Coord
|
||||
|
|
@ -384,7 +384,7 @@ PrintSaveScreenText: ; 5def (1:5def)
|
|||
ld de, SaveScreenInfoText
|
||||
call PlaceString
|
||||
ld hl, wTileMap + $34
|
||||
ld de, W_PLAYERNAME
|
||||
ld de, wPlayerName
|
||||
call PlaceString
|
||||
ld hl, wTileMap + $61
|
||||
call Func_5e2f
|
||||
|
|
|
|||
|
|
@ -67,7 +67,7 @@ Func_655c: ; 655c (1:655c)
|
|||
ld a, [wcf4b]
|
||||
cp $50
|
||||
jr z, .asm_6594
|
||||
ld hl, W_PARTYMON1NAME ; W_PARTYMON1NAME
|
||||
ld hl, wPartyMonNicks ; wPartyMonNicks
|
||||
ld bc, $b
|
||||
ld a, [wWhichPokemon] ; wWhichPokemon
|
||||
call AddNTimes
|
||||
|
|
|
|||
|
|
@ -32,7 +32,7 @@ RedrawPartyMenu_: ; 12ce3 (4:6ce3)
|
|||
callba SendBlkPacket_PartyMenu ; loads some data to wcf2e
|
||||
FuncCoord 3,0
|
||||
ld hl,Coord
|
||||
ld de,W_PARTYMON1
|
||||
ld de,wPartySpecies
|
||||
xor a
|
||||
ld c,a
|
||||
ld [$FF8C],a ; loop counter
|
||||
|
|
@ -46,7 +46,7 @@ RedrawPartyMenu_: ; 12ce3 (4:6ce3)
|
|||
push hl
|
||||
ld a,c
|
||||
push hl
|
||||
ld hl,W_PARTYMON1NAME
|
||||
ld hl,wPartyMonNicks
|
||||
call GetPartyMonName
|
||||
pop hl
|
||||
call PlaceString ; print the pokemon's name
|
||||
|
|
@ -231,7 +231,7 @@ RedrawPartyMenu_: ; 12ce3 (4:6ce3)
|
|||
ld l,a
|
||||
push hl
|
||||
ld a,[wcf06]
|
||||
ld hl,W_PARTYMON1NAME
|
||||
ld hl,wPartyMonNicks
|
||||
call GetPartyMonName
|
||||
pop hl
|
||||
call PrintText
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@ StartMenu_Pokedex: ; 13095 (4:7095)
|
|||
jp RedisplayStartMenu
|
||||
|
||||
StartMenu_Pokemon: ; 130a9 (4:70a9)
|
||||
ld a,[W_NUMINPARTY]
|
||||
ld a,[wPartyCount]
|
||||
and a
|
||||
jp z,RedisplayStartMenu
|
||||
xor a
|
||||
|
|
@ -86,7 +86,7 @@ StartMenu_Pokemon: ; 130a9 (4:70a9)
|
|||
add hl,bc
|
||||
jp .choseOutOfBattleMove
|
||||
.choseSwitch
|
||||
ld a,[W_NUMINPARTY]
|
||||
ld a,[wPartyCount]
|
||||
cp a,2 ; is there more than one pokemon in the party?
|
||||
jp c,StartMenu_Pokemon ; if not, no switching
|
||||
call SwitchPartyMon_Stats
|
||||
|
|
@ -107,7 +107,7 @@ StartMenu_Pokemon: ; 130a9 (4:70a9)
|
|||
.choseOutOfBattleMove
|
||||
push hl
|
||||
ld a,[wWhichPokemon]
|
||||
ld hl,W_PARTYMON1NAME
|
||||
ld hl,wPartyMonNicks
|
||||
call GetPartyMonName
|
||||
pop hl
|
||||
ld a,[hl]
|
||||
|
|
@ -138,7 +138,7 @@ StartMenu_Pokemon: ; 130a9 (4:70a9)
|
|||
call CheckIfInOutsideMap
|
||||
jr z,.canFly
|
||||
ld a,[wWhichPokemon]
|
||||
ld hl,W_PARTYMON1NAME
|
||||
ld hl,wPartyMonNicks
|
||||
call GetPartyMonName
|
||||
ld hl,.cannotFlyHereText
|
||||
call PrintText
|
||||
|
|
@ -211,7 +211,7 @@ StartMenu_Pokemon: ; 130a9 (4:70a9)
|
|||
call CheckIfInOutsideMap
|
||||
jr z,.canTeleport
|
||||
ld a,[wWhichPokemon]
|
||||
ld hl,W_PARTYMON1NAME
|
||||
ld hl,wPartyMonNicks
|
||||
call GetPartyMonName
|
||||
ld hl,.cannotUseTeleportNowText
|
||||
call PrintText
|
||||
|
|
@ -239,9 +239,9 @@ StartMenu_Pokemon: ; 130a9 (4:70a9)
|
|||
TX_FAR _CannotFlyHereText
|
||||
db "@"
|
||||
.softboiled
|
||||
ld hl,W_PARTYMON1_MAXHP
|
||||
ld hl,wPartyMon1MaxHP
|
||||
ld a,[wWhichPokemon]
|
||||
ld bc,44
|
||||
ld bc,wPartyMon2 - wPartyMon1
|
||||
call AddNTimes
|
||||
ld a,[hli]
|
||||
ld [H_DIVIDEND],a
|
||||
|
|
@ -251,7 +251,7 @@ StartMenu_Pokemon: ; 130a9 (4:70a9)
|
|||
ld [H_DIVISOR],a
|
||||
ld b,2 ; number of bytes
|
||||
call Divide
|
||||
ld bc,-33
|
||||
ld bc,wPartyMon1HP - wPartyMon1MaxHP
|
||||
add hl,bc
|
||||
ld a,[hld]
|
||||
ld b,a
|
||||
|
|
@ -615,7 +615,7 @@ DrawTrainerInfo: ; 1349a (4:749a)
|
|||
call PlaceString
|
||||
FuncCoord 7,2
|
||||
ld hl,Coord
|
||||
ld de,W_PLAYERNAME
|
||||
ld de,wPlayerName
|
||||
call PlaceString
|
||||
FuncCoord 8,4
|
||||
ld hl,Coord
|
||||
|
|
@ -788,7 +788,7 @@ SwitchPartyMon_Stats: ; 13653 (4:7653)
|
|||
ld [wcc35], a
|
||||
push hl
|
||||
push de
|
||||
ld hl, W_PARTYMON1 ; W_PARTYMON1
|
||||
ld hl, wPartySpecies
|
||||
ld d, h
|
||||
ld e, l
|
||||
ld a, [wCurrentMenuItem] ; wCurrentMenuItem
|
||||
|
|
@ -809,15 +809,15 @@ SwitchPartyMon_Stats: ; 13653 (4:7653)
|
|||
ld [hl], a
|
||||
ld a, [H_DIVIDEND] ; $ff95 (aliases: H_PRODUCT, H_PASTLEADINGZEROES, H_QUOTIENT)
|
||||
ld [de], a
|
||||
ld hl, W_PARTYMON1_NUM ; W_PARTYMON1_NUM (aliases: W_PARTYMON1DATA)
|
||||
ld bc, $2c
|
||||
ld hl, wPartyMons
|
||||
ld bc, wPartyMon2 - wPartyMon1
|
||||
ld a, [wCurrentMenuItem] ; wCurrentMenuItem
|
||||
call AddNTimes
|
||||
push hl
|
||||
ld de, wcc97
|
||||
ld bc, $2c
|
||||
call CopyData
|
||||
ld hl, W_PARTYMON1_NUM ; W_PARTYMON1_NUM (aliases: W_PARTYMON1DATA)
|
||||
ld hl, wPartyMons
|
||||
ld bc, $2c
|
||||
ld a, [wcc35]
|
||||
call AddNTimes
|
||||
|
|
@ -829,14 +829,14 @@ SwitchPartyMon_Stats: ; 13653 (4:7653)
|
|||
ld hl, wcc97
|
||||
ld bc, $2c
|
||||
call CopyData
|
||||
ld hl, W_PARTYMON1OT ; wd273
|
||||
ld hl, wPartyMonOT ; wd273
|
||||
ld a, [wCurrentMenuItem] ; wCurrentMenuItem
|
||||
call SkipFixedLengthTextEntries
|
||||
push hl
|
||||
ld de, wcc97
|
||||
ld bc, $b
|
||||
call CopyData
|
||||
ld hl, W_PARTYMON1OT ; wd273
|
||||
ld hl, wPartyMonOT ; wd273
|
||||
ld a, [wcc35]
|
||||
call SkipFixedLengthTextEntries
|
||||
pop de
|
||||
|
|
@ -847,14 +847,14 @@ SwitchPartyMon_Stats: ; 13653 (4:7653)
|
|||
ld hl, wcc97
|
||||
ld bc, $b
|
||||
call CopyData
|
||||
ld hl, W_PARTYMON1NAME ; W_PARTYMON1NAME
|
||||
ld hl, wPartyMonNicks ; wPartyMonNicks
|
||||
ld a, [wCurrentMenuItem] ; wCurrentMenuItem
|
||||
call SkipFixedLengthTextEntries
|
||||
push hl
|
||||
ld de, wcc97
|
||||
ld bc, $b
|
||||
call CopyData
|
||||
ld hl, W_PARTYMON1NAME ; W_PARTYMON1NAME
|
||||
ld hl, wPartyMonNicks ; wPartyMonNicks
|
||||
ld a, [wcc35]
|
||||
call SkipFixedLengthTextEntries
|
||||
pop de
|
||||
|
|
|
|||
|
|
@ -143,15 +143,15 @@ StatusScreen: ; 12953 (4:6953)
|
|||
jp SkipFixedLengthTextEntries
|
||||
|
||||
OTPointers: ; 12a95 (4:6a95)
|
||||
dw W_PARTYMON1OT
|
||||
dw W_ENEMYMON1OT
|
||||
dw W_BOXMON1OT
|
||||
dw wPartyMonOT
|
||||
dw wEnemyMonOT
|
||||
dw wBoxMonOT
|
||||
dw W_DAYCAREMONOT
|
||||
|
||||
NamePointers2: ; 12a9d (4:6a9d)
|
||||
dw W_PARTYMON1NAME
|
||||
dw W_ENEMYMON1NAME
|
||||
dw W_BOXMON1NAME
|
||||
dw wPartyMonNicks
|
||||
dw wEnemyMonNicks
|
||||
dw wBoxMonNicks
|
||||
dw W_DAYCAREMONNAME
|
||||
|
||||
Type1Text: ; 12aa5 (4:6aa5)
|
||||
|
|
|
|||
|
|
@ -298,7 +298,7 @@ Func_71868: ; 71868 (1c:5868)
|
|||
push de
|
||||
push bc
|
||||
ld a, [H_DOWNARROWBLINKCNT2] ; $ff8c
|
||||
ld hl, W_PARTYMON1 ; W_PARTYMON1
|
||||
ld hl, wPartySpecies
|
||||
ld e, a
|
||||
ld d, $0
|
||||
add hl, de
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@ SetDefaultNames: ; 60ca (1:60ca)
|
|||
push af
|
||||
ld a, [wd732]
|
||||
push af
|
||||
ld hl, W_PLAYERNAME ; wd158
|
||||
ld hl, wPlayerName ; wd158
|
||||
ld bc, $d8a
|
||||
xor a
|
||||
call FillMemory
|
||||
|
|
@ -23,7 +23,7 @@ SetDefaultNames: ; 60ca (1:60ca)
|
|||
and a
|
||||
call z, Func_5bff
|
||||
ld hl, NintenText
|
||||
ld de, W_PLAYERNAME ; wd158
|
||||
ld de, wPlayerName ; wd158
|
||||
ld bc, $b
|
||||
call CopyData
|
||||
ld hl, SonyText
|
||||
|
|
|
|||
|
|
@ -7,11 +7,11 @@ LoadDefaultNamesPlayer: ; 695d (1:695d)
|
|||
jr z, .asm_697a
|
||||
ld hl, DefaultNamesPlayerList ; $6af2
|
||||
call Func_6ad6
|
||||
ld de, W_PLAYERNAME ; wd158
|
||||
ld de, wPlayerName ; wd158
|
||||
call Func_69ec
|
||||
jr .asm_6999
|
||||
.asm_697a
|
||||
ld hl, W_PLAYERNAME ; wd158
|
||||
ld hl, wPlayerName ; wd158
|
||||
xor a
|
||||
ld [wd07d], a
|
||||
call DisplayNamingScreen
|
||||
|
|
|
|||
|
|
@ -30,7 +30,7 @@ asm_ef82: ; ef82 (3:6f82)
|
|||
ld a, $1
|
||||
ld [wcd6a], a
|
||||
ld a, [wWhichPokemon] ; wWhichPokemon
|
||||
ld hl, W_PARTYMON1NAME ; W_PARTYMON1NAME
|
||||
ld hl, wPartyMonNicks ; wPartyMonNicks
|
||||
call GetPartyMonName
|
||||
ld hl, wd730
|
||||
set 6, [hl]
|
||||
|
|
|
|||
|
|
@ -24,7 +24,7 @@ AnimateHealingMachine: ; 70433 (1c:4433)
|
|||
ld a, [wMusicHeaderPointer]
|
||||
and a
|
||||
jr nz, .asm_70464
|
||||
ld a, [W_NUMINPARTY] ; W_NUMINPARTY
|
||||
ld a, [wPartyCount] ; wPartyCount
|
||||
ld b, a
|
||||
.asm_7046e
|
||||
call Func_70503
|
||||
|
|
|
|||
|
|
@ -31,11 +31,11 @@ BuildBattlePalPacket: ; 71e06 (1c:5e06)
|
|||
ld bc, $10
|
||||
call CopyData
|
||||
ld a, [W_PLAYERBATTSTATUS3]
|
||||
ld hl, W_PLAYERMONID
|
||||
ld hl, wBattleMonSpecies
|
||||
call DeterminePaletteID
|
||||
ld b, a
|
||||
ld a, [W_ENEMYBATTSTATUS3]
|
||||
ld hl, W_ENEMYMONID
|
||||
ld hl, wEnemyMonSpecies2
|
||||
call DeterminePaletteID
|
||||
ld c, a
|
||||
ld hl, wcf2e
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
; updates the types of a party mon (pointed to in hl) to the ones of the mon specified in wd11e
|
||||
SetPartyMonTypes: ; 5db5e (17:5b5e)
|
||||
call GetPredefRegisters
|
||||
ld bc, W_PARTYMON1_TYPE1 - W_PARTYMON1DATA ; $5
|
||||
ld bc, wPartyMon1Type - wPartyMon1 ; $5
|
||||
add hl, bc
|
||||
ld a, [wd11e]
|
||||
ld [wd0b5], a
|
||||
|
|
|
|||
|
|
@ -54,7 +54,7 @@ LoadSAVCheckSum: ; 73623 (1c:7623)
|
|||
|
||||
.Func_73652 ; 73652 (1c:7652)
|
||||
ld hl, $a598
|
||||
ld de, W_PLAYERNAME ; wd158
|
||||
ld de, wPlayerName ; wd158
|
||||
ld bc, $b
|
||||
call CopyData
|
||||
ld hl, $a5a3
|
||||
|
|
@ -110,7 +110,7 @@ LoadSAVCheckSum2: ; 736bd (1c:76bd)
|
|||
cp c
|
||||
jp nz, SAVBadCheckSum
|
||||
ld hl, $af2c
|
||||
ld de, W_NUMINPARTY ; W_NUMINPARTY
|
||||
ld de, wPartyCount ; wPartyCount
|
||||
ld bc, $194
|
||||
call CopyData
|
||||
ld hl, $a5a3
|
||||
|
|
@ -201,7 +201,7 @@ SaveSAVtoSRAM0: ; 7378c (1c:778c)
|
|||
ld a, $1
|
||||
ld [$6000], a
|
||||
ld [$4000], a
|
||||
ld hl, W_PLAYERNAME ; wd158
|
||||
ld hl, wPlayerName ; wd158
|
||||
ld de, $a598
|
||||
ld bc, $b
|
||||
call CopyData
|
||||
|
|
@ -254,7 +254,7 @@ SaveSAVtoSRAM2: ; 7380f (1c:780f)
|
|||
ld a, $1
|
||||
ld [$6000], a
|
||||
ld [$4000], a
|
||||
ld hl, W_NUMINPARTY ; W_NUMINPARTY
|
||||
ld hl, wPartyCount ; wPartyCount
|
||||
ld de, $af2c
|
||||
ld bc, $194
|
||||
call CopyData
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@ CopyFixedLengthText: ; 42b1 (1:42b1)
|
|||
|
||||
SetDefaultNamesBeforeTitlescreen: ; 42b7 (1:42b7)
|
||||
ld hl, NintenText
|
||||
ld de, W_PLAYERNAME ; wd158
|
||||
ld de, wPlayerName ; wd158
|
||||
call CopyFixedLengthText
|
||||
ld hl, SonyText
|
||||
ld de, W_RIVALNAME ; wd34a
|
||||
|
|
|
|||
|
|
@ -151,12 +151,12 @@ Func_4120b: ; 4120b (10:520b)
|
|||
jp Bankswitch
|
||||
|
||||
Func_41217: ; 41217 (10:5217)
|
||||
ld hl, W_PLAYERNAME
|
||||
ld hl, wPlayerName
|
||||
ld de, wHPBarMaxHP
|
||||
ld bc, $000b
|
||||
call CopyData
|
||||
ld hl, W_GRASSRATE
|
||||
ld de, W_PLAYERNAME
|
||||
ld de, wPlayerName
|
||||
ld bc, $000b
|
||||
call CopyData
|
||||
ld hl, wHPBarMaxHP
|
||||
|
|
@ -427,7 +427,7 @@ Func_4142d: ; 4142d (10:542d)
|
|||
call TextBoxBorder
|
||||
FuncCoord 5, 14
|
||||
ld hl, Coord
|
||||
ld de, W_PLAYERNAME ; wd158
|
||||
ld de, wPlayerName ; wd158
|
||||
call PlaceString
|
||||
jp DelayFrame
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue