summaryrefslogtreecommitdiff
path: root/engine/events
diff options
context:
space:
mode:
Diffstat (limited to 'engine/events')
-rwxr-xr-xengine/events/battle_tower/battle_tower.asm28
-rw-r--r--engine/events/battle_tower/get_trainer_class.asm4
-rw-r--r--engine/events/battle_tower/rules.asm2
-rw-r--r--engine/events/buena.asm42
-rw-r--r--engine/events/buena_menu.asm6
-rw-r--r--engine/events/bug_contest/contest.asm2
-rwxr-xr-xengine/events/bug_contest/contest_2.asm13
-rwxr-xr-xengine/events/bug_contest/judging.asm6
-rwxr-xr-xengine/events/celebi.asm49
-rwxr-xr-xengine/events/daycare.asm41
-rw-r--r--engine/events/dratini.asm2
-rwxr-xr-xengine/events/elevator.asm14
-rwxr-xr-xengine/events/field_moves.asm8
-rw-r--r--engine/events/fish.asm2
-rwxr-xr-xengine/events/forced_movement.asm8
-rw-r--r--engine/events/fruit_trees.asm4
-rwxr-xr-xengine/events/halloffame.asm6
-rwxr-xr-xengine/events/happiness_egg.asm16
-rwxr-xr-xengine/events/heal_machine_anim.asm4
-rw-r--r--engine/events/kurt.asm20
-rw-r--r--engine/events/loadfishinggfx.asm2
-rw-r--r--engine/events/lucky_number.asm4
-rw-r--r--engine/events/magikarp.asm33
-rwxr-xr-xengine/events/magnet_train.asm4
-rw-r--r--engine/events/map_name_sign.asm2
-rwxr-xr-xengine/events/misc_scripts.asm2
-rw-r--r--engine/events/mom.asm34
-rwxr-xr-xengine/events/mom_phone.asm4
-rw-r--r--engine/events/move_deleter.asm4
-rw-r--r--engine/events/move_tutor.asm8
-rw-r--r--engine/events/name_rater.asm2
-rwxr-xr-xengine/events/npc_trade.asm586
-rw-r--r--engine/events/odd_egg.asm4
-rwxr-xr-xengine/events/overworld.asm30
-rw-r--r--engine/events/poke_seer.asm2
-rwxr-xr-xengine/events/pokecenter_pc.asm84
-rwxr-xr-xengine/events/pokepic.asm10
-rw-r--r--engine/events/pokerus/check_pokerus.asm2
-rw-r--r--engine/events/pokerus/pokerus.asm15
-rwxr-xr-xengine/events/print_photo.asm2
-rw-r--r--engine/events/print_unown.asm2
-rw-r--r--engine/events/print_unown_2.asm4
-rwxr-xr-xengine/events/prof_oaks_pc.asm26
-rwxr-xr-xengine/events/sacred_ash.asm12
-rw-r--r--engine/events/specials.asm471
-rwxr-xr-xengine/events/specials_2.asm (renamed from engine/events/special.asm)42
-rw-r--r--engine/events/std_collision.asm2
-rw-r--r--engine/events/std_scripts.asm504
-rwxr-xr-xengine/events/sweet_scent.asm2
-rw-r--r--engine/events/unown_walls.asm30
-rwxr-xr-xengine/events/whiteout.asm6
51 files changed, 1592 insertions, 620 deletions
diff --git a/engine/events/battle_tower/battle_tower.asm b/engine/events/battle_tower/battle_tower.asm
index 4b4494925..b586096bb 100755
--- a/engine/events/battle_tower/battle_tower.asm
+++ b/engine/events/battle_tower/battle_tower.asm
@@ -1,11 +1,11 @@
-Special_BattleTowerRoomMenu: ; 1700b0
+BattleTowerRoomMenu: ; 1700b0
; special
call InitBattleTowerChallengeRAM
farcall _BattleTowerRoomMenu
ret
; 1700ba
-Special_Function1700ba: ; 1700ba
+Function1700ba: ; 1700ba
call InitBattleTowerChallengeRAM
farcall Function11811a
ret
@@ -53,7 +53,7 @@ Function1700c4: ; 1700c4
ret
; 170114
-Special_Function170114: ; 170114
+Function170114: ; 170114
call InitBattleTowerChallengeRAM
call .Function170121
farcall Function11805f
@@ -182,7 +182,7 @@ Function170139: ; 170139
ret
; 170215
-Special_BattleTowerBattle: ; 170215
+BattleTowerBattle: ; 170215
xor a
ld [wBattleTowerBattleEnded], a
call _BattleTowerBattle
@@ -243,7 +243,7 @@ RunBattleTowerTrainer: ; 17024d
xor a
ld [wLinkMode], a
- farcall Special_StubbedTrainerRankings_Healings
+ farcall StubbedTrainerRankings_Healings
farcall HealParty
call ReadBTTrainerParty
call Clears5_a89a
@@ -407,11 +407,11 @@ ValidateBTParty: ; 170394
ld c, l
ld a, [hl]
and a
-idx = $ff
-rept ($ff +- NUM_POKEMON)
+x = $ff
+rept ($ff + -NUM_POKEMON)
jr z, .invalid
- cp idx
-idx = idx +- 1
+ cp x
+x = x + -1
endr
jr nz, .valid
@@ -619,7 +619,7 @@ Unreferenced_Function1704ca: ; 1704ca
ret
; 1704e1
-UnusedSpecial_Function1704e1: ; 1704e1
+Function1704e1: ; 1704e1
call SpeechTextBox
call FadeToMenu
call InitBattleTowerChallengeRAM
@@ -900,7 +900,7 @@ UnusedSpecial_Function1704e1: ; 1704e1
db "れきだいりーダーいちらん@"
; 170687
-Special_BattleTowerAction: ; 170687
+BattleTowerAction: ; 170687
ld a, [wScriptVar]
ld e, a
ld d, 0
@@ -1603,7 +1603,7 @@ BattleTowerAction_UbersCheck: ; 170b16 (5c:4b16) BattleTowerAction $19
ld [wScriptVar], a
ret
-Special_LoadOpponentTrainerAndPokemonWithOTSprite: ; 0x170b44
+LoadOpponentTrainerAndPokemonWithOTSprite: ; 0x170b44
farcall Function_LoadOpponentTrainerAndPokemons
ld a, [rSVBK]
push af
@@ -1654,8 +1654,8 @@ DummySpecial_170bd2: ; 170bd2
ret
; 170bd3
-Special_CheckForBattleTowerRules: ; 170bd3
- farcall CheckForBattleTowerRules
+CheckForBattleTowerRules: ; 170bd3
+ farcall _CheckForBattleTowerRules
jr c, .asm_170bde
xor a ; FALSE
jr .asm_170be0
diff --git a/engine/events/battle_tower/get_trainer_class.asm b/engine/events/battle_tower/get_trainer_class.asm
index 37fe91c56..570104a2a 100644
--- a/engine/events/battle_tower/get_trainer_class.asm
+++ b/engine/events/battle_tower/get_trainer_class.asm
@@ -15,7 +15,7 @@ GetMobileOTTrainerClass: ; mobile function
.male_trainer_loop
srl c
ld a, c
- cp MaleTrainersEnd - MaleTrainers - 1
+ cp MaleTrainers.End - MaleTrainers - 1
jr nc, .male_trainer_loop
inc c
@@ -33,7 +33,7 @@ GetMobileOTTrainerClass: ; mobile function
.female_trainer_loop
srl c
ld a, c
- cp FemaleTrainersEnd - FemaleTrainers - 1
+ cp FemaleTrainers.End - FemaleTrainers - 1
jr nc, .female_trainer_loop
inc c
diff --git a/engine/events/battle_tower/rules.asm b/engine/events/battle_tower/rules.asm
index fc9fa948a..995cd1edc 100644
--- a/engine/events/battle_tower/rules.asm
+++ b/engine/events/battle_tower/rules.asm
@@ -29,7 +29,7 @@ CheckForMobileBattleRules: ; 8b1e1
db "@"
; 0x8b201
-CheckForBattleTowerRules: ; 8b201
+_CheckForBattleTowerRules: ; 8b201
ld hl, wStringBuffer2
ld [hl], "3"
inc hl
diff --git a/engine/events/buena.asm b/engine/events/buena.asm
index 1991d6a86..533ce43ef 100644
--- a/engine/events/buena.asm
+++ b/engine/events/buena.asm
@@ -1,8 +1,8 @@
-Special_BuenasPassword: ; 8af6b
+BuenasPassword: ; 8af6b
xor a
ld [wWhichIndexSet], a
- ld hl, .MenuDataHeader
- call CopyMenuDataHeader
+ ld hl, .MenuHeader
+ call CopyMenuHeader
ld a, [wBuenasPassword]
ld c, a
farcall GetBuenasPassword
@@ -28,16 +28,16 @@ Special_BuenasPassword: ; 8af6b
ret
; 8afa9
-.MenuDataHeader: ; 0x8afa9
+.MenuHeader: ; 0x8afa9
db MENU_BACKUP_TILES ; flags
menu_coords 0, 0, 10, 7
- dw .MenuData2
+ dw .MenuData
db 1 ; default option
; 0x8afb1
db 0
-.MenuData2: ; 0x8afb2
+.MenuData: ; 0x8afb2
db STATICMENU_CURSOR | STATICMENU_DISABLE_B ; flags
db 0 ; items
dw .PasswordIndices
@@ -67,7 +67,7 @@ endr
ret
; 8afd4
-Special_BuenaPrize: ; 8afd4
+BuenaPrize: ; 8afd4
xor a
ld [wMenuScrollPosition], a
ld a, $1
@@ -187,8 +187,8 @@ Special_BuenaPrize: ; 8afd4
; 0x8b090
Buena_DisplayBlueCardBalance: ; 8b090
- ld hl, BlueCardBalanceMenuDataHeader
- call LoadMenuDataHeader
+ ld hl, BlueCardBalanceMenuHeader
+ call LoadMenuHeader
ret
; 8b097
@@ -202,8 +202,8 @@ PrintBlueCardBalance: ; 8b097
push de
xor a
ld [hBGMapMode], a
- ld hl, BlueCardBalanceMenuDataHeader
- call CopyMenuDataHeader
+ ld hl, BlueCardBalanceMenuHeader
+ call CopyMenuHeader
call MenuBox
call UpdateSprites
call MenuBoxCoord2Tile
@@ -227,25 +227,25 @@ PrintBlueCardBalance: ; 8b097
db "Points@"
; 8b0d1
-BlueCardBalanceMenuDataHeader: ; 0x8b0d1
+BlueCardBalanceMenuHeader: ; 0x8b0d1
db MENU_BACKUP_TILES ; flags
menu_coords 0, 11, 11, 13
; 8b0d6
Buena_PlacePrizeMenuBox: ; 8b0d6
- ld hl, .menudataheader
- call LoadMenuDataHeader
+ ld hl, .MenuHeader
+ call LoadMenuHeader
ret
; 8b0dd
-.menudataheader ; 0x8b0dd
+.MenuHeader ; 0x8b0dd
db MENU_BACKUP_TILES ; flags
menu_coords 0, 0, 17, TEXTBOX_Y - 1
; 8b0e2
Buena_PrizeMenu: ; 8b0e2
- ld hl, .MenuDataHeader
- call CopyMenuDataHeader
+ ld hl, .MenuHeader
+ call CopyMenuHeader
ld a, [wMenuSelection]
ld [wMenuCursorBuffer], a
xor a
@@ -270,16 +270,16 @@ Buena_PrizeMenu: ; 8b0e2
ret
; 8b113
-.MenuDataHeader: ; 0x8b113
+.MenuHeader: ; 0x8b113
db MENU_BACKUP_TILES ; flags
menu_coords 1, 1, 16, 9
- dw .MenuData2
+ dw .MenuData
db 1 ; default option
; 0x8b11b
db 0
-.MenuData2: ; 0x8b11c
+.MenuData: ; 0x8b11c
db SCROLLINGMENU_DISPLAY_ARROWS ; flags
db 4, 13 ; rows, columns
db 1 ; spacing
@@ -288,7 +288,7 @@ Buena_PrizeMenu: ; 8b0e2
dba .prizepoints
; 8b129
-NUM_BUENA_PRIZES EQU 9 ; ((BuenaPrizeItemsEnd - BuenaPrizeItems) / 2)
+NUM_BUENA_PRIZES EQU 9 ; ((BuenaPrizeItems.End - BuenaPrizeItems) / 2)
.indices ; 8b129
db NUM_BUENA_PRIZES
diff --git a/engine/events/buena_menu.asm b/engine/events/buena_menu.asm
index 047d1e7e3..d55a6c9fa 100644
--- a/engine/events/buena_menu.asm
+++ b/engine/events/buena_menu.asm
@@ -1,4 +1,4 @@
-Special_AskRememberPassword: ; 4ae12
+AskRememberPassword: ; 4ae12
call .DoMenu
ld a, $0
jr c, .okay
@@ -11,8 +11,8 @@ Special_AskRememberPassword: ; 4ae12
.DoMenu: ; 4ae1f
lb bc, 14, 7
push bc
- ld hl, YesNoMenuDataHeader
- call CopyMenuDataHeader
+ ld hl, YesNoMenuHeader
+ call CopyMenuHeader
pop bc
ld a, b
ld [wMenuBorderLeftCoord], a
diff --git a/engine/events/bug_contest/contest.asm b/engine/events/bug_contest/contest.asm
index ba561abf2..c25da1658 100644
--- a/engine/events/bug_contest/contest.asm
+++ b/engine/events/bug_contest/contest.asm
@@ -1,4 +1,4 @@
-Special_GiveParkBalls: ; 135db
+GiveParkBalls: ; 135db
xor a
ld [wContestMon], a
ld a, 20
diff --git a/engine/events/bug_contest/contest_2.asm b/engine/events/bug_contest/contest_2.asm
index 8913dee6f..3e3b16b21 100755
--- a/engine/events/bug_contest/contest_2.asm
+++ b/engine/events/bug_contest/contest_2.asm
@@ -1,4 +1,4 @@
-Special_SelectRandomBugContestContestants: ; 139a8
+SelectRandomBugContestContestants: ; 139a8
; Select five random people to participate in the current contest.
; First we have to make sure that any old data is cleared away.
@@ -56,10 +56,11 @@ Special_SelectRandomBugContestContestants: ; 139a8
ret
; 139ed
-Special_CheckBugContestContestantFlag: ; 139ed
+CheckBugContestContestantFlag: ; 139ed
; Checks the flag of the Bug Catching Contestant whose index is loaded in a.
-; Bug: If a >= NUM_BUG_CONTESTANTS when this is called, it will read beyond the table.
+; Bug: If a >= NUM_BUG_CONTESTANTS when this is called,
+; it will read beyond the table.
ld hl, BugCatchingContestantEventFlagTable
ld e, a
@@ -74,9 +75,9 @@ Special_CheckBugContestContestantFlag: ; 139ed
ret
; 139fe
-INCLUDE "data/bug_contest_flags.asm"
+INCLUDE "data/events/bug_contest_flags.asm"
-Special_ContestDropOffMons: ; 13a12
+ContestDropOffMons: ; 13a12
ld hl, wPartyMon1HP
ld a, [hli]
or [hl]
@@ -101,7 +102,7 @@ Special_ContestDropOffMons: ; 13a12
ret
; 13a31
-Special_ContestReturnMons: ; 13a31
+ContestReturnMons: ; 13a31
; Restore the species of the second mon.
ld hl, wPartySpecies + 1
ld a, [wBugContestSecondPartySpecies]
diff --git a/engine/events/bug_contest/judging.asm b/engine/events/bug_contest/judging.asm
index c63087397..a338e83ec 100755
--- a/engine/events/bug_contest/judging.asm
+++ b/engine/events/bug_contest/judging.asm
@@ -134,7 +134,7 @@ LoadContestantName: ; 13730
; 13783
-INCLUDE "data/bug_contest_winners.asm"
+INCLUDE "data/events/bug_contest_winners.asm"
; 13807
@@ -229,7 +229,7 @@ DetermineContestWinners: ; 1383e
CopyTempContestant: ; 138a0
; Could've just called CopyBytes.
ld de, wBugContestTempWinnerID
-rept BUG_CONTESTANT_SIZE +- 1
+rept BUG_CONTESTANT_SIZE + -1
ld a, [de]
inc de
ld [hli], a
@@ -244,7 +244,7 @@ ComputeAIContestantScores: ; 138b0
ld e, 0
.loop
push de
- call Special_CheckBugContestContestantFlag
+ call CheckBugContestContestantFlag
pop de
jr nz, .done
ld a, e
diff --git a/engine/events/celebi.asm b/engine/events/celebi.asm
index fe4a490f2..99c22f49f 100755
--- a/engine/events/celebi.asm
+++ b/engine/events/celebi.asm
@@ -1,6 +1,6 @@
SPECIALCELEBIEVENT_CELEBI EQU $84
-Special_CelebiShrineEvent: ; 4989a
+CelebiShrineEvent: ; 4989a
call DelayFrame
ld a, [wVramState]
push af
@@ -57,7 +57,7 @@ Special_CelebiShrineEvent: ; 4989a
ld c, 4
.OAMloop:
ld [hli], a ; tile id
-rept SPRITEOAMSTRUCT_LENGTH +- 1
+rept SPRITEOAMSTRUCT_LENGTH + -1
inc hl
endr
inc a
@@ -241,47 +241,8 @@ UpdateCelebiPosition: ; 49aa2 (12:5aa2)
CelebiEvent_Cosine: ; 49b3b (12:5b3b)
; a = d * cos(a * pi/32)
- add %010000
- and %111111
- cp %100000
- jr nc, .negative
- call .ApplySineWave
- ld a, h
- ret
-
-.negative
- and %011111
- call .ApplySineWave
- ld a, h
- xor $ff
- inc a
- ret
-
-.ApplySineWave: ; 49b52 (12:5b52)
- ld e, a
- ld a, d
- ld d, 0
- ld hl, .sinewave
- add hl, de
- add hl, de
- ld e, [hl]
- inc hl
- ld d, [hl]
- ld hl, 0
-.multiply
- srl a
- jr nc, .even
- add hl, de
-.even
- sla e
- rl d
- and a
- jr nz, .multiply
- ret
-; 49b6e (12:5b6e)
-
-.sinewave ; 49b6e
- sine_wave $100
+ add %010000 ; cos(x) = sin(x + pi/2)
+ calc_sine_wave
; 49bae
GetCelebiSpriteTile: ; 49bae
@@ -362,7 +323,7 @@ CelebiEvent_SetBattleType: ; 49bf3
; 49bf9
-Special_CheckCaughtCelebi: ; 49bf9
+CheckCaughtCelebi: ; 49bf9
ld a, [wBattleResult]
bit 6, a
jr z, .false
diff --git a/engine/events/daycare.asm b/engine/events/daycare.asm
index 3d36bbfd7..ddfa5b89c 100755
--- a/engine/events/daycare.asm
+++ b/engine/events/daycare.asm
@@ -21,9 +21,9 @@
const DAYCARETEXT_OH_FINE
const DAYCARETEXT_COME_AGAIN
-Special_DayCareMan: ; 166d6
+DayCareMan: ; 166d6
ld hl, wDayCareMan
- bit 0, [hl]
+ bit DAYCAREMAN_HAS_MON_F, [hl]
jr nz, .AskWithdrawMon
ld hl, wDayCareMan
ld a, DAYCARETEXT_MAN_INTRO
@@ -33,7 +33,7 @@ Special_DayCareMan: ; 166d6
jr c, .print_text
farcall DepositMonWithDayCareMan
ld hl, wDayCareMan
- set 0, [hl]
+ set DAYCAREMAN_HAS_MON_F, [hl]
call DayCare_DepositPokemonText
call DayCare_InitBreeding
ret
@@ -47,8 +47,8 @@ Special_DayCareMan: ; 166d6
farcall RetrievePokemonFromDayCareMan
call DayCare_GetBackMonForMoney
ld hl, wDayCareMan
- res 0, [hl]
- res 5, [hl]
+ res DAYCAREMAN_HAS_MON_F, [hl]
+ res DAYCAREMAN_MONS_COMPATIBLE_F, [hl]
jr .cancel
.print_text
@@ -60,9 +60,9 @@ Special_DayCareMan: ; 166d6
ret
; 1672a
-Special_DayCareLady: ; 1672a
+DayCareLady: ; 1672a
ld hl, wDayCareLady
- bit 0, [hl]
+ bit DAYCARELADY_HAS_MON_F, [hl]
jr nz, .AskWithdrawMon
ld hl, wDayCareLady
ld a, DAYCARETEXT_LADY_INTRO
@@ -72,7 +72,7 @@ Special_DayCareLady: ; 1672a
jr c, .print_text
farcall DepositMonWithDayCareLady
ld hl, wDayCareLady
- set 0, [hl]
+ set DAYCARELADY_HAS_MON_F, [hl]
call DayCare_DepositPokemonText
call DayCare_InitBreeding
ret
@@ -86,9 +86,9 @@ Special_DayCareLady: ; 1672a
farcall RetrievePokemonFromDayCareLady
call DayCare_GetBackMonForMoney
ld hl, wDayCareLady
- res 0, [hl]
+ res DAYCARELADY_HAS_MON_F, [hl]
ld hl, wDayCareMan
- res 5, [hl]
+ res DAYCAREMAN_MONS_COMPATIBLE_F, [hl]
jr .cancel
.print_text
@@ -101,9 +101,9 @@ Special_DayCareLady: ; 1672a
; 16781
DayCareLadyIntroText: ; 16781
- bit 7, [hl]
+ bit DAYCARELADY_ACTIVE_F, [hl]
jr nz, .okay
- set 7, [hl]
+ set DAYCARELADY_ACTIVE_F, [hl]
inc a
.okay
call PrintDayCareText
@@ -112,7 +112,7 @@ DayCareLadyIntroText: ; 16781
; 1678f
DayCareManIntroText: ; 1678f
- set 7, [hl]
+ set DAYCAREMAN_ACTIVE_F, [hl]
call PrintDayCareText
call YesNoBox
ret
@@ -427,9 +427,9 @@ PrintDayCareText: ; 1689b
db "@"
; 0x16936
-Special_DayCareManOutside: ; 16936
+DayCareManOutside: ; 16936
ld hl, wDayCareMan
- bit 6, [hl]
+ bit DAYCAREMAN_HAS_EGG_F, [hl]
jr nz, .AskGiveEgg
ld hl, .NotYet
call PrintText
@@ -451,7 +451,7 @@ Special_DayCareManOutside: ; 16936
jr nc, .PartyFull
call DayCare_GiveEgg
ld hl, wDayCareMan
- res 6, [hl]
+ res DAYCAREMAN_HAS_EGG_F, [hl]
call DayCare_InitBreeding
ld hl, .GotEggText
call PrintText
@@ -593,10 +593,10 @@ DayCare_GetCurrentPartyMember: ; 16a31
DayCare_InitBreeding: ; 16a3b
ld a, [wDayCareLady]
- bit 0, a
+ bit DAYCARELADY_HAS_MON_F, a
ret z
ld a, [wDayCareMan]
- bit 0, a
+ bit DAYCAREMAN_HAS_MON_F, a
ret z
callfar CheckBreedmonCompatibility
ld a, [wd265]
@@ -605,7 +605,7 @@ DayCare_InitBreeding: ; 16a3b
inc a
ret z
ld hl, wDayCareMan
- set 5, [hl]
+ set DAYCAREMAN_MONS_COMPATIBLE_F, [hl]
.loop
call Random
cp 150
@@ -660,11 +660,12 @@ DayCare_InitBreeding: ; 16a3b
ld a, EGG_LEVEL
ld [wCurPartyLevel], a
+; Nidoran♀ can give birth to either gender of Nidoran
ld a, [wCurPartySpecies]
cp NIDORAN_F
jr nz, .GotEggSpecies
call Random
- cp 1 + 50 percent
+ cp 50 percent + 1
ld a, NIDORAN_F
jr c, .GotEggSpecies
ld a, NIDORAN_M
diff --git a/engine/events/dratini.asm b/engine/events/dratini.asm
index a45f01195..1019e302e 100644
--- a/engine/events/dratini.asm
+++ b/engine/events/dratini.asm
@@ -1,4 +1,4 @@
-Special_Dratini: ; 0x8b170
+GiveDratini: ; 0x8b170
; if wScriptVar is 0 or 1, change the moveset of the last Dratini in the party.
; 0: give it a special moveset with Extremespeed.
; 1: give it the normal moveset of a level 15 Dratini.
diff --git a/engine/events/elevator.asm b/engine/events/elevator.asm
index 98d408b0e..bcad170d4 100755
--- a/engine/events/elevator.asm
+++ b/engine/events/elevator.asm
@@ -119,12 +119,12 @@ Elevator_GoToFloor: ; 134c0
; 134dd
Elevator_AskWhichFloor: ; 134dd
- call LoadStandardMenuDataHeader
+ call LoadStandardMenuHeader
ld hl, Elevator_WhichFloorText
call PrintText
call Elevator_GetCurrentFloorText
- ld hl, Elevator_MenuDataHeader
- call CopyMenuDataHeader
+ ld hl, Elevator_MenuHeader
+ call CopyMenuHeader
call InitScrollingMenu
call UpdateSprites
xor a
@@ -187,14 +187,14 @@ Elevator_GetCurrentFloorString: ; 1353f
ret
; 13550
-Elevator_MenuDataHeader: ; 0x13550
+Elevator_MenuHeader: ; 0x13550
db MENU_BACKUP_TILES ; flags
menu_coords 12, 1, 18, 9
- dw Elevator_MenuData2
+ dw Elevator_MenuData
db 1 ; default option
; 0x13558
-Elevator_MenuData2: ; 0x13558
+Elevator_MenuData: ; 0x13558
db SCROLLINGMENU_DISPLAY_ARROWS ; flags
db 4, 0 ; rows, columns
db 1 ; horizontal spacing
@@ -229,4 +229,4 @@ FloorToString: ; 13575
ret
; 13583
-INCLUDE "data/elevator_floors.asm"
+INCLUDE "data/events/elevator_floors.asm"
diff --git a/engine/events/field_moves.asm b/engine/events/field_moves.asm
index 0f12338e0..2fc30d25c 100755
--- a/engine/events/field_moves.asm
+++ b/engine/events/field_moves.asm
@@ -7,15 +7,15 @@ PlayWhirlpoolSound: ; 8c7d4
; 8c7e1
BlindingFlash: ; 8c7e1
- farcall Special_FadeOutPalettes
+ farcall FadeOutPalettes
ld hl, wStatusFlags
- set 2, [hl] ; Flash
+ set STATUSFLAGS_FLASH_F, [hl]
farcall ReplaceTimeOfDayPals
farcall UpdateTimeOfDayPal
ld b, SCGB_MAPPALS
call GetSGBLayout
farcall LoadOW_BGPal7
- farcall Special_FadeInPalettes
+ farcall FadeInPalettes
ret
; 8c80a
@@ -398,7 +398,7 @@ FlyToAnim: ; 8cb33
ld c, 4
.OAMloop
ld [hli], a ; tile id
-rept SPRITEOAMSTRUCT_LENGTH +- 1
+rept SPRITEOAMSTRUCT_LENGTH + -1
inc hl
endr
inc a
diff --git a/engine/events/fish.asm b/engine/events/fish.asm
index d79ac0a43..09de8f2b7 100644
--- a/engine/events/fish.asm
+++ b/engine/events/fish.asm
@@ -98,7 +98,7 @@ GetFishGroupIndex: ; 9245b
push hl
ld hl, wDailyFlags
- bit 2, [hl]
+ bit DAILYFLAGS_FISH_SWARM_F, [hl]
pop hl
jr z, .done
diff --git a/engine/events/forced_movement.asm b/engine/events/forced_movement.asm
index 136698501..2d03659ff 100755
--- a/engine/events/forced_movement.asm
+++ b/engine/events/forced_movement.asm
@@ -1,9 +1,9 @@
Script_ForcedMovement:: ; 0x1253d
checkcode VAR_FACING
- if_equal DOWN, .down
- if_equal UP, .up
- if_equal LEFT, .left
- if_equal RIGHT, .right
+ ifequal DOWN, .down
+ ifequal UP, .up
+ ifequal LEFT, .left
+ ifequal RIGHT, .right
end
; 0x12550
diff --git a/engine/events/fruit_trees.asm b/engine/events/fruit_trees.asm
index 796880175..47d7702b4 100644
--- a/engine/events/fruit_trees.asm
+++ b/engine/events/fruit_trees.asm
@@ -44,7 +44,7 @@ GetCurTreeFruit: ; 44041
TryResetFruitTrees: ; 4404c
ld hl, wDailyFlags
- bit 4, [hl]
+ bit DAILYFLAGS_ALL_FRUIT_TREES_F, [hl]
ret nz
jp ResetFruitTrees
; 44055
@@ -71,7 +71,7 @@ ResetFruitTrees: ; 4406a
ld [hli], a
ld [hl], a
ld hl, wDailyFlags
- set 4, [hl]
+ set DAILYFLAGS_ALL_FRUIT_TREES_F, [hl]
ret
; 44078
diff --git a/engine/events/halloffame.asm b/engine/events/halloffame.asm
index 78b5cbe03..8b6f2a62e 100755
--- a/engine/events/halloffame.asm
+++ b/engine/events/halloffame.asm
@@ -12,7 +12,7 @@ HallOfFame:: ; 0x8640e
; Enable the Pokégear map to cycle through all of Kanto
ld hl, wStatusFlags
- set 6, [hl] ; hall of fame
+ set STATUSFLAGS_HALL_OF_FAME_F, [hl]
farcall HallOfFame_InitSaveIfNeeded
@@ -42,7 +42,7 @@ RedCredits:: ; 86455
ld [wMusicFadeID + 1], a
ld a, 10
ld [wMusicFade], a
- farcall Special_FadeOutPalettes
+ farcall FadeOutPalettes
xor a
ld [wVramState], a
ld [hMapAnims], a
@@ -65,7 +65,7 @@ HallOfFame_FadeOutMusic: ; 8648e
ld [wMusicFadeID + 1], a
ld a, 10
ld [wMusicFade], a
- farcall Special_FadeOutPalettes
+ farcall FadeOutPalettes
xor a
ld [wVramState], a
ld [hMapAnims], a
diff --git a/engine/events/happiness_egg.asm b/engine/events/happiness_egg.asm
index 0c516247f..998e7e07a 100755
--- a/engine/events/happiness_egg.asm
+++ b/engine/events/happiness_egg.asm
@@ -1,4 +1,4 @@
-Special_GetFirstPokemonHappiness: ; 718d
+GetFirstPokemonHappiness: ; 718d
ld hl, wPartyMon1Happiness
ld bc, PARTYMON_STRUCT_LENGTH
ld de, wPartySpecies
@@ -17,7 +17,7 @@ Special_GetFirstPokemonHappiness: ; 718d
call GetPokemonName
jp CopyPokemonName_Buffer1_Buffer3
-Special_CheckFirstMonIsEgg: ; 71ac
+CheckFirstMonIsEgg: ; 71ac
ld a, [wPartySpecies]
ld [wd265], a
cp EGG
@@ -103,7 +103,7 @@ ChangeHappiness: ; 71c2
ret
-INCLUDE "data/happiness_changes.asm"
+INCLUDE "data/events/happiness_changes.asm"
StepHappiness:: ; 725a
@@ -146,7 +146,7 @@ DayCareStep:: ; 7282
; Raise the experience of Day-Care Pokémon every step cycle.
ld a, [wDayCareMan]
- bit 0, a
+ bit DAYCAREMAN_HAS_MON_F, a
jr z, .day_care_lady
ld a, [wBreedMon1Level] ; level
@@ -168,7 +168,7 @@ DayCareStep:: ; 7282
.day_care_lady
ld a, [wDayCareLady]
- bit 0, a
+ bit DAYCARELADY_HAS_MON_F, a
jr z, .check_egg
ld a, [wBreedMon2Level] ; level
@@ -190,7 +190,7 @@ DayCareStep:: ; 7282
.check_egg
ld hl, wDayCareMan
- bit 5, [hl] ; egg
+ bit DAYCAREMAN_MONS_COMPATIBLE_F, [hl]
ret z
ld hl, wStepsToEgg
dec [hl]
@@ -218,6 +218,6 @@ DayCareStep:: ; 7282
cp b
ret nc
ld hl, wDayCareMan
- res 5, [hl]
- set 6, [hl]
+ res DAYCAREMAN_MONS_COMPATIBLE_F, [hl]
+ set DAYCAREMAN_HAS_EGG_F, [hl]
ret
diff --git a/engine/events/heal_machine_anim.asm b/engine/events/heal_machine_anim.asm
index 400645b47..955449280 100755
--- a/engine/events/heal_machine_anim.asm
+++ b/engine/events/heal_machine_anim.asm
@@ -1,4 +1,4 @@
-; Special_HealMachineAnim.Jumptable indexes
+; HealMachineAnim.Jumptable indexes
const_def
const HEALMACHINESTATE_LOADGFX
const HEALMACHINESTATE_PCLOADBALLS
@@ -7,7 +7,7 @@
const HEALMACHINESTATE_HOFPLAYSFX
const HEALMACHINESTATE_FINISH
-Special_HealMachineAnim: ; 12324
+HealMachineAnim: ; 12324
; If you have no Pokemon, don't change the buffer. This can lead to some glitchy effects if you have no Pokemon.
ld a, [wPartyCount]
and a
diff --git a/engine/events/kurt.asm b/engine/events/kurt.asm
index 79eb7da2e..8fe78f5b6 100644
--- a/engine/events/kurt.asm
+++ b/engine/events/kurt.asm
@@ -22,8 +22,8 @@ Kurt_PrintTextHowMany: ; 8800c
db "@"
; 0x88018
-Special_SelectApricornForKurt: ; 88018
- call LoadStandardMenuDataHeader
+SelectApricornForKurt: ; 88018
+ call LoadStandardMenuHeader
ld c, $1
xor a
ld [wMenuScrollPosition], a
@@ -59,8 +59,8 @@ Special_SelectApricornForKurt: ; 88018
Kurt_SelectApricorn: ; 88055
farcall FindApricornsInBag
jr c, .nope
- ld hl, .MenuDataHeader
- call CopyMenuDataHeader
+ ld hl, .MenuHeader
+ call CopyMenuHeader
ld a, [wMenuSelection]
ld [wMenuCursorBuffer], a
xor a
@@ -83,16 +83,16 @@ Kurt_SelectApricorn: ; 88055
ret
; 88086
-.MenuDataHeader: ; 0x88086
+.MenuHeader: ; 0x88086
db MENU_BACKUP_TILES ; flags
menu_coords 1, 1, 13, 10
- dw .MenuData2
+ dw .MenuData
db 1 ; default option
; 0x8808e
db 0 ; XXX
-.MenuData2: ; 0x8808f
+.MenuData: ; 0x8808f
db SCROLLINGMENU_DISPLAY_ARROWS ; flags
db 4, 7
db 1
@@ -129,8 +129,8 @@ Kurt_SelectQuantity: ; 880c2
ld [wItemQuantityBuffer], a
ld a, $1
ld [wItemQuantityChangeBuffer], a
- ld hl, .MenuDataHeader
- call LoadMenuDataHeader
+ ld hl, .MenuHeader
+ call LoadMenuHeader
.loop
xor a
ld [hBGMapMode], a
@@ -157,7 +157,7 @@ Kurt_SelectQuantity: ; 880c2
ret
; 8810d
-.MenuDataHeader: ; 0x8810d
+.MenuHeader: ; 0x8810d
db MENU_BACKUP_TILES ; flags
menu_coords 6, 9, SCREEN_WIDTH - 1, 12
dw NULL
diff --git a/engine/events/loadfishinggfx.asm b/engine/events/loadfishinggfx.asm
index f67c51d8b..3d3ab0ba0 100644
--- a/engine/events/loadfishinggfx.asm
+++ b/engine/events/loadfishinggfx.asm
@@ -6,7 +6,7 @@ LoadFishingGFX: ; b84b3
ld de, FishingGFX
ld a, [wPlayerGender]
- bit 0, a
+ bit PLAYERGENDER_FEMALE_F, a
jr z, .got_gender
ld de, KrisFishingGFX
.got_gender
diff --git a/engine/events/lucky_number.asm b/engine/events/lucky_number.asm
index 1582cec7d..f482ce9d6 100644
--- a/engine/events/lucky_number.asm
+++ b/engine/events/lucky_number.asm
@@ -1,4 +1,4 @@
-Special_CheckForLuckyNumberWinners: ; 4d87a
+CheckForLuckyNumberWinners: ; 4d87a
xor a
ld [wScriptVar], a
ld [wFoundMatchingIDInParty], a
@@ -216,7 +216,7 @@ Special_CheckForLuckyNumberWinners: ; 4d87a
text_jump UnknownText_0x1c12ae
db "@"
-Special_PrintTodaysLuckyNumber: ; 4d9d3
+PrintTodaysLuckyNumber: ; 4d9d3
ld hl, wStringBuffer3
ld de, wLuckyIDNumber
lb bc, PRINTNUM_LEADINGZEROS | 2, 5
diff --git a/engine/events/magikarp.asm b/engine/events/magikarp.asm
index 8d835960f..f5180a8e5 100644
--- a/engine/events/magikarp.asm
+++ b/engine/events/magikarp.asm
@@ -1,4 +1,4 @@
-Special_CheckMagikarpLength: ; fbb32
+CheckMagikarpLength: ; fbb32
; Returns 3 if you select a Magikarp that beats the previous record.
; Returns 2 if you select a Magikarp, but the current record is longer.
; Returns 1 if you press B in the Pokemon selection menu.
@@ -189,7 +189,7 @@ CalcMagikarpLength: ; fbbfc
.no
- ld hl, .Lengths
+ ld hl, MagikarpLengths
ld a, 2
ld [wd265], a
@@ -308,30 +308,11 @@ CalcMagikarpLength: ; fbbfc
ret
; fbca8
-.Lengths: ; fbca8
-; [wMagikarpLength] = z * 100 + (bc - x) / y
-; First argument is the bc threshold as well as x.
-; Second argument is y.
-; In reality, due to the bug at .BCLessThanDE, the threshold is determined by only register b.
- dwb 110, 1 ; not used unless the bug is fixed
- dwb 310, 2
- dwb 710, 4
- dwb 2710, 20
- dwb 7710, 50
- dwb 17710, 100
- dwb 32710, 150
- dwb 47710, 150
- dwb 57710, 100
- dwb 62710, 50
- dwb 64710, 20
- dwb 65210, 5
- dwb 65410, 2
- dwb 65510, 1 ; not used
-; fbcd2
-
-
-
-Special_MagikarpHouseSign: ; fbcd2
+INCLUDE "data/events/magikarp_lengths.asm"
+
+
+
+MagikarpHouseSign: ; fbcd2
ld a, [wBestMagikarpLengthFeet]
ld [wMagikarpLength], a
ld a, [wBestMagikarpLengthInches]
diff --git a/engine/events/magnet_train.asm b/engine/events/magnet_train.asm
index ed7caf218..6f2aa2d1f 100755
--- a/engine/events/magnet_train.asm
+++ b/engine/events/magnet_train.asm
@@ -1,4 +1,4 @@
-Special_MagnetTrain: ; 8cc04
+MagnetTrain: ; 8cc04
ld a, [wScriptVar]
and a
jr nz, .ToGoldenrod
@@ -327,7 +327,7 @@ MagnetTrain_Jumptable: ; 8cdf7
ld a, BANK(wPlayerGender)
ld [rSVBK], a
ld a, [wPlayerGender]
- bit 0, a
+ bit PLAYERGENDER_FEMALE_F, a
jr z, .got_gender
ld b, SPRITE_ANIM_INDEX_MAGNET_TRAIN_BLUE
diff --git a/engine/events/map_name_sign.asm b/engine/events/map_name_sign.asm
index b97d40798..385ddf802 100644
--- a/engine/events/map_name_sign.asm
+++ b/engine/events/map_name_sign.asm
@@ -85,7 +85,7 @@ ReturnFromMapSetupScript:: ; b8000
ret z
cp POWER_PLANT
ret z
- ld a, $1
+ ld a, 1
and a
ret
; b8089
diff --git a/engine/events/misc_scripts.asm b/engine/events/misc_scripts.asm
index 4e4d5dc86..b79889f72 100755
--- a/engine/events/misc_scripts.asm
+++ b/engine/events/misc_scripts.asm
@@ -2,7 +2,7 @@ Script_AbortBugContest: ; 0x122c1
checkflag ENGINE_BUG_CONTEST_TIMER
iffalse .finish
setflag ENGINE_DAILY_BUG_CONTEST
- special Special_ContestReturnMons
+ special ContestReturnMons
.finish
end
diff --git a/engine/events/mom.asm b/engine/events/mom.asm
index fbda552ad..1a00b723a 100644
--- a/engine/events/mom.asm
+++ b/engine/events/mom.asm
@@ -1,4 +1,4 @@
-Special_BankOfMom: ; 16218
+BankOfMom: ; 16218
ld a, [hInMenu]
push af
ld a, $1
@@ -46,9 +46,9 @@ Special_BankOfMom: ; 16218
.CheckIfBankInitialized: ; 16254
ld a, [wMomSavingMoney]
- bit 7, a
+ bit MOM_ACTIVE_F, a
jr nz, .savingmoneyalready
- set 7, a
+ set MOM_ACTIVE_F, a
ld [wMomSavingMoney], a
ld a, $1
jr .done_0
@@ -68,11 +68,11 @@ Special_BankOfMom: ; 16218
jr c, .DontSaveMoney
ld hl, UnknownText_0x1664e
call PrintText
- ld a, %10000001
+ ld a, (1 << MOM_ACTIVE_F) | (1 << MOM_SAVING_SOME_MONEY_F)
jr .done_1
.DontSaveMoney:
- ld a, %10000000
+ ld a, 1 << MOM_ACTIVE_F
.done_1
ld [wMomSavingMoney], a
@@ -103,9 +103,9 @@ Special_BankOfMom: ; 16218
.AccessBankOfMom: ; 162a8
ld hl, UnknownText_0x1665d
call PrintText
- call LoadStandardMenuDataHeader
- ld hl, MenuDataHeader_0x166b5
- call CopyMenuDataHeader
+ call LoadStandardMenuHeader
+ ld hl, MenuHeader_0x166b5
+ call CopyMenuHeader
call VerticalMenu
call CloseWindow
jr c, .cancel
@@ -145,9 +145,9 @@ Special_BankOfMom: ; 16218
ld [hli], a
ld [hli], a
ld [hl], a
- ld a, $5
+ ld a, 5
ld [wMomBankDigitCursorPosition], a
- call LoadStandardMenuDataHeader
+ call LoadStandardMenuHeader
call Mom_SetUpDepositMenu
call Mom_Wait10Frames
call Mom_WithdrawDepositMenuJoypad
@@ -212,9 +212,9 @@ Special_BankOfMom: ; 16218
ld [hli], a
ld [hli], a
ld [hl], a
- ld a, $5
+ ld a, 5
ld [wMomBankDigitCursorPosition], a
- call LoadStandardMenuDataHeader
+ call LoadStandardMenuHeader
call Mom_SetUpWithdrawMenu
call Mom_Wait10Frames
call Mom_WithdrawDepositMenuJoypad
@@ -276,7 +276,7 @@ Special_BankOfMom: ; 16218
call PrintText
call YesNoBox
jr c, .StopSavingMoney
- ld a, $81
+ ld a, (1 << MOM_ACTIVE_F) | (1 << MOM_SAVING_SOME_MONEY_F)
ld [wMomSavingMoney], a
ld hl, UnknownText_0x16685
call PrintText
@@ -285,7 +285,7 @@ Special_BankOfMom: ; 16218
ret
.StopSavingMoney:
- ld a, $80
+ ld a, 1 << MOM_ACTIVE_F
ld [wMomSavingMoney], a
ld a, $7
ld [wJumptableIndex], a
@@ -727,14 +727,14 @@ Mom_HeldString: ; 166b0
db "HELD@"
; 166b5
-MenuDataHeader_0x166b5: ; 0x166b5
+MenuHeader_0x166b5: ; 0x166b5
db MENU_BACKUP_TILES ; flags
menu_coords 0, 0, 10, 10
- dw MenuData2_0x166bd
+ dw MenuData_0x166bd
db 1 ; default option
; 0x166bd
-MenuData2_0x166bd: ; 0x166bd
+MenuData_0x166bd: ; 0x166bd
db STATICMENU_CURSOR ; flags
db 4 ; items
db "GET@"
diff --git a/engine/events/mom_phone.asm b/engine/events/mom_phone.asm
index 0b35fdb30..de19a3674 100755
--- a/engine/events/mom_phone.asm
+++ b/engine/events/mom_phone.asm
@@ -1,5 +1,5 @@
-NUM_MOM_ITEMS_1 EQUS "((MomItems_1End - MomItems_1) / 8)"
-NUM_MOM_ITEMS_2 EQUS "((MomItems_2End - MomItems_2) / 8)"
+NUM_MOM_ITEMS_1 EQUS "((MomItems_1.End - MomItems_1) / 8)"
+NUM_MOM_ITEMS_2 EQUS "((MomItems_2.End - MomItems_2) / 8)"
const_value = 1
const MOM_ITEM
diff --git a/engine/events/move_deleter.asm b/engine/events/move_deleter.asm
index fad33e222..f75bc44dd 100644
--- a/engine/events/move_deleter.asm
+++ b/engine/events/move_deleter.asm
@@ -1,4 +1,4 @@
-Special_MoveDeletion:
+MoveDeletion:
ld hl, .IntroText
call PrintText
call YesNoBox
@@ -19,7 +19,7 @@ Special_MoveDeletion:
jr z, .onlyonemove
ld hl, .AskWhichMoveText
call PrintText
- call LoadStandardMenuDataHeader
+ call LoadStandardMenuHeader
farcall ChooseMoveToDelete
push af
call ReturnToMapWithSpeechTextbox
diff --git a/engine/events/move_tutor.asm b/engine/events/move_tutor.asm
index df599d3ae..c11fe2fa1 100644
--- a/engine/events/move_tutor.asm
+++ b/engine/events/move_tutor.asm
@@ -1,4 +1,4 @@
-Special_MoveTutor: ; 4925b
+MoveTutor: ; 4925b
call FadeToMenu
call ClearBGPalettes
call ClearScreen
@@ -52,8 +52,8 @@ Special_MoveTutor: ; 4925b
ret
CheckCanLearnMoveTutorMove: ; 492b9
- ld hl, .MenuDataHeader
- call LoadMenuDataHeader
+ ld hl, .MenuHeader
+ call LoadMenuHeader
predef CanLearnTMHMMove
@@ -98,6 +98,6 @@ CheckCanLearnMoveTutorMove: ; 492b9
scf
ret
-.MenuDataHeader: ; 0x4930a
+.MenuHeader: ; 0x4930a
db MENU_BACKUP_TILES ; flags
menu_coords 0, 12, SCREEN_WIDTH - 1, SCREEN_HEIGHT - 1
diff --git a/engine/events/name_rater.asm b/engine/events/name_rater.asm
index ad4ea1c9c..aae070ca2 100644
--- a/engine/events/name_rater.asm
+++ b/engine/events/name_rater.asm
@@ -1,4 +1,4 @@
-NameRater: ; fb6ed
+_NameRater: ; fb6ed
; Introduce himself
ld hl, NameRaterIntroText
call PrintText
diff --git a/engine/events/npc_trade.asm b/engine/events/npc_trade.asm
new file mode 100755
index 000000000..7264c310d
--- /dev/null
+++ b/engine/events/npc_trade.asm
@@ -0,0 +1,586 @@
+NPCTrade:: ; fcba8
+ ld a, e
+ ld [wJumptableIndex], a
+ call Trade_GetDialog
+ ld b, CHECK_FLAG
+ call TradeFlagAction
+ ld a, TRADE_DIALOG_AFTER
+ jr nz, .done
+
+ ld a, TRADE_DIALOG_INTRO
+ call PrintTradeText
+
+ call YesNoBox
+ ld a, TRADE_DIALOG_CANCEL
+ jr c, .done
+
+; Select givemon from party
+ ld b, PARTYMENUACTION_GIVE_MON
+ farcall SelectTradeOrDayCareMon
+ ld a, TRADE_DIALOG_CANCEL
+ jr c, .done
+
+ ld e, NPCTRADE_GIVEMON
+ call GetTradeAttribute
+ ld a, [wCurPartySpecies]
+ cp [hl]
+ ld a, TRADE_DIALOG_WRONG
+ jr nz, .done
+
+ call CheckTradeGender
+ ld a, TRADE_DIALOG_WRONG
+ jr c, .done
+
+ ld b, SET_FLAG
+ call TradeFlagAction
+
+ ld hl, ConnectLinkCableText
+ call PrintText
+
+ call DoNPCTrade
+ call .TradeAnimation
+ call GetTradeMonNames
+
+ ld hl, TradedForText
+ call PrintText
+
+ call RestartMapMusic
+
+ ld a, TRADE_DIALOG_COMPLETE
+
+.done
+ call PrintTradeText
+ ret
+; fcc07
+
+.TradeAnimation: ; fcc07
+ call DisableSpriteUpdates
+ ld a, [wJumptableIndex]
+ push af
+ ld a, [wcf64]
+ push af
+ predef TradeAnimation
+ pop af
+ ld [wcf64], a
+ pop af
+ ld [wJumptableIndex], a
+ call ReturnToMapWithSpeechTextbox
+ ret
+; fcc23
+
+CheckTradeGender: ; fcc23
+ xor a
+ ld [wMonType], a
+
+ ld e, NPCTRADE_GENDER
+ call GetTradeAttribute
+ ld a, [hl]
+ and a ; TRADE_GENDER_EITHER
+ jr z, .matching
+ cp TRADE_GENDER_MALE
+ jr z, .check_male
+ ; TRADE_GENDER_FEMALE
+ farcall GetGender
+ jr nz, .not_matching
+ jr .matching
+
+.check_male
+ farcall GetGender
+ jr z, .not_matching
+
+.matching
+ and a
+ ret
+
+.not_matching
+ scf
+ ret
+; fcc4a
+
+TradeFlagAction: ; fcc4a
+ ld hl, wTradeFlags
+ ld a, [wJumptableIndex]
+ ld c, a
+ predef SmallFarFlagAction
+ ld a, c
+ and a
+ ret
+; fcc59
+
+Trade_GetDialog: ; fcc59
+ ld e, NPCTRADE_DIALOG
+ call GetTradeAttribute
+ ld a, [hl]
+ ld [wcf64], a
+ ret
+; fcc63
+
+DoNPCTrade: ; fcc63
+ ld e, NPCTRADE_GIVEMON
+ call GetTradeAttribute
+ ld a, [hl]
+ ld [wPlayerTrademonSpecies], a
+
+ ld e, NPCTRADE_GETMON
+ call GetTradeAttribute
+ ld a, [hl]
+ ld [wOTTrademonSpecies], a
+
+ ld a, [wPlayerTrademonSpecies]
+ ld de, wPlayerTrademonSpeciesName
+ call GetTradeMonName
+ call CopyTradeName
+
+ ld a, [wOTTrademonSpecies]
+ ld de, wOTTrademonSpeciesName
+ call GetTradeMonName
+ call CopyTradeName
+
+ ld hl, wPartyMonOT
+ ld bc, NAME_LENGTH
+ call Trade_GetAttributeOfCurrentPartymon
+ ld de, wPlayerTrademonOTName
+ call CopyTradeName
+
+ ld hl, wPlayerName
+ ld de, wPlayerTrademonSenderName
+ call CopyTradeName
+
+ ld hl, wPartyMon1ID
+ ld bc, PARTYMON_STRUCT_LENGTH
+ call Trade_GetAttributeOfCurrentPartymon
+ ld de, wPlayerTrademonID
+ call Trade_CopyTwoBytes
+
+ ld hl, wPartyMon1DVs
+ ld bc, PARTYMON_STRUCT_LENGTH
+ call Trade_GetAttributeOfCurrentPartymon
+ ld de, wPlayerTrademonDVs
+ call Trade_CopyTwoBytes
+
+ ld hl, wPartyMon1Species
+ ld bc, PARTYMON_STRUCT_LENGTH
+ call Trade_GetAttributeOfCurrentPartymon
+ ld b, h
+ ld c, l
+ farcall GetCaughtGender
+ ld a, c
+ ld [wPlayerTrademonCaughtData], a
+
+ ld e, NPCTRADE_DIALOG
+ call GetTradeAttribute
+ ld a, [hl]
+ cp TRADE_DIALOGSET_GIRL
+ ld a, CAUGHT_BY_GIRL
+ jr c, .okay
+ ld a, CAUGHT_BY_BOY
+.okay
+ ld [wOTTrademonCaughtData], a
+
+ ld hl, wPartyMon1Level
+ ld bc, PARTYMON_STRUCT_LENGTH
+ call Trade_GetAttributeOfCurrentPartymon
+ ld a, [hl]
+ ld [wCurPartyLevel], a
+ ld a, [wOTTrademonSpecies]
+ ld [wCurPartySpecies], a
+ xor a
+ ld [wMonType], a
+ ld [wPokemonWithdrawDepositParameter], a
+ callfar RemoveMonFromPartyOrBox
+ predef TryAddMonToParty
+
+ ld e, NPCTRADE_DIALOG
+ call GetTradeAttribute
+ ld a, [hl]
+ cp TRADE_DIALOG_COMPLETE
+ ld b, RESET_FLAG
+ jr c, .incomplete
+ ld b, SET_FLAG
+.incomplete
+ farcall SetGiftPartyMonCaughtData
+
+ ld e, NPCTRADE_NICK
+ call GetTradeAttribute
+ ld de, wOTTrademonNickname
+ call CopyTradeName
+
+ ld hl, wPartyMonNicknames
+ ld bc, MON_NAME_LENGTH
+ call Trade_GetAttributeOfLastPartymon
+ ld hl, wOTTrademonNickname
+ call CopyTradeName
+
+ ld e, NPCTRADE_OT_NAME
+ call GetTradeAttribute
+ push hl
+ ld de, wOTTrademonOTName
+ call CopyTradeName
+ pop hl
+ ld de, wOTTrademonSenderName
+ call CopyTradeName
+
+ ld hl, wPartyMonOT
+ ld bc, NAME_LENGTH
+ call Trade_GetAttributeOfLastPartymon
+ ld hl, wOTTrademonOTName
+ call CopyTradeName
+
+ ld e, NPCTRADE_DVS
+ call GetTradeAttribute
+ ld de, wOTTrademonDVs
+ call Trade_CopyTwoBytes
+
+ ld hl, wPartyMon1DVs
+ ld bc, PARTYMON_STRUCT_LENGTH
+ call Trade_GetAttributeOfLastPartymon
+ ld hl, wOTTrademonDVs
+ call Trade_CopyTwoBytes
+
+ ld e, NPCTRADE_OT_ID
+ call GetTradeAttribute
+ ld de, wOTTrademonID + 1
+ call Trade_CopyTwoBytesReverseEndian
+
+ ld hl, wPartyMon1ID
+ ld bc, PARTYMON_STRUCT_LENGTH
+ call Trade_GetAttributeOfLastPartymon
+ ld hl, wOTTrademonID
+ call Trade_CopyTwoBytes
+
+ ld e, NPCTRADE_ITEM
+ call GetTradeAttribute
+ push hl
+ ld hl, wPartyMon1Item
+ ld bc, PARTYMON_STRUCT_LENGTH
+ call Trade_GetAttributeOfLastPartymon
+ pop hl
+ ld a, [hl]
+ ld [de], a
+
+ push af
+ push bc
+ push de
+ push hl
+ ld a, [wCurPartyMon]
+ push af
+ ld a, [wPartyCount]
+ dec a
+ ld [wCurPartyMon], a
+ farcall ComputeNPCTrademonStats
+ pop af
+ ld [wCurPartyMon], a
+ pop hl
+ pop de
+ pop bc
+ pop af
+ ret
+; fcdc2
+
+
+GetTradeAttribute: ; 0xfcdc2
+ ld d, 0
+ push de
+ ld a, [wJumptableIndex]
+ and $f
+ swap a
+ ld e, a
+ ld d, 0
+ ld hl, NPCTrades
+ add hl, de
+ add hl, de
+ pop de
+ add hl, de
+ ret
+; 0xfcdd7
+
+Trade_GetAttributeOfCurrentPartymon: ; fcdd7
+ ld a, [wCurPartyMon]
+ call AddNTimes
+ ret
+; fcdde
+
+Trade_GetAttributeOfLastPartymon: ; fcdde
+ ld a, [wPartyCount]
+ dec a
+ call AddNTimes
+ ld e, l
+ ld d, h
+ ret
+; fcde8
+
+GetTradeMonName: ; fcde8
+ push de
+ ld [wd265], a
+ call GetBasePokemonName
+ ld hl, wStringBuffer1
+ pop de
+ ret
+; fcdf4
+
+CopyTradeName: ; fcdf4
+ ld bc, NAME_LENGTH
+ call CopyBytes
+ ret
+; fcdfb
+
+Unreferenced_Functionfcdfb: ; fcdfb
+ ld bc, 4
+ call CopyBytes
+ ld a, "@"
+ ld [de], a
+ ret
+; fce05
+
+Unreferenced_Functionfce05: ; fce05
+ ld bc, 3
+ call CopyBytes
+ ld a, "@"
+ ld [de], a
+ ret
+; fce0f
+
+Trade_CopyTwoBytes: ; fce0f
+ ld a, [hli]
+ ld [de], a
+ inc de
+ ld a, [hl]
+ ld [de], a
+ ret
+; fce15
+
+Trade_CopyTwoBytesReverseEndian: ; fce15
+ ld a, [hli]
+ ld [de], a
+ dec de
+ ld a, [hl]
+ ld [de], a
+ ret
+; fce1b
+
+GetTradeMonNames: ; fce1b
+ ld e, NPCTRADE_GETMON
+ call GetTradeAttribute
+ ld a, [hl]
+ call GetTradeMonName
+
+ ld de, wStringBuffer2
+ call CopyTradeName
+
+ ld e, NPCTRADE_GIVEMON
+ call GetTradeAttribute
+ ld a, [hl]
+ call GetTradeMonName
+
+ ld de, wMonOrItemNameBuffer
+ call CopyTradeName
+
+ ld hl, wStringBuffer1
+.loop
+ ld a, [hli]
+ cp "@"
+ jr nz, .loop
+
+ dec hl
+ push hl
+ ld e, NPCTRADE_GENDER
+ call GetTradeAttribute
+ ld a, [hl]
+ pop hl
+ and a ; TRADE_GENDER_EITHER
+ ret z
+ cp TRADE_GENDER_MALE
+ ld a, "♂"
+ jr z, .done
+ ; TRADE_GENDER_FEMALE
+ ld a, "♀"
+.done
+ ld [hli], a
+ ld [hl], "@"
+ ret
+; fce58
+
+
+INCLUDE "data/events/npc_trades.asm"
+
+
+PrintTradeText: ; fcf38
+ push af
+ call GetTradeMonNames
+ pop af
+ ld bc, 2 * 4
+ ld hl, TradeTexts
+ call AddNTimes
+ ld a, [wcf64]
+ ld c, a
+ add hl, bc
+ add hl, bc
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ call PrintText
+ ret
+; fcf53
+
+TradeTexts: ; fcf53
+; entries correspond to TRADE_DIALOG_* × TRADE_DIALOGSET_* constants
+; TRADE_DIALOG_INTRO
+ dw TradeIntroText1
+ dw TradeIntroText2
+ dw TradeIntroText3
+ dw TradeIntroText4
+; TRADE_DIALOG_CANCEL
+ dw TradeCancelText1
+ dw TradeCancelText2
+ dw TradeCancelText3
+ dw TradeCancelText4
+; TRADE_DIALOG_WRONG
+ dw TradeWrongText1
+ dw TradeWrongText2
+ dw TradeWrongText3
+ dw TradeWrongText4
+; TRADE_DIALOG_COMPLETE
+ dw TradeCompleteText1
+ dw TradeCompleteText2
+ dw TradeCompleteText3
+ dw TradeCompleteText4
+; TRADE_DIALOG_AFTER
+ dw TradeAfterText1
+ dw TradeAfterText2
+ dw TradeAfterText3
+ dw TradeAfterText4
+; fcf7b
+
+
+ConnectLinkCableText: ; 0xfcf7b
+ ; OK, connect the Game Link Cable.
+ text_jump UnknownText_0x1bd407
+ db "@"
+; 0xfcf80
+
+
+TradedForText: ; 0xfcf80
+ ; traded givemon for getmon
+ text_jump UnknownText_0x1bd429
+ start_asm
+ ld de, MUSIC_NONE
+ call PlayMusic
+ call DelayFrame
+ ld hl, .done
+ ret
+
+.done
+ ; sound_dex_fanfare_80_109
+ ; interpret_data
+ text_jump UnknownText_0x1bd445
+ db "@"
+; 0xfcf97
+
+
+TradeIntroText1: ; 0xfcf97
+ ; I collect #MON. Do you have @ ? Want to trade it for my @ ?
+ text_jump UnknownText_0x1bd449
+ db "@"
+; 0xfcf9c
+
+TradeCancelText1: ; 0xfcf9c
+ ; You don't want to trade? Aww…
+ text_jump UnknownText_0x1bd48c
+ db "@"
+; 0xfcfa1
+
+TradeWrongText1: ; 0xfcfa1
+ ; Huh? That's not @ . What a letdown…
+ text_jump UnknownText_0x1bd4aa
+ db "@"
+; 0xfcfa6
+
+TradeCompleteText1: ; 0xfcfa6
+ ; Yay! I got myself @ ! Thanks!
+ text_jump UnknownText_0x1bd4d2
+ db "@"
+; 0xfcfab
+
+TradeAfterText1: ; 0xfcfab
+ ; Hi, how's my old @ doing?
+ text_jump UnknownText_0x1bd4f4
+ db "@"
+; 0xfcfb0
+
+
+TradeIntroText2:
+TradeIntroText3: ; 0xfcfb0
+ ; Hi, I'm looking for this #MON. If you have @ , would you trade it for my @ ?
+ text_jump UnknownText_0x1bd512
+ db "@"
+; 0xfcfb5
+
+TradeCancelText2:
+TradeCancelText3: ; 0xfcfb5
+ ; You don't have one either? Gee, that's really disappointing…
+ text_jump UnknownText_0x1bd565
+ db "@"
+; 0xfcfba
+
+TradeWrongText2:
+TradeWrongText3: ; 0xfcfba
+ ; You don't have @ ? That's too bad, then.
+ text_jump UnknownText_0x1bd5a1
+ db "@"
+; 0xfcfbf
+
+TradeCompleteText2: ; 0xfcfbf
+ ; Great! Thank you! I finally got @ .
+ text_jump UnknownText_0x1bd5cc
+ db "@"
+; 0xfcfc4
+
+TradeAfterText2: ; 0xfcfc4
+ ; Hi! The @ you traded me is doing great!
+ text_jump UnknownText_0x1bd5f4
+ db "@"
+; 0xfcfc9
+
+
+TradeIntroText4: ; 0xfcfc9
+ ; 's cute, but I don't have it. Do you have @ ? Want to trade it for my @ ?
+ text_jump UnknownText_0x1bd621
+ db "@"
+; 0xfcfce
+
+TradeCancelText4: ; 0xfcfce
+ ; You don't want to trade? Oh, darn…
+ text_jump UnknownText_0x1bd673
+ db "@"
+; 0xfcfd3
+
+TradeWrongText4: ; 0xfcfd3
+ ; That's not @ . Please trade with me if you get one.
+ text_jump UnknownText_0x1bd696
+ db "@"
+; 0xfcfd8
+
+TradeCompleteText4: ; 0xfcfd8
+ ; Wow! Thank you! I always wanted @ !
+ text_jump UnknownText_0x1bd6cd
+ db "@"
+; 0xfcfdd
+
+TradeAfterText4: ; 0xfcfdd
+ ; How is that @ I traded you doing? Your @ 's so cute!
+ text_jump UnknownText_0x1bd6f5
+ db "@"
+; 0xfcfe2
+
+
+TradeCompleteText3: ; 0xfcfe2
+ ; Uh? What happened?
+ text_jump UnknownText_0x1bd731
+ db "@"
+; 0xfcfe7
+
+TradeAfterText3: ; 0xfcfe7
+ ; Trading is so odd… I still have a lot to learn about it.
+ text_jump UnknownText_0x1bd745
+ db "@"
+; 0xfcfec
diff --git a/engine/events/odd_egg.asm b/engine/events/odd_egg.asm
index e4efc5c0f..3e58c2677 100644
--- a/engine/events/odd_egg.asm
+++ b/engine/events/odd_egg.asm
@@ -1,4 +1,4 @@
-GiveOddEgg: ; 1fb4b6
+_GiveOddEgg: ; 1fb4b6
; Figure out which egg to give.
; Compare a random word to
@@ -93,4 +93,4 @@ GiveOddEgg: ; 1fb4b6
.Odd:
db "ODD@@@@@@@@@"
-INCLUDE "data/odd_eggs.asm"
+INCLUDE "data/events/odd_eggs.asm"
diff --git a/engine/events/overworld.asm b/engine/events/overworld.asm
index 6223d875d..60ed7cdf9 100755
--- a/engine/events/overworld.asm
+++ b/engine/events/overworld.asm
@@ -277,7 +277,7 @@ CheckOverworldTileArrays: ; c840
ret
-INCLUDE "data/field_move_blocks.asm"
+INCLUDE "data/events/field_move_blocks.asm"
OWFlash: ; c8ac
@@ -358,7 +358,7 @@ SurfFunction: ; c909
call CheckBadge
jr c, .asm_c956
ld hl, wBikeFlags
- bit 1, [hl] ; always on bike
+ bit BIKEFLAGS_ALWAYS_ON_BIKE_F, [hl]
jr nz, .cannotsurf
ld a, [wPlayerState]
cp PLAYER_SURF
@@ -421,9 +421,9 @@ UsedSurfScript: ; c986
special ReplaceKrisSprite
special PlayMapMusic
-; step into the water
- special Special_SurfStartStep ; (slow_step_x, step_end)
- applymovement PLAYER, wMovementBuffer ; PLAYER, MovementBuffer
+; step into the water (slow_step DIR, step_end)
+ special SurfStartStep
+ applymovement PLAYER, wMovementBuffer
end
.empty_fn ; c9a2
@@ -520,7 +520,7 @@ TrySurfOW:: ; c9e7
jr c, .quit
ld hl, wBikeFlags
- bit 1, [hl] ; always on bike (can't surf)
+ bit BIKEFLAGS_ALWAYS_ON_BIKE_F, [hl]
jr nz, .quit
call GetSurfType
@@ -578,7 +578,7 @@ FlyFunction: ; ca3b
.outdoors
xor a
ld [hMapAnims], a
- call LoadStandardMenuDataHeader
+ call LoadStandardMenuHeader
call ClearSprites
farcall _FlyMap
ld a, e
@@ -623,7 +623,7 @@ FlyFunction: ; ca3b
special UpdateTimePals
callasm FlyFromAnim
farscall Script_AbortBugContest
- special Special_WarpToSpawnPoint
+ special WarpToSpawnPoint
callasm DelayLoadingNewSprites
writecode VAR_MOVEMENT, PLAYER_NORMAL
newloadmap MAPSETUP_FLY
@@ -871,7 +871,7 @@ dig_incave
playsound SFX_WARP_TO
applymovement PLAYER, .DigOut
farscall Script_AbortBugContest
- special Special_WarpToSpawnPoint
+ special WarpToSpawnPoint
writecode VAR_MOVEMENT, PLAYER_NORMAL
newloadmap MAPSETUP_DOOR
playsound SFX_WARP_FROM
@@ -958,7 +958,7 @@ TeleportFunction: ; cc61
playsound SFX_WARP_TO
applymovement PLAYER, .TeleportFrom
farscall Script_AbortBugContest
- special Special_WarpToSpawnPoint
+ special WarpToSpawnPoint
writecode VAR_MOVEMENT, PLAYER_NORMAL
newloadmap MAPSETUP_TELEPORT
playsound SFX_WARP_FROM
@@ -1008,7 +1008,7 @@ StrengthFunction: ; cce5
SetStrengthFlag: ; cd12
ld hl, wBikeFlags
- set 0, [hl]
+ set BIKEFLAGS_STRENGTH_ACTIVE_F, [hl]
ld a, [wCurPartyMon]
ld e, a
ld d, 0
@@ -1044,7 +1044,7 @@ Script_UsedStrength: ; 0xcd2d
AskStrengthScript:
callasm TryStrengthOW
iffalse .AskStrength
- if_equal $1, .DontMeetRequirements
+ ifequal $1, .DontMeetRequirements
jump .AlreadyUsedStrength
.DontMeetRequirements: ; 0xcd59
@@ -1086,7 +1086,7 @@ TryStrengthOW: ; cd78
jr c, .nope
ld hl, wBikeFlags
- bit 0, [hl]
+ bit BIKEFLAGS_STRENGTH_ACTIVE_F, [hl]
jr z, .already_using
ld a, 2
@@ -1413,7 +1413,7 @@ UnknownText_0xcf58: ; 0xcf58
AskRockSmashScript: ; 0xcf5d
callasm HasRockSmash
- if_equal 1, .no
+ ifequal 1, .no
opentext
writetext UnknownText_0xcf77
@@ -1683,7 +1683,7 @@ BikeFunction: ; d0b3
.GetOffBike:
ld hl, wBikeFlags
- bit 1, [hl]
+ bit BIKEFLAGS_ALWAYS_ON_BIKE_F, [hl]
jr nz, .CantGetOffBike
ld hl, Script_GetOffBike
ld de, Script_GetOffBike_Register
diff --git a/engine/events/poke_seer.asm b/engine/events/poke_seer.asm
index 85fc7af2d..c79298dd0 100644
--- a/engine/events/poke_seer.asm
+++ b/engine/events/poke_seer.asm
@@ -15,7 +15,7 @@
const SEERACTION_CANT_TELL_2
const SEERACTION_LEVEL_ONLY
-Special_PokeSeer: ; 4f0bc
+PokeSeer: ; 4f0bc
ld a, SEER_INTRO
call PrintSeerText
call JoyWaitAorB
diff --git a/engine/events/pokecenter_pc.asm b/engine/events/pokecenter_pc.asm
index 75309aaa1..42284aeab 100755
--- a/engine/events/pokecenter_pc.asm
+++ b/engine/events/pokecenter_pc.asm
@@ -1,4 +1,4 @@
-Special_PokemonCenterPC: ; 1559a
+PokemonCenterPC: ; 1559a
call PC_CheckPartyForPokemon
ret c
call PC_PlayBootSound
@@ -7,7 +7,7 @@ Special_PokemonCenterPC: ; 1559a
ld hl, PokecenterPCText_AccessWhosePC
call PC_DisplayTextWaitMenu
ld hl, .TopMenu
- call LoadMenuDataHeader
+ call LoadMenuHeader
.loop
xor a
ld [hBGMapMode], a
@@ -29,10 +29,10 @@ Special_PokemonCenterPC: ; 1559a
.TopMenu:
db MENU_BACKUP_TILES | MENU_NO_CLICK_SFX ; flags
menu_coords 0, 0, 15, 12
- dw .MenuData2
+ dw .MenuData
db 1 ; default option
-.MenuData2:
+.MenuData:
db STATICMENU_CURSOR | STATICMENU_WRAP ; flags
db 0 ; items
dw .WhichPC
@@ -171,7 +171,7 @@ PC_WaitPlaySFX: ; 156d0
ret
; 156d9
-_KrissHousePC: ; 156d9
+_PlayersHousePC: ; 156d9
call PC_PlayBootSound
ld hl, UnknownText_0x156ff
call PC_DisplayText
@@ -212,8 +212,8 @@ Function15715: ; 15715
xor a
ld [wPCItemsCursor], a
ld [wPCItemsScrollPosition], a
- ld hl, KrissPCMenuData
- call LoadMenuDataHeader
+ ld hl, PlayersPCMenuData
+ call LoadMenuHeader
.asm_15722
call UpdateTimePals
call DoNthMenu
@@ -230,28 +230,28 @@ Function15715: ; 15715
ret
; 15736
-KrissPCMenuData: ; 0x15736
+PlayersPCMenuData: ; 0x15736
db MENU_BACKUP_TILES ; flags
db 0, 0 ; top left corner coords (y, x)
db 12, 15 ; bottom right corner coords (y, x)
- dw .KrissPCMenuData2
+ dw .PlayersPCMenuData
db 1 ; default selected option
-.KrissPCMenuData2:
+.PlayersPCMenuData:
db STATICMENU_CURSOR | STATICMENU_WRAP ; flags
db 0 ; # items?
- dw .KrissPCMenuList1
+ dw .PlayersPCMenuList1
dw PlaceNthMenuStrings
- dw .KrissPCMenuPointers
+ dw .PlayersPCMenuPointers
-.KrissPCMenuPointers: ; 0x15746
- dw KrisWithdrawItemMenu, .WithdrawItem
- dw KrisDepositItemMenu, .DepositItem
- dw KrisTossItemMenu, .TossItem
- dw KrisMailBoxMenu, .MailBox
- dw KrisDecorationMenu, .Decoration
- dw KrisLogOffMenu, .LogOff
- dw KrisLogOffMenu, .TurnOff
+.PlayersPCMenuPointers: ; 0x15746
+ dw PlayerWithdrawItemMenu, .WithdrawItem
+ dw PlayerDepositItemMenu, .DepositItem
+ dw PlayerTossItemMenu, .TossItem
+ dw PlayerMailBoxMenu, .MailBox
+ dw PlayerDecorationMenu, .Decoration
+ dw PlayerLogOffMenu, .LogOff
+ dw PlayerLogOffMenu, .TurnOff
.WithdrawItem: db "WITHDRAW ITEM@"
.DepositItem: db "DEPOSIT ITEM@"
@@ -269,7 +269,7 @@ DECORATION EQU 4
TURN_OFF EQU 5
LOG_OFF EQU 6
-.KrissPCMenuList1:
+.PlayersPCMenuList1:
db 5
db WITHDRAW_ITEM
db DEPOSIT_ITEM
@@ -278,7 +278,7 @@ LOG_OFF EQU 6
db TURN_OFF
db -1
-.KrissPCMenuList2:
+.PlayersPCMenuList2:
db 6
db WITHDRAW_ITEM
db DEPOSIT_ITEM
@@ -305,8 +305,8 @@ UnknownText_0x157cc: ; 0x157cc
db "@"
; 0x157d1
-KrisWithdrawItemMenu: ; 0x157d1
- call LoadStandardMenuDataHeader
+PlayerWithdrawItemMenu: ; 0x157d1
+ call LoadStandardMenuHeader
farcall ClearPCItemScreen
.loop
call PCItemsJoypad
@@ -370,19 +370,19 @@ KrisWithdrawItemMenu: ; 0x157d1
ret
.HowManyText: ; 0x15850
- text_jump _KrissPCHowManyWithdrawText
+ text_jump _PlayersPCHowManyWithdrawText
db "@"
.WithdrewText: ; 0x15855
- text_jump _KrissPCWithdrewItemsText
+ text_jump _PlayersPCWithdrewItemsText
db "@"
.NoRoomText: ; 0x1585a
- text_jump _KrissPCNoRoomWithdrawText
+ text_jump _PlayersPCNoRoomWithdrawText
db "@"
-KrisTossItemMenu: ; 0x1585f
- call LoadStandardMenuDataHeader
+PlayerTossItemMenu: ; 0x1585f
+ call LoadStandardMenuHeader
farcall ClearPCItemScreen
.loop
call PCItemsJoypad
@@ -397,8 +397,8 @@ KrisTossItemMenu: ; 0x1585f
ret
; 0x1587d
-KrisDecorationMenu: ; 0x1587d
- farcall _KrisDecorationMenu
+PlayerDecorationMenu: ; 0x1587d
+ farcall _PlayerDecorationMenu
ld a, c
and a
ret z
@@ -406,17 +406,17 @@ KrisDecorationMenu: ; 0x1587d
ret
; 0x15888
-KrisLogOffMenu: ; 0x15888
+PlayerLogOffMenu: ; 0x15888
xor a
scf
ret
; 0x1588b
-KrisDepositItemMenu: ; 0x1588b
+PlayerDepositItemMenu: ; 0x1588b
call .CheckItemsInBag
jr c, .nope
call DisableSpriteUpdates
- call LoadStandardMenuDataHeader
+ call LoadStandardMenuHeader
farcall DepositSellInitPackBuffers
.loop
farcall DepositSellPack
@@ -532,19 +532,19 @@ KrisDepositItemMenu: ; 0x1588b
ret
.HowManyText: ; 0x1596e
- text_jump _KrissPCHowManyDepositText
+ text_jump _PlayersPCHowManyDepositText
db "@"
.DepositText: ; 0x15973
- text_jump _KrissPCDepositItemsText
+ text_jump _PlayersPCDepositItemsText
db "@"
.NoRoomText: ; 0x15978
- text_jump _KrissPCNoRoomDepositText
+ text_jump _PlayersPCNoRoomDepositText
db "@"
-KrisMailBoxMenu: ; 0x1597d
- farcall _KrisMailBoxMenu
+PlayerMailBoxMenu: ; 0x1597d
+ farcall _PlayerMailBoxMenu
xor a
ret
; 0x15985
@@ -558,7 +558,7 @@ PCItemsJoypad: ; 0x15985
ld a, $0
ld [wSpriteUpdatesEnabled], a
ld hl, .PCItemsMenuData
- call CopyMenuDataHeader
+ call CopyMenuHeader
hlcoord 0, 0
ld b, 10
ld c, 18
@@ -621,10 +621,10 @@ PCItemsJoypad: ; 0x15985
.PCItemsMenuData:
db MENU_BACKUP_TILES ; flags
menu_coords 4, 1, 18, 10
- dw .MenuData2
+ dw .MenuData
db 1 ; default option
-.MenuData2:
+.MenuData:
db SCROLLINGMENU_ENABLE_SELECT | SCROLLINGMENU_ENABLE_FUNCTION3 | SCROLLINGMENU_DISPLAY_ARROWS ; flags
db 4, 8 ; rows/cols?
db 2 ; horizontal spacing?
diff --git a/engine/events/pokepic.asm b/engine/events/pokepic.asm
index a98ba47d3..e11c45f9b 100755
--- a/engine/events/pokepic.asm
+++ b/engine/events/pokepic.asm
@@ -1,6 +1,6 @@
Pokepic:: ; 244e3
- ld hl, PokepicMenuDataHeader
- call CopyMenuDataHeader
+ ld hl, PokepicMenuHeader
+ call CopyMenuHeader
call MenuBox
call UpdateSprites
call ApplyTilemap
@@ -28,8 +28,8 @@ Pokepic:: ; 244e3
ret
ClosePokepic:: ; 24528
- ld hl, PokepicMenuDataHeader
- call CopyMenuDataHeader
+ ld hl, PokepicMenuHeader
+ call CopyMenuHeader
call ClearMenuBoxInterior
call WaitBGMap
call GetMemSGBLayout
@@ -41,7 +41,7 @@ ClosePokepic:: ; 24528
call LoadStandardFont
ret
-PokepicMenuDataHeader: ; 0x24547
+PokepicMenuHeader: ; 0x24547
db MENU_BACKUP_TILES ; flags
menu_coords 6, 4, 14, 13
dw NULL
diff --git a/engine/events/pokerus/check_pokerus.asm b/engine/events/pokerus/check_pokerus.asm
index d45055ab2..c739c59c5 100644
--- a/engine/events/pokerus/check_pokerus.asm
+++ b/engine/events/pokerus/check_pokerus.asm
@@ -1,4 +1,4 @@
-CheckPokerus: ; 4d860
+_CheckPokerus: ; 4d860
; Return carry if a monster in your party has Pokerus
; Get number of monsters to iterate over
diff --git a/engine/events/pokerus/pokerus.asm b/engine/events/pokerus/pokerus.asm
index b29d0d096..5728cb181 100644
--- a/engine/events/pokerus/pokerus.asm
+++ b/engine/events/pokerus/pokerus.asm
@@ -19,7 +19,7 @@ GivePokerusAndConvertBerries: ; 2ed44
; If we haven't been to Goldenrod City at least once,
; prevent the contraction of Pokerus.
ld hl, wStatusFlags2
- bit 6, [hl]
+ bit STATUSFLAGS2_REACHED_GOLDENROD_F, [hl]
ret z
call Random
ld a, [hRandomAdd]
@@ -61,7 +61,7 @@ GivePokerusAndConvertBerries: ; 2ed44
.TrySpreadPokerus:
call Random
- cp 1 + 33 percent
+ cp 33 percent + 1
ret nc ; 1/3 chance
ld a, [wPartyCount]
@@ -74,7 +74,7 @@ GivePokerusAndConvertBerries: ; 2ed44
jr c, .checkPreviousMonsLoop ; no more mons after this one, go backwards
call Random
- cp 1 + 50 percent
+ cp 50 percent + 1
jr c, .checkPreviousMonsLoop ; 1/2 chance, go backwards
.checkFollowingMonsLoop
add hl, de
@@ -121,14 +121,15 @@ GivePokerusAndConvertBerries: ; 2ed44
ld [hl], a
ret
-; any berry held by a Shuckle may be converted to berry juice
ConvertBerriesToBerryJuice: ; 2ede6
+; If we haven't been to Goldenrod City at least once,
+; prevent Shuckle from turning held Berry into Berry Juice.
ld hl, wStatusFlags2
- bit 6, [hl]
+ bit STATUSFLAGS2_REACHED_GOLDENROD_F, [hl]
ret z
call Random
- cp $10
- ret nc ; 1/16 chance
+ cp 6 percent + 1 ; 1/16 chance
+ ret nc
ld hl, wPartyMons
ld a, [wPartyCount]
.partyMonLoop
diff --git a/engine/events/print_photo.asm b/engine/events/print_photo.asm
index 47766344c..d8350a530 100755
--- a/engine/events/print_photo.asm
+++ b/engine/events/print_photo.asm
@@ -1,4 +1,4 @@
-Special_PhotoStudio: ; 16dc7
+PhotoStudio: ; 16dc7
ld hl, .Text_AskWhichMon
call PrintText
farcall SelectMonFromParty
diff --git a/engine/events/print_unown.asm b/engine/events/print_unown.asm
index b0b7e856a..f8fa52af3 100644
--- a/engine/events/print_unown.asm
+++ b/engine/events/print_unown.asm
@@ -1,4 +1,4 @@
-UnownPrinter: ; 16be4
+_UnownPrinter: ; 16be4
ld a, [wUnownDex]
and a
ret z
diff --git a/engine/events/print_unown_2.asm b/engine/events/print_unown_2.asm
index 4583a59e0..78611e594 100644
--- a/engine/events/print_unown_2.asm
+++ b/engine/events/print_unown_2.asm
@@ -98,10 +98,10 @@ RotateUnownFrontpic: ; e0000
overworldmaprect: MACRO
y = 0
rept \1
-x = \1 * (\2 +- 1) + y
+x = \1 * (\2 + -1) + y
rept \2
dw wOverworldMap tile x
-x = x +- \2
+x = x + -\2
endr
y = y + 1
endr
diff --git a/engine/events/prof_oaks_pc.asm b/engine/events/prof_oaks_pc.asm
index 5dca38efe..b80efe75b 100755
--- a/engine/events/prof_oaks_pc.asm
+++ b/engine/events/prof_oaks_pc.asm
@@ -3,7 +3,7 @@ ProfOaksPC: ; 0x265d3
call MenuTextBox
call YesNoBox
jr c, .shutdown
- call Special_ProfOaksPCBoot ; player chose "yes"?
+ call ProfOaksPCBoot ; player chose "yes"?
.shutdown
ld hl, OakPCText4
call PrintText
@@ -11,7 +11,7 @@ ProfOaksPC: ; 0x265d3
call ExitMenu
ret
-Special_ProfOaksPCBoot ; 0x265ee
+ProfOaksPCBoot ; 0x265ee
ld hl, OakPCText2
call PrintText
call Rate
@@ -98,27 +98,7 @@ endr
ld l, a
ret
-OakRatings: ; 0x2667f
-; if you caught at most this many, play this sound, load this text
- dbww 9, SFX_DEX_FANFARE_LESS_THAN_20, OakRating01
- dbww 19, SFX_DEX_FANFARE_LESS_THAN_20, OakRating02
- dbww 34, SFX_DEX_FANFARE_20_49, OakRating03
- dbww 49, SFX_DEX_FANFARE_20_49, OakRating04
- dbww 64, SFX_DEX_FANFARE_50_79, OakRating05
- dbww 79, SFX_DEX_FANFARE_50_79, OakRating06
- dbww 94, SFX_DEX_FANFARE_80_109, OakRating07
- dbww 109, SFX_DEX_FANFARE_80_109, OakRating08
- dbww 124, SFX_CAUGHT_MON, OakRating09
- dbww 139, SFX_CAUGHT_MON, OakRating10
- dbww 154, SFX_DEX_FANFARE_140_169, OakRating11
- dbww 169, SFX_DEX_FANFARE_140_169, OakRating12
- dbww 184, SFX_DEX_FANFARE_170_199, OakRating13
- dbww 199, SFX_DEX_FANFARE_170_199, OakRating14
- dbww 214, SFX_DEX_FANFARE_200_229, OakRating15
- dbww 229, SFX_DEX_FANFARE_200_229, OakRating16
- dbww 239, SFX_DEX_FANFARE_230_PLUS, OakRating17
- dbww 248, SFX_DEX_FANFARE_230_PLUS, OakRating18
- dbww 255, SFX_DEX_FANFARE_230_PLUS, OakRating19
+INCLUDE "data/events/pokedex_ratings.asm"
OakPCText1: ; 0x266de
text_jump _OakPCText1
diff --git a/engine/events/sacred_ash.asm b/engine/events/sacred_ash.asm
index cf305355a..2cb5e37a1 100755
--- a/engine/events/sacred_ash.asm
+++ b/engine/events/sacred_ash.asm
@@ -52,12 +52,12 @@ SacredAshScript: ; 0x50821
special HealParty
reloadmappart
playsound SFX_WARP_TO
- special Special_FadeOutPalettes
- special Special_FadeInPalettes
- special Special_FadeOutPalettes
- special Special_FadeInPalettes
- special Special_FadeOutPalettes
- special Special_FadeInPalettes
+ special FadeOutPalettes
+ special FadeInPalettes
+ special FadeOutPalettes
+ special FadeInPalettes
+ special FadeOutPalettes
+ special FadeInPalettes
waitsfx
writetext UnknownText_0x50845
playsound SFX_CAUGHT_MON
diff --git a/engine/events/specials.asm b/engine/events/specials.asm
new file mode 100644
index 000000000..3904f4a31
--- /dev/null
+++ b/engine/events/specials.asm
@@ -0,0 +1,471 @@
+Special:: ; c01b
+; Run script special de.
+ ld hl, SpecialsPointers
+ add hl, de
+ add hl, de
+ add hl, de
+ ld b, [hl]
+ inc hl
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ ld a, b
+ rst FarCall
+ ret
+; c029
+
+INCLUDE "data/special_pointers.asm"
+
+DummySpecial_c224: ; c224
+ ret
+; c225
+
+SetPlayerPalette: ; c225
+ ld a, [wScriptVar]
+ ld d, a
+ farcall _SetPlayerPalette
+ ret
+; c230
+
+GameCornerPrizeMonCheckDex: ; c230
+ ld a, [wScriptVar]
+ dec a
+ call CheckCaughtMon
+ ret nz
+ ld a, [wScriptVar]
+ dec a
+ call SetSeenAndCaughtMon
+ call FadeToMenu
+ ld a, [wScriptVar]
+ ld [wd265], a
+ farcall NewPokedexEntry
+ call ExitAllMenus
+ ret
+; c252
+
+UnusedSetSeenMon: ; c252
+ ld a, [wScriptVar]
+ dec a
+ call SetSeenMon
+ ret
+; c25a
+
+FindPartyMonGreaterThanThatLevel: ; c25a
+ ld a, [wScriptVar]
+ ld b, a
+ farcall _FindPartyMonGreaterThanThatLevel
+ jr z, FoundNone
+ jr FoundOne
+
+FindPartyMonAtLeastThatHappy: ; c268
+ ld a, [wScriptVar]
+ ld b, a
+ farcall _FindPartyMonAtLeastThatHappy
+ jr z, FoundNone
+ jr FoundOne
+
+FindPartyMonThatSpecies: ; c276
+ ld a, [wScriptVar]
+ ld b, a
+ farcall _FindPartyMonThatSpecies
+ jr z, FoundNone
+ jr FoundOne
+
+FindPartyMonThatSpeciesYourTrainerID: ; c284
+ ld a, [wScriptVar]
+ ld b, a
+ farcall _FindPartyMonThatSpeciesYourTrainerID
+ jr z, FoundNone
+ jr FoundOne
+
+FoundOne: ; c292
+ ld a, TRUE
+ ld [wScriptVar], a
+ ret
+
+FoundNone: ; c298
+ xor a
+ ld [wScriptVar], a
+ ret
+; c29d
+
+NameRival: ; 0xc29d
+ ld b, $2 ; rival
+ ld de, wRivalName
+ farcall _NamingScreen
+ ; default to "SILVER"
+ ld hl, wRivalName
+ ld de, DefaultRivalName
+ call InitName
+ ret
+; 0xc2b2
+
+DefaultRivalName: ; 0xc2b2
+ db "SILVER@"
+
+NameRater: ; c2b9
+ farcall _NameRater
+ ret
+; c2c0
+
+OverworldTownMap: ; c2c0
+ call FadeToMenu
+ farcall _TownMap
+ call ExitAllMenus
+ ret
+; c2cd
+
+UnownPrinter: ; c2cd
+ call FadeToMenu
+ farcall _UnownPrinter
+ call ExitAllMenus
+ ret
+; c2da
+
+DisplayLinkRecord: ; c2da
+ call FadeToMenu
+ farcall _DisplayLinkRecord
+ call ExitAllMenus
+ ret
+; c2e7
+
+PlayersHousePC: ; c2e7
+ xor a
+ ld [wScriptVar], a
+ farcall _PlayersHousePC
+ ld a, c
+ ld [wScriptVar], a
+ ret
+; c2f6
+
+CheckMysteryGift: ; c2f6
+ ld a, BANK(sMysteryGiftItem)
+ call GetSRAMBank
+ ld a, [sMysteryGiftItem]
+ and a
+ jr z, .no
+ inc a
+
+.no
+ ld [wScriptVar], a
+ call CloseSRAM
+ ret
+; c309
+
+GetMysteryGiftItem: ; c309
+ ld a, BANK(sMysteryGiftItem)
+ call GetSRAMBank
+ ld a, [sMysteryGiftItem]
+ ld [wCurItem], a
+ ld a, 1
+ ld [wItemQuantityChangeBuffer], a
+ ld hl, wNumItems
+ call ReceiveItem
+ jr nc, .no_room
+ xor a
+ ld [sMysteryGiftItem], a
+ call CloseSRAM
+ ld a, [wCurItem]
+ ld [wd265], a
+ call GetItemName
+ ld hl, .ReceiveItemText
+ call PrintText
+ ld a, TRUE
+ ld [wScriptVar], a
+ ret
+
+.no_room
+ call CloseSRAM
+ xor a
+ ld [wScriptVar], a
+ ret
+; c345
+
+.ReceiveItemText: ; 0xc345
+ ; received item
+ text_jump UnknownText_0x1bd3be
+ db "@"
+; 0xc34a
+
+BugContestJudging: ; c34a
+ farcall _BugContestJudging
+ ld a, b
+ ld [wScriptVar], a
+ ret
+; c355
+
+MapRadio: ; c355
+ ld a, [wScriptVar]
+ ld e, a
+ farcall PlayRadio
+ ret
+; c360
+
+UnownPuzzle: ; c360
+ call FadeToMenu
+ farcall _UnownPuzzle
+ ld a, [wSolvedUnownPuzzle]
+ ld [wScriptVar], a
+ call ExitAllMenus
+ ret
+; c373
+
+SlotMachine: ; c373
+ call CheckCoinsAndCoinCase
+ ret c
+ ld a, BANK(_SlotMachine)
+ ld hl, _SlotMachine
+ call StartGameCornerGame
+ ret
+; c380
+
+CardFlip: ; c380
+ call CheckCoinsAndCoinCase
+ ret c
+ ld a, BANK(_CardFlip)
+ ld hl, _CardFlip
+ call StartGameCornerGame
+ ret
+; c38d
+
+DummyNonfunctionalGameCornerGame: ; c38d
+ call CheckCoinsAndCoinCase
+ ret c
+ ld a, BANK(_DummyGame)
+ ld hl, _DummyGame
+ call StartGameCornerGame
+ ret
+; c39a
+
+StartGameCornerGame: ; c39a
+ call FarQueueScript
+ call FadeToMenu
+ ld hl, wQueuedScriptBank
+ ld a, [hli]
+ push af
+ ld a, [hli]
+ ld h, [hl]
+ ld l, a
+ pop af
+ rst FarCall
+ call ExitAllMenus
+ ret
+; c3ae
+
+CheckCoinsAndCoinCase: ; c3ae
+ ld hl, wCoins
+ ld a, [hli]
+ or [hl]
+ jr z, .no_coins
+ ld a, COIN_CASE
+ ld [wCurItem], a
+ ld hl, wNumItems
+ call CheckItem
+ jr nc, .no_coin_case
+ and a
+ ret
+
+.no_coins
+ ld hl, .NoCoinsText
+ jr .print
+
+.no_coin_case
+ ld hl, .NoCoinCaseText
+
+.print
+ call PrintText
+ scf
+ ret
+; c3d1
+
+.NoCoinsText: ; 0xc3d1
+ ; You have no coins.
+ text_jump UnknownText_0x1bd3d7
+ db "@"
+; 0xc3d6
+
+.NoCoinCaseText: ; 0xc3d6
+ ; You don't have a COIN CASE.
+ text_jump UnknownText_0x1bd3eb
+ db "@"
+; 0xc3db
+
+ClearBGPalettesBufferScreen: ; c3db
+ call ClearBGPalettes
+ call BufferScreen
+ ret
+; c3e2
+
+ScriptReturnCarry: ; c3e2
+ jr c, .carry
+ xor a
+ ld [wScriptVar], a
+ ret
+.carry
+ ld a, 1
+ ld [wScriptVar], a
+ ret
+; c3ef
+
+UnusedCheckUnusedTwoDayTimer: ; c3ef
+ farcall CheckUnusedTwoDayTimer
+ ld a, [wUnusedTwoDayTimer]
+ ld [wScriptVar], a
+ ret
+; c3fc
+
+ActivateFishingSwarm: ; c3fc
+ ld a, [wScriptVar]
+ ld [wFishingSwarmFlag], a
+ ret
+; c403
+
+
+StoreSwarmMapIndices:: ; c403
+ ld a, c
+ and a
+ jr nz, .yanma
+; swarm dark cave violet entrance
+ ld a, d
+ ld [wDunsparceMapGroup], a
+ ld a, e
+ ld [wDunsparceMapNumber], a
+ ret
+
+.yanma
+ ld a, d
+ ld [wYanmaMapGroup], a
+ ld a, e
+ ld [wYanmaMapNumber], a
+ ret
+; c419
+
+
+CheckPokerus: ; c419
+; Check if a monster in your party has Pokerus
+ farcall _CheckPokerus
+ jp ScriptReturnCarry
+; c422
+
+ResetLuckyNumberShowFlag: ; c422
+ farcall RestartLuckyNumberCountdown
+ ld hl, wLuckyNumberShowFlag
+ res LUCKYNUMBERSHOW_GAME_OVER_F, [hl]
+ farcall LoadOrRegenerateLuckyIDNumber
+ ret
+; c434
+
+CheckLuckyNumberShowFlag: ; c434
+ farcall _CheckLuckyNumberShowFlag
+ jp ScriptReturnCarry
+; c43d
+
+SnorlaxAwake: ; 0xc43d
+; Check if the Poké Flute channel is playing, and if the player is standing
+; next to Snorlax.
+
+; outputs:
+; wScriptVar is 1 if the conditions are met, otherwise 0.
+
+; check background music
+ ld a, [wMapMusic]
+ cp MUSIC_POKE_FLUTE_CHANNEL
+ jr nz, .nope
+
+ ld a, [wXCoord]
+ ld b, a
+ ld a, [wYCoord]
+ ld c, a
+
+ ld hl, .ProximityCoords
+.loop
+ ld a, [hli]
+ cp -1
+ jr z, .nope
+ cp b
+ jr nz, .nextcoord
+ ld a, [hli]
+ cp c
+ jr nz, .loop
+
+ ld a, TRUE
+ jr .done
+
+.nextcoord
+ inc hl
+ jr .loop
+
+.nope
+ xor a
+.done
+ ld [wScriptVar], a
+ ret
+
+.ProximityCoords:
+ ; x, y
+ db 33, 8 ; left
+ db 34, 10 ; below
+ db 35, 10 ; below
+ db 36, 8 ; right
+ db 36, 9 ; right
+ db -1
+
+
+PlayCurMonCry: ; c472
+ ld a, [wCurPartySpecies]
+ jp PlayMonCry
+; c478
+
+
+GameboyCheck: ; c478
+ ld a, [hCGB]
+ and a
+ jr nz, .cgb
+
+ ld a, [hSGB]
+ and a
+ jr nz, .sgb
+
+.gb
+ xor a ; GBCHECK_GB
+ jr .done
+.sgb
+ ld a, GBCHECK_SGB
+ jr .done
+.cgb
+ ld a, GBCHECK_CGB
+.done
+ ld [wScriptVar], a
+ ret
+
+
+FadeOutMusic: ; c48f
+ ld a, LOW(MUSIC_NONE)
+ ld [wMusicFadeID], a
+ ld a, HIGH(MUSIC_NONE)
+ ld [wMusicFadeID + 1], a
+ ld a, $2
+ ld [wMusicFade], a
+ ret
+; c49f
+
+Diploma: ; c49f
+ call FadeToMenu
+ farcall _Diploma
+ call ExitAllMenus
+ ret
+; c4ac
+
+PrintDiploma: ; c4ac
+ call FadeToMenu
+ farcall _PrintDiploma
+ call ExitAllMenus
+ ret
+; c4b9
+
+TrainerHouse: ; 0xc4b9
+ ld a, BANK(sMysteryGiftTrainerHouseFlag)
+ call GetSRAMBank
+ ld a, [sMysteryGiftTrainerHouseFlag]
+ ld [wScriptVar], a
+ jp CloseSRAM
diff --git a/engine/events/special.asm b/engine/events/specials_2.asm
index 081606512..ab1f35515 100755
--- a/engine/events/special.asm
+++ b/engine/events/specials_2.asm
@@ -1,6 +1,6 @@
MANIA_OT_ID EQU 00518
-Special_GiveShuckle: ; 7305
+GiveShuckle: ; 7305
; Adding to the party.
xor a
@@ -56,7 +56,7 @@ Special_GiveShuckle: ; 7305
; Engine flag for this event.
ld hl, wDailyFlags
- set 5, [hl] ; ENGINE_SHUCKLE_GIVEN
+ set DAILYFLAGS_GOT_SHUCKIE_TODAY_F, [hl]
ld a, 1
ld [wScriptVar], a
ret
@@ -71,7 +71,7 @@ SpecialShuckleOT:
SpecialShuckleNick:
db "SHUCKIE@"
-Special_ReturnShuckle: ; 737e
+ReturnShuckle: ; 737e
farcall SelectMonFromParty
jr c, .refused
@@ -141,7 +141,7 @@ Special_ReturnShuckle: ; 737e
ld [wScriptVar], a
ret
-Special_BillsGrandfather: ; 73f7
+BillsGrandfather: ; 73f7
farcall SelectMonFromParty
jr c, .cancel
ld a, [wCurPartySpecies]
@@ -155,18 +155,19 @@ Special_BillsGrandfather: ; 73f7
ld [wScriptVar], a
ret
-Special_YoungerHaircutBrother: ; 7413
- ld hl, Data_YoungerHaircutBrother
- jr MassageOrHaircut
+YoungerHaircutBrother: ; 7413
+ ld hl, HappinessData_YoungerHaircutBrother
+ jr HaircutOrGrooming
-Special_OlderHaircutBrother: ; 7418
- ld hl, Data_OlderHaircutBrother
- jr MassageOrHaircut
+OlderHaircutBrother: ; 7418
+ ld hl, HappinessData_OlderHaircutBrother
+ jr HaircutOrGrooming
-Special_DaisyMassage: ; 741d
- ld hl, Data_DaisyMassage
+DaisysGrooming: ; 741d
+ ld hl, HappinessData_DaisysGrooming
+ ; fallthrough
-MassageOrHaircut: ; 7420
+HaircutOrGrooming: ; 7420
push hl
farcall SelectMonFromParty
pop hl
@@ -181,7 +182,7 @@ MassageOrHaircut: ; 7420
call Random
; Bug: Subtracting $ff from $ff fails to set c.
; This can result in overflow into the next data array.
-; In the case of getting a massage from Daisy, we bleed
+; In the case of getting a grooming from Daisy, we bleed
; into CopyPokemonName_Buffer1_Buffer3, which passes
; $d0 to ChangeHappiness and returns $73 to the script.
; The end result is that there is a 0.4% chance your
@@ -212,18 +213,7 @@ MassageOrHaircut: ; 7420
ld [wScriptVar], a
ret
-Data_YoungerHaircutBrother: ; 7459
- db $4c, 2, HAPPINESS_YOUNGCUT1 ; 30% chance
- db $80, 3, HAPPINESS_YOUNGCUT2 ; 20% chance
- db $ff, 4, HAPPINESS_YOUNGCUT3 ; 50% chance
-
-Data_OlderHaircutBrother: ; 7462
- db $9a, 2, HAPPINESS_OLDERCUT1 ; 60% chance
- db $4c, 3, HAPPINESS_OLDERCUT2 ; 10% chance
- db $ff, 4, HAPPINESS_OLDERCUT3 ; 30% chance
-
-Data_DaisyMassage: ; 746b
- db $ff, 2, HAPPINESS_MASSAGE ; 99.6% chance
+INCLUDE "data/events/happiness_probabilities.asm"
CopyPokemonName_Buffer1_Buffer3: ; 746e
ld hl, wStringBuffer1
diff --git a/engine/events/std_collision.asm b/engine/events/std_collision.asm
index 79dbc71f1..775f7c10c 100644
--- a/engine/events/std_collision.asm
+++ b/engine/events/std_collision.asm
@@ -23,7 +23,7 @@ CheckFacingTileForStdScript:: ; 1365b
xor a
ret
-INCLUDE "data/collision_stdscripts.asm"
+INCLUDE "data/events/collision_stdscripts.asm"
Script_JumpStdFromRAM: ; 0x1369a
jump wJumpStdScriptBuffer
diff --git a/engine/events/std_scripts.asm b/engine/events/std_scripts.asm
index 216ce0058..e3dbd92df 100644
--- a/engine/events/std_scripts.asm
+++ b/engine/events/std_scripts.asm
@@ -57,11 +57,11 @@ PokecenterNurseScript:
; EVENT_WELCOMED_TO_POKECOM_CENTER is never set
opentext
- checkmorn
+ checktime MORN
iftrue .morn
- checkday
+ checktime DAY
iftrue .day
- checknite
+ checktime NITE
iftrue .nite
jump .ok
@@ -108,23 +108,23 @@ PokecenterNurseScript:
farwritetext NurseTakePokemonText
pause 20
- special Special_StubbedTrainerRankings_Healings
- spriteface LAST_TALKED, LEFT
+ special StubbedTrainerRankings_Healings
+ objectface LAST_TALKED, LEFT
pause 10
special HealParty
playmusic MUSIC_NONE
writebyte HEALMACHINE_POKECENTER
- special Special_HealMachineAnim
+ special HealMachineAnim
pause 30
special RestartMapMusic
- spriteface LAST_TALKED, DOWN
+ objectface LAST_TALKED, DOWN
pause 10
checkphonecall ; elm already called about pokerus
iftrue .no
- checkflag ENGINE_POKERUS ; nurse already talked about pokerus
+ checkflag ENGINE_CAUGHT_POKERUS
iftrue .no
- special Special_CheckPokerus
+ special CheckPokerus
iftrue .pokerus
.no
@@ -134,9 +134,9 @@ PokecenterNurseScript:
.done
farwritetext NurseGoodbyeText
- spriteface LAST_TALKED, UP
+ objectface LAST_TALKED, UP
pause 10
- spriteface LAST_TALKED, DOWN
+ objectface LAST_TALKED, DOWN
pause 10
waitbutton
@@ -158,7 +158,7 @@ PokecenterNurseScript:
closetext
.pokerus_done
- setflag ENGINE_POKERUS
+ setflag ENGINE_CAUGHT_POKERUS
specialphonecall SPECIALCALL_POKERUS
end
@@ -184,7 +184,7 @@ TownMapScript:
opentext
farwritetext TownMapText
waitbutton
- special Special_TownMap
+ special OverworldTownMap
closetext
end
@@ -204,7 +204,7 @@ HomepageScript:
Radio1Script:
opentext
writebyte MAPRADIO_POKEMON_CHANNEL
- special Special_MapRadio
+ special MapRadio
closetext
end
@@ -212,7 +212,7 @@ Radio2Script:
; Lucky Channel
opentext
writebyte MAPRADIO_LUCKY_CHANNEL
- special Special_MapRadio
+ special MapRadio
closetext
end
@@ -221,7 +221,7 @@ TrashCanScript: ; 0xbc1a5
PCScript:
opentext
- special Special_PokemonCenterPC
+ special PokemonCenterPC
closetext
end
@@ -245,12 +245,12 @@ MartSignScript
DayToTextScript:
checkcode VAR_WEEKDAY
- if_equal MONDAY, .Monday
- if_equal TUESDAY, .Tuesday
- if_equal WEDNESDAY, .Wednesday
- if_equal THURSDAY, .Thursday
- if_equal FRIDAY, .Friday
- if_equal SATURDAY, .Saturday
+ ifequal MONDAY, .Monday
+ ifequal TUESDAY, .Tuesday
+ ifequal WEDNESDAY, .Wednesday
+ ifequal THURSDAY, .Thursday
+ ifequal FRIDAY, .Friday
+ ifequal SATURDAY, .Saturday
stringtotext .SundayText, MEM_BUFFER_0
end
.Monday:
@@ -298,7 +298,7 @@ RadioTowerRocketsScript:
clearevent EVENT_USED_THE_CARD_KEY_IN_THE_RADIO_TOWER
setevent EVENT_MAHOGANY_TOWN_POKEFAN_M_BLOCKS_EAST
specialphonecall SPECIALCALL_WEIRDBROADCAST
- setmapscene MAHOGANY_TOWN, 1
+ setmapscene MAHOGANY_TOWN, SCENE_FINISHED
end
BugContestResultsWarpScript:
@@ -320,11 +320,11 @@ BugContestResultsScript:
opentext
farwritetext ContestResults_ReadyToJudgeText
waitbutton
- special Special_BugContestJudging
+ special BugContestJudging
vartomem MEM_BUFFER_0
- if_equal 1, BugContestResults_FirstPlace
- if_equal 2, BugContestResults_SecondPlace
- if_equal 3, BugContestResults_ThirdPlace
+ ifequal 1, BugContestResults_FirstPlace
+ ifequal 2, BugContestResults_SecondPlace
+ ifequal 3, BugContestResults_ThirdPlace
farwritetext ContestResults_ConsolationPrizeText
buttonsound
waitsfx
@@ -346,18 +346,18 @@ BugContestResults_FinishUp
iffalse BugContestResults_DidNotLeaveMons
farwritetext ContestResults_ReturnPartyText
waitbutton
- special Special_ContestReturnMons
+ special ContestReturnMons
BugContestResults_DidNotLeaveMons
- special Special_CheckPartyFullAfterContest
- if_equal BUGCONTEST_CAUGHT_MON, BugContestResults_CleanUp
- if_equal BUGCONTEST_NO_CATCH, BugContestResults_CleanUp
+ special CheckPartyFullAfterContest
+ ifequal BUGCONTEST_CAUGHT_MON, BugContestResults_CleanUp
+ ifequal BUGCONTEST_NO_CATCH, BugContestResults_CleanUp
; BUGCONTEST_BOXED_MON
farwritetext ContestResults_PartyFullText
waitbutton
BugContestResults_CleanUp
closetext
- setscene 0
- setmapscene ROUTE_35_NATIONAL_PARK_GATE, 0
+ setscene SCENE_ROUTE36NATIONALPARKGATE_NOTHING
+ setmapscene ROUTE_35_NATIONAL_PARK_GATE, SCENE_ROUTE35NATIONALPARKGATE_NOTHING
setevent EVENT_BUG_CATCHING_CONTESTANT_1A
setevent EVENT_BUG_CATCHING_CONTESTANT_2A
setevent EVENT_BUG_CATCHING_CONTESTANT_3A
@@ -384,7 +384,7 @@ BugContestResults_CleanUp
; 0xbc31e
BugContestResults_FirstPlace ; 0xbc31e
- setevent EVENT_GAVE_KURT_APRICORNS
+ setevent EVENT_TEMPORARY_UNTIL_MAP_RELOAD_1
itemtotext SUN_STONE, MEM_BUFFER_1
farwritetext ContestResults_PlayerWonAPrizeText
waitbutton
@@ -539,10 +539,10 @@ InitializeEventsScript:
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_PLAYERS_HOUSE_2F_CONSOLE
+ setevent EVENT_PLAYERS_HOUSE_2F_DOLL_1
+ setevent EVENT_PLAYERS_HOUSE_2F_DOLL_2
+ setevent EVENT_PLAYERS_HOUSE_2F_BIG_DOLL
setevent EVENT_DECO_BED_1
setevent EVENT_DECO_PLANT_4
setevent EVENT_GOLDENROD_TRAIN_STATION_GENTLEMAN
@@ -576,7 +576,7 @@ InitializeEventsScript:
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_PLAYERS_NEIGHBORS_HOUSE_NEIGHBOR
setevent EVENT_AZALEA_TOWN_KURT
setevent EVENT_AZALEA_TOWN_KURT
setevent EVENT_ILEX_FOREST_KURT
@@ -585,7 +585,7 @@ InitializeEventsScript:
setevent EVENT_GOLDENROD_SALE_OFF
setevent EVENT_ECRUTEAK_CITY_GRAMPS
setevent EVENT_EUSINE_IN_BURNED_TOWER
- setevent EVENT_KRISS_HOUSE_MOM_2
+ setevent EVENT_PLAYERS_HOUSE_MOM_2
setevent EVENT_WISE_TRIOS_ROOM_WISE_TRIO_2
setevent EVENT_CIANWOOD_CITY_EUSINE
setevent EVENT_TIN_TOWER_1F_EUSINE
@@ -622,28 +622,28 @@ InitializeEventsScript:
return
AskNumber1MScript:
- special Special_RandomPhoneMon
+ special RandomPhoneMon
checkcode VAR_CALLERID
- 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
+ ifequal PHONE_SCHOOLBOY_JACK, .Jack
+ ifequal PHONE_SAILOR_HUEY, .Huey
+ ifequal PHONE_COOLTRAINERM_GAVEN, .Gaven
+ ifequal PHONE_BIRDKEEPER_JOSE, .Jose
+ ifequal PHONE_YOUNGSTER_JOEY, .Joey
+ ifequal PHONE_BUG_CATCHER_WADE, .Wade
+ ifequal PHONE_FISHER_RALPH, .Ralph
+ ifequal PHONE_HIKER_ANTHONY, .Anthony
+ ifequal PHONE_CAMPER_TODD, .Todd
+ ifequal PHONE_JUGGLER_IRWIN, .Irwin
+ ifequal PHONE_BUG_CATCHER_ARNIE, .Arnie
+ ifequal PHONE_SCHOOLBOY_ALAN, .Alan
+ ifequal PHONE_SCHOOLBOY_CHAD, .Chad
+ ifequal PHONE_POKEFANM_DEREK, .Derek
+ ifequal PHONE_FISHER_TULLY, .Tully
+ ifequal PHONE_POKEMANIAC_BRENT, .Brent
+ ifequal PHONE_BIRDKEEPER_VANCE, .Vance
+ ifequal PHONE_FISHER_WILTON, .Wilton
+ ifequal PHONE_BLACKBELT_KENJI, .Kenji
+ ifequal PHONE_HIKER_PARRY, .Parry
.Jack:
farwritetext JackAskNumber1Text
@@ -707,28 +707,28 @@ AskNumber1MScript:
end
AskNumber2MScript:
- special Special_RandomPhoneMon
+ special RandomPhoneMon
checkcode VAR_CALLERID
- 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
+ ifequal PHONE_SCHOOLBOY_JACK, .Jack
+ ifequal PHONE_SAILOR_HUEY, .Huey
+ ifequal PHONE_COOLTRAINERM_GAVEN, .Gaven
+ ifequal PHONE_BIRDKEEPER_JOSE, .Jose
+ ifequal PHONE_YOUNGSTER_JOEY, .Joey
+ ifequal PHONE_BUG_CATCHER_WADE, .Wade
+ ifequal PHONE_FISHER_RALPH, .Ralph
+ ifequal PHONE_HIKER_ANTHONY, .Anthony
+ ifequal PHONE_CAMPER_TODD, .Todd
+ ifequal PHONE_JUGGLER_IRWIN, .Irwin
+ ifequal PHONE_BUG_CATCHER_ARNIE, .Arnie
+ ifequal PHONE_SCHOOLBOY_ALAN, .Alan
+ ifequal PHONE_SCHOOLBOY_CHAD, .Chad
+ ifequal PHONE_POKEFANM_DEREK, .Derek
+ ifequal PHONE_FISHER_TULLY, .Tully
+ ifequal PHONE_POKEMANIAC_BRENT, .Brent
+ ifequal PHONE_BIRDKEEPER_VANCE, .Vance
+ ifequal PHONE_FISHER_WILTON, .Wilton
+ ifequal PHONE_BLACKBELT_KENJI, .Kenji
+ ifequal PHONE_HIKER_PARRY, .Parry
.Jack:
farwritetext JackAskNumber2Text
@@ -800,26 +800,26 @@ RegisteredNumberMScript:
NumberAcceptedMScript:
checkcode VAR_CALLERID
- 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
+ ifequal PHONE_SCHOOLBOY_JACK, .Jack
+ ifequal PHONE_SAILOR_HUEY, .Huey
+ ifequal PHONE_COOLTRAINERM_GAVEN, .Gaven
+ ifequal PHONE_BIRDKEEPER_JOSE, .Jose
+ ifequal PHONE_YOUNGSTER_JOEY, .Joey
+ ifequal PHONE_BUG_CATCHER_WADE, .Wade
+ ifequal PHONE_FISHER_RALPH, .Ralph
+ ifequal PHONE_HIKER_ANTHONY, .Anthony
+ ifequal PHONE_CAMPER_TODD, .Todd
+ ifequal PHONE_JUGGLER_IRWIN, .Irwin
+ ifequal PHONE_BUG_CATCHER_ARNIE, .Arnie
+ ifequal PHONE_SCHOOLBOY_ALAN, .Alan
+ ifequal PHONE_SCHOOLBOY_CHAD, .Chad
+ ifequal PHONE_POKEFANM_DEREK, .Derek
+ ifequal PHONE_FISHER_TULLY, .Tully
+ ifequal PHONE_POKEMANIAC_BRENT, .Brent
+ ifequal PHONE_BIRDKEEPER_VANCE, .Vance
+ ifequal PHONE_FISHER_WILTON, .Wilton
+ ifequal PHONE_BLACKBELT_KENJI, .Kenji
+ ifequal PHONE_HIKER_PARRY, .Parry
.Jack:
farwritetext JackNumberAcceptedText
@@ -924,26 +924,26 @@ NumberAcceptedMScript:
NumberDeclinedMScript:
checkcode VAR_CALLERID
- 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
+ ifequal PHONE_SCHOOLBOY_JACK, .Jack
+ ifequal PHONE_SAILOR_HUEY, .Huey
+ ifequal PHONE_COOLTRAINERM_GAVEN, .Gaven
+ ifequal PHONE_BIRDKEEPER_JOSE, .Jose
+ ifequal PHONE_YOUNGSTER_JOEY, .Joey
+ ifequal PHONE_BUG_CATCHER_WADE, .Wade
+ ifequal PHONE_FISHER_RALPH, .Ralph
+ ifequal PHONE_HIKER_ANTHONY, .Anthony
+ ifequal PHONE_CAMPER_TODD, .Todd
+ ifequal PHONE_JUGGLER_IRWIN, .Irwin
+ ifequal PHONE_BUG_CATCHER_ARNIE, .Arnie
+ ifequal PHONE_SCHOOLBOY_ALAN, .Alan
+ ifequal PHONE_SCHOOLBOY_CHAD, .Chad
+ ifequal PHONE_POKEFANM_DEREK, .Derek
+ ifequal PHONE_FISHER_TULLY, .Tully
+ ifequal PHONE_POKEMANIAC_BRENT, .Brent
+ ifequal PHONE_BIRDKEEPER_VANCE, .Vance
+ ifequal PHONE_FISHER_WILTON, .Wilton
+ ifequal PHONE_BLACKBELT_KENJI, .Kenji
+ ifequal PHONE_HIKER_PARRY, .Parry
.Jack:
farwritetext JackNumberDeclinedText
@@ -1048,26 +1048,26 @@ NumberDeclinedMScript:
PhoneFullMScript:
checkcode VAR_CALLERID
- 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
+ ifequal PHONE_SCHOOLBOY_JACK, .Jack
+ ifequal PHONE_SAILOR_HUEY, .Huey
+ ifequal PHONE_COOLTRAINERM_GAVEN, .Gaven
+ ifequal PHONE_BIRDKEEPER_JOSE, .Jose
+ ifequal PHONE_YOUNGSTER_JOEY, .Joey
+ ifequal PHONE_BUG_CATCHER_WADE, .Wade
+ ifequal PHONE_FISHER_RALPH, .Ralph
+ ifequal PHONE_HIKER_ANTHONY, .Anthony
+ ifequal PHONE_CAMPER_TODD, .Todd
+ ifequal PHONE_JUGGLER_IRWIN, .Irwin
+ ifequal PHONE_BUG_CATCHER_ARNIE, .Arnie
+ ifequal PHONE_SCHOOLBOY_ALAN, .Alan
+ ifequal PHONE_SCHOOLBOY_CHAD, .Chad
+ ifequal PHONE_POKEFANM_DEREK, .Derek
+ ifequal PHONE_FISHER_TULLY, .Tully
+ ifequal PHONE_POKEMANIAC_BRENT, .Brent
+ ifequal PHONE_BIRDKEEPER_VANCE, .Vance
+ ifequal PHONE_FISHER_WILTON, .Wilton
+ ifequal PHONE_BLACKBELT_KENJI, .Kenji
+ ifequal PHONE_HIKER_PARRY, .Parry
.Jack:
farwritetext JackPhoneFullText
@@ -1172,23 +1172,23 @@ PhoneFullMScript:
RematchMScript:
checkcode VAR_CALLERID
- 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
+ ifequal PHONE_SCHOOLBOY_JACK, .Jack
+ ifequal PHONE_SAILOR_HUEY, .Huey
+ ifequal PHONE_COOLTRAINERM_GAVEN, .Gaven
+ ifequal PHONE_BIRDKEEPER_JOSE, .Jose
+ ifequal PHONE_YOUNGSTER_JOEY, .Joey
+ ifequal PHONE_BUG_CATCHER_WADE, .Wade
+ ifequal PHONE_FISHER_RALPH, .Ralph
+ ifequal PHONE_HIKER_ANTHONY, .Anthony
+ ifequal PHONE_CAMPER_TODD, .Todd
+ ifequal PHONE_BUG_CATCHER_ARNIE, .Arnie
+ ifequal PHONE_SCHOOLBOY_ALAN, .Alan
+ ifequal PHONE_SCHOOLBOY_CHAD, .Chad
+ ifequal PHONE_FISHER_TULLY, .Tully
+ ifequal PHONE_POKEMANIAC_BRENT, .Brent
+ ifequal PHONE_BIRDKEEPER_VANCE, .Vance
+ ifequal PHONE_FISHER_WILTON, .Wilton
+ ifequal PHONE_HIKER_PARRY, .Parry
.Jack:
farwritetext JackRematchText
@@ -1278,13 +1278,13 @@ RematchMScript:
GiftMScript:
checkcode VAR_CALLERID
- 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
+ ifequal PHONE_BIRDKEEPER_JOSE, .Jose
+ ifequal PHONE_BUG_CATCHER_WADE, .Wade
+ ifequal PHONE_SCHOOLBOY_ALAN, .Alan
+ ifequal PHONE_POKEFANM_DEREK, .Derek
+ ifequal PHONE_FISHER_TULLY, .Tully
+ ifequal PHONE_FISHER_WILTON, .Wilton
+ ifequal PHONE_BLACKBELT_KENJI, .Kenji
.Jose:
farwritetext JoseGiftText
@@ -1317,17 +1317,17 @@ GiftMScript:
PackFullMScript:
checkcode VAR_CALLERID
- 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
+ ifequal PHONE_SAILOR_HUEY, .Huey
+ ifequal PHONE_BIRDKEEPER_JOSE, .Jose
+ ifequal PHONE_YOUNGSTER_JOEY, .Joey
+ ifequal PHONE_BUG_CATCHER_WADE, .Wade
+ ifequal PHONE_SCHOOLBOY_ALAN, .Alan
+ ifequal PHONE_POKEFANM_DEREK, .Derek
+ ifequal PHONE_FISHER_TULLY, .Tully
+ ifequal PHONE_BIRDKEEPER_VANCE, .Vance
+ ifequal PHONE_FISHER_WILTON, .Wilton
+ ifequal PHONE_BLACKBELT_KENJI, .Kenji
+ ifequal PHONE_HIKER_PARRY, .Parry
.Huey:
farwritetext HueyPackFullText
@@ -1388,10 +1388,10 @@ PackFullMScript:
RematchGiftMScript:
opentext
checkcode VAR_CALLERID
- if_equal PHONE_SAILOR_HUEY, .Huey
- if_equal PHONE_YOUNGSTER_JOEY, .Joey
- if_equal PHONE_BIRDKEEPER_VANCE, .Vance
- if_equal PHONE_HIKER_PARRY, .Parry
+ ifequal PHONE_SAILOR_HUEY, .Huey
+ ifequal PHONE_YOUNGSTER_JOEY, .Joey
+ ifequal PHONE_BIRDKEEPER_VANCE, .Vance
+ ifequal PHONE_HIKER_PARRY, .Parry
.Huey:
farwritetext HueyRematchGiftText
@@ -1412,14 +1412,14 @@ RematchGiftMScript:
AskNumber1FScript:
checkcode VAR_CALLERID
- 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
+ ifequal PHONE_POKEFAN_BEVERLY, .Beverly
+ ifequal PHONE_COOLTRAINERF_BETH, .Beth
+ ifequal PHONE_COOLTRAINERF_REENA, .Reena
+ ifequal PHONE_PICNICKER_LIZ, .Liz
+ ifequal PHONE_PICNICKER_GINA, .Gina
+ ifequal PHONE_LASS_DANA, .Dana
+ ifequal PHONE_PICNICKER_TIFFANY, .Tiffany
+ ifequal PHONE_PICNICKER_ERIN, .Erin
.Beverly:
farwritetext BeverlyAskNumber1Text
@@ -1448,14 +1448,14 @@ AskNumber1FScript:
AskNumber2FScript:
checkcode VAR_CALLERID
- 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
+ ifequal PHONE_POKEFAN_BEVERLY, .Beverly
+ ifequal PHONE_COOLTRAINERF_BETH, .Beth
+ ifequal PHONE_COOLTRAINERF_REENA, .Reena
+ ifequal PHONE_PICNICKER_LIZ, .Liz
+ ifequal PHONE_PICNICKER_GINA, .Gina
+ ifequal PHONE_LASS_DANA, .Dana
+ ifequal PHONE_PICNICKER_TIFFANY, .Tiffany
+ ifequal PHONE_PICNICKER_ERIN, .Erin
.Beverly:
farwritetext BeverlyAskNumber2Text
@@ -1491,14 +1491,14 @@ RegisteredNumberFScript:
NumberAcceptedFScript: ; 0xbcbd3
checkcode VAR_CALLERID
- 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
+ ifequal PHONE_POKEFAN_BEVERLY, .Beverly
+ ifequal PHONE_COOLTRAINERF_BETH, .Beth
+ ifequal PHONE_COOLTRAINERF_REENA, .Reena
+ ifequal PHONE_PICNICKER_LIZ, .Liz
+ ifequal PHONE_PICNICKER_GINA, .Gina
+ ifequal PHONE_LASS_DANA, .Dana
+ ifequal PHONE_PICNICKER_TIFFANY, .Tiffany
+ ifequal PHONE_PICNICKER_ERIN, .Erin
.Beverly:
farwritetext BeverlyNumberAcceptedText
@@ -1543,14 +1543,14 @@ NumberAcceptedFScript: ; 0xbcbd3
NumberDeclinedFScript:
checkcode VAR_CALLERID
- 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
+ ifequal PHONE_POKEFAN_BEVERLY, .Beverly
+ ifequal PHONE_COOLTRAINERF_BETH, .Beth
+ ifequal PHONE_COOLTRAINERF_REENA, .Reena
+ ifequal PHONE_PICNICKER_LIZ, .Liz
+ ifequal PHONE_PICNICKER_GINA, .Gina
+ ifequal PHONE_LASS_DANA, .Dana
+ ifequal PHONE_PICNICKER_TIFFANY, .Tiffany
+ ifequal PHONE_PICNICKER_ERIN, .Erin
.Beverly:
farwritetext BeverlyNumberDeclinedText
@@ -1595,14 +1595,14 @@ NumberDeclinedFScript:
PhoneFullFScript:
checkcode VAR_CALLERID
- 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
+ ifequal PHONE_POKEFAN_BEVERLY, .Beverly
+ ifequal PHONE_COOLTRAINERF_BETH, .Beth
+ ifequal PHONE_COOLTRAINERF_REENA, .Reena
+ ifequal PHONE_PICNICKER_LIZ, .Liz
+ ifequal PHONE_PICNICKER_GINA, .Gina
+ ifequal PHONE_LASS_DANA, .Dana
+ ifequal PHONE_PICNICKER_TIFFANY, .Tiffany
+ ifequal PHONE_PICNICKER_ERIN, .Erin
.Beverly:
farwritetext BeverlyPhoneFullText
@@ -1647,13 +1647,13 @@ PhoneFullFScript:
RematchFScript:
checkcode VAR_CALLERID
- 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
+ ifequal PHONE_COOLTRAINERF_BETH, .Beth
+ ifequal PHONE_COOLTRAINERF_REENA, .Reena
+ ifequal PHONE_PICNICKER_LIZ, .Liz
+ ifequal PHONE_PICNICKER_GINA, .Gina
+ ifequal PHONE_LASS_DANA, .Dana
+ ifequal PHONE_PICNICKER_TIFFANY, .Tiffany
+ ifequal PHONE_PICNICKER_ERIN, .Erin
.Beth:
farwritetext BethRematchText
@@ -1693,10 +1693,10 @@ RematchFScript:
GiftFScript:
checkcode VAR_CALLERID
- if_equal PHONE_POKEFAN_BEVERLY, .Beverly
- if_equal PHONE_PICNICKER_GINA, .Gina
- if_equal PHONE_LASS_DANA, .Dana
- if_equal PHONE_PICNICKER_TIFFANY, .Tiffany
+ ifequal PHONE_POKEFAN_BEVERLY, .Beverly
+ ifequal PHONE_PICNICKER_GINA, .Gina
+ ifequal PHONE_LASS_DANA, .Dana
+ ifequal PHONE_PICNICKER_TIFFANY, .Tiffany
.Beverly:
farwritetext BeverlyGiftText
@@ -1717,11 +1717,11 @@ GiftFScript:
PackFullFScript:
checkcode VAR_CALLERID
- 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
+ ifequal PHONE_POKEFAN_BEVERLY, .Beverly
+ ifequal PHONE_PICNICKER_GINA, .Gina
+ ifequal PHONE_LASS_DANA, .Dana
+ ifequal PHONE_PICNICKER_TIFFANY, .Tiffany
+ ifequal PHONE_PICNICKER_ERIN, .Erin
.Beverly:
farwritetext BeverlyPackFullText
@@ -1751,7 +1751,7 @@ PackFullFScript:
RematchGiftFScript:
checkcode VAR_CALLERID
- if_equal PHONE_PICNICKER_ERIN, .Erin
+ ifequal PHONE_PICNICKER_ERIN, .Erin
.Erin:
opentext
@@ -1810,20 +1810,20 @@ CoinVendor_IntroScript: ; 0xbcde0
farwritetext CoinVendor_IntroText
.loop ; 0xbcde4
- special Special_DisplayMoneyAndCoinBalance
- loadmenudata .MenuDataHeader
+ special DisplayMoneyAndCoinBalance
+ loadmenuheader .MenuHeader
verticalmenu
closewindow
- if_equal 1, .Buy50
- if_equal 2, .Buy500
+ ifequal 1, .Buy50
+ ifequal 2, .Buy500
jump .Cancel
; 0xbcdf7
.Buy50: ; 0xbcdf7
checkcoins MAX_COINS - 50
- if_equal HAVE_MORE, .CoinCaseFull
+ ifequal HAVE_MORE, .CoinCaseFull
checkmoney YOUR_MONEY, 1000
- if_equal HAVE_LESS, .NotEnoughMoney
+ ifequal HAVE_LESS, .NotEnoughMoney
givecoins 50
takemoney YOUR_MONEY, 1000
waitsfx
@@ -1835,9 +1835,9 @@ CoinVendor_IntroScript: ; 0xbcde0
.Buy500: ; 0xbce1b
checkcoins MAX_COINS - 500
- if_equal HAVE_MORE, .CoinCaseFull
+ ifequal HAVE_MORE, .CoinCaseFull
checkmoney YOUR_MONEY, 10000
- if_equal HAVE_LESS, .NotEnoughMoney
+ ifequal HAVE_LESS, .NotEnoughMoney
givecoins 500
takemoney YOUR_MONEY, 10000
waitsfx
@@ -1869,13 +1869,13 @@ CoinVendor_IntroScript: ; 0xbcde0
; 0xbce54
-.MenuDataHeader:
+.MenuHeader:
db MENU_BACKUP_TILES ; flags
menu_coords 0, 4, 15, TEXTBOX_Y - 1
- dw .MenuData2
+ dw .MenuData
db 1 ; default option
-.MenuData2:
+.MenuData:
db STATICMENU_CURSOR ; flags
db 3 ; items
db " 50 : ¥1000@"
@@ -1887,9 +1887,9 @@ CoinVendor_IntroScript: ; 0xbcde0
HappinessCheckScript:
faceplayer
opentext
- special Special_GetFirstPokemonHappiness
- if_less_than 50, .Unhappy
- if_less_than 150, .KindaHappy
+ special GetFirstPokemonHappiness
+ ifless 50, .Unhappy
+ ifless 150, .KindaHappy
farwritetext HappinessText3
waitbutton
closetext
diff --git a/engine/events/sweet_scent.asm b/engine/events/sweet_scent.asm
index 2f1759a2b..509d9775d 100755
--- a/engine/events/sweet_scent.asm
+++ b/engine/events/sweet_scent.asm
@@ -37,7 +37,7 @@ SweetScentEncounter: ; 506ef
farcall CanUseSweetScent
jr nc, .no_battle
ld hl, wStatusFlags2
- bit 2, [hl]
+ bit STATUSFLAGS2_BUG_CONTEST_TIMER_F, [hl]
jr nz, .not_in_bug_contest
farcall GetMapEncounterRate
ld a, b
diff --git a/engine/events/unown_walls.asm b/engine/events/unown_walls.asm
index 5cc241966..64558167a 100644
--- a/engine/events/unown_walls.asm
+++ b/engine/events/unown_walls.asm
@@ -1,9 +1,9 @@
-Special_HoOhChamber: ; 0x8addb
+HoOhChamber: ; 0x8addb
ld hl, wPartySpecies
ld a, [hl]
cp HO_OH ; is Ho-oh the first Pokémon in the party?
jr nz, .done ; if not, we're done
- call GetMapDataPointer ; pointless?
+ call GetMapAttributesPointer ; pointless?
ld de, EVENT_WALL_OPENED_IN_HO_OH_CHAMBER
ld b, SET_FLAG
call EventFlagAction
@@ -11,8 +11,8 @@ Special_HoOhChamber: ; 0x8addb
ret
; 0x8adef
-Special_OmanyteChamber: ; 8adef
- call GetMapDataPointer ; pointless?
+OmanyteChamber: ; 8adef
+ call GetMapAttributesPointer ; pointless?
ld de, EVENT_WALL_OPENED_IN_OMANYTE_CHAMBER
ld b, CHECK_FLAG
call EventFlagAction
@@ -44,7 +44,7 @@ Special_OmanyteChamber: ; 8adef
jr nz, .loop
.open
- call GetMapDataPointer ; pointless?
+ call GetMapAttributesPointer ; pointless?
ld de, EVENT_WALL_OPENED_IN_OMANYTE_CHAMBER
ld b, SET_FLAG
call EventFlagAction
@@ -57,12 +57,12 @@ SpecialAerodactylChamber: ; 8ae30
push de
push bc
- call GetMapDataPointer
+ call GetMapAttributesPointer
ld a, h
- cp HIGH(RuinsOfAlphAerodactylChamber_MapData)
+ cp HIGH(RuinsOfAlphAerodactylChamber_MapAttributes)
jr nz, .nope
ld a, l
- cp LOW(RuinsOfAlphAerodactylChamber_MapData)
+ cp LOW(RuinsOfAlphAerodactylChamber_MapAttributes)
jr nz, .nope
ld de, EVENT_WALL_OPENED_IN_AERODACTYL_CHAMBER
@@ -85,12 +85,12 @@ SpecialKabutoChamber: ; 8ae4e
push hl
push de
- call GetMapDataPointer
+ call GetMapAttributesPointer
ld a, h
- cp HIGH(RuinsOfAlphKabutoChamber_MapData)
+ cp HIGH(RuinsOfAlphKabutoChamber_MapAttributes)
jr nz, .done
ld a, l
- cp LOW(RuinsOfAlphKabutoChamber_MapData)
+ cp LOW(RuinsOfAlphKabutoChamber_MapAttributes)
jr nz, .done
ld de, EVENT_WALL_OPENED_IN_KABUTO_CHAMBER
@@ -103,9 +103,9 @@ SpecialKabutoChamber: ; 8ae4e
ret
; 8ae68
-Special_DisplayUnownWords: ; 8ae68
+DisplayUnownWords: ; 8ae68
ld a, [wScriptVar]
- ld hl, MenuDataHeaders_UnownWalls
+ ld hl, MenuHeaders_UnownWalls
and a
jr z, .load
@@ -117,7 +117,7 @@ Special_DisplayUnownWords: ; 8ae68
jr nz, .loop
.load
- call LoadMenuDataHeader
+ call LoadMenuHeader
xor a
ld [hBGMapMode], a
call MenuBox
@@ -153,7 +153,7 @@ Special_DisplayUnownWords: ; 8ae68
ret
; 8aebc
-INCLUDE "data/unown_walls.asm"
+INCLUDE "data/events/unown_walls.asm"
_DisplayUnownWords_FillAttr: ; 8aee9
ld a, [de]
diff --git a/engine/events/whiteout.asm b/engine/events/whiteout.asm
index 4adef9f4f..4bf656055 100755
--- a/engine/events/whiteout.asm
+++ b/engine/events/whiteout.asm
@@ -10,7 +10,7 @@ Script_OverworldWhiteout:: ; 0x124c8
Script_Whiteout: ; 0x124ce
writetext .WhitedOutText
waitbutton
- special Special_FadeOutPalettes
+ special FadeOutPalettes
pause 40
special HealParty
checkflag ENGINE_BUG_CONTEST_TIMER
@@ -18,9 +18,9 @@ Script_Whiteout: ; 0x124ce
callasm HalveMoney
callasm GetWhiteoutSpawn
farscall Script_AbortBugContest
- special Special_WarpToSpawnPoint
+ special WarpToSpawnPoint
newloadmap MAPSETUP_WARP
- end_all
+ endall
.bug_contest
jumpstd bugcontestresultswarp