summaryrefslogtreecommitdiff
path: root/engine
diff options
context:
space:
mode:
Diffstat (limited to 'engine')
-rw-r--r--engine/buena_phone_scripts.asm44
-rw-r--r--engine/color.asm88
-rw-r--r--engine/credits.asm17
-rw-r--r--engine/engine_flags.asm44
-rw-r--r--engine/events.asm266
-rw-r--r--engine/events_2.asm70
-rw-r--r--engine/fruit_trees.asm8
-rw-r--r--engine/landmarks.asm6
-rw-r--r--engine/map_objects.asm1114
-rw-r--r--engine/map_setup.asm195
-rw-r--r--engine/more_phone_scripts.asm4
-rw-r--r--engine/movement.asm12
-rw-r--r--engine/pack.asm46
-rw-r--r--engine/phone_scripts.asm849
-rw-r--r--engine/pokedex.asm23
-rw-r--r--engine/predef.asm108
-rw-r--r--engine/radio.asm2115
-rw-r--r--engine/scripting.asm506
-rw-r--r--engine/spawn_points.asm39
-rw-r--r--engine/specials.asm207
-rw-r--r--engine/std_scripts.asm940
-rw-r--r--engine/title.asm7
22 files changed, 4502 insertions, 2206 deletions
diff --git a/engine/buena_phone_scripts.asm b/engine/buena_phone_scripts.asm
index 4d0c79b61..0a278ca03 100644
--- a/engine/buena_phone_scripts.asm
+++ b/engine/buena_phone_scripts.asm
@@ -2,7 +2,7 @@ UnknownScript_0xa0b14:
checkflag ENGINE_ROCKETS_IN_RADIO_TOWER
iftrue UnknownScript_0xa0b73
checkcode VAR_HOUR
- if_greater_than $11, UnknownScript_0xa0b4b
+ if_greater_than 17, UnknownScript_0xa0b4b
scall UnknownScript_0xa0b32
jump UnknownScript_0xa0c0e
@@ -37,7 +37,7 @@ UnknownScript_0xa0b4b:
UnknownScript_0xa0b4f:
checkcode VAR_HOUR
- if_greater_than $11, UnknownScript_0xa0b6e
+ if_greater_than 17, UnknownScript_0xa0b6e
checkmorn
iftrue UnknownScript_0xa0b64
checkday
@@ -68,27 +68,27 @@ UnknownScript_0xa0b73:
UnknownScript_0xa0b77:
checkevent EVENT_BEAT_ELITE_FOUR
iftrue UnknownScript_0xa0b82
- random $b
+ random 11
jump UnknownScript_0xa0b84
UnknownScript_0xa0b82:
- random $e
+ random 14
UnknownScript_0xa0b84:
- if_equal $0, UnknownScript_0xa0bbc
- if_equal $1, UnknownScript_0xa0bc2
- if_equal $2, UnknownScript_0xa0bc8
- if_equal $3, UnknownScript_0xa0bce
- if_equal $4, UnknownScript_0xa0bd4
- if_equal $5, UnknownScript_0xa0bda
- if_equal $6, UnknownScript_0xa0be0
- if_equal $7, UnknownScript_0xa0be6
- if_equal $8, UnknownScript_0xa0bec
- if_equal $9, UnknownScript_0xa0bf2
- if_equal $a, UnknownScript_0xa0bf8
- if_equal $b, UnknownScript_0xa0bfe
- if_equal $c, UnknownScript_0xa0c04
- if_equal $d, UnknownScript_0xa0c0a
+ if_equal 0, UnknownScript_0xa0bbc
+ if_equal 1, UnknownScript_0xa0bc2
+ if_equal 2, UnknownScript_0xa0bc8
+ if_equal 3, UnknownScript_0xa0bce
+ if_equal 4, UnknownScript_0xa0bd4
+ if_equal 5, UnknownScript_0xa0bda
+ if_equal 6, UnknownScript_0xa0be0
+ if_equal 7, UnknownScript_0xa0be6
+ if_equal 8, UnknownScript_0xa0bec
+ if_equal 9, UnknownScript_0xa0bf2
+ if_equal 10, UnknownScript_0xa0bf8
+ if_equal 11, UnknownScript_0xa0bfe
+ if_equal 12, UnknownScript_0xa0c04
+ if_equal 13, UnknownScript_0xa0c0a
UnknownScript_0xa0bbc:
writetext UnknownText_0xa0efb
@@ -149,10 +149,10 @@ UnknownScript_0xa0c0d:
end
UnknownScript_0xa0c0e:
- random $3
- if_equal $0, UnknownScript_0xa0c1c
- if_equal $1, UnknownScript_0xa0c20
- if_equal $2, UnknownScript_0xa0c24
+ random 3
+ if_equal 0, UnknownScript_0xa0c1c
+ if_equal 1, UnknownScript_0xa0c20
+ if_equal 2, UnknownScript_0xa0c24
UnknownScript_0xa0c1c:
writetext UnknownText_0xa1c88
diff --git a/engine/color.asm b/engine/color.asm
index 314bf2981..1a28e1104 100644
--- a/engine/color.asm
+++ b/engine/color.asm
@@ -262,10 +262,9 @@ Function8bc6:
bit 7, a
jr z, .asm_8bd7
and $7f
+rept 4
inc hl
- inc hl
- inc hl
- inc hl
+endr
.asm_8bd7
asm_8bd7
@@ -361,8 +360,9 @@ Function8c43: ; 8c43
.asm_8c5a
ld l, c
ld h, $0
+rept 2
add hl, hl
- add hl, hl
+endr
ld bc, Palettes_a8be
add hl, bc
ld bc, $0004
@@ -398,8 +398,9 @@ Function8c8a: ; 8c8a
ld hl, Unknown_8f6a
ld b, 0
dec c
+rept 2
add hl, bc
- add hl, bc
+endr
ld a, [rSVBK]
push af
ld a, $5
@@ -420,9 +421,9 @@ Function8c8a: ; 8c8a
Function8cb4: ; 8cb4
ld l, e
ld h, 0
+rept 3
add hl, hl
- add hl, hl
- add hl, hl
+endr
ld de, Palettes_8d05
add hl, de
call CheckCGB
@@ -433,8 +434,9 @@ Function8cb4: ; 8cb4
ld bc, $0010
call CopyBytes
pop hl
+rept 2
inc hl
- inc hl
+endr
ld a, [hli]
ld [wcda9 + 3], a
ld a, [hli]
@@ -556,9 +558,9 @@ Function9615: ; 9615
Function9625: ; 9625
ld l, a
ld h, $0
+rept 3
add hl, hl
- add hl, hl
- add hl, hl
+endr
ld bc, Palettes_9df6
add hl, bc
ret
@@ -639,15 +641,13 @@ Function9673: ; 9673
ld c, $8
.asm_9683
ld a, $ff
+rept 4
ld [hli], a
- ld [hli], a
- ld [hli], a
- ld [hli], a
+endr
xor a
+rept 4
ld [hli], a
- ld [hli], a
- ld [hli], a
- ld [hli], a
+endr
dec c
jr nz, .asm_9683
pop af
@@ -806,8 +806,9 @@ Function9764: ; 9764
Function976b: ; 976b
ld l, a
ld h, 0
- add hl, hl
- add hl, hl
+rept 2
+ add hl,hl
+endr
ld bc, TrainerPalettes
add hl, bc
ret
@@ -896,9 +897,9 @@ Function97e5: ; 97e5
Function97ee: ; 97ee
ld l, a
ld h, $0
+rept 3
add hl, hl
- add hl, hl
- add hl, hl
+endr
ld bc, PokemonPalettes
add hl, bc
ret
@@ -912,10 +913,9 @@ Function97f9: ; 97f9
call CheckShininess
pop hl
ret nc
+rept 4
inc hl
- inc hl
- inc hl
- inc hl
+endr
ret
; 9809
@@ -1139,8 +1139,9 @@ Function994a: ; 994a
jr nz, .asm_99a6
ld a, $20
ld [rJOYP], a
+rept 2
ld a, [rJOYP]
- ld a, [rJOYP]
+endr
call Function9a7a
call Function9a7a
ld a, $30
@@ -1149,19 +1150,16 @@ Function994a: ; 994a
call Function9a7a
ld a, $10
ld [rJOYP], a
+rept 6
ld a, [rJOYP]
- ld a, [rJOYP]
- ld a, [rJOYP]
- ld a, [rJOYP]
- ld a, [rJOYP]
- ld a, [rJOYP]
+endr
call Function9a7a
call Function9a7a
ld a, $30
ld [rJOYP], a
+rept 3
ld a, [rJOYP]
- ld a, [rJOYP]
- ld a, [rJOYP]
+endr
call Function9a7a
call Function9a7a
ld a, [rJOYP]
@@ -1943,21 +1941,22 @@ Functionb1de: ; b1de
callba Function494ac
jr c, .asm_b230
- ld a, [wd19a]
+ ld a, [wPermission]
and 7
ld e, a
ld d, 0
ld hl, Unknown_b279
+rept 2
add hl, de
- add hl, de
+endr
ld a, [hli]
ld h, [hl]
ld l, a
ld a, [TimeOfDayPal]
and 3
+rept 3
add a
- add a
- add a
+endr
ld e, a
ld d, 0
add hl, de
@@ -1975,9 +1974,9 @@ Functionb1de: ; b1de
push hl
ld l, a
ld h, 0
- add hl, hl
- add hl, hl
- add hl, hl
+rept 3
+ add hl,hl
+endr
ld de, TilesetBGPalette
add hl, de
ld e, l
@@ -2008,7 +2007,7 @@ Functionb1de: ; b1de
ld a, $5 ; BANK(Unkn2Pals)
call FarCopyWRAM
- ld a, [wd19a]
+ ld a, [wPermission]
cp 1
jr z, .asm_b253
cp 2
@@ -2017,19 +2016,18 @@ Functionb1de: ; b1de
ld a, [MapGroup]
ld l, a
ld h, 0
- add hl, hl
- add hl, hl
- add hl, hl
+rept 3
+ add hl,hl
+endr
ld de, RoofPals
add hl, de
ld a, [TimeOfDayPal]
and 3
cp NITE
jr c, .asm_b26d
+rept 4
inc hl
- inc hl
- inc hl
- inc hl
+endr
.asm_b26d
ld de, Unkn1Pals + 8 * 6 + 2
ld bc, 4
diff --git a/engine/credits.asm b/engine/credits.asm
index 727dbb9b0..2be947bf3 100644
--- a/engine/credits.asm
+++ b/engine/credits.asm
@@ -260,8 +260,9 @@ Function109926: ; 109926
ld e, a
ld d, 0
ld hl, Jumptable_109937
+rept 2
add hl, de
- add hl, de
+endr
ld a, [hli]
ld h, [hl]
ld l, a
@@ -326,8 +327,9 @@ Function109986: ; 109986 (42:5986)
cp $30
jr c, Function109986
ld a, [wcf66]
+rept 2
dec a
- dec a
+endr
ld [wcf66], a
ld hl, LYOverrides + $1f
call Function1099a3
@@ -397,8 +399,9 @@ ParseCredits: ; 1099aa
ld e, a
ld d, 0
ld hl, CreditsStrings
+rept 2
add hl, de
- add hl, de
+endr
ld a, [hli]
ld d, [hl]
ld e, a
@@ -582,10 +585,9 @@ Function109aff: ; 109aff (42:5aff)
dec c
jr nz, .asm_109b08
pop hl
+rept 4
inc hl
- inc hl
- inc hl
- inc hl
+endr
dec b
jr nz, .asm_109b01
ret
@@ -735,8 +737,9 @@ Function109bca: ; 109bca (42:5bca)
ld [hl], a
ld a, [wcf65]
and 3
+rept 2
add a
- add a
+endr
add e
add a
ld e, a
diff --git a/engine/engine_flags.asm b/engine/engine_flags.asm
index 414604661..87fbd987d 100644
--- a/engine/engine_flags.asm
+++ b/engine/engine_flags.asm
@@ -100,26 +100,26 @@
dwb wdc9d, %00000001 ; lucky number show
dwb StatusFlags2, %00001000
- dwb wdc1e, %00000001 ; kurt making balls ; $50
- dwb wdc1e, %00000010
- dwb wdc1e, %00000100 ; special wilddata?
- dwb wdc1e, %00001000 ; time capsule (24h wait)
- dwb wdc1e, %00010000 ; all fruit trees
- dwb wdc1e, %00100000 ; shuckle given
- dwb wdc1e, %01000000 ; goldenrod underground merchant closed
- dwb wdc1e, %10000000 ; fought in trainer hall today
-
- dwb wdc1f, %00000001 ; mt moon square clefairy ; $58
- dwb wdc1f, %00000010 ; union cave lapras
- dwb wdc1f, %00000100 ; goldenrod underground haircut used
- dwb wdc1f, %00001000 ; goldenrod mall happiness event floor05 person07
- dwb wdc1f, %00010000 ; tea in blues house
- dwb wdc1f, %00100000 ; indigo plateau rival fight
- dwb wdc1f, %01000000
- dwb wdc1f, %10000000
-
- dwb wdc20, %00000001 ; $60
- dwb wdc20, %00000010 ; goldenrod dept store sale is on
+ dwb DailyFlags, %00000001 ; kurt making balls ; $50
+ dwb DailyFlags, %00000010
+ dwb DailyFlags, %00000100 ; special wilddata?
+ dwb DailyFlags, %00001000 ; time capsule (24h wait)
+ dwb DailyFlags, %00010000 ; all fruit trees
+ dwb DailyFlags, %00100000 ; shuckle given
+ dwb DailyFlags, %01000000 ; goldenrod underground merchant closed
+ dwb DailyFlags, %10000000 ; fought in trainer hall today
+
+ dwb WeeklyFlags, %00000001 ; mt moon square clefairy ; $58
+ dwb WeeklyFlags, %00000010 ; union cave lapras
+ dwb WeeklyFlags, %00000100 ; goldenrod underground haircut used
+ dwb WeeklyFlags, %00001000 ; goldenrod mall happiness event floor05 person07
+ dwb WeeklyFlags, %00010000 ; tea in blues house
+ dwb WeeklyFlags, %00100000 ; indigo plateau rival fight
+ dwb WeeklyFlags, %01000000
+ dwb WeeklyFlags, %10000000
+
+ dwb SwarmFlags, %00000001 ; $60
+ dwb SwarmFlags, %00000010 ; goldenrod dept store sale is on
dwb GameTimerPause, %10000000 ; $62
@@ -194,5 +194,5 @@
dwb wd45b, %00000100 ; female player has been transformed into male
- dwb wdc20, %00000100 ; dunsparce swarm ; $a0
- dwb wdc20, %00001000 ; yanma swarm
+ dwb SwarmFlags, %00000100 ; dunsparce swarm ; $a0
+ dwb SwarmFlags, %00001000 ; yanma swarm
diff --git a/engine/events.asm b/engine/events.asm
index cf2d4f3e4..5849d6774 100644
--- a/engine/events.asm
+++ b/engine/events.asm
@@ -24,91 +24,91 @@ OverworldLoop:: ; 966b0
; 966cb
-Function966cb: ; 966cb
+ClearAllScriptFlags3: ; 966cb
xor a
ld [ScriptFlags3], a
ret
; 966d0
-Function966d0:: ; 966d0
+SetAll_ScriptFlags3:: ; 966d0
ld a, $ff
ld [ScriptFlags3], a
ret
; 966d6
-Function966d6: ; 966d6
+CheckBit5_ScriptFlags3: ; 966d6
ld hl, ScriptFlags3
bit 5, [hl]
ret
; 966dc
-Function966dc: ; 966dc
+ResetBit2_ScriptFlags3: ; 966dc
ld hl, ScriptFlags3
res 2, [hl]
ret
; 966e2
-Function966e2: ; 966e2
+ResetBit1_ScriptFlags3: ; 966e2
ld hl, ScriptFlags3
res 1, [hl]
ret
; 966e8
-Function966e8: ; 966e8
+ResetBit0_ScriptFlags3: ; 966e8
ld hl, ScriptFlags3
res 0, [hl]
ret
; 966ee
-Function966ee: ; 966ee
+ResetBit4_ScriptFlags3: ; 966ee
ld hl, ScriptFlags3
res 4, [hl]
ret
; 966f4
-Function966f4: ; 966f4
+SetBit2_ScriptFlags3: ; 966f4
ld hl, ScriptFlags3
set 2, [hl]
ret
; 966fa
-Function966fa: ; 966fa
+SetBit1_ScriptFlags3: ; 966fa
ld hl, ScriptFlags3
set 1, [hl]
ret
; 96700
-Function96700: ; 96700
+SetBit0_ScriptFlags3: ; 96700
ld hl, ScriptFlags3
set 0, [hl]
ret
; 96706
-Function96706: ; 96706
+SetBit4_ScriptFlags3: ; 96706
ld hl, ScriptFlags3
set 4, [hl]
ret
; 9670c
-Function9670c: ; 9670c
+CheckBit2_ScriptFlags3: ; 9670c
ld hl, ScriptFlags3
bit 2, [hl]
ret
; 96712
-Function96712: ; 96712
+CheckBit1_ScriptFlags3: ; 96712
ld hl, ScriptFlags3
bit 1, [hl]
ret
; 96718
-Function96718: ; 96718
+CheckBit0_ScriptFlags3: ; 96718
ld hl, ScriptFlags3
bit 0, [hl]
ret
; 9671e
-Function9671e: ; 9671e
+CheckBit4_ScriptFlags3: ; 9671e
ld hl, ScriptFlags3
bit 4, [hl]
ret
@@ -135,20 +135,20 @@ EnterMap: ; 9673e
ld [wd454], a
call Function968d1
callba RunMapSetupScript
- call Function966cb
+ call ClearAllScriptFlags3
ld a, [$ff9f]
cp $f7
- jr nz, .asm_9675a
- call Function966d0
-.asm_9675a
+ jr nz, .dontset
+ call SetAll_ScriptFlags3
+.dontset
ld a, [$ff9f]
cp $f3
- jr nz, .asm_96764
+ jr nz, .dontresetpoison
xor a
ld [PoisonStepCount], a
-.asm_96764
+.dontresetpoison
xor a
ld [$ff9f], a
@@ -197,7 +197,7 @@ MapEvents: ; 96795
.events ; 967a1
call PlayerEvents
- call Function966cb
+ call ClearAllScriptFlags3
callba ScriptEvents
ret
; 967ae
@@ -245,7 +245,7 @@ Function967d1: ; 967d1
; 967e1
Function967e1: ; 967e1
- callba Function5920
+ callba RefreshMapAppearDisappear
callba Functiond4d2
callba Functionb8098
ret
@@ -254,19 +254,19 @@ Function967e1: ; 967e1
Function967f4: ; 967f4
ld a, [wd150]
bit 5, a
- jr z, .asm_96806
+ jr z, .events
bit 6, a
- jr z, .asm_9680c
+ jr z, .noevents
bit 4, a
- jr nz, .asm_9680c
- call Function966d0
+ jr nz, .noevents
+ call SetAll_ScriptFlags3
-.asm_96806
+.events
ld a, 0 ; events
ld [MapEventStatus], a
ret
-.asm_9680c
+.noevents
ld a, 1 ; no events
ld [MapEventStatus], a
ret
@@ -293,44 +293,44 @@ PlayerEvents: ; 9681f
call Function968e4
call CheckTrainerBattle3
- jr c, .asm_96848
+ jr c, .ok
call CheckTileEvent
- jr c, .asm_96848
+ jr c, .ok
call Function97c30
- jr c, .asm_96848
+ jr c, .ok
call Function968ec
- jr c, .asm_96848
+ jr c, .ok
call Function9693a
- jr c, .asm_96848
+ jr c, .ok
call OWPlayerInput
- jr c, .asm_96848
+ jr c, .ok
xor a
ret
-.asm_96848
+.ok
push af
- callba Function96c56
+ callba EnableScriptMode
pop af
ld [ScriptRunning], a
call Function96beb
ld a, [ScriptRunning]
cp 4
- jr z, .asm_96865
+ jr z, .ok2
cp 9
- jr z, .asm_96865
+ jr z, .ok2
xor a
ld [wc2da], a
-.asm_96865
+.ok2
scf
ret
; 96867
@@ -340,13 +340,13 @@ CheckTrainerBattle3: ; 96867
nop
nop
call CheckTrainerBattle2
- jr nc, .asm_96872
+ jr nc, .nope
ld a, 1
scf
ret
-.asm_96872
+.nope
xor a
ret
; 96874
@@ -355,60 +355,60 @@ CheckTrainerBattle3: ; 96867
CheckTileEvent: ; 96874
; Check for warps, tile triggers or wild battles.
- call Function9670c
- jr z, .asm_96886
+ call CheckBit2_ScriptFlags3
+ jr z, .bit2
- callba Function104820
- jr c, .asm_968a6
+ callba CheckMovingOffEdgeOfMap
+ jr c, .return4
call Function2238
- jr c, .asm_968aa
+ jr c, .return6
-.asm_96886
- call Function96712
- jr z, .asm_96890
+.bit2
+ call CheckBit1_ScriptFlags3
+ jr z, .bit1
- call Function2ad4
- jr c, .asm_968ba
+ call CheckCurrentMapXYTriggers
+ jr c, .movement
-.asm_96890
- call Function96718
- jr z, .asm_96899
+.bit1
+ call CheckBit0_ScriptFlags3
+ jr z, .bit0
call CountStep
ret c
-.asm_96899
- call Function9671e
- jr z, .asm_968a4
+.bit0
+ call CheckBit4_ScriptFlags3
+ jr z, .ok
call Function97cc0
ret c
- jr .asm_968a4
+ jr .ok
-.asm_968a4
+.ok
xor a
ret
-.asm_968a6
+.return4
ld a, 4
scf
ret
-.asm_968aa
+.return6
ld a, [StandingTile]
call CheckPitTile
- jr nz, .asm_968b6
+ jr nz, .pittile
ld a, 6
scf
ret
-.asm_968b6
+.pittile
ld a, 5
scf
ret
-.asm_968ba
+.movement
ld hl, MovementAnimation
ld a, [hli]
ld h, [hl]
@@ -450,7 +450,7 @@ Function968d8: ; 968d8
; 968e4
Function968e4: ; 968e4
- call Function966d6
+ call CheckBit5_ScriptFlags3
ret z
call Function2f3e
ret
@@ -459,12 +459,12 @@ Function968e4: ; 968e4
Function968ec: ; 968ec
ld a, [wdc07]
and a
- jr z, .asm_96938
+ jr z, .nope
ld c, a
- call Function211b
+ call CheckTriggers
cp c
- jr nc, .asm_96938
+ jr nc, .nope
ld e, a
ld d, 0
@@ -472,11 +472,10 @@ Function968ec: ; 968ec
ld a, [hli]
ld h, [hl]
ld l, a
- add hl, de
- add hl, de
- add hl, de
- add hl, de
-
+rept 4
+ add hl,de
+endr
+
call GetMapScriptHeaderBank
call GetFarHalfword
call GetMapScriptHeaderBank
@@ -485,12 +484,12 @@ Function968ec: ; 968ec
ld hl, ScriptFlags
res 3, [hl]
- callba Function96c56
+ callba EnableScriptMode
callba ScriptEvents
ld hl, ScriptFlags
bit 3, [hl]
- jr z, .asm_96938
+ jr z, .nope
ld hl, ScriptDelay + 2
ld a, [hli]
@@ -501,7 +500,7 @@ Function968ec: ; 968ec
scf
ret
-.asm_96938
+.nope
xor a
ret
; 9693a
@@ -531,8 +530,8 @@ Function9693a: ; 9693a
ret
.elevator
- ld a, BANK(UnknownScript_0x135f8)
- ld hl, UnknownScript_0x135f8
+ ld a, BANK(BugCatchingContestOverScript)
+ ld hl, BugCatchingContestOverScript
call CallScript
scf
ret
@@ -608,25 +607,25 @@ TryObjectEvent: ; 969b5
.IsObject
call PlayTalkObject
ld a, [hConnectedMapWidth]
- call Function1ae5
- ld hl, $0001
+ call GetObjectStruct
+ ld hl, OBJECT_MAP_OBJECT_INDEX
add hl, bc
ld a, [hl]
ld [$ffe0], a
ld a, [$ffe0]
call GetMapObject
- ld hl, $0008
+ ld hl, MAPOBJECT_COLOR
add hl, bc
ld a, [hl]
- and $f
+ and %00001111
; Bug: If IsInArray returns nc, data at bc will be executed as code.
push bc
ld de, 3
- ld hl, .data_969ee
+ ld hl, .pointers
call IsInArray
- jr nc, .asm_969ec
+ jr nc, .nope_bugged
pop bc
inc hl
@@ -635,11 +634,11 @@ TryObjectEvent: ; 969b5
ld l, a
jp [hl]
-.asm_969ec
+.nope_bugged
xor a
ret
-.data_969ee
+.pointers
dbw 0, .zero
dbw 1, .one
dbw 2, .two
@@ -647,11 +646,11 @@ TryObjectEvent: ; 969b5
dbw 4, .four
dbw 5, .five
dbw 6, .six
- db $ff
+ db -1
; 96a04
.zero ; 96a04
- ld hl, $000a
+ ld hl, MAPOBJECT_SCRIPT_POINTER
add hl, bc
ld a, [hli]
ld h, [hl]
@@ -663,7 +662,7 @@ TryObjectEvent: ; 969b5
; 96a12
.one ; 96a12
- ld hl, $000a
+ ld hl, MAPOBJECT_SCRIPT_POINTER
add hl, bc
ld a, [hli]
ld h, [hl]
@@ -712,7 +711,7 @@ TryReadSign: ; 96a38
ret
.IsSign
- ld a, [MartPointer]
+ ld a, [wd040]
ld hl, .signs
rst JumpTable
ret
@@ -726,7 +725,7 @@ TryReadSign: ; 96a38
dw .ifset
dw .ifnotset
dw .itemifset
- dw .asm_96aa2
+ dw .copy
; 96a59
.up
@@ -767,13 +766,13 @@ TryReadSign: ; 96a38
ld de, EngineBuffer1
ld bc, 3
call FarCopyBytes
- ld a, BANK(UnknownScript_0x13625)
- ld hl, UnknownScript_0x13625
+ ld a, BANK(SignpostItemScript)
+ ld hl, SignpostItemScript
call CallScript
scf
ret
-.asm_96aa2
+.copy
call CheckSignFlag
jr nz, .dontread
call GetMapScriptHeaderBank
@@ -785,18 +784,19 @@ TryReadSign: ; 96a38
.ifset
call CheckSignFlag
jr z, .dontread
- jr .asm_96ac1
+ jr .thenread
.ifnotset
call CheckSignFlag
jr nz, .dontread
-.asm_96ac1
+.thenread
push hl
call PlayTalkObject
pop hl
+rept 2
inc hl
- inc hl
+endr
call GetMapScriptHeaderBank
call GetFarHalfword
call GetMapScriptHeaderBank
@@ -820,7 +820,7 @@ CheckSignFlag: ; 96ad8
call GetFarHalfword
ld e, l
ld d, h
- ld b, $2
+ ld b, $2 ; check
call EventFlagAction
ld a, c
and a
@@ -878,8 +878,8 @@ PlayerMovement: ; 96af0
.three ; 96b20
; force the player to move in some direction
- ld a, BANK(UnknownScript_0x1253d)
- ld hl, UnknownScript_0x1253d
+ ld a, BANK(Script_ForcedMovement)
+ ld hl, Script_ForcedMovement
call CallScript
; ld a, -1
ld c, a
@@ -941,8 +941,8 @@ SelectMenuScript: ; 96b5f
StartMenuCallback:
SelectMenuCallback: ; 96b66
copybytetovar $ffa0
- if_equal $80, .Script
- if_equal $ff, .Asm
+ if_equal %10000000, .Script
+ if_equal -1, .Asm
end
; 96b72
@@ -959,13 +959,13 @@ SelectMenuCallback: ; 96b66
CountStep: ; 96b79
ld a, [InLinkBattle]
and a
- jr nz, .asm_96bc9
+ jr nz, .done
callba Function90136
- jr c, .asm_96bcb
+ jr c, .setminus1
call Function96bd7
- jr c, .asm_96bcb
+ jr c, .setminus1
ld hl, PoisonStepCount
inc [hl]
@@ -981,7 +981,7 @@ CountStep: ; 96b79
jr nz, .asm_96bab
callba Function16f3e
- jr nz, .asm_96bcf
+ jr nz, .set8
.asm_96bab
callba DaycareStep
@@ -989,25 +989,25 @@ CountStep: ; 96b79
ld hl, PoisonStepCount
ld a, [hl]
cp 4
- jr c, .asm_96bc3
+ jr c, .poisoned
ld [hl], 0
callba Function505da
- jr c, .asm_96bcb
+ jr c, .setminus1
-.asm_96bc3
+.poisoned
callba Function97db3
-.asm_96bc9
+.done
xor a
ret
-.asm_96bcb
+.setminus1
ld a, -1
scf
ret
-.asm_96bcf
+.set8
ld a, 8
scf
ret
@@ -1015,7 +1015,7 @@ CountStep: ; 96b79
Function96bd3: ; 96bd3
- ld a, $7
+ ld a, 7
scf
ret
; 96bd7
@@ -1027,8 +1027,8 @@ Function96bd7: ; 96bd7
dec a
ld [wdca1], a
ret nz
- ld a, BANK(UnknownScript_0x13619)
- ld hl, UnknownScript_0x13619
+ ld a, BANK(RepelWoreOffScript)
+ ld hl, RepelWoreOffScript
call CallScript
scf
ret
@@ -1038,17 +1038,17 @@ Function96beb: ; 96beb
ld a, [ScriptRunning]
and a
ret z
- cp $ff
+ cp -1
ret z
- cp $a
+ cp 10
ret nc
ld c, a
ld b, 0
ld hl, ScriptPointers96c0c
- add hl, bc
- add hl, bc
- add hl, bc
+rept 3
+ add hl,bc
+endr
ld a, [hli]
ld [ScriptBank], a
ld a, [hli]
@@ -1059,20 +1059,20 @@ Function96beb: ; 96beb
; 96c0c
ScriptPointers96c0c: ; 96c0c
- dbw BANK(UnknownScript_0x96c2d), UnknownScript_0x96c2d
- dbw BANK(UnknownScript_0xbe675), UnknownScript_0xbe675
- dbw BANK(UnknownScript_0xbe66a), UnknownScript_0xbe66a
- dbw BANK(UnknownScript_0x122ce), UnknownScript_0x122ce
+ dbw BANK(Invalid_0x96c2d), Invalid_0x96c2d
+ dbw BANK(SeenByTrainerScript), SeenByTrainerScript
+ dbw BANK(TalkToTrainerScript), TalkToTrainerScript
+ dbw BANK(FindItemInBallScript), FindItemInBallScript
dbw BANK(UnknownScript_0x96c4d), UnknownScript_0x96c4d
- dbw BANK(UnknownScript_0x96c34), UnknownScript_0x96c34
+ dbw BANK(WarpToNewMapScript), WarpToNewMapScript
dbw BANK(FallIntoMapScript), FallIntoMapScript
dbw BANK(UnknownScript_0x124c8), UnknownScript_0x124c8
- dbw BANK(UnknownScript_0x96c2f), UnknownScript_0x96c2f
+ dbw BANK(HatchEggScript), HatchEggScript
dbw BANK(UnknownScript_0x96c4f), UnknownScript_0x96c4f
- dbw BANK(UnknownScript_0x96c2d), UnknownScript_0x96c2d
+ dbw BANK(Invalid_0x96c2d), Invalid_0x96c2d
; 96c2d
-UnknownScript_0x96c2d: ; 96c2d
+Invalid_0x96c2d: ; 96c2d
end
; 96c2e
@@ -1080,12 +1080,12 @@ UnknownScript_0x96c2e: ; 96c2e
end
; 96c2f
-UnknownScript_0x96c2f: ; 96c2f
- callasm Function16f5e
+HatchEggScript: ; 96c2f
+ callasm OverworldHatchEgg
end
; 96c34
-UnknownScript_0x96c34: ; 96c34
+WarpToNewMapScript: ; 96c34
warpsound
newloadmap $f5
end
@@ -1116,7 +1116,7 @@ UnknownScript_0x96c4d: ; 96c4d
UnknownScript_0x96c4f: ; 96c4f
deactivatefacing $3
- callasm Function96706
+ callasm SetBit4_ScriptFlags3
end
; 96c56
diff --git a/engine/events_2.asm b/engine/events_2.asm
index 433c7caea..bca1ec27b 100644
--- a/engine/events_2.asm
+++ b/engine/events_2.asm
@@ -1,7 +1,7 @@
; More overworld event handling.
-Function97c28:: ; 97c28
+WarpToSpawnPoint:: ; 97c28
ld hl, StatusFlags2
res 1, [hl]
res 2, [hl]
@@ -48,46 +48,46 @@ Function97c5f:: ; 97c5f
call GetFacingTileCoord
ld [EngineBuffer1], a
ld c, a
- callba Function1365b
- jr c, .asm_97cb9
+ callba CheckFacingTileForStd
+ jr c, .done
call CheckCutTreeTile
jr nz, .whirlpool
callba TryCutOW
- jr .asm_97cb9
+ jr .done
.whirlpool
ld a, [EngineBuffer1]
call CheckWhirlpoolTile
jr nz, .waterfall
callba TryWhirlpoolOW
- jr .asm_97cb9
+ jr .done
.waterfall
ld a, [EngineBuffer1]
call CheckWaterfallTile
jr nz, .headbutt
callba TryWaterfallOW
- jr .asm_97cb9
+ jr .done
.headbutt
ld a, [EngineBuffer1]
call CheckHeadbuttTreeTile
jr nz, .surf
callba TryHeadbuttOW
- jr c, .asm_97cb9
- jr .asm_97cb7
+ jr c, .done
+ jr .noevent
.surf
callba TrySurfOW
- jr nc, .asm_97cb7
- jr .asm_97cb9
+ jr nc, .noevent
+ jr .done
-.asm_97cb7
+.noevent
xor a
ret
-.asm_97cb9
+.done
call PlayClickSFX
ld a, $ff
scf
@@ -125,8 +125,8 @@ Function97cc0:: ; 97cc0
jr .asm_97cf4
.asm_97ced
- ld a, BANK(UnknownScript_0x135eb)
- ld hl, UnknownScript_0x135eb
+ ld a, BANK(BugCatchingContestBattleScript)
+ ld hl, BugCatchingContestBattleScript
jr .asm_97cf4
.asm_97cf4
@@ -146,7 +146,7 @@ Function97cfd:: ; 97cfd
ld hl, StatusFlags
bit 5, [hl]
jr nz, .asm_97d21
- ld a, [wd19a]
+ ld a, [wPermission]
cp $4
jr z, .asm_97d17
cp $7
@@ -271,21 +271,21 @@ Function97db3:: ; 97db3
Function97db5: ; 97db5
ld hl, StatusFlags2
bit 4, [hl]
- jr z, .asm_97df7
+ jr z, .NoCall
ld a, [PlayerState]
- cp $1
- jr nz, .asm_97df7
- call Function2d05
+ cp 1
+ jr nz, .NoCall
+ call GetMapHeaderPhoneServiceNybble
and a
- jr nz, .asm_97df7
+ jr nz, .NoCall
ld hl, wdca1 + 1
ld a, [hli]
ld d, a
ld e, [hl]
- cp $ff
+ cp -1
jr nz, .asm_97dd8
ld a, e
- cp $ff
+ cp -1
jr z, .asm_97ddc
.asm_97dd8
@@ -297,34 +297,34 @@ Function97db5: ; 97db5
.asm_97ddc
ld a, d
cp $4
- jr c, .asm_97df7
- ld a, [wdc31]
+ jr c, .NoCall
+ ld a, [wSpecialPhoneCallID]
and a
- jr nz, .asm_97df7
- ld a, $6
- ld [wdc31], a
+ jr nz, .NoCall
+ ld a, 6
+ ld [wSpecialPhoneCallID], a
xor a
- ld [wdc31 + 1], a
+ ld [wSpecialPhoneCallID + 1], a
ld hl, StatusFlags2
res 4, [hl]
scf
ret
-.asm_97df7
+.NoCall
xor a
ret
; 97df9
Function97df9:: ; 97df9
ld hl, wd6de
- ld de, $0006
- ld c, $4
+ ld de, 6
+ ld c, 4
xor a
-.asm_97e02
+.loop
ld [hl], a
add hl, de
dec c
- jr nz, .asm_97e02
+ jr nz, .loop
ret
; 97e08
@@ -439,9 +439,9 @@ Function97e79: ; 97e79
ld e, a
ld d, 0
ld hl, Table97e94
+rept 3
add hl, de
- add hl, de
- add hl, de
+endr
ld a, [hli]
push af
ld a, [hli]
diff --git a/engine/fruit_trees.asm b/engine/fruit_trees.asm
index 26002641a..9404a5564 100644
--- a/engine/fruit_trees.asm
+++ b/engine/fruit_trees.asm
@@ -43,7 +43,7 @@ GetCurTreeFruit: ; 44041
; 4404c
TryResetFruitTrees: ; 4404c
- ld hl, wdc1e
+ ld hl, DailyFlags
bit 4, [hl]
ret nz
jp ResetFruitTrees
@@ -66,11 +66,11 @@ PickedFruitTree: ; 4405f
ResetFruitTrees: ; 4406a
xor a
ld hl, FruitTreeFlags
+rept 3
ld [hli], a
- ld [hli], a
- ld [hli], a
+endr
ld [hl], a
- ld hl, wdc1e
+ ld hl, DailyFlags
set 4, [hl]
ret
; 44078
diff --git a/engine/landmarks.asm b/engine/landmarks.asm
index 831709514..e9b1c3668 100644
--- a/engine/landmarks.asm
+++ b/engine/landmarks.asm
@@ -3,8 +3,9 @@ GetLandmarkCoords: ; 0x1ca896
push hl
ld l, e
ld h, 0
+rept 2
add hl, hl
- add hl, hl
+endr
ld de, Landmarks
add hl, de
ld a, [hli]
@@ -23,8 +24,9 @@ GetLandmarkName:: ; 0x1ca8a5
ld l, e
ld h, 0
+rept 2
add hl, hl
- add hl, hl
+endr
ld de, Landmarks + 2
add hl, de
ld a, [hli]
diff --git a/engine/map_objects.asm b/engine/map_objects.asm
index d7c1b6581..6cbdc87aa 100644
--- a/engine/map_objects.asm
+++ b/engine/map_objects.asm
@@ -1,7 +1,7 @@
INCLUDE "engine/facings.asm"
-Data4273:: ; 4273
+ObjectStruct3_Data:: ; 4273
db $00, $00, $01, $02, $00, $00
db $06, $00, $01, $0c, $00, $00
db $03, $00, $01, $00, $00, $00
@@ -45,26 +45,26 @@ Data4273:: ; 4273
Function4357:: ; 4357
push bc
- ld hl, OBJECT_01
+ ld hl, OBJECT_MAP_OBJECT_INDEX
add hl, bc
ld a, [hl]
push af
ld h, b
ld l, c
- ld bc, ObjectStruct2 - ObjectStruct1
+ ld bc, OBJECT_STRUCT_LENGTH
xor a
call ByteFill
pop af
- cp $ff
- jr z, .asm_4379
+ cp -1
+ jr z, .ok
bit 7, a
- jr nz, .asm_4379
+ jr nz, .ok
call GetMapObject
- ld hl, OBJECT_00
+ ld hl, OBJECT_SPRITE
add hl, bc
- ld [hl], $ff
+ ld [hl], -1
-.asm_4379
+.ok
pop bc
ret
; 437b
@@ -86,24 +86,24 @@ Function4386: ; 4386
ld hl, OBJECT_MAP_X
add hl, bc
ld a, [hl]
- add $1
+ add 1
sub e
- jr c, .asm_43b2
- cp $c
- jr nc, .asm_43b2
+ jr c, .ok
+ cp MAPOBJECT_SCREEN_WIDTH
+ jr nc, .ok
ld a, [YCoord]
ld e, a
ld hl, OBJECT_MAP_Y
add hl, bc
ld a, [hl]
- add $1
+ add 1
sub e
- jr c, .asm_43b2
- cp $b
- jr nc, .asm_43b2
- jr .asm_43dc
+ jr c, .ok
+ cp MAPOBJECT_SCREEN_HEIGHT
+ jr nc, .ok
+ jr .yes
-.asm_43b2
+.ok
ld hl, OBJECT_FLAGS
add hl, bc
set 6, [hl]
@@ -112,36 +112,36 @@ Function4386: ; 4386
ld hl, OBJECT_20
add hl, bc
ld a, [hl]
- add $1
+ add 1
sub e
- jr c, .asm_43de
- cp $c
- jr nc, .asm_43de
+ jr c, .ok2
+ cp MAPOBJECT_SCREEN_WIDTH
+ jr nc, .ok2
ld a, [YCoord]
ld e, a
ld hl, OBJECT_21
add hl, bc
ld a, [hl]
- add $1
+ add 1
sub e
- jr c, .asm_43de
- cp $b
- jr nc, .asm_43de
+ jr c, .ok2
+ cp MAPOBJECT_SCREEN_HEIGHT
+ jr nc, .ok2
-.asm_43dc
+.yes
and a
ret
-.asm_43de
+.ok2
ld hl, OBJECT_04
add hl, bc
bit 1, [hl]
- jr nz, .asm_43eb
+ jr nz, .yes2
call Function4357
scf
ret
-.asm_43eb
+.yes2
ld hl, OBJECT_FLAGS
add hl, bc
set 6, [hl]
@@ -154,38 +154,38 @@ Function43f3: ; 43f3
add hl, bc
ld a, [hl]
and a
- jr z, .asm_4409
+ jr z, .zero
ld hl, OBJECT_FLAGS
add hl, bc
bit 5, [hl]
- jr nz, .asm_4426
- cp $1
- jr z, .asm_4414
- jr .asm_4421
+ jr nz, .not_bit5
+ cp 1
+ jr z, .one
+ jr .ok
-.asm_4409
+.zero
call Function47bc
ld hl, OBJECT_FLAGS
add hl, bc
bit 5, [hl]
- jr nz, .asm_4426
+ jr nz, .not_bit5
-.asm_4414
+.one
call Function47dd
ld hl, OBJECT_09
add hl, bc
ld a, [hl]
and a
ret z
- cp $1
+ cp 1
ret z
-.asm_4421
+.ok
ld hl, Pointers4b45
rst JumpTable
ret
-.asm_4426
+.not_bit5
ret
; 4427
@@ -226,8 +226,9 @@ Function444d: ; 444d
ld a, [hl]
ld l, a
ld h, 0
- add hl, hl
- add hl, hl
+rept 2
+ add hl,hl
+endr
add hl, de
ld a, [hli]
ld h, [hl]
@@ -274,26 +275,26 @@ Pointers445f: ; 445f
; 44a3
Function44a3: ; 44a3
- ld hl, OBJECT_FACING
+ ld hl, OBJECT_FACING_STEP
add hl, bc
- ld [hl], $ff
+ ld [hl], -1
ret
; 44aa
Function44aa: ; 44aa
call GetSpriteDirection
- or $0
- ld hl, OBJECT_FACING
+ or 0
+ ld hl, OBJECT_FACING_STEP
add hl, bc
ld [hl], a
ret
; 44b5
Function44b5: ; 44b5
- ld hl, OBJECT_FACING
+ ld hl, OBJECT_FACING_STEP
add hl, bc
ld a, [hl]
- and $1
+ and 1
jr nz, Function44c1
jp Function44aa
; 44c1
@@ -307,16 +308,16 @@ Function44c1: ; 44c1
add hl, bc
ld a, [hl]
inc a
- and $f
+ and %00001111
ld [hl], a
rrca
rrca
- and $3
+ and %00000011
ld d, a
call GetSpriteDirection
- or $0
+ or 0
or d
- ld hl, OBJECT_FACING
+ ld hl, OBJECT_FACING_STEP
add hl, bc
ld [hl], a
ret
@@ -330,17 +331,17 @@ Function44e4: ; 44e4
ld hl, OBJECT_12
add hl, bc
ld a, [hl]
- add $2
- and $f
+ add 2
+ and %00001111
ld [hl], a
rrca
rrca
- and $3
+ and %00000011
ld d, a
call GetSpriteDirection
- or $0
+ or 0
or d
- ld hl, OBJECT_FACING
+ ld hl, OBJECT_FACING_STEP
add hl, bc
ld [hl], a
ret
@@ -358,12 +359,12 @@ Function4508: ; 4508
rrca
rrca
rrca
- and $3
+ and %00000011
ld d, a
call GetSpriteDirection
- or $0
+ or 0
or d
- ld hl, OBJECT_FACING
+ ld hl, OBJECT_FACING_STEP
add hl, bc
ld [hl], a
ret
@@ -371,11 +372,11 @@ Function4508: ; 4508
Function4529: ; 4529
call Function453f
- ld hl, OBJECT_08
+ ld hl, OBJECT_FACING
add hl, bc
ld a, [hl]
- or $0
- ld hl, OBJECT_FACING
+ or 0
+ ld hl, OBJECT_FACING_STEP
add hl, bc
ld [hl], a
ret
@@ -390,21 +391,21 @@ Function453f: ; 453f
ld hl, OBJECT_12
add hl, bc
ld a, [hl]
- and $f0
+ and %11110000
ld e, a
ld a, [hl]
inc a
- and $f
+ and %00001111
ld d, a
- cp $4
- jr c, .asm_4558
+ cp 4
+ jr c, .ok
ld d, 0
ld a, e
add $10
- and $30
+ and %00110000
ld e, a
-.asm_4558
+.ok
ld a, d
or e
ld [hl], a
@@ -413,14 +414,14 @@ Function453f: ; 453f
ld hl, .Directions
add hl, de
ld a, [hl]
- ld hl, OBJECT_08
+ ld hl, OBJECT_FACING
add hl, bc
ld [hl], a
ret
; 456a
.Directions ; 456a
- db $00, $0c, $04, $08
+ db DOWN << 2, RIGHT << 2, UP << 2, LEFT << 2
; 456e
Function456e: ; 456e
@@ -428,28 +429,28 @@ Function456e: ; 456e
rrca
rrca
add $10
- ld hl, OBJECT_FACING
+ ld hl, OBJECT_FACING_STEP
add hl, bc
ld [hl], a
ret
; 457b
Function457b: ; 457b
- ld hl, OBJECT_FACING
+ ld hl, OBJECT_FACING_STEP
add hl, bc
ld [hl], $15
ret
; 4582
Function4582: ; 4582
- ld hl, OBJECT_FACING
+ ld hl, OBJECT_FACING_STEP
add hl, bc
ld [hl], $14
ret
; 4589
Function4589: ; 4589
- ld hl, OBJECT_FACING
+ ld hl, OBJECT_FACING_STEP
add hl, bc
ld [hl], $17
ret
@@ -460,20 +461,20 @@ Function4590: ; 4590
add hl, bc
ld a, [hl]
inc a
- and $f
+ and %00001111
ld [hl], a
- and $8
+ and %00001000
jr z, Function45a4
- ld hl, OBJECT_FACING
+ ld hl, OBJECT_FACING_STEP
add hl, bc
ld [hl], $4
ret
; 45a4
Function45a4: ; 45a4
- ld hl, OBJECT_FACING
+ ld hl, OBJECT_FACING_STEP
add hl, bc
- ld [hl], $0
+ ld [hl], 0
ret
; 45ab
@@ -483,34 +484,34 @@ Function45ab: ; 45ab
ld a, [hl]
inc a
ld [hl], a
- and $c
+ and %00001100
rrca
rrca
add $18
- ld hl, OBJECT_FACING
+ ld hl, OBJECT_FACING_STEP
add hl, bc
ld [hl], a
ret
; 45be
Function45be: ; 45be
- ld hl, OBJECT_FACING
+ ld hl, OBJECT_FACING_STEP
add hl, bc
ld [hl], $16
ret
; 45c5
Function45c5: ; 45c5
- ld a, [VariableSprites + 3]
+ ld a, [VariableSprites + SPRITE_BIG_DOLL - SPRITE_VARS]
ld d, $17
- cp $33
- jr z, .asm_45d4
- cp $47
- jr z, .asm_45d4
+ cp SPRITE_BIG_SNORLAX
+ jr z, .ok
+ cp SPRITE_BIG_LAPRAS
+ jr z, .ok
ld d, $16
-.asm_45d4
- ld hl, OBJECT_FACING
+.ok
+ ld hl, OBJECT_FACING_STEP
add hl, bc
ld [hl], d
ret
@@ -522,13 +523,13 @@ Function45da: ; 45da
inc [hl]
ld a, [hl]
- ld hl, OBJECT_FACING
+ ld hl, OBJECT_FACING_STEP
add hl, bc
and 2
ld a, $1c
- jr z, .asm_45eb
+ jr z, .ok
inc a
-.asm_45eb
+.ok
ld [hl], a
ret
; 45ed
@@ -538,14 +539,14 @@ Function45ed: ; 45ed
add hl, bc
inc [hl]
ld a, [hl]
- ld hl, OBJECT_FACING
+ ld hl, OBJECT_FACING_STEP
add hl, bc
and 4
ld a, $1e
- jr z, .asm_45fe
+ jr z, .ok
inc a
-.asm_45fe
+.ok
ld [hl], a
ret
; 4600
@@ -605,13 +606,13 @@ Function463f: ; 463f
ld hl, OBJECT_FLAGS
add hl, bc
bit 3, [hl]
- jr z, .asm_464f
+ jr z, .ok
ld hl, OBJECT_STANDING_TILE
add hl, bc
ld a, [hl]
call Function4661
-.asm_464f
+.ok
ld hl, OBJECT_STANDING_TILE
add hl, bc
ld a, [hl]
@@ -626,17 +627,17 @@ Function463f: ; 463f
Function4661: ; 4661
call Function188e
- jr z, .asm_466b
+ jr z, .set
call Function1875
- jr c, .asm_4672
+ jr c, .reset
-.asm_466b
+.set
ld hl, OBJECT_FLAGS
add hl, bc
set 3, [hl]
ret
-.asm_4672
+.reset
ld hl, OBJECT_FLAGS
add hl, bc
res 3, [hl]
@@ -655,33 +656,34 @@ Function467b: ; 467b
ld [hl], a
ld hl, OBJECT_27
add hl, bc
+rept 3
ld [hli], a
- ld [hli], a
- ld [hli], a
+endr
ld [hl], a
- ld hl, OBJECT_07
+ ld hl, OBJECT_DIRECTION_WALKING
add hl, bc
- ld [hl], $ff
+ ld [hl], STANDING
ret
; 4690
Function4690: ; 4690
- ld hl, OBJECT_07
+ ld hl, OBJECT_DIRECTION_WALKING
add hl, bc
ld [hl], a
ld hl, OBJECT_04
add hl, bc
bit 2, [hl]
- jr nz, .asm_46a6
+ jr nz, .ok
+rept 2
add a
- add a
- and $c
- ld hl, OBJECT_08
+endr
+ and %00001100
+ ld hl, OBJECT_FACING
add hl, bc
ld [hl], a
-.asm_46a6
+.ok
; fallthrough
; 46a6
@@ -745,12 +747,13 @@ Function46d7: ; 46d7
GetStepVector: ; 46e9
; Return (x, y, duration, speed) in (d, e, a, h).
- ld hl, OBJECT_07
+ ld hl, OBJECT_DIRECTION_WALKING
add hl, bc
ld a, [hl]
- and $f
- add a
+ and %00001111
+rept 2
add a
+endr
ld l, a
ld h, 0
ld de, StepVectors
@@ -793,10 +796,10 @@ Function4730: ; 4730
; 4738
Function4738: ; 4738
- ld hl, OBJECT_07
+ ld hl, OBJECT_DIRECTION_WALKING
add hl, bc
ld a, [hl]
- and $3
+ and %00000011
ld [wd151], a
call Function46d7
ld a, [wd14e]
@@ -814,7 +817,7 @@ Function4759: ; 4759
push bc
ld e, a
ld d, 0
- ld hl, OBJECT_01
+ ld hl, OBJECT_MAP_OBJECT_INDEX
add hl, bc
ld a, [hl]
call GetMapObject
@@ -825,46 +828,46 @@ Function4759: ; 4759
; 4769
Function4769: ; 4769
- ld hl, OBJECT_01
+ ld hl, OBJECT_MAP_OBJECT_INDEX
add hl, bc
ld a, [hl]
- cp $ff
- jr z, .asm_477d
+ cp -1
+ jr z, .ok
push bc
call GetMapObject
- ld hl, $0004
+ ld hl, MAPOBJECT_FACING
add hl, bc
ld a, [hl]
pop bc
ret
-.asm_477d
- ld a, $6
+.ok
+ ld a, 6
ret
; 4780
-Function4780: ; 4780
+ClearObjectStructField27: ; 4780
ld hl, OBJECT_27
add hl, bc
- ld [hl], $0
+ ld [hl], 0
ret
; 4787
-Function4787: ; 4787
+IncrementObjectStructField27: ; 4787
ld hl, OBJECT_27
add hl, bc
inc [hl]
ret
; 478d
-Function478d: ; 478d
+DecrementObjectStructField27: ; 478d
ld hl, OBJECT_27
add hl, bc
dec [hl]
ret
; 4793
-Function4793: ; 4793
+JumptoObjectStructField27: ; 4793
ld hl, OBJECT_27
add hl, bc
ld a, [hl]
@@ -873,21 +876,21 @@ Function4793: ; 4793
ret
; 479b
-Function479b: ; 479b
+ClearObjectStructField28: ; 479b
ld hl, OBJECT_28
add hl, bc
- ld [hl], $0
+ ld [hl], 0
ret
; 47a2
-Function47a2: ; 47a2
+IncrementObjectStructField28: ; 47a2
ld hl, OBJECT_28
add hl, bc
inc [hl]
ret
; 47a8
-Function47a8: ; 47a8
+JumptoObjectStructField28: ; 47a8
ld hl, OBJECT_28
add hl, bc
ld a, [hl]
@@ -896,14 +899,14 @@ Function47a8: ; 47a8
ret
; 47b0
-Function47b0: ; 47b0
+GetValueObjectStructField28: ; 47b0
ld hl, OBJECT_28
add hl, bc
ld a, [hl]
ret
; 47b6
-Function47b6: ; 47b6
+SetValueObjectStructField28: ; 47b6
ld hl, OBJECT_28
add hl, bc
ld [hl], a
@@ -927,12 +930,12 @@ Function47bc: ; 47bc
call Function467b
ld hl, OBJECT_09
add hl, bc
- ld [hl], $1
+ ld [hl], 1
ret
; 47dd
Function47dd: ; 47dd
- call Function479b
+ call ClearObjectStructField28
call Function1a2f
ld a, [hl]
ld hl, .Pointers
@@ -978,49 +981,49 @@ Function4821: ; 4821
Function4822: ; 4822
call Random
ld a, [hRandomAdd]
- and 1
+ and %00000001
jp Function4af0
; 482c
Function482c: ; 482c
call Random
ld a, [hRandomAdd]
- and 1
- or 2
+ and %00000001
+ or %00000010
jp Function4af0
; 4838
Function4838: ; 4838
call Random
ld a, [hRandomAdd]
- and 3
+ and %00000011
jp Function4af0
; 4842
Function4842: ; 4842
call Random
ld a, [hRandomAdd]
- and $c
- ld hl, OBJECT_08
+ and %00001100
+ ld hl, OBJECT_FACING
add hl, bc
ld [hl], a
jp Function4b1d
; 4851
Function4851: ; 4851
- ld hl, OBJECT_08
+ ld hl, OBJECT_FACING
add hl, bc
ld a, [hl]
- and $c
+ and %00001100
ld d, a
call Random
ld a, [hRandomAdd]
- and $c
+ and %00001100
cp d
- jr nz, .asm_4865
- xor $c
+ jr nz, .keep
+ xor %00001100
-.asm_4865
+.keep
ld [hl], a
jp Function4b26
; 4869
@@ -1030,10 +1033,10 @@ Function4869: ; 4869
call Function467b
ld hl, OBJECT_11
add hl, bc
- ld [hl], $1
+ ld [hl], 1
ld hl, OBJECT_09
add hl, bc
- ld [hl], $5
+ ld [hl], 5
ret
; 487c
@@ -1084,7 +1087,7 @@ Function48a6: ; 48a6
; 48ac
Function48ac: ; 48ac
- call Function4793
+ call JumptoObjectStructField27
dw Function48b3
dw Function48f8
; 48b3
@@ -1094,20 +1097,20 @@ Function48b3: ; 48b3
add hl, bc
ld a, [hl]
call CheckPitTile
- jr z, .asm_48f5
+ jr z, .on_pit
ld hl, OBJECT_FLAGS
add hl, bc
bit 2, [hl]
res 2, [hl]
- jr z, .asm_48ee
+ jr z, .ok
ld hl, OBJECT_32
add hl, bc
ld a, [hl]
- and $3
- or $0
+ and %00000011
+ or 0
call Function4690
call Function6ec1
- jr c, .asm_48eb
+ jr c, .ok2
ld de, SFX_STRENGTH
call PlaySFX
call Function5538
@@ -1117,24 +1120,24 @@ Function48b3: ; 48b3
ld [hl], $f
ret
-.asm_48eb
+.ok2
call Function462a
-.asm_48ee
- ld hl, OBJECT_07
+.ok
+ ld hl, OBJECT_DIRECTION_WALKING
add hl, bc
- ld [hl], $ff
+ ld [hl], STANDING
ret
-.asm_48f5
- call Function4787
+.on_pit
+ call IncrementObjectStructField27
; fallthrough
; 48f8
Function48f8: ; 48f8
- ld hl, OBJECT_07
+ ld hl, OBJECT_DIRECTION_WALKING
add hl, bc
- ld [hl], $ff
+ ld [hl], STANDING
ret
; 48ff
@@ -1149,96 +1152,96 @@ Function48ff: ; 48ff
add hl, bc
ld a, [hl]
push bc
- call Function1ae5
- ld hl, OBJECT_07
+ call GetObjectStruct
+ ld hl, OBJECT_DIRECTION_WALKING
add hl, bc
ld a, [hl]
- cp $ff
- jr z, .asm_494a
+ cp STANDING
+ jr z, .standing
ld hl, OBJECT_NEXT_MAP_X
add hl, bc
ld a, [hl]
cp d
- jr z, .asm_492d
- jr c, .asm_4929
- ld a, $3
- jr .asm_493d
+ jr z, .equal
+ jr c, .less
+ ld a, 3
+ jr .done
-.asm_4929
- ld a, $2
- jr .asm_493d
+.less
+ ld a, 2
+ jr .done
-.asm_492d
+.equal
ld hl, OBJECT_NEXT_MAP_Y
add hl, bc
ld a, [hl]
cp e
- jr z, .asm_494a
- jr c, .asm_493b
- ld a, $0
- jr .asm_493d
+ jr z, .standing
+ jr c, .less2
+ ld a, 0
+ jr .done
-.asm_493b
- ld a, $1
+.less2
+ ld a, 1
-.asm_493d
+.done
ld d, a
- ld hl, OBJECT_07
+ ld hl, OBJECT_DIRECTION_WALKING
add hl, bc
ld a, [hl]
- and $c
+ and %00001100
or d
pop bc
jp Function5412
-.asm_494a
+.standing
pop bc
- ld hl, OBJECT_07
+ ld hl, OBJECT_DIRECTION_WALKING
add hl, bc
- ld [hl], $ff
+ ld [hl], STANDING
ld hl, OBJECT_11
add hl, bc
- ld [hl], $1
+ ld [hl], 1
ret
; 4958
Function4958: ; 4958
call Function467b
- ld hl, OBJECT_07
+ ld hl, OBJECT_DIRECTION_WALKING
add hl, bc
- ld [hl], $ff
+ ld [hl], STANDING
ld hl, OBJECT_11
add hl, bc
- ld [hl], $9
+ ld [hl], 9
ld hl, OBJECT_09
add hl, bc
- ld [hl], $4
+ ld [hl], 4
ret
; 496e
Function496e: ; 496e
call Function467b
- ld hl, OBJECT_07
+ ld hl, OBJECT_DIRECTION_WALKING
add hl, bc
- ld [hl], $ff
+ ld [hl], STANDING
ld hl, OBJECT_11
add hl, bc
- ld [hl], $a
+ ld [hl], 10
ld hl, OBJECT_09
add hl, bc
- ld [hl], $4
+ ld [hl], 4
ret
; 4984
Function4984: ; 4984
- call Function4793
+ call JumptoObjectStructField27
dw Function4996
dw Function499c
dw Function49b8
; 498d
Function498d: ; 498d
- call Function4793
+ call JumptoObjectStructField27
dw Function4996
dw Function499c
dw Function49c4
@@ -1246,14 +1249,14 @@ Function498d: ; 498d
Function4996: ; 4996
call Function467b
- call Function4787
+ call IncrementObjectStructField27
; fallthrough
; 499c
Function499c: ; 499c
ld hl, OBJECT_11
add hl, bc
- ld [hl], $1
+ ld [hl], 1
ld hl, OBJECT_32
add hl, bc
ld a, [hl]
@@ -1263,46 +1266,46 @@ Function499c: ; 499c
ld [hl], a
ld hl, OBJECT_09
add hl, bc
- ld [hl], $3
- call Function4787
+ ld [hl], 3
+ call IncrementObjectStructField27
ret
; 49b8
Function49b8: ; 49b8
- ld de, .data_49c0
+ ld de, .DirectionData_49c0
call Function49d0
jr Function4984
; 49c0
-.data_49c0 ; 49c0
- db $0c, $08, $00, $04
+.DirectionData_49c0 ; 49c0
+ db RIGHT << 2, LEFT << 2, DOWN << 2, UP << 2
; 49c4
Function49c4: ; 49c4
- ld de, .data_49cc
+ ld de, .DirectionData_49cc
call Function49d0
jr Function498d
; 49cc
-.data_49cc ; 49cc
- db $08, $0c, $04, $00
+.DirectionData_49cc ; 49cc
+ db LEFT << 2, RIGHT << 2, UP << 2, DOWN << 2
; 49d0
Function49d0: ; 49d0
- ld hl, OBJECT_08
+ ld hl, OBJECT_FACING
add hl, bc
ld a, [hl]
- and $c
+ and %00001100
rrca
rrca
push hl
ld l, a
- ld h, $0
+ ld h, 0
add hl, de
ld a, [hl]
pop hl
ld [hl], a
- call Function478d
+ call DecrementObjectStructField27
ret
; 49e5
@@ -1316,28 +1319,28 @@ Function49e5: ; 49e5
ld a, [hl]
inc a
add a
- add $0
+ add 0
ld hl, OBJECT_STEP_DURATION
add hl, bc
ld [hl], a
- ld hl, OBJECT_07
+ ld hl, OBJECT_DIRECTION_WALKING
add hl, de
ld a, [hl]
and 3
ld d, $e
- cp 0
- jr z, .asm_4a0f
- cp 1
- jr z, .asm_4a0f
+ cp DOWN
+ jr z, .ok
+ cp UP
+ jr z, .ok
ld d, $c
-.asm_4a0f
+.ok
ld hl, OBJECT_SPRITE_Y_OFFSET
add hl, bc
ld [hl], d
ld hl, OBJECT_SPRITE_X_OFFSET
add hl, bc
- ld [hl], $0
+ ld [hl], 0
ld hl, OBJECT_09
add hl, bc
ld [hl], $13
@@ -1349,16 +1352,16 @@ Function4a21: ; 4a21
call Function4aa8
ld hl, OBJECT_11
add hl, bc
- ld [hl], $8
+ ld [hl], 8
ld hl, OBJECT_STEP_DURATION
add hl, bc
- ld [hl], $0
+ ld [hl], 0
ld hl, OBJECT_SPRITE_Y_OFFSET
add hl, bc
ld [hl], $f0
ld hl, OBJECT_SPRITE_X_OFFSET
add hl, bc
- ld [hl], $0
+ ld [hl], 0
ld hl, OBJECT_09
add hl, bc
ld [hl], $13
@@ -1379,15 +1382,16 @@ Function4a46: ; 4a46
ld hl, OBJECT_STEP_DURATION
add hl, bc
ld [hl], a
- ld hl, OBJECT_07
+ ld hl, OBJECT_DIRECTION_WALKING
add hl, de
ld a, [hl]
- and 3
+ and %00000011
ld e, a
ld d, 0
ld hl, .data_4a81
- add hl, de
- add hl, de
+rept 2
+ add hl,de
+endr
ld d, [hl]
inc hl
ld e, [hl]
@@ -1420,7 +1424,7 @@ Function4a89: ; 4a89
ld hl, OBJECT_STEP_DURATION
add hl, de
ld a, [hl]
- add $ff
+ add -1
ld hl, OBJECT_STEP_DURATION
add hl, bc
ld [hl], a
@@ -1435,7 +1439,7 @@ Function4aa8: ; 4aa8
add hl, bc
ld a, [hl]
push bc
- call Function1ae5
+ call GetObjectStruct
ld d, b
ld e, c
pop bc
@@ -1451,7 +1455,7 @@ Function4abc: ; 4abc
call Function467b
ld hl, OBJECT_11
add hl, bc
- ld [hl], $0
+ ld [hl], 0
ld hl, OBJECT_32
add hl, bc
ld a, [hl]
@@ -1470,20 +1474,20 @@ Function4abc: ; 4abc
Function4ade: ; 4ade
ld d, a
- and $3f
+ and %00111111
ld e, a
ld a, d
rlca
rlca
- and $3
+ and %00000011
ld d, a
inc d
- ld a, $1
-.asm_4aeb
+ ld a, 1
+.loop
dec d
ret z
add a
- jr .asm_4aeb
+ jr .loop
; 4af0
Function4af0: ; 4af0
@@ -1493,20 +1497,20 @@ Function4af0: ; 4af0
call Function463f
ld hl, OBJECT_11
add hl, bc
- ld [hl], $2
+ ld [hl], 2
ld hl, wd4cf
ld a, [$ffaf]
cp [hl]
- jr z, .asm_4b10
+ jr z, .ok
ld hl, OBJECT_09
add hl, bc
ld [hl], $7
ret
-.asm_4b10
+.ok
ld hl, OBJECT_09
add hl, bc
- ld [hl], $6
+ ld [hl], 6
ret
Function4b17: ; 4b17
@@ -1518,14 +1522,14 @@ Function4b17: ; 4b17
Function4b1d: ; 4b1d
call Random
ld a, [hRandomAdd]
- and $7f
+ and %01111111
jr Function4b2d
; 4b26
Function4b26: ; 4b26
call Random
ld a, [hRandomAdd]
- and $1f
+ and %00011111
; fallthrough
; 4b2d
@@ -1533,15 +1537,15 @@ Function4b2d: ; 4b2d
ld hl, OBJECT_STEP_DURATION
add hl, bc
ld [hl], a
- ld hl, OBJECT_07
+ ld hl, OBJECT_DIRECTION_WALKING
add hl, bc
- ld [hl], $ff
+ ld [hl], STANDING
ld hl, OBJECT_11
add hl, bc
- ld [hl], $1
+ ld [hl], 1
ld hl, OBJECT_09
add hl, bc
- ld [hl], $3
+ ld [hl], 3
ret
; 4b45
@@ -1581,12 +1585,12 @@ Function4b79: ; 4b79
ret nz
ld hl, OBJECT_09
add hl, bc
- ld [hl], $1
+ ld [hl], 1
ret
; 4b86
Function4b86: ; 4b86
- call Function47a8
+ call JumptoObjectStructField28
dw Function4b8d
dw Function4ba9
; 4b8d
@@ -1603,7 +1607,7 @@ Function4b8d: ; 4b8d
ld hl, OBJECT_FLAGS
add hl, bc
res 3, [hl]
- call Function47a2
+ call IncrementObjectStructField28
ret
; 4ba9
@@ -1617,12 +1621,12 @@ Function4ba9: ; 4ba9
call Function4600
ld hl, OBJECT_09
add hl, bc
- ld [hl], $1
+ ld [hl], 1
ret
; 4bbf
Function4bbf: ; 4bbf
- call Function47a8
+ call JumptoObjectStructField28
dw Function4bca
dw Function4bd2
dw Function4bf2
@@ -1632,7 +1636,7 @@ Function4bbf: ; 4bbf
Function4bca: ; 4bca
ld hl, wd150
set 7, [hl]
- call Function47a2
+ call IncrementObjectStructField28
; fallthrough
; 4bd2
@@ -1650,7 +1654,7 @@ Function4bd2: ; 4bd2
ld hl, wd150
set 6, [hl]
set 4, [hl]
- call Function47a2
+ call IncrementObjectStructField28
ret
; 4bf2
@@ -1658,7 +1662,7 @@ Function4bf2: ; 4bf2
call Function46a6
ld hl, wd150
set 7, [hl]
- call Function47a2
+ call IncrementObjectStructField28
; fallthrough
; 4bfd
@@ -1674,12 +1678,12 @@ Function4bfd: ; 4bfd
call Function4600
ld hl, OBJECT_09
add hl, bc
- ld [hl], $1
+ ld [hl], 1
ret
; 4c18
Function4c18: ; 4c18
- call Function47a8
+ call JumptoObjectStructField28
dw Function4c23
dw Function4c32
dw Function4c42
@@ -1689,30 +1693,30 @@ Function4c18: ; 4c18
Function4c23: ; 4c23
ld hl, OBJECT_12
add hl, bc
- ld [hl], $0
+ ld [hl], 0
ld hl, OBJECT_STEP_DURATION
add hl, bc
ld [hl], $10
- call Function47a2
+ call IncrementObjectStructField28
; fallthrough
; 4c32
Function4c32: ; 4c32
ld hl, OBJECT_11
add hl, bc
- ld [hl], $4
+ ld [hl], 4
ld hl, OBJECT_STEP_DURATION
add hl, bc
dec [hl]
ret nz
- call Function47a2
+ call IncrementObjectStructField28
ret
; 4c42
Function4c42: ; 4c42
ld hl, OBJECT_12
add hl, bc
- ld [hl], $0
+ ld [hl], 0
ld hl, OBJECT_31
add hl, bc
ld [hl], $10
@@ -1722,14 +1726,14 @@ Function4c42: ; 4c42
ld hl, OBJECT_FLAGS
add hl, bc
res 3, [hl]
- call Function47a2
+ call IncrementObjectStructField28
; fallthrough
; 4c5d
Function4c5d: ; 4c5d
ld hl, OBJECT_11
add hl, bc
- ld [hl], $4
+ ld [hl], 4
ld hl, OBJECT_31
add hl, bc
inc [hl]
@@ -1747,15 +1751,15 @@ Function4c5d: ; 4c5d
ret nz
ld hl, OBJECT_12
add hl, bc
- ld [hl], $0
+ ld [hl], 0
ld hl, OBJECT_09
add hl, bc
- ld [hl], $1
+ ld [hl], 1
ret
; 4c89
Function4c89: ; 4c89
- call Function47a8
+ call JumptoObjectStructField28
dw Function4c9a
dw Function4caa
dw Function4cb3
@@ -1768,11 +1772,11 @@ Function4c89: ; 4c89
Function4c9a: ; 4c9a
ld hl, OBJECT_11
add hl, bc
- ld [hl], $0
+ ld [hl], 0
ld hl, OBJECT_STEP_DURATION
add hl, bc
ld [hl], $10
- call Function47a2
+ call IncrementObjectStructField28
ret
; 4caa
@@ -1781,28 +1785,28 @@ Function4caa: ; 4caa
add hl, bc
dec [hl]
ret nz
- call Function47a2
+ call IncrementObjectStructField28
; fallthrough
; 4cb3
Function4cb3: ; 4cb3
ld hl, OBJECT_12
add hl, bc
- ld [hl], $0
+ ld [hl], 0
ld hl, OBJECT_31
add hl, bc
- ld [hl], $0
+ ld [hl], 0
ld hl, OBJECT_STEP_DURATION
add hl, bc
ld [hl], $10
- call Function47a2
+ call IncrementObjectStructField28
ret
; 4cc9
Function4cc9: ; 4cc9
ld hl, OBJECT_11
add hl, bc
- ld [hl], $4
+ ld [hl], 4
ld hl, OBJECT_31
add hl, bc
inc [hl]
@@ -1818,7 +1822,7 @@ Function4cc9: ; 4cc9
add hl, bc
dec [hl]
ret nz
- call Function47a2
+ call IncrementObjectStructField28
; fallthrough
; 4ceb
@@ -1826,14 +1830,14 @@ Function4ceb: ; 4ceb
ld hl, OBJECT_STEP_DURATION
add hl, bc
ld [hl], $10
- call Function47a2
+ call IncrementObjectStructField28
ret
; 4cf5
Function4cf5: ; 4cf5
ld hl, OBJECT_11
add hl, bc
- ld [hl], $4
+ ld [hl], 4
ld hl, OBJECT_STEP_DURATION
add hl, bc
dec [hl]
@@ -1843,18 +1847,18 @@ Function4cf5: ; 4cf5
Function4d01: ; 4d01
ld hl, OBJECT_12
add hl, bc
- ld [hl], $0
+ ld [hl], 0
ld hl, OBJECT_SPRITE_Y_OFFSET
add hl, bc
- ld [hl], $0
+ ld [hl], 0
ld hl, OBJECT_09
add hl, bc
- ld [hl], $1
+ ld [hl], 1
ret
; 4d14
Function4d14: ; 4d14
- call Function47a8
+ call JumptoObjectStructField28
dw Function4d1f
dw Function4d2e
dw Function4d4f
@@ -1864,11 +1868,11 @@ Function4d14: ; 4d14
Function4d1f: ; 4d1f
ld hl, OBJECT_11
add hl, bc
- ld [hl], $0
+ ld [hl], 0
ld hl, OBJECT_STEP_DURATION
add hl, bc
ld [hl], $10
- call Function47a2
+ call IncrementObjectStructField28
; fallthrough
; 4d2e
@@ -1879,17 +1883,17 @@ Function4d2e: ; 4d2e
ret nz
ld hl, OBJECT_11
add hl, bc
- ld [hl], $2
+ ld [hl], 2
ld hl, OBJECT_12
add hl, bc
- ld [hl], $0
+ ld [hl], 0
ld hl, OBJECT_31
add hl, bc
- ld [hl], $0
+ ld [hl], 0
ld hl, OBJECT_STEP_DURATION
add hl, bc
ld [hl], $10
- call Function47a2
+ call IncrementObjectStructField28
; fallthrough
; 4d4f
@@ -1909,25 +1913,25 @@ Function4d4f: ; 4d4f
add hl, bc
dec [hl]
ret nz
- call Function47a2
+ call IncrementObjectStructField28
; fallthrough
; 4d6b
Function4d6b: ; 4d6b
ld hl, OBJECT_12
add hl, bc
- ld [hl], $0
+ ld [hl], 0
ld hl, OBJECT_SPRITE_Y_OFFSET
add hl, bc
- ld [hl], $0
+ ld [hl], 0
ld hl, OBJECT_09
add hl, bc
- ld [hl], $1
+ ld [hl], 1
ret
; 4d7e
Function4d7e: ; 4d7e
- call Function47a8
+ call JumptoObjectStructField28
dw Function4d85
dw Function4d94
; 4d85
@@ -1935,11 +1939,11 @@ Function4d7e: ; 4d7e
Function4d85: ; 4d85
ld hl, OBJECT_STEP_DURATION
add hl, bc
- ld [hl], $8
+ ld [hl], 8
ld hl, OBJECT_SPRITE_Y_OFFSET
add hl, bc
- ld [hl], $0
- call Function47a2
+ ld [hl], 0
+ call IncrementObjectStructField28
; fallthrough
; 4d94
@@ -1955,10 +1959,10 @@ Function4d94: ; 4d94
ret nz
ld hl, OBJECT_SPRITE_Y_OFFSET
add hl, bc
- ld [hl], $0
+ ld [hl], 0
ld hl, OBJECT_09
add hl, bc
- ld [hl], $1
+ ld [hl], 1
ret
; 4daf
@@ -1971,12 +1975,12 @@ Function4db5: ; 4db5
ld hl, OBJECT_STEP_DURATION
add hl, bc
ld a, [hl]
- and $1
- ld a, $1
- jr z, .asm_4dc2
- ld a, $0
+ and %00000001
+ ld a, 1
+ jr z, .yes
+ ld a, 0
-.asm_4dc2
+.yes
ld hl, OBJECT_11
add hl, bc
ld [hl], a
@@ -1987,12 +1991,12 @@ Function4dc8: ; 4dc8
ld hl, OBJECT_STEP_DURATION
add hl, bc
ld a, [hl]
- and $1
- ld a, $4
- jr z, .asm_4dd5
- ld a, $5
+ and %00000001
+ ld a, 4
+ jr z, .yes
+ ld a, 5
-.asm_4dd5
+.yes
ld hl, OBJECT_11
add hl, bc
ld [hl], a
@@ -2000,23 +2004,23 @@ Function4dc8: ; 4dc8
; 4ddd
Function4ddd: ; 4ddd
- ld hl, OBJECT_07
+ ld hl, OBJECT_DIRECTION_WALKING
add hl, bc
- ld [hl], $ff
+ ld [hl], STANDING
ld hl, OBJECT_STEP_DURATION
add hl, bc
dec [hl]
ret nz
ld hl, OBJECT_09
add hl, bc
- ld [hl], $1
+ ld [hl], 1
ret
; 4df0
Function4df0: ; 4df0
- ld hl, OBJECT_07
+ ld hl, OBJECT_DIRECTION_WALKING
add hl, bc
- ld [hl], $ff
+ ld [hl], STANDING
ld hl, OBJECT_STEP_DURATION
add hl, bc
dec [hl]
@@ -2031,12 +2035,12 @@ Function4dff: ; 4dff
ret nz
ld hl, OBJECT_09
add hl, bc
- ld [hl], $1
+ ld [hl], 1
ret
; 4e0c
Function4e0c: ; 4e0c
- call Function47a8
+ call JumptoObjectStructField28
dw Function4e13
dw Function4e21
; 4e13
@@ -2044,18 +2048,18 @@ Function4e0c: ; 4e0c
Function4e13: ; 4e13
call Function4769
call Function1a47
- ld hl, OBJECT_08
+ ld hl, OBJECT_FACING
add hl, bc
ld [hl], a
- call Function47a2
+ call IncrementObjectStructField28
; fallthrough
; 4e21
Function4e21: ; 4e21
call Function4fb2
- ld hl, OBJECT_07
+ ld hl, OBJECT_DIRECTION_WALKING
add hl, bc
- ld [hl], $ff
+ ld [hl], STANDING
ret
; 4e2b
@@ -2067,12 +2071,12 @@ Function4e2b: ; 4e2b
dec [hl]
ret nz
call Function4600
- ld hl, OBJECT_07
+ ld hl, OBJECT_DIRECTION_WALKING
add hl, bc
- ld [hl], $ff
+ ld [hl], STANDING
ld hl, OBJECT_09
add hl, bc
- ld [hl], $1
+ ld [hl], 1
ret
; 4e47
@@ -2088,7 +2092,7 @@ Function4e47: ; 4e47
Function4e56: ; 4e56
; AnimateStep?
- call Function47a8
+ call JumptoObjectStructField28
dw Function4e5d
dw Function4e65
; 4e5d
@@ -2096,7 +2100,7 @@ Function4e56: ; 4e56
Function4e5d: ; 4e5d
ld hl, wd150
set 7, [hl]
- call Function47a2
+ call IncrementObjectStructField28
; fallthrough
; 4e65
@@ -2109,17 +2113,17 @@ Function4e65: ; 4e65
ld hl, wd150
set 6, [hl]
call Function4600
- ld hl, OBJECT_07
+ ld hl, OBJECT_DIRECTION_WALKING
add hl, bc
- ld [hl], $ff
+ ld [hl], STANDING
ld hl, OBJECT_09
add hl, bc
- ld [hl], $1
+ ld [hl], 1
ret
; 4e83
Function4e83: ; 4e83
- call Function47a8
+ call JumptoObjectStructField28
dw Function4e8e
dw Function4ea4
dw Function4ead
@@ -2127,17 +2131,17 @@ Function4e83: ; 4e83
; 4e8e
Function4e8e: ; 4e8e
- ld hl, OBJECT_07
+ ld hl, OBJECT_DIRECTION_WALKING
add hl, bc
- ld [hl], $ff
+ ld [hl], STANDING
ld hl, OBJECT_12
add hl, bc
ld a, [hl]
- ld [hl], $2
+ ld [hl], 2
ld hl, OBJECT_STEP_DURATION
add hl, bc
- ld [hl], $2
- call Function47a2
+ ld [hl], 2
+ call IncrementObjectStructField28
; fallthrough
; 4ea4
@@ -2146,7 +2150,7 @@ Function4ea4: ; 4ea4
add hl, bc
dec [hl]
ret nz
- call Function47a2
+ call IncrementObjectStructField28
; fallthrough
; 4ead
@@ -2154,13 +2158,13 @@ Function4ead: ; 4ead
ld hl, OBJECT_29
add hl, bc
ld a, [hl]
- ld hl, OBJECT_08
+ ld hl, OBJECT_FACING
add hl, bc
ld [hl], a
ld hl, OBJECT_STEP_DURATION
add hl, bc
ld [hl], $2
- call Function47a2
+ call IncrementObjectStructField28
; fallthrough
; 4ec0
@@ -2171,7 +2175,7 @@ Function4ec0: ; 4ec0
ret nz
ld hl, OBJECT_09
add hl, bc
- ld [hl], $1
+ ld [hl], 1
ret
; 4ecd
@@ -2188,7 +2192,7 @@ Function4ecd: ; 4ecd
ld hl, OBJECT_MAP_Y
add hl, bc
ld e, [hl]
- ld hl, OBJECT_01
+ ld hl, OBJECT_MAP_OBJECT_INDEX
add hl, bc
ld a, [hl]
ld b, a
@@ -2198,12 +2202,12 @@ Function4ecd: ; 4ecd
add hl, bc
res 2, [hl]
call Function4600
- ld hl, OBJECT_07
+ ld hl, OBJECT_DIRECTION_WALKING
add hl, bc
- ld [hl], $ff
+ ld [hl], STANDING
ld hl, OBJECT_09
add hl, bc
- ld [hl], $1
+ ld [hl], 1
ret
; 4f04
@@ -2213,11 +2217,11 @@ Function4f04: ; 4f04
ld e, [hl]
inc hl
ld d, [hl]
- ld hl, OBJECT_00
+ ld hl, OBJECT_SPRITE
add hl, de
ld a, [hl]
and a
- jr z, .asm_4f30
+ jr z, .nope
ld hl, OBJECT_SPRITE_X
add hl, de
ld a, [hl]
@@ -2238,12 +2242,12 @@ Function4f04: ; 4f04
dec [hl]
ret nz
-.asm_4f30
+.nope
jp Function4357
; 4f33
Function4f33: ; 4f33
- call Function47a8
+ call JumptoObjectStructField28
dw Function4f3a
dw Function4f43
; 4f3a
@@ -2253,7 +2257,7 @@ Function4f3a: ; 4f3a
ld hl, OBJECT_29
add hl, bc
ld [hl], a
- call Function47a2
+ call IncrementObjectStructField28
; fallthrough
; 4f43
@@ -2267,7 +2271,7 @@ Function4f43: ; 4f43
ld hl, OBJECT_STEP_DURATION
add hl, bc
dec [hl]
- jr z, .asm_4f68
+ jr z, .ok
ld a, [hl]
call Function4f6c
ld hl, OBJECT_29
@@ -2279,7 +2283,7 @@ Function4f43: ; 4f43
ld [wd14f], a
ret
-.asm_4f68
+.ok
call Function4357
ret
; 4f6c
@@ -2296,18 +2300,18 @@ Function4f6c: ; 4f6c
; 4f77
Function4f77: ; 4f77
- call Function47a8 ; ????
+ call JumptoObjectStructField28 ; ????
; 4f7a
Function4f7a: ; 4f7a
- call Function47a8
+ call JumptoObjectStructField28
dw Function4f83
dw Function4f83
dw Function4f83
; 4f83
Function4f83: ; 4f83
- call Function47a8
+ call JumptoObjectStructField28
dw Function4f8a
dw Function4f99
; 4f8a
@@ -2319,7 +2323,7 @@ Function4f8a: ; 4f8a
ld hl, OBJECT_STEP_DURATION
add hl, bc
ld [hl], $10
- call Function47a2
+ call IncrementObjectStructField28
; 4f99
Function4f99: ; 4f99
@@ -2332,10 +2336,10 @@ Function4f99: ; 4f99
ld [hl], $60
ld hl, OBJECT_12
add hl, bc
- ld [hl], $0
+ ld [hl], 0
ld hl, OBJECT_09
add hl, bc
- ld [hl], $1
+ ld [hl], 1
ret
; 4fb2
@@ -2350,7 +2354,7 @@ Function4fb3: ; 4fb3
ld a, [hl]
srl a
srl a
- and 7
+ and %00000111
ld l, a
ld h, 0
ld de, .y
@@ -2448,19 +2452,19 @@ Function503d: ; 503d
; 5041
Function5041: ; 5041
- call Function5055
-.asm_5044
+ call CopyMovementPointer
+.loop
xor a
ld [wc2ea], a
- call Function505e
- call Function506b
+ call GetMovementByte
+ call DoMovementFunction
ld a, [wc2ea]
and a
- jr nz, .asm_5044
+ jr nz, .loop
ret
; 5055
-Function5055: ; 5055
+CopyMovementPointer: ; 5055
ld a, l
ld [wc2eb], a
ld a, h
@@ -2468,7 +2472,7 @@ Function5055: ; 5055
ret
; 505e
-Function505e: ; 505e
+GetMovementByte: ; 505e
ld hl, wc2eb
ld a, [hli]
ld h, [hl]
@@ -2477,12 +2481,12 @@ Function505e: ; 505e
; 5065
Function5065: ; 5065
- ld a, $1
+ ld a, 1
ld [wc2ea], a
ret
; 506b
-Function506b: ; 506b
+DoMovementFunction: ; 506b
push af
call Function54b8
pop af
@@ -2500,7 +2504,7 @@ INCLUDE "engine/movement.asm"
Function54b8: ; 54b8
ld e, a
ld a, [wd4ce]
- cp $ff
+ cp -1
ret z
ld a, [wd4cd]
ld d, a
@@ -2534,25 +2538,25 @@ Function54e6: ; 54e6
ld hl, wd4d0
ld a, [hl]
and a
- jr z, .asm_5503
- cp $ff
- jr z, .asm_5503
+ jr z, .done
+ cp -1
+ jr z, .done
dec [hl]
ld e, a
ld d, 0
ld hl, wd4d1
add hl, de
inc e
- ld a, $ff
-.asm_54fc
+ ld a, -1
+.loop
ld d, [hl]
ld [hld], a
ld a, d
dec e
- jr nz, .asm_54fc
+ jr nz, .loop
ret
-.asm_5503
+.done
call Function550a
ret c
ld a, $3e
@@ -2561,20 +2565,20 @@ Function54e6: ; 54e6
Function550a: ; 550a
ld a, [wd4cd]
- cp $ff
- jr z, .asm_5520
+ cp -1
+ jr z, .nope
push bc
- call Function1ae5
- ld hl, OBJECT_00
+ call GetObjectStruct
+ ld hl, OBJECT_SPRITE
add hl, bc
ld a, [hl]
pop bc
and a
- jr z, .asm_5520
+ jr z, .nope
and a
ret
-.asm_5520
+.nope
ld a, $ff
ld [wd4ce], a
ld a, $47
@@ -2657,31 +2661,31 @@ Function5579: ; 5579
Function5582: ; 5582
ld de, ObjectStructs
ld a, $d
-.asm_5587
+.loop
push af
ld hl, OBJECT_04
add hl, de
bit 7, [hl]
- jr z, .asm_55a1
- ld hl, OBJECT_00
+ jr z, .next
+ ld hl, OBJECT_SPRITE
add hl, de
ld a, [hl]
and a
- jr z, .asm_55a1
+ jr z, .next
push bc
xor a
- ld bc, ObjectStruct2 - ObjectStruct1
+ ld bc, OBJECT_STRUCT_LENGTH
call ByteFill
pop bc
-.asm_55a1
- ld hl, ObjectStruct2 - ObjectStruct1
+.next
+ ld hl, OBJECT_STRUCT_LENGTH
add hl, de
ld d, h
ld e, l
pop af
dec a
- jr nz, .asm_5587
+ jr nz, .loop
ret
; 55ac
@@ -2696,9 +2700,9 @@ Function55ac: ; 55ac
Function55b9: ; 55b9
ld hl, wc2f0
- ld [hl], $ff
+ ld [hl], -1
inc hl
- ld [hl], $ff
+ ld [hl], -1
inc hl
ld a, [de]
inc de
@@ -2722,7 +2726,7 @@ Function55b9: ; 55b9
inc hl
ld [hl], e
inc hl
- ld [hl], $ff
+ ld [hl], -1
ret
; 55e0
@@ -2732,46 +2736,46 @@ Function55e0:: ; 55e0
ret z
ld bc, ObjectStructs
xor a
-.asm_55ea
+.loop
ld [$ffaf], a
- call Function1af1
- jr z, .asm_55f4
+ call GetObjectSprite
+ jr z, .ok
call Function565c
-.asm_55f4
- ld hl, ObjectStruct2 - ObjectStruct1
+.ok
+ ld hl, OBJECT_STRUCT_LENGTH
add hl, bc
ld b, h
ld c, l
ld a, [$ffaf]
inc a
- cp $d
- jr nz, .asm_55ea
+ cp NUM_OBJECT_STRUCTS
+ jr nz, .loop
ret
; 5602
Function5602: ; 5602
call Function5645
- ld a, $0
+ ld a, 0
call Function5629
ld a, [wd459]
bit 7, a
- jr z, .asm_5619
+ jr z, .ok
ld a, [$ffe0]
and a
- jr z, .asm_5619
+ jr z, .ok
call Function5629
-.asm_5619
- call Function5920
+.ok
+ call RefreshMapAppearDisappear
ret
; 561d
Function561d: ; 561d
call Function5645
- ld a, $0
+ ld a, 0
call Function5629
- call Function5920
+ call RefreshMapAppearDisappear
ret
; 5629
@@ -2779,15 +2783,15 @@ Function5629: ; 5629
cp $10
ret nc
call GetMapObject
- ld hl, $0000
+ ld hl, MAPOBJECT_OBJECT_STRUCT_ID
add hl, bc
ld a, [hl]
- cp $ff
+ cp -1
ret z
cp $d
ret nc
- call Function1ae5
- call Function1af1
+ call GetObjectStruct
+ call GetObjectSprite
ret z
call Function5673
ret
@@ -2796,17 +2800,17 @@ Function5629: ; 5629
Function5645: ; 5645
xor a
ld bc, ObjectStructs
-.asm_5649
+.loop
ld [$ffaf], a
call Function5680
- ld hl, ObjectStruct2 - ObjectStruct1
+ ld hl, OBJECT_STRUCT_LENGTH
add hl, bc
ld b, h
ld c, l
ld a, [$ffaf]
inc a
- cp $d
- jr nz, .asm_5649
+ cp NUM_OBJECT_STRUCTS
+ jr nz, .loop
ret
; 565c
@@ -2832,9 +2836,9 @@ Function5673: ; 5673
; 5680
Function5680: ; 5680
- ld hl, OBJECT_FACING
+ ld hl, OBJECT_FACING_STEP
add hl, bc
- ld [hl], $ff
+ ld [hl], STANDING
scf
ret
; 5688
@@ -2867,26 +2871,26 @@ Function56a3: ; 56a3
inc e
ld a, [XCoord]
cp d
- jr z, .asm_56bc
- jr nc, .asm_56cb
+ jr z, .equal_x
+ jr nc, .nope
add $b
cp d
- jr c, .asm_56cb
+ jr c, .nope
-.asm_56bc
+.equal_x
ld a, [YCoord]
cp e
- jr z, .asm_56c9
- jr nc, .asm_56cb
+ jr z, .equal_y
+ jr nc, .nope
add $a
cp e
- jr c, .asm_56cb
+ jr c, .nope
-.asm_56c9
+.equal_y
xor a
ret
-.asm_56cb
+.nope
scf
ret
; 56cd
@@ -2902,27 +2906,27 @@ Function56cd: ; 56cd
add [hl]
add d
cp $f0
- jr nc, .asm_56e5
+ jr nc, .ok1
cp $a0
- jp nc, .asm_5768
+ jp nc, .nope
-.asm_56e5
- and $7
- ld d, $2
- cp $4
- jr c, .asm_56ef
- ld d, $3
+.ok1
+ and %00000111
+ ld d, 2
+ cp 4
+ jr c, .ok2
+ ld d, 3
-.asm_56ef
+.ok2
ld a, [hl]
srl a
srl a
srl a
cp $14
- jr c, .asm_56fc
+ jr c, .ok3
sub $20
-.asm_56fc
+.ok3
ld [$ffbd], a
ld a, [wd14d]
ld e, a
@@ -2934,76 +2938,76 @@ Function56cd: ; 56cd
add [hl]
add e
cp $f0
- jr nc, .asm_5715
+ jr nc, .ok4
cp $90
- jr nc, .asm_5768
+ jr nc, .nope
-.asm_5715
- and $7
- ld e, $2
- cp $4
- jr c, .asm_571f
- ld e, $3
+.ok4
+ and %00000111
+ ld e, 2
+ cp 4
+ jr c, .ok5
+ ld e, 3
-.asm_571f
+.ok5
ld a, [hl]
srl a
srl a
srl a
cp $12
- jr c, .asm_572c
+ jr c, .ok6
sub $20
-.asm_572c
+.ok6
ld [$ffbe], a
ld hl, OBJECT_PALETTE
add hl, bc
bit 7, [hl]
- jr z, .asm_573e
+ jr z, .ok7
ld a, d
- add $2
+ add 2
ld d, a
ld a, e
- add $2
+ add 2
ld e, a
-.asm_573e
+.ok7
ld a, d
ld [$ffbf], a
-.asm_5741
+.loop
ld a, [$ffbf]
ld d, a
ld a, [$ffbe]
add e
dec a
cp $12
- jr nc, .asm_5763
+ jr nc, .ok9
ld b, a
-.asm_574d
+.next
ld a, [$ffbd]
add d
dec a
cp $14
- jr nc, .asm_5760
+ jr nc, .ok8
ld c, a
push bc
call GetTileCoord
pop bc
ld a, [hl]
cp $60
- jr nc, .asm_5768
+ jr nc, .nope
-.asm_5760
+.ok8
dec d
- jr nz, .asm_574d
+ jr nz, .next
-.asm_5763
+.ok9
dec e
- jr nz, .asm_5741
+ jr nz, .loop
and a
ret
-.asm_5768
+.nope
scf
ret
; 576a
@@ -3019,7 +3023,7 @@ Function5771: ; 5771
ld [wd14e], a
ld [wd14f], a
ld [wd150], a
- ld a, $ff
+ ld a, -1
ld [wd151], a
ret
; 5781
@@ -3027,21 +3031,21 @@ Function5771: ; 5771
Function5781: ; 5781
ld bc, ObjectStructs
xor a
-.asm_5785
+.loop
ld [$ffaf], a
- call Function1af1
- jr z, .asm_578f
+ call GetObjectSprite
+ jr z, .next
call Function437b
-.asm_578f
- ld hl, ObjectStruct2 - ObjectStruct1
+.next
+ ld hl, OBJECT_STRUCT_LENGTH
add hl, bc
ld b, h
ld c, l
ld a, [$ffaf]
inc a
- cp $d
- jr nz, .asm_5785
+ cp NUM_OBJECT_STRUCTS
+ jr nz, .loop
ret
; 579d
@@ -3053,8 +3057,8 @@ Function579d: ; 579d
ld [wd04e], a
ld [wd4e2], a
call Function57bc
- callba Function149c6
- call c, Function57d9
+ callba CheckWarpCollision
+ call c, SpawnInFacingDown
call Function57ca
ret
; 57bc
@@ -3062,11 +3066,11 @@ Function579d: ; 579d
Function57bc: ; 57bc
ld hl, wd45b
bit 7, [hl]
- jr nz, .asm_57c4
+ jr nz, .ok
ret
-.asm_57c4
- ld a, $0
+.ok
+ ld a, 0
ld [PlayerAction], a
ret
; 57ca
@@ -3076,20 +3080,21 @@ Function57ca: ; 57ca
bit 5, [hl]
ret z
ld a, [wd45b]
- and $3
- add a
+ and 3
+rept 2
add a
+endr
jr Function57db
; 57d9
-Function57d9: ; 57d9
- ld a, $0
+SpawnInFacingDown: ; 57d9
+ ld a, 0
; fallthrough
; 57db
Function57db: ; 57db
ld bc, PlayerStruct
- call Function1af8
+ call SetSpriteDirection
ret
; 57e2
@@ -3098,20 +3103,20 @@ Function57e2: ; 57e2
and $80
ret z
ld bc, $0000 ; debug?
- ld hl, OBJECT_08
+ ld hl, OBJECT_FACING
add hl, bc
ld a, [hl]
or d
ld [hl], a
ld a, d
swap a
- and $7
+ and %00000111
ld d, a
ld bc, PlayerStruct
ld hl, OBJECT_PALETTE
add hl, bc
ld a, [hl]
- and $f8
+ and %11111000
or d
ld [hl], a
ret
@@ -3144,7 +3149,7 @@ Function581f:: ; 581f
; 5826
Function5826: ; 5826
- ld a, $ff
+ ld a, -1
ld [wd4cd], a
ret
; 582c
@@ -3160,7 +3165,7 @@ Function582c: ; 582c
ld [hl], $13
ld hl, OBJECT_09
add hl, bc
- ld [hl], $0
+ ld [hl], 0
ld a, [$ffb0]
ld [wd4ce], a
ret
@@ -3168,16 +3173,16 @@ Function582c: ; 582c
Function5847: ; 5847
ld a, [wd4ce]
- cp $ff
+ cp -1
ret z
- call Function1ae5
+ call GetObjectStruct
callba Function58e3
- ld a, $ff
+ ld a, -1
ld [wd4ce], a
ret
; 585c
-Function585c:: ; 585c
+SetFlagsForMovement_1:: ; 585c
ld a, c
call Function18de
ret c
@@ -3204,42 +3209,42 @@ Function586e: ; 586e
Function587a: ; 587a
ld bc, ObjectStructs
xor a
-.asm_587e
+.loop
push af
- call Function1af1
- jr z, .asm_588a
+ call GetObjectSprite
+ jr z, .next
ld hl, OBJECT_FLAGS
add hl, bc
set 5, [hl]
-.asm_588a
- ld hl, ObjectStruct2 - ObjectStruct1
+.next
+ ld hl, OBJECT_STRUCT_LENGTH
add hl, bc
ld b, h
ld c, l
pop af
inc a
- cp $d
- jr nz, .asm_587e
+ cp NUM_OBJECT_STRUCTS
+ jr nz, .loop
ret
; 5897
-Function5897:: ; 5897
+_SetFlagsForMovement_2:: ; 5897
ld a, [wd4cd]
- cp $ff
+ cp -1
ret z
push bc
- call Function1ae5
- ld hl, OBJECT_01
+ call GetObjectStruct
+ ld hl, OBJECT_MAP_OBJECT_INDEX
add hl, bc
ld a, [hl]
pop bc
cp c
ret nz
ld a, [wd4ce]
- cp $ff
+ cp -1
ret z
- call Function1ae5
+ call GetObjectStruct
ld hl, OBJECT_FLAGS
add hl, bc
res 5, [hl]
@@ -3250,23 +3255,23 @@ Function58b9:: ; 58b9
push bc
ld bc, ObjectStructs
xor a
-.asm_58be
+.loop
push af
- call Function1af1
- jr z, .asm_58ca
+ call GetObjectSprite
+ jr z, .next
ld hl, OBJECT_FLAGS
add hl, bc
res 5, [hl]
-.asm_58ca
- ld hl, ObjectStruct2 - ObjectStruct1
+.next
+ ld hl, OBJECT_STRUCT_LENGTH
add hl, bc
ld b, h
ld c, l
pop af
inc a
- cp $d
- jr nz, .asm_58be
+ cp NUM_OBJECT_STRUCTS
+ jr nz, .loop
pop bc
ret
; 58d8
@@ -3281,14 +3286,14 @@ Function58d8: ; 58d8
; 58e3
Function58e3: ; 58e3
- ld hl, OBJECT_01
+ ld hl, OBJECT_MAP_OBJECT_INDEX
add hl, bc
ld a, [hl]
- cp $ff
+ cp -1
jp z, Function5903
push bc
call GetMapObject
- ld hl, $0004
+ ld hl, MAPOBJECT_FACING
add hl, bc
ld a, [hl]
pop bc
@@ -3297,7 +3302,7 @@ Function58e3: ; 58e3
ld [hl], a
ld hl, OBJECT_09
add hl, bc
- ld [hl], $0
+ ld [hl], 0
ret
; 5903
@@ -3315,14 +3320,14 @@ Function5903: ; 5903
ld [hl], a
ld hl, OBJECT_09
add hl, bc
- ld [hl], $0
+ ld [hl], 0
ret
.data_591c
db 6, 7, 8, 9
; 5920
-Function5920:: ; 5920
+RefreshMapAppearDisappear:: ; 5920
ld a, [VramState]
bit 0, a
ret z
@@ -3330,7 +3335,7 @@ Function5920:: ; 5920
ld [$ffbd], a
ld a, [hOAMUpdate]
push af
- ld a, $1
+ ld a, 1
ld [hOAMUpdate], a
call Function5991
call Function593a
@@ -3343,10 +3348,10 @@ Function593a: ; 593a
ld a, [VramState]
bit 1, a
ld b, $a0
- jr z, .asm_5945
+ jr z, .ok
ld b, $70
-.asm_5945
+.ok
ld a, [$ffbd]
cp b
ret nc
@@ -3355,11 +3360,11 @@ Function593a: ; 593a
ld de, OBJECT_04
ld a, b
ld c, $a0
-.asm_5952
+.loop
ld [hl], c
add hl, de
cp l
- jr nz, .asm_5952
+ jr nz, .loop
ret
; 5958
@@ -3372,12 +3377,12 @@ Function5958: ; 5958
ld a, [wd14d]
ld e, a
ld bc, ObjectStructs
- ld a, $d
+ ld a, NUM_OBJECT_STRUCTS
-.asm_5968
+.loop
push af
- call Function1af1
- jr z, .asm_597c
+ call GetObjectSprite
+ jr z, .skip
ld hl, OBJECT_SPRITE_X
add hl, bc
@@ -3391,14 +3396,14 @@ Function5958: ; 5958
add e
ld [hl], a
-.asm_597c
- ld hl, ObjectStruct2 - ObjectStruct1
+.skip
+ ld hl, OBJECT_STRUCT_LENGTH
add hl, bc
ld b, h
ld c, l
pop af
dec a
- jr nz, .asm_5968
+ jr nz, .loop
xor a
ld [wd14c], a
@@ -3431,10 +3436,10 @@ Function59a4: ; 59a4
ld hl, wc2eb
.loop
push hl
- call Function1af1
+ call GetObjectSprite
jr z, .skip
- ld hl, OBJECT_FACING
+ ld hl, OBJECT_FACING_STEP
add hl, bc
ld a, [hl]
cp -1
@@ -3453,7 +3458,7 @@ Function59a4: ; 59a4
jr .add
.skip
- ld hl, ObjectStruct2 - ObjectStruct1
+ ld hl, OBJECT_STRUCT_LENGTH
add hl, bc
ld b, h
ld c, l
@@ -3461,7 +3466,7 @@ Function59a4: ; 59a4
jr .next
.add
- ld hl, ObjectStruct2 - ObjectStruct1
+ ld hl, OBJECT_STRUCT_LENGTH
add hl, bc
ld b, h
ld c, l
@@ -3473,7 +3478,7 @@ Function59a4: ; 59a4
.next
inc d
ld a, d
- cp $d
+ cp NUM_OBJECT_STRUCTS
jr nz, .loop
ret
; 59f3
@@ -3483,7 +3488,7 @@ Function59f3: ; 59f3
.next
ld a, [hli]
ld d, a
- and $f0
+ and %11110000
ret z
cp c
jr nz, .next
@@ -3491,7 +3496,7 @@ Function59f3: ; 59f3
push bc
push hl
ld a, d
- and $f
+ and %00001111
call Function5ac2
call Function5a0d
pop hl
@@ -3500,44 +3505,44 @@ Function59f3: ; 59f3
; 5a0d
Function5a0d: ; 5a0d
- ld hl, OBJECT_SPRITE
+ ld hl, OBJECT_SPRITE_TILE
add hl, bc
ld a, [hl]
- and $7f
+ and %01111111
ld [$ffc1], a
xor a
bit 7, [hl]
- jr nz, .asm_5a1d
- or 8
-.asm_5a1d
+ jr nz, .skip1
+ or %00001000
+.skip1
ld hl, OBJECT_FLAGS
add hl, bc
ld e, [hl]
bit 7, e
- jr z, .asm_5a28
- or $80
-.asm_5a28
+ jr z, .skip2
+ or %10000000
+.skip2
bit 4, e
- jr z, .asm_5a2e
- or $10
-.asm_5a2e
+ jr z, .skip3
+ or %00010000
+.skip3
ld hl, OBJECT_PALETTE
add hl, bc
ld d, a
ld a, [hl]
- and 7
+ and %00000111
or d
ld d, a
xor a
bit 3, e
- jr z, .asm_5a3f
- or $80
-.asm_5a3f
+ jr z, .skip4
+ or %10000000
+.skip4
ld [$ffc2], a
ld hl, OBJECT_SPRITE_X
@@ -3570,7 +3575,7 @@ Function5a0d: ; 5a0d
add e
ld [$ffc0], a
- ld hl, OBJECT_FACING
+ ld hl, OBJECT_FACING_STEP
add hl, bc
ld a, [hl]
cp -1
@@ -3616,9 +3621,9 @@ Function5a0d: ; 5a0d
ld a, [$ffc1]
bit 2, e
- jr z, .asm_5aa3
+ jr z, .nope1
xor a
-.asm_5aa3
+.nope1
add [hl]
inc hl
@@ -3627,11 +3632,11 @@ Function5a0d: ; 5a0d
ld a, e
bit 1, a
- jr z, .asm_5aaf
+ jr z, .nope2
ld a, [$ffc2]
or e
-.asm_5aaf
- and $f0
+.nope2
+ and %11110000
or d
ld [bc], a
inc c
@@ -3657,8 +3662,9 @@ Function5ac2: ; 5ac2
ld c, a
ld b, 0
ld hl, .Addresses
- add hl, bc
- add hl, bc
+rept 2
+ add hl,bc
+endr
ld c, [hl]
inc hl
ld b, [hl]
diff --git a/engine/map_setup.asm b/engine/map_setup.asm
index 8c10954b3..baa45e636 100644
--- a/engine/map_setup.asm
+++ b/engine/map_setup.asm
@@ -6,8 +6,9 @@ RunMapSetupScript:: ; 15363
ld c, a
ld b, 0
ld hl, MapSetupScripts
+rept 2
add hl, bc
- add hl, bc
+endr
ld a, [hli]
ld h, [hl]
ld l, a
@@ -259,9 +260,9 @@ ReadMapSetupScript: ; 1541d
ld c, a
ld b, 0
ld hl, MapSetupCommands
+rept 3
add hl, bc
- add hl, bc
- add hl, bc
+endr
; bank
ld b, [hl]
@@ -293,76 +294,76 @@ ReadMapSetupScript: ; 1541d
; 15440
MapSetupCommands: ; 15440
- dbw BANK(EnableLCD), EnableLCD
- dbw BANK(DisableLCD), DisableLCD
- dbw BANK(SoundRestart), SoundRestart
- dbw BANK(PlayMapMusic), PlayMapMusic
- dbw BANK(RestartMapMusic), RestartMapMusic
- dbw BANK(FadeToMapMusic), FadeToMapMusic
- dbw BANK(Function15574), Function15574
- dbw BANK(EnterMapMusic), EnterMapMusic
- dbw BANK(Function15587), Function15587
- dbw BANK(Function3cae), Function3cae
- dbw BANK(Function24cd), Function24cd
- dbw BANK(Function28e3), Function28e3
- dbw BANK(Function289d), Function289d
- dbw BANK(Function2879), Function2879
- dbw BANK(Function1047cf), Function1047cf
- dbw BANK(LoadTilesetHeader), LoadTilesetHeader
- dbw BANK(Function104750), Function104750
- dbw BANK(Function1047eb), Function1047eb
- dbw BANK(Function29ff8), Function29ff8
- dbw BANK(Function1047f0), Function1047f0
- dbw BANK(Function1045b0), Function1045b0
- dbw BANK(Function1045c4), Function1045c4
- dbw BANK(Function154d7), Function154d7
- dbw BANK(LoadSpawnPoint), LoadSpawnPoint
- dbw BANK(EnterMapConnection), EnterMapConnection
- dbw BANK(Function1046c6), Function1046c6
- dbw BANK(Function2309), Function2309
- dbw BANK(Function2317), Function2317
- dbw BANK(WhiteBGMap), WhiteBGMap
- dbw BANK(Function8c084), Function8c084
- dbw BANK(Function8c079), Function8c079
- dbw BANK(Function10486d), Function10486d
- dbw BANK(Function248a), Function248a
- dbw BANK(Function57d9), Function57d9
- dbw BANK(Function8029), Function8029
- dbw BANK(Function80b8), Function80b8
- dbw BANK(Function154eb), Function154eb
- dbw BANK(Function154f1), Function154f1
- dbw BANK(Function2a30d), Function2a30d
- dbw BANK(Function2a394), Function2a394
- dbw BANK(Function15567), Function15567
- dbw BANK(Function154cf), Function154cf
- dbw BANK(Function154d3), Function154d3
- dbw BANK(Function1556d), Function1556d
- dbw BANK(Function154ca), Function154ca
- dbw BANK(Functionb8000), Functionb8000
+ dbw BANK(EnableLCD), EnableLCD ; 00
+ dbw BANK(DisableLCD), DisableLCD ; 01
+ dbw BANK(SoundRestart), SoundRestart ; 02
+ dbw BANK(PlayMapMusic), PlayMapMusic ; 03
+ dbw BANK(RestartMapMusic), RestartMapMusic ; 04
+ dbw BANK(FadeToMapMusic), FadeToMapMusic ; 05
+ dbw BANK(FadeOutMapAndMusic), FadeOutMapAndMusic ; 06
+ dbw BANK(EnterMapMusic), EnterMapMusic ; 07
+ dbw BANK(ForceMapMusic), ForceMapMusic ; 08
+ dbw BANK(CrankUpTheVolume), CrankUpTheVolume ; 09
+ dbw BANK(LoadBlockData), LoadBlockData ; 0a
+ dbw BANK(LoadNeighboringBlockData), LoadNeighboringBlockData ; 0b
+ dbw BANK(SaveScreen), SaveScreen ; 0c
+ dbw BANK(BufferScreen), BufferScreen ; 0d
+ dbw BANK(LoadGraphics), LoadGraphics ; 0e
+ dbw BANK(LoadTilesetHeader), LoadTilesetHeader ; 0f
+ dbw BANK(LoadMapTimeOfDay), LoadMapTimeOfDay ; 10
+ dbw BANK(LoadMapPalettes), LoadMapPalettes ; 11
+ dbw BANK(LoadWildMonData), LoadWildMonData ; 12
+ dbw BANK(RefreshMapSprites), RefreshMapSprites ; 13
+ dbw BANK(RunCallback_05_03), RunCallback_05_03 ; 14
+ dbw BANK(RunCallback_03), RunCallback_03 ; 15
+ dbw BANK(LoadObjectsRunCallback_02), LoadObjectsRunCallback_02 ; 16
+ dbw BANK(LoadSpawnPoint), LoadSpawnPoint ; 17
+ dbw BANK(EnterMapConnection), EnterMapConnection ; 18
+ dbw BANK(LoadWarpData), LoadWarpData ; 19
+ dbw BANK(LoadMapAttributes), LoadMapAttributes ; 1a
+ dbw BANK(LoadMapAttributes_IgnoreHidden), LoadMapAttributes_IgnoreHidden ; 1b
+ dbw BANK(WhiteBGMap), WhiteBGMap ; 1c
+ dbw BANK(FadeBlackBGMap), FadeBlackBGMap ; 1d
+ dbw BANK(FadeInBGMap), FadeInBGMap ; 1e
+ dbw BANK(GetCoordOfUpperLeftCorner), GetCoordOfUpperLeftCorner ; 1f
+ dbw BANK(RestoreFacingAfterWarp), RestoreFacingAfterWarp ; 20
+ dbw BANK(SpawnInFacingDown), SpawnInFacingDown ; 21
+ dbw BANK(GetSpawnCoord), GetSpawnCoord ; 22
+ dbw BANK(RefreshPlayerCoords), RefreshPlayerCoords ; 23
+ dbw BANK(DelayClearingOldSprites), DelayClearingOldSprites ; 24
+ dbw BANK(DelayLoadingNewSprites), DelayLoadingNewSprites ; 25
+ dbw BANK(UpdateRoamMons), UpdateRoamMons ; 26
+ dbw BANK(RestoreRoamMons), RestoreRoamMons ; 27
+ dbw BANK(FadeOldMapMusic), FadeOldMapMusic ; 28
+ dbw BANK(ActivateMapAnims), ActivateMapAnims ; 29
+ dbw BANK(SuspendMapAnims), SuspendMapAnims ; 2a
+ dbw BANK(RetainOldPalettes), RetainOldPalettes ; 2b
+ dbw BANK(DontScrollText), DontScrollText ; 2c
+ dbw BANK(ReturnFromMapSetupScript), ReturnFromMapSetupScript ; 2d
; 154ca
-Function154ca: ; 154ca
+DontScrollText: ; 154ca
xor a
ld [wc2d7], a
ret
; 154cf
-Function154cf: ; 154cf
+ActivateMapAnims: ; 154cf
ld a, $1
ld [$ffde], a
ret
; 154d3
-Function154d3: ; 154d3
+SuspendMapAnims: ; 154d3
xor a
ld [$ffde], a
ret
; 154d7
-Function154d7: ; 154d7
+LoadObjectsRunCallback_02: ; 154d7
ld a, $2
- call Function263b
+ call RunMapCallback
callba Function2454f
callba Function8177
ret
@@ -372,13 +373,13 @@ Function154ea: ; 154ea
ret
; 154eb
-Function154eb: ; 154eb
+DelayClearingOldSprites: ; 154eb
ld hl, wd45b
set 7, [hl]
ret
; 154f1
-Function154f1: ; 154f1
+DelayLoadingNewSprites: ; 154f1
ld hl, wd45b
set 6, [hl]
ret
@@ -386,14 +387,14 @@ Function154f1: ; 154f1
Function154f7: ; 154f7
nop
call Function1550c
- jr c, .asm_15508
+ jr c, .ok
call Function1554e
- jr c, .asm_15508
+ jr c, .ok
call Function1551a
- jr c, .asm_15508
+ jr c, .ok
ret
-.asm_15508
- call Functione4a
+.ok
+ call Special_ReplaceKrisSprite
ret
Function1550c: ; 1550c (5:550c)
@@ -401,89 +402,89 @@ Function1550c: ; 1550c (5:550c)
ld hl, BikeFlags
bit 1, [hl]
ret z
- ld a, $1
+ ld a, PLAYER_BIKE
ld [PlayerState], a
scf
ret
Function1551a: ; 1551a (5:551a)
ld a, [PlayerState]
- cp $0
- jr z, .asm_1554c
- cp $2
- jr z, .asm_1554c
- cp $4
- jr z, .asm_15545
- cp $8
- jr z, .asm_15545
+ cp PLAYER_NORMAL
+ jr z, .nope
+ cp PLAYER_SLIP
+ jr z, .nope
+ cp PLAYER_SURF
+ jr z, .surfing
+ cp PLAYER_SURF_PIKA
+ jr z, .surfing
call GetMapPermission
cp $3
- jr z, .asm_1553e
+ jr z, .checkbiking
cp $5
- jr z, .asm_1553e
+ jr z, .checkbiking
cp $7
- jr z, .asm_1553e
- jr .asm_1554c
-.asm_1553e
+ jr z, .checkbiking
+ jr .nope
+.checkbiking
ld a, [PlayerState]
- cp $1
- jr nz, .asm_1554c
-.asm_15545
- ld a, $0
+ cp PLAYER_BIKE
+ jr nz, .nope
+.surfing
+ ld a, PLAYER_NORMAL
ld [PlayerState], a
scf
ret
-.asm_1554c
+.nope
and a
ret
Function1554e: ; 1554e (5:554e)
call Function1852
- jr nz, .asm_15565
+ jr nz, .ret_nc
ld a, [PlayerState]
- cp $4
- jr z, .asm_15563
- cp $8
- jr z, .asm_15563
- ld a, $4
+ cp PLAYER_SURF
+ jr z, .surfing
+ cp PLAYER_SURF_PIKA
+ jr z, .surfing
+ ld a, PLAYER_SURF
ld [PlayerState], a
-.asm_15563
+.surfing
scf
ret
-.asm_15565
+.ret_nc
and a
ret
; 15567
-Function15567: ; 15567
+FadeOldMapMusic: ; 15567
ld a, 6
call SkipMusic
ret
; 1556d
-Function1556d: ; 1556d
+RetainOldPalettes: ; 1556d
callba _UpdateTimePals
ret
-Function15574: ; 15574
+FadeOutMapAndMusic: ; 15574
ld e, 0
ld a, [MusicFadeIDLo]
ld d, 0
ld a, [MusicFadeIDHi]
ld a, $4
ld [MusicFade], a
- call Function4b6
+ call FadeToWhite
ret
; 15587
-Function15587: ; 15587
+ForceMapMusic: ; 15587
ld a, [PlayerState]
- cp $1
- jr nz, .asm_15596
+ cp PLAYER_BIKE
+ jr nz, .notbiking
call VolumeOff
ld a, $88
ld [MusicFade], a
-.asm_15596
- call Function3d2f
+.notbiking
+ call TryRestartMapMusic
ret
; 1559a
diff --git a/engine/more_phone_scripts.asm b/engine/more_phone_scripts.asm
index 9c742df00..1a4138eab 100644
--- a/engine/more_phone_scripts.asm
+++ b/engine/more_phone_scripts.asm
@@ -1476,7 +1476,7 @@ UnknownScript_0xa0a08:
iftrue UnknownScript_0xa0a1d
checknite
iftrue UnknownScript_0xa0a25
- setevent EVENT_26A
+ setevent EVENT_KENJI_ON_BREAK
farwritetext UnknownText_0x66f11
keeptextopen
jump UnknownScript_0xa0484
@@ -1656,5 +1656,5 @@ UnknownScript_0xa0b04:
UnknownScript_0xa0b09:
farwritetext UnknownText_0x174000
clearflag ENGINE_BIKE_SHOP_CALL_ENABLED
- specialphonecall $0000
+ specialphonecall ELMCALL_NONE
end
diff --git a/engine/movement.asm b/engine/movement.asm
index 775406494..f1ab0ec77 100644
--- a/engine/movement.asm
+++ b/engine/movement.asm
@@ -130,7 +130,7 @@ Movement_step_wait5: ; 5145
ld hl, $000b
add hl, bc
ld [hl], $4
- call Function505e
+ call GetMovementByte
ld hl, $000a
add hl, bc
ld [hl], a
@@ -150,7 +150,7 @@ Function516a: ; 516a
ld hl, $000c
add hl, bc
ld [hl], a
- call Function505e
+ call GetMovementByte
ld hl, $000a
add hl, bc
ld [hl], a
@@ -174,7 +174,7 @@ Function5189: ; 5189
; 5196
Function5196: ; 5196
- call Function505e
+ call GetMovementByte
ld hl, $000a
add hl, bc
ld [hl], a
@@ -228,7 +228,7 @@ Function51db: ; 51db
ld hl, $001b
add hl, bc
ld [hl], $0
- call Function505e
+ call GetMovementByte
ld hl, $000a
add hl, bc
ld [hl], a
@@ -302,7 +302,7 @@ Movement_step_sleep: ; 5242
; parameters:
; duration (DecimalParam)
- call Function505e
+ call GetMovementByte
jr Function5247
Function5247: ; 5247
@@ -411,7 +411,7 @@ Movement_step_shake: ; 52d5
; parameters:
; displacement (DecimalParam)
- call Function505e
+ call GetMovementByte
call Function5565
jp Function5065
; 52de
diff --git a/engine/pack.asm b/engine/pack.asm
index e765bab7e..62796ed3f 100644
--- a/engine/pack.asm
+++ b/engine/pack.asm
@@ -62,7 +62,7 @@ Function10056: ; 10056 (4:4056)
Function10067: ; 10067 (4:4067)
ld hl, MenuDataHeader_0x10a4f
- call Function1d3c
+ call CopyMenuDataHeader
ld a, [wd0d9]
ld [wcf88], a
ld a, [wd0df]
@@ -90,7 +90,7 @@ Function10094: ; 10094 (4:4094)
Function100a6: ; 100a6 (4:40a6)
ld hl, MenuDataHeader_0x10a7f
- call Function1d3c
+ call CopyMenuDataHeader
ld a, [wd0da]
ld [wcf88], a
ld a, [wd0e0]
@@ -137,8 +137,8 @@ Function100e8: ; 100e8 (4:40e8)
.asm_10110
push de
call LoadMenuDataHeader
- call Function1d81
- call Function1c07
+ call InterpretMenu2
+ call ExitMenu
pop hl
ret c
ld a, [wcfa9]
@@ -220,7 +220,7 @@ Function10186: ; 10186 (4:4186)
Function10198: ; 10198 (4:4198)
ld hl, MenuDataHeader_0x10aaf
- call Function1d3c
+ call CopyMenuDataHeader
ld a, [wd0db]
ld [wcf88], a
ld a, [wd0e1]
@@ -289,8 +289,8 @@ Function101c5: ; 101c5 (4:41c5)
.asm_10235
push de
call LoadMenuDataHeader
- call Function1d81
- call Function1c07
+ call InterpretMenu2
+ call ExitMenu
pop hl
ret c
ld a, [wcfa9]
@@ -495,15 +495,15 @@ Function10364: ; 10364
call Function10889
callba Function24fbf
push af
- call Function1c07
+ call ExitMenu
pop af
jr c, .asm_1039c
call Function10a1d
ld hl, UnknownText_0x10ae9
- call Function1d4f
+ call MenuTextBox
call YesNoBox
push af
- call Function1c07
+ call ExitMenu
pop af
jr c, .asm_1039c
ld hl, NumItems
@@ -709,7 +709,7 @@ Function104e9: ; 104e9 (4:44e9)
Function104fa: ; 104fa (4:44fa)
ld hl, MenuDataHeader_0x10a4f
- call Function1d3c
+ call CopyMenuDataHeader
ld a, [wd0d9]
ld [wcf88], a
ld a, [wd0df]
@@ -737,7 +737,7 @@ Function10527: ; 10527 (4:4527)
Function10539: ; 10539 (4:4539)
ld hl, MenuDataHeader_0x10a7f
- call Function1d3c
+ call CopyMenuDataHeader
ld a, [wd0da]
ld [wcf88], a
ld a, [wd0e0]
@@ -788,7 +788,7 @@ Function10594: ; 10594 (4:4594)
Function105a6: ; 105a6 (4:45a6)
ld hl, MenuDataHeader_0x10aaf
- call Function1d3c
+ call CopyMenuDataHeader
ld a, [wd0db]
ld [wcf88], a
ld a, [wd0e1]
@@ -821,8 +821,8 @@ Function105dc: ; 105dc (4:45dc)
.asm_105ed
push de
call LoadMenuDataHeader
- call Function1d81
- call Function1c07
+ call InterpretMenu2
+ call ExitMenu
pop hl
ret c
ld a, [wcfa9]
@@ -992,7 +992,7 @@ Function106d9: ; 106d9 (4:46d9)
xor a
call Function10762
ld hl, MenuDataHeader_0x10a67
- call Function1d3c
+ call CopyMenuDataHeader
ld a, [wd0d9]
ld [wcf88], a
ld a, [wd0df]
@@ -1008,7 +1008,7 @@ Function106ff: ; 106ff (4:46ff)
ld a, $2
call Function10762
ld hl, MenuDataHeader_0x10a97
- call Function1d3c
+ call CopyMenuDataHeader
ld a, [wd0da]
ld [wcf88], a
ld a, [wd0e0]
@@ -1033,7 +1033,7 @@ Function1073b: ; 1073b (4:473b)
ld a, $1
call Function10762
ld hl, MenuDataHeader_0x10ac7
- call Function1d3c
+ call CopyMenuDataHeader
ld a, [wd0db]
ld [wcf88], a
ld a, [wd0e1]
@@ -1223,7 +1223,7 @@ Function1085a: ; 1085a (4:485a)
push hl
call Function10762
pop hl
- call Function1d3c
+ call CopyMenuDataHeader
call Function350c
ret
@@ -1235,8 +1235,9 @@ Function10866: ; 10866 (4:4866)
Function1086b: ; 1086b
ld e, a
ld d, 0
+rept 2
add hl, de
- add hl, de
+endr
ld a, [hli]
ld h, [hl]
ld l, a
@@ -1285,8 +1286,9 @@ Function1089d: ; 1089d
.asm_108b3
ld hl, PackGFXPointers
+rept 2
add hl, de
- add hl, de
+endr
ld a, [hli]
ld e, a
ld d, [hl]
@@ -1673,7 +1675,7 @@ UnknownText_0x10b07: ; 0x10b07
; 0x10b0c
UnknownText_0x10b0c: ; 0x10b0c
- ;
+ ;
text_jump UnknownText_0x1c0c83
db "@"
; 0x10b11
diff --git a/engine/phone_scripts.asm b/engine/phone_scripts.asm
index c712e4d7a..9aba26450 100644
--- a/engine/phone_scripts.asm
+++ b/engine/phone_scripts.asm
@@ -2,6 +2,8 @@ UnusedPhoneScript: ; 0xbcea5
farwritetext UnusedPhoneText
end
+; Mom
+
MomPhoneScript: ; 0xbceaa
checkevent EVENT_TALKED_TO_MOM_AFTER_MYSTERY_EGG_QUEST
iftrue .bcec5
@@ -14,7 +16,7 @@ MomPhoneScript: ; 0xbceaa
jump MomPhoneNoPokemonScript
.bcec5 ; 0xbcec5
- checkevent EVENT_007
+ checkevent EVENT_IN_YOUR_ROOM
iftrue MomPhoneHangUpScript
farwritetext MomPhoneGreetingText
keeptextopen
@@ -139,12 +141,14 @@ MomPhoneNoGymQuestScript: ; 0xbcfac
MomPhoneLectureScript: ; 0xbcfb1
setevent EVENT_TALKED_TO_MOM_AFTER_MYSTERY_EGG_QUEST
setflag ENGINE_DST
- specialphonecall $0000
+ specialphonecall ELMCALL_NONE
farwritetext MomPhoneLectureText
yesorno
iftrue MomPhoneSaveMoneyScript
jump MomPhoneWontSaveMoneyScript
+; Bill
+
BillPhoneScript1: ; 0xbcfc5
checkday
iftrue .daygreet
@@ -187,6 +191,8 @@ BillPhoneScript2: ; 0xbd007
closetext
end
+; Elm
+
ElmPhoneScript1: ; 0xbd00d
checkcode VAR_POKERUS
if_equal $1, .pokerus
@@ -247,7 +253,7 @@ ElmPhoneScript1: ; 0xbd00d
.pokerus ; 0xbd079
farwritetext ElmPhonePokerusText
- specialphonecall $0000
+ specialphonecall ELMCALL_NONE
end
ElmPhoneScript2: ; 0xbd081
@@ -258,48 +264,49 @@ ElmPhoneScript2: ; 0xbd081
if_equal $5, .gift
if_equal $8, .gift
farwritetext ElmPhonePokerusText
- specialphonecall $0000
+ specialphonecall ELMCALL_NONE
end
.disaster ; 0xbd09f
farwritetext ElmPhoneDisasterText
- specialphonecall $0000
+ specialphonecall ELMCALL_NONE
setevent EVENT_ELM_CALLED_ABOUT_STOLEN_POKEMON
end
.assistant ; 0xbd0aa
farwritetext ElmPhoneEggAssistantText
- specialphonecall $0000
+ specialphonecall ELMCALL_NONE
clearevent EVENT_ELMS_AIDE_IN_VIOLET_POKEMON_CENTER
setevent EVENT_ELMS_AIDE_IN_LAB
end
.rocket ; 0xbd0b8
farwritetext ElmPhoneRocketText
- specialphonecall $0000
+ specialphonecall ELMCALL_NONE
end
.gift ; 0xbd0c0
farwritetext ElmPhoneGiftText
- specialphonecall $0000
+ specialphonecall ELMCALL_NONE
end
.unused ; 0xbd0c8
farwritetext ElmPhoneUnusedText
- specialphonecall $0000
+ specialphonecall ELMCALL_NONE
end
; bd0d0
+; Jack
UnknownScript_0xbd0d0:
- trainertotext SCHOOLBOY, 1, $0
+ trainertotext SCHOOLBOY, JACK1, $0
checkflag ENGINE_JACK
iftrue UnknownScript_0xbd0f3
farscall UnknownScript_0xbde4e
- checkflag ENGINE_87
+ checkflag ENGINE_JACK_MONDAY_MORNING
iftrue UnknownScript_0xbd0ef
checkcode VAR_WEEKDAY
- if_not_equal $1, UnknownScript_0xbd0ef
+ if_not_equal MONDAY, UnknownScript_0xbd0ef
checkmorn
iftrue UnknownScript_0xbd12a
@@ -311,13 +318,13 @@ UnknownScript_0xbd0f3:
farjump UnknownScript_0xa0a2d
UnknownScript_0xbd0fa:
- trainertotext SCHOOLBOY, 1, $0
+ trainertotext SCHOOLBOY, JACK1, $0
farscall UnknownScript_0xbe1b6
farscall UnknownScript_0xbde3f
if_equal $0, UnknownScript_0xbd13b
checkflag ENGINE_JACK
iftrue UnknownScript_0xbd11e
- checkflag ENGINE_87
+ checkflag ENGINE_JACK_MONDAY_MORNING
iftrue UnknownScript_0xbd11e
farscall UnknownScript_0xbde3f
if_equal $0, UnknownScript_0xbd12d
@@ -328,7 +335,7 @@ UnknownScript_0xbd11e:
farjump UnknownScript_0xa0000
UnknownScript_0xbd12a:
- setflag ENGINE_87
+ setflag ENGINE_JACK_MONDAY_MORNING
UnknownScript_0xbd12d:
displaylocation NATIONAL_PARK, $2
@@ -341,8 +348,10 @@ UnknownScript_0xbd137:
UnknownScript_0xbd13b:
farjump UnknownScript_0xa0654
+; Beverly
+
UnknownScript_0xbd13f:
- trainertotext POKEFANF, 1, $0
+ trainertotext POKEFANF, BEVERLY1, $0
farscall UnknownScript_0xbe0b6
checkflag ENGINE_BEVERLY_HAS_NUGGET
iftrue UnknownScript_0xbd151
@@ -353,7 +362,7 @@ UnknownScript_0xbd151:
farjump UnknownScript_0xa0aa5
UnknownScript_0xbd158:
- trainertotext POKEFANF, 1, $0
+ trainertotext POKEFANF, BEVERLY1, $0
farscall UnknownScript_0xbe41e
checkflag ENGINE_BEVERLY_HAS_NUGGET
iftrue UnknownScript_0xbd16e
@@ -368,15 +377,17 @@ UnknownScript_0xbd172:
displaylocation NATIONAL_PARK, $2
farjump UnknownScript_0xa061e
+; Huey
+
UnknownScript_0xbd17c:
- trainertotext SAILOR, 2, $0
+ trainertotext SAILOR, HUEY1, $0
checkflag ENGINE_HUEY
iftrue UnknownScript_0xbd1a2
farscall UnknownScript_0xbde4e
- checkflag ENGINE_88
+ checkflag ENGINE_HUEY_WEDNESDAY_NIGHT
iftrue UnknownScript_0xbd19b
checkcode VAR_WEEKDAY
- if_not_equal $3, UnknownScript_0xbd19b
+ if_not_equal WEDNESDAY, UnknownScript_0xbd19b
checknite
iftrue UnknownScript_0xbd1cd
@@ -389,11 +400,11 @@ UnknownScript_0xbd1a2:
farjump UnknownScript_0xa0a32
UnknownScript_0xbd1a9:
- trainertotext SAILOR, 2, $0
+ trainertotext SAILOR, HUEY1, $0
farscall UnknownScript_0xbe1b6
checkflag ENGINE_HUEY
iftrue UnknownScript_0xbd1c9
- checkflag ENGINE_88
+ checkflag ENGINE_HUEY_WEDNESDAY_NIGHT
iftrue UnknownScript_0xbd1c9
farscall UnknownScript_0xbde42
if_equal $0, UnknownScript_0xbd1d0
@@ -403,22 +414,24 @@ UnknownScript_0xbd1c9:
farjump UnknownScript_0xbe622
UnknownScript_0xbd1cd:
- setflag ENGINE_88
+ setflag ENGINE_HUEY_WEDNESDAY_NIGHT
UnknownScript_0xbd1d0:
displaylocation LIGHTHOUSE, $2
setflag ENGINE_HUEY
farjump UnknownScript_0xa0376
+; Gaven
+
UnknownScript_0xbd1da:
- trainertotext COOLTRAINERM, 10, $0
+ trainertotext COOLTRAINERM, GAVEN3, $0
checkflag ENGINE_GAVEN
iftrue UnknownScript_0xbd1fd
farscall UnknownScript_0xbde4e
- checkflag ENGINE_89
+ checkflag ENGINE_GAVEN_THURSDAY_MORNING
iftrue UnknownScript_0xbd1f9
checkcode VAR_WEEKDAY
- if_not_equal $4, UnknownScript_0xbd1f9
+ if_not_equal THURSDAY, UnknownScript_0xbd1f9
checkmorn
iftrue UnknownScript_0xbd22c
@@ -430,11 +443,11 @@ UnknownScript_0xbd1fd:
farjump UnknownScript_0xa0a37
UnknownScript_0xbd204:
- trainertotext COOLTRAINERM, 10, $0
+ trainertotext COOLTRAINERM, GAVEN3, $0
farscall UnknownScript_0xbe1b6
checkflag ENGINE_GAVEN
iftrue UnknownScript_0xbd220
- checkflag ENGINE_89
+ checkflag ENGINE_GAVEN_THURSDAY_MORNING
iftrue UnknownScript_0xbd220
farscall UnknownScript_0xbde3f
if_equal $0, UnknownScript_0xbd22f
@@ -445,7 +458,7 @@ UnknownScript_0xbd220:
farjump UnknownScript_0xa0000
UnknownScript_0xbd22c:
- setflag ENGINE_89
+ setflag ENGINE_GAVEN_THURSDAY_MORNING
UnknownScript_0xbd22f:
displaylocation ROUTE_26, $2
@@ -455,15 +468,17 @@ UnknownScript_0xbd22f:
UnknownScript_0xbd239:
farjump UnknownScript_0xa0584
+; Beth
+
UnknownScript_0xbd23d:
- trainertotext COOLTRAINERF, 9, $0
+ trainertotext COOLTRAINERF, BETH1, $0
checkflag ENGINE_BETH
iftrue UnknownScript_0xbd260
farscall UnknownScript_0xbe0b6
- checkflag ENGINE_8A
+ checkflag ENGINE_BETH_FRIDAY_AFTERNOON
iftrue UnknownScript_0xbd25c
checkcode VAR_WEEKDAY
- if_not_equal $5, UnknownScript_0xbd25c
+ if_not_equal FRIDAY, UnknownScript_0xbd25c
checkday
iftrue UnknownScript_0xbd287
@@ -475,11 +490,11 @@ UnknownScript_0xbd260:
farjump UnknownScript_0xa0a3c
UnknownScript_0xbd267:
- trainertotext COOLTRAINERF, 9, $0
+ trainertotext COOLTRAINERF, BETH1, $0
farscall UnknownScript_0xbe41e
checkflag ENGINE_BETH
iftrue UnknownScript_0xbd283
- checkflag ENGINE_8A
+ checkflag ENGINE_BETH_FRIDAY_AFTERNOON
iftrue UnknownScript_0xbd283
farscall UnknownScript_0xbde3f
if_equal $0, UnknownScript_0xbd28a
@@ -488,24 +503,26 @@ UnknownScript_0xbd283:
farjump UnknownScript_0xa0017
UnknownScript_0xbd287:
- setflag ENGINE_8A
+ setflag ENGINE_BETH_FRIDAY_AFTERNOON
UnknownScript_0xbd28a:
displaylocation ROUTE_26, $2
setflag ENGINE_BETH
farjump UnknownScript_0xa037e
+; Jose
+
UnknownScript_0xbd294:
- trainertotext BIRD_KEEPER, 14, $0
+ trainertotext BIRD_KEEPER, JOSE2, $0
checkflag ENGINE_JOSE
iftrue UnknownScript_0xbd2bd
farscall UnknownScript_0xbde4e
- checkflag ENGINE_8B
+ checkflag ENGINE_JOSE_SATURDAY_NIGHT
iftrue UnknownScript_0xbd2b9
checkflag ENGINE_JOSE_HAS_STAR_PIECE
iftrue UnknownScript_0xbd2c4
checkcode VAR_WEEKDAY
- if_not_equal $6, UnknownScript_0xbd2b9
+ if_not_equal SATURDAY, UnknownScript_0xbd2b9
checknite
iftrue UnknownScript_0xbd301
@@ -521,11 +538,11 @@ UnknownScript_0xbd2c4:
farjump UnknownScript_0xa0a41
UnknownScript_0xbd2cb:
- trainertotext BIRD_KEEPER, 14, $0
+ trainertotext BIRD_KEEPER, JOSE2, $0
farscall UnknownScript_0xbe1b6
checkflag ENGINE_JOSE
iftrue UnknownScript_0xbd2f5
- checkflag ENGINE_8B
+ checkflag ENGINE_JOSE_SATURDAY_NIGHT
iftrue UnknownScript_0xbd2f5
checkflag ENGINE_JOSE_HAS_STAR_PIECE
iftrue UnknownScript_0xbd2f5
@@ -540,7 +557,7 @@ UnknownScript_0xbd2f5:
farjump UnknownScript_0xa0000
UnknownScript_0xbd301:
- setflag ENGINE_8B
+ setflag ENGINE_JOSE_SATURDAY_NIGHT
UnknownScript_0xbd304:
displaylocation ROUTE_27, $2
@@ -555,15 +572,17 @@ UnknownScript_0xbd312:
displaylocation ROUTE_27, $2
farjump UnknownScript_0xa05e6
+; Reena
+
UnknownScript_0xbd31c:
- trainertotext COOLTRAINERF, 10, $0
+ trainertotext COOLTRAINERF, REENA1, $0
checkflag ENGINE_REENA
iftrue UnknownScript_0xbd33f
farscall UnknownScript_0xbe0b6
- checkflag ENGINE_8C
+ checkflag ENGINE_REENA_SUNDAY_MORNING
iftrue UnknownScript_0xbd33b
checkcode VAR_WEEKDAY
- if_not_equal $0, UnknownScript_0xbd33b
+ if_not_equal SUNDAY, UnknownScript_0xbd33b
checkmorn
iftrue UnknownScript_0xbd366
@@ -575,11 +594,11 @@ UnknownScript_0xbd33f:
farjump UnknownScript_0xa0a46
UnknownScript_0xbd346:
- trainertotext COOLTRAINERF, 10, $0
+ trainertotext COOLTRAINERF, REENA1, $0
farscall UnknownScript_0xbe41e
checkflag ENGINE_REENA
iftrue UnknownScript_0xbd362
- checkflag ENGINE_8C
+ checkflag ENGINE_REENA_SUNDAY_MORNING
iftrue UnknownScript_0xbd362
farscall UnknownScript_0xbde3f
if_equal $0, UnknownScript_0xbd369
@@ -588,22 +607,24 @@ UnknownScript_0xbd362:
farjump UnknownScript_0xa0017
UnknownScript_0xbd366:
- setflag ENGINE_8C
+ setflag ENGINE_REENA_SUNDAY_MORNING
UnknownScript_0xbd369:
displaylocation ROUTE_27, $2
setflag ENGINE_REENA
farjump UnknownScript_0xa037e
+; Joey
+
UnknownScript_0xbd373:
- trainertotext YOUNGSTER, 1, $0
+ trainertotext YOUNGSTER, JOEY1, $0
checkflag ENGINE_JOEY
iftrue UnknownScript_0xbd399
farscall UnknownScript_0xbde4e
- checkflag ENGINE_8D
+ checkflag ENGINE_JOEY_MONDAY_AFTERNOON
iftrue UnknownScript_0xbd392
checkcode VAR_WEEKDAY
- if_not_equal $1, UnknownScript_0xbd392
+ if_not_equal MONDAY, UnknownScript_0xbd392
checkday
iftrue UnknownScript_0xbd3c4
@@ -616,11 +637,11 @@ UnknownScript_0xbd399:
farjump UnknownScript_0xa0a4b
UnknownScript_0xbd3a0:
- trainertotext YOUNGSTER, 1, $0
+ trainertotext YOUNGSTER, JOEY1, $0
farscall UnknownScript_0xbe1b6
checkflag ENGINE_JOEY
iftrue UnknownScript_0xbd3c0
- checkflag ENGINE_8D
+ checkflag ENGINE_JOEY_MONDAY_AFTERNOON
iftrue UnknownScript_0xbd3c0
farscall UnknownScript_0xbde42
if_equal $0, UnknownScript_0xbd3c7
@@ -630,36 +651,38 @@ UnknownScript_0xbd3c0:
farjump UnknownScript_0xa0000
UnknownScript_0xbd3c4:
- setflag ENGINE_8D
+ setflag ENGINE_JOEY_MONDAY_AFTERNOON
UnknownScript_0xbd3c7:
displaylocation ROUTE_30, $2
setflag ENGINE_JOEY
farjump UnknownScript_0xa0376
+; Wade
+
UnknownScript_0xbd3d1:
- trainertotext BUG_CATCHER, 4, $0
+ trainertotext BUG_CATCHER, WADE1, $0
checkflag ENGINE_WADE
iftrue UnknownScript_0xbd41a
farscall UnknownScript_0xbde4e
- checkflag ENGINE_8E
+ checkflag ENGINE_WADE_TUESDAY_NIGHT
iftrue UnknownScript_0xbd3f6
checkflag ENGINE_WADE_HAS_ITEM
iftrue UnknownScript_0xbd421
checkcode VAR_WEEKDAY
- if_not_equal $2, UnknownScript_0xbd3f6
+ if_not_equal TUESDAY, UnknownScript_0xbd3f6
checknite
iftrue UnknownScript_0xbd484
UnknownScript_0xbd3f6:
farscall UnknownScript_0xbde3f
if_equal $0, UnknownScript_0xbd412
- checkflag ENGINE_51
+ checkflag ENGINE_DAILY_BUG_CONTEST
iftrue UnknownScript_0xbd412
checkcode VAR_WEEKDAY
- if_equal $2, UnknownScript_0xbd416
- if_equal $4, UnknownScript_0xbd416
- if_equal $6, UnknownScript_0xbd416
+ if_equal TUESDAY, UnknownScript_0xbd416
+ if_equal THURSDAY, UnknownScript_0xbd416
+ if_equal SATURDAY, UnknownScript_0xbd416
UnknownScript_0xbd412:
farjump UnknownScript_0xa0938
@@ -676,21 +699,21 @@ UnknownScript_0xbd421:
farjump UnknownScript_0xa0ab5
UnknownScript_0xbd428:
- trainertotext BUG_CATCHER, 4, $0
+ trainertotext BUG_CATCHER, WADE1, $0
farscall UnknownScript_0xbe1b6
farscall UnknownScript_0xbde3f
if_equal $0, UnknownScript_0xbd44c
- checkflag ENGINE_51
+ checkflag ENGINE_DAILY_BUG_CONTEST
iftrue UnknownScript_0xbd44c
checkcode VAR_WEEKDAY
- if_equal $2, UnknownScript_0xbd480
- if_equal $4, UnknownScript_0xbd480
- if_equal $6, UnknownScript_0xbd480
+ if_equal TUESDAY, UnknownScript_0xbd480
+ if_equal THURSDAY, UnknownScript_0xbd480
+ if_equal SATURDAY, UnknownScript_0xbd480
UnknownScript_0xbd44c:
checkflag ENGINE_WADE
iftrue UnknownScript_0xbd474
- checkflag ENGINE_8E
+ checkflag ENGINE_WADE_TUESDAY_NIGHT
iftrue UnknownScript_0xbd474
checkflag ENGINE_WADE_HAS_ITEM
iftrue UnknownScript_0xbd474
@@ -710,7 +733,7 @@ UnknownScript_0xbd480:
farjump UnknownScript_0xa05a4
UnknownScript_0xbd484:
- setflag ENGINE_8E
+ setflag ENGINE_WADE_TUESDAY_NIGHT
UnknownScript_0xbd487:
displaylocation ROUTE_31, $2
@@ -751,15 +774,17 @@ UnknownScript_0xbd4cb:
UnknownScript_0xbd4ce:
farjump UnknownScript_0xa05e6
+; Ralph
+
UnknownScript_0xbd4d2:
- trainertotext FISHER, 2, $0
+ trainertotext FISHER, RALPH1, $0
checkflag ENGINE_RALPH
iftrue UnknownScript_0xbd4fb
farscall UnknownScript_0xbde4e
- checkflag ENGINE_8F
+ checkflag ENGINE_RALPH_WEDNESDAY_MORNING
iftrue UnknownScript_0xbd4f1
checkcode VAR_WEEKDAY
- if_not_equal $3, UnknownScript_0xbd4f1
+ if_not_equal WEDNESDAY, UnknownScript_0xbd4f1
checkmorn
iftrue UnknownScript_0xbd537
@@ -777,13 +802,13 @@ UnknownScript_0xbd502:
farjump UnknownScript_0xa0af5
UnknownScript_0xbd509:
- trainertotext FISHER, 2, $0
+ trainertotext FISHER, RALPH1, $0
farscall UnknownScript_0xbe1b6
checkflag ENGINE_FLYPOINT_GOLDENROD
iffalse UnknownScript_0xbd52b
checkflag ENGINE_RALPH
iftrue UnknownScript_0xbd52b
- checkflag ENGINE_8F
+ checkflag ENGINE_RALPH_WEDNESDAY_MORNING
iftrue UnknownScript_0xbd52b
farscall UnknownScript_0xbde3f
if_equal $0, UnknownScript_0xbd53a
@@ -794,7 +819,7 @@ UnknownScript_0xbd52b:
farjump UnknownScript_0xa0000
UnknownScript_0xbd537:
- setflag ENGINE_8F
+ setflag ENGINE_RALPH_WEDNESDAY_MORNING
UnknownScript_0xbd53a:
displaylocation ROUTE_32, $2
@@ -814,15 +839,17 @@ UnknownScript_0xbd544:
UnknownScript_0xbd55c:
farjump UnknownScript_0xa0000
+; Liz
+
UnknownScript_0xbd560:
- trainertotext PICNICKER, 1, $0
+ trainertotext PICNICKER, LIZ1, $0
checkflag ENGINE_LIZ
iftrue UnknownScript_0xbd586
farscall UnknownScript_0xbe0b6
- checkflag ENGINE_90
+ checkflag ENGINE_LIZ_THURSDAY_AFTERNOON
iftrue UnknownScript_0xbd57f
checkcode VAR_WEEKDAY
- if_not_equal $4, UnknownScript_0xbd57f
+ if_not_equal THURSDAY, UnknownScript_0xbd57f
checkday
iftrue UnknownScript_0xbd5c3
@@ -835,13 +862,13 @@ UnknownScript_0xbd586:
farjump UnknownScript_0xa0a5a
UnknownScript_0xbd58d:
- trainertotext PICNICKER, 1, $0
+ trainertotext PICNICKER, LIZ1, $0
farscall UnknownScript_0xbde45
if_equal $0, UnknownScript_0xbd5d0
farscall UnknownScript_0xbe41e
checkflag ENGINE_LIZ
iftrue UnknownScript_0xbd5a9
- checkflag ENGINE_90
+ checkflag ENGINE_LIZ_THURSDAY_AFTERNOON
iftrue UnknownScript_0xbd5a9
UnknownScript_0xbd5a9:
@@ -856,7 +883,7 @@ UnknownScript_0xbd5bf:
farjump UnknownScript_0xa0017
UnknownScript_0xbd5c3:
- setflag ENGINE_90
+ setflag ENGINE_LIZ_THURSDAY_AFTERNOON
UnknownScript_0xbd5c6:
displaylocation ROUTE_32, $2
@@ -879,53 +906,55 @@ UnknownScript_0xbd5d4:
if_equal $8, UnknownScript_0xbd62a
UnknownScript_0xbd5fa:
- trainerclassname $1b, $1
+ trainerclassname COOLTRAINERM, $1
jump UnknownScript_0xbd630
UnknownScript_0xbd600:
- trainerclassname $1d, $1
+ trainerclassname BEAUTY, $1
jump UnknownScript_0xbd630
UnknownScript_0xbd606:
- trainerclassname $1f, $1
+ trainerclassname GRUNTM, $1
jump UnknownScript_0xbd630
UnknownScript_0xbd60c:
- trainerclassname $22, $1
+ trainerclassname TEACHER, $1
jump UnknownScript_0xbd630
UnknownScript_0xbd612:
- trainerclassname $27, $1
+ trainerclassname SWIMMERF, $1
jump UnknownScript_0xbd630
UnknownScript_0xbd618:
- trainerclassname $3c, $1
+ trainerclassname KIMONO_GIRL, $1
jump UnknownScript_0xbd630
UnknownScript_0xbd61e:
- trainerclassname $21, $1
+ trainerclassname SKIER, $1
jump UnknownScript_0xbd630
UnknownScript_0xbd624:
- trainerclassname $39, $1
+ trainerclassname MEDIUM, $1
jump UnknownScript_0xbd630
UnknownScript_0xbd62a:
- trainerclassname $3b, $1
+ trainerclassname POKEFANM, $1
jump UnknownScript_0xbd630
UnknownScript_0xbd630:
farjump UnknownScript_0xa06da
+; Anthony
+
UnknownScript_0xbd634:
- trainertotext HIKER, 5, $0
+ trainertotext HIKER, ANTHONY2, $0
checkflag ENGINE_ANTHONY
iftrue UnknownScript_0xbd65d
farscall UnknownScript_0xbde4e
- checkflag ENGINE_91
+ checkflag ENGINE_ANTHONY_FRIDAY_NIGHT
iftrue UnknownScript_0xbd653
checkcode VAR_WEEKDAY
- if_not_equal $5, UnknownScript_0xbd653
+ if_not_equal FRIDAY, UnknownScript_0xbd653
checknite
iftrue UnknownScript_0xbd699
@@ -943,13 +972,13 @@ UnknownScript_0xbd664:
farjump UnknownScript_0xa0afa
UnknownScript_0xbd66b:
- trainertotext HIKER, 5, $0
+ trainertotext HIKER, ANTHONY2, $0
farscall UnknownScript_0xbe1b6
checkflag ENGINE_FLYPOINT_GOLDENROD
iffalse UnknownScript_0xbd68d
checkflag ENGINE_ANTHONY
iftrue UnknownScript_0xbd68d
- checkflag ENGINE_91
+ checkflag ENGINE_ANTHONY_FRIDAY_NIGHT
iftrue UnknownScript_0xbd68d
farscall UnknownScript_0xbde3f
if_equal $0, UnknownScript_0xbd69c
@@ -960,7 +989,7 @@ UnknownScript_0xbd68d:
farjump UnknownScript_0xa0000
UnknownScript_0xbd699:
- setflag ENGINE_91
+ setflag ENGINE_ANTHONY_FRIDAY_NIGHT
UnknownScript_0xbd69c:
displaylocation ROUTE_33, $2
@@ -979,15 +1008,17 @@ UnknownScript_0xbd6a6:
UnknownScript_0xbd6bd:
farjump UnknownScript_0xa0000
+; Todd
+
UnknownScript_0xbd6c1:
- trainertotext CAMPER, 2, $0
+ trainertotext CAMPER, TODD1, $0
checkflag ENGINE_TODD
iftrue UnknownScript_0xbd6ea
farscall UnknownScript_0xbde4e
- checkflag ENGINE_92
+ checkflag ENGINE_TODD_SATURDAY_MORNING
iftrue UnknownScript_0xbd6e0
checkcode VAR_WEEKDAY
- if_not_equal $6, UnknownScript_0xbd6e0
+ if_not_equal SATURDAY, UnknownScript_0xbd6e0
checkmorn
iftrue UnknownScript_0xbd72b
@@ -1004,11 +1035,11 @@ UnknownScript_0xbd6f1:
farjump UnknownScript_0xa0b04
UnknownScript_0xbd6f5:
- trainertotext CAMPER, 2, $0
+ trainertotext CAMPER, TODD1, $0
farscall UnknownScript_0xbe1b6
checkflag ENGINE_TODD
iftrue UnknownScript_0xbd717
- checkflag ENGINE_92
+ checkflag ENGINE_TODD_SATURDAY_MORNING
iftrue UnknownScript_0xbd717
checkflag ENGINE_FLYPOINT_GOLDENROD
iffalse UnknownScript_0xbd71f
@@ -1025,7 +1056,7 @@ UnknownScript_0xbd71f:
farjump UnknownScript_0xa0000
UnknownScript_0xbd72b:
- setflag ENGINE_92
+ setflag ENGINE_TODD_SATURDAY_MORNING
UnknownScript_0xbd72e:
displaylocation ROUTE_34, $2
@@ -1039,17 +1070,19 @@ UnknownScript_0xbd73c:
setflag ENGINE_GOLDENROD_DEPT_STORE_SALE_IS_ON
farjump UnknownScript_0xa0644
+; Gina
+
UnknownScript_0xbd743:
- trainertotext PICNICKER, 2, $0
+ trainertotext PICNICKER, GINA1, $0
checkflag ENGINE_GINA
iftrue UnknownScript_0xbd776
farscall UnknownScript_0xbe0b6
- checkflag ENGINE_93
+ checkflag ENGINE_GINA_SUNDAY_AFTERNOON
iftrue UnknownScript_0xbd768
checkflag ENGINE_GINA_HAS_LEAF_STONE
iftrue UnknownScript_0xbd77d
checkcode VAR_WEEKDAY
- if_not_equal $0, UnknownScript_0xbd768
+ if_not_equal SUNDAY, UnknownScript_0xbd768
checkday
iftrue UnknownScript_0xbd7cc
@@ -1070,17 +1103,17 @@ UnknownScript_0xbd77d:
farjump UnknownScript_0xa0abd
UnknownScript_0xbd784:
- trainertotext PICNICKER, 2, $0
+ trainertotext PICNICKER, GINA1, $0
farscall UnknownScript_0xbe41e
checkflag ENGINE_ROCKETS_IN_RADIO_TOWER
iftrue UnknownScript_0xbd7d9
checkflag ENGINE_GINA
iftrue UnknownScript_0xbd7c8
- checkflag ENGINE_93
+ checkflag ENGINE_GINA_SUNDAY_AFTERNOON
iftrue UnknownScript_0xbd7c8
checkflag ENGINE_GINA_HAS_LEAF_STONE
iftrue UnknownScript_0xbd7c8
- checkevent EVENT_100
+ checkevent EVENT_GINA_GAVE_LEAF_STONE
iftrue UnknownScript_0xbd7b2
farscall UnknownScript_0xbde3f
if_equal $0, UnknownScript_0xbd7dd
@@ -1097,7 +1130,7 @@ UnknownScript_0xbd7c8:
farjump UnknownScript_0xa0017
UnknownScript_0xbd7cc:
- setflag ENGINE_93
+ setflag ENGINE_GINA_SUNDAY_AFTERNOON
UnknownScript_0xbd7cf:
displaylocation ROUTE_34, $2
@@ -1112,8 +1145,10 @@ UnknownScript_0xbd7dd:
displaylocation ROUTE_34, $2
farjump UnknownScript_0xa061e
+; Irwin
+
UnknownScript_0xbd7e7:
- trainertotext JUGGLER, 1, $0
+ trainertotext JUGGLER, IRWIN1, $0
farscall UnknownScript_0xbde4e
checkflag ENGINE_ROCKETS_IN_RADIO_TOWER
iftrue UnknownScript_0xbd7f9
@@ -1123,7 +1158,7 @@ UnknownScript_0xbd7f9:
farjump UnknownScript_0xa05be
UnknownScript_0xbd7fd:
- trainertotext JUGGLER, 1, $0
+ trainertotext JUGGLER, IRWIN1, $0
farscall UnknownScript_0xbe1b6
checkflag ENGINE_ROCKETS_IN_RADIO_TOWER
iftrue UnknownScript_0xbd80f
@@ -1132,15 +1167,17 @@ UnknownScript_0xbd7fd:
UnknownScript_0xbd80f:
farjump UnknownScript_0xa05be
+; Arnie
+
UnknownScript_0xbd813:
- trainertotext BUG_CATCHER, 8, $0
+ trainertotext BUG_CATCHER, ARNIE1, $0
checkflag ENGINE_ARNIE
iftrue UnknownScript_0xbd83c
farscall UnknownScript_0xbde4e
- checkflag ENGINE_94
+ checkflag ENGINE_ARNIE_TUESDAY_MORNING
iftrue UnknownScript_0xbd832
checkcode VAR_WEEKDAY
- if_not_equal $2, UnknownScript_0xbd832
+ if_not_equal TUESDAY, UnknownScript_0xbd832
checkmorn
iftrue UnknownScript_0xbd87a
@@ -1158,11 +1195,11 @@ UnknownScript_0xbd843:
farjump UnknownScript_0xa0aff
UnknownScript_0xbd84a:
- trainertotext BUG_CATCHER, 8, $0
+ trainertotext BUG_CATCHER, ARNIE1, $0
farscall UnknownScript_0xbe1b6
checkflag ENGINE_ARNIE
iftrue UnknownScript_0xbd866
- checkflag ENGINE_94
+ checkflag ENGINE_ARNIE_TUESDAY_MORNING
iftrue UnknownScript_0xbd866
farscall UnknownScript_0xbde3f
if_equal $0, UnknownScript_0xbd87d
@@ -1175,7 +1212,7 @@ UnknownScript_0xbd866:
farjump UnknownScript_0xa0000
UnknownScript_0xbd87a:
- setflag ENGINE_94
+ setflag ENGINE_ARNIE_TUESDAY_MORNING
UnknownScript_0xbd87d:
displaylocation ROUTE_35, $2
@@ -1197,17 +1234,19 @@ UnknownScript_0xbd89e:
UnknownScript_0xbd8a2:
farjump UnknownScript_0xa0000
+; Alan
+
UnknownScript_0xbd8a6:
- trainertotext SCHOOLBOY, 3, $0
+ trainertotext SCHOOLBOY, ALAN1, $0
checkflag ENGINE_ALAN
iftrue UnknownScript_0xbd8cf
farscall UnknownScript_0xbde4e
- checkflag ENGINE_95
+ checkflag ENGINE_ALAN_WEDNESDAY_AFTERNOON
iftrue UnknownScript_0xbd8cb
checkflag ENGINE_ALAN_HAS_FIRE_STONE
iftrue UnknownScript_0xbd8d6
checkcode VAR_WEEKDAY
- if_not_equal $3, UnknownScript_0xbd8cb
+ if_not_equal WEDNESDAY, UnknownScript_0xbd8cb
checkday
iftrue UnknownScript_0xbd919
@@ -1223,17 +1262,17 @@ UnknownScript_0xbd8d6:
farjump UnknownScript_0xa0ac5
UnknownScript_0xbd8dd:
- trainertotext SCHOOLBOY, 3, $0
+ trainertotext SCHOOLBOY, ALAN1, $0
farscall UnknownScript_0xbe1b6
checkflag ENGINE_ALAN
iftrue UnknownScript_0xbd915
- checkflag ENGINE_95
+ checkflag ENGINE_ALAN_WEDNESDAY_AFTERNOON
iftrue UnknownScript_0xbd915
checkflag ENGINE_ALAN_HAS_FIRE_STONE
iftrue UnknownScript_0xbd915
farscall UnknownScript_0xbde42
if_equal $0, UnknownScript_0xbd91c
- checkevent EVENT_101
+ checkevent EVENT_ALAN_GAVE_FIRE_STONE
iftrue UnknownScript_0xbd90d
farscall UnknownScript_0xbde3f
if_equal $0, UnknownScript_0xbd926
@@ -1246,7 +1285,7 @@ UnknownScript_0xbd915:
farjump UnknownScript_0xa0000
UnknownScript_0xbd919:
- setflag ENGINE_95
+ setflag ENGINE_ALAN_WEDNESDAY_AFTERNOON
UnknownScript_0xbd91c:
displaylocation ROUTE_36, $2
@@ -1258,17 +1297,19 @@ UnknownScript_0xbd926:
displaylocation ROUTE_36, $2
farjump UnknownScript_0xa05e6
+; Dana
+
UnknownScript_0xbd930:
- trainertotext LASS, 10, $0
+ trainertotext LASS, DANA1, $0
checkflag ENGINE_DANA
iftrue UnknownScript_0xbd959
farscall UnknownScript_0xbe0b6
- checkflag ENGINE_96
+ checkflag ENGINE_DANA_THURSDAY_NIGHT
iftrue UnknownScript_0xbd955
- checkflag ENGINE_LIZ_HAS_THUNDERSTONE
+ checkflag ENGINE_DANA_HAS_THUNDERSTONE
iftrue UnknownScript_0xbd960
checkcode VAR_WEEKDAY
- if_not_equal $4, UnknownScript_0xbd955
+ if_not_equal THURSDAY, UnknownScript_0xbd955
checknite
iftrue UnknownScript_0xbd9ab
@@ -1284,17 +1325,17 @@ UnknownScript_0xbd960:
farjump UnknownScript_0xa0acd
UnknownScript_0xbd967:
- trainertotext LASS, 10, $0
+ trainertotext LASS, DANA1, $0
farscall UnknownScript_0xbe41e
checkflag ENGINE_DANA
iftrue UnknownScript_0xbd99f
- checkflag ENGINE_96
+ checkflag ENGINE_DANA_THURSDAY_NIGHT
iftrue UnknownScript_0xbd99f
- checkflag ENGINE_LIZ_HAS_THUNDERSTONE
+ checkflag ENGINE_DANA_HAS_THUNDERSTONE
iftrue UnknownScript_0xbd99f
farscall UnknownScript_0xbde42
if_equal $0, UnknownScript_0xbd9ae
- checkevent EVENT_102
+ checkevent EVENT_DANA_GAVE_THUNDERSTONE
iftrue UnknownScript_0xbd997
farscall UnknownScript_0xbde3f
if_equal $0, UnknownScript_0xbd9bc
@@ -1309,7 +1350,7 @@ UnknownScript_0xbd99f:
farjump UnknownScript_0xa0017
UnknownScript_0xbd9ab:
- setflag ENGINE_96
+ setflag ENGINE_DANA_THURSDAY_NIGHT
UnknownScript_0xbd9ae:
displaylocation ROUTE_38, $2
@@ -1320,19 +1361,21 @@ UnknownScript_0xbd9b8:
farjump UnknownScript_0xa0592
UnknownScript_0xbd9bc:
- setflag ENGINE_LIZ_HAS_THUNDERSTONE
+ setflag ENGINE_DANA_HAS_THUNDERSTONE
displaylocation ROUTE_38, $2
farjump UnknownScript_0xa061e
+; Chad
+
UnknownScript_0xbd9c6:
- trainertotext SCHOOLBOY, 10, $0
+ trainertotext SCHOOLBOY, CHAD1, $0
checkflag ENGINE_CHAD
iftrue UnknownScript_0xbd9e9
farscall UnknownScript_0xbde4e
- checkflag ENGINE_97
+ checkflag ENGINE_CHAD_FRIDAY_MORNING
iftrue UnknownScript_0xbd9e5
checkcode VAR_WEEKDAY
- if_not_equal $5, UnknownScript_0xbd9e5
+ if_not_equal FRIDAY, UnknownScript_0xbd9e5
checkmorn
iftrue UnknownScript_0xbda20
@@ -1344,13 +1387,13 @@ UnknownScript_0xbd9e9:
farjump UnknownScript_0xa0a7d
UnknownScript_0xbd9f0:
- trainertotext SCHOOLBOY, 10, $0
+ trainertotext SCHOOLBOY, CHAD1, $0
farscall UnknownScript_0xbe1b6
farscall UnknownScript_0xbde3f
if_equal $0, UnknownScript_0xbda31
checkflag ENGINE_CHAD
iftrue UnknownScript_0xbda14
- checkflag ENGINE_97
+ checkflag ENGINE_CHAD_FRIDAY_MORNING
iftrue UnknownScript_0xbda14
farscall UnknownScript_0xbde3f
if_equal $0, UnknownScript_0xbda23
@@ -1361,7 +1404,7 @@ UnknownScript_0xbda14:
farjump UnknownScript_0xa0000
UnknownScript_0xbda20:
- setflag ENGINE_97
+ setflag ENGINE_CHAD_FRIDAY_MORNING
UnknownScript_0xbda23:
displaylocation ROUTE_38, $2
@@ -1375,18 +1418,18 @@ UnknownScript_0xbda31:
farjump UnknownScript_0xa0754
UnknownScript_0xbda35:
- trainertotext POKEFANM, 2, $0
+ trainertotext POKEFANM, DEREK1, $0
farscall UnknownScript_0xbde4e
checkflag ENGINE_DEREK_HAS_NUGGET
iftrue UnknownScript_0xbda67
farscall UnknownScript_0xbde3f
if_equal $0, UnknownScript_0xbda5f
- checkflag ENGINE_51
+ checkflag ENGINE_DAILY_BUG_CONTEST
iftrue UnknownScript_0xbda5f
checkcode VAR_WEEKDAY
- if_equal $2, UnknownScript_0xbda63
- if_equal $4, UnknownScript_0xbda63
- if_equal $6, UnknownScript_0xbda63
+ if_equal TUESDAY, UnknownScript_0xbda63
+ if_equal THURSDAY, UnknownScript_0xbda63
+ if_equal SATURDAY, UnknownScript_0xbda63
UnknownScript_0xbda5f:
farjump UnknownScript_0xa0988
@@ -1399,16 +1442,16 @@ UnknownScript_0xbda67:
farjump UnknownScript_0xa0ad5
UnknownScript_0xbda6e:
- trainertotext POKEFANM, 2, $0
+ trainertotext POKEFANM, DEREK1, $0
farscall UnknownScript_0xbe1b6
farscall UnknownScript_0xbde3f
if_equal $0, UnknownScript_0xbda92
- checkflag ENGINE_51
+ checkflag ENGINE_DAILY_BUG_CONTEST
iftrue UnknownScript_0xbda92
checkcode VAR_WEEKDAY
- if_equal $2, UnknownScript_0xbda9e
- if_equal $4, UnknownScript_0xbda9e
- if_equal $6, UnknownScript_0xbda9e
+ if_equal TUESDAY, UnknownScript_0xbda9e
+ if_equal THURSDAY, UnknownScript_0xbda9e
+ if_equal SATURDAY, UnknownScript_0xbda9e
UnknownScript_0xbda92:
farscall UnknownScript_0xbde45
@@ -1424,16 +1467,16 @@ UnknownScript_0xbdaa2:
farjump UnknownScript_0xa05e6
UnknownScript_0xbdaac:
- trainertotext FISHER, 7, $0
+ trainertotext FISHER, TULLY1, $0
checkflag ENGINE_TULLY
iftrue UnknownScript_0xbdad5
farscall UnknownScript_0xbde4e
- checkflag ENGINE_98
+ checkflag ENGINE_TULLY_SUNDAY_NIGHT
iftrue UnknownScript_0xbdad1
checkflag ENGINE_TULLY_HAS_WATER_STONE
iftrue UnknownScript_0xbdadc
checkcode VAR_WEEKDAY
- if_not_equal $0, UnknownScript_0xbdad1
+ if_not_equal SUNDAY, UnknownScript_0xbdad1
checknite
iftrue UnknownScript_0xbdb1f
@@ -1449,17 +1492,17 @@ UnknownScript_0xbdadc:
farjump UnknownScript_0xa0add
UnknownScript_0xbdae3:
- trainertotext FISHER, 7, $0
+ trainertotext FISHER, TULLY1, $0
farscall UnknownScript_0xbe1b6
checkflag ENGINE_TULLY
iftrue UnknownScript_0xbdb1b
- checkflag ENGINE_98
+ checkflag ENGINE_TULLY_SUNDAY_NIGHT
iftrue UnknownScript_0xbdb1b
checkflag ENGINE_TULLY_HAS_WATER_STONE
iftrue UnknownScript_0xbdb1b
farscall UnknownScript_0xbde42
if_equal $0, UnknownScript_0xbdb22
- checkevent EVENT_103
+ checkevent EVENT_TULLY_GAVE_WATER_STONE
iftrue UnknownScript_0xbdb13
farscall UnknownScript_0xbde3f
if_equal $0, UnknownScript_0xbdb2c
@@ -1472,7 +1515,7 @@ UnknownScript_0xbdb1b:
farjump UnknownScript_0xa0000
UnknownScript_0xbdb1f:
- setflag ENGINE_98
+ setflag ENGINE_TULLY_SUNDAY_NIGHT
UnknownScript_0xbdb22:
displaylocation ROUTE_42, $2
@@ -1485,14 +1528,14 @@ UnknownScript_0xbdb2c:
farjump UnknownScript_0xa05e6
UnknownScript_0xbdb36:
- trainertotext POKEMANIAC, 6, $0
+ trainertotext POKEMANIAC, BRENT1, $0
checkflag ENGINE_BRENT
iftrue UnknownScript_0xbdb59
farscall UnknownScript_0xbde4e
- checkflag ENGINE_99
+ checkflag ENGINE_BRENT_MONDAY_MORNING
iftrue UnknownScript_0xbdb55
checkcode VAR_WEEKDAY
- if_not_equal $1, UnknownScript_0xbdb55
+ if_not_equal MONDAY, UnknownScript_0xbdb55
checkmorn
iftrue UnknownScript_0xbdb88
@@ -1504,13 +1547,13 @@ UnknownScript_0xbdb59:
farjump UnknownScript_0xa0a87
UnknownScript_0xbdb60:
- trainertotext POKEMANIAC, 6, $0
+ trainertotext POKEMANIAC, BRENT1, $0
farscall UnknownScript_0xbe1b6
farscall UnknownScript_0xbde3f
if_equal $0, UnknownScript_0xbdb95
checkflag ENGINE_BRENT
iftrue UnknownScript_0xbdb84
- checkflag ENGINE_99
+ checkflag ENGINE_BRENT_MONDAY_MORNING
iftrue UnknownScript_0xbdb84
farscall UnknownScript_0xbde3f
if_equal $0, UnknownScript_0xbdb8b
@@ -1519,7 +1562,7 @@ UnknownScript_0xbdb84:
farjump UnknownScript_0xa0000
UnknownScript_0xbdb88:
- setflag ENGINE_99
+ setflag ENGINE_BRENT_MONDAY_MORNING
UnknownScript_0xbdb8b:
displaylocation ROUTE_43, $2
@@ -1530,16 +1573,16 @@ UnknownScript_0xbdb95:
farjump UnknownScript_0xa07ce
UnknownScript_0xbdb99:
- trainertotext PICNICKER, 20, $0
+ trainertotext PICNICKER, TIFFANY3, $0
checkflag ENGINE_TIFFANY
iftrue UnknownScript_0xbdbc2
farscall UnknownScript_0xbe0b6
- checkflag ENGINE_9A
+ checkflag ENGINE_TIFFANY_TUESDAY_AFTERNOON
iftrue UnknownScript_0xbdbbe
checkflag ENGINE_TIFFANY_HAS_PINK_BOW
iftrue UnknownScript_0xbdbc9
checkcode VAR_WEEKDAY
- if_not_equal $2, UnknownScript_0xbdbbe
+ if_not_equal TUESDAY, UnknownScript_0xbdbbe
checkday
iftrue UnknownScript_0xbdc14
@@ -1555,19 +1598,19 @@ UnknownScript_0xbdbc9:
farjump UnknownScript_0xa0ae5
UnknownScript_0xbdbd0:
- trainertotext PICNICKER, 20, $0
+ trainertotext PICNICKER, TIFFANY3, $0
farscall UnknownScript_0xbde45
if_equal $0, UnknownScript_0xbdc21
farscall UnknownScript_0xbe41e
checkflag ENGINE_TIFFANY
iftrue UnknownScript_0xbdc10
- checkflag ENGINE_9A
+ checkflag ENGINE_TIFFANY_TUESDAY_AFTERNOON
iftrue UnknownScript_0xbdc10
checkflag ENGINE_TIFFANY_HAS_PINK_BOW
iftrue UnknownScript_0xbdc10
farscall UnknownScript_0xbde42
if_equal $0, UnknownScript_0xbdc17
- checkevent EVENT_104
+ checkevent EVENT_TIFFANY_GAVE_PINK_BOW
iftrue UnknownScript_0xbdc08
farscall UnknownScript_0xbde3f
if_equal $0, UnknownScript_0xbdc69
@@ -1580,7 +1623,7 @@ UnknownScript_0xbdc10:
farjump UnknownScript_0xa0017
UnknownScript_0xbdc14:
- setflag ENGINE_9A
+ setflag ENGINE_TIFFANY_TUESDAY_AFTERNOON
UnknownScript_0xbdc17:
displaylocation ROUTE_43, $2
@@ -1628,15 +1671,17 @@ UnknownScript_0xbdc69:
displaylocation ROUTE_43, $2
farjump UnknownScript_0xa061e
+; Vance
+
UnknownScript_0xbdc73:
- trainertotext BIRD_KEEPER, 7, $0
+ trainertotext BIRD_KEEPER, VANCE1, $0
checkflag ENGINE_VANCE
iftrue UnknownScript_0xbdc96
farscall UnknownScript_0xbde4e
- checkflag ENGINE_9B
+ checkflag ENGINE_VANCE_WEDNESDAY_NIGHT
iftrue UnknownScript_0xbdc92
checkcode VAR_WEEKDAY
- if_not_equal $3, UnknownScript_0xbdc92
+ if_not_equal WEDNESDAY, UnknownScript_0xbdc92
checknite
iftrue UnknownScript_0xbdcc1
@@ -1648,11 +1693,11 @@ UnknownScript_0xbdc96:
farjump UnknownScript_0xa0a91
UnknownScript_0xbdc9d:
- trainertotext BIRD_KEEPER, 7, $0
+ trainertotext BIRD_KEEPER, VANCE1, $0
farscall UnknownScript_0xbe1b6
checkflag ENGINE_VANCE
iftrue UnknownScript_0xbdcbd
- checkflag ENGINE_9B
+ checkflag ENGINE_VANCE_WEDNESDAY_NIGHT
iftrue UnknownScript_0xbdcbd
farscall UnknownScript_0xbde42
if_equal $0, UnknownScript_0xbdcc4
@@ -1662,7 +1707,7 @@ UnknownScript_0xbdcbd:
farjump UnknownScript_0xa0000
UnknownScript_0xbdcc1:
- setflag ENGINE_9B
+ setflag ENGINE_VANCE_WEDNESDAY_NIGHT
UnknownScript_0xbdcc4:
displaylocation ROUTE_44, $2
@@ -1670,16 +1715,16 @@ UnknownScript_0xbdcc4:
farjump UnknownScript_0xa0376
UnknownScript_0xbdcce:
- trainertotext FISHER, 10, $0
+ trainertotext FISHER, WILTON1, $0
checkflag ENGINE_WILTON
iftrue UnknownScript_0xbdcf7
farscall UnknownScript_0xbde4e
- checkflag ENGINE_9C
+ checkflag ENGINE_WILTON_THRUSDAY_MORNING
iftrue UnknownScript_0xbdcf3
checkflag ENGINE_WILTON_HAS_ITEM
iftrue UnknownScript_0xbdcfe
checkcode VAR_WEEKDAY
- if_not_equal $4, UnknownScript_0xbdcf3
+ if_not_equal THURSDAY, UnknownScript_0xbdcf3
checkmorn
iftrue UnknownScript_0xbdd33
@@ -1695,11 +1740,11 @@ UnknownScript_0xbdcfe:
farjump UnknownScript_0xa0aed
UnknownScript_0xbdd05:
- trainertotext FISHER, 10, $0
+ trainertotext FISHER, WILTON1, $0
farscall UnknownScript_0xbe1b6
checkflag ENGINE_WILTON
iftrue UnknownScript_0xbdd2f
- checkflag ENGINE_9C
+ checkflag ENGINE_WILTON_THRUSDAY_MORNING
iftrue UnknownScript_0xbdd2f
checkflag ENGINE_WILTON_HAS_ITEM
iftrue UnknownScript_0xbdd2f
@@ -1712,7 +1757,7 @@ UnknownScript_0xbdd2f:
farjump UnknownScript_0xa0000
UnknownScript_0xbdd33:
- setflag ENGINE_9C
+ setflag ENGINE_WILTON_THRUSDAY_MORNING
UnknownScript_0xbdd36:
displaylocation ROUTE_44, $2
@@ -1745,25 +1790,29 @@ UnknownScript_0xbdd6a:
UnknownScript_0xbdd6d:
farjump UnknownScript_0xa05e6
+; Kenji
+
UnknownScript_0xbdd71:
- trainertotext BLACKBELT_T, 8, $0
+ trainertotext BLACKBELT_T, KENJI3, $0
farscall UnknownScript_0xbde4e
farjump UnknownScript_0xa09ee
UnknownScript_0xbdd7d:
- trainertotext BLACKBELT_T, 8, $0
+ trainertotext BLACKBELT_T, KENJI3, $0
farscall UnknownScript_0xbe1b6
farjump UnknownScript_0xa064c
+; Parry
+
UnknownScript_0xbdd89:
- trainertotext HIKER, 9, $0
+ trainertotext HIKER, PARRY1, $0
checkflag ENGINE_PARRY
iftrue UnknownScript_0xbddac
farscall UnknownScript_0xbde4e
- checkflag ENGINE_9D
+ checkflag ENGINE_PARRY_FRIDAY_AFTERNOON
iftrue UnknownScript_0xbdda8
checkcode VAR_WEEKDAY
- if_not_equal $5, UnknownScript_0xbdda8
+ if_not_equal FRIDAY, UnknownScript_0xbdda8
checkday
iftrue UnknownScript_0xbddd7
@@ -1775,11 +1824,11 @@ UnknownScript_0xbddac:
farjump UnknownScript_0xa0a9b
UnknownScript_0xbddb3:
- trainertotext HIKER, 9, $0
+ trainertotext HIKER, PARRY1, $0
farscall UnknownScript_0xbe1b6
checkflag ENGINE_PARRY
iftrue UnknownScript_0xbddd3
- checkflag ENGINE_9D
+ checkflag ENGINE_PARRY_FRIDAY_AFTERNOON
iftrue UnknownScript_0xbddd3
farscall UnknownScript_0xbde3f
if_equal $0, UnknownScript_0xbddda
@@ -1789,22 +1838,24 @@ UnknownScript_0xbddd3:
farjump UnknownScript_0xa0000
UnknownScript_0xbddd7:
- setflag ENGINE_9D
+ setflag ENGINE_PARRY_FRIDAY_AFTERNOON
UnknownScript_0xbddda:
displaylocation ROUTE_45, $2
setflag ENGINE_PARRY
farjump UnknownScript_0xa0376
+; Erin
+
UnknownScript_0xbdde4:
- trainertotext PICNICKER, 10, $0
+ trainertotext PICNICKER, ERIN1, $0
checkflag ENGINE_ERIN
iftrue UnknownScript_0xbde07
farscall UnknownScript_0xbe0b6
- checkflag ENGINE_9E
+ checkflag ENGINE_ERIN_SATURDAY_NIGHT
iftrue UnknownScript_0xbde03
checkcode VAR_WEEKDAY
- if_not_equal $6, UnknownScript_0xbde03
+ if_not_equal SATURDAY, UnknownScript_0xbde03
checknite
iftrue UnknownScript_0xbde32
@@ -1816,11 +1867,11 @@ UnknownScript_0xbde07:
farjump UnknownScript_0xa0aa0
UnknownScript_0xbde0e:
- trainertotext PICNICKER, 10, $0
+ trainertotext PICNICKER, ERIN1, $0
farscall UnknownScript_0xbe41e
checkflag ENGINE_ERIN
iftrue UnknownScript_0xbde2e
- checkflag ENGINE_9E
+ checkflag ENGINE_ERIN_SATURDAY_NIGHT
iftrue UnknownScript_0xbde2e
farscall UnknownScript_0xbde42
if_equal $0, UnknownScript_0xbde35
@@ -1830,7 +1881,7 @@ UnknownScript_0xbde2e:
farjump UnknownScript_0xa0017
UnknownScript_0xbde32:
- setflag ENGINE_9E
+ setflag ENGINE_ERIN_SATURDAY_NIGHT
UnknownScript_0xbde35:
displaylocation ROUTE_46, $2
@@ -1863,26 +1914,26 @@ UnknownScript_0xbde4e:
checknite
iftrue UnknownScript_0xbdfec
checkcode VAR_CALLERID
- if_equal $5, UnknownScript_0xbdeaa
- if_equal $7, UnknownScript_0xbdeb0
- if_equal $b, UnknownScript_0xbdeb6
- if_equal $d, UnknownScript_0xbdebc
- if_equal $f, UnknownScript_0xbdec2
- if_equal $10, UnknownScript_0xbdec8
- if_equal $11, UnknownScript_0xbdece
- if_equal $13, UnknownScript_0xbded4
- if_equal $14, UnknownScript_0xbdeda
- if_equal $16, UnknownScript_0xbdee0
- if_equal $17, UnknownScript_0xbdee6
- if_equal $18, UnknownScript_0xbdeec
- if_equal $1b, UnknownScript_0xbdef2
- if_equal $1c, UnknownScript_0xbdef8
- if_equal $1d, UnknownScript_0xbdefe
- if_equal $1e, UnknownScript_0xbdf04
- if_equal $20, UnknownScript_0xbdf0a
- if_equal $21, UnknownScript_0xbdf10
- if_equal $22, UnknownScript_0xbdf16
- if_equal $23, UnknownScript_0xbdf1c
+ if_equal PHONE_SCHOOLBOY_JACK, UnknownScript_0xbdeaa
+ if_equal PHONE_SAILOR_HUEY, UnknownScript_0xbdeb0
+ if_equal PHONE_COOLTRAINERM_GAVEN, UnknownScript_0xbdeb6
+ if_equal PHONE_BIRDKEEPER_JOSE, UnknownScript_0xbdebc
+ if_equal PHONE_YOUNGSTER_JOEY, UnknownScript_0xbdec2
+ if_equal PHONE_BUG_CATCHER_WADE, UnknownScript_0xbdec8
+ if_equal PHONE_FISHER_RALPH, UnknownScript_0xbdece
+ if_equal PHONE_HIKER_ANTHONY, UnknownScript_0xbded4
+ if_equal PHONE_CAMPER_TODD, UnknownScript_0xbdeda
+ if_equal PHONE_JUGGLER_IRWIN, UnknownScript_0xbdee0
+ if_equal PHONE_BUG_CATCHER_ARNIE, UnknownScript_0xbdee6
+ if_equal PHONE_SCHOOLBOY_ALAN, UnknownScript_0xbdeec
+ if_equal PHONE_SCHOOLBOY_CHAD, UnknownScript_0xbdef2
+ if_equal PHONE_POKEFANM_DEREK, UnknownScript_0xbdef8
+ if_equal PHONE_FISHER_TULLY, UnknownScript_0xbdefe
+ if_equal PHONE_POKEMANIAC_BRENT, UnknownScript_0xbdf04
+ if_equal PHONE_BIRDKEEPER_VANCE, UnknownScript_0xbdf0a
+ if_equal PHONE_FISHER_WILTON, UnknownScript_0xbdf10
+ if_equal PHONE_BLACKBELT_KENJI, UnknownScript_0xbdf16
+ if_equal PHONE_HIKER_PARRY, UnknownScript_0xbdf1c
UnknownScript_0xbdeaa:
farwritetext UnknownText_0x1b4dc5
@@ -1986,26 +2037,26 @@ UnknownScript_0xbdf1c:
UnknownScript_0xbdf22:
checkcode VAR_CALLERID
- if_equal $5, UnknownScript_0xbdf74
- if_equal $7, UnknownScript_0xbdf7a
- if_equal $b, UnknownScript_0xbdf80
- if_equal $d, UnknownScript_0xbdf86
- if_equal $f, UnknownScript_0xbdf8c
- if_equal $10, UnknownScript_0xbdf92
- if_equal $11, UnknownScript_0xbdf98
- if_equal $13, UnknownScript_0xbdf9e
- if_equal $14, UnknownScript_0xbdfa4
- if_equal $16, UnknownScript_0xbdfaa
- if_equal $17, UnknownScript_0xbdfb0
- if_equal $18, UnknownScript_0xbdfb6
- if_equal $1b, UnknownScript_0xbdfbc
- if_equal $1c, UnknownScript_0xbdfc2
- if_equal $1d, UnknownScript_0xbdfc8
- if_equal $1e, UnknownScript_0xbdfce
- if_equal $20, UnknownScript_0xbdfd4
- if_equal $21, UnknownScript_0xbdfda
- if_equal $22, UnknownScript_0xbdfe0
- if_equal $23, UnknownScript_0xbdfe6
+ if_equal PHONE_SCHOOLBOY_JACK, UnknownScript_0xbdf74
+ if_equal PHONE_SAILOR_HUEY, UnknownScript_0xbdf7a
+ if_equal PHONE_COOLTRAINERM_GAVEN, UnknownScript_0xbdf80
+ if_equal PHONE_BIRDKEEPER_JOSE, UnknownScript_0xbdf86
+ if_equal PHONE_YOUNGSTER_JOEY, UnknownScript_0xbdf8c
+ if_equal PHONE_BUG_CATCHER_WADE, UnknownScript_0xbdf92
+ if_equal PHONE_FISHER_RALPH, UnknownScript_0xbdf98
+ if_equal PHONE_HIKER_ANTHONY, UnknownScript_0xbdf9e
+ if_equal PHONE_CAMPER_TODD, UnknownScript_0xbdfa4
+ if_equal PHONE_JUGGLER_IRWIN, UnknownScript_0xbdfaa
+ if_equal PHONE_BUG_CATCHER_ARNIE, UnknownScript_0xbdfb0
+ if_equal PHONE_SCHOOLBOY_ALAN, UnknownScript_0xbdfb6
+ if_equal PHONE_SCHOOLBOY_CHAD, UnknownScript_0xbdfbc
+ if_equal PHONE_POKEFANM_DEREK, UnknownScript_0xbdfc2
+ if_equal PHONE_FISHER_TULLY, UnknownScript_0xbdfc8
+ if_equal PHONE_POKEMANIAC_BRENT, UnknownScript_0xbdfce
+ if_equal PHONE_BIRDKEEPER_VANCE, UnknownScript_0xbdfd4
+ if_equal PHONE_FISHER_WILTON, UnknownScript_0xbdfda
+ if_equal PHONE_BLACKBELT_KENJI, UnknownScript_0xbdfe0
+ if_equal PHONE_HIKER_PARRY, UnknownScript_0xbdfe6
UnknownScript_0xbdf74:
farwritetext UnknownText_0x1b4ded
@@ -2109,26 +2160,26 @@ UnknownScript_0xbdfe6:
UnknownScript_0xbdfec:
checkcode VAR_CALLERID
- if_equal $5, UnknownScript_0xbe03e
- if_equal $7, UnknownScript_0xbe044
- if_equal $b, UnknownScript_0xbe04a
- if_equal $d, UnknownScript_0xbe050
- if_equal $f, UnknownScript_0xbe056
- if_equal $10, UnknownScript_0xbe05c
- if_equal $11, UnknownScript_0xbe062
- if_equal $13, UnknownScript_0xbe068
- if_equal $14, UnknownScript_0xbe06e
- if_equal $16, UnknownScript_0xbe074
- if_equal $17, UnknownScript_0xbe07a
- if_equal $18, UnknownScript_0xbe080
- if_equal $1b, UnknownScript_0xbe086
- if_equal $1c, UnknownScript_0xbe08c
- if_equal $1d, UnknownScript_0xbe092
- if_equal $1e, UnknownScript_0xbe098
- if_equal $20, UnknownScript_0xbe09e
- if_equal $21, UnknownScript_0xbe0a4
- if_equal $22, UnknownScript_0xbe0aa
- if_equal $23, UnknownScript_0xbe0b0
+ if_equal PHONE_SCHOOLBOY_JACK, UnknownScript_0xbe03e
+ if_equal PHONE_SAILOR_HUEY, UnknownScript_0xbe044
+ if_equal PHONE_COOLTRAINERM_GAVEN, UnknownScript_0xbe04a
+ if_equal PHONE_BIRDKEEPER_JOSE, UnknownScript_0xbe050
+ if_equal PHONE_YOUNGSTER_JOEY, UnknownScript_0xbe056
+ if_equal PHONE_BUG_CATCHER_WADE, UnknownScript_0xbe05c
+ if_equal PHONE_FISHER_RALPH, UnknownScript_0xbe062
+ if_equal PHONE_HIKER_ANTHONY, UnknownScript_0xbe068
+ if_equal PHONE_CAMPER_TODD, UnknownScript_0xbe06e
+ if_equal PHONE_JUGGLER_IRWIN, UnknownScript_0xbe074
+ if_equal PHONE_BUG_CATCHER_ARNIE, UnknownScript_0xbe07a
+ if_equal PHONE_SCHOOLBOY_ALAN, UnknownScript_0xbe080
+ if_equal PHONE_SCHOOLBOY_CHAD, UnknownScript_0xbe086
+ if_equal PHONE_POKEFANM_DEREK, UnknownScript_0xbe08c
+ if_equal PHONE_FISHER_TULLY, UnknownScript_0xbe092
+ if_equal PHONE_POKEMANIAC_BRENT, UnknownScript_0xbe098
+ if_equal PHONE_BIRDKEEPER_VANCE, UnknownScript_0xbe09e
+ if_equal PHONE_FISHER_WILTON, UnknownScript_0xbe0a4
+ if_equal PHONE_BLACKBELT_KENJI, UnknownScript_0xbe0aa
+ if_equal PHONE_HIKER_PARRY, UnknownScript_0xbe0b0
UnknownScript_0xbe03e:
farwritetext UnknownText_0x1b4e16
@@ -2236,14 +2287,14 @@ UnknownScript_0xbe0b6:
checknite
iftrue UnknownScript_0xbe164
checkcode VAR_CALLERID
- if_equal $6, UnknownScript_0xbe0e2
- if_equal $c, UnknownScript_0xbe0e8
- if_equal $e, UnknownScript_0xbe0ee
- if_equal $12, UnknownScript_0xbe0f4
- if_equal $15, UnknownScript_0xbe0fa
- if_equal $1a, UnknownScript_0xbe100
- if_equal $1f, UnknownScript_0xbe106
- if_equal $24, UnknownScript_0xbe10c
+ if_equal PHONE_POKEFAN_BEVERLY, UnknownScript_0xbe0e2
+ if_equal PHONE_COOLTRAINERF_BETH, UnknownScript_0xbe0e8
+ if_equal PHONE_COOLTRAINERF_REENA, UnknownScript_0xbe0ee
+ if_equal PHONE_PICNICKER_LIZ, UnknownScript_0xbe0f4
+ if_equal PHONE_PICNICKER_GINA, UnknownScript_0xbe0fa
+ if_equal PHONE_LASS_DANA, UnknownScript_0xbe100
+ if_equal PHONE_PICNICKER_TIFFANY, UnknownScript_0xbe106
+ if_equal PHONE_PICNICKER_ERIN, UnknownScript_0xbe10c
UnknownScript_0xbe0e2:
farwritetext UnknownText_0x1b4f21
@@ -2287,14 +2338,14 @@ UnknownScript_0xbe10c:
UnknownScript_0xbe112:
checkcode VAR_CALLERID
- if_equal $6, UnknownScript_0xbe134
- if_equal $c, UnknownScript_0xbe13a
- if_equal $e, UnknownScript_0xbe140
- if_equal $12, UnknownScript_0xbe146
- if_equal $15, UnknownScript_0xbe14c
- if_equal $1a, UnknownScript_0xbe152
- if_equal $1f, UnknownScript_0xbe158
- if_equal $24, UnknownScript_0xbe15e
+ if_equal PHONE_POKEFAN_BEVERLY, UnknownScript_0xbe134
+ if_equal PHONE_COOLTRAINERF_BETH, UnknownScript_0xbe13a
+ if_equal PHONE_COOLTRAINERF_REENA, UnknownScript_0xbe140
+ if_equal PHONE_PICNICKER_LIZ, UnknownScript_0xbe146
+ if_equal PHONE_PICNICKER_GINA, UnknownScript_0xbe14c
+ if_equal PHONE_LASS_DANA, UnknownScript_0xbe152
+ if_equal PHONE_PICNICKER_TIFFANY, UnknownScript_0xbe158
+ if_equal PHONE_PICNICKER_ERIN, UnknownScript_0xbe15e
UnknownScript_0xbe134:
farwritetext UnknownText_0x1b4f4d
@@ -2338,14 +2389,14 @@ UnknownScript_0xbe15e:
UnknownScript_0xbe164:
checkcode VAR_CALLERID
- if_equal $6, UnknownScript_0xbe186
- if_equal $c, UnknownScript_0xbe18c
- if_equal $e, UnknownScript_0xbe192
- if_equal $12, UnknownScript_0xbe198
- if_equal $15, UnknownScript_0xbe19e
- if_equal $1a, UnknownScript_0xbe1a4
- if_equal $1f, UnknownScript_0xbe1aa
- if_equal $24, UnknownScript_0xbe1b0
+ if_equal PHONE_POKEFAN_BEVERLY, UnknownScript_0xbe186
+ if_equal PHONE_COOLTRAINERF_BETH, UnknownScript_0xbe18c
+ if_equal PHONE_COOLTRAINERF_REENA, UnknownScript_0xbe192
+ if_equal PHONE_PICNICKER_LIZ, UnknownScript_0xbe198
+ if_equal PHONE_PICNICKER_GINA, UnknownScript_0xbe19e
+ if_equal PHONE_LASS_DANA, UnknownScript_0xbe1a4
+ if_equal PHONE_PICNICKER_TIFFANY, UnknownScript_0xbe1aa
+ if_equal PHONE_PICNICKER_ERIN, UnknownScript_0xbe1b0
UnknownScript_0xbe186:
farwritetext UnknownText_0x1b4f75
@@ -2393,26 +2444,26 @@ UnknownScript_0xbe1b6:
checknite
iftrue UnknownScript_0xbe354
checkcode VAR_CALLERID
- if_equal $5, UnknownScript_0xbe212
- if_equal $7, UnknownScript_0xbe218
- if_equal $b, UnknownScript_0xbe21e
- if_equal $d, UnknownScript_0xbe224
- if_equal $f, UnknownScript_0xbe22a
- if_equal $10, UnknownScript_0xbe230
- if_equal $11, UnknownScript_0xbe236
- if_equal $13, UnknownScript_0xbe23c
- if_equal $14, UnknownScript_0xbe242
- if_equal $16, UnknownScript_0xbe248
- if_equal $17, UnknownScript_0xbe24e
- if_equal $18, UnknownScript_0xbe254
- if_equal $1b, UnknownScript_0xbe25a
- if_equal $1c, UnknownScript_0xbe260
- if_equal $1d, UnknownScript_0xbe266
- if_equal $1e, UnknownScript_0xbe26c
- if_equal $20, UnknownScript_0xbe272
- if_equal $21, UnknownScript_0xbe278
- if_equal $22, UnknownScript_0xbe27e
- if_equal $23, UnknownScript_0xbe284
+ if_equal PHONE_SCHOOLBOY_JACK, UnknownScript_0xbe212
+ if_equal PHONE_SAILOR_HUEY, UnknownScript_0xbe218
+ if_equal PHONE_COOLTRAINERM_GAVEN, UnknownScript_0xbe21e
+ if_equal PHONE_BIRDKEEPER_JOSE, UnknownScript_0xbe224
+ if_equal PHONE_YOUNGSTER_JOEY, UnknownScript_0xbe22a
+ if_equal PHONE_BUG_CATCHER_WADE, UnknownScript_0xbe230
+ if_equal PHONE_FISHER_RALPH, UnknownScript_0xbe236
+ if_equal PHONE_HIKER_ANTHONY, UnknownScript_0xbe23c
+ if_equal PHONE_CAMPER_TODD, UnknownScript_0xbe242
+ if_equal PHONE_JUGGLER_IRWIN, UnknownScript_0xbe248
+ if_equal PHONE_BUG_CATCHER_ARNIE, UnknownScript_0xbe24e
+ if_equal PHONE_SCHOOLBOY_ALAN, UnknownScript_0xbe254
+ if_equal PHONE_SCHOOLBOY_CHAD, UnknownScript_0xbe25a
+ if_equal PHONE_POKEFANM_DEREK, UnknownScript_0xbe260
+ if_equal PHONE_FISHER_TULLY, UnknownScript_0xbe266
+ if_equal PHONE_POKEMANIAC_BRENT, UnknownScript_0xbe26c
+ if_equal PHONE_BIRDKEEPER_VANCE, UnknownScript_0xbe272
+ if_equal PHONE_FISHER_WILTON, UnknownScript_0xbe278
+ if_equal PHONE_BLACKBELT_KENJI, UnknownScript_0xbe27e
+ if_equal PHONE_HIKER_PARRY, UnknownScript_0xbe284
UnknownScript_0xbe212:
farwritetext UnknownText_0x1b4e3e
@@ -2516,26 +2567,26 @@ UnknownScript_0xbe284:
UnknownScript_0xbe28a:
checkcode VAR_CALLERID
- if_equal $5, UnknownScript_0xbe2dc
- if_equal $7, UnknownScript_0xbe2e2
- if_equal $b, UnknownScript_0xbe2e8
- if_equal $d, UnknownScript_0xbe2ee
- if_equal $f, UnknownScript_0xbe2f4
- if_equal $10, UnknownScript_0xbe2fa
- if_equal $11, UnknownScript_0xbe300
- if_equal $13, UnknownScript_0xbe306
- if_equal $14, UnknownScript_0xbe30c
- if_equal $16, UnknownScript_0xbe312
- if_equal $17, UnknownScript_0xbe318
- if_equal $18, UnknownScript_0xbe31e
- if_equal $1b, UnknownScript_0xbe324
- if_equal $1c, UnknownScript_0xbe32a
- if_equal $1d, UnknownScript_0xbe330
- if_equal $1e, UnknownScript_0xbe336
- if_equal $20, UnknownScript_0xbe33c
- if_equal $21, UnknownScript_0xbe342
- if_equal $22, UnknownScript_0xbe348
- if_equal $23, UnknownScript_0xbe34e
+ if_equal PHONE_SCHOOLBOY_JACK, UnknownScript_0xbe2dc
+ if_equal PHONE_SAILOR_HUEY, UnknownScript_0xbe2e2
+ if_equal PHONE_COOLTRAINERM_GAVEN, UnknownScript_0xbe2e8
+ if_equal PHONE_BIRDKEEPER_JOSE, UnknownScript_0xbe2ee
+ if_equal PHONE_YOUNGSTER_JOEY, UnknownScript_0xbe2f4
+ if_equal PHONE_BUG_CATCHER_WADE, UnknownScript_0xbe2fa
+ if_equal PHONE_FISHER_RALPH, UnknownScript_0xbe300
+ if_equal PHONE_HIKER_ANTHONY, UnknownScript_0xbe306
+ if_equal PHONE_CAMPER_TODD, UnknownScript_0xbe30c
+ if_equal PHONE_JUGGLER_IRWIN, UnknownScript_0xbe312
+ if_equal PHONE_BUG_CATCHER_ARNIE, UnknownScript_0xbe318
+ if_equal PHONE_SCHOOLBOY_ALAN, UnknownScript_0xbe31e
+ if_equal PHONE_SCHOOLBOY_CHAD, UnknownScript_0xbe324
+ if_equal PHONE_POKEFANM_DEREK, UnknownScript_0xbe32a
+ if_equal PHONE_FISHER_TULLY, UnknownScript_0xbe330
+ if_equal PHONE_POKEMANIAC_BRENT, UnknownScript_0xbe336
+ if_equal PHONE_BIRDKEEPER_VANCE, UnknownScript_0xbe33c
+ if_equal PHONE_FISHER_WILTON, UnknownScript_0xbe342
+ if_equal PHONE_BLACKBELT_KENJI, UnknownScript_0xbe348
+ if_equal PHONE_HIKER_PARRY, UnknownScript_0xbe34e
UnknownScript_0xbe2dc:
farwritetext UnknownText_0x1b4e72
@@ -2639,26 +2690,26 @@ UnknownScript_0xbe34e:
UnknownScript_0xbe354:
checkcode VAR_CALLERID
- if_equal $5, UnknownScript_0xbe3a6
- if_equal $7, UnknownScript_0xbe3ac
- if_equal $b, UnknownScript_0xbe3b2
- if_equal $d, UnknownScript_0xbe3b8
- if_equal $f, UnknownScript_0xbe3be
- if_equal $10, UnknownScript_0xbe3c4
- if_equal $11, UnknownScript_0xbe3ca
- if_equal $13, UnknownScript_0xbe3d0
- if_equal $14, UnknownScript_0xbe3d6
- if_equal $16, UnknownScript_0xbe3dc
- if_equal $17, UnknownScript_0xbe3e2
- if_equal $18, UnknownScript_0xbe3e8
- if_equal $1b, UnknownScript_0xbe3ee
- if_equal $1c, UnknownScript_0xbe3f4
- if_equal $1d, UnknownScript_0xbe3fa
- if_equal $1e, UnknownScript_0xbe400
- if_equal $20, UnknownScript_0xbe406
- if_equal $21, UnknownScript_0xbe40c
- if_equal $22, UnknownScript_0xbe412
- if_equal $23, UnknownScript_0xbe418
+ if_equal PHONE_SCHOOLBOY_JACK, UnknownScript_0xbe3a6
+ if_equal PHONE_SAILOR_HUEY, UnknownScript_0xbe3ac
+ if_equal PHONE_COOLTRAINERM_GAVEN, UnknownScript_0xbe3b2
+ if_equal PHONE_BIRDKEEPER_JOSE, UnknownScript_0xbe3b8
+ if_equal PHONE_YOUNGSTER_JOEY, UnknownScript_0xbe3be
+ if_equal PHONE_BUG_CATCHER_WADE, UnknownScript_0xbe3c4
+ if_equal PHONE_FISHER_RALPH, UnknownScript_0xbe3ca
+ if_equal PHONE_HIKER_ANTHONY, UnknownScript_0xbe3d0
+ if_equal PHONE_CAMPER_TODD, UnknownScript_0xbe3d6
+ if_equal PHONE_JUGGLER_IRWIN, UnknownScript_0xbe3dc
+ if_equal PHONE_BUG_CATCHER_ARNIE, UnknownScript_0xbe3e2
+ if_equal PHONE_SCHOOLBOY_ALAN, UnknownScript_0xbe3e8
+ if_equal PHONE_SCHOOLBOY_CHAD, UnknownScript_0xbe3ee
+ if_equal PHONE_POKEFANM_DEREK, UnknownScript_0xbe3f4
+ if_equal PHONE_FISHER_TULLY, UnknownScript_0xbe3fa
+ if_equal PHONE_POKEMANIAC_BRENT, UnknownScript_0xbe400
+ if_equal PHONE_BIRDKEEPER_VANCE, UnknownScript_0xbe406
+ if_equal PHONE_FISHER_WILTON, UnknownScript_0xbe40c
+ if_equal PHONE_BLACKBELT_KENJI, UnknownScript_0xbe412
+ if_equal PHONE_HIKER_PARRY, UnknownScript_0xbe418
UnknownScript_0xbe3a6:
farwritetext UnknownText_0x1b4e9e
@@ -2766,14 +2817,14 @@ UnknownScript_0xbe41e:
checknite
iftrue UnknownScript_0xbe4cc
checkcode VAR_CALLERID
- if_equal $6, UnknownScript_0xbe44a
- if_equal $c, UnknownScript_0xbe450
- if_equal $e, UnknownScript_0xbe456
- if_equal $12, UnknownScript_0xbe45c
- if_equal $15, UnknownScript_0xbe462
- if_equal $1a, UnknownScript_0xbe468
- if_equal $1f, UnknownScript_0xbe46e
- if_equal $24, UnknownScript_0xbe474
+ if_equal PHONE_POKEFAN_BEVERLY, UnknownScript_0xbe44a
+ if_equal PHONE_COOLTRAINERF_BETH, UnknownScript_0xbe450
+ if_equal PHONE_COOLTRAINERF_REENA, UnknownScript_0xbe456
+ if_equal PHONE_PICNICKER_LIZ, UnknownScript_0xbe45c
+ if_equal PHONE_PICNICKER_GINA, UnknownScript_0xbe462
+ if_equal PHONE_LASS_DANA, UnknownScript_0xbe468
+ if_equal PHONE_PICNICKER_TIFFANY, UnknownScript_0xbe46e
+ if_equal PHONE_PICNICKER_ERIN, UnknownScript_0xbe474
UnknownScript_0xbe44a:
farwritetext UnknownText_0x1b4fa1
@@ -2817,14 +2868,14 @@ UnknownScript_0xbe474:
UnknownScript_0xbe47a:
checkcode VAR_CALLERID
- if_equal $6, UnknownScript_0xbe49c
- if_equal $c, UnknownScript_0xbe4a2
- if_equal $e, UnknownScript_0xbe4a8
- if_equal $12, UnknownScript_0xbe4ae
- if_equal $15, UnknownScript_0xbe4b4
- if_equal $1a, UnknownScript_0xbe4ba
- if_equal $1f, UnknownScript_0xbe4c0
- if_equal $24, UnknownScript_0xbe4c6
+ if_equal PHONE_POKEFAN_BEVERLY, UnknownScript_0xbe49c
+ if_equal PHONE_COOLTRAINERF_BETH, UnknownScript_0xbe4a2
+ if_equal PHONE_COOLTRAINERF_REENA, UnknownScript_0xbe4a8
+ if_equal PHONE_PICNICKER_LIZ, UnknownScript_0xbe4ae
+ if_equal PHONE_PICNICKER_GINA, UnknownScript_0xbe4b4
+ if_equal PHONE_LASS_DANA, UnknownScript_0xbe4ba
+ if_equal PHONE_PICNICKER_TIFFANY, UnknownScript_0xbe4c0
+ if_equal PHONE_PICNICKER_ERIN, UnknownScript_0xbe4c6
UnknownScript_0xbe49c:
farwritetext UnknownText_0x1b4fda
@@ -2868,14 +2919,14 @@ UnknownScript_0xbe4c6:
UnknownScript_0xbe4cc:
checkcode VAR_CALLERID
- if_equal $6, UnknownScript_0xbe4ee
- if_equal $c, UnknownScript_0xbe4f4
- if_equal $e, UnknownScript_0xbe4fa
- if_equal $12, UnknownScript_0xbe500
- if_equal $15, UnknownScript_0xbe506
- if_equal $1a, UnknownScript_0xbe50c
- if_equal $1f, UnknownScript_0xbe512
- if_equal $24, UnknownScript_0xbe518
+ if_equal PHONE_POKEFAN_BEVERLY, UnknownScript_0xbe4ee
+ if_equal PHONE_COOLTRAINERF_BETH, UnknownScript_0xbe4f4
+ if_equal PHONE_COOLTRAINERF_REENA, UnknownScript_0xbe4fa
+ if_equal PHONE_PICNICKER_LIZ, UnknownScript_0xbe500
+ if_equal PHONE_PICNICKER_GINA, UnknownScript_0xbe506
+ if_equal PHONE_LASS_DANA, UnknownScript_0xbe50c
+ if_equal PHONE_PICNICKER_TIFFANY, UnknownScript_0xbe512
+ if_equal PHONE_PICNICKER_ERIN, UnknownScript_0xbe518
UnknownScript_0xbe4ee:
farwritetext UnknownText_0x1b5004
@@ -2919,23 +2970,23 @@ UnknownScript_0xbe518:
UnknownScript_0xbe51e:
checkcode VAR_CALLERID
- if_equal $5, UnknownScript_0xbe564
- if_equal $b, UnknownScript_0xbe570
- if_equal $d, UnknownScript_0xbe576
- if_equal $f, UnknownScript_0xbe57c
- if_equal $10, UnknownScript_0xbe582
- if_equal $11, UnknownScript_0xbe588
- if_equal $13, UnknownScript_0xbe58e
- if_equal $14, UnknownScript_0xbe594
- if_equal $17, UnknownScript_0xbe59a
- if_equal $18, UnknownScript_0xbe5a0
- if_equal $1b, UnknownScript_0xbe5a6
- if_equal $1c, UnknownScript_0xbe5ac
- if_equal $1d, UnknownScript_0xbe5b2
- if_equal $1e, UnknownScript_0xbe5b8
- if_equal $20, UnknownScript_0xbe5be
- if_equal $21, UnknownScript_0xbe5c4
- if_equal $23, UnknownScript_0xbe5ca
+ if_equal PHONE_SCHOOLBOY_JACK, UnknownScript_0xbe564
+ if_equal PHONE_COOLTRAINERM_GAVEN, UnknownScript_0xbe570
+ if_equal PHONE_BIRDKEEPER_JOSE, UnknownScript_0xbe576
+ if_equal PHONE_YOUNGSTER_JOEY, UnknownScript_0xbe57c
+ if_equal PHONE_BUG_CATCHER_WADE, UnknownScript_0xbe582
+ if_equal PHONE_FISHER_RALPH, UnknownScript_0xbe588
+ if_equal PHONE_HIKER_ANTHONY, UnknownScript_0xbe58e
+ if_equal PHONE_CAMPER_TODD, UnknownScript_0xbe594
+ if_equal PHONE_BUG_CATCHER_ARNIE, UnknownScript_0xbe59a
+ if_equal PHONE_SCHOOLBOY_ALAN, UnknownScript_0xbe5a0
+ if_equal PHONE_SCHOOLBOY_CHAD, UnknownScript_0xbe5a6
+ if_equal PHONE_POKEFANM_DEREK, UnknownScript_0xbe5ac
+ if_equal PHONE_FISHER_TULLY, UnknownScript_0xbe5b2
+ if_equal PHONE_POKEMANIAC_BRENT, UnknownScript_0xbe5b8
+ if_equal PHONE_BIRDKEEPER_VANCE, UnknownScript_0xbe5be
+ if_equal PHONE_FISHER_WILTON, UnknownScript_0xbe5c4
+ if_equal PHONE_HIKER_PARRY, UnknownScript_0xbe5ca
UnknownScript_0xbe564:
farwritetext UnknownText_0x1b4ecd
@@ -3029,14 +3080,14 @@ UnknownScript_0xbe5ca:
UnknownScript_0xbe5d0:
checkcode VAR_CALLERID
- if_equal $6, UnknownScript_0xbe5f2
- if_equal $c, UnknownScript_0xbe5f8
- if_equal $e, UnknownScript_0xbe5fe
- if_equal $12, UnknownScript_0xbe604
- if_equal $15, UnknownScript_0xbe60a
- if_equal $1a, UnknownScript_0xbe610
- if_equal $1f, UnknownScript_0xbe616
- if_equal $24, UnknownScript_0xbe61c
+ if_equal PHONE_POKEFAN_BEVERLY, UnknownScript_0xbe5f2
+ if_equal PHONE_COOLTRAINERF_BETH, UnknownScript_0xbe5f8
+ if_equal PHONE_COOLTRAINERF_REENA, UnknownScript_0xbe5fe
+ if_equal PHONE_PICNICKER_LIZ, UnknownScript_0xbe604
+ if_equal PHONE_PICNICKER_GINA, UnknownScript_0xbe60a
+ if_equal PHONE_LASS_DANA, UnknownScript_0xbe610
+ if_equal PHONE_PICNICKER_TIFFANY, UnknownScript_0xbe616
+ if_equal PHONE_PICNICKER_ERIN, UnknownScript_0xbe61c
UnknownScript_0xbe5f2:
farwritetext UnknownText_0x1b502b
@@ -3104,27 +3155,27 @@ String_be65b: db "Sister@"
String_be662: db "Brother@"
-UnknownScript_0xbe66a:: ; 0xbe66a
+TalkToTrainerScript:: ; 0xbe66a
faceplayer
trainerstatus $2
- iftrue UnknownScript_0xbe698
+ iftrue AlreadyBeatenTrainerScript
loadtrainerdata
playrammusic
- jump UnknownScript_0xbe68a
+ jump StartBattleWithMapTrainerScript
; 0xbe675
-UnknownScript_0xbe675:: ; 0xbe675
+SeenByTrainerScript:: ; 0xbe675
loadtrainerdata
playrammusic
- showemote $0, $fe, 30
+ showemote EMOTE_SHOCK, -2, 30
callasm Function831e
applymovement2 MovementBuffer
- writepersonxy $fe
- faceperson $0, $fe
- jump UnknownScript_0xbe68a
+ writepersonxy -2
+ faceperson $0, -2
+ jump StartBattleWithMapTrainerScript
; 0xbe68a
-UnknownScript_0xbe68a: ; 0xbe68a
+StartBattleWithMapTrainerScript: ; 0xbe68a
loadfont
trainertext $0
closetext
@@ -3132,9 +3183,9 @@ UnknownScript_0xbe68a: ; 0xbe68a
loadtrainerdata
startbattle
returnafterbattle
- trainerstatus $1
- loadvar wd04d, $ff
+ trainerstatus 1
+ loadvar wd04d, -1
-UnknownScript_0xbe698:
+AlreadyBeatenTrainerScript:
scripttalkafter
; 0xbe699
diff --git a/engine/pokedex.asm b/engine/pokedex.asm
index 5bf01fb8e..25b291ffb 100644
--- a/engine/pokedex.asm
+++ b/engine/pokedex.asm
@@ -899,10 +899,9 @@ asm_4065d: ; 4065d (10:465d)
ld e, a
ld d, 0
ld hl, Unknown_40a3e + 2
+rept 4
add hl, de
- add hl, de
- add hl, de
- add hl, de
+endr
ld a, [hli]
ld h, [hl]
ld l, a
@@ -1339,10 +1338,9 @@ Function409f1: ; 409f1 (10:49f1)
jr z, .asm_40a39
push af
ld hl, Unknown_40a3e
+rept 4
add hl, de
- add hl, de
- add hl, de
- add hl, de
+endr
ld a, [hli]
ld h, [hl]
ld l, a
@@ -1883,15 +1881,9 @@ Function40fcd: ; 40fcd (10:4fcd)
ld e, a
ld d, 0
ld hl, Strings_40fe4
+rept 9
add hl, de
- add hl, de
- add hl, de
- add hl, de
- add hl, de
- add hl, de
- add hl, de
- add hl, de
- add hl, de
+endr
ld e, l
ld d, h
pop hl
@@ -2406,8 +2398,9 @@ Function41427: ; 41427
Function41432: ; 41432
ld e, a
ld d, 0
+rept 2
add hl, de
- add hl, de
+endr
ld a, [hli]
ld h, [hl]
ld l, a
diff --git a/engine/predef.asm b/engine/predef.asm
new file mode 100644
index 000000000..c886e4a84
--- /dev/null
+++ b/engine/predef.asm
@@ -0,0 +1,108 @@
+GetPredefPointer:: ; 854b
+; Return the bank and address of PredefID in a and PredefAddress.
+
+; Save hl for later (back in Predef)
+ ld a, h
+ ld [PredefTemp], a
+ ld a, l
+ ld [PredefTemp + 1], a
+
+ push de
+ ld a, [PredefID]
+ ld e, a
+ ld d, 0
+ ld hl, PredefPointers
+rept 3
+ add hl,de
+endr
+ pop de
+
+ ld a, [hli]
+ ld [PredefAddress + 1], a
+ ld a, [hli]
+ ld [PredefAddress], a
+ ld a, [hl]
+
+ ret
+; 856b
+
+PredefPointers:: ; 856b
+; $4b Predef pointers
+; address, bank
+
+ add_predef LearnMove ; $0
+ add_predef Predef1
+ add_predef HealParty
+ add_predef FlagPredef
+ add_predef Functionc699
+ add_predef FillPP
+ add_predef Functiond88c
+ add_predef Functionda96
+ add_predef Functiondb3f ; $8
+ add_predef Functionde6e
+ add_predef GiveEgg
+ add_predef Functionc6e0
+ add_predef Functione167
+ add_predef Functione17b
+ add_predef CanLearnTMHMMove
+ add_predef GetTMHMMove
+ add_predef Function28eef ; $ 10
+ add_predef PrintMoveDesc
+ add_predef UpdatePlayerHUD
+ add_predef FillBox
+ add_predef Function3d873
+ add_predef UpdateEnemyHUD
+ add_predef StartBattle
+ add_predef FillInExpBar
+ add_predef Function3f43d ; $18
+ add_predef Function3f47c
+ add_predef LearnLevelMoves
+ add_predef FillMoves
+ add_predef Function421e6
+ add_predef Function28f63
+ add_predef Function28f24
+ add_predef Function5084a
+ add_predef ListMoves ; $20
+ add_predef Function50d2e
+ add_predef Function50cdb
+ add_predef Function50c50
+ add_predef GetGender
+ add_predef StatsScreenInit
+ add_predef DrawPlayerHP
+ add_predef DrawEnemyHP
+ add_predef PrintTempMonStats ; $28
+ add_predef GetTypeName
+ add_predef PrintMoveType
+ add_predef PrintType
+ add_predef PrintMonTypes
+ add_predef GetUnownLetter
+ add_predef Functioncbcdd
+ add_predef Predef2F
+ add_predef Function9853 ; $30
+ add_predef Function864c
+ add_predef Function91d11
+ add_predef CheckContestMon
+ add_predef Function8c20f
+ add_predef Function8c000
+ add_predef Function8c000_2
+ add_predef PlayBattleAnim
+ add_predef Predef38 ; $38
+ add_predef Predef39
+ add_predef Functionfd1d0
+ add_predef PartyMonItemName
+ add_predef GetFrontpic
+ add_predef GetBackpic
+ add_predef Function5108b
+ add_predef GetTrainerPic
+ add_predef DecompressPredef ; $40
+ add_predef Function347d3
+ add_predef ConvertMon_1to2
+ add_predef Functionfb877
+ add_predef Functiond0000
+ add_predef Function50d0a
+ add_predef Functiond00a3
+ add_predef Functiond008e
+ add_predef Functiond0669 ; $48
+ add_predef Functiond066e
+ dbw $ff, Function2d43 ; ????
+; 864c
diff --git a/engine/radio.asm b/engine/radio.asm
new file mode 100644
index 000000000..35117668f
--- /dev/null
+++ b/engine/radio.asm
@@ -0,0 +1,2115 @@
+PlayRadioShow: ; b8612
+ ld a, [wd002]
+ cp 8
+ jr nc, .ok
+ ld a, [StatusFlags2]
+ bit 0, a
+ jr z, .ok
+ call IsInJohto
+ and a
+ jr nz, .ok
+ ld a, 7
+ ld [wd002], a
+.ok
+ ld a, [wd002]
+ ld e, a
+ ld d, 0
+ ld hl, RadioJumptable
+rept 2
+ add hl, de
+endr
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ jp [hl]
+
+RadioJumptable: ; b863a (2e:463a)
+ dw MaryOakShow1
+ dw MaryOakShow2
+ dw BenMonMusic1
+ dw DJReed1
+ dw Functionb8f12
+ dw Functionb8cbf
+ dw Functionb8b50
+ dw Functionb8e72
+ dw Functionb8ef7
+ dw Functionb8f00
+ dw Functionb8f09
+ dw Functionb8752
+ dw Functionb875a
+ dw Functionb8762
+ dw Functionb8810
+ dw Functionb8818
+ dw Functionb883e
+ dw Functionb8854
+ dw Functionb88d9
+ dw Functionb8a6c
+ dw Functionb8aa4
+ dw Functionb8aac
+ dw Functionb8ab4
+ dw Functionb8b40
+ dw Functionb8b48
+ dw Functionb8b63
+ dw Functionb8b6b
+ dw Functionb8b7d
+ dw Functionb8b8f
+ dw Functionb8b5b
+ dw Functionb8bf5
+ dw Functionb8bfd
+ dw Functionb8c05
+ dw Functionb8c0d
+ dw Functionb8c15
+ dw Functionb8c1d
+ dw Functionb8c25
+ dw Functionb8c3e
+ dw Functionb8c46
+ dw Functionb8c4e
+ dw Functionb8c56
+ dw Functionb8c5e
+ dw Functionb8c6e
+ dw Functionb8c76
+ dw Functionb8cca
+ dw Functionb8cd2
+ dw Functionb8cf2
+ dw Functionb8d56
+ dw Functionb8ded
+ dw Functionb8e28
+ dw Functionb8e7d
+ dw Functionb8e85
+ dw Functionb8e8d
+ dw Functionb8e95
+ dw Functionb8e9d
+ dw Functionb8ea5
+ dw Functionb8ead
+ dw Functionb8eb5
+ dw Functionb8ebd
+ dw Functionb896e
+ dw Functionb8994
+ dw Functionb89a9
+ dw Functionb89c6
+ dw Functionb89d7
+ dw Functionb8f3f
+ dw Functionb8f47
+ dw Functionb8f55
+ dw Functionb909c
+ dw Functionb90a4
+ dw Functionb90ac
+ dw Functionb90c5
+ dw Functionb90d2
+ dw Functionb90da
+ dw Functionb90e2
+ dw Functionb90ea
+ dw Functionb90f2
+ dw Functionb90fa
+ dw Functionb9102
+ dw Functionb910a
+ dw Functionb9112
+ dw Functionb911a
+ dw Functionb9122
+ dw Functionb912a
+ dw Functionb9152
+ dw Functionb8728
+ dw Functionb8abc
+ dw Functionb8ac4
+ dw Functionb8acc
+
+
+Functionb86ea: ; b86ea (2e:46ea)
+ ld [wd003], a
+ ld hl, wd00c
+ ld a, [wd005]
+ cp $2
+ jr nc, .asm_b870a
+ inc hl
+ ld [hl], $0
+ inc a
+ ld [wd005], a
+ cp $2
+ jr nz, .asm_b870a
+ bccoord 1, 16
+ call Function13e5
+ jr .asm_b870d
+.asm_b870a
+ call PrintTextBoxText
+.asm_b870d
+ ld a, $54
+ ld [wd002], a
+ ld a, $64
+ ld [wd004], a
+ ret
+; b8718 (2e:4718)
+
+Functionb8718: ; b8718
+ push hl
+ ld b, $28
+.asm_b871b
+ ld a, [hl]
+ cp $e8
+ jr nz, .asm_b8722
+ ld [hl], $7f
+
+.asm_b8722
+ inc hl
+ dec b
+ jr nz, .asm_b871b
+ pop hl
+ ret
+; b8728
+
+Functionb8728: ; b8728 (2e:4728)
+ ld hl, wd004
+ ld a, [hl]
+ and a
+ jr z, .asm_b8731
+ dec [hl]
+ ret
+.asm_b8731
+ ld a, [wd003]
+ ld [wd002], a
+ ld a, [wd005]
+ cp $1
+ call nz, Functionb8a0b
+ jp Functionb8a17
+
+MaryOakShow1: ; b8742 (2e:4742)
+ ld a, $5
+ ld [wd006], a
+ call Functionb91eb
+ ld hl, UnknownText_0xb8820
+ ld a, $b
+ jp NextRadioLine
+
+Functionb8752: ; b8752 (2e:4752)
+ ld hl, UnknownText_0xb8825
+ ld a, $c
+ jp NextRadioLine
+
+Functionb875a: ; b875a (2e:475a)
+ ld hl, UnknownText_0xb882a
+ ld a, $d
+ jp NextRadioLine
+
+Functionb8762: ; b8762 (2e:4762)
+ call Random
+ and $1f
+ cp $f
+ jr nc, Functionb8762
+ ld hl, Unknown_b87f2
+ ld c, a
+ ld b, 0
+rept 2
+ add hl, bc
+endr
+ ld b, [hl]
+ inc hl
+ ld c, [hl]
+ push bc
+
+ ld hl, WildMons1
+.loop
+ ld a, BANK(WildMons1)
+ call GetFarByte
+ cp $ff
+ jr z, .done2
+ inc hl
+ cp b
+ jr nz, .next
+ ld a, BANK(WildMons1)
+ call GetFarByte
+ cp c
+ jr z, .done
+.next
+ dec hl
+ ld de, $2f
+ add hl, de
+ jr .loop
+
+.done
+rept 4
+ inc hl
+endr
+
+.not3
+ call Random
+ and 3
+ cp 3
+ jr z, .not3
+
+ ld bc, $e
+ call AddNTimes
+.loop2
+ call Random
+ and 7
+ cp 2
+ jr c, .loop2
+ cp 5
+ jr nc, .loop2
+ ld e, a
+ ld d, 0
+rept 2
+ add hl, de
+endr
+ inc hl
+ ld a, BANK(WildMons1)
+ call GetFarByte
+ ld [wd265], a
+ ld [CurPartySpecies], a
+ call GetPokemonName
+ ld hl, StringBuffer1
+ ld de, wd050
+ ld bc, $b
+ call CopyBytes
+
+ pop bc
+ call GetWorldMapLocation
+ ld e, a
+ callba GetLandmarkName
+ ld hl, UnknownText_0xb882f
+ call Functionb91dc
+ ld a, $e
+ jp Functionb86ea
+
+.done2
+ pop bc
+ ld a, $0
+ jp Functionb86ea
+; b87f2 (2e:47f2)
+
+Unknown_b87f2: ; b87f2
+ map ROUTE_29
+ map ROUTE_46
+ map ROUTE_30
+ map ROUTE_32
+ map ROUTE_34
+ map ROUTE_35
+ map ROUTE_37
+ map ROUTE_38
+ map ROUTE_39
+ map ROUTE_42
+ map ROUTE_43
+ map ROUTE_44
+ map ROUTE_45
+ map ROUTE_36
+ map ROUTE_31
+; b8810
+
+Functionb8810: ; b8810 (2e:4810)
+ ld hl, UnknownText_0xb8834
+ ld a, $f
+ jp NextRadioLine
+
+Functionb8818: ; b8818 (2e:4818)
+ ld hl, UnknownText_0xb8839
+ ld a, $10
+ jp NextRadioLine
+; b8820 (2e:4820)
+
+UnknownText_0xb8820: ; 0xb8820
+ ; MARY: PROF.OAK'S
+ text_jump UnknownText_0x1bc81a
+ db "@"
+; 0xb8825
+
+UnknownText_0xb8825: ; 0xb8825
+ ; #MON TALK!
+ text_jump UnknownText_0x1bc82d
+ db "@"
+; 0xb882a
+
+UnknownText_0xb882a: ; 0xb882a
+ ; With me, MARY!
+ text_jump UnknownText_0x1bc83a
+ db "@"
+; 0xb882f
+
+UnknownText_0xb882f: ; 0xb882f
+ ; OAK: @ @
+ text_jump UnknownText_0x1bc84b
+ db "@"
+; 0xb8834
+
+UnknownText_0xb8834: ; 0xb8834
+ ; may be seen around
+ text_jump UnknownText_0x1bc858
+ db "@"
+; 0xb8839
+
+UnknownText_0xb8839: ; 0xb8839
+ ; @ .
+ text_jump UnknownText_0x1bc86d
+ db "@"
+; 0xb883e
+
+Functionb883e: ; b883e (2e:483e)
+ ld a, [CurPartySpecies]
+ ld [wd265], a
+ call GetPokemonName
+ ld hl, UnknownText_0xb884f
+ ld a, $11
+ jp NextRadioLine
+; b884f (2e:484f)
+
+UnknownText_0xb884f: ; 0xb884f
+ ; MARY: @ 's
+ text_jump UnknownText_0x1bc876
+ db "@"
+; 0xb8854
+
+Functionb8854: ; b8854 (2e:4854)
+ call Random
+ and $f
+ ld e, a
+ ld d, 0
+ ld hl, Unknown_b8869
+rept 2
+ add hl, de
+endr
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ ld a, $12
+ jp NextRadioLine
+; b8869 (2e:4869)
+
+Unknown_b8869: ; b8869
+ dw UnknownText_0xb8889
+ dw UnknownText_0xb888e
+ dw UnknownText_0xb8893
+ dw UnknownText_0xb8898
+ dw UnknownText_0xb889d
+ dw UnknownText_0xb88a2
+ dw UnknownText_0xb88a7
+ dw UnknownText_0xb88ac
+ dw UnknownText_0xb88b1
+ dw UnknownText_0xb88b6
+ dw UnknownText_0xb88bb
+ dw UnknownText_0xb88c0
+ dw UnknownText_0xb88c5
+ dw UnknownText_0xb88ca
+ dw UnknownText_0xb88cf
+ dw UnknownText_0xb88d4
+; b8889
+
+UnknownText_0xb8889: ; 0xb8889
+ ; sweet and adorably
+ text_jump UnknownText_0x1bc885
+ db "@"
+; 0xb888e
+
+UnknownText_0xb888e: ; 0xb888e
+ ; wiggly and slickly
+ text_jump UnknownText_0x1bc89a
+ db "@"
+; 0xb8893
+
+UnknownText_0xb8893: ; 0xb8893
+ ; aptly named and
+ text_jump UnknownText_0x1bc8af
+ db "@"
+; 0xb8898
+
+UnknownText_0xb8898: ; 0xb8898
+ ; undeniably kind of
+ text_jump UnknownText_0x1bc8c1
+ db "@"
+; 0xb889d
+
+UnknownText_0xb889d: ; 0xb889d
+ ; so, so unbearably
+ text_jump UnknownText_0x1bc8d6
+ db "@"
+; 0xb88a2
+
+UnknownText_0xb88a2: ; 0xb88a2
+ ; wow, impressively
+ text_jump UnknownText_0x1bc8ea
+ db "@"
+; 0xb88a7
+
+UnknownText_0xb88a7: ; 0xb88a7
+ ; almost poisonously
+ text_jump UnknownText_0x1bc8fe
+ db "@"
+; 0xb88ac
+
+UnknownText_0xb88ac: ; 0xb88ac
+ ; ooh, so sensually
+ text_jump UnknownText_0x1bc913
+ db "@"
+; 0xb88b1
+
+UnknownText_0xb88b1: ; 0xb88b1
+ ; so mischievously
+ text_jump UnknownText_0x1bc927
+ db "@"
+; 0xb88b6
+
+UnknownText_0xb88b6: ; 0xb88b6
+ ; so very topically
+ text_jump UnknownText_0x1bc93a
+ db "@"
+; 0xb88bb
+
+UnknownText_0xb88bb: ; 0xb88bb
+ ; sure addictively
+ text_jump UnknownText_0x1bc94e
+ db "@"
+; 0xb88c0
+
+UnknownText_0xb88c0: ; 0xb88c0
+ ; looks in water is
+ text_jump UnknownText_0x1bc961
+ db "@"
+; 0xb88c5
+
+UnknownText_0xb88c5: ; 0xb88c5
+ ; evolution must be
+ text_jump UnknownText_0x1bc975
+ db "@"
+; 0xb88ca
+
+UnknownText_0xb88ca: ; 0xb88ca
+ ; provocatively
+ text_jump UnknownText_0x1bc989
+ db "@"
+; 0xb88cf
+
+UnknownText_0xb88cf: ; 0xb88cf
+ ; so flipped out and
+ text_jump UnknownText_0x1bc999
+ db "@"
+; 0xb88d4
+
+UnknownText_0xb88d4: ; 0xb88d4
+ ; heart-meltingly
+ text_jump UnknownText_0x1bc9ae
+ db "@"
+; 0xb88d9
+
+Functionb88d9: ; b88d9 (2e:48d9)
+ call Random
+ and $f
+ ld e, a
+ ld d, 0
+ ld hl, Unknown_b88fe
+rept 2
+ add hl, de
+endr
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ ld a, [wd006]
+ dec a
+ ld [wd006], a
+ ld a, $d
+ jr nz, .asm_b88fb
+ ld a, $5
+ ld [wd006], a
+ ld a, $3b
+.asm_b88fb
+ jp NextRadioLine
+; b88fe (2e:48fe)
+
+Unknown_b88fe: ; b88fe
+ dw UnknownText_0xb891e
+ dw UnknownText_0xb8923
+ dw UnknownText_0xb8928
+ dw UnknownText_0xb892d
+ dw UnknownText_0xb8932
+ dw UnknownText_0xb8937
+ dw UnknownText_0xb893c
+ dw UnknownText_0xb8941
+ dw UnknownText_0xb8946
+ dw UnknownText_0xb894b
+ dw UnknownText_0xb8950
+ dw UnknownText_0xb8955
+ dw UnknownText_0xb895a
+ dw UnknownText_0xb895f
+ dw UnknownText_0xb8964
+ dw UnknownText_0xb8969
+; b891e
+
+UnknownText_0xb891e: ; 0xb891e
+ ; cute.
+ text_jump UnknownText_0x1bc9c0
+ db "@"
+; 0xb8923
+
+UnknownText_0xb8923: ; 0xb8923
+ ; weird.
+ text_jump UnknownText_0x1bc9c8
+ db "@"
+; 0xb8928
+
+UnknownText_0xb8928: ; 0xb8928
+ ; pleasant.
+ text_jump UnknownText_0x1bc9d1
+ db "@"
+; 0xb892d
+
+UnknownText_0xb892d: ; 0xb892d
+ ; bold, sort of.
+ text_jump UnknownText_0x1bc9dd
+ db "@"
+; 0xb8932
+
+UnknownText_0xb8932: ; 0xb8932
+ ; frightening.
+ text_jump UnknownText_0x1bc9ee
+ db "@"
+; 0xb8937
+
+UnknownText_0xb8937: ; 0xb8937
+ ; suave & debonair!
+ text_jump UnknownText_0x1bc9fd
+ db "@"
+; 0xb893c
+
+UnknownText_0xb893c: ; 0xb893c
+ ; powerful.
+ text_jump UnknownText_0x1bca11
+ db "@"
+; 0xb8941
+
+UnknownText_0xb8941: ; 0xb8941
+ ; exciting.
+ text_jump UnknownText_0x1bca1d
+ db "@"
+; 0xb8946
+
+UnknownText_0xb8946: ; 0xb8946
+ ; groovy!
+ text_jump UnknownText_0x1bca29
+ db "@"
+; 0xb894b
+
+UnknownText_0xb894b: ; 0xb894b
+ ; inspiring.
+ text_jump UnknownText_0x1bca33
+ db "@"
+; 0xb8950
+
+UnknownText_0xb8950: ; 0xb8950
+ ; friendly.
+ text_jump UnknownText_0x1bca40
+ db "@"
+; 0xb8955
+
+UnknownText_0xb8955: ; 0xb8955
+ ; hot, hot, hot!
+ text_jump UnknownText_0x1bca4c
+ db "@"
+; 0xb895a
+
+UnknownText_0xb895a: ; 0xb895a
+ ; stimulating.
+ text_jump UnknownText_0x1bca5d
+ db "@"
+; 0xb895f
+
+UnknownText_0xb895f: ; 0xb895f
+ ; guarded.
+ text_jump UnknownText_0x1bca6c
+ db "@"
+; 0xb8964
+
+UnknownText_0xb8964: ; 0xb8964
+ ; lovely.
+ text_jump UnknownText_0x1bca77
+ db "@"
+; 0xb8969
+
+UnknownText_0xb8969: ; 0xb8969
+ ; speedy.
+ text_jump UnknownText_0x1bca81
+ db "@"
+; 0xb896e
+
+Functionb896e: ; b896e (2e:496e)
+ callba Function91868
+ ld hl, UnknownText_0xb8993
+ call PrintText
+ call WaitBGMap
+ ld hl, UnknownText_0xb898e
+ call PrintText
+ ld a, $3c
+ ld [wd002], a
+ ld a, $64
+ ld [wd004], a
+ ret
+; b898e (2e:498e)
+
+UnknownText_0xb898e: ; 0xb898e
+ ; #MON
+ text_jump UnknownText_0x1bca8b
+ db "@"
+; 0xb8993
+
+UnknownText_0xb8993: ; 0xb8993
+ db "@"
+; 0xb8994
+
+Functionb8994: ; b8994 (2e:4994)
+ ld hl, wd004
+ dec [hl]
+ ret nz
+ hlcoord 9, 14
+ ld de, String_b89a4
+ ld a, $3d
+ jp Functionb8a00
+; b89a4 (2e:49a4)
+
+String_b89a4:
+ db "#MON@"
+; b89a9
+
+Functionb89a9: ; b89a9 (2e:49a9)
+ ld hl, wd004
+ dec [hl]
+ ret nz
+ hlcoord 1, 16
+ ld de, String_b89b9
+ ld a, $3e
+ jp Functionb8a00
+; b89b9 (2e:49b9)
+
+String_b89b9:
+ db "#MON Channel@"
+; b89c6
+
+Functionb89c6: ; b89c6 (2e:49c6)
+ ld hl, wd004
+ dec [hl]
+ ret nz
+ hlcoord 12, 16
+ ld de, String_b89d6
+ ld a, $3f
+ jp Functionb8a00
+; b89d6 (2e:49d6)
+
+String_b89d6:
+ db "@"
+; b89d7
+
+Functionb89d7: ; b89d7 (2e:49d7)
+ ld hl, wd004
+ dec [hl]
+ ret nz
+ ld de, $1d
+ callab Function91854
+ ld hl, UnknownText_0xb89ff
+ call PrintText
+ ld a, $d
+ ld [wd003], a
+ xor a
+ ld [wd005], a
+ ld a, $54
+ ld [wd002], a
+ ld a, $a
+ ld [wd004], a
+ ret
+; b89ff (2e:49ff)
+
+UnknownText_0xb89ff: ; 0xb89ff
+ db "@"
+; 0xb8a00
+
+Functionb8a00: ; b8a00 (2e:4a00)
+ ld [wd002], a
+ ld a, $64
+ ld [wd004], a
+ jp PlaceString
+
+Functionb8a0b: ; b8a0b (2e:4a0b)
+ hlcoord 0, 15
+ decoord 0, 13
+ ld bc, $28
+ jp CopyBytes
+
+Functionb8a17: ; b8a17 (2e:4a17)
+ hlcoord 1, 15
+ ld bc, $12
+ ld a, $7f
+ call ByteFill
+ hlcoord 1, 16
+ ld bc, $12
+ ld a, $7f
+ jp ByteFill
+
+Functionb8a2d: ; b8a2d (2e:4a2d)
+ push hl
+ push de
+ ld a, [CurPartySpecies]
+ dec a
+ rlca
+ rlca
+ and 3
+ ld hl, .pokedexbanks
+ ld d, 0
+ ld e, a
+ add hl, de
+ ld a, [hl]
+ pop de
+ pop hl
+ ret
+; b8a42 (2e:4a42)
+
+.pokedexbanks
+ db BANK(PokedexEntries1)
+ db BANK(PokedexEntries2)
+ db BANK(PokedexEntries3)
+ db BANK(PokedexEntries4)
+; b8a46
+
+MaryOakShow2: ; b8a46 (2e:4a46)
+ call Functionb91eb
+.asm_b8a49
+ call Random
+ cp CELEBI
+ jr nc, .asm_b8a49
+ ld c, a
+ push bc
+ ld a, c
+ call CheckCaughtMon
+ pop bc
+ jr z, .asm_b8a49
+ inc c
+ ld a, c
+ ld [CurPartySpecies], a
+ ld [wd265], a
+ call GetPokemonName
+ ld hl, UnknownText_0xb8b30
+ ld a, $13
+ jp NextRadioLine
+
+Functionb8a6c: ; b8a6c (2e:4a6c)
+ ld a, [CurPartySpecies]
+ dec a
+ ld hl, PokedexDataPointerTable
+ ld c, a
+ ld b, 0
+rept 2
+ add hl, bc
+endr
+ ld a, BANK(PokedexDataPointerTable)
+ call GetFarHalfword
+ call Functionb8a2d
+ push af
+ push hl
+ call Functionb8af3
+ dec hl
+ ld [hl], $57
+ ld hl, wd26b
+ call Functionb91dc
+ pop hl
+ pop af
+ call Functionb8b11
+rept 4
+ inc hl
+endr
+ ld a, l
+ ld [wd26b], a
+ ld a, h
+ ld [wd26c], a
+ ld a, $14
+ jp Functionb86ea
+
+Functionb8aa4: ; b8aa4 (2e:4aa4)
+ call Functionb8ad4
+ ld a, $15
+ jp Functionb86ea
+
+Functionb8aac: ; b8aac (2e:4aac)
+ call Functionb8ad4
+ ld a, $16
+ jp Functionb86ea
+
+Functionb8ab4: ; b8ab4 (2e:4ab4)
+ call Functionb8ad4
+ ld a, $55
+ jp Functionb86ea
+
+Functionb8abc: ; b8abc (2e:4abc)
+ call Functionb8ad4
+ ld a, $56
+ jp Functionb86ea
+
+Functionb8ac4: ; b8ac4 (2e:4ac4)
+ call Functionb8ad4
+ ld a, $57
+ jp Functionb86ea
+
+Functionb8acc: ; b8acc (2e:4acc)
+ call Functionb8ad4
+ ld a, $1
+ jp Functionb86ea
+
+Functionb8ad4: ; b8ad4 (2e:4ad4)
+ ld a, [wd26b]
+ ld l, a
+ ld a, [wd26c]
+ ld h, a
+ ld a, [wd26d]
+ push af
+ push hl
+ call Functionb8af3
+ dec hl
+ ld [hl], $57
+ ld hl, wd26b
+ call Functionb91dc
+ pop hl
+ pop af
+ call Functionb8b11
+ ret
+
+Functionb8af3: ; b8af3 (2e:4af3)
+ ld de, wd26d
+ ld bc, $13
+ call FarCopyBytes
+ ld hl, wd26b
+ ld [hl], $0
+ inc hl
+ ld [hl], $4f
+ inc hl
+.asm_b8b05
+ ld a, [hli]
+ cp $50
+ ret z
+ cp $4e
+ ret z
+ cp $5f
+ ret z
+ jr .asm_b8b05
+
+Functionb8b11: ; b8b11 (2e:4b11)
+ ld d, a
+.asm_b8b12
+ ld a, d
+ call GetFarByte
+ inc hl
+ cp $50
+ jr z, .asm_b8b23
+ cp $4e
+ jr z, .asm_b8b23
+ cp $5f
+ jr nz, .asm_b8b12
+.asm_b8b23
+ ld a, l
+ ld [wd26b], a
+ ld a, h
+ ld [wd26c], a
+ ld a, d
+ ld [wd26d], a
+ ret
+; b8b30 (2e:4b30)
+
+UnknownText_0xb8b30: ; 0xb8b30
+ ; @ @
+ text_jump UnknownText_0x1bca91
+ db "@"
+; 0xb8b35
+
+BenMonMusic1: ; b8b35 (2e:4b35)
+ call Functionb8b90
+ ld hl, UnknownText_0xb8baa
+ ld a, $17
+ jp NextRadioLine
+
+Functionb8b40: ; b8b40 (2e:4b40)
+ ld hl, UnknownText_0xb8baf
+ ld a, $18
+ jp NextRadioLine
+
+Functionb8b48: ; b8b48 (2e:4b48)
+ ld hl, UnknownText_0xb8bb4
+ ld a, $19
+ jp NextRadioLine
+
+Functionb8b50: ; b8b50 (2e:4b50)
+ call Functionb8b90
+ ld hl, UnknownText_0xb8bb9
+ ld a, $1d
+ jp NextRadioLine
+
+Functionb8b5b: ; b8b5b (2e:4b5b)
+ ld hl, UnknownText_0xb8bbe
+ ld a, $19
+ jp NextRadioLine
+
+Functionb8b63: ; b8b63 (2e:4b63)
+ ld hl, UnknownText_0xb8bc3
+ ld a, $1a
+ jp NextRadioLine
+
+Functionb8b6b: ; b8b6b (2e:4b6b)
+ call GetWeekday
+ and 1
+ ld hl, UnknownText_0xb8bc8
+ jr z, .asm_b8b78
+ ld hl, UnknownText_0xb8bcd
+.asm_b8b78
+ ld a, $1b
+ jp NextRadioLine
+
+Functionb8b7d: ; b8b7d (2e:4b7d)
+ call GetWeekday
+ and 1
+ ld hl, UnknownText_0xb8bd2
+ jr z, .asm_b8b8a
+ ld hl, UnknownText_0xb8bd7
+.asm_b8b8a
+ ld a, $1c
+ jp NextRadioLine
+
+Functionb8b8f: ; b8b8f (2e:4b8f)
+ ret
+
+Functionb8b90: ; b8b90 (2e:4b90)
+ call Function1052
+ call PrintText
+ ld de, MUSIC_POKEMON_MARCH
+ call GetWeekday
+ and 1
+ jr z, .done
+ ld de, MUSIC_POKEMON_LULLABY
+.done
+ callab Function91854
+ ret
+; b8baa (2e:4baa)
+
+UnknownText_0xb8baa: ; 0xb8baa
+ ; BEN: #MON MUSIC
+ text_jump UnknownText_0x1bca99
+ db "@"
+; 0xb8baf
+
+UnknownText_0xb8baf: ; 0xb8baf
+ ; CHANNEL!
+ text_jump UnknownText_0x1bcaab
+ db "@"
+; 0xb8bb4
+
+UnknownText_0xb8bb4: ; 0xb8bb4
+ ; It's me, DJ BEN!
+ text_jump UnknownText_0x1bcab6
+ db "@"
+; 0xb8bb9
+
+UnknownText_0xb8bb9: ; 0xb8bb9
+ ; FERN: #MUSIC!
+ text_jump UnknownText_0x1bcac8
+ db "@"
+; 0xb8bbe
+
+UnknownText_0xb8bbe: ; 0xb8bbe
+ ; With DJ FERN!
+ text_jump UnknownText_0x1bcad8
+ db "@"
+; 0xb8bc3
+
+UnknownText_0xb8bc3: ; 0xb8bc3
+ ; Today's @ ,
+ text_jump UnknownText_0x1bcae8
+ db "@"
+; 0xb8bc8
+
+UnknownText_0xb8bc8: ; 0xb8bc8
+ ; so let us jam to
+ text_jump UnknownText_0x1bcaf6
+ db "@"
+; 0xb8bcd
+
+UnknownText_0xb8bcd: ; 0xb8bcd
+ ; so chill out to
+ text_jump UnknownText_0x1bcb09
+ db "@"
+; 0xb8bd2
+
+UnknownText_0xb8bd2: ; 0xb8bd2
+ ; #MON March!
+ text_jump UnknownText_0x1bcb1b
+ db "@"
+; 0xb8bd7
+
+UnknownText_0xb8bd7: ; 0xb8bd7
+ ; #MON Lullaby!
+ text_jump UnknownText_0x1bcb29
+ db "@"
+; 0xb8bdc
+
+DJReed1: ; b8bdc (2e:4bdc)
+ call Functionb91eb
+ callab Functionc434
+ jr nc, .asm_b8bed
+ callab Functionc422
+.asm_b8bed
+ ld hl, UnknownText_0xb8c7e
+ ld a, $1e
+ jp NextRadioLine
+
+Functionb8bf5: ; b8bf5 (2e:4bf5)
+ ld hl, UnknownText_0xb8c83
+ ld a, $1f
+ jp NextRadioLine
+
+Functionb8bfd: ; b8bfd (2e:4bfd)
+ ld hl, UnknownText_0xb8c88
+ ld a, $20
+ jp NextRadioLine
+
+Functionb8c05: ; b8c05 (2e:4c05)
+ ld hl, UnknownText_0xb8c8d
+ ld a, $21
+ jp NextRadioLine
+
+Functionb8c0d: ; b8c0d (2e:4c0d)
+ ld hl, UnknownText_0xb8c92
+ ld a, $22
+ jp NextRadioLine
+
+Functionb8c15: ; b8c15 (2e:4c15)
+ ld hl, UnknownText_0xb8c97
+ ld a, $23
+ jp NextRadioLine
+
+Functionb8c1d: ; b8c1d (2e:4c1d)
+ ld hl, UnknownText_0xb8c9c
+ ld a, $24
+ jp NextRadioLine
+
+Functionb8c25: ; b8c25 (2e:4c25)
+ ld hl, StringBuffer1
+ ld de, wdc9f
+ ld bc, $8205
+ call PrintNum
+ ld a, $50
+ ld [StringBuffer1 + 5], a
+ ld hl, UnknownText_0xb8ca1
+ ld a, $25
+ jp NextRadioLine
+
+Functionb8c3e: ; b8c3e (2e:4c3e)
+ ld hl, UnknownText_0xb8ca6
+ ld a, $26
+ jp NextRadioLine
+
+Functionb8c46: ; b8c46 (2e:4c46)
+ ld hl, UnknownText_0xb8c9c
+ ld a, $27
+ jp NextRadioLine
+
+Functionb8c4e: ; b8c4e (2e:4c4e)
+ ld hl, UnknownText_0xb8ca1
+ ld a, $28
+ jp NextRadioLine
+
+Functionb8c56: ; b8c56 (2e:4c56)
+ ld hl, UnknownText_0xb8cab
+ ld a, $29
+ jp NextRadioLine
+
+Functionb8c5e: ; b8c5e (2e:4c5e)
+ ld hl, UnknownText_0xb8cb0
+ call Random
+ and a
+ ld a, $3
+ jr nz, .asm_b8c6b
+ ld a, $2a
+.asm_b8c6b
+ jp NextRadioLine
+
+Functionb8c6e: ; b8c6e (2e:4c6e)
+ ld hl, UnknownText_0xb8cb5
+ ld a, $2b
+ jp NextRadioLine
+
+Functionb8c76: ; b8c76 (2e:4c76)
+ ld hl, UnknownText_0xb8cba
+ ld a, $3
+ jp NextRadioLine
+; b8c7e (2e:4c7e)
+
+UnknownText_0xb8c7e: ; 0xb8c7e
+ ; REED: Yeehaw! How
+ text_jump UnknownText_0x1bcb39
+ db "@"
+; 0xb8c83
+
+UnknownText_0xb8c83: ; 0xb8c83
+ ; y'all doin' now?
+ text_jump UnknownText_0x1bcb4d
+ db "@"
+; 0xb8c88
+
+UnknownText_0xb8c88: ; 0xb8c88
+ ; Whether you're up
+ text_jump UnknownText_0x1bcb60
+ db "@"
+; 0xb8c8d
+
+UnknownText_0xb8c8d: ; 0xb8c8d
+ ; or way down low,
+ text_jump UnknownText_0x1bcb73
+ db "@"
+; 0xb8c92
+
+UnknownText_0xb8c92: ; 0xb8c92
+ ; don't you miss the
+ text_jump UnknownText_0x1bcb86
+ db "@"
+; 0xb8c97
+
+UnknownText_0xb8c97: ; 0xb8c97
+ ; LUCKY NUMBER SHOW!
+ text_jump UnknownText_0x1bcb9a
+ db "@"
+; 0xb8c9c
+
+UnknownText_0xb8c9c: ; 0xb8c9c
+ ; This week's Lucky
+ text_jump UnknownText_0x1bcbaf
+ db "@"
+; 0xb8ca1
+
+UnknownText_0xb8ca1: ; 0xb8ca1
+ ; Number is @ !
+ text_jump UnknownText_0x1bcbc2
+ db "@"
+; 0xb8ca6
+
+UnknownText_0xb8ca6: ; 0xb8ca6
+ ; I'll repeat that!
+ text_jump UnknownText_0x1bcbd6
+ db "@"
+; 0xb8cab
+
+UnknownText_0xb8cab: ; 0xb8cab
+ ; Match it and go to
+ text_jump UnknownText_0x1bcbe9
+ db "@"
+; 0xb8cb0
+
+UnknownText_0xb8cb0: ; 0xb8cb0
+ ; the RADIO TOWER!
+ text_jump UnknownText_0x1bcbfe
+ db "@"
+; 0xb8cb5
+
+UnknownText_0xb8cb5: ; 0xb8cb5
+ ; …Repeating myself
+ text_jump UnknownText_0x1bcc11
+ db "@"
+; 0xb8cba
+
+UnknownText_0xb8cba: ; 0xb8cba
+ ; gets to be a drag…
+ text_jump UnknownText_0x1bcc25
+ db "@"
+; 0xb8cbf
+
+Functionb8cbf: ; b8cbf (2e:4cbf)
+ call Functionb91eb
+ ld hl, UnknownText_0xb8ce3
+ ld a, $2c
+ jp NextRadioLine
+
+Functionb8cca: ; b8cca (2e:4cca)
+ ld hl, UnknownText_0xb8ce8
+ ld a, $2d
+ jp NextRadioLine
+
+Functionb8cd2: ; b8cd2 (2e:4cd2)
+ ld hl, UnknownText_0xb8ced
+ call Random
+ cp $7b
+ ld a, $2e
+ jr c, .asm_b8ce0
+ ld a, $30
+.asm_b8ce0
+ jp NextRadioLine
+; b8ce3 (2e:4ce3)
+
+UnknownText_0xb8ce3: ; 0xb8ce3
+ ; PLACES AND PEOPLE!
+ text_jump UnknownText_0x1bcc3a
+ db "@"
+; 0xb8ce8
+
+UnknownText_0xb8ce8: ; 0xb8ce8
+ ; Brought to you by
+ text_jump UnknownText_0x1bcc4f
+ db "@"
+; 0xb8ced
+
+UnknownText_0xb8ced: ; 0xb8ced
+ ; me, DJ LILY!
+ text_jump UnknownText_0x1bcc63
+ db "@"
+; 0xb8cf2
+
+Functionb8cf2: ; b8cf2 (2e:4cf2)
+ call Random
+ and $7f
+ inc a
+ cp $43
+ jr nc, Functionb8cf2
+ push af
+ ld hl, Unknown_b8d3e
+ ld a, [StatusFlags]
+ bit 6, a
+ jr z, .NotMet
+ ld hl, Unknown_b8d43
+ ld a, [KantoBadges]
+ cp %11111111
+ jr nz, .NotMet
+ ld hl, Unknown_b8d4b
+.NotMet
+ pop af
+ ld c, a
+ ld de, $1
+ push bc
+ call IsInArray
+ pop bc
+ jr c, Functionb8cf2
+ push bc
+ callab Function3952d
+ ld de, StringBuffer1
+ call CopyName1
+ pop bc
+ ld b, $1
+ callab GetTrainerName
+ ld hl, UnknownText_0xb8d51
+ ld a, $2f
+ jp NextRadioLine
+; b8d3e (2e:4d3e)
+
+Unknown_b8d3e: db $0b, $0d, $0e, $0f, $10
+Unknown_b8d43: db $11, $12, $13, $15, $1a, $23, $2e, $40
+Unknown_b8d4b: db $09, $0a, $0c, $2a, $3f
+ db $ff
+; b8d51
+
+UnknownText_0xb8d51: ; 0xb8d51
+ ; @ @ @
+ text_jump UnknownText_0x1bcc72
+ db "@"
+; 0xb8d56
+
+Functionb8d56: ; b8d56 (2e:4d56)
+ call Random
+ and $f
+ ld e, a
+ ld d, 0
+ ld hl, Unknown_b8d7d
+rept 2
+ add hl, de
+endr
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ call Random
+ cp $a
+ ld a, $5
+ jr c, .asm_b8d7a
+ call Random
+ cp $7b
+ ld a, $2e
+ jr c, .asm_b8d7a
+ ld a, $30
+.asm_b8d7a
+ jp NextRadioLine
+; b8d7d (2e:4d7d)
+
+Unknown_b8d7d: ; b8d7d
+ dw UnknownText_0xb8d9d
+ dw UnknownText_0xb8da2
+ dw UnknownText_0xb8da7
+ dw UnknownText_0xb8dac
+ dw UnknownText_0xb8db1
+ dw UnknownText_0xb8db6
+ dw UnknownText_0xb8dbb
+ dw UnknownText_0xb8dc0
+ dw UnknownText_0xb8dc5
+ dw UnknownText_0xb8dca
+ dw UnknownText_0xb8dcf
+ dw UnknownText_0xb8dd4
+ dw UnknownText_0xb8dd9
+ dw UnknownText_0xb8dde
+ dw UnknownText_0xb8de3
+ dw UnknownText_0xb8de8
+; b8d9d
+
+UnknownText_0xb8d9d: ; 0xb8d9d
+ ; is cute.
+ text_jump UnknownText_0x1bcc80
+ db "@"
+; 0xb8da2
+
+UnknownText_0xb8da2: ; 0xb8da2
+ ; is sort of lazy.
+ text_jump UnknownText_0x1bcc8b
+ db "@"
+; 0xb8da7
+
+UnknownText_0xb8da7: ; 0xb8da7
+ ; is always happy.
+ text_jump UnknownText_0x1bcc9e
+ db "@"
+; 0xb8dac
+
+UnknownText_0xb8dac: ; 0xb8dac
+ ; is quite noisy.
+ text_jump UnknownText_0x1bccb1
+ db "@"
+; 0xb8db1
+
+UnknownText_0xb8db1: ; 0xb8db1
+ ; is precocious.
+ text_jump UnknownText_0x1bccc3
+ db "@"
+; 0xb8db6
+
+UnknownText_0xb8db6: ; 0xb8db6
+ ; is somewhat bold.
+ text_jump UnknownText_0x1bccd4
+ db "@"
+; 0xb8dbb
+
+UnknownText_0xb8dbb: ; 0xb8dbb
+ ; is too picky!
+ text_jump UnknownText_0x1bcce8
+ db "@"
+; 0xb8dc0
+
+UnknownText_0xb8dc0: ; 0xb8dc0
+ ; is sort of OK.
+ text_jump UnknownText_0x1bccf8
+ db "@"
+; 0xb8dc5
+
+UnknownText_0xb8dc5: ; 0xb8dc5
+ ; is just so-so.
+ text_jump UnknownText_0x1bcd09
+ db "@"
+; 0xb8dca
+
+UnknownText_0xb8dca: ; 0xb8dca
+ ; is actually great.
+ text_jump UnknownText_0x1bcd1a
+ db "@"
+; 0xb8dcf
+
+UnknownText_0xb8dcf: ; 0xb8dcf
+ ; is just my type.
+ text_jump UnknownText_0x1bcd2f
+ db "@"
+; 0xb8dd4
+
+UnknownText_0xb8dd4: ; 0xb8dd4
+ ; is so cool, no?
+ text_jump UnknownText_0x1bcd42
+ db "@"
+; 0xb8dd9
+
+UnknownText_0xb8dd9: ; 0xb8dd9
+ ; is inspiring!
+ text_jump UnknownText_0x1bcd54
+ db "@"
+; 0xb8dde
+
+UnknownText_0xb8dde: ; 0xb8dde
+ ; is kind of weird.
+ text_jump UnknownText_0x1bcd64
+ db "@"
+; 0xb8de3
+
+UnknownText_0xb8de3: ; 0xb8de3
+ ; is right for me?
+ text_jump UnknownText_0x1bcd78
+ db "@"
+; 0xb8de8
+
+UnknownText_0xb8de8: ; 0xb8de8
+ ; is definitely odd!
+ text_jump UnknownText_0x1bcd8b
+ db "@"
+; 0xb8ded
+
+Functionb8ded: ; b8ded (2e:4ded)
+ call Random
+ cp $9
+ jr nc, Functionb8ded
+ ld hl, Unknown_b8e11
+ ld c, a
+ ld b, 0
+rept 2
+ add hl, bc
+endr
+ ld b, [hl]
+ inc hl
+ ld c, [hl]
+ call GetWorldMapLocation
+ ld e, a
+ callba GetLandmarkName
+ ld hl, UnknownText_0xb8e23
+ ld a, $31
+ jp NextRadioLine
+; b8e11 (2e:4e11)
+
+Unknown_b8e11: ; b8e11
+ map PALLET_TOWN
+ map ROUTE_22
+ map PEWTER_CITY
+ map CERULEAN_POLICE_STATION
+ map ROUTE_12
+ map ROUTE_11
+ map ROUTE_16
+ map ROUTE_14
+ map CINNABAR_POKECENTER_2F_BETA
+; b8e23
+
+UnknownText_0xb8e23: ; 0xb8e23
+ ; @ @
+ text_jump UnknownText_0x1bcda0
+ db "@"
+; 0xb8e28
+
+Functionb8e28: ; b8e28 (2e:4e28)
+ call Random
+ and $f
+ ld e, a
+ ld d, 0
+ ld hl, Unknown_b8e52
+rept 2
+ add hl, de
+endr
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ call Functionb91dc
+ call Random
+ cp $a
+ ld a, $5
+ jr c, .asm_b8e4f
+ call Random
+ cp $7b
+ ld a, $2e
+ jr c, .asm_b8e4f
+ ld a, $30
+.asm_b8e4f
+ jp Functionb86ea
+; b8e52 (2e:4e52)
+
+Unknown_b8e52: ; b8e52
+ dw UnknownText_0xb8d9d
+ dw UnknownText_0xb8da2
+ dw UnknownText_0xb8da7
+ dw UnknownText_0xb8dac
+ dw UnknownText_0xb8db1
+ dw UnknownText_0xb8db6
+ dw UnknownText_0xb8dbb
+ dw UnknownText_0xb8dc0
+ dw UnknownText_0xb8dc5
+ dw UnknownText_0xb8dca
+ dw UnknownText_0xb8dcf
+ dw UnknownText_0xb8dd4
+ dw UnknownText_0xb8dd9
+ dw UnknownText_0xb8dde
+ dw UnknownText_0xb8de3
+ dw UnknownText_0xb8de8
+; b8e72
+
+Functionb8e72: ; b8e72 (2e:4e72)
+ call Functionb91eb
+ ld hl, UnknownText_0xb8ec5
+ ld a, $32
+ jp NextRadioLine
+
+Functionb8e7d: ; b8e7d (2e:4e7d)
+ ld hl, UnknownText_0xb8eca
+ ld a, $33
+ jp NextRadioLine
+
+Functionb8e85: ; b8e85 (2e:4e85)
+ ld hl, UnknownText_0xb8ecf
+ ld a, $34
+ jp NextRadioLine
+
+Functionb8e8d: ; b8e8d (2e:4e8d)
+ ld hl, UnknownText_0xb8ed4
+ ld a, $35
+ jp NextRadioLine
+
+Functionb8e95: ; b8e95 (2e:4e95)
+ ld hl, UnknownText_0xb8ed9
+ ld a, $36
+ jp NextRadioLine
+
+Functionb8e9d: ; b8e9d (2e:4e9d)
+ ld hl, UnknownText_0xb8ede
+ ld a, $37
+ jp NextRadioLine
+
+Functionb8ea5: ; b8ea5 (2e:4ea5)
+ ld hl, UnknownText_0xb8ee3
+ ld a, $38
+ jp NextRadioLine
+
+Functionb8ead: ; b8ead (2e:4ead)
+ ld hl, UnknownText_0xb8ee8
+ ld a, $39
+ jp NextRadioLine
+
+Functionb8eb5: ; b8eb5 (2e:4eb5)
+ ld hl, UnknownText_0xb8eed
+ ld a, $3a
+ jp NextRadioLine
+
+Functionb8ebd: ; b8ebd (2e:4ebd)
+ ld hl, UnknownText_0xb8ef2
+ ld a, $7
+ jp NextRadioLine
+; b8ec5 (2e:4ec5)
+
+UnknownText_0xb8ec5: ; 0xb8ec5
+ ; … …Ahem, we are
+ text_jump UnknownText_0x1bcda8
+ db "@"
+; 0xb8eca
+
+UnknownText_0xb8eca: ; 0xb8eca
+ ; TEAM ROCKET!
+ text_jump UnknownText_0x1bcdba
+ db "@"
+; 0xb8ecf
+
+UnknownText_0xb8ecf: ; 0xb8ecf
+ ; After three years
+ text_jump UnknownText_0x1bcdc9
+ db "@"
+; 0xb8ed4
+
+UnknownText_0xb8ed4: ; 0xb8ed4
+ ; of preparation, we
+ text_jump UnknownText_0x1bcddd
+ db "@"
+; 0xb8ed9
+
+UnknownText_0xb8ed9: ; 0xb8ed9
+ ; have risen again
+ text_jump UnknownText_0x1bcdf2
+ db "@"
+; 0xb8ede
+
+UnknownText_0xb8ede: ; 0xb8ede
+ ; from the ashes!
+ text_jump UnknownText_0x1bce05
+ db "@"
+; 0xb8ee3
+
+UnknownText_0xb8ee3: ; 0xb8ee3
+ ; GIOVANNI! @ Can you
+ text_jump UnknownText_0x1bce17
+ db "@"
+; 0xb8ee8
+
+UnknownText_0xb8ee8: ; 0xb8ee8
+ ; hear?@ We did it!
+ text_jump UnknownText_0x1bce2e
+ db "@"
+; 0xb8eed
+
+UnknownText_0xb8eed: ; 0xb8eed
+ ; @ Where is our boss?
+ text_jump UnknownText_0x1bce44
+ db "@"
+; 0xb8ef2
+
+UnknownText_0xb8ef2: ; 0xb8ef2
+ ; @ Is he listening?
+ text_jump UnknownText_0x1bce5c
+ db "@"
+; 0xb8ef7
+
+Functionb8ef7: ; b8ef7 (2e:4ef7)
+ call Functionb91eb
+ ld a, $1
+ ld [wd005], a
+ ret
+
+Functionb8f00: ; b8f00 (2e:4f00)
+ call Functionb91eb
+ ld a, $1
+ ld [wd005], a
+ ret
+
+Functionb8f09: ; b8f09 (2e:4f09)
+ call Functionb91eb
+ ld a, $1
+ ld [wd005], a
+ ret
+
+Functionb8f12: ; b8f12 (2e:4f12)
+ call Functionb9169
+ jp nc, Functionb8f22
+ ld a, [wd005]
+ and a
+ jp z, Functionb912a
+ jp Functionb90c5
+
+Functionb8f22: ; b8f22 (2e:4f22)
+ call Functionb91eb
+ ld a, [hBGMapMode] ; $ff00+$d4
+ push af
+ xor a
+ ld [hBGMapMode], a ; $ff00+$d4
+ ld de, String_b9171
+ hlcoord 2, 9
+ call PlaceString
+ pop af
+ ld [hBGMapMode], a ; $ff00+$d4
+ ld hl, UnknownText_0xb9182
+ ld a, $40
+ jp NextRadioLine
+
+Functionb8f3f: ; b8f3f (2e:4f3f)
+ ld hl, UnknownText_0xb9187
+ ld a, $41
+ jp NextRadioLine
+
+Functionb8f47: ; b8f47 (2e:4f47)
+ call Functionb9169
+ ld hl, UnknownText_0xb918c
+ jp c, Functionb90b9
+ ld a, $42
+ jp NextRadioLine
+
+Functionb8f55: ; b8f55 (2e:4f55)
+ call Functionb9169
+ jp c, Functionb90c5
+ ld a, [wdc4a]
+ ld hl, WeeklyFlags
+ bit 7, [hl]
+ jr nz, .asm_b8f83
+.asm_b8f65
+ call Random
+ and $f
+ cp $b
+ jr nc, .asm_b8f65
+ swap a
+ ld e, a
+.asm_b8f71
+ call Random
+ and $3
+ cp $3
+ jr nc, .asm_b8f71
+ add e
+ ld [wdc4a], a
+ ld hl, WeeklyFlags
+ set 7, [hl]
+.asm_b8f83
+ ld c, a
+ call Functionb8f8f
+ ld hl, UnknownText_0xb9191
+ ld a, $43
+ jp NextRadioLine
+
+Functionb8f8f: ; b8f8f
+ ld a, c
+ swap a
+ and $f
+ ld hl, Unknown_b8ff9
+ ld d, 0
+ ld e, a
+rept 2
+ add hl, de
+endr
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ ld a, [hli]
+ ld b, a
+ push hl
+ inc hl
+ ld a, c
+ and $f
+ ld c, a
+ push hl
+ ld hl, Jumptable_b8fb8
+ ld e, b
+rept 2
+ add hl, de
+endr
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ pop de
+ call _hl_
+ pop hl
+ ld c, [hl]
+ ret
+; b8fb8
+
+
+Jumptable_b8fb8: ; b8fb8 (2e:4fb8)
+ dw Functionb8fc0
+ dw Functionb8fc7
+ dw Functionb8fce
+ dw Functionb8fde
+
+
+Functionb8fc0: ; b8fc0 (2e:4fc0)
+ call Functionb8fd5
+ call GetPokemonName
+ ret
+
+Functionb8fc7: ; b8fc7 (2e:4fc7)
+ call Functionb8fd5
+ call GetItemName
+ ret
+
+Functionb8fce: ; b8fce (2e:4fce)
+ call Functionb8fd5
+ call GetMoveName
+ ret
+
+Functionb8fd5: ; b8fd5 (2e:4fd5)
+ ld h, 0
+ ld l, c
+ add hl, de
+ ld a, [hl]
+ ld [wd265], a
+ ret
+
+Functionb8fde: ; b8fde (2e:4fde)
+ ld a, c
+ and a
+ jr z, .asm_b8feb
+.asm_b8fe2
+ ld a, [de]
+ inc de
+ cp $50
+ jr nz, .asm_b8fe2
+ dec c
+ jr nz, .asm_b8fe2
+.asm_b8feb
+ ld hl, StringBuffer1
+.asm_b8fee
+ ld a, [de]
+ inc de
+ ld [hli], a
+ cp $50
+ jr nz, .asm_b8fee
+ ld de, StringBuffer1
+ ret
+; b8ff9 (2e:4ff9)
+
+Unknown_b8ff9: ; b8ff9
+ dw Unknown_b900f
+ dw Unknown_b9014
+ dw Unknown_b9019
+ dw Unknown_b901e
+ dw Unknown_b9023
+ dw Unknown_b9028
+ dw Unknown_b902d
+ dw Unknown_b905a
+ dw Unknown_b906d
+ dw Unknown_b9072
+ dw Unknown_b9077
+; b900f
+
+Unknown_b900f: db 0, 10, CYNDAQUIL, TOTODILE, CHIKORITA
+Unknown_b9014: db 1, 12, FRESH_WATER, SODA_POP, LEMONADE
+Unknown_b9019: db 1, 12, POTION, ANTIDOTE, PARLYZ_HEAL
+Unknown_b901e: db 1, 12, POKE_BALL, GREAT_BALL, ULTRA_BALL
+Unknown_b9023: db 0, 10, PIKACHU, RATTATA, GEODUDE
+Unknown_b9028: db 0, 10, HOOTHOOT, SPINARAK, DROWZEE
+Unknown_b902d: db 3, 16, "NEW BARK TOWN@", "CHERRYGROVE CITY@", "AZALEA TOWN@"
+Unknown_b905a: db 3, 6, "FLYING@", "BUG@", "GRASS@"
+Unknown_b906d: db 2, 12, TACKLE, GROWL, MUD_SLAP
+Unknown_b9072: db 1, 12, X_ATTACK, X_DEFEND, X_SPEED
+Unknown_b9077: db 3, 13, "#MON Talk@", "#MON Music@", "Lucky Channel@"
+; b909c
+
+Functionb909c: ; b909c (2e:509c)
+ ld hl, UnknownText_0xb9196
+ ld a, $44
+ jp NextRadioLine
+
+Functionb90a4: ; b90a4 (2e:50a4)
+ ld hl, UnknownText_0xb919b
+ ld a, $45
+ jp NextRadioLine
+
+Functionb90ac: ; b90ac (2e:50ac)
+ call Functionb9169
+ ld hl, UnknownText_0xb91a0
+ jr c, Functionb90b9
+ ld a, $4
+ jp NextRadioLine
+
+Functionb90b9: ; b90b9 (2e:50b9)
+ push hl
+ ld hl, WeeklyFlags
+ res 7, [hl]
+ pop hl
+ ld a, $46
+ jp NextRadioLine
+
+Functionb90c5: ; b90c5 (2e:50c5)
+ ld hl, WeeklyFlags
+ res 7, [hl]
+ ld hl, UnknownText_0xb91d2
+ ld a, $47
+ jp NextRadioLine
+
+Functionb90d2: ; b90d2 (2e:50d2)
+ ld hl, UnknownText_0xb91a5
+ ld a, $48
+ jp NextRadioLine
+
+Functionb90da: ; b90da (2e:50da)
+ ld hl, UnknownText_0xb91aa
+ ld a, $49
+ jp NextRadioLine
+
+Functionb90e2: ; b90e2 (2e:50e2)
+ ld hl, UnknownText_0xb91af
+ ld a, $4a
+ jp NextRadioLine
+
+Functionb90ea: ; b90ea (2e:50ea)
+ ld hl, UnknownText_0xb91b4
+ ld a, $4b
+ jp NextRadioLine
+
+Functionb90f2: ; b90f2 (2e:50f2)
+ ld hl, UnknownText_0xb91b9
+ ld a, $4c
+ jp NextRadioLine
+
+Functionb90fa: ; b90fa (2e:50fa)
+ ld hl, UnknownText_0xb91be
+ ld a, $4d
+ jp NextRadioLine
+
+Functionb9102: ; b9102 (2e:5102)
+ ld hl, UnknownText_0xb91c3
+ ld a, $4e
+ jp NextRadioLine
+
+Functionb910a: ; b910a (2e:510a)
+ ld hl, UnknownText_0xb91c8
+ ld a, $4f
+ jp NextRadioLine
+
+Functionb9112: ; b9112 (2e:5112)
+ ld hl, UnknownText_0xb91cd
+ ld a, $50
+ jp NextRadioLine
+
+Functionb911a: ; b911a (2e:511a)
+ ld hl, UnknownText_0xb91d2
+ ld a, $51
+ jp NextRadioLine
+
+Functionb9122: ; b9122 (2e:5122)
+ ld hl, UnknownText_0xb91d2
+ ld a, $52
+ jp NextRadioLine
+
+Functionb912a: ; b912a (2e:512a)
+ ld a, [hBGMapMode] ; $ff00+$d4
+ push af
+ callba NoRadioMusic
+ callba NoRadioName
+ pop af
+ ld [hBGMapMode], a ; $ff00+$d4
+ ld hl, WeeklyFlags
+ res 7, [hl]
+ ld a, $4
+ ld [wd002], a
+ xor a
+ ld [wd005], a
+ ld hl, UnknownText_0xb91d7
+ ld a, $53
+ jp NextRadioLine
+
+Functionb9152: ; b9152 (2e:5152)
+ ld a, $4
+ ld [wd002], a
+ xor a
+ ld [wd005], a
+ call Functionb9169
+ jp nc, Functionb8f12
+ ld hl, UnknownText_0xb91d7
+ ld a, $53
+ jp NextRadioLine
+
+Functionb9169: ; b9169 (2e:5169)
+ call UpdateTime
+ ld a, [hHours] ; $ff00+$94
+ cp $12
+ ret
+; b9171 (2e:5171)
+
+String_b9171:
+ db "BUENA'S PASSWORD@"
+; b9182
+
+UnknownText_0xb9182: ; 0xb9182
+ ; BUENA: BUENA here!
+ text_jump UnknownText_0x1bce72
+ db "@"
+; 0xb9187
+
+UnknownText_0xb9187: ; 0xb9187
+ ; Today's password!
+ text_jump UnknownText_0x1bce87
+ db "@"
+; 0xb918c
+
+UnknownText_0xb918c: ; 0xb918c
+ ; Let me think… It's
+ text_jump UnknownText_0x1bce9a
+ db "@"
+; 0xb9191
+
+UnknownText_0xb9191: ; 0xb9191
+ ; @ !
+ text_jump UnknownText_0x1bceae
+ db "@"
+; 0xb9196
+
+UnknownText_0xb9196: ; 0xb9196
+ ; Don't forget it!
+ text_jump UnknownText_0x1bceb7
+ db "@"
+; 0xb919b
+
+UnknownText_0xb919b: ; 0xb919b
+ ; I'm in GOLDENROD's
+ text_jump UnknownText_0x1bcec9
+ db "@"
+; 0xb91a0
+
+UnknownText_0xb91a0: ; 0xb91a0
+ ; RADIO TOWER!
+ text_jump UnknownText_0x1bcedc
+ db "@"
+; 0xb91a5
+
+UnknownText_0xb91a5: ; 0xb91a5
+ ; BUENA: Oh my…
+ text_jump UnknownText_0x1bceeb
+ db "@"
+; 0xb91aa
+
+UnknownText_0xb91aa: ; 0xb91aa
+ ; It's midnight! I
+ text_jump UnknownText_0x1bcefb
+ db "@"
+; 0xb91af
+
+UnknownText_0xb91af: ; 0xb91af
+ ; have to shut down!
+ text_jump UnknownText_0x1bcf0d
+ db "@"
+; 0xb91b4
+
+UnknownText_0xb91b4: ; 0xb91b4
+ ; Thanks for tuning
+ text_jump UnknownText_0x1bcf22
+ db "@"
+; 0xb91b9
+
+UnknownText_0xb91b9: ; 0xb91b9
+ ; in to the end! But
+ text_jump UnknownText_0x1bcf36
+ db "@"
+; 0xb91be
+
+UnknownText_0xb91be: ; 0xb91be
+ ; don't stay up too
+ text_jump UnknownText_0x1bcf4b
+ db "@"
+; 0xb91c3
+
+UnknownText_0xb91c3: ; 0xb91c3
+ ; late! Presented to
+ text_jump UnknownText_0x1bcf5e
+ db "@"
+; 0xb91c8
+
+UnknownText_0xb91c8: ; 0xb91c8
+ ; you by DJ BUENA!
+ text_jump UnknownText_0x1bcf73
+ db "@"
+; 0xb91cd
+
+UnknownText_0xb91cd: ; 0xb91cd
+ ; I'm outta here!
+ text_jump UnknownText_0x1bcf86
+ db "@"
+; 0xb91d2
+
+UnknownText_0xb91d2: ; 0xb91d2
+ ; …
+ text_jump UnknownText_0x1bcf96
+ db "@"
+; 0xb91d7
+
+UnknownText_0xb91d7: ; 0xb91d7
+ ;
+ text_jump UnknownText_0x1bcf99
+ db "@"
+; 0xb91dc
+
+Functionb91dc: ; b91dc (2e:51dc)
+ ld a, [hl]
+ cp $16 ; TX_FAR
+ jp z, FarJumpText
+ ld de, wd00c
+ ld bc, $28
+ jp CopyBytes
+
+Functionb91eb: ; b91eb (2e:51eb)
+ ld a, [wd005]
+ and a
+ ret nz
+ call Function1052
+ call PrintText
+ ld hl, RadioChannelSongs
+ ld a, [wd002]
+ ld c, a
+ ld b, 0
+rept 2
+ add hl, bc
+endr
+ ld e, [hl]
+ inc hl
+ ld d, [hl]
+ callab Function91854
+ ret
+; b920b (2e:520b)
+
+RadioChannelSongs: ; b920b
+ dw MUSIC_POKEMON_TALK
+ dw MUSIC_POKEMON_CENTER
+ dw MUSIC_TITLE
+ dw MUSIC_GAME_CORNER
+ dw MUSIC_BUENAS_PASSWORD
+ dw MUSIC_VIRIDIAN_CITY
+ dw MUSIC_BICYCLE
+ dw MUSIC_ROCKET_OVERTURE
+ dw MUSIC_POKE_FLUTE_CHANNEL
+ dw MUSIC_RUINS_OF_ALPH_RADIO
+ dw MUSIC_LAKE_OF_RAGE_ROCKET_RADIO
+; b9221
+
+NextRadioLine: ; b9221 (2e:5221)
+ push af
+ call Functionb91dc
+ pop af
+ jp Functionb86ea
+; b9229
diff --git a/engine/scripting.asm b/engine/scripting.asm
index 3012d14b3..709a75c25 100644
--- a/engine/scripting.asm
+++ b/engine/scripting.asm
@@ -1,9 +1,9 @@
; Event scripting commands.
-Function96c56:: ; 96c56
+EnableScriptMode:: ; 96c56
push af
- ld a, 1
+ ld a, SCRIPT_READ
ld [ScriptMode], a
pop af
ret
@@ -346,7 +346,7 @@ JumpTextFacePlayerScript: ; 0x96e79
faceplayer
JumpTextScript: ; 0x96e7a
loadfont
- repeattext $ff, $ff
+ repeattext -1, -1
closetext
loadmovesprites
end
@@ -385,7 +385,7 @@ Script_2writetext: ; 0x96e9b
ld h, a
ld a, [ScriptBank]
ld b, a
- call Function269a
+ call MapTextbox
ret
; 0x96eab
@@ -400,7 +400,7 @@ Script_3writetext: ; 0x96eab
ld l, a
call GetScriptByte
ld h, a
- call Function269a
+ call MapTextbox
ret
; 0x96ebb
@@ -414,27 +414,27 @@ Script_repeattext: ; 0x96ebb
ld l, a
call GetScriptByte
ld h, a
- cp $ff
- jr nz, .asm_96ed8 ; 0x96ec5 $11
+ cp -1
+ jr nz, .done ; 0x96ec5 $11
ld a, l
- cp $ff
- jr nz, .asm_96ed8 ; 0x96eca $c
+ cp -1
+ jr nz, .done ; 0x96eca $c
ld hl, wd44e
ld a, [hli]
ld b, a
ld a, [hli]
ld h, [hl]
ld l, a
- call Function269a
+ call MapTextbox
ret
-.asm_96ed8
+.done
ret
; 0x96ed9
Script_closetext: ; 0x96ed9
; script command 0x54
- jp Functiona46
+ jp CloseText
; 0x96edc
Script_keeptextopen: ; 0x96edc
@@ -445,7 +445,7 @@ Script_keeptextopen: ; 0x96edc
ld a, $1
ld [$ffd8], a
call WaitBGMap
- call Functionaaf
+ call KeepTextOpen
pop af
ld [$ffd8], a
ret
@@ -456,9 +456,9 @@ Script_yesorno: ; 0x96eed
call YesNoBox
ld a, 0
- jr c, .asm_96ef6 ; 0x96ef2 $2
+ jr c, .no ; 0x96ef2 $2
ld a, 1
-.asm_96ef6
+.no
ld [ScriptVar], a
ret
; 0x96efa
@@ -474,16 +474,16 @@ Script_loadmenudata: ; 0x96efa
ld h, a
ld de, LoadMenuDataHeader
ld a, [ScriptBank]
- call Function26b7
- call Function1ad2
+ call Call_a_de
+ call DrawOnMap
ret
; 0x96f0f
Script_writebackup: ; 0x96f0f
; script command 0x50
- call Function1c17
- call Function1ad2
+ call WriteBackup
+ call DrawOnMap
ret
; 0x96f16
@@ -498,14 +498,14 @@ Script_pokepic: ; 0x96f16
ld a, [ScriptVar]
.ok
ld [CurPartySpecies], a
- callba Function244e3
+ callba Pokepic
ret
; 0x96f29
Script_pokepicyesorno: ; 0x96f29
; script command 0x57
- callba Function24528
+ callba PokepicYesOrNo
ret
; 0x96f30
@@ -513,7 +513,7 @@ Script_interpretmenu2: ; 0x96f30
; script command 0x59
ld a, [ScriptBank]
- ld hl, Function1d81
+ ld hl, InterpretMenu2
rst FarCall
ld a, [wcfa9]
jr nc, .ok
@@ -527,7 +527,7 @@ Script_interpretmenu: ; 0x96f41
; script command 0x58
ld a, [ScriptBank]
- ld hl, Function202a
+ ld hl, InterpretMenu
rst FarCall
ld a, [wcf88]
jr nc, .ok
@@ -543,10 +543,10 @@ Script_storetext: ; 0x96f52
; pointer (PointerLabelBeforeBank)
; memory (SingleByteParam)
- call Function106c
+ call SetUpTextBox
call GetScriptByte
ld c, a
- callba Function11c000
+ callba StoreText
ret
; 0x96f60
@@ -559,8 +559,8 @@ Script_verbosegiveitem: ; 0x96f60
call Script_giveitem
call CurItemName
ld de, StringBuffer1
- ld a, $1
- call Function976c8
+ ld a, 1
+ call CopyConvertedText
ld b, BANK(GiveItemScript)
ld de, GiveItemScript
jp ScriptCall
@@ -600,26 +600,26 @@ Script_verbosegiveitem2: ; 0x96f8e
; var (SingleByteParam)
call GetScriptByte
- cp $ff
+ cp -1
jr nz, .ok
ld a, [ScriptVar]
.ok
ld [CurItem], a
call GetScriptByte
- call Function9769e
+ call GetVarAction
ld a, [de]
ld [wd10c], a
ld hl, NumItems
call ReceiveItem
- ld a, $1
+ ld a, 1
jr c, .ok2
xor a
.ok2
ld [ScriptVar], a
call CurItemName
ld de, StringBuffer1
- ld a, $1
- call Function976c8
+ ld a, 1
+ call CopyConvertedText
ld b, BANK(GiveItemScript)
ld de, GiveItemScript
jp ScriptCall
@@ -632,7 +632,7 @@ Script_itemnotify: ; 0x96fc6
call CurItemName
ld b, BANK(PutItemInPocketText)
ld hl, PutItemInPocketText
- call Function269a
+ call MapTextbox
ret
; 0x96fd5
@@ -643,7 +643,7 @@ Script_pocketisfull: ; 0x96fd5
call CurItemName
ld b, BANK(PocketIsFullText)
ld hl, PocketIsFullText
- call Function269a
+ call MapTextbox
ret
; 0x96fe4
@@ -746,7 +746,7 @@ Script_elevator: ; 0x9707c
ld d, a
ld a, [ScriptBank]
ld b, a
- callba Function1342d
+ callba Elevator
ret c
ld a, $1
ld [ScriptVar], a
@@ -775,14 +775,14 @@ Script_phonecall: ; 0x970a4
ld d, a
ld a, [ScriptBank]
ld b, a
- callba Function9029a
+ callba PhoneCall
ret
; 0x970b7
Script_hangup: ; 0x970b7
; script command 0x99
- callba Function902eb
+ callba HangUp
ret
; 0x970be
@@ -792,20 +792,20 @@ Script_askforphonenumber: ; 0x970be
; number (SingleByteParam)
call YesNoBox
- jr c, .asm_970d6 ; 0x970c1 $13
+ jr c, .refused ; 0x970c1 $13
call GetScriptByte
ld c, a
- callba Function90000
- jr c, .asm_970d2 ; 0x970cd $3
+ callba AddPhoneNumber
+ jr c, .phonefull ; 0x970cd $3
xor a
- jr .asm_970db ; 0x970d0 $9
-.asm_970d2
- ld a, $1
- jr .asm_970db ; 0x970d4 $5
-.asm_970d6
+ jr .done ; 0x970d0 $9
+.phonefull
+ ld a, 1
+ jr .done ; 0x970d4 $5
+.refused
call GetScriptByte
- ld a, $2
-.asm_970db
+ ld a, 2
+.done
ld [ScriptVar], a
ret
; 0x970df
@@ -817,7 +817,7 @@ Script_describedecoration: ; 0x970df
call GetScriptByte
ld b, a
- callba Function26f59
+ callba DescribeDecoration
ld h, d
ld l, e
jp ScriptJump
@@ -848,7 +848,7 @@ Script_loadwilddata: ; 0x970fc
ld d, a
call GetScriptByte
ld e, a
- callba Functionc403
+ callba LoadWildData
ret
; 0x9710f
@@ -859,16 +859,17 @@ Script_trainertext: ; 0x9710f
call GetScriptByte
ld c, a
- ld b, $0
+ ld b, 0
ld hl, WalkingX
+rept 2
add hl, bc
- add hl, bc
+endr
ld a, [hli]
ld h, [hl]
ld l, a
ld a, [EngineBuffer1]
ld b, a
- call Function269a
+ call MapTextbox
ret
; 0x97125
@@ -901,7 +902,7 @@ Script_trainerstatus: ; 0x97132
ld a, c
and a
ret z
- ld a, $1
+ ld a, 1
ld [ScriptVar], a
ret
; 0x9714c
@@ -912,12 +913,12 @@ Script_winlosstext: ; 0x9714c
; win_text_pointer (TextPointerLabelParam)
; loss_text_pointer (TextPointerLabelParam)
- ld hl, WalkingTile
+ ld hl, wWinTextPointer ; d047
call GetScriptByte
ld [hli], a
call GetScriptByte
ld [hli], a
- ld hl, wd048 + 1
+ ld hl, wLossTextPointer ; d049; this is unnecessary
call GetScriptByte
ld [hli], a
call GetScriptByte
@@ -937,7 +938,7 @@ Script_talkaftercancel: ; 0x97163
Script_talkaftercheck: ; 0x9716b
; script command 0x67
- ld a, $1
+ ld a, 1
ld [ScriptVar], a
ld a, [wd04d]
and a
@@ -1042,7 +1043,7 @@ Script_cry: ; 0x971d1
ret
; 0x971e3
-Function971e3: ; 0x971e3
+GetScriptPerson: ; 0x971e3
and a
ret z
cp $fe
@@ -1057,7 +1058,7 @@ Script_setlasttalked: ; 0x971ea
; person (SingleByteParam)
call GetScriptByte
- call Function971e3
+ call GetScriptPerson
ld [$ffe0], a
ret
; 0x971f3
@@ -1069,17 +1070,17 @@ Script_applymovement: ; 0x971f3
; data (MovementPointerLabelParam)
call GetScriptByte
- call Function971e3
+ call GetScriptPerson
ld c, a
; 971fa
-Function971fa: ; 971fa
+ApplyMovement: ; 971fa
push bc
ld a, c
- callba Function585c
+ callba SetFlagsForMovement_1
pop bc
push bc
- call Function97221
+ call SetFlagsForMovement_2
pop bc
call GetScriptByte
ld l, a
@@ -1087,7 +1088,7 @@ Function971fa: ; 971fa
ld h, a
ld a, [ScriptBank]
ld b, a
- call Function26c7
+ call GetMovementData
ret c
ld a, SCRIPT_WAIT_MOVEMENT
ld [ScriptMode], a
@@ -1095,8 +1096,8 @@ Function971fa: ; 971fa
ret
; 0x97221
-Function97221: ; 0x97221
- callba Function5897
+SetFlagsForMovement_2: ; 0x97221
+ callba _SetFlagsForMovement_2
ret
; 0x97228
@@ -1107,7 +1108,7 @@ Script_applymovement2: ; 0x97228
ld a, [$ffe0]
ld c, a
- jp Function971fa
+ jp ApplyMovement
; 0x9722e
Script_faceplayer: ; 0x9722e
@@ -1119,14 +1120,15 @@ Script_faceplayer: ; 0x9722e
ld d, $0
ld a, [$ffe0]
ld e, a
- callba Function8417
+ callba GetRelativeFacing
ld a, d
+rept 2
add a
- add a
+endr
ld e, a
ld a, [$ffe0]
ld d, a
- call Function9728b
+ call ApplyPersonFacing
ret
; 0x97248
@@ -1137,29 +1139,30 @@ Script_faceperson: ; 0x97248
; person2 (SingleByteParam)
call GetScriptByte
- call Function971e3
+ call GetScriptPerson
cp $fe
jr c, .asm_97254 ; 0x97250 $2
ld a, [$ffe0]
.asm_97254
ld e, a
call GetScriptByte
- call Function971e3
+ call GetScriptPerson
cp $fe
jr nz, .asm_97261 ; 0x9725d $2
ld a, [$ffe0]
.asm_97261
ld d, a
push de
- callba Function8417
+ callba GetRelativeFacing
pop bc
ret c
ld a, d
+rept 2
add a
- add a
+endr
ld e, a
ld d, c
- call Function9728b
+ call ApplyPersonFacing
ret
; 0x97274
@@ -1170,47 +1173,48 @@ Script_spriteface: ; 0x97274
; facing (SingleByteParam)
call GetScriptByte
- call Function971e3
+ call GetScriptPerson
cp $fe
jr nz, .asm_97280 ; 0x9727c $2
ld a, [$ffe0]
.asm_97280
ld d, a
call GetScriptByte
+rept 2
add a
- add a
+endr
ld e, a
- call Function9728b
+ call ApplyPersonFacing
ret
; 0x9728b
-Function9728b: ; 0x9728b
+ApplyPersonFacing: ; 0x9728b
ld a, d
push de
call Function18de
- jr c, .asm_972b9 ; 0x97290 $27
- ld hl, $0000
+ jr c, .not_visible ; 0x97290 $27
+ ld hl, OBJECT_SPRITE
add hl, bc
ld a, [hl]
push bc
call Function1836
pop bc
- jr c, .asm_972b9 ; 0x9729c $1b
- ld hl, $0004
+ jr c, .not_visible ; 0x9729c $1b
+ ld hl, OBJECT_04
add hl, bc
bit 2, [hl]
- jr nz, .asm_972b9 ; 0x972a4 $13
+ jr nz, .not_visible ; 0x972a4 $13
pop de
ld a, e
- call Function1af8
+ call SetSpriteDirection
ld hl, VramState
bit 6, [hl]
jr nz, .asm_972b5 ; 0x972b0 $3
call Function972bc
.asm_972b5
- call Function1ad2
+ call DrawOnMap
ret
-.asm_972b9
+.not_visible
pop de
scf
ret
@@ -1252,11 +1256,11 @@ Script_appear: ; 0x972dd
; person (SingleByteParam)
call GetScriptByte
- call Function971e3
- call Function1956
+ call GetScriptPerson
+ call _CopyObjectStruct
ld a, [$ffaf]
- ld b, $0
- call Function9730b
+ ld b, 0 ; clear
+ call ApplyEventActionAppearDisappear
ret
; 0x972ee
@@ -1266,36 +1270,36 @@ Script_disappear: ; 0x972ee
; person (SingleByteParam)
call GetScriptByte
- call Function971e3
- cp $fe
- jr nz, .asm_972fa ; 0x972f6 $2
+ call GetScriptPerson
+ cp -2
+ jr nz, .skip ; 0x972f6 $2
ld a, [$ffe0]
-.asm_972fa
- call Function199f
+.skip
+ call DeleteObjectStruct
ld a, [$ffaf]
- ld b, $1
- call Function9730b
- callba Function5920
+ ld b, 1 ; set
+ call ApplyEventActionAppearDisappear
+ callba RefreshMapAppearDisappear
ret
; 0x9730b
-Function9730b: ; 0x9730b
+ApplyEventActionAppearDisappear: ; 0x9730b
push bc
call GetMapObject
- ld hl, $000c
+ ld hl, MAPOBJECT_EVENT_FLAG
add hl, bc
pop bc
ld e, [hl]
inc hl
ld d, [hl]
- ld a, $ff
+ ld a, -1
cp e
- jr nz, .asm_97321 ; 0x9731a $5
+ jr nz, .okay ; 0x9731a $5
cp d
- jr nz, .asm_97321 ; 0x9731d $2
+ jr nz, .okay ; 0x9731d $2
xor a
ret
-.asm_97321
+.okay
call EventFlagAction
ret
; 0x97325
@@ -1307,10 +1311,10 @@ Script_follow: ; 0x97325
; person1 (SingleByteParam)
call GetScriptByte
- call Function971e3
+ call GetScriptPerson
ld b, a
call GetScriptByte
- call Function971e3
+ call GetScriptPerson
ld c, a
callba Function5803
ret
@@ -1331,7 +1335,7 @@ Script_moveperson: ; 0x97341
; y (SingleByteParam)
call GetScriptByte
- call Function971e3
+ call GetScriptPerson
ld b, a
call GetScriptByte
add $4
@@ -1349,7 +1353,7 @@ Script_writepersonxy: ; 0x9735b
; person (SingleByteParam)
call GetScriptByte
- call Function971e3
+ call GetScriptPerson
cp $fe
jr nz, .asm_97367 ; 0x97363 $2
ld a, [$ffe0]
@@ -1366,10 +1370,10 @@ Script_follownotexact: ; 0x9736f
; person1 (SingleByteParam)
call GetScriptByte
- call Function971e3
+ call GetScriptPerson
ld b, a
call GetScriptByte
- call Function971e3
+ call GetScriptPerson
ld c, a
callba Function839e
ret
@@ -1400,7 +1404,7 @@ Script_showemote: ; 0x97396
call GetScriptByte
ld [ScriptVar], a
call GetScriptByte
- call Function971e3
+ call GetScriptPerson
cp $fe
jr z, .asm_973a8 ; 0x973a4 $2
ld [$ffe0], a
@@ -1525,7 +1529,7 @@ Script_loadtrainer: ; 0x97424
Script_startbattle: ; 0x97436
; script command 0x5f
- call Function2879
+ call BufferScreen
predef StartBattle
ld a, [wd0ee]
and $3f
@@ -1540,7 +1544,7 @@ Script_catchtutorial: ; 0x97447
call GetScriptByte
ld [BattleType], a
- call Function2879
+ call BufferScreen
callba Function4e554
jp Script_reloadmap
; 0x97459
@@ -1582,7 +1586,7 @@ Script_reloadmap: ; 0x97491
ld a, $f3
ld [$ff9f], a
ld a, $1
- call Function261b
+ call LoadMapStatus
call StopScript
ret
; 0x974a2
@@ -1638,9 +1642,9 @@ ScriptCall: ; 0x974cb
inc [hl]
ld d, $0
ld hl, wd43d
+rept 3
add hl, de
- add hl, de
- add hl, de
+endr
pop de
ld a, [ScriptBank]
ld [hli], a
@@ -1811,9 +1815,9 @@ StdScript: ; 0x9757b
call GetScriptByte
ld d, a
ld hl, StdScripts
+rept 3
add hl, de
- add hl, de
- add hl, de
+endr
ld a, BANK(StdScripts)
call GetFarByte
ld b, a
@@ -1858,7 +1862,7 @@ Script_priorityjump: ; 0x975aa
Script_checktriggers: ; 0x975c2
; script command 0x13
- call Function211b
+ call CheckTriggers
jr z, .asm_975cb ; 0x975c5 $4
ld [ScriptVar], a
ret
@@ -2051,7 +2055,7 @@ Script_checkcode: ; 0x9767d
; variable_id (SingleByteParam)
call GetScriptByte
- call Function9769e
+ call GetVarAction
ld a, [de]
ld [ScriptVar], a
ret
@@ -2063,7 +2067,7 @@ Script_writevarcode: ; 0x97688
; variable_id (SingleByteParam)
call GetScriptByte
- call Function9769e
+ call GetVarAction
ld a, [ScriptVar]
ld [de], a
ret
@@ -2076,15 +2080,15 @@ Script_writecode: ; 0x97693
; value (SingleByteParam)
call GetScriptByte
- call Function9769e
+ call GetVarAction
call GetScriptByte
ld [de], a
ret
; 0x9769e
-Function9769e: ; 0x9769e
+GetVarAction: ; 0x9769e
ld c, a
- callba Function80648
+ callba _GetVarAction
ret
; 0x976a6
@@ -2103,28 +2107,28 @@ Version: ; 976ad
Script_pokenamemem: ; 0x976ae
; script command 0x40
; parameters:
-; pokemon (PokemonParam)
+; pokemon (PokemonParam); leave $0 to draw from script var
; memory (SingleByteParam)
call GetScriptByte
and a
- jr nz, .asm_976b7 ; 0x976b2 $3
+ jr nz, .gotit ; 0x976b2 $3
ld a, [ScriptVar]
-.asm_976b7
+.gotit
ld [wd265], a
call GetPokemonName
ld de, StringBuffer1
-Unknown_976c0: ; 0x976c0
+ConvertMemToText: ; 0x976c0
call GetScriptByte
cp 3
jr c, .ok
xor a
.ok
-Function976c8: ; 976c8
+CopyConvertedText: ; 976c8
ld hl, StringBuffer3
- ld bc, 19
+ ld bc, StringBuffer4 - StringBuffer3
call AddNTimes
call CopyName2
ret
@@ -2138,13 +2142,13 @@ Script_itemtotext: ; 0x976d5
call GetScriptByte
and a
- jr nz, .asm_976de ; 0x976d9 $3
+ jr nz, .ok ; 0x976d9 $3
ld a, [ScriptVar]
-.asm_976de
+.ok
ld [wd265], a
call GetItemName
ld de, StringBuffer1
- jr Unknown_976c0 ; 0x976e7 $d7
+ jr ConvertMemToText ; 0x976e7 $d7
; 0x976e9
Script_mapnametotext: ; 0x976e9
@@ -2158,11 +2162,11 @@ Script_mapnametotext: ; 0x976e9
ld c, a
call GetWorldMapLocation
-Unknown_976f4: ; 0x976f4
+ConvertLandmarkToText: ; 0x976f4
ld e, a
callba GetLandmarkName
ld de, StringBuffer1
- jp Unknown_976c0
+ jp ConvertMemToText
; 0x97701
Script_displaylocation: ; 0x97701
@@ -2172,7 +2176,7 @@ Script_displaylocation: ; 0x97701
; memory (SingleByteParam)
call GetScriptByte
- jr Unknown_976f4 ; 0x97704 $ee
+ jr ConvertLandmarkToText ; 0x97704 $ee
; 0x97706
Script_trainertotext: ; 0x97706
@@ -2186,8 +2190,8 @@ Script_trainertotext: ; 0x97706
ld c, a
call GetScriptByte
ld b, a
- callba Function3994c
- jr Unknown_976c0 ; 0x97714 $aa
+ callba GetTrainerName
+ jr ConvertMemToText ; 0x97714 $aa
; 0x97716
Script_name: ; 0x97716
@@ -2200,12 +2204,12 @@ Script_name: ; 0x97716
call GetScriptByte
ld [wcf61], a
-Unknown_9771c: ; 0x9771c
+ContinueToGetName: ; 0x9771c
call GetScriptByte
ld [CurSpecies], a
call GetName
ld de, StringBuffer1
- jp Unknown_976c0
+ jp ConvertMemToText
; 0x9772b
Script_trainerclassname: ; 0x9772b
@@ -2216,7 +2220,7 @@ Script_trainerclassname: ; 0x9772b
ld a, TRAINER_NAME
ld [wcf61], a
- jr Unknown_9771c ; 0x97730 $ea
+ jr ContinueToGetName ; 0x97730 $ea
; 0x97732
Script_readmoney: ; 0x97732
@@ -2225,13 +2229,13 @@ Script_readmoney: ; 0x97732
; account (SingleByteParam)
; memory (SingleByteParam)
- call Function97771
- call Function97861
+ call ResetStringBuffer1
+ call GetMoneyAccount
ld hl, StringBuffer1
ld bc, $4306
call PrintNum
ld de, StringBuffer1
- jp Unknown_976c0
+ jp ConvertMemToText
; 0x97747
Script_readcoins: ; 0x97747
@@ -2239,13 +2243,13 @@ Script_readcoins: ; 0x97747
; parameters:
; memory (SingleByteParam)
- call Function97771
+ call ResetStringBuffer1
ld hl, StringBuffer1
ld de, Coins
ld bc, $4206
call PrintNum
ld de, StringBuffer1
- jp Unknown_976c0
+ jp ConvertMemToText
; 0x9775c
Script_RAM2MEM: ; 0x9775c
@@ -2253,18 +2257,18 @@ Script_RAM2MEM: ; 0x9775c
; parameters:
; memory (SingleByteParam)
- call Function97771
+ call ResetStringBuffer1
ld de, ScriptVar
ld hl, StringBuffer1
ld bc, $4103
call PrintNum
ld de, StringBuffer1
- jp Unknown_976c0
+ jp ConvertMemToText
; 0x97771
-Function97771: ; 0x97771
+ResetStringBuffer1: ; 0x97771
ld hl, StringBuffer1
- ld bc, $000b
+ ld bc, NAME_LENGTH
ld a, "@"
call ByteFill
ret
@@ -2284,7 +2288,7 @@ Script_stringtotext: ; 0x9777d
ld hl, CopyName1
rst FarCall
ld de, StringBuffer2
- jp Unknown_976c0
+ jp ConvertMemToText
; 0x97792
Script_givepokeitem: ; 0x97792
@@ -2301,12 +2305,12 @@ Script_givepokeitem: ; 0x97792
ld b, a
push bc
inc hl
- ld bc, $0020
+ ld bc, MAIL_MAX_LENGTH
ld de, wd002
ld a, [ScriptBank]
call FarCopyBytes
pop bc
- callba Function446cc
+ callba GivePokeItem
ret
; 0x977b7
@@ -2332,20 +2336,20 @@ Script_giveitem: ; 0x977ca
; quantity (SingleByteParam)
call GetScriptByte
- cp $ff
- jr nz, .asm_977d4 ; 0x977cf $3
+ cp -1
+ jr nz, .ok ; 0x977cf $3
ld a, [ScriptVar]
-.asm_977d4
+.ok
ld [CurItem], a
call GetScriptByte
ld [wd10c], a
ld hl, NumItems
call ReceiveItem
- jr nc, .asm_977eb ; 0x977e3 $6
+ jr nc, .full ; 0x977e3 $6
ld a, $1
ld [ScriptVar], a
ret
-.asm_977eb
+.full
xor a
ld [ScriptVar], a
ret
@@ -2396,9 +2400,9 @@ Script_givemoney: ; 0x97829
; account (SingleByteParam)
; money (MoneyByteParam)
- call Function97861
- call Function9786d
- callba Function15fd7
+ call GetMoneyAccount
+ call LoadMoneyAmountToMem
+ callba GiveMoney
ret
; 0x97836
@@ -2408,9 +2412,9 @@ Script_takemoney: ; 0x97836
; account (SingleByteParam)
; money (MoneyByteParam)
- call Function97861
- call Function9786d
- callba Function15ffa
+ call GetMoneyAccount
+ call LoadMoneyAmountToMem
+ callba TakeMoney
ret
; 0x97843
@@ -2420,12 +2424,12 @@ Script_checkmoney: ; 0x97843
; account (SingleByteParam)
; money (MoneyByteParam)
- call Function97861
- call Function9786d
- callba Function1600b
+ call GetMoneyAccount
+ call LoadMoneyAmountToMem
+ callba CheckMoney
; 0x9784f
-Unknown_9784f: ; 0x9784f
+CheckMoneyAction: ; 0x9784f
jr c, .two
jr z, .one
ld a, 0
@@ -2440,7 +2444,7 @@ Unknown_9784f: ; 0x9784f
ret
; 0x97861
-Function97861: ; 0x97861
+GetMoneyAccount: ; 0x97861
call GetScriptByte
and a
ld de, Money
@@ -2449,8 +2453,8 @@ Function97861: ; 0x97861
ret
; 0x9786d
-Function9786d: ; 0x9786d
- ld bc, $ffc3
+LoadMoneyAmountToMem: ; 0x9786d
+ ld bc, hMoneyTemp
push bc
call GetScriptByte
ld [bc], a
@@ -2469,8 +2473,8 @@ Script_givecoins: ; 0x97881
; parameters:
; coins (CoinByteParam)
- call Function978a0
- callba Function1606f
+ call LoadCoinAmountToMem
+ callba GiveCoins
ret
; 0x9788b
@@ -2479,8 +2483,8 @@ Script_takecoins: ; 0x9788b
; parameters:
; coins (CoinByteParam)
- call Function978a0
- callba Function1608f
+ call LoadCoinAmountToMem
+ callba TakeCoins
ret
; 0x97895
@@ -2489,17 +2493,17 @@ Script_checkcoins: ; 0x97895
; parameters:
; coins (CoinByteParam)
- call Function978a0
- callba Function160a1
- jr Unknown_9784f
+ call LoadCoinAmountToMem
+ callba CheckCoins
+ jr CheckMoneyAction
; 978a0
-Function978a0: ; 978a0
+LoadCoinAmountToMem: ; 978a0
call GetScriptByte
ld [$ffc4], a
call GetScriptByte
- ld [$ffc3], a
- ld bc, $ffc3
+ ld [hMoneyTemp], a
+ ld bc, hMoneyTemp
ret
; 0x978ae
@@ -2510,7 +2514,7 @@ Script_checktime: ; 0x978ae
xor a
ld [ScriptVar], a
- callba Functionc000
+ callba CheckTime
call GetScriptByte
and c
ret z
@@ -2545,7 +2549,7 @@ Script_addcellnum: ; 0x978da
ld [ScriptVar], a
call GetScriptByte
ld c, a
- callba Function90000
+ callba AddPhoneNumber
ret nc
ld a, $1
ld [ScriptVar], a
@@ -2561,7 +2565,7 @@ Script_delcellnum: ; 0x978ef
ld [ScriptVar], a
call GetScriptByte
ld c, a
- callba Function9000f
+ callba DelCellNum
ret nc
ld a, $1
ld [ScriptVar], a
@@ -2572,12 +2576,13 @@ Script_checkcellnum: ; 0x97904
; script command 0x2a
; parameters:
; person (SingleByteParam)
+; returns false if the cell number is not in your phone
xor a
ld [ScriptVar], a
call GetScriptByte
ld c, a
- callba Function90019
+ callba CheckCellNum
ret nc
ld a, $1
ld [ScriptVar], a
@@ -2590,16 +2595,17 @@ Script_specialphonecall: ; 0x97919
; call_id (MultiByteParam)
call GetScriptByte
- ld [wdc31], a
+ ld [wSpecialPhoneCallID], a
call GetScriptByte
- ld [wdc31 + 1], a
+ ld [wSpecialPhoneCallID + 1], a
ret
; 0x97926
Script_checkphonecall: ; 0x97926
; script command 0x9d
+; returns false if no special phone call is stored
- ld a, [wdc31]
+ ld a, [wSpecialPhoneCallID]
and a
jr z, .ok
ld a, 1
@@ -2637,7 +2643,7 @@ Script_givepoke: ; 0x97932
call GetScriptByte
call GetScriptByte
.ok
- callba Functione277
+ callba GivePoke
ld a, b
ld [ScriptVar], a
ret
@@ -2648,6 +2654,7 @@ Script_giveegg: ; 0x97968
; parameters:
; pkmn (PokemonParam)
; level (DecimalParam)
+; if no room in the party, return 0 in ScriptVar; else, return 2
xor a
ld [ScriptVar], a
@@ -2658,7 +2665,7 @@ Script_giveegg: ; 0x97968
ld [CurPartyLevel], a
callba GiveEgg
ret nc
- ld a, $2
+ ld a, 2
ld [ScriptVar], a
ret
; 0x97988
@@ -2672,7 +2679,7 @@ Script_setevent: ; 0x97988
ld e, a
call GetScriptByte
ld d, a
- ld b, $1
+ ld b, SET_FLAG
call EventFlagAction
ret
; 0x97996
@@ -2686,7 +2693,7 @@ Script_clearevent: ; 0x97996
ld e, a
call GetScriptByte
ld d, a
- ld b, $0
+ ld b, RESET_FLAG
call EventFlagAction
ret
; 0x979a4
@@ -2700,13 +2707,13 @@ Script_checkevent: ; 0x979a4
ld e, a
call GetScriptByte
ld d, a
- ld b, $2
+ ld b, CHECK_FLAG
call EventFlagAction
ld a, c
and a
- jr z, .asm_979b7 ; 0x979b3 $2
- ld a, $1
-.asm_979b7
+ jr z, .false ; 0x979b3 $2
+ ld a, 1
+.false
ld [ScriptVar], a
ret
; 0x979bb
@@ -2720,8 +2727,8 @@ Script_setflag: ; 0x979bb
ld e, a
call GetScriptByte
ld d, a
- ld b, $1
- call Function979ee
+ ld b, 1 ; set
+ call _EngineFlagAction
ret
; 0x979c9
@@ -2734,8 +2741,8 @@ Script_clearflag: ; 0x979c9
ld e, a
call GetScriptByte
ld d, a
- ld b, $0
- call Function979ee
+ ld b, 0 ; clear
+ call _EngineFlagAction
ret
; 0x979d7
@@ -2748,18 +2755,18 @@ Script_checkflag: ; 0x979d7
ld e, a
call GetScriptByte
ld d, a
- ld b, $2
- call Function979ee
+ ld b, 2 ; check
+ call _EngineFlagAction
ld a, c
and a
- jr z, .asm_979ea ; 0x979e6 $2
- ld a, $1
-.asm_979ea
+ jr z, .false ; 0x979e6 $2
+ ld a, 1
+.false
ld [ScriptVar], a
ret
; 0x979ee
-Function979ee: ; 0x979ee
+_EngineFlagAction: ; 0x979ee
callba EngineFlagAction
ret
; 0x979f5
@@ -2808,7 +2815,7 @@ Script_warpfacing: ; 0x97a0e
set 5, a
or c
ld [wd45b], a
-; 0x97a1d
+; fall through
Script_warp: ; 0x97a1d
; script command 0x3c
@@ -2818,9 +2825,10 @@ Script_warp: ; 0x97a1d
; x (SingleByteParam)
; y (SingleByteParam)
+; This seems to be some sort of error handling case.
call GetScriptByte
and a
- jr z, .asm_97a4a ; 0x97a21 $27
+ jr z, .not_ok ; 0x97a21 $27
ld [MapGroup], a
call GetScriptByte
ld [MapNumber], a
@@ -2828,24 +2836,24 @@ Script_warp: ; 0x97a1d
ld [XCoord], a
call GetScriptByte
ld [YCoord], a
- ld a, $ff
+ ld a, -1
ld [wd001], a
- ld a, $f1
+ ld a, -15
ld [$ff9f], a
- ld a, $1
- call Function261b
+ ld a, 1
+ call LoadMapStatus
call StopScript
ret
-.asm_97a4a
+.not_ok
call GetScriptByte
call GetScriptByte
call GetScriptByte
- ld a, $ff
+ ld a, -1
ld [wd001], a
- ld a, $fb
+ ld a, -5
ld [$ff9f], a
- ld a, $1
- call Function261b
+ ld a, 1
+ call LoadMapStatus
call StopScript
ret
; 0x97a65
@@ -2882,7 +2890,7 @@ Script_blackoutmod: ; 0x97a78
Script_reloadmapmusic: ; 0x97a85
; script command 0x83
- ld a, $1
+ ld a, 1
ld [wc2c1], a
ret
; 0x97a8b
@@ -2913,7 +2921,7 @@ Script_delcmdqueue: ; 0x97a9e
ld b, a
callba Function97e5c
ret c
- ld a, $1
+ ld a, 1
ld [ScriptVar], a
ret
; 0x97ab3
@@ -2929,8 +2937,8 @@ Script_changemap: ; 0x97ab3
ld [MapBlockDataPointer], a
call GetScriptByte
ld [MapBlockDataPointer + 1], a
- call Function24e4
- call Function2879
+ call ChangeMap
+ call BufferScreen
ret
; 0x97acc
@@ -2942,15 +2950,15 @@ Script_changeblock: ; 0x97acc
; block (SingleByteParam)
call GetScriptByte
- add $4
+ add 4
ld d, a
call GetScriptByte
- add $4
+ add 4
ld e, a
- call Function2a66
+ call GetBlockLocation
call GetScriptByte
ld [hl], a
- call Function2879
+ call BufferScreen
ret
; 0x97ae3
@@ -2962,7 +2970,7 @@ Script_reloadmappart:: ; 0x97ae3
call Function2173
call Function2914
callba Function104061
- call Function1ad2
+ call DrawOnMap
ret
; 0x97af6
@@ -2971,12 +2979,12 @@ Script_warpcheck: ; 0x97af6
call Function224a
ret nc
- callba Function966d0
+ callba SetAll_ScriptFlags3
ret
; 0x97b01
Function97b01: ; 0x97b01
- callba Function966d0
+ callba SetAll_ScriptFlags3
ret
; 0x97b08
@@ -2987,8 +2995,8 @@ Script_newloadmap: ; 0x97b08
call GetScriptByte
ld [$ff9f], a
- ld a, $1
- call Function261b
+ ld a, 1
+ call LoadMapStatus
call StopScript
ret
; 0x97b16
@@ -3064,14 +3072,14 @@ Script_pause: ; 0x97b47
call GetScriptByte
and a
- jr z, .asm_97b50 ; 0x97b4b $3
+ jr z, .loop ; 0x97b4b $3
ld [ScriptDelay], a
-.asm_97b50
+.loop
ld c, 2
call DelayFrames
ld hl, ScriptDelay
dec [hl]
- jr nz, .asm_97b50 ; 0x97b59 $f5
+ jr nz, .loop ; 0x97b59 $f5
ret
; 0x97b5c
@@ -3082,9 +3090,9 @@ Script_deactivatefacing: ; 0x97b5c
call GetScriptByte
and a
- jr z, .asm_97b65 ; 0x97b60 $3
+ jr z, .no_time ; 0x97b60 $3
ld [ScriptDelay], a
-.asm_97b65
+.no_time
ld a, SCRIPT_WAIT
ld [ScriptMode], a
call StopScript
@@ -3104,9 +3112,9 @@ Script_end: ; 0x97b74
; script command 0x91
call ExitScriptSubroutine
- jr c, .asm_97b7a
+ jr c, .resume
ret
-.asm_97b7a
+.resume
xor a
ld [ScriptRunning], a
ld a, SCRIPT_OFF
@@ -3121,8 +3129,8 @@ Script_return: ; 0x97b8c
; script command 0x90
call ExitScriptSubroutine
- jr c, .asm_97b91
-.asm_97b91
+ jr c, .dummy
+.dummy
ld hl, ScriptFlags
res 0, [hl]
call StopScript
@@ -3135,17 +3143,17 @@ ExitScriptSubroutine: ; 0x97b9a
ld hl, wd43c
ld a, [hl]
and a
- jr z, .asm_97bbe ; 0x97b9f $1d
+ jr z, .done ; 0x97b9f $1d
dec [hl]
ld e, [hl]
ld d, $0
ld hl, wd43d
- add hl, de
- add hl, de
- add hl, de
+rept 3
+ add hl,de
+endr
ld a, [hli]
ld b, a
- and $7f
+ and " "
ld [ScriptBank], a
ld a, [hli]
ld e, a
@@ -3155,7 +3163,7 @@ ExitScriptSubroutine: ; 0x97b9a
ld [ScriptPos + 1], a
and a
ret
-.asm_97bbe
+.done
scf
ret
; 0x97bc0
@@ -3196,7 +3204,7 @@ Script_credits: ; 0x97bf3
DisplayCredits:
call Script_resetfuncs
ld a, $3
- call Function261b
+ call LoadMapStatus
call StopScript
ret
; 0x97c051
@@ -3208,13 +3216,13 @@ Script_wait: ; 0x97c05
push bc
call GetScriptByte
-.asm_97c09
+.loop
push af
ld c, 6
call DelayFrames
pop af
dec a
- jr nz, .asm_97c09 ; 0x97c11 $f6
+ jr nz, .loop ; 0x97c11 $f6
pop bc
ret
; 0x97c15
@@ -3229,7 +3237,7 @@ Script_unknown0xa9: ; 0x97c15
; 0x97c20
-Function97c20: ; 97c20
+Function97c20: ; 97c20 unreferenced
ld a, [.byte]
ld [ScriptVar], a
ret
diff --git a/engine/spawn_points.asm b/engine/spawn_points.asm
index ce96b0ce5..eb42ab0d1 100644
--- a/engine/spawn_points.asm
+++ b/engine/spawn_points.asm
@@ -18,7 +18,7 @@ ENDM
spawn VIRIDIAN, VIRIDIAN_CITY, 23, 26
spawn PEWTER, PEWTER_CITY, 13, 26
spawn CERULEAN, CERULEAN_CITY, 19, 22
- spawn ROCK_TUNNEL, ROUTE_10A, 11, 2
+ spawn ROCK_TUNNEL, ROUTE_10_NORTH, 11, 2
spawn VERMILION, VERMILION_CITY, 9, 6
spawn LAVENDER, LAVENDER_TOWN, 5, 6
spawn SAFFRON, SAFFRON_CITY, 9, 30
@@ -41,22 +41,24 @@ ENDM
spawn BLACKTHORN, BLACKTHORN_CITY, 21, 30
spawn MT_SILVER, SILVER_CAVE_OUTSIDE, 23, 20
spawn FAST_SHIP, FAST_SHIP_CABINS_SW_SSW_NW, 6, 2
+NUM_SPAWNS EQU const_value
+const_value = -1
+ spawn N_A, N_A, -1, -1
- db -1, -1, -1, -1
-
- const NUM_SPAWNS
LoadSpawnPoint: ; 1531f
+ ; loads the spawn point in wd001
push hl
push de
ld a, [wd001]
- cp -1
- jr z, .asm_15341
+ cp SPAWN_N_A
+ jr z, .spawn_n_a
ld l, a
ld h, 0
- add hl, hl
- add hl, hl
+rept 2 ; multiply hl by 4
+ add hl,hl
+endr
ld de, SpawnPoints
add hl, de
ld a, [hli]
@@ -67,7 +69,7 @@ LoadSpawnPoint: ; 1531f
ld [XCoord], a
ld a, [hli]
ld [YCoord], a
-.asm_15341
+.spawn_n_a
pop de
pop hl
ret
@@ -75,32 +77,33 @@ LoadSpawnPoint: ; 1531f
IsSpawnPoint: ; 15344
+; Checks if the map loaded in de is a spawn point. Returns carry if it's a spawn point.
ld hl, SpawnPoints
ld c, 0
-.asm_15349
+.loop
ld a, [hl]
- cp -1
- jr z, .asm_1535f
+ cp SPAWN_N_A
+ jr z, .nope
cp d
- jr nz, .asm_15356
+ jr nz, .next
inc hl
ld a, [hld]
cp e
- jr z, .asm_15361
+ jr z, .yes
-.asm_15356
+.next
push bc
ld bc, 4
add hl, bc
pop bc
inc c
- jr .asm_15349
+ jr .loop
-.asm_1535f
+.nope
and a
ret
-.asm_15361
+.yes
scf
ret
; 15363
diff --git a/engine/specials.asm b/engine/specials.asm
index 35af3160d..e4e2005a6 100644
--- a/engine/specials.asm
+++ b/engine/specials.asm
@@ -2,9 +2,9 @@
Special:: ; c01b
; Run script special de.
ld hl, SpecialsPointers
- add hl, de
- add hl, de
- add hl, de
+rept 3
+ add hl,de
+endr
ld b, [hl]
inc hl
ld a, [hli]
@@ -16,64 +16,68 @@ Special:: ; c01b
; c029
SpecialsPointers:: ; c029
- add_special Function97c28
- add_special Function29ce8
- add_special Function29d11
- add_special Function29d92
- add_special Function29e66
- add_special Function29e82
- add_special Function29efa
- add_special Function29eee
- add_special Function29c92
- add_special Function29cf1
- add_special Function29cfa
- add_special Function29bfb
- add_special Function29c7b
- add_special Function29ec4
- add_special Function29ed9
- add_special Function29eaf
- add_special Function29f47
- add_special Functionc2f6
- add_special Functionc309
- add_special Function1050b9
- add_special Functionc34a
- add_special Function4d9e5
- add_special Function13a12
- add_special Function13a31
- add_special Function135db
- add_special Functionfbb32
- add_special Functionfbcd2
+ add_special WarpToSpawnPoint
+
+; Communications
+ add_special Special_SetBitsForLinkTradeRequest
+ add_special Special_WaitForLinkedFriend
+ add_special Special_CheckLinkTimeout
+ add_special Special_TryQuickSave
+ add_special Special_CheckBothSelectedSameRoom
+ add_special Special_FailedLinkToPast
+ add_special Special_CloseLink
+ add_special Special_AbortLink
+ add_special Special_SetBitsForBattleRequest
+ add_special Special_SetBitsForTimeCapsuleRequest
+ add_special Special_CheckTimeCapsuleCompatibility
+ add_special Special_EnterTimeCapsule
+ add_special Special_TradeCenter
+ add_special Special_Colosseum
+ add_special Special_TimeCapsule
+ add_special Special_CableClubCheckWhichChris
+ add_special Special_CheckMysteryGift
+ add_special Special_GetMysteryGiftItem
+ add_special Special_UnlockMysteryGift
+
+; Bug Catching Contest
+ add_special BugContestJudging
+ add_special CheckPartyFullAfterContest
+ add_special CheckFirstMonFainted
+ add_special ContestReturnMons
+ add_special Special_GiveParkBalls
+ add_special Special_CheckMagikarpLength
+ add_special Special_MagikarpHouseSign
add_special HealParty
- add_special Function1559a
- add_special Functionc2e7
- add_special Function166d6
- add_special Function1672a
- add_special Function16936
+ add_special PokemonCenterPC
+ add_special Special_KrissHousePC
+ add_special Special_DayCareMan
+ add_special Special_DayCareLady
+ add_special Special_DayCareManOutside
add_special MoveDeletion
- add_special Function16218
- add_special Function8cc04
+ add_special Special_BankOfMom
+ add_special Special_MagnetTrain
add_special SpecialNameRival
- add_special Function90913
- add_special Functionc2c0
- add_special Functionc2cd
- add_special Functionc355
- add_special Functionc360
- add_special Functionc373
- add_special Functionc380
- add_special Functionc38d
- add_special Functionc3db
- add_special Function8c084
- add_special Function8c092
- add_special Function8c0b6
- add_special Function8c079
- add_special Function8c0ab
- add_special Functiond91
+ add_special Special_SetDayOfWeek
+ add_special Special_TownMap
+ add_special Special_UnownPrinter
+ add_special MapRadio
+ add_special Special_UnownPuzzle
+ add_special Special_SlotMachine
+ add_special Special_CardFlip
+ add_special Special_DummyNonfunctionalGameCornerGame
+ add_special Special_WhiteBGMapBufferScreen
+ add_special FadeBlackBGMap
+ add_special Special_BattleTowerFade
+ add_special Special_FadeBlackQuickly
+ add_special FadeInBGMap
+ add_special Special_FadeInQuickly
+ add_special Special_ReloadSpritesNoPalettes
add_special WhiteBGMap
add_special UpdateTimePals
add_special ClearTileMap
- add_special Function1ad2
- add_special Functione4a
- add_special Functionc230
+ add_special DrawOnMap
+ add_special Special_ReplaceKrisSprite
+ add_special Special_GameCornerPrizeMonCheckDex
add_special SpecialSeenMon
add_special WaitSFX
add_special PlayMapMusic
@@ -87,10 +91,10 @@ SpecialsPointers:: ; c029
add_special Functionc3ef
add_special Function17421
add_special Function17440
- add_special Function139a8
+ add_special Special_SelectRandomBugContestContestants
add_special Functionc3fc
- add_special Function26feb
- add_special Function27043
+ add_special ToggleMaptileDecorations
+ add_special ToggleDecorationsVisibility
add_special SpecialGiveShuckle
add_special SpecialReturnShuckle
add_special Function73f7
@@ -105,12 +109,12 @@ SpecialsPointers:: ; c029
add_special Function88018
add_special SpecialNameRater
add_special Functionc2da
- add_special Function718d
+ add_special GetFirstPokemonHappiness
add_special Function71ac
add_special Function2a4ab
add_special Function2a51f
add_special RandomPhoneMon
- add_special Function14209
+ add_special RunCallback_04
add_special Functionfb841
add_special SpecialSnorlaxAwake
add_special Function7413
@@ -148,10 +152,10 @@ SpecialsPointers:: ; c029
add_special Function101225
add_special Function101231
add_special Function4925b
- add_special Function8adef
+ add_special SpecialOmanyteChamber
add_special Function11c1ab
add_special Function170687
- add_special Function8ae68
+ add_special Special_DisplayUnownWords
add_special Function17d224
add_special Function17d2b6
add_special Function17d2ce
@@ -170,17 +174,17 @@ SpecialsPointers:: ; c029
add_special SpecialMonCheck
add_special Functionc225
add_special Function170bd2
- add_special Function10366e
+ add_special Mobile_SelectThreeMons
add_special Function1037eb
add_special Function10383c
- add_special Function1060a2
+ add_special Mobile_HealParty
add_special Function14168
add_special Function1037c2
add_special Function10630f
add_special Function103780
add_special Function10387b
add_special Function4ae12
- add_special Function1047eb
+ add_special LoadMapPalettes
add_special Function4a927
add_special Function90a54
add_special Function90a88
@@ -198,7 +202,7 @@ Functionc225: ; c225
ret
; c230
-Functionc230: ; c230
+Special_GameCornerPrizeMonCheckDex: ; c230
ld a, [ScriptVar]
dec a
call CheckCaughtMon
@@ -263,7 +267,7 @@ Functionc298: ; c298
SpecialNameRival: ; 0xc29d
ld b, $2 ; rival
ld de, RivalName
- callba Function116b7
+ callba _NamingScreen
; default to "SILVER"
ld hl, RivalName
ld de, DefaultRivalName
@@ -279,14 +283,14 @@ SpecialNameRater: ; c2b9
ret
; c2c0
-Functionc2c0: ; c2c0
+Special_TownMap: ; c2c0
call FadeToMenu
callba Function9191c
call Function2b4d
ret
; c2cd
-Functionc2cd: ; c2cd
+Special_UnownPrinter: ; c2cd
call FadeToMenu
callba Function16be4
call Function2b4d
@@ -300,7 +304,7 @@ Functionc2da: ; c2da
ret
; c2e7
-Functionc2e7: ; c2e7
+Special_KrissHousePC: ; c2e7
xor a
ld [ScriptVar], a
callba Function156d9
@@ -309,21 +313,21 @@ Functionc2e7: ; c2e7
ret
; c2f6
-Functionc2f6: ; c2f6
+Special_CheckMysteryGift: ; c2f6
ld a, $0
call GetSRAMBank
ld a, [$abe2]
and a
- jr z, .asm_c302
+ jr z, .no
inc a
-.asm_c302
+.no
ld [ScriptVar], a
call CloseSRAM
ret
; c309
-Functionc309: ; c309
+Special_GetMysteryGiftItem: ; c309
ld a, $0
call GetSRAMBank
ld a, [$abe2]
@@ -358,21 +362,21 @@ UnknownText_0xc345: ; 0xc345
db "@"
; 0xc34a
-Functionc34a: ; c34a
- callba Function1369d
+BugContestJudging: ; c34a
+ callba _BugContestJudging
ld a, b
ld [ScriptVar], a
ret
; c355
-Functionc355: ; c355
+MapRadio: ; c355
ld a, [ScriptVar]
ld e, a
- callba Function91a53
+ callba PlayRadio
ret
; c360
-Functionc360: ; c360
+Special_UnownPuzzle: ; c360
call FadeToMenu
callba Functione1190
ld a, [wd0ec]
@@ -381,34 +385,34 @@ Functionc360: ; c360
ret
; c373
-Functionc373: ; c373
- call Functionc3ae
+Special_SlotMachine: ; c373
+ call Special_CheckCoins
ret c
- ld a, BANK(Function926c7)
- ld hl, Function926c7
- call Functionc39a
+ ld a, BANK(_SlotMachine)
+ ld hl, _SlotMachine
+ call Special_StartGameCornerGame
ret
; c380
-Functionc380: ; c380
- call Functionc3ae
+Special_CardFlip: ; c380
+ call Special_CheckCoins
ret c
- ld a, BANK(Functione00ee)
- ld hl, Functione00ee
- call Functionc39a
+ ld a, BANK(_CardFlip)
+ ld hl, _CardFlip
+ call Special_StartGameCornerGame
ret
; c38d
-Functionc38d: ; c38d
- call Functionc3ae
+Special_DummyNonfunctionalGameCornerGame: ; c38d
+ call Special_CheckCoins
ret c
- ld a, BANK(Functione1e5b)
- ld hl, Functione1e5b
- call Functionc39a
+ ld a, BANK(_DummyGame)
+ ld hl, _DummyGame
+ call Special_StartGameCornerGame
ret
; c39a
-Functionc39a: ; c39a
+Special_StartGameCornerGame: ; c39a
call Function31cf
call FadeToMenu
ld hl, wd0e8
@@ -423,7 +427,7 @@ Functionc39a: ; c39a
ret
; c3ae
-Functionc3ae: ; c3ae
+Special_CheckCoins: ; c3ae
ld hl, Coins
ld a, [hli]
or [hl]
@@ -461,9 +465,9 @@ UnknownText_0xc3d6: ; 0xc3d6
db "@"
; 0xc3db
-Functionc3db: ; c3db
+Special_WhiteBGMapBufferScreen: ; c3db
call WhiteBGMap
- call Function2879
+ call BufferScreen
ret
; c3e2
@@ -492,17 +496,18 @@ Functionc3fc: ; c3fc
; c403
-Functionc403:: ; c403
+LoadWildData:: ; c403
ld a, c
and a
- jr nz, .asm_c410
+ jr nz, .swarm_route35
+; swarm dark cave violet entrance
ld a, d
ld [wdfcc], a
ld a, e
ld [wdfcd], a
ret
-.asm_c410
+.swarm_route35
ld a, d
ld [wdc5a], a
ld a, e
diff --git a/engine/std_scripts.asm b/engine/std_scripts.asm
index 763ae0908..aa0b879a7 100644
--- a/engine/std_scripts.asm
+++ b/engine/std_scripts.asm
@@ -46,10 +46,10 @@ StdScripts::
dbw BANK(RematchGiftFScript), RematchGiftFScript
dbw BANK(GymStatue1Script), GymStatue1Script
dbw BANK(GymStatue2Script), GymStatue2Script
- dbw BANK(UnknownScript_0xbcdb9), UnknownScript_0xbcdb9
- dbw BANK(UnknownScript_0xbcdc3), UnknownScript_0xbcdc3
+ dbw BANK(ReceiveItemScript), ReceiveItemScript
+ dbw BANK(ReceiveTogepiEggScript), ReceiveTogepiEggScript
dbw BANK(PCScript), PCScript
- dbw BANK(UnknownScript_0xbcdcd), UnknownScript_0xbcdcd
+ dbw BANK(GameCornerCoinVendorScript), GameCornerCoinVendorScript
dbw BANK(HappinessCheckScript), HappinessCheckScript
PokeCenterNurseScript:
@@ -107,12 +107,12 @@ PokeCenterNurseScript:
farwritetext UnknownText_0x1b01bd
pause 20
- special Function1060a2
+ special Mobile_HealParty
spriteface $fe, LEFT
pause 10
special HealParty
playmusic MUSIC_NONE
- writebyte 0
+ writebyte 0 ; Machine is at a Pokemon Center
special HealMachineAnim
pause 30
special RestartMapMusic
@@ -159,7 +159,7 @@ PokeCenterNurseScript:
.pokerus_done
setflag ENGINE_POKERUS
- specialphonecall 1 ; elm calls about pokerus
+ specialphonecall ELMCALL_POKERUS
end
DifficultBookshelfScript:
@@ -184,7 +184,7 @@ TownMapScript:
loadfont
farwritetext TownMapText
closetext
- special Functionc2c0
+ special Special_TownMap
loadmovesprites
end
@@ -204,7 +204,7 @@ HomepageScript:
Radio1Script:
loadfont
writebyte $0
- special Functionc355
+ special MapRadio
loadmovesprites
end
@@ -212,7 +212,7 @@ Radio2Script:
; Lucky Channel
loadfont
writebyte $4
- special Functionc355
+ special MapRadio
loadmovesprites
end
@@ -221,7 +221,7 @@ TrashCanScript: ; 0xbc1a5
PCScript:
loadfont
- special Function1559a
+ special PokemonCenterPC
loadmovesprites
end
@@ -287,362 +287,362 @@ DayToTextScript:
db "SATURDAY@"
GoldenrodRocketsScript:
- clearevent EVENT_6CD
+ clearevent EVENT_GOLDENROD_CITY_ROCKET_TAKEOVER
end
RadioTowerRocketsScript:
setflag ENGINE_ROCKETS_IN_RADIO_TOWER
- setevent EVENT_6CF
- setevent EVENT_6D1
- clearevent EVENT_6CE
+ setevent EVENT_GOLDENROD_CITY_CIVILIANS
+ setevent EVENT_RADIO_TOWER_BLACKBELT_BLOCKS_STAIRS
+ clearevent EVENT_RADIO_TOWER_ROCKET_TAKEOVER
clearevent EVENT_USED_THE_CARD_KEY_IN_THE_RADIO_TOWER
- setevent EVENT_756
- specialphonecall $0004
+ setevent EVENT_MAHOGANY_TOWN_POKEFAN_M_BLOCKS_EAST
+ specialphonecall ELMCALL_WEIRDBROADCAST
domaptrigger GROUP_MAHOGANY_TOWN, MAP_MAHOGANY_TOWN, $1
end
BugContestResultsWarpScript:
special WhiteBGMap
- scall UnknownScript_0xbc380
- setevent EVENT_747
- clearevent EVENT_748
- setevent EVENT_2D2
+ scall BugContestResults_CopyContestantsToResults
+ setevent EVENT_ROUTE_36_NATIONAL_PARK_GATE_OFFICER_CONTEST_DAY
+ clearevent EVENT_ROUTE_36_NATIONAL_PARK_GATE_OFFICER_NOT_CONTEST_DAY
+ setevent EVENT_WARPED_FROM_ROUTE_35_NATIONAL_PARK_GATE
warp GROUP_ROUTE_36_NATIONAL_PARK_GATE, MAP_ROUTE_36_NATIONAL_PARK_GATE, $0, $4
- applymovement $0, MovementData_0xbcea1
+ applymovement $0, Movement_ContestResults_WalkAfterWarp
BugContestResultsScript:
clearflag ENGINE_BUG_CONTEST_TIMER
- clearevent EVENT_2D2
- clearevent EVENT_313
- clearevent EVENT_314
- clearevent EVENT_315
- clearevent EVENT_316
+ clearevent EVENT_WARPED_FROM_ROUTE_35_NATIONAL_PARK_GATE
+ clearevent EVENT_CONTEST_OFFICER_HAS_SUN_STONE
+ clearevent EVENT_CONTEST_OFFICER_HAS_EVERSTONE
+ clearevent EVENT_CONTEST_OFFICER_HAS_GOLD_BERRY
+ clearevent EVENT_CONTEST_OFFICER_HAS_BERRY
loadfont
- farwritetext UnknownText_0x1b05bf
+ farwritetext ContestResults_ReadyToJudgeText
closetext
- special Functionc34a
+ special BugContestJudging
RAM2MEM $0
- if_equal $1, UnknownScript_0xbc31e
- if_equal $2, UnknownScript_0xbc332
- if_equal $3, UnknownScript_0xbc343
- farwritetext UnknownText_0x1b0681
+ if_equal 1, BugContestResults_FirstPlace
+ if_equal 2, BugContestResults_SecondPlace
+ if_equal 3, BugContestResults_ThirdPlace
+ farwritetext ContestResults_ConsolationPrizeText
keeptextopen
waitbutton
verbosegiveitem BERRY, 1
- iffalse UnknownScript_0xbc375
+ iffalse BugContestResults_NoRoomForBerry
-UnknownScript_0xbc2a9:
- farwritetext UnknownText_0x1b06b7
+BugContestResults_DidNotWin
+ farwritetext ContestResults_DidNotWinText
keeptextopen
- jump UnknownScript_0xbc2b6
+ jump BugContestResults_FinishUp
; 0xbc2b1
-UnknownScript_0xbc2b1: ; 0xbc2b1
- farwritetext UnknownText_0x1b065b
+BugContestResults_ReturnAfterWinnersPrize ; 0xbc2b1
+ farwritetext ContestResults_JoinUsNextTimeText
keeptextopen
-UnknownScript_0xbc2b6:
- checkevent EVENT_308
- iffalse UnknownScript_0xbc2c4
- farwritetext UnknownText_0x1b06d9
+BugContestResults_FinishUp
+ checkevent EVENT_LEFT_MONS_WITH_CONTEST_OFFICER
+ iffalse BugContestResults_DidNotLeaveMons
+ farwritetext ContestResults_ReturnPartyText
closetext
- special Function13a31
-UnknownScript_0xbc2c4:
- special Function4d9e5
- if_equal $0, UnknownScript_0xbc2d4
- if_equal $2, UnknownScript_0xbc2d4
- farwritetext UnknownText_0x1b070d
+ special ContestReturnMons
+BugContestResults_DidNotLeaveMons
+ special CheckPartyFullAfterContest
+ if_equal $0, BugContestResults_CleanUp
+ if_equal $2, BugContestResults_CleanUp
+ farwritetext ContestResults_PartyFullText
closetext
-UnknownScript_0xbc2d4:
+BugContestResults_CleanUp
loadmovesprites
dotrigger $0
domaptrigger GROUP_ROUTE_35_NATIONAL_PARK_GATE, MAP_ROUTE_35_NATIONAL_PARK_GATE, $0
- setevent EVENT_716
- setevent EVENT_717
- setevent EVENT_718
- setevent EVENT_719
- setevent EVENT_71A
- setevent EVENT_71B
- setevent EVENT_71C
- setevent EVENT_71D
- setevent EVENT_71E
- setevent EVENT_71F
- setevent EVENT_720
- setevent EVENT_721
- setevent EVENT_722
- setevent EVENT_723
- setevent EVENT_724
- setevent EVENT_725
- setevent EVENT_726
- setevent EVENT_727
- setevent EVENT_728
- setevent EVENT_729
- setflag ENGINE_51
+ setevent EVENT_BUG_CATCHING_CONTESTANT_1A
+ setevent EVENT_BUG_CATCHING_CONTESTANT_2A
+ setevent EVENT_BUG_CATCHING_CONTESTANT_3A
+ setevent EVENT_BUG_CATCHING_CONTESTANT_4A
+ setevent EVENT_BUG_CATCHING_CONTESTANT_5A
+ setevent EVENT_BUG_CATCHING_CONTESTANT_6A
+ setevent EVENT_BUG_CATCHING_CONTESTANT_7A
+ setevent EVENT_BUG_CATCHING_CONTESTANT_8A
+ setevent EVENT_BUG_CATCHING_CONTESTANT_9A
+ setevent EVENT_BUG_CATCHING_CONTESTANT_10A
+ setevent EVENT_BUG_CATCHING_CONTESTANT_1B
+ setevent EVENT_BUG_CATCHING_CONTESTANT_2B
+ setevent EVENT_BUG_CATCHING_CONTESTANT_3B
+ setevent EVENT_BUG_CATCHING_CONTESTANT_4B
+ setevent EVENT_BUG_CATCHING_CONTESTANT_5B
+ setevent EVENT_BUG_CATCHING_CONTESTANT_6B
+ setevent EVENT_BUG_CATCHING_CONTESTANT_7B
+ setevent EVENT_BUG_CATCHING_CONTESTANT_8B
+ setevent EVENT_BUG_CATCHING_CONTESTANT_9B
+ setevent EVENT_BUG_CATCHING_CONTESTANT_10B
+ setflag ENGINE_DAILY_BUG_CONTEST
special PlayMapMusic
end
; 0xbc31e
-UnknownScript_0xbc31e: ; 0xbc31e
- setevent EVENT_000
+BugContestResults_FirstPlace ; 0xbc31e
+ setevent EVENT_GAVE_KURT_APRICORNS
itemtotext SUN_STONE, $1
- farwritetext UnknownText_0x1b0621
+ farwritetext ContestResults_PlayerWonAPrizeText
closetext
verbosegiveitem SUN_STONE, 1
- iffalse UnknownScript_0xbc354
- jump UnknownScript_0xbc2b1
+ iffalse BugContestResults_NoRoomForSunStone
+ jump BugContestResults_ReturnAfterWinnersPrize
; 0xbc332
-UnknownScript_0xbc332: ; 0xbc332
+BugContestResults_SecondPlace ; 0xbc332
itemtotext EVERSTONE, $1
- farwritetext UnknownText_0x1b0621
+ farwritetext ContestResults_PlayerWonAPrizeText
closetext
verbosegiveitem EVERSTONE, 1
- iffalse UnknownScript_0xbc35f
- jump UnknownScript_0xbc2b1
+ iffalse BugContestResults_NoRoomForEverstone
+ jump BugContestResults_ReturnAfterWinnersPrize
; 0xbc343
-UnknownScript_0xbc343: ; 0xbc343
+BugContestResults_ThirdPlace ; 0xbc343
itemtotext GOLD_BERRY, $1
- farwritetext UnknownText_0x1b0621
+ farwritetext ContestResults_PlayerWonAPrizeText
closetext
verbosegiveitem GOLD_BERRY, 1
- iffalse UnknownScript_0xbc36a
- jump UnknownScript_0xbc2b1
+ iffalse BugContestResults_NoRoomForGoldBerry
+ jump BugContestResults_ReturnAfterWinnersPrize
; 0xbc354
-UnknownScript_0xbc354: ; 0xbc354
+BugContestResults_NoRoomForSunStone ; 0xbc354
farwritetext UnknownText_0x1b08cc
keeptextopen
- setevent EVENT_313
- jump UnknownScript_0xbc2b1
+ setevent EVENT_CONTEST_OFFICER_HAS_SUN_STONE
+ jump BugContestResults_ReturnAfterWinnersPrize
; 0xbc35f
-UnknownScript_0xbc35f: ; 0xbc35f
+BugContestResults_NoRoomForEverstone ; 0xbc35f
farwritetext UnknownText_0x1b08cc
keeptextopen
- setevent EVENT_314
- jump UnknownScript_0xbc2b1
+ setevent EVENT_CONTEST_OFFICER_HAS_EVERSTONE
+ jump BugContestResults_ReturnAfterWinnersPrize
; 0xbc36a
-UnknownScript_0xbc36a: ; 0xbc36a
+BugContestResults_NoRoomForGoldBerry ; 0xbc36a
farwritetext UnknownText_0x1b08cc
keeptextopen
- setevent EVENT_315
- jump UnknownScript_0xbc2b1
+ setevent EVENT_CONTEST_OFFICER_HAS_GOLD_BERRY
+ jump BugContestResults_ReturnAfterWinnersPrize
; 0xbc375
-UnknownScript_0xbc375: ; 0xbc375
+BugContestResults_NoRoomForBerry ; 0xbc375
farwritetext UnknownText_0x1b08cc
keeptextopen
- setevent EVENT_316
- jump UnknownScript_0xbc2a9
+ setevent EVENT_CONTEST_OFFICER_HAS_BERRY
+ jump BugContestResults_DidNotWin
; 0xbc380
-UnknownScript_0xbc380: ; 0xbc380
- checkevent EVENT_716
+BugContestResults_CopyContestantsToResults ; 0xbc380
+ checkevent EVENT_BUG_CATCHING_CONTESTANT_1A
iftrue .skip1
- clearevent EVENT_720
+ clearevent EVENT_BUG_CATCHING_CONTESTANT_1B
.skip1
- checkevent EVENT_717
+ checkevent EVENT_BUG_CATCHING_CONTESTANT_2A
iftrue .skip2
- clearevent EVENT_721
+ clearevent EVENT_BUG_CATCHING_CONTESTANT_2B
.skip2
- checkevent EVENT_718
+ checkevent EVENT_BUG_CATCHING_CONTESTANT_3A
iftrue .skip3
- clearevent EVENT_722
+ clearevent EVENT_BUG_CATCHING_CONTESTANT_3B
.skip3
- checkevent EVENT_719
+ checkevent EVENT_BUG_CATCHING_CONTESTANT_4A
iftrue .skip4
- clearevent EVENT_723
+ clearevent EVENT_BUG_CATCHING_CONTESTANT_4B
.skip4
- checkevent EVENT_71A
+ checkevent EVENT_BUG_CATCHING_CONTESTANT_5A
iftrue .skip5
- clearevent EVENT_724
+ clearevent EVENT_BUG_CATCHING_CONTESTANT_5B
.skip5
- checkevent EVENT_71B
+ checkevent EVENT_BUG_CATCHING_CONTESTANT_6A
iftrue .skip6
- clearevent EVENT_725
+ clearevent EVENT_BUG_CATCHING_CONTESTANT_6B
.skip6
- checkevent EVENT_71C
+ checkevent EVENT_BUG_CATCHING_CONTESTANT_7A
iftrue .skip7
- clearevent EVENT_726
+ clearevent EVENT_BUG_CATCHING_CONTESTANT_7B
.skip7
- checkevent EVENT_71D
+ checkevent EVENT_BUG_CATCHING_CONTESTANT_8A
iftrue .skip8
- clearevent EVENT_727
+ clearevent EVENT_BUG_CATCHING_CONTESTANT_8B
.skip8
- checkevent EVENT_71E
+ checkevent EVENT_BUG_CATCHING_CONTESTANT_9A
iftrue .skip9
- clearevent EVENT_728
+ clearevent EVENT_BUG_CATCHING_CONTESTANT_9B
.skip9
- checkevent EVENT_71F
+ checkevent EVENT_BUG_CATCHING_CONTESTANT_10A
iftrue .skip10
- clearevent EVENT_729
+ clearevent EVENT_BUG_CATCHING_CONTESTANT_10B
.skip10
end
InitializeEventsScript:
- setevent EVENT_6CB
- setevent EVENT_6CE
- setevent EVENT_6CD
- setevent EVENT_6D0
- setevent EVENT_6F3
- setevent EVENT_6E9
- setevent EVENT_6F4
- setevent EVENT_6D5
- setevent EVENT_6DE
- setevent EVENT_6DD
- setevent EVENT_6DF
- setevent EVENT_6C0
- setevent EVENT_6E4
+ setevent EVENT_EARLS_ACADEMY_EARL
+ setevent EVENT_RADIO_TOWER_ROCKET_TAKEOVER
+ setevent EVENT_GOLDENROD_CITY_ROCKET_TAKEOVER
+ setevent EVENT_RADIO_TOWER_CIVILIANS_AFTER
+ setevent EVENT_ILEX_FOREST_APPRENTICE
+ setevent EVENT_ILEX_FOREST_FARFETCHD
+ setevent EVENT_ILEX_FOREST_CHARCOAL_MASTER
+ setevent EVENT_MAHOGANY_MART_LANCE_AND_DRAGONITE
+ setevent EVENT_TEAM_ROCKET_BASE_B2F_GRUNT_WITH_EXECUTIVE
+ setevent EVENT_TEAM_ROCKET_BASE_B2F_EXECUTIVE
+ setevent EVENT_TEAM_ROCKET_BASE_B2F_DRAGONITE
+ setevent EVENT_RIVAL_TEAM_ROCKET_BASE
+ setevent EVENT_BLACKTHORN_CITY_SUPER_NERD_DOES_NOT_BLOCK_GYM
setevent EVENT_USED_THE_CARD_KEY_IN_THE_RADIO_TOWER
- setevent EVENT_6BE
- setevent EVENT_6BF
- setevent EVENT_6C1
- setevent EVENT_6F9
- setevent EVENT_6FD
+ setevent EVENT_RIVAL_CHERRYGROVE_CITY
+ setevent EVENT_RIVAL_AZALEA_TOWN
+ setevent EVENT_RIVAL_UNDERGROUND_PATH
+ setevent EVENT_AZALEA_TOWN_SLOWPOKES
+ setevent EVENT_KURTS_HOUSE_SLOWPOKE
setevent EVENT_GUIDE_GENT_VISIBLE_IN_CHERRYGROVE
setevent EVENT_ELMS_AIDE_IN_VIOLET_POKEMON_CENTER
- setevent EVENT_702
- setevent EVENT_703
- setevent EVENT_704
- setevent EVENT_BOULDER_IN_ICE_PATH_1
- setevent EVENT_BOULDER_IN_ICE_PATH_2
- setevent EVENT_BOULDER_IN_ICE_PATH_3
- setevent EVENT_BOULDER_IN_ICE_PATH_4
- setevent EVENT_715
- setevent EVENT_716
- setevent EVENT_717
- setevent EVENT_718
- setevent EVENT_719
- setevent EVENT_71A
- setevent EVENT_71B
- setevent EVENT_71C
- setevent EVENT_71D
- setevent EVENT_71E
- setevent EVENT_71F
- setevent EVENT_720
- setevent EVENT_721
- setevent EVENT_722
- setevent EVENT_723
- setevent EVENT_724
- setevent EVENT_725
- setevent EVENT_726
- setevent EVENT_727
- setevent EVENT_728
- setevent EVENT_729
- setevent EVENT_72C
- setevent EVENT_72F
- setevent EVENT_72D
- setevent EVENT_735
- setevent EVENT_736
- setevent EVENT_73C
- setevent EVENT_73D
- setevent EVENT_741
- setevent EVENT_742
- setevent EVENT_743
- setevent EVENT_744
- setevent EVENT_2A4
- setevent EVENT_2AF
- setevent EVENT_749
- setevent EVENT_6D3
- setevent EVENT_74D
+ setevent EVENT_COP_IN_ELMS_LAB
+ setevent EVENT_RUINS_OF_ALPH_OUTSIDE_SCIENTIST
+ setevent EVENT_RUINS_OF_ALPH_RESEARCH_CENTER_SCIENTIST
+ setevent EVENT_BOULDER_IN_ICE_PATH_1A
+ setevent EVENT_BOULDER_IN_ICE_PATH_2A
+ setevent EVENT_BOULDER_IN_ICE_PATH_3A
+ setevent EVENT_BOULDER_IN_ICE_PATH_4A
+ setevent EVENT_ROUTE_30_YOUNGSTER_JOEY
+ setevent EVENT_BUG_CATCHING_CONTESTANT_1A
+ setevent EVENT_BUG_CATCHING_CONTESTANT_2A
+ setevent EVENT_BUG_CATCHING_CONTESTANT_3A
+ setevent EVENT_BUG_CATCHING_CONTESTANT_4A
+ setevent EVENT_BUG_CATCHING_CONTESTANT_5A
+ setevent EVENT_BUG_CATCHING_CONTESTANT_6A
+ setevent EVENT_BUG_CATCHING_CONTESTANT_7A
+ setevent EVENT_BUG_CATCHING_CONTESTANT_8A
+ setevent EVENT_BUG_CATCHING_CONTESTANT_9A
+ setevent EVENT_BUG_CATCHING_CONTESTANT_10A
+ setevent EVENT_BUG_CATCHING_CONTESTANT_1B
+ setevent EVENT_BUG_CATCHING_CONTESTANT_2B
+ setevent EVENT_BUG_CATCHING_CONTESTANT_3B
+ setevent EVENT_BUG_CATCHING_CONTESTANT_4B
+ setevent EVENT_BUG_CATCHING_CONTESTANT_5B
+ setevent EVENT_BUG_CATCHING_CONTESTANT_6B
+ setevent EVENT_BUG_CATCHING_CONTESTANT_7B
+ setevent EVENT_BUG_CATCHING_CONTESTANT_8B
+ setevent EVENT_BUG_CATCHING_CONTESTANT_9B
+ setevent EVENT_BUG_CATCHING_CONTESTANT_10B
+ setevent EVENT_FAST_SHIP_1F_GENTLEMAN
+ setevent EVENT_FAST_SHIP_B1F_SAILOR_RIGHT
+ setevent EVENT_FAST_SHIP_CABINS_NNW_NNE_NE_SAILOR
+ setevent EVENT_LAKE_OF_RAGE_CIVILIANS
+ setevent EVENT_MAHOGANY_MART_OWNERS
+ setevent EVENT_TIN_TOWER_ROOF_HO_OH
+ setevent EVENT_WHIRL_ISLAND_LUGIA_CHAMBER_LUGIA
+ setevent EVENT_KRISS_HOUSE_2F_CONSOLE
+ setevent EVENT_KRISS_HOUSE_2F_DOLL_1
+ setevent EVENT_KRISS_HOUSE_2F_DOLL_2
+ setevent EVENT_KRISS_HOUSE_2F_BIG_DOLL
+ setevent EVENT_DECO_BED_1
+ setevent EVENT_DECO_PLANT_4
+ setevent EVENT_GOLDENROD_TRAIN_STATION_GENTLEMAN
+ setevent EVENT_OLIVINE_GYM_JASMINE
+ setevent EVENT_BLACKTHORN_CITY_GRAMPS_NOT_BLOCKING_DRAGONS_DEN
setevent EVENT_MET_BILL
- setevent EVENT_713
- setevent EVENT_711
- setevent EVENT_6D4
+ setevent EVENT_ECRUTEAK_POKE_CENTER_BILL
+ setevent EVENT_MYSTERY_GIFT_DELIVERY_GUY
+ setevent EVENT_LAKE_OF_RAGE_LANCE
setevent EVENT_WAREHOUSE_LAYOUT_1
setevent EVENT_WAREHOUSE_BLOCKED_OFF
- setevent EVENT_6D8
- setevent EVENT_6C3
- setevent EVENT_6C2
- setevent EVENT_6C6
- setevent EVENT_75F
- setevent EVENT_731
- setevent EVENT_74A
+ setevent EVENT_DRAGONS_DEN_CLAIR
+ setevent EVENT_RIVAL_OLIVINE_CITY
+ setevent EVENT_RIVAL_VICTORY_ROAD
+ setevent EVENT_RIVAL_DRAGONS_DEN
+ setevent EVENT_LANCES_ROOM_OAK_AND_MARY
+ setevent EVENT_FAST_SHIP_CABINS_SE_SSE_CAPTAINS_CABIN_TWIN_1
+ setevent EVENT_BURNED_TOWER_B1F_BEASTS_1
setevent EVENT_RED_IN_MT_SILVER
- setevent EVENT_738
- setevent EVENT_73A
- setevent EVENT_73B
- setevent EVENT_733
- setevent EVENT_73F
- setevent EVENT_78D
- setevent EVENT_766
- setevent EVENT_768
+ setevent EVENT_OLIVINE_PORT_SPRITES_AFTER_HALL_OF_FAME
+ setevent EVENT_FAST_SHIP_PASSENGERS_EASTBOUND
+ setevent EVENT_FAST_SHIP_PASSENGERS_WESTBOUND
+ setevent EVENT_OLIVINE_PORT_PASSAGE_POKEFAN_M
+ setevent EVENT_KURTS_HOUSE_KURT_2
+ setevent EVENT_KURTS_HOUSE_GRANDDAUGHTER_2
+ setevent EVENT_RANG_CLEAR_BELL_1
+ setevent EVENT_FLORIA_AT_FLOWER_SHOP
setevent EVENT_FLORIA_AT_SUDOWOODO
- setevent EVENT_76A
- setevent EVENT_78E
- setevent EVENT_78F
- setevent EVENT_790
- setevent EVENT_791
- setevent EVENT_793
- setevent EVENT_7A4
- setevent EVENT_7A4
- setevent EVENT_7A5
- setevent EVENT_6EC
- setevent EVENT_6ED
- setevent EVENT_6F0
- setevent EVENT_7A9
+ setevent EVENT_GOLDENROD_CITY_MOVE_TUTOR
+ setevent EVENT_RUINS_OF_ALPH_OUTSIDE_TOURIST_FISHER
+ setevent EVENT_RUINS_OF_ALPH_OUTSIDE_TOURIST_YOUNGSTERS
+ setevent EVENT_DRAGON_SHRINE_CLAIR
+ setevent EVENT_BATTLE_TOWER_BATTLE_ROOM_YOUNGSTER
+ setevent EVENT_KRISS_NEIGHBORS_HOUSE_NEIGHBOR
+ setevent EVENT_AZALEA_TOWN_KURT
+ setevent EVENT_AZALEA_TOWN_KURT
+ setevent EVENT_ILEX_FOREST_KURT
+ setevent EVENT_ROUTE_34_ILEX_FOREST_GATE_TEACHER_IN_WALKWAY
+ setevent EVENT_ILEX_FOREST_LASS
+ setevent EVENT_GOLDENROD_SALE_OFF
+ setevent EVENT_ECRUTEAK_CITY_GRAMPS
setevent EVENT_EUSINE_IN_BURNED_TOWER
- setevent EVENT_6C8
- setevent EVENT_7AC
- setevent EVENT_7AD
- setevent EVENT_7B5
- setevent EVENT_7B6
- setevent EVENT_7C5
+ setevent EVENT_KRISS_HOUSE_MOM_2
+ setevent EVENT_WISE_TRIOS_ROOM_WISE_TRIO_2
+ setevent EVENT_CIANWOOD_CITY_EUSINE
+ setevent EVENT_TIN_TOWER_1F_EUSINE
+ setevent EVENT_TIN_TOWER_1F_WISE_TRIO_1
+ setevent EVENT_TIN_TOWER_1F_WISE_TRIO_2
setevent EVENT_SET_WHEN_FOUGHT_HO_OH
setevent EVENT_SAW_SUICUNE_ON_ROUTE_36
setevent EVENT_SAW_SUICUNE_ON_ROUTE_42
setevent EVENT_SAW_SUICUNE_AT_CIANWOOD_CITY
- setevent EVENT_7CF
+ setevent EVENT_BATTLE_TOWER_OUTSIDE_SAILOR
setflag ENGINE_ROCKET_SIGNAL_ON_CH20
setflag ENGINE_ROCKETS_IN_MAHOGANY
- variablesprite $4, $52
- variablesprite $5, $4
- variablesprite $6, $35
- variablesprite $7, $a
- variablesprite $8, $a
- variablesprite $9, $a
- variablesprite $a, $a
- variablesprite $b, $28
- variablesprite $c, $28
+ variablesprite SPRITE_WEIRD_TREE, SPRITE_SUDOWOODO
+ variablesprite SPRITE_OLIVINE_RIVAL, SPRITE_SILVER
+ variablesprite SPRITE_AZALEA_ROCKET, SPRITE_ROCKET
+ variablesprite SPRITE_FUCHSIA_GYM_1, SPRITE_JANINE
+ variablesprite SPRITE_FUCHSIA_GYM_2, SPRITE_JANINE
+ variablesprite SPRITE_FUCHSIA_GYM_3, SPRITE_JANINE
+ variablesprite SPRITE_FUCHSIA_GYM_4, SPRITE_JANINE
+ variablesprite SPRITE_COPYCAT, SPRITE_LASS
+ variablesprite SPRITE_JANINE_IMPERSONATOR, SPRITE_LASS
setevent EVENT_FOUND_MACHINE_PART_IN_CERULEAN_GYM
- setevent EVENT_76D
- setevent EVENT_76C
- setevent EVENT_76E
+ setevent EVENT_CERULEAN_GYM_ROCKET
+ setevent EVENT_ROUTE_24_ROCKET
+ setevent EVENT_ROUTE_25_MISTY_BOYFRIEND
setevent EVENT_TRAINERS_IN_CERULEAN_GYM
- setevent EVENT_773
- setevent EVENT_776
- setevent EVENT_777
- setevent EVENT_779
- setevent EVENT_772
- setevent EVENT_77B
- setevent EVENT_036
+ setevent EVENT_COPYCATS_HOUSE_2F_DOLL
+ setevent EVENT_VIRIDIAN_GYM_BLUE
+ setevent EVENT_SEAFOAM_GYM_GYM_GUY
+ setevent EVENT_MT_MOON_SQUARE_CLEFAIRY
+ setevent EVENT_SAFFRON_TRAIN_STATION_POPULATION
+ setevent EVENT_INDIGO_PLATEAU_POKECENTER_RIVAL
+ setevent EVENT_INITIALIZED_EVENTS
return
AskNumber1MScript:
special RandomPhoneMon
checkcode VAR_CALLERID
- if_equal $5, .Jack
- if_equal $7, .Huey
- if_equal $b, .Gaven
- if_equal $d, .Jose
- if_equal $f, .Joey
- if_equal $10, .Wade
- if_equal $11, .Ralph
- if_equal $13, .Anthony
- if_equal $14, .Todd
- if_equal $16, .Irwin
- if_equal $17, .Arnie
- if_equal $18, .Alan
- if_equal $1b, .Chad
- if_equal $1c, .Derek
- if_equal $1d, .Tully
- if_equal $1e, .Brent
- if_equal $20, .Vance
- if_equal $21, .Wilton
- if_equal $22, .Kenji
- if_equal $23, .Parry
+ if_equal PHONE_SCHOOLBOY_JACK, .Jack
+ if_equal PHONE_SAILOR_HUEY, .Huey
+ if_equal PHONE_COOLTRAINERM_GAVEN, .Gaven
+ if_equal PHONE_BIRDKEEPER_JOSE, .Jose
+ if_equal PHONE_YOUNGSTER_JOEY, .Joey
+ if_equal PHONE_BUG_CATCHER_WADE, .Wade
+ if_equal PHONE_FISHER_RALPH, .Ralph
+ if_equal PHONE_HIKER_ANTHONY, .Anthony
+ if_equal PHONE_CAMPER_TODD, .Todd
+ if_equal PHONE_JUGGLER_IRWIN, .Irwin
+ if_equal PHONE_BUG_CATCHER_ARNIE, .Arnie
+ if_equal PHONE_SCHOOLBOY_ALAN, .Alan
+ if_equal PHONE_SCHOOLBOY_CHAD, .Chad
+ if_equal PHONE_POKEFANM_DEREK, .Derek
+ if_equal PHONE_FISHER_TULLY, .Tully
+ if_equal PHONE_POKEMANIAC_BRENT, .Brent
+ if_equal PHONE_BIRDKEEPER_VANCE, .Vance
+ if_equal PHONE_FISHER_WILTON, .Wilton
+ if_equal PHONE_BLACKBELT_KENJI, .Kenji
+ if_equal PHONE_HIKER_PARRY, .Parry
.Jack
farwritetext JackAskNumber1Text
@@ -708,26 +708,26 @@ AskNumber1MScript:
AskNumber2MScript:
special RandomPhoneMon
checkcode VAR_CALLERID
- if_equal $5, .Jack
- if_equal $7, .Huey
- if_equal $b, .Gaven
- if_equal $d, .Jose
- if_equal $f, .Joey
- if_equal $10, .Wade
- if_equal $11, .Ralph
- if_equal $13, .Anthony
- if_equal $14, .Todd
- if_equal $16, .Irwin
- if_equal $17, .Arnie
- if_equal $18, .Alan
- if_equal $1b, .Chad
- if_equal $1c, .Derek
- if_equal $1d, .Tully
- if_equal $1e, .Brent
- if_equal $20, .Vance
- if_equal $21, .Wilton
- if_equal $22, .Kenji
- if_equal $23, .Parry
+ if_equal PHONE_SCHOOLBOY_JACK, .Jack
+ if_equal PHONE_SAILOR_HUEY, .Huey
+ if_equal PHONE_COOLTRAINERM_GAVEN, .Gaven
+ if_equal PHONE_BIRDKEEPER_JOSE, .Jose
+ if_equal PHONE_YOUNGSTER_JOEY, .Joey
+ if_equal PHONE_BUG_CATCHER_WADE, .Wade
+ if_equal PHONE_FISHER_RALPH, .Ralph
+ if_equal PHONE_HIKER_ANTHONY, .Anthony
+ if_equal PHONE_CAMPER_TODD, .Todd
+ if_equal PHONE_JUGGLER_IRWIN, .Irwin
+ if_equal PHONE_BUG_CATCHER_ARNIE, .Arnie
+ if_equal PHONE_SCHOOLBOY_ALAN, .Alan
+ if_equal PHONE_SCHOOLBOY_CHAD, .Chad
+ if_equal PHONE_POKEFANM_DEREK, .Derek
+ if_equal PHONE_FISHER_TULLY, .Tully
+ if_equal PHONE_POKEMANIAC_BRENT, .Brent
+ if_equal PHONE_BIRDKEEPER_VANCE, .Vance
+ if_equal PHONE_FISHER_WILTON, .Wilton
+ if_equal PHONE_BLACKBELT_KENJI, .Kenji
+ if_equal PHONE_HIKER_PARRY, .Parry
.Jack
farwritetext JackAskNumber2Text
@@ -799,26 +799,26 @@ RegisteredNumberMScript:
NumberAcceptedMScript:
checkcode VAR_CALLERID
- if_equal $5, .Jack
- if_equal $7, .Huey
- if_equal $b, .Gaven
- if_equal $d, .Jose
- if_equal $f, .Joey
- if_equal $10, .Wade
- if_equal $11, .Ralph
- if_equal $13, .Anthony
- if_equal $14, .Todd
- if_equal $16, .Irwin
- if_equal $17, .Arnie
- if_equal $18, .Alan
- if_equal $1b, .Chad
- if_equal $1c, .Derek
- if_equal $1d, .Tully
- if_equal $1e, .Brent
- if_equal $20, .Vance
- if_equal $21, .Wilton
- if_equal $22, .Kenji
- if_equal $23, .Parry
+ if_equal PHONE_SCHOOLBOY_JACK, .Jack
+ if_equal PHONE_SAILOR_HUEY, .Huey
+ if_equal PHONE_COOLTRAINERM_GAVEN, .Gaven
+ if_equal PHONE_BIRDKEEPER_JOSE, .Jose
+ if_equal PHONE_YOUNGSTER_JOEY, .Joey
+ if_equal PHONE_BUG_CATCHER_WADE, .Wade
+ if_equal PHONE_FISHER_RALPH, .Ralph
+ if_equal PHONE_HIKER_ANTHONY, .Anthony
+ if_equal PHONE_CAMPER_TODD, .Todd
+ if_equal PHONE_JUGGLER_IRWIN, .Irwin
+ if_equal PHONE_BUG_CATCHER_ARNIE, .Arnie
+ if_equal PHONE_SCHOOLBOY_ALAN, .Alan
+ if_equal PHONE_SCHOOLBOY_CHAD, .Chad
+ if_equal PHONE_POKEFANM_DEREK, .Derek
+ if_equal PHONE_FISHER_TULLY, .Tully
+ if_equal PHONE_POKEMANIAC_BRENT, .Brent
+ if_equal PHONE_BIRDKEEPER_VANCE, .Vance
+ if_equal PHONE_FISHER_WILTON, .Wilton
+ if_equal PHONE_BLACKBELT_KENJI, .Kenji
+ if_equal PHONE_HIKER_PARRY, .Parry
.Jack
farwritetext JackNumberAcceptedText
@@ -923,26 +923,26 @@ NumberAcceptedMScript:
NumberDeclinedMScript:
checkcode VAR_CALLERID
- if_equal $5, .Jack
- if_equal $7, .Huey
- if_equal $b, .Gaven
- if_equal $d, .Jose
- if_equal $f, .Joey
- if_equal $10, .Wade
- if_equal $11, .Ralph
- if_equal $13, .Anthony
- if_equal $14, .Todd
- if_equal $16, .Irwin
- if_equal $17, .Arnie
- if_equal $18, .Alan
- if_equal $1b, .Chad
- if_equal $1c, .Derek
- if_equal $1d, .Tully
- if_equal $1e, .Brent
- if_equal $20, .Vance
- if_equal $21, .Wilton
- if_equal $22, .Kenji
- if_equal $23, .Parry
+ if_equal PHONE_SCHOOLBOY_JACK, .Jack
+ if_equal PHONE_SAILOR_HUEY, .Huey
+ if_equal PHONE_COOLTRAINERM_GAVEN, .Gaven
+ if_equal PHONE_BIRDKEEPER_JOSE, .Jose
+ if_equal PHONE_YOUNGSTER_JOEY, .Joey
+ if_equal PHONE_BUG_CATCHER_WADE, .Wade
+ if_equal PHONE_FISHER_RALPH, .Ralph
+ if_equal PHONE_HIKER_ANTHONY, .Anthony
+ if_equal PHONE_CAMPER_TODD, .Todd
+ if_equal PHONE_JUGGLER_IRWIN, .Irwin
+ if_equal PHONE_BUG_CATCHER_ARNIE, .Arnie
+ if_equal PHONE_SCHOOLBOY_ALAN, .Alan
+ if_equal PHONE_SCHOOLBOY_CHAD, .Chad
+ if_equal PHONE_POKEFANM_DEREK, .Derek
+ if_equal PHONE_FISHER_TULLY, .Tully
+ if_equal PHONE_POKEMANIAC_BRENT, .Brent
+ if_equal PHONE_BIRDKEEPER_VANCE, .Vance
+ if_equal PHONE_FISHER_WILTON, .Wilton
+ if_equal PHONE_BLACKBELT_KENJI, .Kenji
+ if_equal PHONE_HIKER_PARRY, .Parry
.Jack
farwritetext JackNumberDeclinedText
@@ -1047,26 +1047,26 @@ NumberDeclinedMScript:
PhoneFullMScript:
checkcode VAR_CALLERID
- if_equal $5, .Jack
- if_equal $7, .Huey
- if_equal $b, .Gaven
- if_equal $d, .Jose
- if_equal $f, .Joey
- if_equal $10, .Wade
- if_equal $11, .Ralph
- if_equal $13, .Anthony
- if_equal $14, .Todd
- if_equal $16, .Irwin
- if_equal $17, .Arnie
- if_equal $18, .Alan
- if_equal $1b, .Chad
- if_equal $1c, .Derek
- if_equal $1d, .Tully
- if_equal $1e, .Brent
- if_equal $20, .Vance
- if_equal $21, .Wilton
- if_equal $22, .Kenji
- if_equal $23, .Parry
+ if_equal PHONE_SCHOOLBOY_JACK, .Jack
+ if_equal PHONE_SAILOR_HUEY, .Huey
+ if_equal PHONE_COOLTRAINERM_GAVEN, .Gaven
+ if_equal PHONE_BIRDKEEPER_JOSE, .Jose
+ if_equal PHONE_YOUNGSTER_JOEY, .Joey
+ if_equal PHONE_BUG_CATCHER_WADE, .Wade
+ if_equal PHONE_FISHER_RALPH, .Ralph
+ if_equal PHONE_HIKER_ANTHONY, .Anthony
+ if_equal PHONE_CAMPER_TODD, .Todd
+ if_equal PHONE_JUGGLER_IRWIN, .Irwin
+ if_equal PHONE_BUG_CATCHER_ARNIE, .Arnie
+ if_equal PHONE_SCHOOLBOY_ALAN, .Alan
+ if_equal PHONE_SCHOOLBOY_CHAD, .Chad
+ if_equal PHONE_POKEFANM_DEREK, .Derek
+ if_equal PHONE_FISHER_TULLY, .Tully
+ if_equal PHONE_POKEMANIAC_BRENT, .Brent
+ if_equal PHONE_BIRDKEEPER_VANCE, .Vance
+ if_equal PHONE_FISHER_WILTON, .Wilton
+ if_equal PHONE_BLACKBELT_KENJI, .Kenji
+ if_equal PHONE_HIKER_PARRY, .Parry
.Jack
farwritetext JackPhoneFullText
@@ -1171,23 +1171,23 @@ PhoneFullMScript:
RematchMScript:
checkcode VAR_CALLERID
- if_equal $5, .Jack
- if_equal $7, .Huey
- if_equal $b, .Gaven
- if_equal $d, .Jose
- if_equal $f, .Joey
- if_equal $10, .Wade
- if_equal $11, .Ralph
- if_equal $13, .Anthony
- if_equal $14, .Todd
- if_equal $17, .Arnie
- if_equal $18, .Alan
- if_equal $1b, .Chad
- if_equal $1d, .Tully
- if_equal $1e, .Brent
- if_equal $20, .Vance
- if_equal $21, .Wilton
- if_equal $23, .Parry
+ if_equal PHONE_SCHOOLBOY_JACK, .Jack
+ if_equal PHONE_SAILOR_HUEY, .Huey
+ if_equal PHONE_COOLTRAINERM_GAVEN, .Gaven
+ if_equal PHONE_BIRDKEEPER_JOSE, .Jose
+ if_equal PHONE_YOUNGSTER_JOEY, .Joey
+ if_equal PHONE_BUG_CATCHER_WADE, .Wade
+ if_equal PHONE_FISHER_RALPH, .Ralph
+ if_equal PHONE_HIKER_ANTHONY, .Anthony
+ if_equal PHONE_CAMPER_TODD, .Todd
+ if_equal PHONE_BUG_CATCHER_ARNIE, .Arnie
+ if_equal PHONE_SCHOOLBOY_ALAN, .Alan
+ if_equal PHONE_SCHOOLBOY_CHAD, .Chad
+ if_equal PHONE_FISHER_TULLY, .Tully
+ if_equal PHONE_POKEMANIAC_BRENT, .Brent
+ if_equal PHONE_BIRDKEEPER_VANCE, .Vance
+ if_equal PHONE_FISHER_WILTON, .Wilton
+ if_equal PHONE_HIKER_PARRY, .Parry
.Jack
farwritetext JackRematchText
@@ -1277,13 +1277,13 @@ RematchMScript:
GiftMScript:
checkcode VAR_CALLERID
- if_equal $d, .Jose
- if_equal $10, .Wade
- if_equal $18, .Alan
- if_equal $1c, .Derek
- if_equal $1d, .Tully
- if_equal $21, .Wilton
- if_equal $22, .Kenji
+ if_equal PHONE_BIRDKEEPER_JOSE, .Jose
+ if_equal PHONE_BUG_CATCHER_WADE, .Wade
+ if_equal PHONE_SCHOOLBOY_ALAN, .Alan
+ if_equal PHONE_POKEFANM_DEREK, .Derek
+ if_equal PHONE_FISHER_TULLY, .Tully
+ if_equal PHONE_FISHER_WILTON, .Wilton
+ if_equal PHONE_BLACKBELT_KENJI, .Kenji
.Jose
farwritetext JoseGiftText
@@ -1316,17 +1316,17 @@ GiftMScript:
PackFullMScript:
checkcode VAR_CALLERID
- if_equal $7, .Huey
- if_equal $d, .Jose
- if_equal $f, .Joey
- if_equal $10, .Wade
- if_equal $18, .Alan
- if_equal $1c, .Derek
- if_equal $1d, .Tully
- if_equal $20, .Vance
- if_equal $21, .Wilton
- if_equal $22, .Kenji
- if_equal $23, .Parry
+ if_equal PHONE_SAILOR_HUEY, .Huey
+ if_equal PHONE_BIRDKEEPER_JOSE, .Jose
+ if_equal PHONE_YOUNGSTER_JOEY, .Joey
+ if_equal PHONE_BUG_CATCHER_WADE, .Wade
+ if_equal PHONE_SCHOOLBOY_ALAN, .Alan
+ if_equal PHONE_POKEFANM_DEREK, .Derek
+ if_equal PHONE_FISHER_TULLY, .Tully
+ if_equal PHONE_BIRDKEEPER_VANCE, .Vance
+ if_equal PHONE_FISHER_WILTON, .Wilton
+ if_equal PHONE_BLACKBELT_KENJI, .Kenji
+ if_equal PHONE_HIKER_PARRY, .Parry
.Huey
farwritetext HueyPackFullText
@@ -1387,10 +1387,10 @@ PackFullMScript:
RematchGiftMScript:
loadfont
checkcode VAR_CALLERID
- if_equal $7, .Huey
- if_equal $f, .Joey
- if_equal $20, .Vance
- if_equal $23, .Parry
+ if_equal PHONE_SAILOR_HUEY, .Huey
+ if_equal PHONE_YOUNGSTER_JOEY, .Joey
+ if_equal PHONE_BIRDKEEPER_VANCE, .Vance
+ if_equal PHONE_HIKER_PARRY, .Parry
.Huey
farwritetext HueyRematchGiftText
@@ -1411,14 +1411,14 @@ RematchGiftMScript:
AskNumber1FScript:
checkcode VAR_CALLERID
- if_equal $6, .Beverly
- if_equal $c, .Beth
- if_equal $e, .Reena
- if_equal $12, .Liz
- if_equal $15, .Gina
- if_equal $1a, .Dana
- if_equal $1f, .Tiffany
- if_equal $24, .Erin
+ if_equal PHONE_POKEFAN_BEVERLY, .Beverly
+ if_equal PHONE_COOLTRAINERF_BETH, .Beth
+ if_equal PHONE_COOLTRAINERF_REENA, .Reena
+ if_equal PHONE_PICNICKER_LIZ, .Liz
+ if_equal PHONE_PICNICKER_GINA, .Gina
+ if_equal PHONE_LASS_DANA, .Dana
+ if_equal PHONE_PICNICKER_TIFFANY, .Tiffany
+ if_equal PHONE_PICNICKER_ERIN, .Erin
.Beverly
farwritetext BeverlyAskNumber1Text
@@ -1447,14 +1447,14 @@ AskNumber1FScript:
AskNumber2FScript:
checkcode VAR_CALLERID
- if_equal $6, .Beverly
- if_equal $c, .Beth
- if_equal $e, .Reena
- if_equal $12, .Liz
- if_equal $15, .Gina
- if_equal $1a, .Dana
- if_equal $1f, .Tiffany
- if_equal $24, .Erin
+ if_equal PHONE_POKEFAN_BEVERLY, .Beverly
+ if_equal PHONE_COOLTRAINERF_BETH, .Beth
+ if_equal PHONE_COOLTRAINERF_REENA, .Reena
+ if_equal PHONE_PICNICKER_LIZ, .Liz
+ if_equal PHONE_PICNICKER_GINA, .Gina
+ if_equal PHONE_LASS_DANA, .Dana
+ if_equal PHONE_PICNICKER_TIFFANY, .Tiffany
+ if_equal PHONE_PICNICKER_ERIN, .Erin
.Beverly
farwritetext BeverlyAskNumber2Text
@@ -1490,14 +1490,14 @@ RegisteredNumberFScript:
NumberAcceptedFScript: ; 0xbcbd3
checkcode VAR_CALLERID
- if_equal $6, .Beverly
- if_equal $c, .Beth
- if_equal $e, .Reena
- if_equal $12, .Liz
- if_equal $15, .Gina
- if_equal $1a, .Dana
- if_equal $1f, .Tiffany
- if_equal $24, .Erin
+ if_equal PHONE_POKEFAN_BEVERLY, .Beverly
+ if_equal PHONE_COOLTRAINERF_BETH, .Beth
+ if_equal PHONE_COOLTRAINERF_REENA, .Reena
+ if_equal PHONE_PICNICKER_LIZ, .Liz
+ if_equal PHONE_PICNICKER_GINA, .Gina
+ if_equal PHONE_LASS_DANA, .Dana
+ if_equal PHONE_PICNICKER_TIFFANY, .Tiffany
+ if_equal PHONE_PICNICKER_ERIN, .Erin
.Beverly
farwritetext BeverlyNumberAcceptedText
@@ -1542,14 +1542,14 @@ NumberAcceptedFScript: ; 0xbcbd3
NumberDeclinedFScript:
checkcode VAR_CALLERID
- if_equal $6, .Beverly
- if_equal $c, .Beth
- if_equal $e, .Reena
- if_equal $12, .Liz
- if_equal $15, .Gina
- if_equal $1a, .Dana
- if_equal $1f, .Tiffany
- if_equal $24, .Erin
+ if_equal PHONE_POKEFAN_BEVERLY, .Beverly
+ if_equal PHONE_COOLTRAINERF_BETH, .Beth
+ if_equal PHONE_COOLTRAINERF_REENA, .Reena
+ if_equal PHONE_PICNICKER_LIZ, .Liz
+ if_equal PHONE_PICNICKER_GINA, .Gina
+ if_equal PHONE_LASS_DANA, .Dana
+ if_equal PHONE_PICNICKER_TIFFANY, .Tiffany
+ if_equal PHONE_PICNICKER_ERIN, .Erin
.Beverly
farwritetext BeverlyNumberDeclinedText
@@ -1594,14 +1594,14 @@ NumberDeclinedFScript:
PhoneFullFScript:
checkcode VAR_CALLERID
- if_equal $6, .Beverly
- if_equal $c, .Beth
- if_equal $e, .Reena
- if_equal $12, .Liz
- if_equal $15, .Gina
- if_equal $1a, .Dana
- if_equal $1f, .Tiffany
- if_equal $24, .Erin
+ if_equal PHONE_POKEFAN_BEVERLY, .Beverly
+ if_equal PHONE_COOLTRAINERF_BETH, .Beth
+ if_equal PHONE_COOLTRAINERF_REENA, .Reena
+ if_equal PHONE_PICNICKER_LIZ, .Liz
+ if_equal PHONE_PICNICKER_GINA, .Gina
+ if_equal PHONE_LASS_DANA, .Dana
+ if_equal PHONE_PICNICKER_TIFFANY, .Tiffany
+ if_equal PHONE_PICNICKER_ERIN, .Erin
.Beverly
farwritetext BeverlyPhoneFullText
@@ -1646,13 +1646,13 @@ PhoneFullFScript:
RematchFScript:
checkcode VAR_CALLERID
- if_equal $c, .Beth
- if_equal $e, .Reena
- if_equal $12, .Liz
- if_equal $15, .Gina
- if_equal $1a, .Dana
- if_equal $1f, .Tiffany
- if_equal $24, .Erin
+ if_equal PHONE_COOLTRAINERF_BETH, .Beth
+ if_equal PHONE_COOLTRAINERF_REENA, .Reena
+ if_equal PHONE_PICNICKER_LIZ, .Liz
+ if_equal PHONE_PICNICKER_GINA, .Gina
+ if_equal PHONE_LASS_DANA, .Dana
+ if_equal PHONE_PICNICKER_TIFFANY, .Tiffany
+ if_equal PHONE_PICNICKER_ERIN, .Erin
.Beth
farwritetext BethRematchText
@@ -1692,10 +1692,10 @@ RematchFScript:
GiftFScript:
checkcode VAR_CALLERID
- if_equal $6, .Beverly
- if_equal $15, .Gina
- if_equal $1a, .Dana
- if_equal $1f, .Tiffany
+ if_equal PHONE_POKEFAN_BEVERLY, .Beverly
+ if_equal PHONE_PICNICKER_GINA, .Gina
+ if_equal PHONE_LASS_DANA, .Dana
+ if_equal PHONE_PICNICKER_TIFFANY, .Tiffany
.Beverly
farwritetext BeverlyGiftText
@@ -1716,11 +1716,11 @@ GiftFScript:
PackFullFScript:
checkcode VAR_CALLERID
- if_equal $6, .Beverly
- if_equal $15, .Gina
- if_equal $1a, .Dana
- if_equal $1f, .Tiffany
- if_equal $24, .Erin
+ if_equal PHONE_POKEFAN_BEVERLY, .Beverly
+ if_equal PHONE_PICNICKER_GINA, .Gina
+ if_equal PHONE_LASS_DANA, .Dana
+ if_equal PHONE_PICNICKER_TIFFANY, .Tiffany
+ if_equal PHONE_PICNICKER_ERIN, .Erin
.Beverly
farwritetext BeverlyPackFullText
@@ -1750,7 +1750,7 @@ PackFullFScript:
RematchGiftFScript:
checkcode VAR_CALLERID
- if_equal $24, .Erin
+ if_equal PHONE_PICNICKER_ERIN, .Erin
.Erin
loadfont
@@ -1761,7 +1761,7 @@ RematchGiftFScript:
GymStatue1Script:
mapnametotext $0
loadfont
- farwritetext UnknownText_0x1b074e
+ farwritetext GymStatue_CityGymText
closetext
loadmovesprites
end
@@ -1769,114 +1769,114 @@ GymStatue1Script:
GymStatue2Script:
mapnametotext $0
loadfont
- farwritetext UnknownText_0x1b074e
+ farwritetext GymStatue_CityGymText
keeptextopen
- farwritetext UnknownText_0x1b075c
+ farwritetext GymStatue_WinningTrainersText
closetext
loadmovesprites
end
-UnknownScript_0xbcdb9: ; 0xbcdb9
+ReceiveItemScript: ; 0xbcdb9
waitbutton
- farwritetext UnknownText_0x1b0648
+ farwritetext ReceivedItemText
playsound SFX_ITEM
waitbutton
end
; 0xbcdc3
-UnknownScript_0xbcdc3: ; 0xbcdc3
+ReceiveTogepiEggScript: ; 0xbcdc3
waitbutton
- farwritetext UnknownText_0x1b0648
+ farwritetext ReceivedItemText
playsound SFX_GET_EGG_FROM_DAYCARE_LADY
waitbutton
end
; 0xbcdcd
-UnknownScript_0xbcdcd: ; 0xbcdcd
+GameCornerCoinVendorScript: ; 0xbcdcd
faceplayer
loadfont
- farwritetext UnknownText_0x1b077f
+ farwritetext CoinVendor_WelcomeText
keeptextopen
checkitem COIN_CASE
- iftrue UnknownScript_0xbcde0
- farwritetext UnknownText_0x1b079c
+ iftrue CoinVendor_IntroScript
+ farwritetext CoinVendor_NoCoinCaseText
closetext
loadmovesprites
end
; 0xbcde0
-UnknownScript_0xbcde0: ; 0xbcde0
- farwritetext UnknownText_0x1b07e3
+CoinVendor_IntroScript: ; 0xbcde0
+ farwritetext CoinVendor_IntroText
-UnknownScript_0xbcde4: ; 0xbcde4
+CoinVendor_SellCoinsMenuScript: ; 0xbcde4
special Function24b4e
- loadmenudata MenuDataHeader_0xbce54
+ loadmenudata CoinVendor_MenuDataHeader
interpretmenu2
writebackup
- if_equal $1, UnknownScript_0xbcdf7
- if_equal $2, UnknownScript_0xbce1b
- jump UnknownScript_0xbce4d
+ if_equal $1, CoinVendor_Buy50CoinsScript
+ if_equal $2, CoinVendor_Buy500CoinsScript
+ jump CoinVendor_CancelScript
; 0xbcdf7
-UnknownScript_0xbcdf7: ; 0xbcdf7
+CoinVendor_Buy50CoinsScript: ; 0xbcdf7
checkcoins 9949
- if_equal $0, UnknownScript_0xbce46
+ if_equal $0, CoinVendor_CoinCaseFullScript
checkmoney $0, 1000
- if_equal $2, UnknownScript_0xbce3f
+ if_equal $2, CoinVendor_NotEnoughMoneyScript
givecoins 50
takemoney $0, 1000
waitbutton
playsound SFX_TRANSACTION
- farwritetext UnknownText_0x1b0830
+ farwritetext CoinVendor_Buy50CoinsText
closetext
- jump UnknownScript_0xbcde4
+ jump CoinVendor_SellCoinsMenuScript
; 0xbce1b
-UnknownScript_0xbce1b: ; 0xbce1b
+CoinVendor_Buy500CoinsScript: ; 0xbce1b
checkcoins 9499
- if_equal $0, UnknownScript_0xbce46
+ if_equal $0, CoinVendor_CoinCaseFullScript
checkmoney $0, 10000
- if_equal $2, UnknownScript_0xbce3f
+ if_equal $2, CoinVendor_NotEnoughMoneyScript
givecoins 500
takemoney $0, 10000
waitbutton
playsound SFX_TRANSACTION
- farwritetext UnknownText_0x1b084f
+ farwritetext CoinVendor_Buy500CoinsText
closetext
- jump UnknownScript_0xbcde4
+ jump CoinVendor_SellCoinsMenuScript
; 0xbce3f
-UnknownScript_0xbce3f: ; 0xbce3f
- farwritetext UnknownText_0x1b086f
+CoinVendor_NotEnoughMoneyScript: ; 0xbce3f
+ farwritetext CoinVendor_NotEnoughMoneyText
closetext
loadmovesprites
end
; 0xbce46
-UnknownScript_0xbce46: ; 0xbce46
- farwritetext UnknownText_0x1b088c
+CoinVendor_CoinCaseFullScript: ; 0xbce46
+ farwritetext CoinVendor_CoinCaseFullText
closetext
loadmovesprites
end
; 0xbce4d
-UnknownScript_0xbce4d: ; 0xbce4d
- farwritetext UnknownText_0x1b08ad
+CoinVendor_CancelScript: ; 0xbce4d
+ farwritetext CoinVendor_CancelText
closetext
loadmovesprites
end
; 0xbce54
-MenuDataHeader_0xbce54: ; 0xbce54
+CoinVendor_MenuDataHeader: ; 0xbce54
db $40 ; flags
db 04, 00 ; start coords
db 11, 15 ; end coords
- dw MenuData2_0xbce5c
+ dw CoinVendor_MenuData2
db 1 ; default option
; 0xbce5c
-MenuData2_0xbce5c: ; 0xbce5c
+CoinVendor_MenuData2: ; 0xbce5c
db $80 ; flags
db 3 ; items
db " 50 : ¥1000@"
@@ -1888,7 +1888,7 @@ MenuData2_0xbce5c: ; 0xbce5c
HappinessCheckScript:
faceplayer
loadfont
- special Function718d
+ special GetFirstPokemonHappiness
if_less_than 50, .Unhappy
if_less_than 150, .KindaHappy
farwritetext HappinessText3
@@ -1908,7 +1908,7 @@ HappinessCheckScript:
loadmovesprites
end
-MovementData_0xbcea1: ; bcea1
+Movement_ContestResults_WalkAfterWarp: ; bcea1
step_right
step_down
turn_head_up
diff --git a/engine/title.asm b/engine/title.asm
index a5ce99f20..2e151c389 100644
--- a/engine/title.asm
+++ b/engine/title.asm
@@ -345,8 +345,9 @@ Function10ef1c: ; 10ef1c
ld b, a
ld a, e
ld [hli], a
+rept 2
inc e
- inc e
+endr
ld a, $80
ld [hli], a
dec c
@@ -371,9 +372,9 @@ AnimateTitleCrystal: ; 10ef32
ld a, [hl]
add 2
ld [hli], a
+rept 3
inc hl
- inc hl
- inc hl
+endr
dec c
jr nz, .loop