You've already forked pokecrystal-board
mirror of
https://gitlab.com/xCrystal/pokecrystal-board.git
synced 2025-04-09 05:44:44 -07:00
merge conflicts resolved
This commit is contained in:
@ -298,7 +298,7 @@ AI_Items: ; 39196
|
||||
.FullHeal: ; 381be
|
||||
call .Status
|
||||
jp c, .DontUse
|
||||
call Function383a3
|
||||
call EnemyUsedFullHeal
|
||||
jp .Use
|
||||
; 381ca
|
||||
|
||||
@ -309,7 +309,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
|
||||
@ -318,17 +318,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
|
||||
@ -337,58 +337,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
|
||||
|
||||
@ -396,7 +396,7 @@ AI_Items: ; 39196
|
||||
call .HealItem
|
||||
jp c, .DontUse
|
||||
ld b, 200
|
||||
call Function383f4
|
||||
call EnemyUsedHyperPotion
|
||||
jp .Use
|
||||
; 38292 (e:4292)
|
||||
|
||||
@ -404,7 +404,7 @@ AI_Items: ; 39196
|
||||
call .HealItem
|
||||
jp c, .DontUse
|
||||
ld b, 50
|
||||
call Function383ee
|
||||
call EnemyUsedSuperPotion
|
||||
jp .Use
|
||||
; 382a0
|
||||
|
||||
@ -412,11 +412,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
|
||||
@ -455,7 +455,7 @@ AI_Items: ; 39196
|
||||
bit UNKNOWN_USE_F, a
|
||||
jp z, .DontUse
|
||||
call Random
|
||||
cp 100
|
||||
cp $64
|
||||
jp c, .Use
|
||||
jp .DontUse
|
||||
; 382f9
|
||||
@ -463,56 +463,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
|
||||
@ -526,12 +526,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
|
||||
|
||||
@ -564,18 +564,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
|
||||
@ -584,7 +584,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]
|
||||
@ -603,24 +603,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]
|
||||
@ -631,11 +631,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
|
||||
@ -649,7 +649,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
|
||||
@ -658,9 +658,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
|
||||
@ -671,24 +670,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
|
||||
@ -717,10 +718,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
|
||||
@ -743,10 +744,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
|
||||
|
||||
@ -763,7 +764,7 @@ AI_HealStatus: ; 384e0
|
||||
ret
|
||||
; 384f7
|
||||
|
||||
Function384f7: ; 384f7
|
||||
EnemyUsedXAccuracy: ; 384f7
|
||||
call AIUsedItemSound
|
||||
ld hl, EnemySubStatus4
|
||||
set SUBSTATUS_X_ACCURACY, [hl]
|
||||
@ -771,7 +772,7 @@ Function384f7: ; 384f7
|
||||
jp PrintText_UsedItemOn_AND_AIUpdateHUD
|
||||
; 38504
|
||||
|
||||
Function38504: ; 38504
|
||||
EnemyUsedGuardSpec: ; 38504
|
||||
call AIUsedItemSound
|
||||
ld hl, EnemySubStatus4
|
||||
set SUBSTATUS_MIST, [hl]
|
||||
@ -779,7 +780,7 @@ Function38504: ; 38504
|
||||
jp PrintText_UsedItemOn_AND_AIUpdateHUD
|
||||
; 38511
|
||||
|
||||
Function38511: ; 38511
|
||||
EnemyUsedDireHit: ; 38511
|
||||
call AIUsedItemSound
|
||||
ld hl, EnemySubStatus4
|
||||
set SUBSTATUS_FOCUS_ENERGY, [hl]
|
||||
@ -787,14 +788,14 @@ Function38511: ; 38511
|
||||
jp PrintText_UsedItemOn_AND_AIUpdateHUD
|
||||
; 3851e
|
||||
|
||||
Function3851e: ; 3851e
|
||||
Function3851e: ; This appears to be unused
|
||||
ld [hDivisor], a
|
||||
ld hl, EnemyMonMaxHP
|
||||
ld a, [hli]
|
||||
ld [hDividend + 0], a
|
||||
ld [hDividend], a
|
||||
ld a, [hl]
|
||||
ld [hDividend + 1], a
|
||||
ld b, $2
|
||||
ld b, 2
|
||||
call Divide
|
||||
ld a, [hQuotient + 2]
|
||||
ld c, a
|
||||
@ -813,25 +814,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
|
||||
|
||||
@ -839,12 +840,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
|
||||
|
@ -2824,21 +2824,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]
|
||||
@ -3242,7 +3243,7 @@ Function3d444: ; 3d444
|
||||
|
||||
|
||||
Function3d490: ; 3d490
|
||||
ld [$ffaf], a
|
||||
ld [hConnectionStripLength], a
|
||||
ld c, a
|
||||
.asm_3d493
|
||||
push bc
|
||||
@ -3266,7 +3267,7 @@ Function3d490: ; 3d490
|
||||
; 3d4ae
|
||||
|
||||
Function3d4ae: ; 3d4ae
|
||||
ld a, [$ffaf]
|
||||
ld a, [hConnectionStripLength]
|
||||
ld c, a
|
||||
cp $8
|
||||
jr nz, .back
|
||||
@ -4842,7 +4843,7 @@ DrawPlayerHUD: ; 3df58
|
||||
; HP bar
|
||||
hlcoord 10, 9
|
||||
ld b, 1
|
||||
xor a
|
||||
xor a ; PARTYMON
|
||||
ld [MonType], a
|
||||
predef DrawPlayerHP
|
||||
|
||||
@ -4924,7 +4925,7 @@ PrintPlayerHUD: ; 3dfbf
|
||||
pop hl
|
||||
dec hl
|
||||
|
||||
ld a, $3
|
||||
ld a, BREEDMON
|
||||
ld [MonType], a
|
||||
callab GetGender
|
||||
ld a, " "
|
||||
@ -5002,7 +5003,7 @@ DrawEnemyHUD: ; 3e043
|
||||
ld a, [hl]
|
||||
ld [de], a
|
||||
|
||||
ld a, $3
|
||||
ld a, BREEDMON
|
||||
ld [MonType], a
|
||||
callab GetGender
|
||||
ld a, " "
|
||||
@ -5379,7 +5380,7 @@ Function3e308: ; 3e308
|
||||
call EnableLCD
|
||||
call ClearSprites
|
||||
call LowVolume
|
||||
xor a
|
||||
xor a ; PARTYMON
|
||||
ld [MonType], a
|
||||
callba Function4dc7b
|
||||
call MaxVolume
|
||||
@ -5987,7 +5988,7 @@ Function3e75f: ; 3e75f
|
||||
.ok
|
||||
push hl
|
||||
ld de, StringBuffer1
|
||||
ld bc, $0102
|
||||
lb bc, 1, 2
|
||||
call PrintNum
|
||||
pop hl
|
||||
rept 2
|
||||
@ -5995,8 +5996,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
|
||||
@ -7559,7 +7560,7 @@ endr
|
||||
ld [hld], a
|
||||
|
||||
.asm_3ef74
|
||||
xor a
|
||||
xor a ; PARTYMON
|
||||
ld [MonType], a
|
||||
predef CopyPkmnToTempMon
|
||||
callab Function50e1b
|
||||
@ -7671,7 +7672,7 @@ endr
|
||||
call LoadTileMapToTempTileMap
|
||||
|
||||
.asm_3f057
|
||||
xor a
|
||||
xor a ; PARTYMON
|
||||
ld [MonType], a
|
||||
predef CopyPkmnToTempMon
|
||||
hlcoord 9, 0
|
||||
@ -7685,7 +7686,7 @@ endr
|
||||
call DelayFrames
|
||||
call Functiona80
|
||||
call Call_LoadTempTileMapToTileMap
|
||||
xor a
|
||||
xor a ; PARTYMON
|
||||
ld [MonType], a
|
||||
ld a, [CurSpecies]
|
||||
ld [wd265], a
|
||||
@ -7826,7 +7827,7 @@ Function3f136: ; 3f136
|
||||
push af
|
||||
xor a
|
||||
ld [DefaultFlypoint], a
|
||||
xor a
|
||||
xor a ; PARTYMON
|
||||
ld [MonType], a
|
||||
predef CopyPkmnToTempMon
|
||||
ld a, [TempMonLevel]
|
||||
@ -8556,28 +8557,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
|
||||
|
||||
@ -8922,20 +8923,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
|
||||
|
||||
@ -8975,21 +8976,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
|
||||
@ -9472,7 +9473,7 @@ Function3fc30: ; 3fc30
|
||||
Function3fc5b: ; 3fc5b
|
||||
ld hl, Sprites
|
||||
xor a
|
||||
ld [$ffaf], a
|
||||
ld [hConnectionStripLength], a
|
||||
ld b, $6
|
||||
ld e, $a8
|
||||
.asm_3fc65
|
||||
@ -9483,10 +9484,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
|
||||
@ -9494,9 +9495,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 @@ BattleCommand_CalcDamageTypeMultiplier: ; 346d2
|
||||
cp c
|
||||
jr z, .stab
|
||||
|
||||
jr .asm_3473a
|
||||
jr .SkipStab
|
||||
|
||||
.stab
|
||||
ld hl, CurDamage + 1
|
||||
@ -1412,13 +1412,13 @@ BattleCommand_CalcDamageTypeMultiplier: ; 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 @@ BattleCommand_CalcDamageTypeMultiplier: ; 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 @@ BattleCommand_CalcDamageTypeMultiplier: ; 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 HowEffectiveIsTheMovetypeAgainstTheEnemyPkmn
|
||||
@ -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 AddPkmnToParty
|
||||
add_predef TryAddMonToParty
|
||||
add_predef Functionda96
|
||||
add_predef SentGetPkmnIntoFromBox
|
||||
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
Reference in New Issue
Block a user