mirror of
https://gitlab.com/xCrystal/pokecrystal-board.git
synced 2025-04-09 05:44:44 -07:00
Merge pull request #320 from PikalaxALT/master
More labels, including fns responsible for partymon generation
This commit is contained in:
commit
d5f94e9ee5
@ -297,7 +297,7 @@ AI_Items: ; 39196
|
||||
.FullHeal: ; 381be
|
||||
call .Status
|
||||
jp c, .DontUse
|
||||
call Function383a3
|
||||
call EnemyUsedFullHeal
|
||||
jp .Use
|
||||
; 381ca
|
||||
|
||||
@ -308,7 +308,7 @@ AI_Items: ; 39196
|
||||
|
||||
ld a, [bc]
|
||||
bit CONTEXT_USE_F, a
|
||||
jr nz, .asm_381e7
|
||||
jr nz, .StatusCheckContext
|
||||
ld a, [bc]
|
||||
bit ALWAYS_USE_F, a
|
||||
jp nz, .Use
|
||||
@ -317,17 +317,17 @@ AI_Items: ; 39196
|
||||
jp c, .Use
|
||||
jp .DontUse
|
||||
|
||||
.asm_381e7
|
||||
.StatusCheckContext
|
||||
ld a, [EnemySubStatus5]
|
||||
bit SUBSTATUS_TOXIC, a
|
||||
jr z, .asm_381fd
|
||||
jr z, .FailToxicCheck
|
||||
ld a, [EnemyToxicCount]
|
||||
cp 4
|
||||
jr c, .asm_381fd
|
||||
jr c, .FailToxicCheck
|
||||
call Random
|
||||
cp $80
|
||||
jp c, .Use
|
||||
.asm_381fd
|
||||
.FailToxicCheck
|
||||
ld a, [EnemyMonStatus]
|
||||
and 1 << FRZ | SLP
|
||||
jp z, .DontUse
|
||||
@ -336,58 +336,58 @@ AI_Items: ; 39196
|
||||
|
||||
.FullRestore: ; 38208
|
||||
call .HealItem
|
||||
jp nc, .asm_3821a
|
||||
jp nc, .UseFullRestore
|
||||
ld a, [bc]
|
||||
bit CONTEXT_USE_F, a
|
||||
jp z, .DontUse
|
||||
call .Status
|
||||
jp c, .DontUse
|
||||
|
||||
.asm_3821a
|
||||
call Function383b5
|
||||
.UseFullRestore
|
||||
call EnemyUsedFullRestore
|
||||
jp .Use
|
||||
; 38220
|
||||
|
||||
.MaxPotion: ; 38220
|
||||
call .HealItem
|
||||
jp c, .DontUse
|
||||
call Function383ae
|
||||
call EnemyUsedMaxPotion
|
||||
jp .Use
|
||||
|
||||
.HealItem: ; 3822c (e:422c)
|
||||
ld a, [bc]
|
||||
bit CONTEXT_USE_F, a
|
||||
jr nz, .asm_38267
|
||||
jr nz, .CheckHalfOrQuarterHP
|
||||
callab AICheckEnemyHalfHP
|
||||
jp c, .DontUse
|
||||
ld a, [bc]
|
||||
bit UNKNOWN_USE_F, a
|
||||
jp nz, .asm_38254
|
||||
jp nz, .CheckQuarterHP
|
||||
callab AICheckEnemyQuarterHP
|
||||
jp nc, .asm_38281
|
||||
jp nc, .UseHealItem
|
||||
call Random
|
||||
cp $80
|
||||
jp c, .asm_38281
|
||||
jp c, .UseHealItem
|
||||
jp .DontUse
|
||||
|
||||
.asm_38254: ; 38254 (e:4254)
|
||||
.CheckQuarterHP: ; 38254 (e:4254)
|
||||
callab AICheckEnemyQuarterHP
|
||||
jp c, .DontUse
|
||||
call Random
|
||||
cp 50
|
||||
cp $32
|
||||
jp c, .DontUse
|
||||
jr .asm_38281
|
||||
jr .UseHealItem
|
||||
|
||||
.asm_38267: ; 38267 (e:4267)
|
||||
.CheckHalfOrQuarterHP: ; 38267 (e:4267)
|
||||
callab AICheckEnemyHalfHP
|
||||
jp c, .DontUse
|
||||
callab AICheckEnemyQuarterHP
|
||||
jp nc, .asm_38281
|
||||
jp nc, .UseHealItem
|
||||
call Random
|
||||
cp 50
|
||||
cp $32
|
||||
jp nc, .DontUse
|
||||
|
||||
.asm_38281: ; 38281 (e:4281)
|
||||
.UseHealItem: ; 38281 (e:4281)
|
||||
jp .Use
|
||||
; 38284
|
||||
|
||||
@ -395,7 +395,7 @@ AI_Items: ; 39196
|
||||
call .HealItem
|
||||
jp c, .DontUse
|
||||
ld b, 200
|
||||
call Function383f4
|
||||
call EnemyUsedHyperPotion
|
||||
jp .Use
|
||||
; 38292 (e:4292)
|
||||
|
||||
@ -403,7 +403,7 @@ AI_Items: ; 39196
|
||||
call .HealItem
|
||||
jp c, .DontUse
|
||||
ld b, 50
|
||||
call Function383ee
|
||||
call EnemyUsedSuperPotion
|
||||
jp .Use
|
||||
; 382a0
|
||||
|
||||
@ -411,11 +411,11 @@ AI_Items: ; 39196
|
||||
call .HealItem
|
||||
jp c, .DontUse
|
||||
ld b, 20
|
||||
call Function383e8
|
||||
call EnemyUsedPotion
|
||||
jp .Use
|
||||
; 382ae
|
||||
|
||||
.asm_382ae: ; 382ae
|
||||
.asm_382ae: ; This appears to be unused
|
||||
callab AICheckEnemyMaxHP
|
||||
jr c, .asm_382e4
|
||||
push bc
|
||||
@ -454,7 +454,7 @@ AI_Items: ; 39196
|
||||
bit UNKNOWN_USE_F, a
|
||||
jp z, .DontUse
|
||||
call Random
|
||||
cp 100
|
||||
cp $64
|
||||
jp c, .Use
|
||||
jp .DontUse
|
||||
; 382f9
|
||||
@ -462,56 +462,56 @@ AI_Items: ; 39196
|
||||
.XAccuracy: ; 382f9
|
||||
call .XItem
|
||||
jp c, .DontUse
|
||||
call Function384f7
|
||||
call EnemyUsedXAccuracy
|
||||
jp .Use
|
||||
; 38305
|
||||
|
||||
.GuardSpec: ; 38305
|
||||
call .XItem
|
||||
jp c, .DontUse
|
||||
call Function38504
|
||||
call EnemyUsedGuardSpec
|
||||
jp .Use
|
||||
; 38311
|
||||
|
||||
.DireHit: ; 38311
|
||||
call .XItem
|
||||
jp c, .DontUse
|
||||
call Function38511
|
||||
call EnemyUsedDireHit
|
||||
jp .Use
|
||||
; 3831d (e:431d)
|
||||
|
||||
.XAttack: ; 3831d
|
||||
call .XItem
|
||||
jp c, .DontUse
|
||||
call Function38541
|
||||
call EnemyUsedXAttack
|
||||
jp .Use
|
||||
; 38329
|
||||
|
||||
.XDefend: ; 38329
|
||||
call .XItem
|
||||
jp c, .DontUse
|
||||
call Function38547
|
||||
call EnemyUsedXDefend
|
||||
jp .Use
|
||||
; 38335
|
||||
|
||||
.XSpeed: ; 38335
|
||||
call .XItem
|
||||
jp c, .DontUse
|
||||
call Function3854d
|
||||
call EnemyUsedXSpeed
|
||||
jp .Use
|
||||
; 38341
|
||||
|
||||
.XSpecial: ; 38341
|
||||
call .XItem
|
||||
jp c, .DontUse
|
||||
call Function38553
|
||||
call EnemyUsedXSpecial
|
||||
jp .Use
|
||||
; 3834d
|
||||
|
||||
.XItem: ; 3834d (e:434d)
|
||||
ld a, [EnemyTurnsTaken]
|
||||
and a
|
||||
jr nz, .asm_38372
|
||||
jr nz, .notfirstturnout
|
||||
ld a, [bc]
|
||||
bit ALWAYS_USE_F, a
|
||||
jp nz, .Use
|
||||
@ -525,12 +525,12 @@ AI_Items: ; 39196
|
||||
cp $80
|
||||
jp c, .DontUse
|
||||
jp .Use
|
||||
.asm_38372
|
||||
.notfirstturnout
|
||||
ld a, [bc]
|
||||
bit ALWAYS_USE_F, a
|
||||
jp z, .DontUse
|
||||
call Random
|
||||
cp 50
|
||||
cp $32
|
||||
jp nc, .DontUse
|
||||
jp .Use
|
||||
|
||||
@ -563,18 +563,18 @@ AIUsedItemSound: ; 3839a
|
||||
; 383a3
|
||||
|
||||
|
||||
Function383a3: ; 383a3 (e:43a3)
|
||||
EnemyUsedFullHeal: ; 383a3 (e:43a3)
|
||||
call AIUsedItemSound
|
||||
call AI_HealStatus
|
||||
ld a, FULL_HEAL
|
||||
jp PrintText_UsedItemOn_AND_AIUpdateHUD
|
||||
|
||||
Function383ae: ; 383ae (e:43ae)
|
||||
EnemyUsedMaxPotion: ; 383ae (e:43ae)
|
||||
ld a, MAX_POTION
|
||||
ld [wd1f1], a
|
||||
jr asm_383c6
|
||||
jr FullRestoreContinue
|
||||
|
||||
Function383b5: ; 383b5 (e:43b5)
|
||||
EnemyUsedFullRestore: ; 383b5 (e:43b5)
|
||||
call AI_HealStatus
|
||||
ld a, FULL_RESTORE
|
||||
ld [wd1f1], a
|
||||
@ -583,7 +583,7 @@ Function383b5: ; 383b5 (e:43b5)
|
||||
xor a
|
||||
ld [EnemyConfuseCount], a
|
||||
|
||||
asm_383c6: ; 383c6
|
||||
FullRestoreContinue: ; 383c6
|
||||
ld de, wd1ec
|
||||
ld hl, EnemyMonHP + 1
|
||||
ld a, [hld]
|
||||
@ -602,24 +602,24 @@ asm_383c6: ; 383c6
|
||||
ld [de], a
|
||||
ld [Buffer2], a
|
||||
ld [EnemyMonHP], a
|
||||
jr Function38436
|
||||
jr EnemyPotionFinish
|
||||
; 383e8 (e:43e8)
|
||||
|
||||
Function383e8: ; 383e8
|
||||
EnemyUsedPotion: ; 383e8
|
||||
ld a, POTION
|
||||
ld b, 20
|
||||
jr Function383f8
|
||||
jr EnemyPotionContinue
|
||||
|
||||
Function383ee: ; 383ee
|
||||
EnemyUsedSuperPotion: ; 383ee
|
||||
ld a, SUPER_POTION
|
||||
ld b, 50
|
||||
jr Function383f8
|
||||
jr EnemyPotionContinue
|
||||
|
||||
Function383f4: ; 383f4 (e:43f4)
|
||||
EnemyUsedHyperPotion: ; 383f4 (e:43f4)
|
||||
ld a, HYPER_POTION
|
||||
ld b, 200
|
||||
|
||||
Function383f8: ; 383f8
|
||||
EnemyPotionContinue: ; 383f8
|
||||
ld [wd1f1], a
|
||||
ld hl, EnemyMonHP + 1
|
||||
ld a, [hl]
|
||||
@ -630,11 +630,11 @@ Function383f8: ; 383f8
|
||||
ld a, [hl]
|
||||
ld [wd1ec + 1], a
|
||||
ld [wd1ee + 1], a
|
||||
jr nc, .asm_38415
|
||||
jr nc, .ok
|
||||
inc a
|
||||
ld [hl], a
|
||||
ld [wd1ee + 1], a
|
||||
.asm_38415
|
||||
.ok
|
||||
inc hl
|
||||
ld a, [hld]
|
||||
ld b, a
|
||||
@ -648,7 +648,7 @@ Function383f8: ; 383f8
|
||||
ld a, [de]
|
||||
ld [Buffer2], a
|
||||
sbc b
|
||||
jr nc, .asm_38436
|
||||
jr nc, EnemyPotionFinish
|
||||
inc de
|
||||
ld a, [de]
|
||||
dec de
|
||||
@ -657,9 +657,8 @@ Function383f8: ; 383f8
|
||||
ld a, [de]
|
||||
ld [hl], a
|
||||
ld [wd1ef], a
|
||||
.asm_38436
|
||||
|
||||
Function38436: ; 38436
|
||||
EnemyPotionFinish: ; 38436
|
||||
call PrintText_UsedItemOn
|
||||
hlcoord 2, 2
|
||||
xor a
|
||||
@ -670,24 +669,26 @@ Function38436: ; 38436
|
||||
|
||||
|
||||
AI_TrySwitch: ; 3844b
|
||||
; Determine whether the AI can switch based on how many Pokemon are still alive.
|
||||
; If it can switch, it will.
|
||||
ld a, [OTPartyCount]
|
||||
ld c, a
|
||||
ld hl, OTPartyMon1HP
|
||||
ld d, 0
|
||||
.asm_38454
|
||||
.SwitchLoop
|
||||
ld a, [hli]
|
||||
ld b, a
|
||||
ld a, [hld]
|
||||
or b
|
||||
jr z, .asm_3845b
|
||||
jr z, .fainted
|
||||
inc d
|
||||
.asm_3845b
|
||||
.fainted
|
||||
push bc
|
||||
ld bc, PartyMon2 - PartyMon1
|
||||
add hl, bc
|
||||
pop bc
|
||||
dec c
|
||||
jr nz, .asm_38454
|
||||
jr nz, .SwitchLoop
|
||||
|
||||
ld a, d
|
||||
cp 2
|
||||
@ -716,10 +717,10 @@ AI_Switch: ; 3846c
|
||||
ld bc, $0004
|
||||
call CopyBytes
|
||||
pop af
|
||||
jr c, .asm_384a3
|
||||
jr c, .skiptext
|
||||
ld hl, TextJump_EnemyWithdrew
|
||||
call PrintText
|
||||
.asm_384a3
|
||||
.skiptext
|
||||
ld a, $1
|
||||
ld [wd264], a
|
||||
callab NewEnemyMonStatus
|
||||
@ -742,10 +743,10 @@ TextJump_EnemyWithdrew: ; 384d0
|
||||
db "@"
|
||||
; 384d5
|
||||
|
||||
Function384d5: ; 384d5
|
||||
Function384d5: ; This appears to be unused
|
||||
call AIUsedItemSound
|
||||
call AI_HealStatus
|
||||
ld a, FULL_HEAL_RED
|
||||
ld a, X_SPEED
|
||||
jp PrintText_UsedItemOn_AND_AIUpdateHUD
|
||||
; 384e0
|
||||
|
||||
@ -762,7 +763,7 @@ AI_HealStatus: ; 384e0
|
||||
ret
|
||||
; 384f7
|
||||
|
||||
Function384f7: ; 384f7
|
||||
EnemyUsedXAccuracy: ; 384f7
|
||||
call AIUsedItemSound
|
||||
ld hl, EnemySubStatus4
|
||||
set SUBSTATUS_X_ACCURACY, [hl]
|
||||
@ -770,7 +771,7 @@ Function384f7: ; 384f7
|
||||
jp PrintText_UsedItemOn_AND_AIUpdateHUD
|
||||
; 38504
|
||||
|
||||
Function38504: ; 38504
|
||||
EnemyUsedGuardSpec: ; 38504
|
||||
call AIUsedItemSound
|
||||
ld hl, EnemySubStatus4
|
||||
set SUBSTATUS_MIST, [hl]
|
||||
@ -778,7 +779,7 @@ Function38504: ; 38504
|
||||
jp PrintText_UsedItemOn_AND_AIUpdateHUD
|
||||
; 38511
|
||||
|
||||
Function38511: ; 38511
|
||||
EnemyUsedDireHit: ; 38511
|
||||
call AIUsedItemSound
|
||||
ld hl, EnemySubStatus4
|
||||
set SUBSTATUS_FOCUS_ENERGY, [hl]
|
||||
@ -786,18 +787,18 @@ Function38511: ; 38511
|
||||
jp PrintText_UsedItemOn_AND_AIUpdateHUD
|
||||
; 3851e
|
||||
|
||||
Function3851e: ; 3851e
|
||||
ld [hMultiplier], a
|
||||
Function3851e: ; This appears to be unused
|
||||
ld [hDivisor], a
|
||||
ld hl, EnemyMonMaxHP
|
||||
ld a, [hli]
|
||||
ld [hProduct], a
|
||||
ld [hDividend], a
|
||||
ld a, [hl]
|
||||
ld [hMultiplicand], a
|
||||
ld b, $2
|
||||
ld [hDividend + 1], a
|
||||
ld b, 2
|
||||
call Divide
|
||||
ld a, [$ffb6]
|
||||
ld a, [hQuotient + 2]
|
||||
ld c, a
|
||||
ld a, [$ffb5]
|
||||
ld a, [hQuotient + 1]
|
||||
ld b, a
|
||||
ld hl, EnemyMonHP + 1
|
||||
ld a, [hld]
|
||||
@ -812,25 +813,25 @@ Function3851e: ; 3851e
|
||||
ret
|
||||
; 38541
|
||||
|
||||
Function38541: ; 38541
|
||||
EnemyUsedXAttack: ; 38541
|
||||
ld b, ATTACK
|
||||
ld a, X_ATTACK
|
||||
jr Function38557
|
||||
jr EnemyUsedXItem
|
||||
; 38547
|
||||
|
||||
Function38547: ; 38547
|
||||
EnemyUsedXDefend: ; 38547
|
||||
ld b, DEFENSE
|
||||
ld a, X_DEFEND
|
||||
jr Function38557
|
||||
jr EnemyUsedXItem
|
||||
; 3854d
|
||||
|
||||
Function3854d: ; 3854d
|
||||
EnemyUsedXSpeed: ; 3854d
|
||||
ld b, SPEED
|
||||
ld a, X_SPEED
|
||||
jr Function38557
|
||||
jr EnemyUsedXItem
|
||||
; 38553
|
||||
|
||||
Function38553: ; 38553
|
||||
EnemyUsedXSpecial: ; 38553
|
||||
ld b, SP_ATTACK
|
||||
ld a, X_SPECIAL
|
||||
|
||||
@ -838,12 +839,12 @@ Function38553: ; 38553
|
||||
; Parameter
|
||||
; a = ITEM_CONSTANT
|
||||
; b = BATTLE_CONSTANT (ATTACK, DEFENSE, SPEED, SP_ATTACK, SP_DEFENSE, ACCURACY, EVASION)
|
||||
Function38557:
|
||||
EnemyUsedXItem:
|
||||
ld [wd1f1], a
|
||||
push bc
|
||||
call PrintText_UsedItemOn
|
||||
pop bc
|
||||
callba Function361ef
|
||||
callba CheckIfStatCanBeRaised
|
||||
jp AIUpdateHUD
|
||||
; 38568
|
||||
|
||||
|
@ -240,14 +240,14 @@ Functioncc220: ; cc220
|
||||
ld a, $80
|
||||
ld [hBGMapAddress], a
|
||||
ld a, $9a
|
||||
ld [$ffd7], a
|
||||
ld [hBGMapAddress + 1], a
|
||||
call Function3200
|
||||
ld a, $60
|
||||
ld [hWY], a
|
||||
xor a
|
||||
ld [hBGMapAddress], a
|
||||
ld a, $98
|
||||
ld [$ffd7], a
|
||||
ld [hBGMapAddress + 1], a
|
||||
call BattleAnimDelayFrame
|
||||
ret
|
||||
; cc23d
|
||||
|
@ -1696,9 +1696,9 @@ Functioncd677: ; cd677 (33:5677)
|
||||
ld a, $42
|
||||
ld [hLCDStatCustom], a ; $ff00+$c6
|
||||
ld a, $58
|
||||
ld [$ffc7], a
|
||||
ld [hLCDStatCustom + 1], a
|
||||
ld a, $5e
|
||||
ld [$ffc8], a
|
||||
ld [hLCDStatCustom + 2], a
|
||||
ret
|
||||
|
||||
Functioncd687: ; cd687 (33:5687)
|
||||
@ -1712,7 +1712,7 @@ Functioncd687: ; cd687 (33:5687)
|
||||
jr nc, .asm_cd69b
|
||||
call Functionce72c
|
||||
xor a
|
||||
ld [$ffc7], a
|
||||
ld [hLCDStatCustom + 1], a
|
||||
ret
|
||||
.asm_cd69b
|
||||
dec a
|
||||
@ -1730,7 +1730,7 @@ Functioncd687: ; cd687 (33:5687)
|
||||
add [hl]
|
||||
sub $10
|
||||
ret c
|
||||
ld [$ffc7], a
|
||||
ld [hLCDStatCustom + 1], a
|
||||
ld hl, $9
|
||||
add hl, bc
|
||||
ld a, [hl]
|
||||
@ -1754,8 +1754,8 @@ Functioncd6c6: ; cd6c6 (33:56c6)
|
||||
jr c, asm_cd6da
|
||||
xor a
|
||||
ld [hLCDStatCustom], a ; $ff00+$c6
|
||||
ld [$ffc7], a
|
||||
ld [$ffc8], a
|
||||
ld [hLCDStatCustom + 1], a
|
||||
ld [hLCDStatCustom + 2], a
|
||||
|
||||
Functioncd6d6: ; cd6d6 (33:56d6)
|
||||
call Functioncc9bd
|
||||
@ -1767,7 +1767,7 @@ endr
|
||||
ld [hl], a
|
||||
sub $10
|
||||
ret c
|
||||
ld [$ffc7], a
|
||||
ld [hLCDStatCustom + 1], a
|
||||
ret
|
||||
|
||||
Functioncd6e3: ; cd6e3 (33:56e3)
|
||||
|
@ -932,7 +932,7 @@ Functionc8565: ; c8565 (32:4565)
|
||||
ld hl, w5_d422
|
||||
ld bc, $0
|
||||
.asm_c8580
|
||||
ld a, [$ffc7]
|
||||
ld a, [hLCDStatCustom + 1]
|
||||
cp e
|
||||
jr nc, .asm_c858b
|
||||
push hl
|
||||
@ -969,9 +969,9 @@ Functionc85a2: ; c85a2 (32:45a2)
|
||||
ld a, $42
|
||||
ld [hLCDStatCustom], a ; $ff00+$c6
|
||||
xor a
|
||||
ld [$ffc7], a
|
||||
ld [hLCDStatCustom + 1], a
|
||||
ld a, $5e
|
||||
ld [$ffc8], a
|
||||
ld [hLCDStatCustom + 2], a
|
||||
ld de, $202
|
||||
call Functionc8f2e
|
||||
ret
|
||||
@ -1044,9 +1044,9 @@ Functionc8610: ; c8610 (32:4610)
|
||||
ld a, $43
|
||||
ld [hLCDStatCustom], a ; $ff00+$c6
|
||||
xor a
|
||||
ld [$ffc7], a
|
||||
ld [hLCDStatCustom + 1], a
|
||||
ld a, $5f
|
||||
ld [$ffc8], a
|
||||
ld [hLCDStatCustom + 2], a
|
||||
ld de, $605
|
||||
call Functionc8f2e
|
||||
ld hl, $3
|
||||
@ -1140,9 +1140,9 @@ Functionc8698: ; c8698 (32:4698)
|
||||
call Functionc8eca
|
||||
ld a, $43
|
||||
call Functionc8ede
|
||||
ld a, [$ffc8]
|
||||
ld a, [hLCDStatCustom + 2]
|
||||
inc a
|
||||
ld [$ffc8], a
|
||||
ld [hLCDStatCustom + 2], a
|
||||
ld hl, $2
|
||||
add hl, bc
|
||||
ld [hl], $0
|
||||
@ -1196,9 +1196,9 @@ Functionc86ea: ; c86ea (32:46ea)
|
||||
inc a
|
||||
ld d, a
|
||||
ld h, $d2
|
||||
ld a, [$ffc7]
|
||||
ld a, [hLCDStatCustom + 1]
|
||||
ld l, a
|
||||
ld a, [$ffc8]
|
||||
ld a, [hLCDStatCustom + 2]
|
||||
sub l
|
||||
srl a
|
||||
push af
|
||||
@ -1238,7 +1238,7 @@ Functionc8712: ; c8712 (32:4712)
|
||||
ld d, $2
|
||||
call Functionc8f2e
|
||||
ld h, $d2
|
||||
ld a, [$ffc8]
|
||||
ld a, [hLCDStatCustom + 2]
|
||||
ld l, a
|
||||
ld [hl], $0
|
||||
dec l
|
||||
@ -1246,7 +1246,7 @@ Functionc8712: ; c8712 (32:4712)
|
||||
ret
|
||||
|
||||
Functionc8732: ; c8732 (32:4732)
|
||||
ld a, [$ffc8]
|
||||
ld a, [hLCDStatCustom + 2]
|
||||
ld l, a
|
||||
ld h, $d2
|
||||
ld e, l
|
||||
@ -1256,11 +1256,11 @@ Functionc8732: ; c8732 (32:4732)
|
||||
ld a, [de]
|
||||
dec de
|
||||
ld [hld], a
|
||||
ld a, [$ffc7]
|
||||
ld a, [hLCDStatCustom + 1]
|
||||
cp l
|
||||
jr nz, .asm_c873a
|
||||
ld [hl], $90
|
||||
ld a, [$ffc8]
|
||||
ld a, [hLCDStatCustom + 2]
|
||||
ld l, a
|
||||
ld a, [hl]
|
||||
cp $1
|
||||
@ -1296,9 +1296,9 @@ Functionc876a: ; c876a (32:476a)
|
||||
call Functionc8eca
|
||||
ld a, $42
|
||||
call Functionc8ede
|
||||
ld a, [$ffc8]
|
||||
ld a, [hLCDStatCustom + 2]
|
||||
inc a
|
||||
ld [$ffc8], a
|
||||
ld [hLCDStatCustom + 2], a
|
||||
ld hl, $2
|
||||
add hl, bc
|
||||
ld [hl], $1
|
||||
@ -1347,9 +1347,9 @@ Functionc87b2: ; c87b2 (32:47b2)
|
||||
call Functionc8eca
|
||||
ld a, $42
|
||||
call Functionc8ede
|
||||
ld a, [$ffc8]
|
||||
ld a, [hLCDStatCustom + 2]
|
||||
inc a
|
||||
ld [$ffc8], a
|
||||
ld [hLCDStatCustom + 2], a
|
||||
ld hl, $2
|
||||
add hl, bc
|
||||
ld [hl], $2
|
||||
@ -1371,9 +1371,9 @@ Functionc87cf: ; c87cf (32:47cf)
|
||||
call Functionc80e5
|
||||
|
||||
Functionc87de: ; c87de (32:47de)
|
||||
ld a, [$ffc7]
|
||||
ld a, [hLCDStatCustom + 1]
|
||||
ld l, a
|
||||
ld a, [$ffc8]
|
||||
ld a, [hLCDStatCustom + 2]
|
||||
sub l
|
||||
dec a
|
||||
ld hl, $2
|
||||
@ -1416,9 +1416,9 @@ Functionc8810: ; c8810 (32:4810)
|
||||
call Functionc8eca
|
||||
ld a, $43
|
||||
call Functionc8ede
|
||||
ld a, [$ffc8]
|
||||
ld a, [hLCDStatCustom + 2]
|
||||
inc a
|
||||
ld [$ffc8], a
|
||||
ld [hLCDStatCustom + 2], a
|
||||
ld hl, $3
|
||||
add hl, bc
|
||||
ld [hl], $0
|
||||
@ -1451,9 +1451,9 @@ Functionc8842: ; c8842 (32:4842)
|
||||
call Functionc8eca
|
||||
ld a, $43
|
||||
call Functionc8ef4
|
||||
ld a, [$ffc8]
|
||||
ld a, [hLCDStatCustom + 2]
|
||||
inc a
|
||||
ld [$ffc8], a
|
||||
ld [hLCDStatCustom + 2], a
|
||||
ld hl, $3
|
||||
add hl, bc
|
||||
ld [hl], $0
|
||||
@ -1524,16 +1524,16 @@ Functionc88a5: ; c88a5 (32:48a5)
|
||||
pop af
|
||||
jp Functionc900b
|
||||
.asm_c88b7
|
||||
ld a, [$ffc7]
|
||||
ld a, [hLCDStatCustom + 1]
|
||||
ld d, a
|
||||
ld a, [$ffc8]
|
||||
ld a, [hLCDStatCustom + 2]
|
||||
sub d
|
||||
ld d, a
|
||||
ld h, LYOverridesBackup / $100
|
||||
ld a, [hSCY] ; $ff00+$d0
|
||||
or a
|
||||
jr nz, .asm_c88d0
|
||||
ld a, [$ffc7]
|
||||
ld a, [hLCDStatCustom + 1]
|
||||
or a
|
||||
jr z, .asm_c88d6
|
||||
dec a
|
||||
@ -1541,14 +1541,14 @@ Functionc88a5: ; c88a5 (32:48a5)
|
||||
ld [hl], $0
|
||||
jr .asm_c88d6
|
||||
.asm_c88d0
|
||||
ld a, [$ffc8]
|
||||
ld a, [hLCDStatCustom + 2]
|
||||
dec a
|
||||
ld l, a
|
||||
ld [hl], $0
|
||||
.asm_c88d6
|
||||
ld a, [hSCY] ; $ff00+$d0
|
||||
ld l, a
|
||||
ld a, [$ffc7]
|
||||
ld a, [hLCDStatCustom + 1]
|
||||
sub l
|
||||
jr nc, .asm_c88e0
|
||||
xor a
|
||||
@ -1581,9 +1581,9 @@ Functionc88f6: ; c88f6 (32:48f6)
|
||||
call Functionc8eca
|
||||
ld a, $43
|
||||
call Functionc8ede
|
||||
ld a, [$ffc8]
|
||||
ld a, [hLCDStatCustom + 2]
|
||||
inc a
|
||||
ld [$ffc8], a
|
||||
ld [hLCDStatCustom + 2], a
|
||||
ld hl, $3
|
||||
add hl, bc
|
||||
ld [hl], $0
|
||||
@ -1628,9 +1628,9 @@ Functionc8933: ; c8933 (32:4933)
|
||||
call Functionc8eca
|
||||
ld a, $43
|
||||
call Functionc8ede
|
||||
ld a, [$ffc8]
|
||||
ld a, [hLCDStatCustom + 2]
|
||||
inc a
|
||||
ld [$ffc8], a
|
||||
ld [hLCDStatCustom + 2], a
|
||||
ld hl, $3
|
||||
add hl, bc
|
||||
ld [hl], $0
|
||||
@ -1668,9 +1668,9 @@ Functionc896d: ; c896d (32:496d)
|
||||
call Functionc8eca
|
||||
ld a, $43
|
||||
call Functionc8ede
|
||||
ld a, [$ffc8]
|
||||
ld a, [hLCDStatCustom + 2]
|
||||
inc a
|
||||
ld [$ffc8], a
|
||||
ld [hLCDStatCustom + 2], a
|
||||
xor a
|
||||
ld hl, $2
|
||||
add hl, bc
|
||||
@ -1767,9 +1767,9 @@ Functionc89f7: ; c89f7 (32:49f7)
|
||||
call Functionc8eca
|
||||
ld a, $42
|
||||
call Functionc8ef4
|
||||
ld a, [$ffc8]
|
||||
ld a, [hLCDStatCustom + 2]
|
||||
inc a
|
||||
ld [$ffc8], a
|
||||
ld [hLCDStatCustom + 2], a
|
||||
ld hl, $2
|
||||
add hl, bc
|
||||
ld [hl], $1
|
||||
@ -1824,14 +1824,14 @@ Functionc8a49: ; c8a49 (32:4a49)
|
||||
call Functionc8ecb
|
||||
ld a, $47
|
||||
call Functionc8ede
|
||||
ld a, [$ffc8]
|
||||
ld a, [hLCDStatCustom + 2]
|
||||
inc a
|
||||
ld [$ffc8], a
|
||||
ld a, [$ffc7]
|
||||
ld [hLCDStatCustom + 2], a
|
||||
ld a, [hLCDStatCustom + 1]
|
||||
ld l, a
|
||||
ld h, $d2
|
||||
.asm_c8a60
|
||||
ld a, [$ffc8]
|
||||
ld a, [hLCDStatCustom + 2]
|
||||
cp l
|
||||
jr z, .asm_c8a69
|
||||
xor a
|
||||
@ -1854,9 +1854,9 @@ Functionc8a70: ; c8a70 (32:4a70)
|
||||
ld hl, $3
|
||||
add hl, bc
|
||||
ld [hl], $0
|
||||
ld a, [$ffc7]
|
||||
ld a, [hLCDStatCustom + 1]
|
||||
inc a
|
||||
ld [$ffc7], a
|
||||
ld [hLCDStatCustom + 1], a
|
||||
call Functionc80e5
|
||||
ret
|
||||
|
||||
@ -1864,7 +1864,7 @@ Functionc8a88: ; c8a88 (32:4a88)
|
||||
call Functionc8ab0
|
||||
jr nc, .asm_c8a96
|
||||
call Functionc8a9a
|
||||
ld a, [$ffc8]
|
||||
ld a, [hLCDStatCustom + 2]
|
||||
dec a
|
||||
ld l, a
|
||||
ld [hl], e
|
||||
@ -1875,9 +1875,9 @@ Functionc8a88: ; c8a88 (32:4a88)
|
||||
|
||||
Functionc8a9a: ; c8a9a (32:4a9a)
|
||||
ld e, a
|
||||
ld a, [$ffc7]
|
||||
ld a, [hLCDStatCustom + 1]
|
||||
ld l, a
|
||||
ld a, [$ffc8]
|
||||
ld a, [hLCDStatCustom + 2]
|
||||
sub l
|
||||
srl a
|
||||
ld h, $d2
|
||||
@ -1971,9 +1971,9 @@ Functionc8b0e: ; c8b0e (32:4b0e)
|
||||
ld a, $47
|
||||
ld [hLCDStatCustom], a ; $ff00+$c6
|
||||
xor a
|
||||
ld [$ffc7], a
|
||||
ld [hLCDStatCustom + 1], a
|
||||
ld a, $60
|
||||
ld [$ffc8], a
|
||||
ld [hLCDStatCustom + 2], a
|
||||
ret
|
||||
|
||||
Functionc8b22: ; c8b22 (32:4b22)
|
||||
@ -2221,9 +2221,9 @@ Functionc8c68: ; c8c68 (32:4c68)
|
||||
call Functionc8eca
|
||||
ld a, $43
|
||||
call Functionc8ede
|
||||
ld a, [$ffc8]
|
||||
ld a, [hLCDStatCustom + 2]
|
||||
inc a
|
||||
ld [$ffc8], a
|
||||
ld [hLCDStatCustom + 2], a
|
||||
ld hl, $2
|
||||
add hl, bc
|
||||
ld [hl], $1
|
||||
@ -2268,9 +2268,9 @@ Functionc8cab: ; c8cab (32:4cab)
|
||||
ld a, $43
|
||||
ld [hLCDStatCustom], a ; $ff00+$c6
|
||||
xor a
|
||||
ld [$ffc7], a
|
||||
ld [hLCDStatCustom + 1], a
|
||||
ld a, $37
|
||||
ld [$ffc8], a
|
||||
ld [hLCDStatCustom + 2], a
|
||||
ld hl, $3
|
||||
add hl, bc
|
||||
ld [hl], $0
|
||||
@ -2431,9 +2431,9 @@ Functionc8d8b: ; c8d8b (32:4d8b)
|
||||
call Functionc8ecb
|
||||
ld a, $47
|
||||
call Functionc8ede
|
||||
ld a, [$ffc8]
|
||||
ld a, [hLCDStatCustom + 2]
|
||||
inc a
|
||||
ld [$ffc8], a
|
||||
ld [hLCDStatCustom + 2], a
|
||||
ld hl, $3
|
||||
add hl, bc
|
||||
ld a, [hl]
|
||||
@ -2669,9 +2669,9 @@ Functionc8ede: ; c8ede (32:4ede)
|
||||
ld de, $2f5e
|
||||
.asm_c8eed
|
||||
ld a, d
|
||||
ld [$ffc7], a
|
||||
ld [hLCDStatCustom + 1], a
|
||||
ld a, e
|
||||
ld [$ffc8], a
|
||||
ld [hLCDStatCustom + 2], a
|
||||
ret
|
||||
|
||||
Functionc8ef4: ; c8ef4 (32:4ef4)
|
||||
@ -2684,15 +2684,15 @@ Functionc8ef4: ; c8ef4 (32:4ef4)
|
||||
ld de, $2d5e
|
||||
.asm_c8f03
|
||||
ld a, d
|
||||
ld [$ffc7], a
|
||||
ld [hLCDStatCustom + 1], a
|
||||
ld a, e
|
||||
ld [$ffc8], a
|
||||
ld [hLCDStatCustom + 2], a
|
||||
ret
|
||||
|
||||
Functionc8f0a: ; c8f0a (32:4f0a)
|
||||
xor a
|
||||
ld [$ffc7], a
|
||||
ld [$ffc8], a
|
||||
ld [hLCDStatCustom + 1], a
|
||||
ld [hLCDStatCustom + 2], a
|
||||
call Functionc8eca
|
||||
xor a
|
||||
ld [hLCDStatCustom], a ; $ff00+$c6
|
||||
@ -2706,8 +2706,8 @@ Functionc8f19: ; c8f19 (32:4f19)
|
||||
ld [rBGP], a ; $ff00+$47
|
||||
ld [wcfc7], a
|
||||
ld [wcfc9], a
|
||||
ld [$ffc7], a
|
||||
ld [$ffc8], a
|
||||
ld [hLCDStatCustom + 1], a
|
||||
ld [hLCDStatCustom + 2], a
|
||||
call Functionc8eca
|
||||
ret
|
||||
|
||||
@ -2723,10 +2723,10 @@ Functionc8f2e: ; c8f2e (32:4f2e)
|
||||
ld [BattleAnimTemps + 3], a
|
||||
ld bc, LYOverridesBackup
|
||||
.asm_c8f43
|
||||
ld a, [$ffc7]
|
||||
ld a, [hLCDStatCustom + 1]
|
||||
cp c
|
||||
jr nc, .asm_c8f58
|
||||
ld a, [$ffc8]
|
||||
ld a, [hLCDStatCustom + 2]
|
||||
cp c
|
||||
jr c, .asm_c8f58
|
||||
ld a, [BattleAnimTemps + 2]
|
||||
@ -2800,14 +2800,14 @@ Functionc8f9a: ; c8f9a (32:4f9a)
|
||||
call Functionc905d
|
||||
ld e, a
|
||||
pop hl
|
||||
ld a, [$ffc8]
|
||||
ld a, [hLCDStatCustom + 2]
|
||||
cp c
|
||||
jr c, .asm_c8fcf
|
||||
ld a, e
|
||||
ld [bc], a
|
||||
inc bc
|
||||
.asm_c8fcf
|
||||
ld a, [$ffc7]
|
||||
ld a, [hLCDStatCustom + 1]
|
||||
cp l
|
||||
jr nc, .asm_c8fd6
|
||||
ld [hl], e
|
||||
@ -2824,7 +2824,7 @@ Functionc8f9a: ; c8f9a (32:4f9a)
|
||||
ret
|
||||
|
||||
Functionc8fe4: ; c8fe4 (32:4fe4)
|
||||
ld a, [$ffc7]
|
||||
ld a, [hLCDStatCustom + 1]
|
||||
ld e, a
|
||||
ld a, [BattleAnimTemps]
|
||||
add e
|
||||
@ -2834,13 +2834,13 @@ Functionc8fe4: ; c8fe4 (32:4fe4)
|
||||
|
||||
Functionc8fef: ; c8fef (32:4fef)
|
||||
push bc
|
||||
ld a, [$ffc7]
|
||||
ld a, [hLCDStatCustom + 1]
|
||||
ld l, a
|
||||
inc a
|
||||
ld e, a
|
||||
ld h, $d2
|
||||
ld d, h
|
||||
ld a, [$ffc8]
|
||||
ld a, [hLCDStatCustom + 2]
|
||||
sub l
|
||||
and a
|
||||
jr z, .asm_c9009
|
||||
@ -2862,9 +2862,9 @@ Functionc8fef: ; c8fef (32:4fef)
|
||||
Functionc900b: ; c900b (32:500b)
|
||||
push af
|
||||
ld h, $d2
|
||||
ld a, [$ffc7]
|
||||
ld a, [hLCDStatCustom + 1]
|
||||
ld l, a
|
||||
ld a, [$ffc8]
|
||||
ld a, [hLCDStatCustom + 2]
|
||||
sub l
|
||||
ld d, a
|
||||
pop af
|
||||
@ -2877,14 +2877,14 @@ Functionc900b: ; c900b (32:500b)
|
||||
Functionc901b: ; c901b (32:501b)
|
||||
push af
|
||||
ld e, a
|
||||
ld a, [$ffc7]
|
||||
ld a, [hLCDStatCustom + 1]
|
||||
ld l, a
|
||||
ld a, [$ffc8]
|
||||
ld a, [hLCDStatCustom + 2]
|
||||
sub l
|
||||
sub e
|
||||
ld d, a
|
||||
ld h, $d2
|
||||
ld a, [$ffc7]
|
||||
ld a, [hLCDStatCustom + 1]
|
||||
ld l, a
|
||||
ld a, $90
|
||||
.asm_c902c
|
||||
|
@ -2815,21 +2815,22 @@ Function3d1aa: ; 3d1aa
|
||||
ld [hl], a
|
||||
ld [BattleMonStatus], a
|
||||
call UpdateBattleMonInParty
|
||||
ld c, $6
|
||||
ld c, HAPPINESS_FAINTED
|
||||
; If TheirLevel > (YourLevel + 30), use a different parameter
|
||||
ld a, [BattleMonLevel]
|
||||
add $1e
|
||||
add 30
|
||||
ld b, a
|
||||
ld a, [EnemyMonLevel]
|
||||
cp b
|
||||
jr c, .asm_3d1dc
|
||||
ld c, $8
|
||||
ld c, HAPPINESS_BEATENBYSTRONGFOE
|
||||
|
||||
.asm_3d1dc
|
||||
ld a, [CurBattleMon]
|
||||
ld [CurPartyMon], a
|
||||
callab ChangeHappiness
|
||||
ld a, [wd0ee]
|
||||
and $c0
|
||||
and %11000000
|
||||
add $1
|
||||
ld [wd0ee], a
|
||||
ld a, [wc6f7]
|
||||
@ -3233,7 +3234,7 @@ Function3d444: ; 3d444
|
||||
|
||||
|
||||
Function3d490: ; 3d490
|
||||
ld [$ffaf], a
|
||||
ld [hConnectionStripLength], a
|
||||
ld c, a
|
||||
.asm_3d493
|
||||
push bc
|
||||
@ -3257,7 +3258,7 @@ Function3d490: ; 3d490
|
||||
; 3d4ae
|
||||
|
||||
Function3d4ae: ; 3d4ae
|
||||
ld a, [$ffaf]
|
||||
ld a, [hConnectionStripLength]
|
||||
ld c, a
|
||||
cp $8
|
||||
jr nz, .back
|
||||
@ -4821,7 +4822,7 @@ DrawPlayerHUD: ; 3df58
|
||||
; HP bar
|
||||
hlcoord 10, 9
|
||||
ld b, 1
|
||||
xor a
|
||||
xor a ; PARTYMON
|
||||
ld [MonType], a
|
||||
predef DrawPlayerHP
|
||||
|
||||
@ -4903,7 +4904,7 @@ PrintPlayerHUD: ; 3dfbf
|
||||
pop hl
|
||||
dec hl
|
||||
|
||||
ld a, $3
|
||||
ld a, BREEDMON
|
||||
ld [MonType], a
|
||||
callab GetGender
|
||||
ld a, " "
|
||||
@ -4981,7 +4982,7 @@ DrawEnemyHUD: ; 3e043
|
||||
ld a, [hl]
|
||||
ld [de], a
|
||||
|
||||
ld a, $3
|
||||
ld a, BREEDMON
|
||||
ld [MonType], a
|
||||
callab GetGender
|
||||
ld a, " "
|
||||
@ -5358,7 +5359,7 @@ Function3e308: ; 3e308
|
||||
call EnableLCD
|
||||
call ClearSprites
|
||||
call LowVolume
|
||||
xor a
|
||||
xor a ; PARTYMON
|
||||
ld [MonType], a
|
||||
callba Function4dc7b
|
||||
call MaxVolume
|
||||
@ -5966,7 +5967,7 @@ Function3e75f: ; 3e75f
|
||||
.ok
|
||||
push hl
|
||||
ld de, StringBuffer1
|
||||
ld bc, $0102
|
||||
lb bc, 1, 2
|
||||
call PrintNum
|
||||
pop hl
|
||||
rept 2
|
||||
@ -5974,8 +5975,8 @@ rept 2
|
||||
endr
|
||||
ld [hl], "/"
|
||||
inc hl
|
||||
ld de, wd265
|
||||
ld bc, $0102
|
||||
ld de, wNamedObjectIndexBuffer
|
||||
lb bc, 1, 2
|
||||
call PrintNum
|
||||
ret
|
||||
; 3e786
|
||||
@ -7535,7 +7536,7 @@ endr
|
||||
ld [hld], a
|
||||
|
||||
.asm_3ef74
|
||||
xor a
|
||||
xor a ; PARTYMON
|
||||
ld [MonType], a
|
||||
predef Function5084a
|
||||
callab Function50e1b
|
||||
@ -7647,7 +7648,7 @@ endr
|
||||
call Function309d
|
||||
|
||||
.asm_3f057
|
||||
xor a
|
||||
xor a ; PARTYMON
|
||||
ld [MonType], a
|
||||
predef Function5084a
|
||||
hlcoord 9, 0
|
||||
@ -7661,7 +7662,7 @@ endr
|
||||
call DelayFrames
|
||||
call Functiona80
|
||||
call Function30b4
|
||||
xor a
|
||||
xor a ; PARTYMON
|
||||
ld [MonType], a
|
||||
ld a, [CurSpecies]
|
||||
ld [wd265], a
|
||||
@ -7802,7 +7803,7 @@ Function3f136: ; 3f136
|
||||
push af
|
||||
xor a
|
||||
ld [DefaultFlypoint], a
|
||||
xor a
|
||||
xor a ; PARTYMON
|
||||
ld [MonType], a
|
||||
predef Function5084a
|
||||
ld a, [TempMonLevel]
|
||||
@ -8526,28 +8527,28 @@ Function3f594: ; 3f594
|
||||
ld [IsInBattle], a
|
||||
|
||||
call IsJohtoGymLeader
|
||||
jr nc, .asm_3f606
|
||||
jr nc, .done
|
||||
xor a
|
||||
ld [CurPartyMon], a
|
||||
ld a, [PartyCount]
|
||||
ld b, a
|
||||
.asm_3f5ea
|
||||
.partyloop
|
||||
push bc
|
||||
ld a, PartyMon1HP - PartyMon1
|
||||
call GetPartyParamLocation
|
||||
ld a, [hli]
|
||||
or [hl]
|
||||
jr z, .asm_3f5fc
|
||||
ld c, $4
|
||||
jr z, .skipfaintedmon
|
||||
ld c, HAPPINESS_GYMBATTLE
|
||||
callab ChangeHappiness
|
||||
.asm_3f5fc
|
||||
.skipfaintedmon
|
||||
pop bc
|
||||
dec b
|
||||
jr z, .asm_3f606
|
||||
jr z, .done
|
||||
ld hl, CurPartyMon
|
||||
inc [hl]
|
||||
jr .asm_3f5ea
|
||||
.asm_3f606
|
||||
jr .partyloop
|
||||
.done
|
||||
ret
|
||||
; 3f607
|
||||
|
||||
@ -8892,20 +8893,20 @@ Function3f85f: ; 3f85f
|
||||
add hl, de
|
||||
push hl
|
||||
ld de, wd00d
|
||||
ld bc, $0204
|
||||
lb bc, 2, 4
|
||||
call PrintNum
|
||||
pop hl
|
||||
ld de, $0005
|
||||
add hl, de
|
||||
push hl
|
||||
ld de, wd00f
|
||||
ld bc, $0204
|
||||
lb bc, 2, 4
|
||||
call PrintNum
|
||||
pop hl
|
||||
ld de, $0005
|
||||
add hl, de
|
||||
ld de, wd011
|
||||
ld bc, $0204
|
||||
lb bc, 2, 4
|
||||
call PrintNum
|
||||
jr .asm_3f8cf
|
||||
|
||||
@ -8945,21 +8946,21 @@ Function3f85f: ; 3f85f
|
||||
call .asm_3f92b
|
||||
jr c, .asm_3f92a
|
||||
|
||||
ld bc, $0204
|
||||
lb bc, 2, 4
|
||||
call PrintNum
|
||||
|
||||
hlcoord 11, 4
|
||||
ld de, sLinkBattleLosses
|
||||
call .asm_3f92b
|
||||
|
||||
ld bc, $0204
|
||||
lb bc, 2, 4
|
||||
call PrintNum
|
||||
|
||||
hlcoord 16, 4
|
||||
ld de, sLinkBattleDraws
|
||||
call .asm_3f92b
|
||||
|
||||
ld bc, $0204
|
||||
lb bc, 2, 4
|
||||
call PrintNum
|
||||
|
||||
.asm_3f92a
|
||||
@ -9442,7 +9443,7 @@ Function3fc30: ; 3fc30
|
||||
Function3fc5b: ; 3fc5b
|
||||
ld hl, Sprites
|
||||
xor a
|
||||
ld [$ffaf], a
|
||||
ld [hConnectionStripLength], a
|
||||
ld b, $6
|
||||
ld e, $a8
|
||||
.asm_3fc65
|
||||
@ -9453,10 +9454,10 @@ Function3fc5b: ; 3fc5b
|
||||
inc hl
|
||||
ld [hl], e
|
||||
inc hl
|
||||
ld a, [$ffaf]
|
||||
ld a, [hConnectionStripLength]
|
||||
ld [hli], a
|
||||
inc a
|
||||
ld [$ffaf], a
|
||||
ld [hConnectionStripLength], a
|
||||
ld a, $1
|
||||
ld [hli], a
|
||||
ld a, d
|
||||
@ -9464,9 +9465,9 @@ Function3fc5b: ; 3fc5b
|
||||
ld d, a
|
||||
dec c
|
||||
jr nz, .asm_3fc69
|
||||
ld a, [$ffaf]
|
||||
ld a, [hConnectionStripLength]
|
||||
add $3
|
||||
ld [$ffaf], a
|
||||
ld [hConnectionStripLength], a
|
||||
ld a, e
|
||||
add $8
|
||||
ld e, a
|
||||
|
@ -1036,13 +1036,13 @@ BattleCommand04: ; 34555
|
||||
|
||||
ld a, [hBattleTurn]
|
||||
and a
|
||||
jr z, .asm_34570
|
||||
jr z, .proceed
|
||||
|
||||
ld hl, EnemyMonPP
|
||||
ld de, EnemySubStatus3
|
||||
ld bc, EnemyTurnsTaken
|
||||
|
||||
.asm_34570
|
||||
.proceed
|
||||
|
||||
; If we've gotten this far, this counts as a turn.
|
||||
ld a, [bc]
|
||||
@ -1390,7 +1390,7 @@ BattleCommand07: ; 346d2
|
||||
cp c
|
||||
jr z, .stab
|
||||
|
||||
jr .asm_3473a
|
||||
jr .SkipStab
|
||||
|
||||
.stab
|
||||
ld hl, CurDamage + 1
|
||||
@ -1412,13 +1412,13 @@ BattleCommand07: ; 346d2
|
||||
ld hl, TypeModifier
|
||||
set 7, [hl]
|
||||
|
||||
.asm_3473a
|
||||
.SkipStab
|
||||
ld a, BATTLE_VARS_MOVE_TYPE
|
||||
call GetBattleVar
|
||||
ld b, a
|
||||
ld hl, TypeMatchup
|
||||
|
||||
.asm_34743
|
||||
.TypesLoop
|
||||
ld a, [hli]
|
||||
|
||||
cp $ff
|
||||
@ -1426,38 +1426,39 @@ BattleCommand07: ; 346d2
|
||||
|
||||
; foresight
|
||||
cp $fe
|
||||
jr nz, .asm_34757
|
||||
jr nz, .SkipForesightCheck
|
||||
ld a, BATTLE_VARS_SUBSTATUS1_OPP
|
||||
call GetBattleVar
|
||||
bit SUBSTATUS_IDENTIFIED, a
|
||||
jr nz, .end
|
||||
|
||||
jr .asm_34743
|
||||
jr .TypesLoop
|
||||
|
||||
.asm_34757
|
||||
.SkipForesightCheck
|
||||
cp b
|
||||
jr nz, .asm_347b3
|
||||
jr nz, .SkipType
|
||||
ld a, [hl]
|
||||
cp d
|
||||
jr z, .asm_34763
|
||||
jr z, .GotMatchup
|
||||
cp e
|
||||
jr z, .asm_34763
|
||||
jr .asm_347b3
|
||||
jr z, .GotMatchup
|
||||
jr .SkipType
|
||||
|
||||
.asm_34763
|
||||
.GotMatchup
|
||||
push hl
|
||||
push bc
|
||||
inc hl
|
||||
ld a, [TypeModifier]
|
||||
and %10000000
|
||||
ld b, a
|
||||
; If the target is immune to the move, treat it as a miss and calculate the damage as 0
|
||||
ld a, [hl]
|
||||
and a
|
||||
jr nz, .asm_34775
|
||||
jr nz, .NotImmune
|
||||
inc a
|
||||
ld [AttackMissed], a
|
||||
xor a
|
||||
.asm_34775
|
||||
.NotImmune
|
||||
ld [hMultiplier], a
|
||||
add b
|
||||
ld [TypeModifier], a
|
||||
@ -1480,34 +1481,35 @@ BattleCommand07: ; 346d2
|
||||
ld b, a
|
||||
ld a, [hProduct + 3]
|
||||
or b
|
||||
jr z, .asm_347ab
|
||||
jr z, .ok ; This is a very convoluted way to get back that we've essentially dealt no damage.
|
||||
|
||||
ld a, $a
|
||||
; Take the product and divide it by 10.
|
||||
ld a, 10
|
||||
ld [hDivisor], a
|
||||
ld b, $4
|
||||
ld b, 4
|
||||
call Divide
|
||||
ld a, [hQuotient + 1]
|
||||
ld b, a
|
||||
ld a, [hQuotient + 2]
|
||||
or b
|
||||
jr nz, .asm_347ab
|
||||
jr nz, .ok
|
||||
|
||||
ld a, $1
|
||||
ld [$ffb6], a
|
||||
ld a, 1
|
||||
ld [hMultiplicand + 2], a
|
||||
|
||||
.asm_347ab
|
||||
ld a, [$ffb5]
|
||||
.ok
|
||||
ld a, [hMultiplicand + 1]
|
||||
ld [hli], a
|
||||
ld a, [$ffb6]
|
||||
ld a, [hMultiplicand + 2]
|
||||
ld [hl], a
|
||||
pop bc
|
||||
pop hl
|
||||
|
||||
.asm_347b3
|
||||
.SkipType
|
||||
rept 2
|
||||
inc hl
|
||||
endr
|
||||
jr .asm_34743
|
||||
jr .TypesLoop
|
||||
|
||||
.end
|
||||
call Function347c8
|
||||
@ -1545,32 +1547,32 @@ Function347d3: ; 347d3
|
||||
ld a, 10 ; 1.0
|
||||
ld [wd265], a
|
||||
ld hl, TypeMatchup
|
||||
.asm_347e7
|
||||
.TypesLoop
|
||||
ld a, [hli]
|
||||
cp $ff
|
||||
jr z, .asm_3482f
|
||||
jr z, .End
|
||||
cp $fe
|
||||
jr nz, .asm_347fb
|
||||
jr nz, .Next
|
||||
ld a, BATTLE_VARS_SUBSTATUS1_OPP
|
||||
call GetBattleVar
|
||||
bit SUBSTATUS_IDENTIFIED, a
|
||||
jr nz, .asm_3482f
|
||||
jr .asm_347e7
|
||||
.asm_347fb
|
||||
jr nz, .End
|
||||
jr .TypesLoop
|
||||
.Next
|
||||
cp d
|
||||
jr nz, .asm_34807
|
||||
jr nz, .Nope
|
||||
ld a, [hli]
|
||||
cp b
|
||||
jr z, .asm_3480b
|
||||
jr z, .Yup
|
||||
cp c
|
||||
jr z, .asm_3480b
|
||||
jr .asm_34808
|
||||
.asm_34807
|
||||
jr z, .Yup
|
||||
jr .Nope2
|
||||
.Nope
|
||||
inc hl
|
||||
.asm_34808
|
||||
.Nope2
|
||||
inc hl
|
||||
jr .asm_347e7
|
||||
.asm_3480b
|
||||
jr .TypesLoop
|
||||
.Yup
|
||||
xor a
|
||||
ld [hDividend + 0], a
|
||||
ld [hMultiplicand + 0], a
|
||||
@ -1588,9 +1590,9 @@ Function347d3: ; 347d3
|
||||
pop bc
|
||||
ld a, [hQuotient + 2]
|
||||
ld [wd265], a
|
||||
jr .asm_347e7
|
||||
jr .TypesLoop
|
||||
|
||||
.asm_3482f
|
||||
.End
|
||||
pop bc
|
||||
pop de
|
||||
pop hl
|
||||
@ -1603,14 +1605,14 @@ BattleCommanda3: ; 34833
|
||||
ld a, [wd265]
|
||||
and a
|
||||
ld a, 10 ; 1.0
|
||||
jr nz, .asm_3484a
|
||||
jr nz, .skip
|
||||
call ResetDamage
|
||||
xor a
|
||||
ld [TypeModifier], a
|
||||
inc a
|
||||
ld [AttackMissed], a
|
||||
ret
|
||||
.asm_3484a
|
||||
.skip
|
||||
ld [wd265], a
|
||||
ret
|
||||
; 3484e
|
||||
@ -6098,7 +6100,7 @@ BattleCommand7d: ; 361e0
|
||||
jr BattleCommand1c
|
||||
BattleCommand1c: ; 361e4
|
||||
; statup
|
||||
call Function361ef
|
||||
call CheckIfStatCanBeRaised
|
||||
ld a, [FailedMessage]
|
||||
and a
|
||||
ret nz
|
||||
@ -6106,7 +6108,7 @@ BattleCommand1c: ; 361e4
|
||||
; 361ef
|
||||
|
||||
|
||||
Function361ef: ; 361ef
|
||||
CheckIfStatCanBeRaised: ; 361ef
|
||||
ld a, b
|
||||
ld [LoweredStat], a
|
||||
ld hl, PlayerStatLevels
|
||||
|
259
battle/misc.asm
Normal file
259
battle/misc.asm
Normal file
@ -0,0 +1,259 @@
|
||||
Functionfbd54: ; fbd54
|
||||
xor a
|
||||
ld [hBGMapMode], a ; $ff00+$d4
|
||||
ld a, [hBattleTurn] ; $ff00+$e4
|
||||
and a
|
||||
jr z, .asm_fbd61
|
||||
call Functionfbd96
|
||||
jr .asm_fbd64
|
||||
.asm_fbd61
|
||||
call Functionfbd9d
|
||||
.asm_fbd64
|
||||
call ClearBox
|
||||
jr Functionfbd91
|
||||
|
||||
Functionfbd69: ; fbd69 (3e:7d69)
|
||||
callba BattleCommanda6
|
||||
jr Functionfbd77
|
||||
|
||||
Functionfbd71: ; fbd71 (3e:7d71)
|
||||
callba BattleCommanda7
|
||||
|
||||
Functionfbd77: ; fbd77 (3e:7d77)
|
||||
xor a
|
||||
ld [hBGMapMode], a ; $ff00+$d4
|
||||
ld a, [hBattleTurn] ; $ff00+$e4
|
||||
and a
|
||||
jr z, .asm_fbd85
|
||||
call Functionfbd96
|
||||
xor a
|
||||
jr .asm_fbd8a
|
||||
.asm_fbd85
|
||||
call Functionfbd9d
|
||||
ld a, $31
|
||||
.asm_fbd8a
|
||||
ld [$ffad], a
|
||||
predef FillBox
|
||||
Functionfbd91: ; fbd91 (3e:7d91)
|
||||
ld a, $1
|
||||
ld [hBGMapMode], a ; $ff00+$d4
|
||||
ret
|
||||
|
||||
Functionfbd96: ; fbd96 (3e:7d96)
|
||||
hlcoord 12, 0
|
||||
lb bc, 7, 7
|
||||
ret
|
||||
|
||||
Functionfbd9d: ; fbd9d (3e:7d9d)
|
||||
hlcoord 2, 6
|
||||
lb bc, 6, 6
|
||||
ret
|
||||
|
||||
|
||||
DoWeatherModifiers: ; fbda4
|
||||
|
||||
ld de, .WeatherTypeModifiers
|
||||
ld a, [Weather]
|
||||
ld b, a
|
||||
ld a, [wd265] ; move type
|
||||
ld c, a
|
||||
|
||||
.CheckWeatherType
|
||||
ld a, [de]
|
||||
inc de
|
||||
cp $ff
|
||||
jr z, .asm_fbdc0
|
||||
|
||||
cp b
|
||||
jr nz, .NextWeatherType
|
||||
|
||||
ld a, [de]
|
||||
cp c
|
||||
jr z, .ApplyModifier
|
||||
|
||||
.NextWeatherType
|
||||
rept 2
|
||||
inc de
|
||||
endr
|
||||
jr .CheckWeatherType
|
||||
|
||||
|
||||
.asm_fbdc0
|
||||
ld de, .WeatherMoveModifiers
|
||||
|
||||
ld a, BATTLE_VARS_MOVE_EFFECT
|
||||
call GetBattleVar
|
||||
ld c, a
|
||||
|
||||
.CheckWeatherMove
|
||||
ld a, [de]
|
||||
inc de
|
||||
cp $ff
|
||||
jr z, .done
|
||||
|
||||
cp b
|
||||
jr nz, .NextWeatherMove
|
||||
|
||||
ld a, [de]
|
||||
cp c
|
||||
jr z, .ApplyModifier
|
||||
|
||||
.NextWeatherMove
|
||||
rept 2
|
||||
inc de
|
||||
endr
|
||||
jr .CheckWeatherMove
|
||||
|
||||
.ApplyModifier
|
||||
xor a
|
||||
ld [hMultiplicand + 0], a
|
||||
ld hl, CurDamage
|
||||
ld a, [hli]
|
||||
ld [hMultiplicand + 1], a
|
||||
ld a, [hl]
|
||||
ld [hMultiplicand + 2], a
|
||||
|
||||
inc de
|
||||
ld a, [de]
|
||||
ld [hMultiplier], a
|
||||
|
||||
call Multiply
|
||||
|
||||
ld a, 10
|
||||
ld [hDivisor], a
|
||||
ld b, $4
|
||||
call Divide
|
||||
|
||||
ld a, [hQuotient + 0]
|
||||
and a
|
||||
ld bc, -1
|
||||
jr nz, .Update
|
||||
|
||||
ld a, [hQuotient + 1]
|
||||
ld b, a
|
||||
ld a, [hQuotient + 2]
|
||||
ld c, a
|
||||
or b
|
||||
jr nz, .Update
|
||||
|
||||
ld bc, 1
|
||||
|
||||
.Update
|
||||
ld a, b
|
||||
ld [CurDamage], a
|
||||
ld a, c
|
||||
ld [CurDamage + 1], a
|
||||
|
||||
.done
|
||||
ret
|
||||
|
||||
.WeatherTypeModifiers
|
||||
db WEATHER_RAIN, WATER, 15
|
||||
db WEATHER_RAIN, FIRE, 05
|
||||
db WEATHER_SUN, FIRE, 15
|
||||
db WEATHER_SUN, WATER, 05
|
||||
db $ff
|
||||
|
||||
.WeatherMoveModifiers
|
||||
db WEATHER_RAIN, EFFECT_SOLARBEAM, 05
|
||||
db $ff
|
||||
; fbe24
|
||||
|
||||
|
||||
DoBadgeTypeBoosts: ; fbe24
|
||||
ld a, [InLinkBattle]
|
||||
and a
|
||||
ret nz
|
||||
|
||||
ld a, [InBattleTowerBattle]
|
||||
and a
|
||||
ret nz
|
||||
|
||||
ld a, [hBattleTurn]
|
||||
and a
|
||||
ret nz
|
||||
|
||||
push de
|
||||
push bc
|
||||
|
||||
ld hl, .BadgeTypes
|
||||
|
||||
ld a, [KantoBadges]
|
||||
ld b, a
|
||||
ld a, [JohtoBadges]
|
||||
ld c, a
|
||||
|
||||
.CheckBadge
|
||||
ld a, [hl]
|
||||
cp $ff
|
||||
jr z, .done
|
||||
|
||||
srl b
|
||||
rr c
|
||||
jr nc, .NextBadge
|
||||
|
||||
ld a, [wd265] ; move type
|
||||
cp [hl]
|
||||
jr z, .ApplyBoost
|
||||
|
||||
.NextBadge
|
||||
inc hl
|
||||
jr .CheckBadge
|
||||
|
||||
.ApplyBoost
|
||||
ld a, [CurDamage]
|
||||
ld h, a
|
||||
ld d, a
|
||||
ld a, [CurDamage + 1]
|
||||
ld l, a
|
||||
ld e, a
|
||||
|
||||
srl d
|
||||
rr e
|
||||
srl d
|
||||
rr e
|
||||
srl d
|
||||
rr e
|
||||
|
||||
ld a, e
|
||||
or d
|
||||
jr nz, .asm_fbe6f
|
||||
ld e, 1
|
||||
|
||||
.asm_fbe6f
|
||||
add hl, de
|
||||
jr nc, .Update
|
||||
|
||||
ld hl, $ffff
|
||||
|
||||
.Update
|
||||
ld a, h
|
||||
ld [CurDamage], a
|
||||
ld a, l
|
||||
ld [CurDamage + 1], a
|
||||
|
||||
.done
|
||||
pop bc
|
||||
pop de
|
||||
ret
|
||||
|
||||
.BadgeTypes
|
||||
db FLYING ; zephyrbadge
|
||||
db BUG ; hivebadge
|
||||
db NORMAL ; plainbadge
|
||||
db GHOST ; fogbadge
|
||||
db STEEL ; mineralbadge
|
||||
db FIGHTING ; stormbadge
|
||||
db ICE ; glacierbadge
|
||||
db DRAGON ; risingbadge
|
||||
|
||||
db ROCK ; boulderbadge
|
||||
db WATER ; cascadebadge
|
||||
db ELECTRIC ; thunderbadge
|
||||
db GRASS ; rainbowbadge
|
||||
db POISON ; soulbadge
|
||||
db PSYCHIC ; marshbadge
|
||||
db FIRE ; volcanobadge
|
||||
db GROUND ; earthbadge
|
||||
db $ff
|
||||
; fbe91
|
@ -51,35 +51,36 @@ const_value = 1
|
||||
const SET_UP_ORNAMENT
|
||||
const PUT_AWAY_ORNAMENT
|
||||
|
||||
const_value = 2
|
||||
const_value = 1
|
||||
const DECO_01
|
||||
const DECO_FEATHERY_BED ; 2
|
||||
const DECO_PINK_BED ; 3
|
||||
const DECO_POLKADOT_BED ; 4
|
||||
const DECO_PIKACHU_BED ; 5
|
||||
const_value = const_value + 1
|
||||
const DECO_06
|
||||
const DECO_RED_CARPET ; 7
|
||||
const DECO_BLUE_CARPET ; 8
|
||||
const DECO_YELLOW_CARPET ; 9
|
||||
const DECO_GREEN_CARPET ; a
|
||||
const_value = const_value + 1
|
||||
const DECO_0B
|
||||
const DECO_MAGNAPLANT ; c
|
||||
const DECO_TROPICPLANT ; d
|
||||
const DECO_JUMBOPLANT ; e
|
||||
const_value = const_value + 1
|
||||
const DECO_0F
|
||||
const DECO_TOWN_MAP ; 10
|
||||
const DECO_PIKACHU_POSTER ; 11
|
||||
const DECO_CLEFAIRY_POSTER ; 12
|
||||
const DECO_JIGGLYPUFF_POSTER ; 13
|
||||
const_value = const_value + 1
|
||||
const DECO_14
|
||||
const DECO_FAMICOM ; 15
|
||||
const DECO_SNES ; 16
|
||||
const DECO_N64 ; 17
|
||||
const DECO_VIRTUAL_BOY ; 18
|
||||
const_value = const_value + 1
|
||||
const DECO_19
|
||||
const DECO_BIG_SNORLAX_DOLL ; 1a
|
||||
const DECO_BIG_ONIX_DOLL ; 1b
|
||||
const DECO_BIG_LAPRAS_DOLL ; 1c
|
||||
const_value = const_value + 1
|
||||
const DECO_1D
|
||||
const DECO_PIKACHU_DOLL ; 1e
|
||||
const DECO_SURF_PIKACHU_DOLL ; 1f
|
||||
const DECO_CLEFAIRY_DOLL ; 20
|
||||
|
@ -113,3 +113,36 @@ BATTLETOWER_NROFPKMNS EQU 3
|
||||
BATTLETOWER_TRAINERDATALENGTH EQU $24
|
||||
BATTLETOWER_NROFTRAINERS EQU 7
|
||||
|
||||
NUM_WILDMONS_PER_AREA_TIME_OF_DAY EQU 7
|
||||
WILDMON_GRASS_STRUCTURE_LENGTH EQU 2 + 3 * (1 + 2 * NUM_WILDMONS_PER_AREA_TIME_OF_DAY)
|
||||
|
||||
|
||||
PRINTNUM_MONEY_F EQU 5
|
||||
PRINTNUM_RIGHTALIGN_F EQU 6
|
||||
PRINTNUM_LEADINGZEROS_F EQU 7
|
||||
|
||||
PRINTNUM_MONEY EQU 1 << PRINTNUM_MONEY_F
|
||||
PRINTNUM_RIGHTALIGN EQU 1 << PRINTNUM_RIGHTALIGN_F
|
||||
PRINTNUM_LEADINGZEROS EQU 1 << PRINTNUM_LEADINGZEROS_F
|
||||
|
||||
const_value = 1
|
||||
const HAPPINESS_GAINLEVEL ; 01
|
||||
const HAPPINESS_USEDITEM ; 02
|
||||
const HAPPINESS_USEDXITEM ; 03
|
||||
const HAPPINESS_GYMBATTLE ; 04
|
||||
const HAPPINESS_LEARNMOVE ; 05
|
||||
const HAPPINESS_FAINTED ; 06
|
||||
const HAPPINESS_POISONFAINT ; 07
|
||||
const HAPPINESS_BEATENBYSTRONGFOE ; 08
|
||||
const HAPPINESS_YOUNGCUT1 ; 09
|
||||
const HAPPINESS_YOUNGCUT2 ; 0a
|
||||
const HAPPINESS_YOUNGCUT3 ; 0b
|
||||
const HAPPINESS_OLDERCUT1 ; 0c
|
||||
const HAPPINESS_OLDERCUT2 ; 0d
|
||||
const HAPPINESS_OLDERCUT3 ; 0e
|
||||
const HAPPINESS_BITTERPOWDER ; 0f
|
||||
const HAPPINESS_ENERGYROOT ; 10
|
||||
const HAPPINESS_REVIVALHERB ; 11
|
||||
const HAPPINESS_MASSAGE ; 12
|
||||
const HAPPINESS_GAINLEVELATHOME ; 13
|
||||
|
||||
|
@ -1,15 +1,92 @@
|
||||
const_def
|
||||
const OAKS_POKEMON_TALK
|
||||
const POKEDEX_SHOW
|
||||
const POKEMON_MUSIC
|
||||
const LUCKY_CHANNEL
|
||||
const BUENAS_PASSWORD
|
||||
const PLACES_AND_PEOPLE
|
||||
const LETS_ALL_SING
|
||||
const ROCKET_RADIO
|
||||
const POKE_FLUTE_RADIO
|
||||
const UNOWN_RADIO
|
||||
const EVOLUTION_RADIO
|
||||
const OAKS_POKEMON_TALK ; $00
|
||||
const POKEDEX_SHOW ; $01
|
||||
const POKEMON_MUSIC ; $02
|
||||
const LUCKY_CHANNEL ; $03
|
||||
const BUENAS_PASSWORD ; $04
|
||||
const PLACES_AND_PEOPLE ; $05
|
||||
const LETS_ALL_SING ; $06
|
||||
const ROCKET_RADIO ; $07
|
||||
const POKE_FLUTE_RADIO ; $08
|
||||
const UNOWN_RADIO ; $09
|
||||
const EVOLUTION_RADIO ; $0a
|
||||
const OAKS_POKEMON_TALK_2 ; $0b
|
||||
const OAKS_POKEMON_TALK_3 ; $0c
|
||||
const OAKS_POKEMON_TALK_4 ; $0d
|
||||
const OAKS_POKEMON_TALK_5 ; $0e
|
||||
const OAKS_POKEMON_TALK_6 ; $0f
|
||||
const OAKS_POKEMON_TALK_7 ; $10
|
||||
const OAKS_POKEMON_TALK_8 ; $11
|
||||
const OAKS_POKEMON_TALK_9 ; $12
|
||||
const POKEDEX_SHOW_2 ; $13
|
||||
const POKEDEX_SHOW_3 ; $14
|
||||
const POKEDEX_SHOW_4 ; $15
|
||||
const POKEDEX_SHOW_5 ; $16
|
||||
const POKEMON_MUSIC_2 ; $17
|
||||
const POKEMON_MUSIC_3 ; $18
|
||||
const POKEMON_MUSIC_4 ; $19
|
||||
const POKEMON_MUSIC_5 ; $1a
|
||||
const POKEMON_MUSIC_6 ; $1b
|
||||
const POKEMON_MUSIC_7 ; $1c
|
||||
const LETS_ALL_SING_2 ; $1d
|
||||
const LUCKY_NUMBER_SHOW_2 ; $1e
|
||||
const LUCKY_NUMBER_SHOW_3 ; $1f
|
||||
const LUCKY_NUMBER_SHOW_4 ; $20
|
||||
const LUCKY_NUMBER_SHOW_5 ; $21
|
||||
const LUCKY_NUMBER_SHOW_6 ; $22
|
||||
const LUCKY_NUMBER_SHOW_7 ; $23
|
||||
const LUCKY_NUMBER_SHOW_8 ; $24
|
||||
const LUCKY_NUMBER_SHOW_9 ; $25
|
||||
const LUCKY_NUMBER_SHOW_10 ; $26
|
||||
const LUCKY_NUMBER_SHOW_11 ; $27
|
||||
const LUCKY_NUMBER_SHOW_12 ; $28
|
||||
const LUCKY_NUMBER_SHOW_13 ; $29
|
||||
const LUCKY_NUMBER_SHOW_14 ; $2a
|
||||
const LUCKY_NUMBER_SHOW_15 ; $2b
|
||||
const PLACES_AND_PEOPLE_2 ; $2c
|
||||
const PLACES_AND_PEOPLE_3 ; $2d
|
||||
const PLACES_AND_PEOPLE_4 ; $2e
|
||||
const PLACES_AND_PEOPLE_5 ; $2f
|
||||
const PLACES_AND_PEOPLE_6 ; $30
|
||||
const PLACES_AND_PEOPLE_7 ; $31
|
||||
const ROCKET_RADIO_2 ; $32
|
||||
const ROCKET_RADIO_3 ; $33
|
||||
const ROCKET_RADIO_4 ; $34
|
||||
const ROCKET_RADIO_5 ; $35
|
||||
const ROCKET_RADIO_6 ; $36
|
||||
const ROCKET_RADIO_7 ; $37
|
||||
const ROCKET_RADIO_8 ; $38
|
||||
const ROCKET_RADIO_9 ; $39
|
||||
const ROCKET_RADIO_10 ; $3a
|
||||
const OAKS_POKEMON_TALK_10 ; $3b
|
||||
const OAKS_POKEMON_TALK_11 ; $3c
|
||||
const OAKS_POKEMON_TALK_12 ; $3d
|
||||
const OAKS_POKEMON_TALK_13 ; $3e
|
||||
const OAKS_POKEMON_TALK_14 ; $3f
|
||||
const BUENAS_PASSWORD_2 ; $40
|
||||
const BUENAS_PASSWORD_3 ; $41
|
||||
const BUENAS_PASSWORD_4 ; $42
|
||||
const BUENAS_PASSWORD_5 ; $43
|
||||
const BUENAS_PASSWORD_6 ; $44
|
||||
const BUENAS_PASSWORD_7 ; $45
|
||||
const BUENAS_PASSWORD_8 ; $46
|
||||
const BUENAS_PASSWORD_9 ; $47
|
||||
const BUENAS_PASSWORD_10 ; $48
|
||||
const BUENAS_PASSWORD_11 ; $49
|
||||
const BUENAS_PASSWORD_12 ; $4a
|
||||
const BUENAS_PASSWORD_13 ; $4b
|
||||
const BUENAS_PASSWORD_14 ; $4c
|
||||
const BUENAS_PASSWORD_15 ; $4d
|
||||
const BUENAS_PASSWORD_16 ; $4e
|
||||
const BUENAS_PASSWORD_17 ; $4f
|
||||
const BUENAS_PASSWORD_18 ; $50
|
||||
const BUENAS_PASSWORD_19 ; $51
|
||||
const BUENAS_PASSWORD_20 ; $52
|
||||
const BUENAS_PASSWORD_21 ; $53
|
||||
const RADIO_SCROLL ; $54
|
||||
const POKEDEX_SHOW_6 ; $55
|
||||
const POKEDEX_SHOW_7 ; $56
|
||||
const POKEDEX_SHOW_8 ; $57
|
||||
|
||||
const_def
|
||||
const BUENA_MON
|
||||
|
@ -72,3 +72,7 @@ PLAYER_SURF_PIKA EQU 8
|
||||
|
||||
OBJECT_STRUCT_LENGTH EQU 40
|
||||
NUM_OBJECT_STRUCTS EQU 13
|
||||
|
||||
; After-Champion Spawn
|
||||
SPAWN_LANCE EQU 1
|
||||
SPAWN_RED EQU 2
|
||||
|
@ -70,12 +70,12 @@ Function1dd7ae: ; 1dd7ae
|
||||
call PlaceString
|
||||
hlcoord 12, 15
|
||||
ld de, GameTimeHours
|
||||
ld bc, $0204
|
||||
lb bc, 2, 4
|
||||
call PrintNum
|
||||
ld [hl], $67
|
||||
inc hl
|
||||
ld de, GameTimeMinutes
|
||||
ld bc, $8102
|
||||
lb bc, PRINTNUM_LEADINGZEROS | 1, 2
|
||||
call PrintNum
|
||||
ret
|
||||
; 1dd7f0
|
||||
|
@ -97,7 +97,7 @@
|
||||
dwb VisitedSpawns + 3, %00000100 ; silver cave
|
||||
dwb VisitedSpawns + 3, %00010000 ; unused
|
||||
|
||||
dwb wdc9d, %00000001 ; lucky number show
|
||||
dwb wLuckyNumberShowFlag, %00000001 ; lucky number show
|
||||
dwb StatusFlags2, %00001000
|
||||
|
||||
dwb DailyFlags, %00000001 ; kurt making balls ; $50
|
||||
|
@ -121,7 +121,7 @@ StartMap: ; 96724
|
||||
xor a
|
||||
ld [ScriptRunning], a
|
||||
ld hl, MapStatus
|
||||
ld bc, $3e
|
||||
ld bc, $3e ; 62
|
||||
call ByteFill
|
||||
callba Function113e5
|
||||
call ClearJoypad
|
||||
@ -133,17 +133,17 @@ EnterMap: ; 9673e
|
||||
xor a
|
||||
ld [wd453], a
|
||||
ld [wd454], a
|
||||
call Function968d1
|
||||
call SetUpFiveStepWildEncounterCooldown
|
||||
callba RunMapSetupScript
|
||||
call ClearAllScriptFlags3
|
||||
|
||||
ld a, [$ff9f]
|
||||
ld a, [hMapEntryMethod]
|
||||
cp $f7
|
||||
jr nz, .dontset
|
||||
call SetAll_ScriptFlags3
|
||||
.dontset
|
||||
|
||||
ld a, [$ff9f]
|
||||
ld a, [hMapEntryMethod]
|
||||
cp $f3
|
||||
jr nz, .dontresetpoison
|
||||
xor a
|
||||
@ -151,7 +151,7 @@ EnterMap: ; 9673e
|
||||
.dontresetpoison
|
||||
|
||||
xor a
|
||||
ld [$ff9f], a
|
||||
ld [hMapEntryMethod], a
|
||||
ld a, 2 ; HandleMap
|
||||
ld [MapStatus], a
|
||||
ret
|
||||
@ -382,9 +382,9 @@ CheckTileEvent: ; 96874
|
||||
call CheckBit4_ScriptFlags3
|
||||
jr z, .ok
|
||||
|
||||
call RockSmashEncounter
|
||||
call RandomEncounter
|
||||
ret c
|
||||
jr .ok
|
||||
jr .ok ; pointless
|
||||
|
||||
.ok
|
||||
xor a
|
||||
@ -419,8 +419,8 @@ CheckTileEvent: ; 96874
|
||||
; 968c7
|
||||
|
||||
|
||||
Function968c7:: ; 968c7
|
||||
ld hl, wd452
|
||||
CheckWildEncounterCooldown:: ; 968c7
|
||||
ld hl, wWildEncounterCooldown
|
||||
ld a, [hl]
|
||||
and a
|
||||
ret z
|
||||
@ -430,9 +430,9 @@ Function968c7:: ; 968c7
|
||||
ret
|
||||
; 968d1
|
||||
|
||||
Function968d1: ; 968d1
|
||||
SetUpFiveStepWildEncounterCooldown: ; 968d1
|
||||
ld a, 5
|
||||
ld [wd452], a
|
||||
ld [wWildEncounterCooldown], a
|
||||
ret
|
||||
; 968d7
|
||||
|
||||
@ -441,11 +441,11 @@ Function968d7: ; 968d7
|
||||
; 968d8
|
||||
|
||||
Function968d8: ; 968d8
|
||||
ld a, [wd452]
|
||||
ld a, [wWildEncounterCooldown]
|
||||
cp 2
|
||||
ret nc
|
||||
ld a, 2
|
||||
ld [wd452], a
|
||||
ld [wWildEncounterCooldown], a
|
||||
ret
|
||||
; 968e4
|
||||
|
||||
|
@ -95,10 +95,10 @@ CheckFacingTileEvent:: ; 97c5f
|
||||
; 97cc0
|
||||
|
||||
|
||||
RockSmashEncounter:: ; 97cc0
|
||||
; Rock Smash encounter
|
||||
RandomEncounter:: ; 97cc0
|
||||
; Random encounter
|
||||
|
||||
call Function968c7
|
||||
call CheckWildEncounterCooldown
|
||||
jr c, .nope
|
||||
call CanUseSweetScent
|
||||
jr nc, .nope
|
||||
@ -120,8 +120,8 @@ RockSmashEncounter:: ; 97cc0
|
||||
ret
|
||||
|
||||
.ok
|
||||
ld a, BANK(RockSmashBattleScript)
|
||||
ld hl, RockSmashBattleScript
|
||||
ld a, BANK(WildBattleScript)
|
||||
ld hl, WildBattleScript
|
||||
jr .done
|
||||
|
||||
.ok_bug_contest
|
||||
@ -135,7 +135,7 @@ RockSmashEncounter:: ; 97cc0
|
||||
ret
|
||||
; 97cf9
|
||||
|
||||
RockSmashBattleScript: ; 97cf9
|
||||
WildBattleScript: ; 97cf9
|
||||
battlecheck
|
||||
startbattle
|
||||
returnafterbattle
|
||||
|
@ -1499,7 +1499,7 @@ Function4af0: ; 4af0
|
||||
add hl, bc
|
||||
ld [hl], 2
|
||||
ld hl, wd4cf
|
||||
ld a, [$ffaf]
|
||||
ld a, [hConnectionStripLength]
|
||||
cp [hl]
|
||||
jr z, .ok
|
||||
ld hl, OBJECT_09
|
||||
@ -2508,7 +2508,7 @@ Function54b8: ; 54b8
|
||||
ret z
|
||||
ld a, [wd4cd]
|
||||
ld d, a
|
||||
ld a, [$ffaf]
|
||||
ld a, [hConnectionStripLength]
|
||||
cp d
|
||||
ret nz
|
||||
ld a, e
|
||||
@ -2651,7 +2651,7 @@ Function5565: ; 5565
|
||||
|
||||
Function5579: ; 5579
|
||||
push bc
|
||||
ld a, [$ffaf]
|
||||
ld a, [hConnectionStripLength]
|
||||
ld c, a
|
||||
call Function5582
|
||||
pop bc
|
||||
@ -2712,7 +2712,7 @@ Function55b9: ; 55b9
|
||||
ld [hli], a
|
||||
ld a, [de]
|
||||
ld [hli], a
|
||||
ld a, [$ffaf]
|
||||
ld a, [hConnectionStripLength]
|
||||
ld [hli], a
|
||||
push hl
|
||||
ld hl, OBJECT_MAP_X
|
||||
@ -2737,7 +2737,7 @@ Function55e0:: ; 55e0
|
||||
ld bc, ObjectStructs
|
||||
xor a
|
||||
.loop
|
||||
ld [$ffaf], a
|
||||
ld [hConnectionStripLength], a
|
||||
call GetObjectSprite
|
||||
jr z, .ok
|
||||
call Function565c
|
||||
@ -2747,7 +2747,7 @@ Function55e0:: ; 55e0
|
||||
add hl, bc
|
||||
ld b, h
|
||||
ld c, l
|
||||
ld a, [$ffaf]
|
||||
ld a, [hConnectionStripLength]
|
||||
inc a
|
||||
cp NUM_OBJECT_STRUCTS
|
||||
jr nz, .loop
|
||||
@ -2801,13 +2801,13 @@ Function5645: ; 5645
|
||||
xor a
|
||||
ld bc, ObjectStructs
|
||||
.loop
|
||||
ld [$ffaf], a
|
||||
ld [hConnectionStripLength], a
|
||||
call Function5680
|
||||
ld hl, OBJECT_STRUCT_LENGTH
|
||||
add hl, bc
|
||||
ld b, h
|
||||
ld c, l
|
||||
ld a, [$ffaf]
|
||||
ld a, [hConnectionStripLength]
|
||||
inc a
|
||||
cp NUM_OBJECT_STRUCTS
|
||||
jr nz, .loop
|
||||
@ -3032,7 +3032,7 @@ Function5781: ; 5781
|
||||
ld bc, ObjectStructs
|
||||
xor a
|
||||
.loop
|
||||
ld [$ffaf], a
|
||||
ld [hConnectionStripLength], a
|
||||
call GetObjectSprite
|
||||
jr z, .next
|
||||
call Function437b
|
||||
@ -3042,7 +3042,7 @@ Function5781: ; 5781
|
||||
add hl, bc
|
||||
ld b, h
|
||||
ld c, l
|
||||
ld a, [$ffaf]
|
||||
ld a, [hConnectionStripLength]
|
||||
inc a
|
||||
cp NUM_OBJECT_STRUCTS
|
||||
jr nz, .loop
|
||||
|
@ -1,6 +1,6 @@
|
||||
|
||||
RunMapSetupScript:: ; 15363
|
||||
ld a, [$ff9f]
|
||||
ld a, [hMapEntryMethod]
|
||||
and $f
|
||||
dec a
|
||||
ld c, a
|
||||
|
@ -217,7 +217,7 @@ Function4013c: ; 4013c (10:413c)
|
||||
call ByteFill
|
||||
callba Function1de171
|
||||
hlcoord 0, 17
|
||||
ld de, Unknown_407f2
|
||||
ld de, String_START_SEARCH
|
||||
call Function40acd
|
||||
ld a, $7
|
||||
ld [wc7d3], a
|
||||
@ -246,7 +246,7 @@ Function4013c: ; 4013c (10:413c)
|
||||
call Function41148
|
||||
callba Function1de171
|
||||
hlcoord 0, 17
|
||||
ld de, Unknown_407f2
|
||||
ld de, String_START_SEARCH
|
||||
call Function40acd
|
||||
ld a, $7
|
||||
ld [wc7d3], a
|
||||
@ -1068,7 +1068,7 @@ Function40741: ; 40741
|
||||
|
||||
Function4074c: ; 4074c (10:474c)
|
||||
hlcoord 0, 17
|
||||
ld de, Unknown_407f2
|
||||
ld de, String_START_SEARCH
|
||||
call Function40acd
|
||||
ld a, $32
|
||||
hlcoord 0, 0
|
||||
@ -1081,27 +1081,27 @@ Function4074c: ; 4074c (10:474c)
|
||||
ld bc, $607
|
||||
call Function40ad5
|
||||
hlcoord 1, 11
|
||||
ld de, Unknown_407e1
|
||||
ld de, String_SEEN
|
||||
call Function40acd
|
||||
ld hl, PokedexSeen ; wdeb9 (aliases: EndPokedexSeen)
|
||||
ld b, EndPokedexSeen - PokedexSeen
|
||||
call CountSetBits
|
||||
ld de, wd265
|
||||
hlcoord 5, 12
|
||||
ld bc, $103
|
||||
lb bc, 1, 3
|
||||
call PrintNum
|
||||
hlcoord 1, 14
|
||||
ld de, Unknown_407e6
|
||||
ld de, String_OWN
|
||||
call Function40acd
|
||||
ld hl, PokedexCaught
|
||||
ld b, EndPokedexCaught - PokedexCaught
|
||||
call CountSetBits
|
||||
ld de, wd265
|
||||
hlcoord 5, 15
|
||||
ld bc, $103
|
||||
lb bc, 1, 3
|
||||
call PrintNum
|
||||
hlcoord 1, 17
|
||||
ld de, Unknown_407ea
|
||||
ld de, String_SELECT_OPTION
|
||||
call Function40acd
|
||||
hlcoord 8, 1
|
||||
ld b, $7
|
||||
@ -1123,13 +1123,13 @@ Function4074c: ; 4074c (10:474c)
|
||||
ret
|
||||
; 407e1 (10:47e1)
|
||||
|
||||
Unknown_407e1: ; 407e1
|
||||
String_SEEN: ; 407e1
|
||||
db "SEEN", $ff
|
||||
Unknown_407e6: ; 407e6
|
||||
String_OWN: ; 407e6
|
||||
db "OWN", $ff
|
||||
Unknown_407ea: ; 407ea
|
||||
String_SELECT_OPTION: ; 407ea
|
||||
db $3b, $48, $49, $4a, $44, $45, $46, $47 ; SELECT > OPTION
|
||||
Unknown_407f2: ; 407f2
|
||||
String_START_SEARCH: ; 407f2
|
||||
db $3c, $3b, $41, $42, $43, $4b, $4c, $4d, $4e, $3c, $ff ; START > SEARCH
|
||||
; 407fd
|
||||
|
||||
@ -1270,7 +1270,7 @@ Function40962: ; 40962 (10:4962)
|
||||
call PlaceString
|
||||
ld de, wc7d7
|
||||
hlcoord 1, 16
|
||||
ld bc, $103
|
||||
lb bc, 1, 3
|
||||
call PrintNum
|
||||
hlcoord 8, 0
|
||||
ld [hl], $59
|
||||
@ -1541,7 +1541,7 @@ Function40b6a: ; 40b6a (10:4b6a)
|
||||
ld de, -20
|
||||
add hl, de
|
||||
ld de, wd265
|
||||
ld bc, $8103
|
||||
lb bc, PRINTNUM_LEADINGZEROS | 1, 3
|
||||
call PrintNum
|
||||
pop hl
|
||||
ret
|
||||
@ -2360,7 +2360,7 @@ Function413f5: ; 413f5 (10:53f5)
|
||||
ret
|
||||
|
||||
Function413fe: ; 413fe (10:53fe)
|
||||
jp Functionfb8
|
||||
jp FillBoxWithByte
|
||||
|
||||
Function41401: ; 41401 (10:5401)
|
||||
ld a, [rSVBK] ; $ff00+$70
|
||||
|
@ -36,7 +36,7 @@ PredefPointers:: ; 856b
|
||||
add_predef FlagPredef
|
||||
add_predef Functionc699
|
||||
add_predef FillPP
|
||||
add_predef Functiond88c
|
||||
add_predef TryAddMonToParty
|
||||
add_predef Functionda96
|
||||
add_predef Functiondb3f ; $8
|
||||
add_predef SentPkmnIntoBox
|
||||
|
786
engine/radio.asm
786
engine/radio.asm
File diff suppressed because it is too large
Load Diff
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user