ref: 599e6e8d16571235f2054aa38f39e66181da3796
parent: e044b8ec08fee4a5d4f9cd942551ff94f2577b76
author: PikalaxALT <[email protected]>
date: Tue Mar 1 17:31:21 EST 2016
Battle animation annotations
--- a/audio/engine.asm
+++ b/audio/engine.asm
@@ -38,8 +38,8 @@
dec e
jr nz, .clearsound
- ld hl, Channel1 ; start of channel data
- ld de, $1bf ; length of area to clear (entire sound wram area)
+ ld hl, Channels ; start of channel data
+ ld de, ChannelsEnd - Channels ; length of area to clear (entire sound wram area)
.clearchannels ; clear Channel1-$c2bf
xor a
ld [hli], a
--- a/battle/ai/items.asm
+++ b/battle/ai/items.asm
@@ -9,7 +9,7 @@
and a
ret nz
- callba CheckSubstatus_RechargeChargedRampageBideRollout
+ callba CheckEnemyLockedIn
ret nz
ld a, [PlayerSubStatus5]
@@ -716,7 +716,7 @@
ld d, h
ld e, l
ld hl, EnemyMonStatus
- ld bc, $0004
+ ld bc, MON_MAXHP - MON_STATUS
call CopyBytes
pop af
@@ -726,7 +726,7 @@
.skiptext
ld a, 1
- ld [wd264], a
+ ld [wAISwitch], a
callab NewEnemyMonStatus
callab ResetEnemyStatLevels
ld hl, PlayerSubStatus1
@@ -734,7 +734,7 @@
callba EnemySwitch
callba ResetBattleParticipants
xor a
- ld [wd264], a
+ ld [wAISwitch], a
ld a, [wLinkMode]
and a
ret nz
--- a/battle/ai/move.asm
+++ b/battle/ai/move.asm
@@ -12,7 +12,7 @@
ret nz
; No use picking a move if there's no choice.
- callba CheckSubstatus_RechargeChargedRampageBideRollout
+ callba CheckEnemyLockedIn
ret nz
--- a/battle/anim_gfx.asm
+++ b/battle/anim_gfx.asm
@@ -1,9 +1,9 @@
AnimObj00GFX: ; 84a2e
-AnimObj01GFX: INCBIN "gfx/fx/001.2bpp.lz"
-AnimObj02GFX: INCBIN "gfx/fx/002.2bpp.lz"
-AnimObj03GFX: INCBIN "gfx/fx/003.2bpp.lz"
-AnimObj04GFX: INCBIN "gfx/fx/004.2bpp.lz"
-AnimObj05GFX: INCBIN "gfx/fx/005.2bpp.lz"
+AnimObjHitGFX: INCBIN "gfx/fx/001.2bpp.lz"
+AnimObjCutGFX: INCBIN "gfx/fx/002.2bpp.lz"
+AnimObjFireGFX: INCBIN "gfx/fx/003.2bpp.lz"
+AnimObjWaterGFX: INCBIN "gfx/fx/004.2bpp.lz"
+AnimObjLightningGFX: INCBIN "gfx/fx/005.2bpp.lz"
AnimObj07GFX: INCBIN "gfx/fx/007.2bpp.lz"
AnimObj08GFX: INCBIN "gfx/fx/008.2bpp.lz"
AnimObj10GFX: INCBIN "gfx/fx/010.2bpp.lz"
--- a/battle/anims.asm
+++ b/battle/anims.asm
@@ -1323,7 +1323,7 @@
BattleAnim_Thunderbolt: ; c9b66
anim_2gfx ANIM_GFX_LIGHTNING, ANIM_GFX_EXPLOSION
- anim_obj ANIM_OBJ_32, -15, 0, 7, 0, $2
+ anim_obj ANIM_OBJ_LIGHTNING_BOLT, -15, 0, 7, 0, $2
anim_wait 16
anim_bgeffect ANIM_BG_FLASH_INVERTED, $0, $4, $2
anim_sound 0, 1, SFX_THUNDERSHOCK
@@ -2497,10 +2497,10 @@
anim_call BattleAnim_FollowPlayerHead_0
anim_transform
anim_sound 0, 0, SFX_PSYBEAM
- anim_bgeffect ANIM_BG_28, $0, $1, $0
+ anim_bgeffect ANIM_BG_WAVE_DEFORM_USER, $0, $1, $0
anim_wait 48
anim_updateactorpic
- anim_incbgeffect ANIM_BG_28
+ anim_incbgeffect ANIM_BG_WAVE_DEFORM_USER
anim_wait 48
anim_call BattleAnim_ShowMon_0
anim_ret
@@ -2759,10 +2759,10 @@
anim_1gfx ANIM_GFX_HIT
anim_call BattleAnim_FollowPlayerHead_0
anim_minimize
- anim_bgeffect ANIM_BG_28, $0, $1, $0
+ anim_bgeffect ANIM_BG_WAVE_DEFORM_USER, $0, $1, $0
anim_wait 48
anim_updateactorpic
- anim_incbgeffect ANIM_BG_28
+ anim_incbgeffect ANIM_BG_WAVE_DEFORM_USER
anim_wait 48
anim_call BattleAnim_ShowMon_0
anim_ret
@@ -2774,7 +2774,7 @@
anim_bgeffect ANIM_BG_27, $0, $1, $0
anim_wait 32
anim_sound 0, 0, SFX_HYPER_BEAM
- anim_obj ANIM_OBJ_6E, 6, 0, 11, 0, $40
+ anim_obj ANIM_OBJ_SKY_ATTACK_FEAROW, 6, 0, 11, 0, $40
anim_wait 64
anim_incobj 1
anim_wait 21
@@ -2805,7 +2805,7 @@
BattleAnim_Lick: ; ca7e5
anim_1gfx ANIM_GFX_WATER
anim_sound 0, 1, SFX_LICK
- anim_obj ANIM_OBJ_6F, -15, 0, 7, 0, $0
+ anim_obj ANIM_OBJ_LICK, -15, 0, 7, 0, $0
anim_wait 64
anim_ret
; ca7f1
@@ -3025,9 +3025,9 @@
anim_1gfx ANIM_GFX_HIT
anim_call BattleAnim_FollowEnemyFeet_0
anim_sound 0, 0, SFX_PSYBEAM
- anim_bgeffect ANIM_BG_28, $0, $1, $0
+ anim_bgeffect ANIM_BG_WAVE_DEFORM_USER, $0, $1, $0
anim_wait 48
- anim_incbgeffect ANIM_BG_28
+ anim_incbgeffect ANIM_BG_WAVE_DEFORM_USER
anim_wait 48
anim_call BattleAnim_ShowMon_0
anim_ret
@@ -3765,13 +3765,13 @@
BattleAnim_Spikes: ; cb092
anim_1gfx ANIM_GFX_MISC
anim_sound 6, 2, SFX_MENU
- anim_obj ANIM_OBJ_8E, 6, 0, 11, 0, $20
+ anim_obj ANIM_OBJ_SPIKES, 6, 0, 11, 0, $20
anim_wait 8
anim_sound 6, 2, SFX_MENU
- anim_obj ANIM_OBJ_8E, 6, 0, 11, 0, $30
+ anim_obj ANIM_OBJ_SPIKES, 6, 0, 11, 0, $30
anim_wait 8
anim_sound 6, 2, SFX_MENU
- anim_obj ANIM_OBJ_8E, 6, 0, 11, 0, $28
+ anim_obj ANIM_OBJ_SPIKES, 6, 0, 11, 0, $28
anim_wait 64
anim_ret
; cb0b0
@@ -3784,7 +3784,7 @@
anim_obj ANIM_OBJ_A3, 8, 0, 11, 4, $2
anim_wait 40
anim_sound 0, 1, SFX_THUNDERSHOCK
- anim_obj ANIM_OBJ_32, -15, 0, 7, 0, $2
+ anim_obj ANIM_OBJ_LIGHTNING_BOLT, -15, 0, 7, 0, $2
anim_wait 16
anim_obj ANIM_OBJ_31, -15, 0, 7, 0, $0
anim_wait 128
@@ -3830,14 +3830,14 @@
anim_bgeffect ANIM_BG_06, $0, $2, $0
anim_bgeffect ANIM_BG_ALTERNATE_HUES, $0, $2, $0
anim_sound 0, 2, SFX_PERISH_SONG
- anim_obj ANIM_OBJ_A6, 11, 0, 0, 0, $0
- anim_obj ANIM_OBJ_A6, 11, 0, 0, 0, $8
- anim_obj ANIM_OBJ_A6, 11, 0, 0, 0, $10
- anim_obj ANIM_OBJ_A6, 11, 0, 0, 0, $18
- anim_obj ANIM_OBJ_A6, 11, 0, 0, 0, $20
- anim_obj ANIM_OBJ_A6, 11, 0, 0, 0, $28
- anim_obj ANIM_OBJ_A6, 11, 0, 0, 0, $30
- anim_obj ANIM_OBJ_A6, 11, 0, 0, 0, $38
+ anim_obj ANIM_OBJ_PERISH_SONG, 11, 0, 0, 0, $0
+ anim_obj ANIM_OBJ_PERISH_SONG, 11, 0, 0, 0, $8
+ anim_obj ANIM_OBJ_PERISH_SONG, 11, 0, 0, 0, $10
+ anim_obj ANIM_OBJ_PERISH_SONG, 11, 0, 0, 0, $18
+ anim_obj ANIM_OBJ_PERISH_SONG, 11, 0, 0, 0, $20
+ anim_obj ANIM_OBJ_PERISH_SONG, 11, 0, 0, 0, $28
+ anim_obj ANIM_OBJ_PERISH_SONG, 11, 0, 0, 0, $30
+ anim_obj ANIM_OBJ_PERISH_SONG, 11, 0, 0, 0, $38
anim_wait 112
anim_ret
; cb14c
@@ -4087,7 +4087,7 @@
anim_incobj 2
anim_wait 1
anim_sound 0, 1, SFX_THUNDERSHOCK
- anim_obj ANIM_OBJ_32, -15, 0, 7, 0, $2
+ anim_obj ANIM_OBJ_LIGHTNING_BOLT, -15, 0, 7, 0, $2
anim_obj ANIM_OBJ_33, -15, 0, 7, 0, $0
anim_wait 32
anim_ret
--- a/battle/core.asm
+++ b/battle/core.asm
@@ -7,7 +7,7 @@
ld [wPlayerAction], a
ld [BattleEnded], a
inc a
- ld [wd264], a
+ ld [wAISwitch], a
ld hl, OTPartyMon1HP
ld bc, PARTYMON_STRUCT_LENGTH - 1
ld d, BATTLEACTION_SWITCH1 - 1
@@ -60,7 +60,7 @@
xor a
ld [CurPartyMon], a
.loop2
- call CheckIfPartyHasPkmnToBattleWith
+ call CheckIfCurPartyMonIsFitToFight
jr nz, .alive2
ld hl, CurPartyMon
inc [hl]
@@ -170,7 +170,7 @@
xor a
ld [wPlayerIsSwitching], a
ld [wEnemyIsSwitching], a
- ld [wd264], a
+ ld [wAISwitch], a
ld [wPlayerJustGotFrozen], a
ld [wEnemyJustGotFrozen], a
ld [CurDamage], a
@@ -2497,7 +2497,7 @@
call PrintWinLossText
.skip_win_loss_text
- jp HandleBattleReward
+ jp .GiveMoney
.mobile
call BattleWinSlideInEnemyTrainerFrontpic
@@ -2524,9 +2524,8 @@
call ClearTileMap
call ClearBGPalettes
ret
-; 3d02b
-HandleBattleReward: ; 3d02b
+.GiveMoney
ld a, [wAmuletCoin]
and a
call nz, .DoubleReward
@@ -3024,7 +3023,7 @@
call JumpToPartyMenuAndPrintText
call SelectBattleMon
ret c
- call CheckIfPartyHasPkmnToBattleWith
+ call CheckIfCurPartyMonIsFitToFight
jr z, .loop
xor a
ret
@@ -3373,14 +3372,14 @@
.not_linked
ld a, [wEnemySwitchMonIndex]
and a
- jr z, .check_wd264
+ jr z, .check_wAISwitch
dec a
ld b, a
jr .return_carry
-.check_wd264
- ld a, [wd264]
+.check_wAISwitch
+ ld a, [wAISwitch]
and a
ld b, $0
jr nz, .return_carry
@@ -3656,7 +3655,7 @@
; 3d714
CheckWhetherToAskSwitch: ; 3d714
- ld a, [wd264]
+ ld a, [wAISwitch]
dec a
jp z, .return_nc
ld a, [PartyCount]
@@ -3836,19 +3835,19 @@
xor a
ld hl, PartyMon1HP
ld bc, PartyMon2 - (PartyMon1 + 1)
-.asm_3d87e
+.loop
or [hl]
inc hl
or [hl]
add hl, bc
dec e
- jr nz, .asm_3d87e
+ jr nz, .loop
ld d, a
ret
; 3d887
-CheckIfPartyHasPkmnToBattleWith: ; 3d887
+CheckIfCurPartyMonIsFitToFight: ; 3d887
ld a, [CurPartyMon]
ld hl, PartyMon1HP
call GetPartyLocation
@@ -3856,9 +3855,9 @@
or [hl]
ret nz
- ld a, [wd264]
+ ld a, [wAISwitch]
and a
- jr nz, .asm_3d8b1
+ jr nz, .finish_fail
ld hl, PartySpecies
ld a, [CurPartyMon]
ld c, a
@@ -3867,14 +3866,14 @@
ld a, [hl]
cp EGG
ld hl, BattleText_AnEGGCantBattle
- jr z, .asm_3d8ae
+ jr z, .print_textbox
ld hl, BattleText_TheresNoWillToBattle
-.asm_3d8ae
+.print_textbox
call StdBattleTextBox
-.asm_3d8b1
+.finish_fail
xor a
ret
; 3d8b3
@@ -4501,6 +4500,8 @@
ld hl, BattleMonMaxHP
.go
+; If, and only if, Pokemon's HP is less than half max, use the item.
+; Store current HP in Buffer 3/4
push bc
ld a, [de]
ld [Buffer3], a
@@ -4528,6 +4529,7 @@
.less
call ItemRecoveryAnim
+ ; store max HP in Buffer1/2
ld a, [hli]
ld [Buffer2], a
ld a, [hl]
@@ -5434,7 +5436,7 @@
jp BattleMenuPKMN_Loop
.try_switch
- call CheckIfPartyHasPkmnToBattleWith
+ call CheckIfCurPartyMonIsFitToFight
jp z, BattleMenuPKMN_Loop
ld a, [CurBattleMon]
ld [LastPlayerMon], a
@@ -5675,15 +5677,15 @@
ld c, $2c
ld a, [wMoveSelectionMenuType]
dec a
- ld b, $c1
+ ld b, D_DOWN | D_UP | A_BUTTON
jr z, .okay
dec a
- ld b, $c3
+ ld b, D_DOWN | D_UP | A_BUTTON | B_BUTTON
jr z, .okay
ld a, [wLinkMode]
and a
jr nz, .okay
- ld b, $c7
+ ld b, D_DOWN | D_UP | A_BUTTON | B_BUTTON | SELECT
.okay
ld a, b
@@ -5727,6 +5729,7 @@
bit SELECT_F, a
jp nz, .pressed_select
bit B_BUTTON_F, a
+ ; A button
push af
xor a
@@ -6106,7 +6109,7 @@
jp .finish
.skip_encore
- call CheckSubstatus_RechargeChargedRampageBideRollout
+ call CheckEnemyLockedIn
jp nz, ResetVarsForSubstatusRage
jr .continue
@@ -6173,7 +6176,7 @@
.skip_load
call SetEnemyTurn
callab UpdateMoveData
- call CheckSubstatus_RechargeChargedRampageBideRollout
+ call CheckEnemyLockedIn
jr nz, .raging
xor a
ld [wEnemyCharging], a
@@ -6219,7 +6222,7 @@
ret
; 3e8d1
-CheckSubstatus_RechargeChargedRampageBideRollout: ; 3e8d1
+CheckEnemyLockedIn: ; 3e8d1
ld a, [EnemySubStatus4]
and 1 << SUBSTATUS_RECHARGE
ret nz
@@ -8025,7 +8028,7 @@
ld hl, JumpText_GoPkmn ; If we're in a LinkBattle print just "Go <PlayerMon>"
- ld a, [wd264] ; unless this (unidentified) variable is set
+ ld a, [wAISwitch] ; unless this (unidentified) variable is set
and a
jr nz, .skip_to_textbox
@@ -8482,7 +8485,7 @@
ld [hMapAnims], a
callba PlayBattleMusic
callba ShowLinkBattleParticipants
- callba FindFirstAliveMon
+ callba FindFirstAliveMonAndStartBattle
call DisableSpriteUpdates
callba ClearBattleRAM
call InitEnemy
--- a/battle/moves/move_effects.asm
+++ b/battle/moves/move_effects.asm
@@ -2095,7 +2095,7 @@
damagestats
damagecalc
futuresight
- damagevariation
+ damagevariation ; skip here if last turn
checkhit
hittargetnosub
failuretext
--- a/battle/objects/data.asm
+++ b/battle/objects/data.asm
@@ -156,7 +156,7 @@
; ANIM_OBJ_31
battleanimobj $21, $90, BATTLEANIMFRAMESET_36, BATTLEANIMFUNC_00, $03, $05
-; ANIM_OBJ_32
+; ANIM_OBJ_LIGHTNING_BOLT
battleanimobj $21, $90, BATTLEANIMFRAMESET_37, BATTLEANIMFUNC_03, $02, $08
; ANIM_OBJ_33
@@ -336,10 +336,10 @@
; ANIM_OBJ_6D
battleanimobj $01, $88, BATTLEANIMFRAMESET_7A, BATTLEANIMFUNC_31, $03, $11
-; ANIM_OBJ_6E
+; ANIM_OBJ_SKY_ATTACK_FEAROW
battleanimobj $21, $88, BATTLEANIMFRAMESET_7B, BATTLEANIMFUNC_32, $02, $20
-; ANIM_OBJ_6F
+; ANIM_OBJ_LICK
battleanimobj $21, $98, BATTLEANIMFRAMESET_7C, BATTLEANIMFUNC_00, $02, $04
; ANIM_OBJ_70
@@ -432,7 +432,7 @@
; ANIM_OBJ_8D
battleanimobj $21, $a0, BATTLEANIMFRAMESET_99, BATTLEANIMFUNC_35, $04, $19
-; ANIM_OBJ_8E
+; ANIM_OBJ_SPIKES
battleanimobj $21, $70, BATTLEANIMFRAMESET_8B, BATTLEANIMFUNC_3F, $02, $1f
; ANIM_OBJ_8F
@@ -504,7 +504,7 @@
; ANIM_OBJ_A5
battleanimobj $61, $90, BATTLEANIMFRAMESET_A9, BATTLEANIMFUNC_46, $02, $23
-; ANIM_OBJ_A6
+; ANIM_OBJ_PERISH_SONG
battleanimobj $00, $00, BATTLEANIMFRAMESET_24, BATTLEANIMFUNC_47, $02, $0e
; ANIM_OBJ_A7
--- a/battle/objects/gfx_headers.asm
+++ b/battle/objects/gfx_headers.asm
@@ -8,11 +8,11 @@
ENDM
object_gfx 0, AnimObj00GFX
- object_gfx 21, AnimObj01GFX
- object_gfx 6, AnimObj02GFX
- object_gfx 6, AnimObj03GFX
- object_gfx 20, AnimObj04GFX
- object_gfx 26, AnimObj05GFX
+ object_gfx 21, AnimObjHitGFX
+ object_gfx 6, AnimObjCutGFX
+ object_gfx 6, AnimObjFireGFX
+ object_gfx 20, AnimObjWaterGFX
+ object_gfx 26, AnimObjLightningGFX
object_gfx 18, AnimObj06GFX
object_gfx 12, AnimObj07GFX
object_gfx 9, AnimObj08GFX
--- a/constants/animation_constants.asm
+++ b/constants/animation_constants.asm
@@ -76,7 +76,7 @@
const ANIM_OBJ_2F
const ANIM_OBJ_30
const ANIM_OBJ_31
- const ANIM_OBJ_32
+ const ANIM_OBJ_LIGHTNING_BOLT
const ANIM_OBJ_33
const ANIM_OBJ_34
const ANIM_OBJ_35
@@ -136,8 +136,8 @@
const ANIM_OBJ_6B
const ANIM_OBJ_6C
const ANIM_OBJ_6D
- const ANIM_OBJ_6E
- const ANIM_OBJ_6F
+ const ANIM_OBJ_SKY_ATTACK_FEAROW
+ const ANIM_OBJ_LICK
const ANIM_OBJ_70
const ANIM_OBJ_71
const ANIM_OBJ_72
@@ -168,7 +168,7 @@
const ANIM_OBJ_8B
const ANIM_OBJ_8C
const ANIM_OBJ_8D
- const ANIM_OBJ_8E
+ const ANIM_OBJ_SPIKES
const ANIM_OBJ_8F
const ANIM_OBJ_90
const ANIM_OBJ_91
@@ -192,7 +192,7 @@
const ANIM_OBJ_A3
const ANIM_OBJ_A4
const ANIM_OBJ_A5
- const ANIM_OBJ_A6
+ const ANIM_OBJ_PERISH_SONG
const ANIM_OBJ_A7
const ANIM_OBJ_A8
const ANIM_OBJ_A9
@@ -742,7 +742,7 @@
const ANIM_BG_25
const ANIM_BG_26
const ANIM_BG_27
- const ANIM_BG_28
+ const ANIM_BG_WAVE_DEFORM_USER
const ANIM_BG_PSYCHIC
const ANIM_BG_2A
const ANIM_BG_2B
@@ -767,6 +767,47 @@
const ANIM_MON_UNUSED ; 6
const ANIM_MON_EGG1 ; 7
const ANIM_MON_EGG2 ; 8
+
+const_value SET 1
+ const ANIM_GFX_HIT
+ const ANIM_GFX_CUT
+ const ANIM_GFX_FIRE
+ const ANIM_GFX_WATER
+ const ANIM_GFX_LIGHTNING
+ const ANIM_GFX_PLANT
+ const ANIM_GFX_SMOKE
+ const ANIM_GFX_EXPLOSION
+ const ANIM_GFX_ROCKS
+ const ANIM_GFX_ICE
+ const ANIM_GFX_POKE_BALL
+ const ANIM_GFX_POISON
+ const ANIM_GFX_BUBBLE
+ const ANIM_GFX_NOISE
+ const ANIM_GFX_POWDER
+ const ANIM_GFX_BEAM
+ const ANIM_GFX_SPEED
+ const ANIM_GFX_CHARGE
+ const ANIM_GFX_WIND
+ const ANIM_GFX_WHIP
+ const ANIM_GFX_EGG
+ const ANIM_GFX_ROPE
+ const ANIM_GFX_PSYCHIC
+ const ANIM_GFX_REFLECT
+ const ANIM_GFX_STATUS
+ const ANIM_GFX_SAND
+ const ANIM_GFX_WEB
+ const ANIM_GFX_HAZE
+ const ANIM_GFX_HORN
+ const ANIM_GFX_FLOWER
+ const ANIM_GFX_MISC
+ const ANIM_GFX_SKY_ATTACK
+ const ANIM_GFX_GLOBE
+ const ANIM_GFX_SHAPES
+ const ANIM_GFX_OBJECTS
+ const ANIM_GFX_SHINE
+ const ANIM_GFX_ANGELS
+ const ANIM_GFX_WAVE
+ const ANIM_GFX_AEROBLAST
const_def
const BG_EFFECT_STRUCT_FUNCTION
--- a/constants/gfx_constants.asm
+++ b/constants/gfx_constants.asm
@@ -1,45 +1,3 @@
-const_value SET 1
- const ANIM_GFX_HIT
- const ANIM_GFX_CUT
- const ANIM_GFX_FIRE
- const ANIM_GFX_WATER
- const ANIM_GFX_LIGHTNING
- const ANIM_GFX_PLANT
- const ANIM_GFX_SMOKE
- const ANIM_GFX_EXPLOSION
- const ANIM_GFX_ROCKS
- const ANIM_GFX_ICE
- const ANIM_GFX_POKE_BALL
- const ANIM_GFX_POISON
- const ANIM_GFX_BUBBLE
- const ANIM_GFX_NOISE
- const ANIM_GFX_POWDER
- const ANIM_GFX_BEAM
- const ANIM_GFX_SPEED
- const ANIM_GFX_CHARGE
- const ANIM_GFX_WIND
- const ANIM_GFX_WHIP
- const ANIM_GFX_EGG
- const ANIM_GFX_ROPE
- const ANIM_GFX_PSYCHIC
- const ANIM_GFX_REFLECT
- const ANIM_GFX_STATUS
- const ANIM_GFX_SAND
- const ANIM_GFX_WEB
- const ANIM_GFX_HAZE
- const ANIM_GFX_HORN
- const ANIM_GFX_FLOWER
- const ANIM_GFX_MISC
- const ANIM_GFX_SKY_ATTACK
- const ANIM_GFX_GLOBE
- const ANIM_GFX_SHAPES
- const ANIM_GFX_OBJECTS
- const ANIM_GFX_SHINE
- const ANIM_GFX_ANGELS
- const ANIM_GFX_WAVE
- const ANIM_GFX_AEROBLAST
-
-
LEN_2BPP_TILE EQU 16
LEN_1BPP_TILE EQU 8
TILES_PER_FRAME EQU 6
--- a/constants/map_setup_constants.asm
+++ b/constants/map_setup_constants.asm
@@ -19,7 +19,7 @@
const MAPCALLBACK_SPRITES
const MAPCALLBACK_NEWMAP
-; Command descriptions from Condensation water's scripting compendium. const_def
+; Command descriptions from Condensation water's scripting compendium.
const_def
const map_lcd_on ; 00
--- a/engine/anim_hp_bar.asm
+++ b/engine/anim_hp_bar.asm
@@ -1,8 +1,8 @@
_AnimateHPBar: ; d627
- call Functiond65f
- jr c, .do_player
- call Functiond670
-.enemy_loop
+ call .IsMaximumMoreThan48Pixels
+ jr c, .MoreThan48Pixels
+ call .ComputePixels
+.ShortAnimLoop
push bc
push hl
call Functiond6e2
@@ -16,12 +16,12 @@
pop hl
pop bc
pop af
- jr nc, .enemy_loop
+ jr nc, .ShortAnimLoop
ret
-.do_player
- call Functiond670
-.player_loop
+.MoreThan48Pixels
+ call .ComputePixels
+.LongAnimLoop
push bc
push hl
call Functiond6f5
@@ -36,11 +36,11 @@
pop hl
pop bc
pop af
- jr nc, .player_loop
+ jr nc, .LongAnimLoop
ret
; d65f
-Functiond65f: ; d65f
+.IsMaximumMoreThan48Pixels: ; d65f
ld a, [Buffer2]
and a
jr nz, .player
@@ -55,7 +55,7 @@
ret
; d670
-Functiond670: ; d670
+.ComputePixels: ; d670
; Buffer1-2: Max HP
; Buffer3-4: Old HP
; Buffer5-6: New HP
@@ -72,7 +72,7 @@
pop hl
call ComputeHPBarPixels
ld a, e
- ld [wd1f1], a
+ ld [wCurHPBarPixels], a
ld a, [Buffer5]
ld c, a
@@ -84,7 +84,7 @@
ld d, a
call ComputeHPBarPixels
ld a, e
- ld [wd1f2], a
+ ld [wNewHPBarPixels], a
push hl
ld hl, Buffer3
@@ -103,15 +103,15 @@
ld a, d
sbc b
ld d, a
- jr c, .asm_d6c1
+ jr c, .negative
ld a, [Buffer3]
ld [wd1f5], a
ld a, [Buffer5]
ld [wd1f6], a
ld bc, 1
- jr .asm_d6d9
+ jr .got_direction
-.asm_d6c1
+.negative
ld a, [Buffer3]
ld [wd1f6], a
ld a, [Buffer5]
@@ -123,8 +123,8 @@
ld a, d
xor $ff
ld d, a
- ld bc, rIE
-.asm_d6d9
+ ld bc, -1
+.got_direction
ld a, d
ld [wd1f3], a
ld a, e
@@ -133,14 +133,14 @@
; d6e2
Functiond6e2: ; d6e2
- ld hl, wd1f1
- ld a, [wd1f2]
+ ld hl, wCurHPBarPixels
+ ld a, [wNewHPBarPixels]
cp [hl]
- jr nz, .asm_d6ed
+ jr nz, .not_finished
scf
ret
-.asm_d6ed
+.not_finished
ld a, c
add [hl]
ld [hl], a
@@ -150,7 +150,7 @@
; d6f5
Functiond6f5: ; d6f5
-.asm_d6f5
+.loop
ld hl, Buffer3
ld a, [hli]
ld e, a
@@ -158,15 +158,15 @@
ld d, a
ld a, e
cp [hl]
- jr nz, .asm_d707
+ jr nz, .next
inc hl
ld a, d
cp [hl]
- jr nz, .asm_d707
+ jr nz, .next
scf
ret
-.asm_d707
+.next
ld l, e
ld h, d
add hl, bc
@@ -173,7 +173,7 @@
ld a, l
ld [Buffer3], a
ld a, h
- ld [wd1ed], a
+ ld [Buffer4], a
push hl
push de
push bc
@@ -191,9 +191,9 @@
pop de
pop hl
ld a, e
- ld hl, wd1f1
+ ld hl, wCurHPBarPixels
cp [hl]
- jr z, .asm_d6f5
+ jr z, .loop
ld [hl], a
and a
ret
@@ -205,7 +205,7 @@
ld a, [wWhichHPBar]
and $1
ld b, a
- ld a, [wd1f1]
+ ld a, [wCurHPBarPixels]
ld e, a
ld c, a
push de
@@ -219,7 +219,7 @@
call Functiond784
ld a, [Buffer3]
ld c, a
- ld a, [wd1ed]
+ ld a, [Buffer4]
ld b, a
ld a, [Buffer1]
ld e, a
@@ -275,7 +275,7 @@
dec hl
ld a, [Buffer3]
ld [StringBuffer2 + 1], a
- ld a, [wd1ed]
+ ld a, [Buffer4]
ld [StringBuffer2], a
ld de, StringBuffer2
lb bc, 2, 3
@@ -375,7 +375,7 @@
ld c, a
ld b, 0
ld hl, 0
- ld a, [wd1f1]
+ ld a, [wCurHPBarPixels]
cp 6 * 8
jr nc, .coppy_buffer
and a
--- a/engine/battle_start.asm
+++ b/engine/battle_start.asm
@@ -1,5 +1,5 @@
Predef_StartBattle: ; 8c20f
- call Function8c26d
+ call .InitGFX
ld a, [rBGP]
ld [wBGP], a
ld a, [rOBP0]
@@ -52,7 +52,7 @@
ret
; 8c26d
-Function8c26d: ; 8c26d
+.InitGFX: ; 8c26d
ld a, [wLinkMode]
cp LINK_MOBILE
jr z, .mobile
@@ -59,8 +59,8 @@
callba Function6454
call UpdateSprites
call DelayFrame
- call Function8c2a0
- call Function8cf4f
+ call .NonMobile_LoadPokeballTiles
+ call BattleStart_LoadEDTile
jr .resume
.mobile
@@ -81,7 +81,7 @@
ret
; 8c2a0
-Function8c2a0: ; 8c2a0
+.NonMobile_LoadPokeballTiles: ; 8c2a0
call LoadTrainerBattlePokeballTiles
hlbgcoord 0, 0
call Function8c2cf
@@ -663,7 +663,7 @@
ld a, $1
ld [hCGBPalUpdate], a
call DelayFrame
- call Function8cf4f
+ call BattleStart_LoadEDTile
.nextscene: ; 8c673 (23:4673)
call StartTrainerBattle_NextScene
--- a/engine/init_gender.asm
+++ b/engine/init_gender.asm
@@ -67,7 +67,7 @@
InitGenderScreen: ; 48e14 (12:4e14)
ld a, $10
ld [MusicFade], a
- ld a, $0
+ ld a, MUSIC_NONE
ld [MusicFadeIDLo], a
ld a, $0
ld [MusicFadeIDHi], a
--- a/engine/main_menu.asm
+++ b/engine/main_menu.asm
@@ -202,7 +202,7 @@
ld a, [w2DMenuFlags1]
set 5, a
ld [w2DMenuFlags1], a
- call Function1f1a
+ call GetScrollingMenuJoypad
ld a, [wMenuJoypad]
cp B_BUTTON
jr z, .b_button
--- a/engine/mon_icons.asm
+++ b/engine/mon_icons.asm
@@ -14,7 +14,7 @@
ret
; 8e83f
-Function8e83f: ; 8e83f
+LoadMenuMonIcon: ; 8e83f
push hl
push de
push bc
@@ -28,9 +28,8 @@
.LoadIcon: ; 8e849
ld d, 0
ld hl, .Jumptable
-rept 2
add hl, de
-endr
+ add hl, de
ld a, [hli]
ld h, [hl]
ld l, a
@@ -39,13 +38,13 @@
.Jumptable: ; 8e854 (23:6854)
- dw Function8e8d5 ; init
- dw Function8e961
- dw Function8e97d
- dw Trade_LoadMonIconGFX
- dw Function8e898
- dw Mobile_InitPartyMenuBGPal71
- dw .GetPartyMenuMonIcon
+ dw Function8e8d5 ; party menu
+ dw Function8e961 ; naming screen
+ dw Function8e97d ; moves (?)
+ dw Trade_LoadMonIconGFX ; trade
+ dw Function8e898 ; mobile
+ dw Mobile_InitPartyMenuBGPal71 ; mobile
+ dw .GetPartyMenuMonIcon ; unused
.GetPartyMenuMonIcon: ; 8e862 (23:6862)
@@ -89,7 +88,7 @@
call Function8e8d5
ld hl, SPRITEANIMSTRUCT_ANIM_SEQ_ID
add hl, bc
- ld a, $0
+ ld a, SPRITE_ANIM_SEQ_NULL
ld [hl], a
ld hl, SPRITEANIMSTRUCT_XCOORD
add hl, bc
@@ -106,7 +105,7 @@
call SetPartyMonIconAnimSpeed
ld hl, SPRITEANIMSTRUCT_ANIM_SEQ_ID
add hl, bc
- ld a, $0
+ ld a, SPRITE_ANIM_SEQ_NULL
ld [hl], a
ld hl, SPRITEANIMSTRUCT_XCOORD
add hl, bc
@@ -229,7 +228,7 @@
call InitSpriteAnimStruct
ld hl, SPRITEANIMSTRUCT_ANIM_SEQ_ID
add hl, bc
- ld [hl], $0
+ ld [hl], SPRITE_ANIM_SEQ_NULL
ret
Function8e97d: ; 8e97d (23:697d)
--- a/engine/movement.asm
+++ b/engine/movement.asm
@@ -55,8 +55,8 @@
dw Movement_fast_jump_step_up ; 35
dw Movement_fast_jump_step_left ; 36
dw Movement_fast_jump_step_right ; 37
- dw Movement_38 ; 38
- dw Movement_39 ; 39
+ dw Movement_remove_sliding ; 38
+ dw Movement_set_sliding ; 39
dw Movement_remove_fixed_facing ; 3a
dw Movement_fix_facing ; 3b
dw Movement_show_person ; 3c
@@ -373,7 +373,7 @@
ret
; 5293
-Movement_38: ; 5293
+Movement_remove_sliding: ; 5293
ld hl, OBJECT_FLAGS1
add hl, bc
res SLIDING, [hl]
@@ -380,7 +380,7 @@
jp ContinueReadingMovement
; 529c
-Movement_39: ; 529c
+Movement_set_sliding: ; 529c
ld hl, OBJECT_FLAGS1
add hl, bc
set SLIDING, [hl]
--- a/engine/namingscreen.asm
+++ b/engine/namingscreen.asm
@@ -88,10 +88,10 @@
.Pokemon: ; 1173e (4:573e)
ld a, [CurPartySpecies]
ld [wd265], a
- ld hl, Function8e83f
- ld a, BANK(Function8e83f)
+ ld hl, LoadMenuMonIcon
+ ld a, BANK(LoadMenuMonIcon)
ld e, $1
- rst FarCall ; ; indirect jump to Function8e83f (8e83f (23:683f))
+ rst FarCall ; ; indirect jump to LoadMenuMonIcon (8e83f (23:683f))
ld a, [CurPartySpecies]
ld [wd265], a
call GetPokemonName
--- a/engine/party_menu.asm
+++ b/engine/party_menu.asm
@@ -658,8 +658,8 @@
.loop
push bc
push hl
- ld hl, Function8e83f
- ld a, BANK(Function8e83f)
+ ld hl, LoadMenuMonIcon
+ ld a, BANK(LoadMenuMonIcon)
ld e, $0
rst FarCall
ld a, [hObjectStructIndexBuffer]
@@ -752,8 +752,8 @@
ld [wPartyMenuCursor], a
ld a, [hJoyLast]
ld b, a
- bit 1, b
- jr nz, .exitmenu ; B button?
+ bit B_BUTTON_F, b
+ jr nz, .exitmenu ; B button
ld a, [wMenuCursorY]
dec a
ld [CurPartyMon], a
--- a/engine/player_movement.asm
+++ b/engine/player_movement.asm
@@ -121,12 +121,12 @@
ld a, [PlayerStandingTile]
ld c, a
call CheckWhirlpoolTile
- jr c, .asm_800c4
+ jr c, .not_whirlpool
ld a, 3
scf
ret
-.asm_800c4
+.not_whirlpool
and $f0
cp $30 ; moving water
jr z, .water
--- a/engine/pokecenter_pc.asm
+++ b/engine/pokecenter_pc.asm
@@ -2,9 +2,9 @@
call PC_CheckPartyForPokemon
ret c
call PC_PlayBootSound
- ld hl, UnknownText_0x15a27
+ ld hl, PokeCenterPCText_BootedUpPC
call PC_DisplayText
- ld hl, UnknownText_0x15a2c
+ ld hl, PokeCenterPCText_AccessWhosePC
call PC_DisplayTextWaitMenu
ld hl, .TopMenu
call LoadMenuDataHeader
@@ -25,40 +25,35 @@
call ExitMenu
call CloseWindow
ret
-; 155d6
-.TopMenu: ; 0x155d6
+.TopMenu
db $48 ; flags
db 00, 00 ; start coords
db 12, 15 ; end coords
dw .MenuData2
db 1 ; default option
-; 0x155de
-.MenuData2: ; 0x155de
+.MenuData2
db $a0 ; flags
db 0 ; items
dw .WhichPC
dw PlaceNthMenuStrings
dw .JumpTable
-; 0x155e6
-.JumpTable: ; 155e6
+.JumpTable
dw PlayersPC, .String_PlayersPC
dw BillsPC, .String_BillsPC
dw OaksPC, .String_OaksPC
dw HallOfFamePC, .String_HallOfFame
dw TurnOffPC, .String_TurnOff
-; 155fa
-.String_PlayersPC: db "<PLAYER>'s PC@"
-.String_BillsPC: db "BILL's PC@"
-.String_OaksPC: db "PROF.OAK's PC@"
-.String_HallOfFame: db "HALL OF FAME@"
-.String_TurnOff: db "TURN OFF@"
-; 1562c
+.String_PlayersPC: db "<PLAYER>'s PC@"
+.String_BillsPC: db "BILL's PC@"
+.String_OaksPC: db "PROF.OAK's PC@"
+.String_HallOfFame: db "HALL OF FAME@"
+.String_TurnOff: db "TURN OFF@"
-.WhichPC: ; 1562c
+.WhichPC
; before pokedex
db 3 ; items
db 1, 0, 4 ; bill's, player's, turn off
@@ -73,9 +68,8 @@
db 5 ; items
db 1, 0, 2, 3, 4 ; bill's, player's, oak's, hall of fame, turn off
db -1
-; 1563e
-.ChooseWhichPCListToUse: ; 1563e
+.ChooseWhichPCListToUse
call CheckReceivedDex
jr nz, .got_dex
ld a, $0
@@ -96,13 +90,12 @@
ret nz
ld de, SFX_CHOOSE_PC_OPTION
call PlaySFX
- ld hl, UnknownText_0x15663
+ ld hl, .MustHavePokemonToUse
call PC_DisplayText
scf
ret
-; 15663
-UnknownText_0x15663: ; 0x15663
+.MustHavePokemonToUse
; Bzzzzt! You must have a #MON to use this!
text_jump UnknownText_0x1c1328
db "@"
@@ -110,7 +103,7 @@
BillsPC: ; 15668
call PC_PlayChoosePCSound
- ld hl, UnknownText_0x15a31
+ ld hl, PokeCenterPCText_AccessedBillsPC
call PC_DisplayText
callba _BillsPC
and a
@@ -119,7 +112,7 @@
PlayersPC: ; 15679
call PC_PlayChoosePCSound
- ld hl, UnknownText_0x15a36
+ ld hl, PokeCenterPCText_AccessedOwnPC
call PC_DisplayText
ld b, $0
call _PlayersPC
@@ -129,7 +122,7 @@
OaksPC: ; 15689
call PC_PlayChoosePCSound
- ld hl, UnknownText_0x15a3b
+ ld hl, PokeCenterPCText_AccessedOaksPC
call PC_DisplayText
callba ProfOaksPC
and a
@@ -146,7 +139,7 @@
; 156ab
TurnOffPC: ; 156ab
- ld hl, UnknownText_0x15a40
+ ld hl, PokeCenterPCText_LinkClosed
call PrintText
scf
ret
@@ -166,7 +159,7 @@
ld de, SFX_CHOOSE_PC_OPTION
jr PC_WaitPlaySFX
-Function156c7: ; 156c7
+PC_PlaySwapItemsSound: ; 156c7
ld de, SFX_SWITCH_POKEMON
call PC_WaitPlaySFX
ld de, SFX_SWITCH_POKEMON
@@ -218,8 +211,8 @@
Function15715: ; 15715
xor a
- ld [wd0d7], a
- ld [wd0dd], a
+ ld [wPCItemsCursor], a
+ ld [wPCItemsScrollPosition], a
ld hl, KrissPCMenuData
call LoadMenuDataHeader
.asm_15722
@@ -316,19 +309,18 @@
KrisWithdrawItemMenu: ; 0x157d1
call LoadStandardMenuDataHeader
callba ClearPCItemScreen
-.asm_157da
- call Function15985
- jr c, .asm_157e4
- call Function157e9
- jr .asm_157da
+.loop
+ call PCItemsJoypad
+ jr c, .quit
+ call .Submenu
+ jr .loop
-.asm_157e4
+.quit
call CloseSubmenu
xor a
ret
-; 0x157e9
-Function157e9: ; 0x157e9
+.Submenu
; check if the item has a quantity
callba _CheckTossableItem
ld a, [wItemAttributeParamBuffer]
@@ -351,7 +343,7 @@
.withdraw
ld a, [wItemQuantityChangeBuffer]
ld [Buffer1], a ; quantity
- ld a, [wd107]
+ ld a, [CurItemQuantity]
ld [Buffer2], a
ld hl, NumItems
call ReceiveItem
@@ -359,7 +351,7 @@
ld a, [Buffer1]
ld [wItemQuantityChangeBuffer], a
ld a, [Buffer2]
- ld [wd107], a
+ ld [CurItemQuantity], a
ld hl, PCItems
call TossItem
predef PartyMonItemName
@@ -377,7 +369,6 @@
.done
ret
-; 0x15850
.HowManyText ; 0x15850
text_jump _KrissPCHowManyWithdrawText
@@ -391,24 +382,22 @@
text_jump _KrissPCNoRoomWithdrawText
db "@"
-
KrisTossItemMenu: ; 0x1585f
call LoadStandardMenuDataHeader
callba ClearPCItemScreen
-.asm_15868
- call Function15985
- jr c, .asm_15878
+.loop
+ call PCItemsJoypad
+ jr c, .quit
ld de, PCItems
- callba Function129f4
- jr .asm_15868
+ callba TossItemFromPC
+ jr .loop
-.asm_15878
+.quit
call CloseSubmenu
xor a
ret
; 0x1587d
-
KrisDecorationMenu: ; 0x1587d
callba _KrisDecorationMenu
ld a, c
@@ -418,7 +407,6 @@
ret
; 0x15888
-
KrisLogOffMenu: ; 0x15888
xor a
scf
@@ -425,47 +413,42 @@
ret
; 0x1588b
-
KrisDepositItemMenu: ; 0x1588b
- call Function158b8
- jr c, .asm_158b6
+ call .CheckItemsInBag
+ jr c, .nope
call DisableSpriteUpdates
call LoadStandardMenuDataHeader
callba DepositSellInitPackBuffers
-.asm_1589c
+.loop
callba DepositSellPack
ld a, [wcf66]
and a
- jr z, .asm_158b3
- call Function158cc
+ jr z, .close
+ call .TryDepositItem
callba CheckRegisteredItem
- jr .asm_1589c
+ jr .loop
-.asm_158b3
+.close
call CloseSubmenu
-.asm_158b6
+.nope
xor a
ret
-; 0x158b8
-Function158b8: ; 0x158b8
+.CheckItemsInBag
callba HasNoItems
ret nc
- ld hl, UnknownText_0x158c7
+ ld hl, .NoItemsInBag
call MenuTextBoxBackup
scf
ret
-; 0x158c7
-UnknownText_0x158c7: ; 0x158c7
+.NoItemsInBag
; No items here!
text_jump UnknownText_0x1c13df
db "@"
-; 0x158cc
-
-Function158cc: ; 0x158cc
+.TryDepositItem
ld a, [wSpriteUpdatesEnabled]
push af
ld a, $0
@@ -477,9 +460,8 @@
pop af
ld [wSpriteUpdatesEnabled], a
ret
-; 0x158e7
-.dw: ; 0x158e7
+.dw
dw .tossable
dw .no_toss
dw .no_toss
@@ -488,32 +470,31 @@
dw .tossable
dw .tossable
-.no_toss:
+.no_toss
ret
-.tossable:
+.tossable
ld a, [Buffer1]
push af
ld a, [Buffer2]
push af
- call Function1590a
+ call .DepositItem_
pop af
ld [Buffer2], a
pop af
ld [Buffer1], a
ret
-; 0x1590a
-Function1590a: ; 0x1590a
+.DepositItem_
callba _CheckTossableItem
ld a, [wItemAttributeParamBuffer]
and a
- jr z, .asm_1591d
+ jr z, .AskQuantity
ld a, $1
ld [wItemQuantityChangeBuffer], a
- jr .asm_15933
+ jr .DepositItem
-.asm_1591d
+.AskQuantity
ld hl, .HowManyText
call MenuTextBox
callba SelectQuantityToToss
@@ -521,20 +502,20 @@
call ExitMenu
call ExitMenu
pop af
- jr c, .asm_1596c
+ jr c, .DeclinedToDeposit
-.asm_15933
+.DepositItem
ld a, [wItemQuantityChangeBuffer]
ld [Buffer1], a
- ld a, [wd107]
+ ld a, [CurItemQuantity]
ld [Buffer2], a
ld hl, PCItems
call ReceiveItem
- jr nc, .asm_15965
+ jr nc, .NoRoomInPC
ld a, [Buffer1]
ld [wItemQuantityChangeBuffer], a
ld a, [Buffer2]
- ld [wd107], a
+ ld [CurItemQuantity], a
ld hl, NumItems
call TossItem
predef PartyMonItemName
@@ -542,17 +523,15 @@
call PrintText
ret
-.asm_15965
+.NoRoomInPC
ld hl, .NoRoomText
call PrintText
ret
-.asm_1596c
+.DeclinedToDeposit
and a
ret
-; 0x1596e
-
.HowManyText ; 0x1596e
text_jump _KrissPCHowManyDepositText
db "@"
@@ -565,7 +544,6 @@
text_jump _KrissPCNoRoomDepositText
db "@"
-
KrisMailBoxMenu: ; 0x1597d
callba _KrisMailBoxMenu
xor a
@@ -572,80 +550,76 @@
ret
; 0x15985
-
-Function15985: ; 0x15985
+PCItemsJoypad: ; 0x15985
xor a
- ld [wd0e3], a
-.asm_15989
+ ld [wSwitchItem], a
+.loop
ld a, [wSpriteUpdatesEnabled]
push af
ld a, $0
ld [wSpriteUpdatesEnabled], a
- ld hl, MenuData15a08
+ ld hl, .PCItemsMenuData
call CopyMenuDataHeader
hlcoord 0, 0
- ld b, $a
- ld c, $12
+ ld b, 10
+ ld c, 18
call TextBox
- ld a, [wd0d7]
+ ld a, [wPCItemsCursor]
ld [wMenuCursorBuffer], a
- ld a, [wd0dd]
+ ld a, [wPCItemsScrollPosition]
ld [wMenuScrollPosition], a
call ScrollingMenu
ld a, [wMenuScrollPosition]
- ld [wd0dd], a
+ ld [wPCItemsScrollPosition], a
ld a, [wMenuCursorY]
- ld [wd0d7], a
+ ld [wPCItemsCursor], a
pop af
ld [wSpriteUpdatesEnabled], a
- ld a, [wd0e3]
+ ld a, [wSwitchItem]
and a
- jr nz, .asm_159d8
+ jr nz, .moving_stuff_around
ld a, [wMenuJoypad]
- cp $2
- jr z, .asm_15a06
- cp $1
- jr z, .asm_159fb
- cp $4
- jr z, .asm_159f2
- jr .asm_159f8
+ cp B_BUTTON
+ jr z, .b_1
+ cp A_BUTTON
+ jr z, .a_1
+ cp SELECT
+ jr z, .select_1
+ jr .next
-.asm_159d8
+.moving_stuff_around
ld a, [wMenuJoypad]
- cp $2
- jr z, .asm_159e9
- cp $1
- jr z, .asm_159ef
- cp $4
- jr z, .asm_159ef
- jr .asm_159f8
+ cp B_BUTTON
+ jr z, .b_2
+ cp A_BUTTON
+ jr z, .a_select_2
+ cp SELECT
+ jr z, .a_select_2
+ jr .next
-.asm_159e9
+.b_2
xor a
- ld [wd0e3], a
- jr .asm_159f8
+ ld [wSwitchItem], a
+ jr .next
-.asm_159ef
- call Function156c7
-
-.asm_159f2
+.a_select_2
+ call PC_PlaySwapItemsSound
+.select_1
callba SwitchItemsInBag
+.next
+ jp .loop
-.asm_159f8
- jp .asm_15989
-
-.asm_159fb
- callba Function24706
+.a_1
+ callba ScrollingMenu_ClearLeftColumn
call PlaceHollowCursor
and a
ret
-.asm_15a06
+.b_1
scf
ret
-; 0x15a08
-MenuData15a08: ; 0x15a08
+.PCItemsMenuData
db %01000000
db 1, 4 ; start coords
db 10, 18 ; end coords
@@ -667,38 +641,37 @@
ret
; 15a27
-
-UnknownText_0x15a27: ; 0x15a27
+PokeCenterPCText_BootedUpPC: ; 0x15a27
; turned on the PC.
text_jump UnknownText_0x1c144d
db "@"
; 0x15a2c
-UnknownText_0x15a2c: ; 0x15a2c
+PokeCenterPCText_AccessWhosePC: ; 0x15a2c
; Access whose PC?
text_jump UnknownText_0x1c1462
db "@"
; 0x15a31
-UnknownText_0x15a31: ; 0x15a31
+PokeCenterPCText_AccessedBillsPC: ; 0x15a31
; BILL's PC accessed. #MON Storage System opened.
text_jump UnknownText_0x1c1474
db "@"
; 0x15a36
-UnknownText_0x15a36: ; 0x15a36
+PokeCenterPCText_AccessedOwnPC: ; 0x15a36
; Accessed own PC. Item Storage System opened.
text_jump UnknownText_0x1c14a4
db "@"
; 0x15a3b
-UnknownText_0x15a3b: ; 0x15a3b
+PokeCenterPCText_AccessedOaksPC: ; 0x15a3b
; PROF.OAK's PC accessed. #DEX Rating System opened.
text_jump UnknownText_0x1c14d2
db "@"
; 0x15a40
-UnknownText_0x15a40: ; 0x15a40
+PokeCenterPCText_LinkClosed: ; 0x15a40
; … Link closed…
text_jump UnknownText_0x1c1505
db "@"
--- a/engine/scrolling_menu.asm
+++ b/engine/scrolling_menu.asm
@@ -210,17 +210,17 @@
ret
; 24706
-Function24706: ; 24706 (9:4706)
+ScrollingMenu_ClearLeftColumn: ; 24706 (9:4706)
call MenuBoxCoord2Tile
ld de, SCREEN_WIDTH
add hl, de
ld de, 2 * SCREEN_WIDTH
ld a, [wMenuData2_ScrollingMenuHeight]
-.asm_24713
+.loop
ld [hl], " "
add hl, de
dec a
- jr nz, .asm_24713
+ jr nz, .loop
ret
InitScrollingMenuCursor: ; 2471a
--- a/engine/startmenu.asm
+++ b/engine/startmenu.asm
@@ -91,7 +91,7 @@
ld [MenuSelection], a
.loop
call .PrintMenuAccount
- call Function1f1a
+ call GetScrollingMenuJoypad
ld a, [wMenuJoypad]
cp B_BUTTON
jr z, .b
@@ -591,14 +591,14 @@
and a
ret
-Function129f4: ; 129f4
+TossItemFromPC: ; 129f4
push de
call PartyMonItemName
callba _CheckTossableItem
ld a, [wItemAttributeParamBuffer]
and a
- jr nz, .asm_12a3f
- ld hl, UnknownText_0x12a45
+ jr nz, .key_item
+ ld hl, .TossHowMany
call MenuTextBox
callba SelectQuantityToToss
push af
@@ -605,56 +605,52 @@
call CloseWindow
call ExitMenu
pop af
- jr c, .asm_12a42
- ld hl, UnknownText_0x12a4a
+ jr c, .quit
+ ld hl, .ConfirmToss
call MenuTextBox
call YesNoBox
push af
call ExitMenu
pop af
- jr c, .asm_12a42
+ jr c, .quit
pop hl
ld a, [wd107]
call TossItem
call PartyMonItemName
- ld hl, UnknownText_0x12a4f
+ ld hl, .TossedThisMany
call MenuTextBox
call ExitMenu
and a
ret
-.asm_12a3f
- call Function12a54
-.asm_12a42
+
+.key_item
+ call .CantToss
+.quit
pop hl
scf
ret
-; 12a45 (4:6a45)
-UnknownText_0x12a45: ; 0x12a45
+.TossHowMany
; Toss out how many @ (S)?
text_jump UnknownText_0x1c1a90
db "@"
-; 0x12a4a
-UnknownText_0x12a4a: ; 0x12a4a
+.ConfirmToss
; Throw away @ @ (S)?
text_jump UnknownText_0x1c1aad
db "@"
-; 0x12a4f
-UnknownText_0x12a4f: ; 0x12a4f
+.TossedThisMany
; Discarded @ (S).
text_jump UnknownText_0x1c1aca
db "@"
-; 0x12a54
-Function12a54: ; 12a54 (4:6a54)
- ld hl, UnknownText_0x12a5b
+.CantToss
+ ld hl, .TooImportantToToss
call MenuTextBoxBackup
ret
-; 12a5b (4:6a5b)
-UnknownText_0x12a5b: ; 0x12a5b
+.TooImportantToToss
; That's too impor- tant to toss out!
text_jump UnknownText_0x1c1adf
db "@"
@@ -830,7 +826,7 @@
; 12ba9
-.GiveItem: ; 12ba9
+.GiveItem
callba DepositSellInitPackBuffers
@@ -1168,7 +1164,7 @@
; 12dc9
-.MenuDataHeader: ; 0x12dc9
+.MenuDataHeader
db $40 ; flags
db 10, 12 ; start coords
db 17, 19 ; end coords
@@ -1176,7 +1172,7 @@
db 1 ; default option
; 0x12dd1
-.MenuData2: ; 0x12dd1
+.MenuData2
db $80 ; flags
db 3 ; items
db "READ@"
@@ -1185,37 +1181,37 @@
; 0x12de2
-.mailwilllosemessagetext: ; 0x12de2
+.mailwilllosemessagetext
; The MAIL will lose its message. OK?
text_jump UnknownText_0x1c1c22
db "@"
; 0x12de7
-.tookmailfrommontext: ; 0x12de7
+.tookmailfrommontext
; MAIL detached from <POKEMON>.
text_jump UnknownText_0x1c1c47
db "@"
; 0x12dec
-.bagfulltext: ; 0x12dec
+.bagfulltext
; There's no space for removing MAIL.
text_jump UnknownText_0x1c1c62
db "@"
; 0x12df1
-.sendmailtopctext: ; 0x12df1
+.sendmailtopctext
; Send the removed MAIL to your PC?
text_jump UnknownText_0x1c1c86
db "@"
; 0x12df6
-.mailboxfulltext: ; 0x12df6
+.mailboxfulltext
; Your PC's MAILBOX is full.
text_jump UnknownText_0x1c1ca9
db "@"
; 0x12dfb
-.sentmailtopctext: ; 0x12dfb
+.sentmailtopctext
; The MAIL was sent to your PC.
text_jump UnknownText_0x1c1cc4
db "@"
@@ -1392,13 +1388,13 @@
ret
; 12f00
-.Text_NotEnoughHP: ; 0x12f00
+.Text_NotEnoughHP
; Not enough HP!
text_jump UnknownText_0x1c1ce3
db "@"
; 0x12f05
-.CheckMonHasEnoughHP: ; 12f05
+.CheckMonHasEnoughHP
; Need to have at least (MaxHP / 5) HP left.
ld a, MON_MAXHP
call GetPartyParamLocation
@@ -1471,7 +1467,7 @@
ret
; 12f73
-.asm_12f73: ; 12f73
+.asm_12f73
call SetUpMoveScreenBG
ld de, DeleteMoveScreenAttrs
call SetMenuAttributes
@@ -1480,7 +1476,7 @@
set 6, [hl]
jr .asm_12f93
-.asm_12f86: ; 12f86
+.asm_12f86
call ScrollingMenuJoypad
bit 1, a
jp nz, .asm_12f9f
@@ -1487,20 +1483,20 @@
bit 0, a
jp nz, .asm_12f9c
-.asm_12f93: ; 12f93
+.asm_12f93
call PrepareToPlaceMoveData
call PlaceMoveData
jp .asm_12f86
; 12f9c
-.asm_12f9c: ; 12f9c
+.asm_12f9c
and a
jr .asm_12fa0
-.asm_12f9f: ; 12f9f
+.asm_12f9f
scf
-.asm_12fa0: ; 12fa0
+.asm_12fa0
push af
xor a
ld [wSwitchMon], a
@@ -1583,7 +1579,7 @@
ld de, String_1316b
call PlaceString
jp .joy_loop
-.b_button: ; 13038
+.b_button
call PlayClickSFX
call WaitSFX
ld a, [wMoveSwapBuffer]
@@ -1600,7 +1596,7 @@
jp .loop
; 1305b
-.d_right: ; 1305b
+.d_right
ld a, [wMoveSwapBuffer]
and a
jp nz, .joy_loop
@@ -1615,7 +1611,7 @@
jp z, .joy_loop
jp MoveScreenLoop
-.d_left: ; 13075
+.d_left
ld a, [wMoveSwapBuffer]
and a
jp nz, .joy_loop
@@ -1665,7 +1661,7 @@
jr .cycle_left_loop
; 130c6
-.a_button: ; 130c6
+.a_button
call PlayClickSFX
call WaitSFX
ld a, [wMoveSwapBuffer]
@@ -1716,7 +1712,7 @@
jp .loop
; 1313a
-.copy_move: ; 1313a
+.copy_move
push hl
ld a, [wMenuCursorY]
dec a
@@ -1739,7 +1735,7 @@
ret
; 13154
-.exit: ; 13154
+.exit
xor a
ld [wMoveSwapBuffer], a
ld hl, w2DMenuFlags1
@@ -1776,7 +1772,7 @@
ld a, [hl]
ld [wd265], a
ld e, $2
- callba Function8e83f
+ callba LoadMenuMonIcon
hlcoord 0, 1
ld b, 9
ld c, 18
--- a/engine/tile_events.asm
+++ b/engine/tile_events.asm
@@ -21,17 +21,17 @@
; Else, set carry (immediate warp).
ld a, [PlayerStandingTile]
cp $70 ; Warp on down
- jr z, .not_warp
+ jr z, .directional
cp $76 ; Warp on left
- jr z, .not_warp
+ jr z, .directional
cp $78 ; Warp on up
- jr z, .not_warp
+ jr z, .directional
cp $7e ; Warp on right
- jr z, .not_warp
+ jr z, .directional
scf
ret
-.not_warp
+.directional
xor a
ret
; 149c6
--- a/engine/time.asm
+++ b/engine/time.asm
@@ -133,7 +133,7 @@
; 11485
Special_SampleKenjiBreakCountdown: ; 11485
-; Generate a random number between 3 and 5
+; Generate a random number between 3 and 6
call Random
and 3
add 3
--- a/engine/trade/animation.asm
+++ b/engine/trade/animation.asm
@@ -1440,7 +1440,7 @@
LoadTradeBubbleGFX: ; 2985a
call DelayFrame
ld e, $3
- callab Function8e83f
+ callab LoadMenuMonIcon
ld de, TradeBubbleGFX
ld hl, VTiles0 tile $72
lb bc, BANK(TradeBubbleGFX), $4
--- a/event/mom.asm
+++ b/event/mom.asm
@@ -480,7 +480,7 @@
lb bc, PRINTNUM_MONEY | PRINTNUM_LEADINGZEROS | 3, 6
call PrintNum
call UpdateSprites
- call Function3238
+ call CGBOnly_LoadEDTile
ret
; 1656b
--- a/event/poke_seer.asm
+++ b/event/poke_seer.asm
@@ -163,6 +163,7 @@
call ByteFill
; caught level
+ ; Limited to between 1 and 63 for some reason.
ld a, [wSeerCaughtData]
and $3f
jr z, .unknown
--- a/home.asm
+++ b/home.asm
@@ -560,7 +560,7 @@
ret
; 3238
-Function3238:: ; 3238
+CGBOnly_LoadEDTile:: ; 3238
ld a, [hCGB]
and a
jr z, WaitBGMap
--- a/home/map.asm
+++ b/home/map.asm
@@ -1593,7 +1593,14 @@
; 2945
.MovementPermissionsData ; 2945
- db 1, 2, 4, 8, 9, 10, 5, 6
+ db 1 << DOWN
+ db 1 << UP
+ db 1 << LEFT
+ db 1 << RIGHT
+ db (1 << DOWN) | (1 << RIGHT)
+ db (1 << UP) | (1 << RIGHT)
+ db (1 << DOWN) | (1 << LEFT)
+ db (1 << UP) | (1 << LEFT)
; 294d
.UpDown
--- a/home/menu.asm
+++ b/home/menu.asm
@@ -232,7 +232,7 @@
call MenuFunc_1e7f
call MenuWriteText
call Function1eff
- call Function1f23
+ call GetStaticMenuJoypad
call GetMenuJoypad
call MenuClickSound
ret
@@ -360,20 +360,20 @@
; 1f1a
-Function1f1a:: ; 1f1a
+GetScrollingMenuJoypad:: ; 1f1a
call ScrollingMenuJoypad
ld hl, wMenuJoypadFilter
and [hl]
- jr Function1f2a
+ jr ContinueGettingMenuJoypad
; 1f23
-Function1f23:: ; 1f23
+GetStaticMenuJoypad:: ; 1f23
xor a
ld [wMenuJoypad], a
call StaticMenuJoypad
; 1f2a
-Function1f2a:: ; 1f2a
+ContinueGettingMenuJoypad:
bit A_BUTTON_F, a
jr nz, .a_button
bit B_BUTTON_F, a
--- a/home/movement.asm
+++ b/home/movement.asm
@@ -4,9 +4,9 @@
ld [wMovementBufferCount], a
ld a, $0 ; useless
ld [wd004], a
- ld a, $7
+ ld a, MovementBuffer % $100
ld [wd005], a
- ld a, $d0
+ ld a, MovementBuffer / $100
ld [wd006], a
ret
; 1b35
--- a/macros/move_effect.asm
+++ b/macros/move_effect.asm
@@ -5,181 +5,181 @@
enum_start 1
- command checkturn
- command checkobedience
- command usedmovetext
- command doturn
- command critical
- command damagestats
- command stab
- command damagevariation
- command checkhit
- command lowersub
- command hittargetnosub
- command raisesub
- command failuretext
- command checkfaint
- command criticaltext
- command supereffectivetext
- command checkdestinybond
- command buildopponentrage
- command poisontarget
- command sleeptarget
- command draintarget
- command eatdream
- command burntarget
- command freezetarget
- command paralyzetarget
- command selfdestruct
- command mirrormove
- command statup
- command statdown
- command payday
- command conversion
- command resetstats
- command storeenergy
- command unleashenergy
- command forceswitch
- command endloop
- command flinchtarget
- command ohko
- command recoil
- command mist
- command focusenergy
- command confuse
- command confusetarget
- command heal
- command transform
- command screen
- command poison
- command paralyze
- command substitute
- command rechargenextturn
- command mimic
- command metronome
- command leechseed
- command splash
- command disable
- command cleartext
- command charge
- command checkcharge
- command traptarget
- command effect0x3c
- command rampage
- command checkrampage
- command constantdamage
- command counter
- command encore
- command painsplit
- command snore
- command conversion2
- command lockon
- command sketch
- command defrostopponent
- command sleeptalk
- command destinybond
- command spite
- command falseswipe
- command healbell
- command kingsrock
- command triplekick
- command kickcounter
- command thief
- command arenatrap
- command nightmare
- command defrost
- command curse
- command protect
- command spikes
- command foresight
- command perishsong
- command startsandstorm
- command endure
- command checkcurl
- command rolloutpower
- command effect0x5d
- command furycutter
- command attract
- command happinesspower
- command present
- command damagecalc
- command frustrationpower
- command safeguard
- command checksafeguard
- command getmagnitude
- command batonpass
- command pursuit
- command clearhazards
- command healmorn
- command healday
- command healnite
- command hiddenpower
- command startrain
- command startsun
- command attackup
- command defenseup
- command speedup
- command specialattackup
- command specialdefenseup
- command accuracyup
- command evasionup
- command attackup2
- command defenseup2
- command speedup2
- command specialattackup2
- command specialdefenseup2
- command accuracyup2
- command evasionup2
- command attackdown
- command defensedown
- command speeddown
- command specialattackdown
- command specialdefensedown
- command accuracydown
- command evasiondown
- command attackdown2
- command defensedown2
- command speeddown2
- command specialattackdown2
- command specialdefensedown2
- command accuracydown2
- command evasiondown2
- command statupmessage
- command statdownmessage
- command statupfailtext
- command statdownfailtext
- command effectchance
- command statdownanim
- command statupanim
- command switchturn
- command fakeout
- command bellydrum
- command psychup
- command rage
- command doubleflyingdamage
- command doubleundergrounddamage
- command mirrorcoat
- command checkfuturesight
- command futuresight
- command doubleminimizedamage
- command skipsuncharge
- command thunderaccuracy
- command teleport
- command beatup
- command ragedamage
- command resettypematchup
- command allstatsup
- command effect0xa5
- command raisesubnoanim
- command lowersubnoanim
- command effect0xa8
- command clearmissdamage
- command movedelay
- command hittarget
- command tristatuschance
- command supereffectivelooptext
- command startloop
- command curl
+ command checkturn ; 01
+ command checkobedience ; 02
+ command usedmovetext ; 03
+ command doturn ; 04
+ command critical ; 05
+ command damagestats ; 06
+ command stab ; 07
+ command damagevariation ; 08
+ command checkhit ; 09
+ command lowersub ; 0a
+ command hittargetnosub ; 0b
+ command raisesub ; 0c
+ command failuretext ; 0d
+ command checkfaint ; 0e
+ command criticaltext ; 0f
+ command supereffectivetext ; 10
+ command checkdestinybond ; 11
+ command buildopponentrage ; 12
+ command poisontarget ; 13
+ command sleeptarget ; 14
+ command draintarget ; 15
+ command eatdream ; 16
+ command burntarget ; 17
+ command freezetarget ; 18
+ command paralyzetarget ; 19
+ command selfdestruct ; 1a
+ command mirrormove ; 1b
+ command statup ; 1c
+ command statdown ; 1d
+ command payday ; 1e
+ command conversion ; 1f
+ command resetstats ; 20
+ command storeenergy ; 21
+ command unleashenergy ; 22
+ command forceswitch ; 23
+ command endloop ; 24
+ command flinchtarget ; 25
+ command ohko ; 26
+ command recoil ; 27
+ command mist ; 28
+ command focusenergy ; 29
+ command confuse ; 2a
+ command confusetarget ; 2b
+ command heal ; 2c
+ command transform ; 2d
+ command screen ; 2e
+ command poison ; 2f
+ command paralyze ; 30
+ command substitute ; 31
+ command rechargenextturn ; 32
+ command mimic ; 33
+ command metronome ; 34
+ command leechseed ; 35
+ command splash ; 36
+ command disable ; 37
+ command cleartext ; 38
+ command charge ; 39
+ command checkcharge ; 3a
+ command traptarget ; 3b
+ command effect0x3c ; 3c
+ command rampage ; 3d
+ command checkrampage ; 3e
+ command constantdamage ; 3f
+ command counter ; 40
+ command encore ; 41
+ command painsplit ; 42
+ command snore ; 43
+ command conversion2 ; 44
+ command lockon ; 45
+ command sketch ; 46
+ command defrostopponent ; 47
+ command sleeptalk ; 48
+ command destinybond ; 49
+ command spite ; 4a
+ command falseswipe ; 4b
+ command healbell ; 4c
+ command kingsrock ; 4d
+ command triplekick ; 4e
+ command kickcounter ; 4f
+ command thief ; 50
+ command arenatrap ; 51
+ command nightmare ; 52
+ command defrost ; 53
+ command curse ; 54
+ command protect ; 55
+ command spikes ; 56
+ command foresight ; 57
+ command perishsong ; 58
+ command startsandstorm ; 59
+ command endure ; 5a
+ command checkcurl ; 5b
+ command rolloutpower ; 5c
+ command effect0x5d ; 5d
+ command furycutter ; 5e
+ command attract ; 5f
+ command happinesspower ; 60
+ command present ; 61
+ command damagecalc ; 62
+ command frustrationpower ; 63
+ command safeguard ; 64
+ command checksafeguard ; 65
+ command getmagnitude ; 66
+ command batonpass ; 67
+ command pursuit ; 68
+ command clearhazards ; 69
+ command healmorn ; 6a
+ command healday ; 6b
+ command healnite ; 6c
+ command hiddenpower ; 6d
+ command startrain ; 6e
+ command startsun ; 6f
+ command attackup ; 70
+ command defenseup ; 71
+ command speedup ; 72
+ command specialattackup ; 73
+ command specialdefenseup ; 74
+ command accuracyup ; 75
+ command evasionup ; 76
+ command attackup2 ; 77
+ command defenseup2 ; 78
+ command speedup2 ; 79
+ command specialattackup2 ; 7a
+ command specialdefenseup2 ; 7b
+ command accuracyup2 ; 7c
+ command evasionup2 ; 7d
+ command attackdown ; 7e
+ command defensedown ; 7f
+ command speeddown ; 80
+ command specialattackdown ; 81
+ command specialdefensedown ; 82
+ command accuracydown ; 83
+ command evasiondown ; 84
+ command attackdown2 ; 85
+ command defensedown2 ; 86
+ command speeddown2 ; 87
+ command specialattackdown2 ; 88
+ command specialdefensedown2 ; 89
+ command accuracydown2 ; 8a
+ command evasiondown2 ; 8b
+ command statupmessage ; 8c
+ command statdownmessage ; 8d
+ command statupfailtext ; 8e
+ command statdownfailtext ; 8f
+ command effectchance ; 90
+ command statdownanim ; 91
+ command statupanim ; 92
+ command switchturn ; 93
+ command fakeout ; 94
+ command bellydrum ; 95
+ command psychup ; 96
+ command rage ; 97
+ command doubleflyingdamage ; 98
+ command doubleundergrounddamage ; 99
+ command mirrorcoat ; 9a
+ command checkfuturesight ; 9b
+ command futuresight ; 9c
+ command doubleminimizedamage ; 9d
+ command skipsuncharge ; 9e
+ command thunderaccuracy ; 9f
+ command teleport ; a0
+ command beatup ; a1
+ command ragedamage ; a2
+ command resettypematchup ; a3
+ command allstatsup ; a4
+ command effect0xa5 ; a5
+ command raisesubnoanim ; a6
+ command lowersubnoanim ; a7
+ command effect0xa8 ; a8
+ command clearmissdamage ; a9
+ command movedelay ; aa
+ command hittarget ; ab
+ command tristatuschance ; ac
+ command supereffectivelooptext ; ad
+ command startloop ; ae
+ command curl ; af
enum_start -1, -1
command endmove
--- a/macros/movement.asm
+++ b/macros/movement.asm
@@ -281,7 +281,15 @@
db movement_fast_jump_step_right ; $37
endm
-__enum__ = $3a
+ enum movement_remove_sliding
+remove_sliding: macro
+ db movement_remove_sliding ; $38
+ endm
+
+ enum movement_set_sliding
+set_sliding: macro
+ db movement_set_sliding ; $39
+ endm
enum movement_remove_fixed_facing
remove_fixed_facing: macro
--- a/macros/sound.asm
+++ b/macros/sound.asm
@@ -15,7 +15,7 @@
endm
musicheader: macro
- ; number of tracks, ??, address
+ ; number of tracks, track idx, address
dbw ((\1 - 1) << 6) + (\2 - 1), \3
endm
--- a/main.asm
+++ b/main.asm
@@ -3799,7 +3799,7 @@
ld hl, Script_GetOffBike
ld de, Script_GetOffBike_Register
call .CheckIfRegistered
- ld a, $3
+ ld a, BANK(Script_GetOffBike)
jr .done
.CantGetOffBike
@@ -6275,7 +6275,7 @@
call ClearSprites
ret
-FindFirstAliveMon: ; 2ee2f
+FindFirstAliveMonAndStartBattle: ; 2ee2f
xor a
ld [hMapAnims], a
call DelayFrame
@@ -10522,8 +10522,8 @@
INCLUDE "event/field_moves.asm"
INCLUDE "event/magnet_train.asm"
-Function8cf4f: ; 8cf4f
- call Function3238
+BattleStart_LoadEDTile: ; 8cf4f
+ call CGBOnly_LoadEDTile
ret
INCLUDE "engine/sprites.asm"
--- a/maps/BurnedTowerB1F.asm
+++ b/maps/BurnedTowerB1F.asm
@@ -130,46 +130,46 @@
jumpstd strengthboulder
MovementData_0x186236:
- db $39 ; movement
+ set_sliding
fast_jump_step_down
fast_jump_step_left
- db $38 ; movement
+ remove_sliding
step_end
MovementData_0x18623b:
- db $39 ; movement
+ set_sliding
fast_jump_step_right
fast_jump_step_down
fast_jump_step_right
- db $38 ; movement
+ remove_sliding
step_end
MovementData_0x186241:
- db $39 ; movement
+ set_sliding
fast_jump_step_right
fast_jump_step_down
fast_jump_step_down
fast_jump_step_left
- db $38 ; movement
+ remove_sliding
step_end
MovementData_0x186248:
- db $39 ; movement
+ set_sliding
fast_jump_step_left
fast_jump_step_up
big_step_up
fast_jump_step_right
- db $38 ; movement
+ remove_sliding
step_end
MovementData_0x18624f:
- db $39 ; movement
+ set_sliding
big_step_down
- db $38 ; movement
+ remove_sliding
step_end
MovementData_0x186253:
- db $39 ; movement
+ set_sliding
big_step_up
fast_jump_step_right
fast_jump_step_down
@@ -176,7 +176,7 @@
fast_jump_step_down
fast_jump_step_down
fast_jump_step_down
- db $38 ; movement
+ remove_sliding
step_end
MovementData_0x18625c:
--- a/maps/CianwoodGym.asm
+++ b/maps/CianwoodGym.asm
@@ -21,15 +21,15 @@
opentext
checkevent EVENT_BEAT_CHUCK
iftrue .FightDone
- writetext UnknownText_0x9d6f9
+ writetext ChuckIntroText1
waitbutton
closetext
spriteface CIANWOODGYM_CHUCK, RIGHT
opentext
- writetext UnknownText_0x9d76f
+ writetext ChuckIntroText2
waitbutton
closetext
- applymovement CIANWOODGYM_BOULDER1, MovementData_0x9d6f3
+ applymovement CIANWOODGYM_BOULDER1, CianwoodGymMovement_ChuckChucksBoulder
playsound SFX_STRENGTH
earthquake 80
disappear CIANWOODGYM_BOULDER1
@@ -36,16 +36,16 @@
pause 30
faceplayer
opentext
- writetext UnknownText_0x9d78a
+ writetext ChuckIntroText3
waitbutton
closetext
- winlosstext UnknownText_0x9d7f6, 0
+ winlosstext ChuckLossText, 0
loadtrainer CHUCK, 1
startbattle
reloadmapafterbattle
setevent EVENT_BEAT_CHUCK
opentext
- writetext UnknownText_0x9d835
+ writetext GetStormBadgeText
playsound SFX_GET_BADGE
waitsfx
setflag ENGINE_STORMBADGE
@@ -53,25 +53,25 @@
scall CianwoodGymTriggerRockets
.FightDone
checkevent EVENT_GOT_TM01_DYNAMICPUNCH
- iftrue UnknownScript_0x9d67b
+ iftrue .AlreadyGotTM
setevent EVENT_BEAT_BLACKBELT_YOSHI
setevent EVENT_BEAT_BLACKBELT_LAO
setevent EVENT_BEAT_BLACKBELT_NOB
setevent EVENT_BEAT_BLACKBELT_LUNG
- writetext UnknownText_0x9d84d
+ writetext ChuckExplainBadgeText
buttonsound
verbosegiveitem TM_DYNAMICPUNCH
- iffalse UnknownScript_0x9d67f
+ iffalse .BagFull
setevent EVENT_GOT_TM01_DYNAMICPUNCH
- writetext UnknownText_0x9d8da
+ writetext ChuckExplainTMText
waitbutton
closetext
end
-UnknownScript_0x9d67b:
- writetext UnknownText_0x9d930
+.AlreadyGotTM:
+ writetext ChuckAfterText
waitbutton
-UnknownScript_0x9d67f:
+.BagFull:
closetext
end
@@ -87,45 +87,45 @@
jumpstd radiotowerrockets
TrainerBlackbeltYoshi:
- trainer EVENT_BEAT_BLACKBELT_YOSHI, BLACKBELT_T, YOSHI, BlackbeltYoshiSeenText, BlackbeltYoshiBeatenText, 0, BlackbeltYoshiScript
+ trainer EVENT_BEAT_BLACKBELT_YOSHI, BLACKBELT_T, YOSHI, BlackbeltYoshiSeenText, BlackbeltYoshiBeatenText, 0, .Script
-BlackbeltYoshiScript:
+.Script:
end_if_just_battled
opentext
- writetext UnknownText_0x9d9fa
+ writetext BlackbeltYoshiAfterText
waitbutton
closetext
end
TrainerBlackbeltLao:
- trainer EVENT_BEAT_BLACKBELT_LAO, BLACKBELT_T, LAO, BlackbeltLaoSeenText, BlackbeltLaoBeatenText, 0, BlackbeltLaoScript
+ trainer EVENT_BEAT_BLACKBELT_LAO, BLACKBELT_T, LAO, BlackbeltLaoSeenText, BlackbeltLaoBeatenText, 0, .Script
-BlackbeltLaoScript:
+.Script:
end_if_just_battled
opentext
- writetext UnknownText_0x9da61
+ writetext BlackbeltLaoAfterText
waitbutton
closetext
end
TrainerBlackbeltNob:
- trainer EVENT_BEAT_BLACKBELT_NOB, BLACKBELT_T, NOB, BlackbeltNobSeenText, BlackbeltNobBeatenText, 0, BlackbeltNobScript
+ trainer EVENT_BEAT_BLACKBELT_NOB, BLACKBELT_T, NOB, BlackbeltNobSeenText, BlackbeltNobBeatenText, 0, .Script
-BlackbeltNobScript:
+.Script:
end_if_just_battled
opentext
- writetext UnknownText_0x9dac0
+ writetext BlackbeltNobAfterText
waitbutton
closetext
end
TrainerBlackbeltLung:
- trainer EVENT_BEAT_BLACKBELT_LUNG, BLACKBELT_T, LUNG, BlackbeltLungSeenText, BlackbeltLungBeatenText, 0, BlackbeltLungScript
+ trainer EVENT_BEAT_BLACKBELT_LUNG, BLACKBELT_T, LUNG, BlackbeltLungSeenText, BlackbeltLungBeatenText, 0, .Script
-BlackbeltLungScript:
+.Script:
end_if_just_battled
opentext
- writetext UnknownText_0x9db14
+ writetext BlackbeltLungAfterText
waitbutton
closetext
end
@@ -141,15 +141,15 @@
trainertotext CHUCK, 1, $1
jumpstd gymstatue2
-MovementData_0x9d6f3:
- db $39 ; movement
+CianwoodGymMovement_ChuckChucksBoulder:
+ set_sliding
big_step_left
big_step_up
fast_jump_step_right
- db $38 ; movement
+ remove_sliding
step_end
-UnknownText_0x9d6f9:
+ChuckIntroText1:
text "WAHAHAH!"
para "So you've come"
@@ -165,7 +165,7 @@
para "Watch this!"
done
-UnknownText_0x9d76f:
+ChuckIntroText2:
text "CHUCK: Urggh!"
line "…"
@@ -172,7 +172,7 @@
para "Oooarrgh!"
done
-UnknownText_0x9d78a:
+ChuckIntroText3:
text "There! Scared now,"
line "are you?"
@@ -186,7 +186,7 @@
line "do battle!"
done
-UnknownText_0x9d7f6:
+ChuckLossText:
text "Wha? Huh?"
line "I lost?"
@@ -195,12 +195,12 @@
cont "STORMBADGE!"
done
-UnknownText_0x9d835:
+GetStormBadgeText:
text "<PLAYER> received"
line "STORMBADGE."
done
-UnknownText_0x9d84d:
+ChuckExplainBadgeText:
text "STORMBADGE makes"
line "all #MON up to"
@@ -217,7 +217,7 @@
line "too!"
done
-UnknownText_0x9d8da:
+ChuckExplainTMText:
text "That is DYNAMIC-"
line "PUNCH."
@@ -228,7 +228,7 @@
line "confusion!"
done
-UnknownText_0x9d930:
+ChuckAfterText:
text "WAHAHAH! I enjoyed"
line "battling you!"
@@ -253,7 +253,7 @@
text "This isn't real!"
done
-UnknownText_0x9d9fa:
+BlackbeltYoshiAfterText:
text "You seem to have a"
line "strong bond with"
cont "your #MON too!"
@@ -268,7 +268,7 @@
text "That's shocking!"
done
-UnknownText_0x9da61:
+BlackbeltLaoAfterText:
text "Fighting #MON"
line "are afraid of psy-"
cont "chics…"
@@ -284,7 +284,7 @@
text "…"
done
-UnknownText_0x9dac0:
+BlackbeltNobAfterText:
text "I lost! "
line "I'm speechless!"
done
@@ -299,7 +299,7 @@
text "I got shattered!"
done
-UnknownText_0x9db14:
+BlackbeltLungAfterText:
text "My #MON lost…"
line "My… my pride is"
cont "shattered…"
--- a/maps/LancesRoom.asm
+++ b/maps/LancesRoom.asm
@@ -8,8 +8,8 @@
db 2
; triggers
- dw UnknownScript_0x180e39, 0
- dw UnknownScript_0x180e3d, 0
+ dw .Trigger0, 0
+ dw .Trigger1, 0
.MapCallbacks:
db 1
@@ -16,28 +16,28 @@
; callbacks
- dbw MAPCALLBACK_TILES, UnknownScript_0x180e3e
+ dbw MAPCALLBACK_TILES, .CheckDoor
-UnknownScript_0x180e39:
- priorityjump UnknownScript_0x180e53
+.Trigger0:
+ priorityjump LancesRoom_PlayerWalksIn_DoorsCloseBehind
end
-UnknownScript_0x180e3d:
+.Trigger1:
end
-UnknownScript_0x180e3e:
+.CheckDoor:
checkevent EVENT_LANCES_ROOM_ENTRANCE_CLOSED
- iffalse UnknownScript_0x180e48
+ iffalse .LanceEntranceOpen
changeblock $4, $16, $34
-UnknownScript_0x180e48:
+.LanceEntranceOpen:
checkevent EVENT_LANCES_ROOM_EXIT_OPEN
- iffalse UnknownScript_0x180e52
+ iffalse .LanceExitClosed
changeblock $4, $0, $b
-UnknownScript_0x180e52:
+.LanceExitClosed:
return
-UnknownScript_0x180e53:
- applymovement PLAYER, MovementData_0x180f33
+LancesRoom_PlayerWalksIn_DoorsCloseBehind:
+ applymovement PLAYER, LancesRoom_PlayerWalksInMovementData
refreshscreen $86
playsound SFX_STRENGTH
earthquake 80
@@ -48,21 +48,21 @@
setevent EVENT_LANCES_ROOM_ENTRANCE_CLOSED
end
-UnknownScript_0x180e6a:
+Script_ApproachLanceFromLeft:
special Special_FadeOutMusic
- applymovement PLAYER, MovementData_0x180f38
+ applymovement PLAYER, MovementData_ApproachLanceFromLeft
jump LanceScript_0x180e7b
-UnknownScript_0x180e74:
+Script_ApproachLanceFromRight:
special Special_FadeOutMusic
- applymovement PLAYER, MovementData_0x180f3c
+ applymovement PLAYER, MovementData_ApproachLanceFromRight
LanceScript_0x180e7b:
spriteface LANCESROOM_LANCE, LEFT
opentext
- writetext UnknownText_0x180f67
+ writetext LanceBattleIntroText
waitbutton
closetext
- winlosstext UnknownText_0x1810a4, 0
+ winlosstext LanceBattleWinText, 0
setlasttalked LANCESROOM_LANCE
loadtrainer CHAMPION, LANCE
startbattle
@@ -70,7 +70,7 @@
reloadmapafterbattle
setevent EVENT_BEAT_CHAMPION_LANCE
opentext
- writetext UnknownText_0x181132
+ writetext LanceBattleAfterText
waitbutton
closetext
playsound SFX_ENTER_DOOR
@@ -85,15 +85,15 @@
pause 10
spriteface PLAYER, DOWN
appear LANCESROOM_MARY
- applymovement LANCESROOM_MARY, MovementData_0x180f41
+ applymovement LANCESROOM_MARY, LancesRoomMovementData_MaryRushesIn
opentext
writetext UnknownText_0x1811dd
waitbutton
closetext
appear LANCESROOM_OAK
- applymovement LANCESROOM_OAK, MovementData_0x180f46
+ applymovement LANCESROOM_OAK, LancesRoomMovementData_OakWalksIn
follow LANCESROOM_MARY, LANCESROOM_OAK
- applymovement LANCESROOM_MARY, MovementData_0x180f49
+ applymovement LANCESROOM_MARY, LancesRoomMovementData_MaryYieldsToOak
stopfollow
spriteface LANCESROOM_OAK, UP
spriteface LANCESROOM_LANCE, LEFT
@@ -101,13 +101,13 @@
writetext UnknownText_0x18121b
waitbutton
closetext
- applymovement LANCESROOM_MARY, MovementData_0x180f4c
+ applymovement LANCESROOM_MARY, LancesRoomMovementData_MaryInterviewChampion
spriteface PLAYER, LEFT
opentext
writetext UnknownText_0x18134b
waitbutton
closetext
- applymovement LANCESROOM_LANCE, MovementData_0x180f4f
+ applymovement LANCESROOM_LANCE, LancesRoomMovementData_LancePositionsSelfToGuidePlayerAway
spriteface PLAYER, UP
opentext
writetext UnknownText_0x18137b
@@ -116,26 +116,26 @@
follow LANCESROOM_LANCE, PLAYER
spriteface LANCESROOM_MARY, UP
spriteface LANCESROOM_OAK, UP
- applymovement LANCESROOM_LANCE, MovementData_0x180f53
+ applymovement LANCESROOM_LANCE, LancesRoomMovementData_LanceLeadsPlayerToHallOfFame
stopfollow
playsound SFX_EXIT_BUILDING
disappear LANCESROOM_LANCE
- applymovement PLAYER, MovementData_0x180f55
+ applymovement PLAYER, LancesRoomMovementData_PlayerExits
playsound SFX_EXIT_BUILDING
disappear PLAYER
- applymovement LANCESROOM_MARY, MovementData_0x180f57
+ applymovement LANCESROOM_MARY, LancesRoomMovementData_MaryTriesToFollow
showemote EMOTE_SHOCK, LANCESROOM_MARY, 15
opentext
writetext UnknownText_0x1813c5
pause 30
closetext
- applymovement LANCESROOM_MARY, MovementData_0x180f5b
+ applymovement LANCESROOM_MARY, LancesRoomMovementData_MaryRunsBackAndForth
special FadeOutPalettes
pause 15
warpfacing UP, HALL_OF_FAME, $4, $d
end
-MovementData_0x180f33:
+LancesRoom_PlayerWalksInMovementData:
step_up
step_up
step_up
@@ -142,13 +142,13 @@
step_up
step_end
-MovementData_0x180f38:
+MovementData_ApproachLanceFromLeft:
step_up
step_up
turn_head_right
step_end
-MovementData_0x180f3c:
+MovementData_ApproachLanceFromRight:
step_up
step_left
step_up
@@ -155,7 +155,7 @@
turn_head_right
step_end
-MovementData_0x180f41:
+LancesRoomMovementData_MaryRushesIn:
big_step_up
big_step_up
big_step_up
@@ -162,42 +162,42 @@
turn_head_down
step_end
-MovementData_0x180f46:
+LancesRoomMovementData_OakWalksIn:
step_up
step_up
step_end
-MovementData_0x180f49:
+LancesRoomMovementData_MaryYieldsToOak:
step_left
turn_head_right
step_end
-MovementData_0x180f4c:
+LancesRoomMovementData_MaryInterviewChampion:
big_step_up
turn_head_right
step_end
-MovementData_0x180f4f:
+LancesRoomMovementData_LancePositionsSelfToGuidePlayerAway:
step_up
step_left
turn_head_down
step_end
-MovementData_0x180f53:
+LancesRoomMovementData_LanceLeadsPlayerToHallOfFame:
step_up
step_end
-MovementData_0x180f55:
+LancesRoomMovementData_PlayerExits:
step_up
step_end
-MovementData_0x180f57:
+LancesRoomMovementData_MaryTriesToFollow:
step_up
step_right
turn_head_up
step_end
-MovementData_0x180f5b:
+LancesRoomMovementData_MaryRunsBackAndForth:
big_step_right
big_step_right
big_step_left
@@ -211,7 +211,7 @@
turn_head_up
step_end
-UnknownText_0x180f67:
+LanceBattleIntroText:
text "LANCE: I've been"
line "waiting for you."
@@ -243,7 +243,7 @@
cont "your challenge!"
done
-UnknownText_0x1810a4:
+LanceBattleWinText:
text "…It's over."
para "But it's an odd"
@@ -260,7 +260,7 @@
line "CHAMPION!"
done
-UnknownText_0x181132:
+LanceBattleAfterText:
text "…Whew."
para "You have become"
@@ -355,8 +355,8 @@
.XYTriggers:
db 2
- xy_trigger 1, $5, $4, $0, UnknownScript_0x180e6a, $0, $0
- xy_trigger 1, $5, $5, $0, UnknownScript_0x180e74, $0, $0
+ xy_trigger 1, $5, $4, $0, Script_ApproachLanceFromLeft, $0, $0
+ xy_trigger 1, $5, $5, $0, Script_ApproachLanceFromRight, $0, $0
.Signposts:
db 0
--- a/maps/Route36.asm
+++ b/maps/Route36.asm
@@ -14,8 +14,8 @@
db 2
; triggers
- dw UnknownScript_0x19400d, 0
- dw UnknownScript_0x19400e, 0
+ dw .Trigger0, 0
+ dw .Trigger1, 0
.MapCallbacks:
db 1
@@ -22,15 +22,15 @@
; callbacks
- dbw MAPCALLBACK_OBJECTS, ArthurCallback
+ dbw MAPCALLBACK_OBJECTS, .ArthurCallback
-UnknownScript_0x19400d:
+.Trigger0:
end
-UnknownScript_0x19400e:
+.Trigger1:
end
-ArthurCallback:
+.ArthurCallback:
checkcode VAR_WEEKDAY
if_equal THURSDAY, .ArthurAppears
disappear ROUTE36_YOUNGSTER3
@@ -40,12 +40,12 @@
appear ROUTE36_YOUNGSTER3
return
-UnknownScript_0x19401b:
+Route36SuicuneTrigger:
showemote EMOTE_SHOCK, PLAYER, 15
pause 15
playsound SFX_WARP_FROM
spriteface PLAYER, UP
- applymovement ROUTE36_SUICUNE, MovementData_0x194262
+ applymovement ROUTE36_SUICUNE, Route36SuicuneMovement
disappear ROUTE36_SUICUNE
spriteface PLAYER, DOWN
pause 10
@@ -56,48 +56,48 @@
WeirdTreeScript_0x19403c:
checkitem SQUIRTBOTTLE
- iftrue UnknownScript_0x19404a
+ iftrue .HaveSquirtbottle
waitsfx
playsound SFX_SANDSTORM
- applymovement ROUTE36_WEIRD_TREE, MovementData_0x194249
+ applymovement ROUTE36_WEIRD_TREE, WeirdTreeMovement_Shake
end
-UnknownScript_0x19404a:
+.HaveSquirtbottle:
opentext
- writetext UnknownText_0x19426b
+ writetext WeirdTreeText_AskUseBottle
yesorno
- iffalse UnknownScript_0x194079
+ iffalse DidntWaterSudowoodo
closetext
; fallthrough
WateredWeirdTreeScript::
opentext
- writetext UnknownText_0x194290
+ writetext WeirdTreeText_PlayerUsedBottle
waitbutton
closetext
waitsfx
playsound SFX_SANDSTORM
- applymovement ROUTE36_WEIRD_TREE, MovementData_0x194249
+ applymovement ROUTE36_WEIRD_TREE, WeirdTreeMovement_Shake
opentext
- writetext UnknownText_0x1942aa
+ writetext WeirdTreeText_DidntLikeTheBottle
waitbutton
closetext
loadwildmon SUDOWOODO, 20
startbattle
setevent EVENT_FOUGHT_SUDOWOODO
- if_equal $2, UnknownScript_0x19407b
+ if_equal $2, DidntCatchSudowoodo
disappear ROUTE36_WEIRD_TREE
variablesprite SPRITE_WEIRD_TREE, SPRITE_TWIN
reloadmapafterbattle
end
-UnknownScript_0x194079:
+DidntWaterSudowoodo:
closetext
end
-UnknownScript_0x19407b:
+DidntCatchSudowoodo:
reloadmapafterbattle
- applymovement ROUTE36_WEIRD_TREE, MovementData_0x19424b
+ applymovement ROUTE36_WEIRD_TREE, WeirdTreeMovement_Flee
disappear ROUTE36_WEIRD_TREE
variablesprite SPRITE_WEIRD_TREE, SPRITE_TWIN
special RunCallback_04
@@ -104,55 +104,55 @@
special RefreshSprites
end
-LassScript_0x19408c:
+Route36FloriaScript:
faceplayer
opentext
checkevent EVENT_TALKED_TO_FLORIA_AT_FLOWER_SHOP
- iftrue UnknownScript_0x1940b3
+ iftrue .TalkedToFloriaAtFlowerShop
setevent EVENT_MET_FLORIA
- writetext UnknownText_0x1942f1
+ writetext Route36FloriaText1
waitbutton
closetext
clearevent EVENT_FLORIA_AT_FLOWER_SHOP
checkcode VAR_FACING
- if_equal UP, UnknownScript_0x1940ac
- applymovement ROUTE36_LASS2, MovementData_0x19424e
+ if_equal UP, .Depart2
+ applymovement ROUTE36_LASS2, Route36FloriaDepartureMovement1
disappear ROUTE36_LASS2
end
-UnknownScript_0x1940ac:
- applymovement ROUTE36_LASS2, MovementData_0x194258
+.Depart2:
+ applymovement ROUTE36_LASS2, Route36FloriaDepartureMovement2
disappear ROUTE36_LASS2
end
-UnknownScript_0x1940b3:
- writetext UnknownText_0x1943ed
+.TalkedToFloriaAtFlowerShop:
+ writetext Route36FloriaText2
waitbutton
closetext
end
-FisherScript_0x1940b9:
+Route36RockSmashGuyScript:
faceplayer
opentext
checkevent EVENT_GOT_TM08_ROCK_SMASH
- iftrue UnknownScript_0x1940da
+ iftrue .AlreadyGotRockSmash
checkevent EVENT_FOUGHT_SUDOWOODO
- iftrue UnknownScript_0x1940cd
- writetext UnknownText_0x19446f
+ iftrue .ClearedSudowoodo
+ writetext RockSmashGuyText1
waitbutton
closetext
end
-UnknownScript_0x1940cd:
- writetext UnknownText_0x1944d0
+.ClearedSudowoodo:
+ writetext RockSmashGuyText2
buttonsound
verbosegiveitem TM_ROCK_SMASH
- iffalse UnknownScript_0x1940de
+ iffalse .NoRoomForTM
setevent EVENT_GOT_TM08_ROCK_SMASH
-UnknownScript_0x1940da:
- writetext UnknownText_0x19452c
+.AlreadyGotRockSmash:
+ writetext RockSmashGuyText3
waitbutton
-UnknownScript_0x1940de:
+.NoRoomForTM:
closetext
end
@@ -160,13 +160,13 @@
faceplayer
opentext
checkevent EVENT_FOUGHT_SUDOWOODO
- iftrue UnknownScript_0x1940ee
+ iftrue .ClearedSudowoodo
writetext UnknownText_0x194626
waitbutton
closetext
end
-UnknownScript_0x1940ee:
+.ClearedSudowoodo:
writetext UnknownText_0x19469e
waitbutton
closetext
@@ -372,16 +372,16 @@
FruitTreeScript_0x194247:
fruittree FRUITTREE_ROUTE_36
-MovementData_0x194249:
+WeirdTreeMovement_Shake:
db $56 ; movement
step_end
-MovementData_0x19424b:
+WeirdTreeMovement_Flee:
fast_jump_step_up
fast_jump_step_up
step_end
-MovementData_0x19424e:
+Route36FloriaDepartureMovement1:
step_down
step_down
step_down
@@ -393,7 +393,7 @@
step_left
step_end
-MovementData_0x194258:
+Route36FloriaDepartureMovement2:
step_left
step_down
step_down
@@ -405,8 +405,8 @@
step_left
step_end
-MovementData_0x194262:
- db $39 ; movement
+Route36SuicuneMovement:
+ set_sliding
fast_jump_step_down
fast_jump_step_down
fast_jump_step_down
@@ -413,20 +413,20 @@
fast_jump_step_right
fast_jump_step_right
fast_jump_step_right
- db $38 ; movement
+ remove_sliding
step_end
-UnknownText_0x19426b:
+WeirdTreeText_AskUseBottle:
text "It's a weird tree."
line "Use SQUIRTBOTTLE?"
done
-UnknownText_0x194290:
+WeirdTreeText_PlayerUsedBottle:
text "<PLAYER> used the"
line "SQUIRTBOTTLE."
done
-UnknownText_0x1942aa:
+WeirdTreeText_DidntLikeTheBottle:
text "The weird tree"
line "doesn't like the"
cont "SQUIRTBOTTLE!"
@@ -435,7 +435,7 @@
line "attacked!"
done
-UnknownText_0x1942f1:
+Route36FloriaText1:
text "I'm the FLOWER"
line "SHOP's FLORIA!"
@@ -461,7 +461,7 @@
cont "her water bottle!"
done
-UnknownText_0x1943ed:
+Route36FloriaText2:
text "When I told my sis"
line "about the jiggly"
@@ -475,7 +475,7 @@
line "bottle…"
done
-UnknownText_0x19446f:
+RockSmashGuyText1:
text "Wa-hey!"
para "I was going to"
@@ -488,7 +488,7 @@
line "I'm a failure!"
done
-UnknownText_0x1944d0:
+RockSmashGuyText2:
text "Did you clear that"
line "wretched tree?"
@@ -502,7 +502,7 @@
line "TM08."
done
-UnknownText_0x19452c:
+RockSmashGuyText3:
text "That happens to be"
line "ROCK SMASH."
@@ -678,8 +678,8 @@
.XYTriggers:
db 2
- xy_trigger 1, $7, $14, $0, UnknownScript_0x19401b, $0, $0
- xy_trigger 1, $7, $16, $0, UnknownScript_0x19401b, $0, $0
+ xy_trigger 1, $7, $14, $0, Route36SuicuneTrigger, $0, $0
+ xy_trigger 1, $7, $16, $0, Route36SuicuneTrigger, $0, $0
.Signposts:
db 4
@@ -694,8 +694,8 @@
person_event SPRITE_YOUNGSTER, 14, 31, SPRITEMOVEDATA_STANDING_LEFT, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, PERSONTYPE_TRAINER, 5, TrainerSchoolboyAlan1, -1
person_event SPRITE_WEIRD_TREE, 9, 35, SPRITEMOVEDATA_SUDOWOODO, 0, 0, -1, -1, 0, PERSONTYPE_SCRIPT, 0, WeirdTreeScript_0x19403c, EVENT_ROUTE_36_SUDOWOODO
person_event SPRITE_LASS, 8, 51, SPRITEMOVEDATA_WALK_LEFT_RIGHT, 0, 2, -1, -1, 0, PERSONTYPE_SCRIPT, 0, LassScript_0x1940e0, -1
- person_event SPRITE_FISHER, 9, 44, SPRITEMOVEDATA_STANDING_LEFT, 0, 0, -1, -1, 0, PERSONTYPE_SCRIPT, 0, FisherScript_0x1940b9, -1
+ person_event SPRITE_FISHER, 9, 44, SPRITEMOVEDATA_STANDING_LEFT, 0, 0, -1, -1, 0, PERSONTYPE_SCRIPT, 0, Route36RockSmashGuyScript, -1
person_event SPRITE_FRUIT_TREE, 4, 21, SPRITEMOVEDATA_ITEM_TREE, 0, 0, -1, -1, 0, PERSONTYPE_SCRIPT, 0, FruitTreeScript_0x194247, -1
person_event SPRITE_YOUNGSTER, 6, 46, SPRITEMOVEDATA_WANDER, 1, 1, -1, -1, 0, PERSONTYPE_SCRIPT, 0, ArthurScript, EVENT_ROUTE_36_ARTHUR_OF_THURSDAY
- person_event SPRITE_LASS, 12, 33, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, PERSONTYPE_SCRIPT, 0, LassScript_0x19408c, EVENT_FLORIA_AT_SUDOWOODO
+ person_event SPRITE_LASS, 12, 33, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, PERSONTYPE_SCRIPT, 0, Route36FloriaScript, EVENT_FLORIA_AT_SUDOWOODO
person_event SPRITE_SUICUNE, 6, 21, SPRITEMOVEDATA_ITEM_TREE, 0, 0, -1, -1, (1 << 3) | PAL_OW_BLUE, PERSONTYPE_SCRIPT, 0, ObjectEvent, EVENT_SAW_SUICUNE_ON_ROUTE_36
--- a/maps/TinTower1F.asm
+++ b/maps/TinTower1F.asm
@@ -243,37 +243,37 @@
step_end
MovementData_0x1851d0:
- db $39 ; movement
+ set_sliding
fast_jump_step_down
- db $38 ; movement
+ remove_sliding
step_end
MovementData_0x1851d4:
- db $39 ; movement
+ set_sliding
fast_jump_step_down
fast_jump_step_right
fast_jump_step_down
- db $38 ; movement
+ remove_sliding
step_end
MovementData_0x1851da:
- db $39 ; movement
+ set_sliding
fast_jump_step_down
- db $38 ; movement
+ remove_sliding
step_end
MovementData_0x1851de:
- db $39 ; movement
+ set_sliding
fast_jump_step_down
fast_jump_step_left
fast_jump_step_down
- db $38 ; movement
+ remove_sliding
step_end
MovementData_0x1851e4:
- db $39 ; movement
+ set_sliding
fast_jump_step_down
- db $38 ; movement
+ remove_sliding
step_end
MovementData_0x1851e8:
--- a/misc/mobile_12_2.asm
+++ b/misc/mobile_12_2.asm
@@ -443,7 +443,7 @@
push bc
push hl
ld e, 0
- callba Function8e83f
+ callba LoadMenuMonIcon
ld a, [hObjectStructIndexBuffer]
inc a
ld [hObjectStructIndexBuffer], a
--- a/misc/mobile_22.asm
+++ b/misc/mobile_22.asm
@@ -2216,7 +2216,7 @@
push hl
call Function8923c
call _hl_
- call Function3238
+ call CGBOnly_LoadEDTile
pop hl
asm_89d90: ; 89d90 (22:5d90)
@@ -2661,7 +2661,7 @@
endr
ld a, $6
call Function8a5a3
- call Function3238
+ call CGBOnly_LoadEDTile
pop bc
ld a, c
cp $b
@@ -2676,7 +2676,7 @@
ld a, $6
hlcoord 15, 4, AttrMap
call Function8a5a3
- call Function3238
+ call CGBOnly_LoadEDTile
jp Function89e36
Function8a0a1: ; 8a0a1 (22:60a1)
--- a/misc/mobile_22_2.asm
+++ b/misc/mobile_22_2.asm
@@ -401,7 +401,7 @@
call Function8b4fd
ld e, $0
call Function89c44
- call Function3238
+ call CGBOnly_LoadEDTile
ret
Function8b555: ; 8b555 (22:7555)
--- a/misc/mobile_40.asm
+++ b/misc/mobile_40.asm
@@ -3079,7 +3079,7 @@
; 1013dd
Function1013dd: ; 1013dd
- call Function3238
+ call CGBOnly_LoadEDTile
ret
; 1013e1
--- a/misc/mobile_46.asm
+++ b/misc/mobile_46.asm
@@ -5846,12 +5846,12 @@
ld [hObjectStructIndexBuffer], a
ld a, $10
ld [wCurIconTile], a
- ld hl, Function8e83f
- ld a, BANK(Function8e83f)
+ ld hl, LoadMenuMonIcon
+ ld a, BANK(LoadMenuMonIcon)
ld e, $4
rst FarCall
- ld hl, Function8e83f
- ld a, BANK(Function8e83f)
+ ld hl, LoadMenuMonIcon
+ ld a, BANK(LoadMenuMonIcon)
ld e, $5
rst FarCall
ld hl, $c6d0
--- a/sram.asm
+++ b/sram.asm
@@ -69,7 +69,7 @@
sMysteryGiftTrainerHouseFlag:: ds 1
sMysteryGiftPartnerName:: ds NAME_LENGTH
s0_ac09:: ds 1
-sMysteryGiftTrainer:: ds (1 + 1 + NUM_MOVES) * PARTY_LENGTH + 2
+sMysteryGiftTrainer:: ds (1 + 1 + NUM_MOVES) * PARTY_LENGTH + 2 ; ac0a
sBackupMysteryGiftItemEnd::
ds $30
--- a/wram.asm
+++ b/wram.asm
@@ -118,7 +118,7 @@
Channel2JumpCondition:: ds 1
Channel3JumpCondition:: ds 1
Channel4JumpCondition:: ds 1
-wStereoPanningMask:: ds 1
+wStereoPanningMask:: ds 1 ; c2bc
CryTracks:: ; c2bd
; plays only in left or right track depending on what side the monster is on
; both tracks active outside of battle
@@ -127,7 +127,7 @@
CurSFX:: ; c2bf
; id of sfx currently playing
ds 1
-
+ChannelsEnd::
wMapMusic:: ; c2c0
ds 1
@@ -1328,9 +1328,9 @@
wMenuJoypad:: ds 1 ; cf73
MenuSelection:: ds 1 ; cf74
MenuSelectionQuantity:: ds 1 ; cf75
-wWhichIndexSet:: ds 1
-wScrollingMenuCursorPosition:: ds 1
-wWindowStackSize:: ds 9
+wWhichIndexSet:: ds 1 ; cf76
+wScrollingMenuCursorPosition:: ds 1 ; cf77
+wWindowStackSize:: ds 9 ; cf78
; menu data header
wMenuDataHeader:: ; cf81
@@ -1727,18 +1727,21 @@
ds 1
wLastPocket:: ds 1
-wd0d7:: ds 1
-wd0d8::
+
+wPCItemsCursor:: ds 1
wPartyMenuCursor:: ds 1
wItemsPocketCursor:: ds 1
wKeyItemsPocketCursor:: ds 1
wBallsPocketCursor:: ds 1
wTMHMPocketCursor:: ds 1
-wd0dd:: ds 2
+
+wPCItemsScrollPosition:: ds 1
+wPartyMenuScrollPosition:: ds 1 ; unused
wItemsPocketScrollPosition:: ds 1
wKeyItemsPocketScrollPosition:: ds 1
wBallsPocketScrollPosition:: ds 1
wTMHMPocketScrollPosition:: ds 1
+
wMoveSwapBuffer::
wSwitchMon::
wSwitchItem::
@@ -1764,9 +1767,9 @@
; flickers when climbing waterfall
ds 1
-wBattleResult:: ds 1
-wUsingItemWithSelect:: ds 1
-CurMart:: ds 16
+wBattleResult:: ds 1 ; d0ee
+wUsingItemWithSelect:: ds 1 ; d0ef
+CurMart:: ds 16 ; d0f0
CurMartEnd::
ds CurMart - @
CurElevator:: ds 1
@@ -1776,7 +1779,7 @@
wd0f2::
wMailboxCount:: ds 1
wMailboxItems:: ds MAILBOX_CAPACITY
-wMailboxEnd:: ds 1 ; d1fe
+wMailboxEnd:: ds 1 ; d0fe
ds 2
wd100:: ds 1
@@ -1786,9 +1789,7 @@
wd104:: ds 1
wd105:: ds 1
-CurItem:: ; d106
- ds 1
-
+CurItem:: ds 1 ; d106
CurItemQuantity:: ; d107
wMartItemID::
wd107:: ds 1
@@ -2027,7 +2028,9 @@
Buffer6::
wd1ef:: ds 1
wd1f0:: ds 1
+wCurHPBarPixels::
wd1f1:: ds 1
+wNewHPBarPixels::
wd1f2:: ds 1
wd1f3:: ds 1
wd1f4:: ds 1
@@ -2148,7 +2151,7 @@
wListMoves_MoveIndicesBuffer:: ds NUM_MOVES
wPutativeTMHMMove:: ds 1
wd263:: ds 1
-wd264:: ds 1
+wAISwitch:: ds 1
wFoundMatchingIDInParty::
wNamedObjectIndexBuffer::
wCurTMHM::
@@ -2801,16 +2804,16 @@
VisitedSpawns:: ; dca5
flag_array NUM_SPAWNS
-wDigWarp:: ds 1
-wDigMapGroup:: ds 1
-wDigMapNumber:: ds 1
+wDigWarp:: ds 1 ; dcaa
+wDigMapGroup:: ds 1 ; dcab
+wDigMapNumber:: ds 1 ; dcac
; used on maps like second floor pokécenter, which are reused, so we know which
; map to return to
-BackupWarpNumber:: ; dcac
+BackupWarpNumber:: ; dcad
ds 1
-BackupMapGroup:: ; dcad
+BackupMapGroup:: ; dcae
ds 1
-BackupMapNumber:: ; dcae
+BackupMapNumber:: ; dcaf
ds 1
ds 3