summaryrefslogtreecommitdiff
path: root/data
diff options
context:
space:
mode:
Diffstat (limited to 'data')
-rw-r--r--data/data.s9
-rw-r--r--data/event_scripts.s62
-rw-r--r--data/maps/BirthIsland_Exterior/scripts.inc2
-rw-r--r--data/maps/CeladonCity_Condominiums_1F/scripts.inc2
-rw-r--r--data/maps/CeladonCity_Gym/scripts.inc4
-rw-r--r--data/maps/CeruleanCity_Gym/scripts.inc4
-rw-r--r--data/maps/CinnabarIsland_Gym/scripts.inc4
-rw-r--r--data/maps/FuchsiaCity_Gym/scripts.inc4
-rw-r--r--data/maps/OneIsland_PokemonCenter_1F/scripts.inc4
-rw-r--r--data/maps/PalletTown/scripts.inc2
-rw-r--r--data/maps/PalletTown_GarysHouse/scripts.inc2
-rw-r--r--data/maps/PalletTown_ProfessorOaksLab/scripts.inc12
-rw-r--r--data/maps/PewterCity_Gym/scripts.inc4
-rw-r--r--data/maps/PokemonLeague_AgathasRoom/scripts.inc4
-rw-r--r--data/maps/PokemonLeague_BrunosRoom/scripts.inc4
-rw-r--r--data/maps/PokemonLeague_ChampionsRoom/scripts.inc4
-rw-r--r--data/maps/PokemonLeague_LancesRoom/scripts.inc4
-rw-r--r--data/maps/SaffronCity_Gym/scripts.inc4
-rw-r--r--data/maps/TwoIsland/scripts.inc2
-rw-r--r--data/maps/VermilionCity_Gym/scripts.inc4
-rw-r--r--data/maps/VermilionCity_PokemonFanClub/scripts.inc2
-rw-r--r--data/maps/ViridianCity/scripts.inc14
-rw-r--r--data/maps/ViridianCity_Gym/scripts.inc4
-rw-r--r--data/maps/ViridianCity_Mart/scripts.inc2
-rw-r--r--data/mystery_event_msg.s681
-rw-r--r--data/specials.inc4
26 files changed, 432 insertions, 416 deletions
diff --git a/data/data.s b/data/data.s
index 7f266c872..e3dbe1f82 100644
--- a/data/data.s
+++ b/data/data.s
@@ -23,15 +23,10 @@ gTrainerBackPicPaletteTable:: @ 8239FD4
.incbin "baserom.gba", 0x239FD4, 0x30
gEnemyMonElevation:: @ 823A004
- .incbin "baserom.gba", 0x23A004, 0x4554
-
-gTrainerClassNames:: @ 823E558
- .include "data/text/trainer_class_names.inc"
+ .incbin "baserom.gba", 0x23A004, 0x19C
+ .section .rodata.8245EE0
.align 2, 0
-gTrainers:: @ 823EAD8
- .incbin "baserom.gba", 0x23EAC8, 0x7418
-
gSpeciesNames:: @ 8245EE0
.include "data/text/species_names.inc"
diff --git a/data/event_scripts.s b/data/event_scripts.s
index 98e63347e..eff15df91 100644
--- a/data/event_scripts.s
+++ b/data/event_scripts.s
@@ -841,7 +841,7 @@ EventScript_1A4EAF:: @ 81A4EAF
gUnknown_81A4EB4:: @ 81A4EB4
lock
- special sub_8080628
+ special PlayTrainerEncounterMusic
special ScrSpecial_EndTrainerApproach
waitstate
goto EventScript_1A4FC7
@@ -854,7 +854,7 @@ gUnknown_81A4EC1:: @ 81A4EC1
specialvar VAR_RESULT, ScrSpecial_HasTrainerBeenFought
compare_var_to_value VAR_RESULT, 0
goto_if 5, EventScript_1A4EE8
- special sub_8080628
+ special PlayTrainerEncounterMusic
special sub_8080398
goto EventScript_1A4FC7
@@ -871,7 +871,7 @@ gUnknown_81A4EE9:: @ 81A4EE9
special CheckForAlivePartyMons
compare_var_to_value VAR_RESULT, 0
goto_if 5, EventScript_1A4F19
- special sub_8080628
+ special PlayTrainerEncounterMusic
special sub_8080398
goto EventScript_1A4FC7
@@ -888,7 +888,7 @@ EventScript_1A4F20:: @ 81A4F20
gUnknown_81A4F21:: @ 81A4F21
applymovement VAR_LAST_TALKED, Movement_1A4FC5
waitmovement 0
- special sub_8080628
+ special PlayTrainerEncounterMusic
special sub_8110AB4
compare_var_to_value VAR_RESULT, 2
goto_if_eq EventScript_1A501A
@@ -900,7 +900,7 @@ gUnknown_81A4F3E:: @ 81A4F3E
specialvar VAR_RESULT, sub_810CEB4
compare_var_to_value VAR_RESULT, 0
goto_if_eq EventScript_1A4F72
- special sub_8080628
+ special PlayTrainerEncounterMusic
special sub_8080398
special sub_80805D8
waitmessage
@@ -923,7 +923,7 @@ gUnknown_81A4F73:: @ 81A4F73
special CheckForAlivePartyMons
compare_var_to_value VAR_RESULT, 0
goto_if 5, EventScript_1A4FB1
- special sub_8080628
+ special PlayTrainerEncounterMusic
special sub_8080398
special sub_80805D8
waitmessage
@@ -1997,7 +1997,7 @@ EventScript_1A6A46:: @ 81A6A46
end
EventScript_1A6A56:: @ 81A6A56
- checkflag FLAG_0x82C
+ checkflag FLAG_SYS_GAME_CLEAR
goto_if 0, EventScript_1A6A46
playse SE_PC_LOGIN
setvar VAR_0x8004, 31
@@ -2010,7 +2010,7 @@ EventScript_1A6A56:: @ 81A6A56
end
EventScript_1A6A7A:: @ 81A6A7A
- checkflag FLAG_0x829
+ checkflag FLAG_SYS_POKEDEX_GET
goto_if 0, EventScript_1A6A46
playse SE_PC_LOGIN
msgbox Text_1A5BC6
@@ -2864,49 +2864,49 @@ EventScript_1A786C:: @ 81A786C
end
EventScript_1A78D5:: @ 81A78D5
- checkflag FLAG_UNK820
+ checkflag FLAG_BADGE01_GET
goto_if 1, EventScript_1A794D
goto EventScript_1A77C9
end
EventScript_1A78E4:: @ 81A78E4
- checkflag FLAG_0x821
+ checkflag FLAG_BADGE02_GET
goto_if 1, EventScript_1A795F
goto EventScript_1A77DE
end
EventScript_1A78F3:: @ 81A78F3
- checkflag FLAG_0x822
+ checkflag FLAG_BADGE03_GET
goto_if 1, EventScript_1A795F
goto EventScript_1A77DE
end
EventScript_1A7902:: @ 81A7902
- checkflag FLAG_0x823
+ checkflag FLAG_BADGE04_GET
goto_if 1, EventScript_1A795F
goto EventScript_1A77DE
end
EventScript_1A7911:: @ 81A7911
- checkflag FLAG_UNK824
+ checkflag FLAG_BADGE05_GET
goto_if 1, EventScript_1A795F
goto EventScript_1A77DE
end
EventScript_1A7920:: @ 81A7920
- checkflag FLAG_0x825
+ checkflag FLAG_BADGE06_GET
goto_if 1, EventScript_1A795F
goto EventScript_1A77DE
end
EventScript_1A792F:: @ 81A792F
- checkflag FLAG_UNK826
+ checkflag FLAG_BADGE07_GET
goto_if 1, EventScript_1A795F
goto EventScript_1A77DE
end
EventScript_1A793E:: @ 81A793E
- checkflag FLAG_0x827
+ checkflag FLAG_BADGE08_GET
goto_if 1, EventScript_1A795F
goto EventScript_1A77DE
end
@@ -2951,49 +2951,49 @@ EventScript_1A796E:: @ 81A796E
end
EventScript_1A79D8:: @ 81A79D8
- checkflag FLAG_UNK820
+ checkflag FLAG_BADGE01_GET
goto_if 1, EventScript_1A7A96
goto EventScript_1A7A50
end
EventScript_1A79E7:: @ 81A79E7
- checkflag FLAG_0x821
+ checkflag FLAG_BADGE02_GET
goto_if 1, EventScript_1A7AA8
goto EventScript_1A7A77
end
EventScript_1A79F6:: @ 81A79F6
- checkflag FLAG_0x822
+ checkflag FLAG_BADGE03_GET
goto_if 1, EventScript_1A7AA8
goto EventScript_1A7A77
end
EventScript_1A7A05:: @ 81A7A05
- checkflag FLAG_0x823
+ checkflag FLAG_BADGE04_GET
goto_if 1, EventScript_1A7AA8
goto EventScript_1A7A77
end
EventScript_1A7A14:: @ 81A7A14
- checkflag FLAG_UNK824
+ checkflag FLAG_BADGE05_GET
goto_if 1, EventScript_1A7AA8
goto EventScript_1A7A77
end
EventScript_1A7A23:: @ 81A7A23
- checkflag FLAG_0x825
+ checkflag FLAG_BADGE06_GET
goto_if 1, EventScript_1A7AA8
goto EventScript_1A7A77
end
EventScript_1A7A32:: @ 81A7A32
- checkflag FLAG_UNK826
+ checkflag FLAG_BADGE07_GET
goto_if 1, EventScript_1A7AA8
goto EventScript_1A7A77
end
EventScript_1A7A41:: @ 81A7A41
- checkflag FLAG_0x827
+ checkflag FLAG_BADGE08_GET
goto_if 1, EventScript_1A7AA8
goto EventScript_1A7A77
end
@@ -9399,7 +9399,7 @@ EventScript_1BBA04:: @ 81BBA04
special sub_8112364
lock
faceplayer
- checkflag FLAG_0x829
+ checkflag FLAG_SYS_POKEDEX_GET
goto_if 0, EventScript_1BB877
specialvar VAR_RESULT, sub_80CD034
compare_var_to_value VAR_RESULT, 1
@@ -9504,7 +9504,7 @@ EventScript_1BBB60:: @ 81BBB60
EventScript_1BBB6A:: @ 81BBB6A
lock
faceplayer
- checkflag FLAG_0x829
+ checkflag FLAG_SYS_POKEDEX_GET
goto_if 0, EventScript_1BB877
msgbox gUnknown_81BDB85, 5
compare_var_to_value VAR_RESULT, 0
@@ -9525,7 +9525,7 @@ EventScript_1BBB9C:: @ 81BBB9C
special sub_8112364
lock
faceplayer
- checkflag FLAG_0x829
+ checkflag FLAG_SYS_POKEDEX_GET
goto_if 0, EventScript_1BB877
specialvar VAR_RESULT, sub_80CD034
compare_var_to_value VAR_RESULT, 1
@@ -9838,7 +9838,7 @@ gUnknown_81BBFD8:: @ 81BBFD8
compare_var_to_value VAR_RESULT, 2
goto_if 1, EventScript_1A7AE0
lockall
- checkflag FLAG_0x829
+ checkflag FLAG_SYS_POKEDEX_GET
goto_if 0, EventScript_1BB881
specialvar VAR_RESULT, IsWirelessAdapterConnected
compare_var_to_value VAR_RESULT, 0
@@ -10592,7 +10592,7 @@ ViridianCity_EventScript_1BDF13:: @ 81BDF13
compare_var_to_value VAR_RESULT, 2
goto_if 1, EventScript_1A7AE0
lockall
- checkflag FLAG_0x821
+ checkflag FLAG_BADGE02_GET
goto_if 0, EventScript_1BDF87
checkpartymove MOVE_CUT
compare_var_to_value VAR_RESULT, 6
@@ -10670,7 +10670,7 @@ CeruleanCave_1F_EventScript_1BE00C:: @ 81BE00C
compare_var_to_value VAR_RESULT, 2
goto_if 1, EventScript_1A7AE0
lockall
- checkflag FLAG_0x825
+ checkflag FLAG_BADGE06_GET
goto_if 0, EventScript_1BE091
checkpartymove MOVE_ROCK_SMASH
compare_var_to_value VAR_RESULT, 6
@@ -10751,7 +10751,7 @@ VictoryRoad_2F_EventScript_1BE11D:: @ 81BE11D
compare_var_to_value VAR_RESULT, 2
goto_if 1, EventScript_1A7AE0
lockall
- checkflag FLAG_0x823
+ checkflag FLAG_BADGE04_GET
goto_if 0, EventScript_1BE185
checkflag FLAG_0x805
goto_if 1, EventScript_1BE18E
diff --git a/data/maps/BirthIsland_Exterior/scripts.inc b/data/maps/BirthIsland_Exterior/scripts.inc
index 136a57b6a..8b67539ce 100644
--- a/data/maps/BirthIsland_Exterior/scripts.inc
+++ b/data/maps/BirthIsland_Exterior/scripts.inc
@@ -12,7 +12,7 @@ BirthIsland_Exterior_MapScript1_165217:: @ 8165217
setworldmapflag FLAG_WORLD_MAP_BIRTH_ISLAND_EXTERIOR
setvar VAR_0x4010, 150
setvar VAR_SECRET_BASE_MAP, 0
- setvar VAR_ALTERING_CAVE_WILD_SET, 0
+ setvar VAR_0x403E, 0
checkflag FLAG_0x2E4
call_if 1, EventScript_16523C
checkflag FLAG_0x2E4
diff --git a/data/maps/CeladonCity_Condominiums_1F/scripts.inc b/data/maps/CeladonCity_Condominiums_1F/scripts.inc
index c9f358f44..506ed96a0 100644
--- a/data/maps/CeladonCity_Condominiums_1F/scripts.inc
+++ b/data/maps/CeladonCity_Condominiums_1F/scripts.inc
@@ -6,7 +6,7 @@ CeladonCity_Condominiums_1F_EventScript_16C321:: @ 816C321
faceplayer
checkflag FLAG_0x2F8
goto_if_eq EventScript_16C36A
- checkflag FLAG_0x82C
+ checkflag FLAG_SYS_GAME_CLEAR
goto_if_eq EventScript_16C374
checkflag FLAG_0x2A6
goto_if_eq EventScript_16C36A
diff --git a/data/maps/CeladonCity_Gym/scripts.inc b/data/maps/CeladonCity_Gym/scripts.inc
index 9131602c2..a3e266ed3 100644
--- a/data/maps/CeladonCity_Gym/scripts.inc
+++ b/data/maps/CeladonCity_Gym/scripts.inc
@@ -21,7 +21,7 @@ EventScript_16D0A0:: @ 816D0A0
special SetFlavorTextFlagFromSpecialVars
clearflag FLAG_0x09E
setflag FLAG_0x4B3
- setflag FLAG_0x823
+ setflag FLAG_BADGE04_GET
setvar VAR_0x8008, 4
call EventScript_1A6B18
goto EventScript_16D0C6
@@ -91,7 +91,7 @@ CeladonCity_Gym_EventScript_16D1B5:: @ 816D1B5
CeladonCity_Gym_EventScript_16D1CC:: @ 816D1CC
lockall
- checkflag FLAG_0x823
+ checkflag FLAG_BADGE04_GET
goto_if_eq EventScript_16D1E0
msgbox gUnknown_8197874
releaseall
diff --git a/data/maps/CeruleanCity_Gym/scripts.inc b/data/maps/CeruleanCity_Gym/scripts.inc
index d8fe70407..b5d502041 100644
--- a/data/maps/CeruleanCity_Gym/scripts.inc
+++ b/data/maps/CeruleanCity_Gym/scripts.inc
@@ -17,7 +17,7 @@ EventScript_16AAD3:: @ 816AAD3
setvar VAR_0x8005, 1
special SetFlavorTextFlagFromSpecialVars
setflag FLAG_0x4B1
- setflag FLAG_0x821
+ setflag FLAG_BADGE02_GET
setrespawn SPAWN_CERULEAN_CITY
setvar VAR_0x8008, 2
call EventScript_1A6B18
@@ -70,7 +70,7 @@ EventScript_16AB94:: @ 816AB94
CeruleanCity_Gym_EventScript_16AB9E:: @ 816AB9E
lockall
- checkflag FLAG_0x821
+ checkflag FLAG_BADGE02_GET
goto_if_eq EventScript_16ABB2
msgbox gUnknown_81926E1
releaseall
diff --git a/data/maps/CinnabarIsland_Gym/scripts.inc b/data/maps/CinnabarIsland_Gym/scripts.inc
index 20c00f117..249f4bc99 100644
--- a/data/maps/CinnabarIsland_Gym/scripts.inc
+++ b/data/maps/CinnabarIsland_Gym/scripts.inc
@@ -68,7 +68,7 @@ EventScript_16DA06:: @ 816DA06
setvar VAR_0x8005, 1
special SetFlavorTextFlagFromSpecialVars
setflag FLAG_0x4B6
- setflag FLAG_UNK826
+ setflag FLAG_BADGE07_GET
setrespawn SPAWN_CINNABAR_ISLAND
setvar VAR_0x4071, 1
clearflag FLAG_0x062
@@ -208,7 +208,7 @@ EventScript_16DBC0:: @ 816DBC0
CinnabarIsland_Gym_EventScript_16DBCA:: @ 816DBCA
lockall
- checkflag FLAG_UNK826
+ checkflag FLAG_BADGE07_GET
goto_if_eq EventScript_16DBDE
msgbox gUnknown_8199C29
releaseall
diff --git a/data/maps/FuchsiaCity_Gym/scripts.inc b/data/maps/FuchsiaCity_Gym/scripts.inc
index 6b57f6377..10c5cfed7 100644
--- a/data/maps/FuchsiaCity_Gym/scripts.inc
+++ b/data/maps/FuchsiaCity_Gym/scripts.inc
@@ -18,7 +18,7 @@ EventScript_16D580:: @ 816D580
special SetFlavorTextFlagFromSpecialVars
clearflag FLAG_0x09F
setflag FLAG_0x4B4
- setflag FLAG_UNK824
+ setflag FLAG_BADGE05_GET
setvar VAR_0x8008, 5
call EventScript_1A6B18
goto EventScript_16D5A6
@@ -90,7 +90,7 @@ EventScript_16D69D:: @ 816D69D
FuchsiaCity_Gym_EventScript_16D6A7:: @ 816D6A7
lockall
- checkflag FLAG_UNK824
+ checkflag FLAG_BADGE05_GET
goto_if_eq EventScript_16D6BB
msgbox gUnknown_8198B4B
releaseall
diff --git a/data/maps/OneIsland_PokemonCenter_1F/scripts.inc b/data/maps/OneIsland_PokemonCenter_1F/scripts.inc
index bb4e0f765..fef3ac5df 100644
--- a/data/maps/OneIsland_PokemonCenter_1F/scripts.inc
+++ b/data/maps/OneIsland_PokemonCenter_1F/scripts.inc
@@ -84,9 +84,9 @@ EventScript_170CB1:: @ 8170CB1
waitmovement 0
applymovement 255, Movement_1A75EB
waitmovement 0
- checkflag FLAG_0x82C
+ checkflag FLAG_SYS_GAME_CLEAR
call_if 1, EventScript_170E34
- checkflag FLAG_0x82C
+ checkflag FLAG_SYS_GAME_CLEAR
call_if 0, EventScript_170E3D
applymovement 3, Movement_1A75ED
waitmovement 0
diff --git a/data/maps/PalletTown/scripts.inc b/data/maps/PalletTown/scripts.inc
index ed53b8518..fb4e11798 100644
--- a/data/maps/PalletTown/scripts.inc
+++ b/data/maps/PalletTown/scripts.inc
@@ -50,7 +50,7 @@ EventScript_1654D8:: @ 81654D8
addobject 3
applymovement 3, Movement_1655AF
waitmovement 0
- checkflag FLAG_SYS_RIBBON_GET
+ checkflag FLAG_WORLD_MAP_ONE_ISLAND
goto_if 0, EventScript_1655A1
msgbox gUnknown_817D8BF
setvar VAR_0x8004, 0
diff --git a/data/maps/PalletTown_GarysHouse/scripts.inc b/data/maps/PalletTown_GarysHouse/scripts.inc
index d165036fb..ffe5d8aec 100644
--- a/data/maps/PalletTown_GarysHouse/scripts.inc
+++ b/data/maps/PalletTown_GarysHouse/scripts.inc
@@ -24,7 +24,7 @@ PalletTown_GarysHouse_EventScript_168D56:: @ 8168D56
setvar VAR_0x8004, 1
setvar VAR_0x8005, 2
special UpdatePickStateFromSpecialVar8005
- checkflag FLAG_0x82C
+ checkflag FLAG_SYS_GAME_CLEAR
goto_if_eq EventScript_168DB9
compare_var_to_value VAR_0x4001, 1
goto_if_eq EventScript_168EEC
diff --git a/data/maps/PalletTown_ProfessorOaksLab/scripts.inc b/data/maps/PalletTown_ProfessorOaksLab/scripts.inc
index 64bec30b1..aea5e8a38 100644
--- a/data/maps/PalletTown_ProfessorOaksLab/scripts.inc
+++ b/data/maps/PalletTown_ProfessorOaksLab/scripts.inc
@@ -601,7 +601,7 @@ PalletTown_ProfessorOaksLab_EventScript_169595:: @ 8169595
goto_if_eq EventScript_169903
compare_var_to_value VAR_MAP_SCENE_PALLET_TOWN_PROFESSOR_OAKS_LAB, 8
goto_if_eq EventScript_169A6E
- checkflag FLAG_0x82C
+ checkflag FLAG_SYS_GAME_CLEAR
goto_if_eq EventScript_1699CE
compare_var_to_value VAR_0x4052, 1
goto_if_eq EventScript_169903
@@ -706,7 +706,7 @@ EventScript_16961E:: @ 816961E
waitmessage
waitfanfare
call EventScript_1A6675
- setflag FLAG_0x829
+ setflag FLAG_SYS_POKEDEX_GET
special sub_810B810
setvar VAR_0x407C, 1
msgbox gUnknown_818E612
@@ -974,7 +974,7 @@ EventScript_1699CE:: @ 81699CE
closemessage
compare_var_to_value VAR_0x8009, 60
goto_if 0, EventScript_1699F9
- checkflag FLAG_SYS_RIBBON_GET
+ checkflag FLAG_WORLD_MAP_ONE_ISLAND
goto_if 0, EventScript_1699F9
delay 30
msgbox gUnknown_818EDF5
@@ -1205,7 +1205,7 @@ EventScript_169C74:: @ 8169C74
removeobject VAR_LAST_TALKED
msgbox gUnknown_818E2E5
call EventScript_1A6675
- setflag FLAG_0x828
+ setflag FLAG_SYS_POKEMON_GET
setflag FLAG_0x291
givemon VAR_0x4002, 5, ITEM_NONE, 0, 0, 0
copyvar VAR_STARTER_MON, VAR_0x4001
@@ -1341,7 +1341,7 @@ EventScript_169DE4:: @ 8169DE4
PalletTown_ProfessorOaksLab_EventScript_169DEE:: @ 8169DEE
lock
faceplayer
- checkflag FLAG_0x82C
+ checkflag FLAG_SYS_GAME_CLEAR
goto_if_eq EventScript_169E03
msgbox gUnknown_818EBE6
release
@@ -1358,7 +1358,7 @@ EventScript_169E03:: @ 8169E03
PalletTown_ProfessorOaksLab_EventScript_169E1A:: @ 8169E1A
lock
faceplayer
- checkflag FLAG_0x82C
+ checkflag FLAG_SYS_GAME_CLEAR
goto_if_eq EventScript_169E2F
msgbox gUnknown_818EBE6
release
diff --git a/data/maps/PewterCity_Gym/scripts.inc b/data/maps/PewterCity_Gym/scripts.inc
index 5990bf1e3..48864bf53 100644
--- a/data/maps/PewterCity_Gym/scripts.inc
+++ b/data/maps/PewterCity_Gym/scripts.inc
@@ -17,7 +17,7 @@ EventScript_16A5C5:: @ 816A5C5
setvar VAR_0x8005, 1
special SetFlavorTextFlagFromSpecialVars
setflag FLAG_0x4B0
- setflag FLAG_UNK820
+ setflag FLAG_BADGE01_GET
setvar VAR_0x406C, 1
setflag FLAG_0x02E
clearflag FLAG_0x092
@@ -82,7 +82,7 @@ EventScript_16A6A5:: @ 816A6A5
PewterCity_Gym_EventScript_16A6AF:: @ 816A6AF
lockall
- checkflag FLAG_UNK820
+ checkflag FLAG_BADGE01_GET
goto_if_eq EventScript_16A6C3
msgbox gUnknown_819146E
releaseall
diff --git a/data/maps/PokemonLeague_AgathasRoom/scripts.inc b/data/maps/PokemonLeague_AgathasRoom/scripts.inc
index 2a46b544d..0157b4196 100644
--- a/data/maps/PokemonLeague_AgathasRoom/scripts.inc
+++ b/data/maps/PokemonLeague_AgathasRoom/scripts.inc
@@ -61,9 +61,9 @@ PokemonLeague_AgathasRoom_EventScript_162877:: @ 8162877
setvar VAR_0x8004, 0
setvar VAR_0x8005, 4
special SetFlavorTextFlagFromSpecialVars
- checkflag FLAG_0x82C
+ checkflag FLAG_SYS_GAME_CLEAR
call_if 0, EventScript_1628E9
- checkflag FLAG_0x82C
+ checkflag FLAG_SYS_GAME_CLEAR
call_if 1, EventScript_1628F2
setflag FLAG_0x003
setflag FLAG_0x005
diff --git a/data/maps/PokemonLeague_BrunosRoom/scripts.inc b/data/maps/PokemonLeague_BrunosRoom/scripts.inc
index 6cc4a23a4..2fd9264a4 100644
--- a/data/maps/PokemonLeague_BrunosRoom/scripts.inc
+++ b/data/maps/PokemonLeague_BrunosRoom/scripts.inc
@@ -58,9 +58,9 @@ PokemonLeague_BrunosRoom_EventScript_1626EC:: @ 81626EC
setvar VAR_0x8004, 10
setvar VAR_0x8005, 1
special SetFlavorTextFlagFromSpecialVars
- checkflag FLAG_0x82C
+ checkflag FLAG_SYS_GAME_CLEAR
call_if 0, EventScript_162751
- checkflag FLAG_0x82C
+ checkflag FLAG_SYS_GAME_CLEAR
call_if 1, EventScript_16275A
setflag FLAG_0x003
setflag FLAG_0x005
diff --git a/data/maps/PokemonLeague_ChampionsRoom/scripts.inc b/data/maps/PokemonLeague_ChampionsRoom/scripts.inc
index b705e8c54..43c11e705 100644
--- a/data/maps/PokemonLeague_ChampionsRoom/scripts.inc
+++ b/data/maps/PokemonLeague_ChampionsRoom/scripts.inc
@@ -59,9 +59,9 @@ EventScript_162B76:: @ 8162B76
applymovement 255, Movement_162D07
waitmovement 0
delay 20
- checkflag FLAG_0x82C
+ checkflag FLAG_SYS_GAME_CLEAR
call_if 0, EventScript_162CB3
- checkflag FLAG_0x82C
+ checkflag FLAG_SYS_GAME_CLEAR
call_if 1, EventScript_162CBC
special sub_8110AB4
compare_var_to_value VAR_RESULT, 2
diff --git a/data/maps/PokemonLeague_LancesRoom/scripts.inc b/data/maps/PokemonLeague_LancesRoom/scripts.inc
index b0a378a98..8d7fe2451 100644
--- a/data/maps/PokemonLeague_LancesRoom/scripts.inc
+++ b/data/maps/PokemonLeague_LancesRoom/scripts.inc
@@ -112,9 +112,9 @@ PokemonLeague_LancesRoom_EventScript_162A14:: @ 8162A14
setvar VAR_0x8004, 12
setvar VAR_0x8005, 1
special SetFlavorTextFlagFromSpecialVars
- checkflag FLAG_0x82C
+ checkflag FLAG_SYS_GAME_CLEAR
call_if 0, EventScript_162A79
- checkflag FLAG_0x82C
+ checkflag FLAG_SYS_GAME_CLEAR
call_if 1, EventScript_162A82
setflag FLAG_0x003
setflag FLAG_0x005
diff --git a/data/maps/SaffronCity_Gym/scripts.inc b/data/maps/SaffronCity_Gym/scripts.inc
index cbd8b2d02..f181b502c 100644
--- a/data/maps/SaffronCity_Gym/scripts.inc
+++ b/data/maps/SaffronCity_Gym/scripts.inc
@@ -21,7 +21,7 @@ EventScript_16EE0A:: @ 816EE0A
special SetFlavorTextFlagFromSpecialVars
clearflag FLAG_0x0AE
setflag FLAG_0x4B5
- setflag FLAG_0x825
+ setflag FLAG_BADGE06_GET
setvar VAR_0x8008, 6
call EventScript_1A6B18
goto EventScript_16EE3D
@@ -98,7 +98,7 @@ EventScript_16EF4B:: @ 816EF4B
SaffronCity_Gym_EventScript_16EF55:: @ 816EF55
lockall
- checkflag FLAG_0x825
+ checkflag FLAG_BADGE06_GET
goto_if_eq EventScript_16EF69
msgbox gUnknown_819BDFE
releaseall
diff --git a/data/maps/TwoIsland/scripts.inc b/data/maps/TwoIsland/scripts.inc
index a9a42eda5..ba2ee8216 100644
--- a/data/maps/TwoIsland/scripts.inc
+++ b/data/maps/TwoIsland/scripts.inc
@@ -11,7 +11,7 @@ TwoIsland_MapScript1_16756A:: @ 816756A
EventScript_167576:: @ 8167576
checkflag FLAG_0x844
goto_if_eq EventScript_167597
- checkflag FLAG_0x82C
+ checkflag FLAG_SYS_GAME_CLEAR
goto_if_eq EventScript_1675B8
checkflag FLAG_0x2A3
goto_if_eq EventScript_1675D9
diff --git a/data/maps/VermilionCity_Gym/scripts.inc b/data/maps/VermilionCity_Gym/scripts.inc
index 36430c676..19268f551 100644
--- a/data/maps/VermilionCity_Gym/scripts.inc
+++ b/data/maps/VermilionCity_Gym/scripts.inc
@@ -226,7 +226,7 @@ EventScript_16B97C:: @ 816B97C
call_if 0, EventScript_16B9AB
clearflag FLAG_0x0A0
setflag FLAG_0x4B2
- setflag FLAG_0x822
+ setflag FLAG_BADGE03_GET
setvar VAR_0x8008, 3
call EventScript_1A6B18
goto EventScript_16B9AF
@@ -297,7 +297,7 @@ EventScript_16BA81:: @ 816BA81
VermilionCity_Gym_EventScript_16BA8B:: @ 816BA8B
lockall
- checkflag FLAG_0x822
+ checkflag FLAG_BADGE03_GET
goto_if_eq EventScript_16BA9F
msgbox gUnknown_819520B
releaseall
diff --git a/data/maps/VermilionCity_PokemonFanClub/scripts.inc b/data/maps/VermilionCity_PokemonFanClub/scripts.inc
index fc1625e39..691cc9963 100644
--- a/data/maps/VermilionCity_PokemonFanClub/scripts.inc
+++ b/data/maps/VermilionCity_PokemonFanClub/scripts.inc
@@ -38,7 +38,7 @@ EventScript_16B4F2:: @ 816B4F2
VermilionCity_PokemonFanClub_EventScript_16B4FC:: @ 816B4FC
lock
faceplayer
- checkflag FLAG_0x82C
+ checkflag FLAG_SYS_GAME_CLEAR
goto_if_eq EventScript_16B511
msgbox gUnknown_81948E6
release
diff --git a/data/maps/ViridianCity/scripts.inc b/data/maps/ViridianCity/scripts.inc
index 5434fa1fa..a5ab3a840 100644
--- a/data/maps/ViridianCity/scripts.inc
+++ b/data/maps/ViridianCity/scripts.inc
@@ -31,17 +31,17 @@ EventScript_165920:: @ 8165920
return
EventScript_165931:: @ 8165931
- checkflag FLAG_0x821
+ checkflag FLAG_BADGE02_GET
goto_if 0, EventScript_1A77A9
- checkflag FLAG_0x822
+ checkflag FLAG_BADGE03_GET
goto_if 0, EventScript_1A77A9
- checkflag FLAG_0x823
+ checkflag FLAG_BADGE04_GET
goto_if 0, EventScript_1A77A9
- checkflag FLAG_UNK824
+ checkflag FLAG_BADGE05_GET
goto_if 0, EventScript_1A77A9
- checkflag FLAG_0x825
+ checkflag FLAG_BADGE06_GET
goto_if 0, EventScript_1A77A9
- checkflag FLAG_UNK826
+ checkflag FLAG_BADGE07_GET
goto_if 0, EventScript_1A77A9
setvar VAR_0x405A, 1
return
@@ -107,7 +107,7 @@ EventScript_1659EC:: @ 81659EC
ViridianCity_EventScript_1659F6:: @ 81659F6
lock
faceplayer
- checkflag FLAG_UNK820
+ checkflag FLAG_BADGE01_GET
goto_if_eq EventScript_165A23
compare_var_to_value VAR_0x4051, 2
goto_if 4, EventScript_165A4A
diff --git a/data/maps/ViridianCity_Gym/scripts.inc b/data/maps/ViridianCity_Gym/scripts.inc
index b03bc5d93..85a4f1ea1 100644
--- a/data/maps/ViridianCity_Gym/scripts.inc
+++ b/data/maps/ViridianCity_Gym/scripts.inc
@@ -22,7 +22,7 @@ EventScript_169F04:: @ 8169F04
special SetFlavorTextFlagFromSpecialVars
setflag FLAG_0x0AD
setflag FLAG_0x4B7
- setflag FLAG_0x827
+ setflag FLAG_BADGE08_GET
setvar VAR_0x4054, 3
setvar VAR_0x8008, 8
call EventScript_1A6B18
@@ -105,7 +105,7 @@ EventScript_16A047:: @ 816A047
ViridianCity_Gym_EventScript_16A05E:: @ 816A05E
lockall
- checkflag FLAG_0x827
+ checkflag FLAG_BADGE08_GET
goto_if_eq EventScript_16A072
msgbox gUnknown_818FB8D
releaseall
diff --git a/data/maps/ViridianCity_Mart/scripts.inc b/data/maps/ViridianCity_Mart/scripts.inc
index 02ed8b57c..07c280442 100644
--- a/data/maps/ViridianCity_Mart/scripts.inc
+++ b/data/maps/ViridianCity_Mart/scripts.inc
@@ -4,7 +4,7 @@ ViridianCity_Mart_MapScripts:: @ 816A1D3
.byte 0
ViridianCity_Mart_MapScript1_16A1DE:: @ 816A1DE
- checkflag FLAG_0x829
+ checkflag FLAG_SYS_POKEDEX_GET
goto_if 0, EventScript_16A1E8
end
diff --git a/data/mystery_event_msg.s b/data/mystery_event_msg.s
index c33228bb6..71ae2340b 100644
--- a/data/mystery_event_msg.s
+++ b/data/mystery_event_msg.s
@@ -3,6 +3,7 @@
#include "constants/songs.h"
#include "constants/species.h"
#include "constants/vars.h"
+#include "constants/items.h"
.include "asm/macros.inc"
.include "asm/macros/event.inc"
.include "constants/constants.inc"
@@ -10,333 +11,353 @@
.section .rodata
.align 2
-MysteryEventScript_StampCard:: @ 8488E2
- .incbin "baserom.gba", 0x488E28, 0xB40
-
-@ setvaddress MysteryEventScript_StampCard
-@ setorcopyvar VAR_RESULT, 1
-@ specialvar VAR_0x8008, sub_813986C
-@ setorcopyvar VAR_RESULT, 0
-@ specialvar VAR_0x8009, sub_813986C
-@ subvar VAR_0x8008, 32777
-@ getnumberstring 0, VAR_0x8008
-@ lock
-@ faceplayer
-@ vmessage sText_MysteryGiftStampCard
-@ waitmessage
-@ waitbutton
-@ release
-@ end
-@
-@ sText_MysteryGiftStampCard:
-@ .string "Thank you for using the STAMP CARD\nSystem.\pYou have {STR_VAR_1} more to collect to\nfill your STAMP CARD.$"
-@
-@ MysteryEventScript_SurfPichu:: @ 8674D3D
-@ setvaddress MysteryEventScript_SurfPichu
-@ checkflag FLAG_MYSTERY_EVENT_DONE
-@ vgoto_if 0, SurfPichu_GiveIfPossible
-@ gotoram
-@
-@ SurfPichu_GiveIfPossible: @ 8674D4C
-@ specialvar VAR_EVENT_PICHU_SLOT, CalculatePlayerPartyCount
-@ compare_var_to_value VAR_EVENT_PICHU_SLOT, 6
-@ vgoto_if 1, SurfPichu_FullParty
-@ setflag FLAG_MYSTERY_EVENT_DONE
-@ vcall SurfPichu_GiveEgg
-@ lock
-@ faceplayer
-@ vmessage sText_MysteryGiftEgg
-@ waitmessage
-@ waitbutton
-@ playfanfare MUS_FANFA4
-@ waitfanfare
-@ release
-@ end
-@
-@ SurfPichu_FullParty: @ 8674D73
-@ lock
-@ faceplayer
-@ vmessage sText_FullParty
-@ waitmessage
-@ waitbutton
-@ release
-@ end
-@
-@ SurfPichu_GiveEgg: @ 8674D7E
-@ giveegg SPECIES_PICHU
-@ setobedience VAR_EVENT_PICHU_SLOT
-@ setcatchlocale VAR_EVENT_PICHU_SLOT, 255
-@ compare_var_to_value VAR_EVENT_PICHU_SLOT, 1
-@ vgoto_if 1, SurfPichu_Slot1
-@ compare_var_to_value VAR_EVENT_PICHU_SLOT, 2
-@ vgoto_if 1, SurfPichu_Slot2
-@ compare_var_to_value VAR_EVENT_PICHU_SLOT, 3
-@ vgoto_if 1, SurfPichu_Slot3
-@ compare_var_to_value VAR_EVENT_PICHU_SLOT, 4
-@ vgoto_if 1, SurfPichu_Slot4
-@ compare_var_to_value VAR_EVENT_PICHU_SLOT, 5
-@ vgoto_if 1, SurfPichu_Slot5
-@ return
-@
-@ SurfPichu_Slot1: @ 8674DC0
-@ setpokemove 1, 2, MOVE_SURF
-@ return
-@
-@ SurfPichu_Slot2:: @ 8674DC6
-@ setpokemove 2, 2, MOVE_SURF
-@ return
-@
-@ SurfPichu_Slot3: @ 8674DCC
-@ setpokemove 3, 2, MOVE_SURF
-@ return
-@
-@ SurfPichu_Slot4: @ 8674DD2
-@ setpokemove 4, 2, MOVE_SURF
-@ return
-@
-@ SurfPichu_Slot5: @ 8674DD8
-@ setpokemove 5, 2, MOVE_SURF
-@ return
-@
-@ sText_MysteryGiftEgg:
-@ .string "Thank you for using the MYSTERY\nGIFT System.\pFrom the POKéMON CENTER we\nhave a gift--a POKéMON EGG!\pPlease raise it with love and\nkindness.$"
-@
-@ sText_FullParty:
-@ .string "Oh, your party appears to be full.\pPlease come see me after storing\na POKéMON on a PC.$"
-@
-@ MysteryEventScript_VisitingTrainer:: @ 8674EC1
-@ setvaddress MysteryEventScript_VisitingTrainer
-@ special ValidateEReaderTrainer
-@ compare_var_to_value VAR_RESULT, 0
-@ vgoto_if 1, MysteryEventScript_VisitingTrainerArrived
-@ lock
-@ faceplayer
-@ vmessage sText_MysteryGiftVisitingTrainer
-@ waitmessage
-@ waitbutton
-@ release
-@ end
-@
-@ MysteryEventScript_VisitingTrainerArrived: @ 8674EDF
-@ lock
-@ faceplayer
-@ vmessage sText_MysteryGiftVisitingTrainer_2
-@ waitmessage
-@ waitbutton
-@ release
-@ end
-@
-@ sText_MysteryGiftVisitingTrainer:
-@ .string "Thank you for using the MYSTERY\nGIFT System.\pBy holding this WONDER CARD, you\nmay take part in a survey at a\lPOKéMON MART.\pUse these surveys to invite\nTRAINERS to SOOTOPOLIS CITY.\p…Let me give you a secret\npassword for a survey:\p“GIVE ME\nAWESOME TRAINER”\pWrite that in on a survey and send\nit to the WIRELESS\lCOMMUNICATION SYSTEM.$"
-@
-@ sText_MysteryGiftVisitingTrainer_2:
-@ .string "Thank you for using the MYSTERY\nGIFT System.\pA TRAINER has arrived in\nSOOTOPOLIS CITY looking for you.\pWe hope you will enjoy\nbattling the visiting TRAINER.\pYou may invite other TRAINERS by\nentering other passwords.\pTry looking for other passwords\nthat may work.$"
-@
-@ MysteryEventScript_BattleCard:: @ 867513C
-@ setvaddress MysteryEventScript_BattleCard
-@ checkflag FLAG_MYSTERY_EVENT_DONE
-@ vgoto_if 1, MysteryEventScript_BattleCardInfo
-@ setorcopyvar VAR_RESULT, 2
-@ specialvar VAR_0x8008, sub_813986C
-@ compare_var_to_value VAR_0x8008, 3
-@ vgoto_if 0, MysteryEventScript_BattleCardInfo
-@ lock
-@ faceplayer
-@ vmessage sText_MysteryGiftBattleCountCard_2
-@ waitmessage
-@ waitbutton
-@ giveitem ITEM_POTION
-@ release
-@ setflag FLAG_MYSTERY_EVENT_DONE
-@ end
-@
-@ MysteryEventScript_BattleCardInfo: @ 8675179
-@ lock
-@ faceplayer
-@ vmessage sText_MysteryGiftBattleCountCard
-@ waitmessage
-@ waitbutton
-@ release
-@ end
-@
-@ sText_MysteryGiftBattleCountCard:
-@ .string "Thank you for using the MYSTERY\nGIFT System.\pYour BATTLE COUNT CARD keeps\ntrack of your battle record against\lTRAINERS with the same CARD.\pLook for and battle TRAINERS who\nhave the same CARD as you.\pYou may check the overall rankings\nby reading the NEWS.\pPlease do give it a try!$"
-@
-@ sText_MysteryGiftBattleCountCard_2:
-@ .string "Thank you for using the MYSTERY\nGIFT System.\pCongratulations!\pYou have won a prize for winning\nthree battles!\pWe hope you will be inspired to\nbattle some more.$"
-@
-@ MysteryEventScript_AuroraTicket:: @ 867533C
-@ setvaddress MysteryEventScript_AuroraTicket
-@ lock
-@ faceplayer
-@ checkflag FLAG_0x13A
-@ vgoto_if 1, AuroraTicket_Obtained
-@ checkflag FLAG_0x1AD
-@ vgoto_if 1, AuroraTicket_Obtained
-@ checkitem ITEM_AURORA_TICKET, 1
-@ compare_var_to_value VAR_RESULT, 1
-@ vgoto_if 1, AuroraTicket_Obtained
-@ vmessage sText_AuroraTicket1
-@ waitmessage
-@ waitbutton
-@ checkitemspace ITEM_AURORA_TICKET, 1
-@ compare_var_to_value VAR_RESULT, 0
-@ vgoto_if 1, AuroraTicket_NoBagSpace
-@ giveitem ITEM_AURORA_TICKET
-@ setflag FLAG_0x8D5
-@ setflag FLAG_0x13A
-@ vmessage sText_AuroraTicket2
-@ waitmessage
-@ waitbutton
-@ release
-@ end
-@
-@ AuroraTicket_NoBagSpace: @ 8675397
-@ vmessage sText_AuroraTicketNoPlace
-@ waitmessage
-@ waitbutton
-@ release
-@ end
-@
-@ AuroraTicket_Obtained: @ 86753A0
-@ vmessage sText_AuroraTicketGot
-@ waitmessage
-@ waitbutton
-@ release
-@ end
-@
-@ sText_AuroraTicket1:
-@ .string "Thank you for using the MYSTERY\nGIFT System.\pYou must be {PLAYER}.\nThere is a ticket here for you.$"
-@
-@ sText_AuroraTicket2:
-@ .string "It appears to be for use at the\nLILYCOVE CITY port.\pWhy not give it a try and see what\nit is about?$"
-@
-@ sText_AuroraTicketGot:
-@ .string "Thank you for using the MYSTERY\nGIFT System.$"
-@
-@ sText_AuroraTicketNoPlace:
-@ .string "Oh, I'm sorry, {PLAYER}.\nYour BAG’s KEY ITEMS POCKET is full.\pPlease store something on your PC,\nthen come back for this.$"
-@
-@ MysteryEventScript_MysticTicket:: @ 867550B
-@ setvaddress MysteryEventScript_MysticTicket
-@ lock
-@ faceplayer
-@ checkflag FLAG_0x13B
-@ vgoto_if 1, MysticTicket_Obtained
-@ checkflag FLAG_0x091
-@ vgoto_if 1, MysticTicket_Obtained
-@ checkflag FLAG_0x092
-@ vgoto_if 1, MysticTicket_Obtained
-@ checkitem ITEM_MYSTIC_TICKET, 1
-@ compare_var_to_value VAR_RESULT, 1
-@ vgoto_if 1, MysticTicket_Obtained
-@ vmessage sText_MysticTicket2
-@ waitmessage
-@ waitbutton
-@ checkitemspace ITEM_MYSTIC_TICKET, 1
-@ compare_var_to_value VAR_RESULT, 0
-@ vgoto_if 1, MysticTicket_NoBagSpace
-@ giveitem ITEM_MYSTIC_TICKET
-@ setflag FLAG_0x8E0
-@ setflag FLAG_0x13B
-@ vmessage sText_MysticTicket1
-@ waitmessage
-@ waitbutton
-@ release
-@ end
-@
-@ MysticTicket_NoBagSpace: @ 867556F
-@ vmessage sText_MysticTicketNoPlace
-@ waitmessage
-@ waitbutton
-@ release
-@ end
-@
-@ MysticTicket_Obtained: @ 8675578
-@ vmessage sText_MysticTicketGot
-@ waitmessage
-@ waitbutton
-@ release
-@ end
-@
-@ sText_MysticTicket2:
-@ .string "Thank you for using the MYSTERY\nGIFT System.\pYou must be {PLAYER}.\nThere is a ticket here for you.$"
-@
-@ sText_MysticTicket1:
-@ .string "It appears to be for use at the\nLILYCOVE CITY port.\pWhy not give it a try and see what\nit is about?$"
-@
-@ sText_MysticTicketGot:
-@ .string "Thank you for using the MYSTERY\nGIFT System.$"
-@
-@ sText_MysticTicketNoPlace:
-@ .string "Oh, I'm sorry, {PLAYER}.\nYour BAG’s KEY ITEMS POCKET is full.\pPlease store something on your PC,\nthen come back for this.$"
-@
-@ MysteryEventScript_AlteringCave:: @ 86756E3
-@ setvaddress MysteryEventScript_AlteringCave
-@ addvar VAR_ALTERING_CAVE_WILD_SET, 1
-@ compare_var_to_value VAR_ALTERING_CAVE_WILD_SET, 10
-@ vgoto_if 0, MysteryEventScript_AlteringCave_
-@ setvar VAR_ALTERING_CAVE_WILD_SET, 0
-@ MysteryEventScript_AlteringCave_: @ 86756FD
-@ lock
-@ faceplayer
-@ vmessage sText_MysteryGiftAlteringCave
-@ waitmessage
-@ waitbutton
-@ release
-@ end
-@
-@ sText_MysteryGiftAlteringCave::
-@ .string "Thank you for using the MYSTERY\nGIFT System.\pThere appears to be a rumor about\nrare POKéMON sightings.\pThe sightings reportedly came from\nthe ALTERING CAVE on ROUTE 103.\pPerhaps it would be worthwhile for\nyou to investigate this rumor.$"
-@
-@ MysteryEventScript_OldSeaMap:: @ 86757F4
-@ setvaddress MysteryEventScript_OldSeaMap
-@ lock
-@ faceplayer
-@ checkflag FLAG_0x13C
-@ vgoto_if 1, OldSeaMap_Obtained
-@ checkflag FLAG_0x1CA
-@ vgoto_if 1, OldSeaMap_Obtained
-@ checkitem ITEM_OLD_SEA_MAP, 1
-@ compare_var_to_value VAR_RESULT, 1
-@ vgoto_if 1, OldSeaMap_Obtained
-@ vmessage sText_MysteryGiftOldSeaMap
-@ waitmessage
-@ waitbutton
-@ checkitemspace ITEM_OLD_SEA_MAP, 1
-@ compare_var_to_value VAR_RESULT, 0
-@ vgoto_if 1, OldSeaMap_NoBagSpace
-@ giveitem ITEM_OLD_SEA_MAP
-@ setflag FLAG_0x8D6
-@ setflag FLAG_0x13C
-@ vmessage sText_MysteryGiftOldSeaMap_1
-@ waitmessage
-@ waitbutton
-@ release
-@ end
-@
-@ OldSeaMap_NoBagSpace: @ 867584F
-@ vmessage sText_MysteryGiftOldSeaMap_3
-@ waitmessage
-@ waitbutton
-@ release
-@ end
-@
-@ OldSeaMap_Obtained: @ 8675858
-@ vmessage sText_MysteryGiftOldSeaMap_2
-@ waitmessage
-@ waitbutton
-@ release
-@ end
-@
-@ sText_MysteryGiftOldSeaMap:
-@ .string "Thank you for using the MYSTERY\nGIFT System.\pLet me confirm--you are {PLAYER}?\pWe received this OLD SEA MAP\naddressed to you.$"
-@
-@ sText_MysteryGiftOldSeaMap_1:
-@ .string "It appears to be for use at the\nLILYCOVE CITY port.\pWhy not give it a try and see what\nit is about?$"
-@
-@ sText_MysteryGiftOldSeaMap_2:
-@ .string "Thank you for using the MYSTERY\nGIFT System.$"
-@
-@ sText_MysteryGiftOldSeaMap_3:
-@ .string "Oh, I'm sorry, {PLAYER}.\nYour BAG’s KEY ITEMS POCKET is full.\pPlease store something on your PC,\nthen come back for this.$"
+MysteryEventScript_StampCard:: @ 8488E28
+ setvaddress MysteryEventScript_StampCard
+ setorcopyvar VAR_RESULT, 1
+ specialvar VAR_0x8008, Special_BattleCardAction
+ setorcopyvar VAR_RESULT, 0
+ specialvar VAR_0x8009, Special_BattleCardAction
+ subvar VAR_0x8008, VAR_0x8009
+ getnumberstring 0, VAR_0x8008
+ lock
+ faceplayer
+ vmessage sText_MysteryGiftStampCard
+ waitmessage
+ waitbuttonpress
+ release
+ end
+
+sText_MysteryGiftStampCard: @ 8488E55
+ .string "Thank you for using the STAMP CARD\n"
+ .string "System.\p"
+ .string "You have {STR_VAR_1} more to collect to\n"
+ .string "fill your STAMP CARD.$"
+
+MysteryEventScript_SurfPichu:: @ 8488EB5
+ setvaddress MysteryEventScript_SurfPichu
+ checkflag FLAG_MYSTERY_EVENT_DONE
+ vgoto_if 0, SurfPichu_GiveIfPossible
+ gotoram
+
+SurfPichu_GiveIfPossible: @ 8488EC4
+ specialvar VAR_EVENT_PICHU_SLOT, CalculatePlayerPartyCount
+ compare_var_to_value VAR_EVENT_PICHU_SLOT, 6
+ vgoto_if 1, SurfPichu_FullParty
+ setflag FLAG_MYSTERY_EVENT_DONE
+ vcall SurfPichu_GiveEgg
+ lock
+ faceplayer
+ vmessage sText_MysteryGiftEgg
+ waitmessage
+ waitbuttonpress
+ playfanfare MUS_FANFA4
+ waitfanfare
+ release
+ end
+
+SurfPichu_FullParty: @ 8488EEB
+ lock
+ faceplayer
+ vmessage sText_FullParty
+ waitmessage
+ waitbuttonpress
+ release
+ end
+
+SurfPichu_GiveEgg: @ 8488EF6
+ giveegg SPECIES_PICHU
+ setmonobedient VAR_EVENT_PICHU_SLOT
+ setmonmetlocation VAR_EVENT_PICHU_SLOT, 0xff
+ compare_var_to_value VAR_EVENT_PICHU_SLOT, 1
+ vgoto_if 1, SurfPichu_Slot1
+ compare_var_to_value VAR_EVENT_PICHU_SLOT, 2
+ vgoto_if 1, SurfPichu_Slot2
+ compare_var_to_value VAR_EVENT_PICHU_SLOT, 3
+ vgoto_if 1, SurfPichu_Slot3
+ compare_var_to_value VAR_EVENT_PICHU_SLOT, 4
+ vgoto_if 1, SurfPichu_Slot4
+ compare_var_to_value VAR_EVENT_PICHU_SLOT, 5
+ vgoto_if 1, SurfPichu_Slot5
+ return
+
+SurfPichu_Slot1: @ 8488F38
+ setmonmove 1, 2, MOVE_SURF
+ return
+
+SurfPichu_Slot2: @ 8488F3E
+ setmonmove 2, 2, MOVE_SURF
+ return
+
+SurfPichu_Slot3: @ 8488F44
+ setmonmove 3, 2, MOVE_SURF
+ return
+
+SurfPichu_Slot4: @ 8488F4A
+ setmonmove 4, 2, MOVE_SURF
+ return
+
+SurfPichu_Slot5: @ 8488F50
+ setmonmove 5, 2, MOVE_SURF
+ return
+
+sText_MysteryGiftEgg: @ 8488F56
+ .string "Thank you for using the MYSTERY\n"
+ .string "GIFT System.\p"
+ .string "From the POKéMON CENTER we\n"
+ .string "have a gift - a POKéMON EGG!\p"
+ .string "Please raise it with love and\n"
+ .string "kindness.$"
+
+sText_FullParty: @ 8488FE3
+ .string "Oh, your party appears to be full.\p"
+ .string "Please come see me after storing\n"
+ .string "a POKéMON on a PC.$"
+
+MysteryEventScript_VisitingTrainer:: @ 848903A
+ setvaddress MysteryEventScript_VisitingTrainer
+ special ValidateEReaderTrainer
+ compare_var_to_value VAR_RESULT, 0
+ vgoto_if 1, MysteryEventScript_VisitingTrainerArrived
+ lock
+ faceplayer
+ vmessage sText_MysteryGiftVisitingTrainer
+ waitmessage
+ waitbuttonpress
+ release
+ end
+
+MysteryEventScript_VisitingTrainerArrived: @ 8489058
+ lock
+ faceplayer
+ vmessage sText_MysteryGiftVisitingTrainer_2
+ waitmessage
+ waitbuttonpress
+ release
+ end
+
+sText_MysteryGiftVisitingTrainer: @ 8489063
+ .string "Thank you for using the MYSTERY\n"
+ .string "GIFT System.\p"
+ .string "By holding this WONDER CARD, you\n"
+ .string "may take part in a survey at a\l"
+ .string "POKéMON MART.\p"
+ .string "Use these surveys to invite\n"
+ .string "TRAINERS to the SEVII ISLANDS.\p"
+ .string "…Let me give you a secret\n"
+ .string "password for a survey:\p"
+ .string "“GIVE ME\n"
+ .string "AWESOME TRAINER”\p"
+ .string "Write that in on a survey and send\n"
+ .string "it to the WIRELESS\l"
+ .string "COMMUNICATION SYSTEM.$"
+
+sText_MysteryGiftVisitingTrainer_2: @ 84891B0
+ .string "Thank you for using the MYSTERY\n"
+ .string "GIFT System.\p"
+ .string "A TRAINER has arrived in the SEVII\n"
+ .string "ISLANDS looking for you.\p"
+ .string "We hope you will enjoy\n"
+ .string "battling the visiting TRAINER.\p"
+ .string "You may invite other TRAINERS by\n"
+ .string "entering other passwords.\p"
+ .string "Try looking for other passwords\n"
+ .string "that may work.$"
+
+MysteryEventScript_BattleCard:: @ 84892B9
+ setvaddress MysteryEventScript_BattleCard
+ checkflag FLAG_MYSTERY_EVENT_DONE
+ vgoto_if 1, MysteryEventScript_BattleCardInfo
+ setorcopyvar VAR_RESULT, 2
+ specialvar VAR_0x8008, Special_BattleCardAction
+ compare_var_to_value VAR_0x8008, 3
+ vgoto_if 0, MysteryEventScript_BattleCardInfo
+ lock
+ faceplayer
+ vmessage sText_MysteryGiftBattleCountCard_2
+ waitmessage
+ waitbuttonpress
+ giveitem ITEM_POTION
+ release
+ setflag FLAG_MYSTERY_EVENT_DONE
+ end
+
+MysteryEventScript_BattleCardInfo: @ 84892F6
+ lock
+ faceplayer
+ vmessage sText_MysteryGiftBattleCountCard
+ waitmessage
+ waitbuttonpress
+ release
+ end
+
+sText_MysteryGiftBattleCountCard: @ 8489301
+ .string "Thank you for using the MYSTERY\n"
+ .string "GIFT System.\p"
+ .string "Your BATTLE COUNT CARD keeps\n"
+ .string "track of your battle record against\l"
+ .string "TRAINERS with the same CARD.\p"
+ .string "Look for and battle TRAINERS who\n"
+ .string "have the same CARD as you.\p"
+ .string "You may check the overall rankings\n"
+ .string "by reading the NEWS.\p"
+ .string "Please do give it a try!$"
+
+sText_MysteryGiftBattleCountCard_2: @ 8489419
+ .string "Thank you for using the MYSTERY\n"
+ .string "GIFT System.\p"
+ .string "Congratulations!\p"
+ .string "You have won a prize for winning\n"
+ .string "three battles!\p"
+ .string "We hope you will be inspired to\n"
+ .string "battle some more.$"
+
+MysteryEventScript_AuroraTicket:: @ 84894B9
+ setvaddress MysteryEventScript_AuroraTicket
+ lock
+ faceplayer
+ checkflag FLAG_0x2A7
+ vgoto_if 1, AuroraTicket_Obtained
+ checkflag FLAG_0x2E4
+ vgoto_if 1, AuroraTicket_Obtained
+ checkitem ITEM_AURORA_TICKET, 1
+ compare_var_to_value VAR_RESULT, 1
+ vgoto_if 1, AuroraTicket_Obtained
+ vmessage sText_AuroraTicket1
+ waitmessage
+ waitbuttonpress
+ checkitemspace ITEM_AURORA_TICKET, 1
+ compare_var_to_value VAR_RESULT, 0
+ vgoto_if 1, AuroraTicket_NoBagSpace
+ giveitem ITEM_AURORA_TICKET
+ setflag FLAG_0x84B
+ setflag FLAG_0x2A7
+ vmessage sText_AuroraTicket2
+ waitmessage
+ waitbuttonpress
+ release
+ end
+
+AuroraTicket_NoBagSpace: @ 8489514
+ vmessage sText_AuroraTicketNoPlace
+ waitmessage
+ waitbuttonpress
+ release
+ end
+
+AuroraTicket_Obtained: @ 848951D
+ vmessage sText_AuroraTicketGot
+ waitmessage
+ waitbuttonpress
+ release
+ end
+
+sText_AuroraTicket1: @ 8489526
+ .string "Thank you for using the MYSTERY\n"
+ .string "GIFT System.\p"
+ .string "You must be {PLAYER}.\n"
+ .string "There is a ticket here for you.$"
+
+sText_AuroraTicket2: @ 8489583
+ .string "It appears to be for use at the\n"
+ .string "VERMILION CITY port.\p"
+ .string "Why not give it a try and see what\n"
+ .string "it is about?$"
+
+sText_AuroraTicketGot: @ 84895E8
+ .string "Thank you for using the MYSTERY\n"
+ .string "GIFT System.$"
+
+sText_AuroraTicketNoPlace: @ 8489615
+ .string "Oh, I'm sorry, {PLAYER}. Your BAG's\n"
+ .string "KEY ITEMS POCKET is full.\p"
+ .string "Please store something on your PC,\n"
+ .string "then come back for this.$"
+
+MysteryEventScript_MysticTicket:: @ 8489689
+ setvaddress MysteryEventScript_MysticTicket
+ lock
+ faceplayer
+ checkflag FLAG_0x2A8
+ vgoto_if 1, MysticTicket_Obtained
+ checkflag FLAG_0x2F2
+ vgoto_if 1, MysticTicket_Obtained
+ checkflag FLAG_0x2F3
+ vgoto_if 1, MysticTicket_Obtained
+ checkitem ITEM_MYSTIC_TICKET, 1
+ compare_var_to_value VAR_RESULT, 1
+ vgoto_if 1, MysticTicket_Obtained
+ vmessage sText_MysticTicket2
+ waitmessage
+ waitbuttonpress
+ checkitemspace ITEM_MYSTIC_TICKET, 1
+ compare_var_to_value VAR_RESULT, 0
+ vgoto_if 1, MysticTicket_NoBagSpace
+ giveitem ITEM_MYSTIC_TICKET
+ setflag FLAG_0x84A
+ setflag FLAG_0x2A8
+ vmessage sText_MysticTicket1
+ waitmessage
+ waitbuttonpress
+ release
+ end
+
+MysticTicket_NoBagSpace: @ 84896ED
+ vmessage sText_MysticTicketNoPlace
+ waitmessage
+ waitbuttonpress
+ release
+ end
+
+MysticTicket_Obtained: @ 84896F6
+ vmessage sText_MysticTicketGot
+ waitmessage
+ waitbuttonpress
+ release
+ end
+
+sText_MysticTicket2: @ 84896FF
+ .string "Thank you for using the MYSTERY\n"
+ .string "GIFT System.\p"
+ .string "You must be {PLAYER}.\n"
+ .string "There is a ticket here for you.$"
+
+sText_MysticTicket1: @ 848975C
+ .string "It appears to be for use at the\n"
+ .string "VERMILION CITY port.\p"
+ .string "Why not give it a try and see what\n"
+ .string "it is about?$"
+
+sText_MysticTicketGot: @ 84897C1
+ .string "Thank you for using the MYSTERY\n"
+ .string "GIFT System.$"
+
+sText_MysticTicketNoPlace: @ 84897EE
+ .string "Oh, I'm sorry, {PLAYER}. Your BAG's\n"
+ .string "KEY ITEMS POCKET is full.\p"
+ .string "Please store something on your PC,\n"
+ .string "then come back for this.$"
+
+MysteryEventScript_AlteringCave:: @ 8489862
+ setvaddress MysteryEventScript_AlteringCave
+ addvar VAR_ALTERING_CAVE_WILD_SET, 1
+ compare_var_to_value VAR_ALTERING_CAVE_WILD_SET, 10
+ vgoto_if 0, MysteryEventScript_AlteringCave_
+ setvar VAR_ALTERING_CAVE_WILD_SET, 0
+MysteryEventScript_AlteringCave_: @ 848987C
+ lock
+ faceplayer
+ vmessage sText_MysteryGiftAlteringCave
+ waitmessage
+ waitbuttonpress
+ release
+ end
+
+sText_MysteryGiftAlteringCave: @ 8489887
+ .string "Thank you for using the MYSTERY\n"
+ .string "GIFT System.\p"
+ .string "Recently, there have been rumors\n"
+ .string "of rare POKéMON appearances.\p"
+ .string "The rumors are about ALTERING\n"
+ .string "CAVE on OUTCAST ISLAND.\p"
+ .string "Why not visit there and check if\n"
+ .string "the rumors are indeed true?$"
diff --git a/data/specials.inc b/data/specials.inc
index d8d208d43..b6d189c18 100644
--- a/data/specials.inc
+++ b/data/specials.inc
@@ -65,7 +65,7 @@ gSpecials:: @ 815FD60
def_special sub_8080618
def_special ScrSpecial_HasTrainerBeenFought
def_special ScrSpecial_EndTrainerApproach
- def_special sub_8080628
+ def_special PlayTrainerEncounterMusic
def_special sub_810CD4C
def_special sub_810CEB4
def_special sub_80805B0
@@ -399,7 +399,7 @@ gSpecials:: @ 815FD60
def_special sp182_move_string
def_special sub_811390C
def_special sub_80CC4D4
- def_special sub_80CC730
+ def_special Special_BattleCardAction
def_special sub_8110AB4
def_special sub_8112364
def_special sub_8146CE8