summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGriffinR <griffin.g.richards@gmail.com>2020-05-06 15:32:25 -0400
committerGriffinR <griffin.g.richards@gmail.com>2020-05-06 16:02:03 -0400
commit9f0a89760236529776b607e25e67aaae2321b99e (patch)
treeabe5c83f19a86d6ded2da59ab2eadd2ff8742ab8
parent49d6f31c2811fcdf4f5a2ef3c3a0b3986559e821 (diff)
Sync static_pokemon.inc
-rw-r--r--constants/misc_constants.inc8
-rw-r--r--data-de/event_scripts.s184
-rw-r--r--data-de/maps/Route120/text.inc7
-rw-r--r--data/event_scripts.s184
-rw-r--r--data/maps/AquaHideout_B1F/map.json4
-rw-r--r--data/maps/FortreeCity/scripts.inc2
-rw-r--r--data/maps/MagmaHideout_B1F/map.json4
-rw-r--r--data/maps/Route119/map.json4
-rw-r--r--data/maps/Route120/map.json10
-rw-r--r--data/maps/Route120/scripts.inc4
-rw-r--r--data/maps/Route120/text.inc7
-rw-r--r--data/scripts/static_pokemon.inc177
-rw-r--r--src/crt0.s1
13 files changed, 208 insertions, 388 deletions
diff --git a/constants/misc_constants.inc b/constants/misc_constants.inc
index 9e27e83c5..2befc3cf2 100644
--- a/constants/misc_constants.inc
+++ b/constants/misc_constants.inc
@@ -29,6 +29,14 @@
.equiv DIR_WEST, 3
.equiv DIR_EAST, 4
+ .ifdef ENGLISH
+ .equiv GAME_LANGUAGE, 2
+ .else
+ .ifdef GERMAN
+ .equiv GAME_LANGUAGE, 5
+ .endif
+ .endif
+
.equiv ENEMY_TYPE1, 0
.equiv ENEMY_TYPE2, 1
.equiv PLAYER_TYPE1, 2
diff --git a/data-de/event_scripts.s b/data-de/event_scripts.s
index 5edeff567..a7b3a0fe1 100644
--- a/data-de/event_scripts.s
+++ b/data-de/event_scripts.s
@@ -964,189 +964,7 @@ Common_EventScript_FerryDepartIsland:: @ 81A047C
return
.include "data/scripts/cave_of_origin.inc"
-
-AquaHideout_B1F_EventScript_1A04FD:: @ 81A04FD
-MagmaHideout_B1F_EventScript_1A04FD:: @ 81A04FD
- lock
- faceplayer
- setwildbattle SPECIES_ELECTRODE, 30, ITEM_NONE
- waitse
- playmoncry SPECIES_ELECTRODE, 2
- delay 40
- waitmoncry
- setflag FLAG_HIDE_ELECTRODE_1_HIDEOUT
- setflag FLAG_SYS_CTRL_OBJ_DELETE
- dowildbattle
- clearflag FLAG_SYS_CTRL_OBJ_DELETE
- release
- end
-
-AquaHideout_B1F_EventScript_1A051B:: @ 81A051B
-MagmaHideout_B1F_EventScript_1A051B:: @ 81A051B
- lock
- faceplayer
- setwildbattle SPECIES_ELECTRODE, 30, ITEM_NONE
- waitse
- playmoncry SPECIES_ELECTRODE, 2
- delay 40
- waitmoncry
- setflag FLAG_HIDE_ELECTRODE_2_HIDEOUT
- setflag FLAG_SYS_CTRL_OBJ_DELETE
- dowildbattle
- clearflag FLAG_SYS_CTRL_OBJ_DELETE
- release
- end
-
-Route120_EventScript_1A0539:: @ 81A0539
- lock
- faceplayer
- setvar VAR_0x8004, 1
- goto Route120_EventScript_1A0594
- end
-
-Route120_EventScript_1A0546:: @ 81A0546
- lock
- faceplayer
- setvar VAR_0x8004, 2
- goto Route120_EventScript_1A0594
- end
-
-Route120_EventScript_1A0553:: @ 81A0553
- lock
- faceplayer
- setvar VAR_0x8004, 3
- goto Route120_EventScript_1A0594
- end
-
-Route120_EventScript_1A0560:: @ 81A0560
- lock
- faceplayer
- setvar VAR_0x8004, 4
- goto Route120_EventScript_1A0594
- end
-
-Route120_EventScript_1A056D:: @ 81A056D
- lock
- faceplayer
- setvar VAR_0x8004, 5
- goto Route120_EventScript_1A0594
- end
-
-Route119_EventScript_1A057A:: @ 81A057A
- lock
- faceplayer
- setvar VAR_0x8004, 6
- goto Route119_EventScript_1A0594
- end
-
-Route119_EventScript_1A0587:: @ 81A0587
- lock
- faceplayer
- setvar VAR_0x8004, 7
- goto Route119_EventScript_1A0594
- end
-
-Route119_EventScript_1A0594:: @ 81A0594
-Route120_EventScript_1A0594:: @ 81A0594
- checkitem ITEM_DEVON_SCOPE, 1
- compare VAR_RESULT, 1
- goto_if_eq Route119_EventScript_1A05AE
- msgbox Route119_Text_171B93, MSGBOX_DEFAULT
- release
- end
-
-Route119_EventScript_1A05AE:: @ 81A05AE
- msgbox Route119_Text_171BB6, MSGBOX_YESNO
- compare VAR_RESULT, YES
- goto_if_eq Route119_EventScript_1A05C3
- release
- end
-
-Route119_EventScript_1A05C3:: @ 81A05C3
- msgbox Route119_Text_171BF6, MSGBOX_DEFAULT
- closemessage
- applymovement VAR_LAST_TALKED, Common_Movement_FacePlayer
- waitmovement 0
- applymovement VAR_LAST_TALKED, Route119_Movement_1A0662
- waitmovement 0
- waitse
- playmoncry SPECIES_KECLEON, 2
- delay 40
- waitmoncry
- setwildbattle SPECIES_KECLEON, 30, ITEM_NONE
- compare VAR_0x8004, 1
- call_if_eq Route119_EventScript_1A0646
- compare VAR_0x8004, 2
- call_if_eq Route119_EventScript_1A064A
- compare VAR_0x8004, 3
- call_if_eq Route119_EventScript_1A064E
- compare VAR_0x8004, 4
- call_if_eq Route119_EventScript_1A0652
- compare VAR_0x8004, 5
- call_if_eq Route119_EventScript_1A0656
- compare VAR_0x8004, 6
- call_if_eq Route119_EventScript_1A065A
- compare VAR_0x8004, 7
- call_if_eq Route119_EventScript_1A065E
- setflag FLAG_SYS_CTRL_OBJ_DELETE
- dowildbattle
- clearflag FLAG_SYS_CTRL_OBJ_DELETE
- release
- end
-
-Route119_EventScript_1A0646:: @ 81A0646
- setflag FLAG_HIDE_KECLEON_ROUTE120_3
- return
-
-Route119_EventScript_1A064A:: @ 81A064A
- setflag FLAG_HIDE_KECLEON_ROUTE120_4
- return
-
-Route119_EventScript_1A064E:: @ 81A064E
- setflag FLAG_HIDE_KECLEON_ROUTE120_5
- return
-
-Route119_EventScript_1A0652:: @ 81A0652
- setflag FLAG_HIDE_KECLEON_ROUTE120_6
- return
-
-Route119_EventScript_1A0656:: @ 81A0656
- setflag FLAG_HIDE_KECLEON_ROUTE120_7
- return
-
-Route119_EventScript_1A065A:: @ 81A065A
- setflag FLAG_HIDE_KECLEON_ROUTE119_1
- return
-
-Route119_EventScript_1A065E:: @ 81A065E
- setflag FLAG_HIDE_KECLEON_ROUTE119_2
- return
-
-FortreeCity_Movement_1A0662:: @ 81A0662
-Route119_Movement_1A0662:: @ 81A0662
-Route120_Movement_1A0662:: @ 81A0662
- set_visible
- delay_4
- set_invisible
- delay_4
- set_visible
- delay_4
- set_invisible
- delay_4
- set_visible
- delay_8
- set_invisible
- delay_8
- set_visible
- delay_8
- set_invisible
- delay_8
- set_visible
- delay_16
- set_invisible
- delay_16
- set_visible
- step_end
+ .include "data/scripts/static_pokemon.inc"
LittlerootTown_ProfessorBirchsLab_EventScript_1A0678:: @ 81A0678
MossdeepCity_StevensHouse_EventScript_1A0678:: @ 81A0678
diff --git a/data-de/maps/Route120/text.inc b/data-de/maps/Route120/text.inc
index cc09aa727..6828af548 100644
--- a/data-de/maps/Route120/text.inc
+++ b/data-de/maps/Route120/text.inc
@@ -47,16 +47,15 @@ Route120_Text_171B0E:: @ 8171B0E
.string "Ich finde, du machst das großartig.\p"
.string "Nun, mach's gut. Wir sehen uns!$"
-Route119_Text_171B93:: @ 8171B93
-Route120_Text_171B93:: @ 8171B93
+Text_SomethingUnseeable:: @ 8171B93
.string "Etwas Unsichtbares blockiert den Weg.$"
-Route119_Text_171BB6:: @ 8171BB6
+Text_WantToUseDevonScope:: @ 8171BB6
.string "Etwas Unsichtbares blockiert den Weg.\p"
.string "Möchtest du das DEVON-SCOPE\n"
.string "einsetzen?$"
-Route119_Text_171BF6:: @ 8171BF6
+Text_UseDevonScopeMonAttacked:: @ 8171BF6
.string "{PLAYER} setzt DEVON-SCOPE ein.\p"
.string "Ein unsichtbares POKéMON wird sichtbar!\p"
.string "Das erschreckte POKéMON greift an!$"
diff --git a/data/event_scripts.s b/data/event_scripts.s
index b41d31392..a25738495 100644
--- a/data/event_scripts.s
+++ b/data/event_scripts.s
@@ -963,189 +963,7 @@ Common_EventScript_FerryDepartIsland:: @ 81A047C
return
.include "data/scripts/cave_of_origin.inc"
-
-AquaHideout_B1F_EventScript_1A04FD:: @ 81A04FD
-MagmaHideout_B1F_EventScript_1A04FD:: @ 81A04FD
- lock
- faceplayer
- setwildbattle SPECIES_ELECTRODE, 30, ITEM_NONE
- waitse
- playmoncry SPECIES_ELECTRODE, 2
- delay 40
- waitmoncry
- setflag FLAG_HIDE_ELECTRODE_1_HIDEOUT
- setflag FLAG_SYS_CTRL_OBJ_DELETE
- dowildbattle
- clearflag FLAG_SYS_CTRL_OBJ_DELETE
- release
- end
-
-AquaHideout_B1F_EventScript_1A051B:: @ 81A051B
-MagmaHideout_B1F_EventScript_1A051B:: @ 81A051B
- lock
- faceplayer
- setwildbattle SPECIES_ELECTRODE, 30, ITEM_NONE
- waitse
- playmoncry SPECIES_ELECTRODE, 2
- delay 40
- waitmoncry
- setflag FLAG_HIDE_ELECTRODE_2_HIDEOUT
- setflag FLAG_SYS_CTRL_OBJ_DELETE
- dowildbattle
- clearflag FLAG_SYS_CTRL_OBJ_DELETE
- release
- end
-
-Route120_EventScript_1A0539:: @ 81A0539
- lock
- faceplayer
- setvar VAR_0x8004, 1
- goto Route120_EventScript_1A0594
- end
-
-Route120_EventScript_1A0546:: @ 81A0546
- lock
- faceplayer
- setvar VAR_0x8004, 2
- goto Route120_EventScript_1A0594
- end
-
-Route120_EventScript_1A0553:: @ 81A0553
- lock
- faceplayer
- setvar VAR_0x8004, 3
- goto Route120_EventScript_1A0594
- end
-
-Route120_EventScript_1A0560:: @ 81A0560
- lock
- faceplayer
- setvar VAR_0x8004, 4
- goto Route120_EventScript_1A0594
- end
-
-Route120_EventScript_1A056D:: @ 81A056D
- lock
- faceplayer
- setvar VAR_0x8004, 5
- goto Route120_EventScript_1A0594
- end
-
-Route119_EventScript_1A057A:: @ 81A057A
- lock
- faceplayer
- setvar VAR_0x8004, 6
- goto Route119_EventScript_1A0594
- end
-
-Route119_EventScript_1A0587:: @ 81A0587
- lock
- faceplayer
- setvar VAR_0x8004, 7
- goto Route119_EventScript_1A0594
- end
-
-Route119_EventScript_1A0594:: @ 81A0594
-Route120_EventScript_1A0594:: @ 81A0594
- checkitem ITEM_DEVON_SCOPE, 1
- compare VAR_RESULT, 1
- goto_if_eq Route119_EventScript_1A05AE
- msgbox Route119_Text_171B93, MSGBOX_DEFAULT
- release
- end
-
-Route119_EventScript_1A05AE:: @ 81A05AE
- msgbox Route119_Text_171BB6, MSGBOX_YESNO
- compare VAR_RESULT, YES
- goto_if_eq Route119_EventScript_1A05C3
- release
- end
-
-Route119_EventScript_1A05C3:: @ 81A05C3
- msgbox Route119_Text_171BF6, MSGBOX_DEFAULT
- closemessage
- applymovement VAR_LAST_TALKED, Common_Movement_FacePlayer
- waitmovement 0
- applymovement VAR_LAST_TALKED, Route119_Movement_1A0662
- waitmovement 0
- waitse
- playmoncry SPECIES_KECLEON, 2
- delay 40
- waitmoncry
- setwildbattle SPECIES_KECLEON, 30, ITEM_NONE
- compare VAR_0x8004, 1
- call_if_eq Route119_EventScript_1A0646
- compare VAR_0x8004, 2
- call_if_eq Route119_EventScript_1A064A
- compare VAR_0x8004, 3
- call_if_eq Route119_EventScript_1A064E
- compare VAR_0x8004, 4
- call_if_eq Route119_EventScript_1A0652
- compare VAR_0x8004, 5
- call_if_eq Route119_EventScript_1A0656
- compare VAR_0x8004, 6
- call_if_eq Route119_EventScript_1A065A
- compare VAR_0x8004, 7
- call_if_eq Route119_EventScript_1A065E
- setflag FLAG_SYS_CTRL_OBJ_DELETE
- dowildbattle
- clearflag FLAG_SYS_CTRL_OBJ_DELETE
- release
- end
-
-Route119_EventScript_1A0646:: @ 81A0646
- setflag FLAG_HIDE_KECLEON_ROUTE120_3
- return
-
-Route119_EventScript_1A064A:: @ 81A064A
- setflag FLAG_HIDE_KECLEON_ROUTE120_4
- return
-
-Route119_EventScript_1A064E:: @ 81A064E
- setflag FLAG_HIDE_KECLEON_ROUTE120_5
- return
-
-Route119_EventScript_1A0652:: @ 81A0652
- setflag FLAG_HIDE_KECLEON_ROUTE120_6
- return
-
-Route119_EventScript_1A0656:: @ 81A0656
- setflag FLAG_HIDE_KECLEON_ROUTE120_7
- return
-
-Route119_EventScript_1A065A:: @ 81A065A
- setflag FLAG_HIDE_KECLEON_ROUTE119_1
- return
-
-Route119_EventScript_1A065E:: @ 81A065E
- setflag FLAG_HIDE_KECLEON_ROUTE119_2
- return
-
-FortreeCity_Movement_1A0662:: @ 81A0662
-Route119_Movement_1A0662:: @ 81A0662
-Route120_Movement_1A0662:: @ 81A0662
- set_visible
- delay_4
- set_invisible
- delay_4
- set_visible
- delay_4
- set_invisible
- delay_4
- set_visible
- delay_8
- set_invisible
- delay_8
- set_visible
- delay_8
- set_invisible
- delay_8
- set_visible
- delay_16
- set_invisible
- delay_16
- set_visible
- step_end
+ .include "data/scripts/static_pokemon.inc"
LittlerootTown_ProfessorBirchsLab_EventScript_1A0678:: @ 81A0678
MossdeepCity_StevensHouse_EventScript_1A0678:: @ 81A0678
diff --git a/data/maps/AquaHideout_B1F/map.json b/data/maps/AquaHideout_B1F/map.json
index a5a26ae9b..9bede98d1 100644
--- a/data/maps/AquaHideout_B1F/map.json
+++ b/data/maps/AquaHideout_B1F/map.json
@@ -86,7 +86,7 @@
"movement_range_y": 1,
"trainer_type": "0",
"trainer_sight_or_berry_tree_id": "0",
- "script": "AquaHideout_B1F_EventScript_1A04FD",
+ "script": "Hideout_B1F_EventScript_Electrode1",
"flag": "FLAG_HIDE_ELECTRODE_1_HIDEOUT"
},
{
@@ -112,7 +112,7 @@
"movement_range_y": 1,
"trainer_type": "0",
"trainer_sight_or_berry_tree_id": "0",
- "script": "AquaHideout_B1F_EventScript_1A051B",
+ "script": "Hideout_B1F_EventScript_Electrode2",
"flag": "FLAG_HIDE_ELECTRODE_2_HIDEOUT"
}
],
diff --git a/data/maps/FortreeCity/scripts.inc b/data/maps/FortreeCity/scripts.inc
index 382364fd3..b46929698 100644
--- a/data/maps/FortreeCity/scripts.inc
+++ b/data/maps/FortreeCity/scripts.inc
@@ -72,7 +72,7 @@ FortreeCity_EventScript_14C9CF:: @ 814C9CF
FortreeCity_EventScript_14C9E4:: @ 814C9E4
msgbox FortreeCity_Text_1678CB, MSGBOX_DEFAULT
closemessage
- applymovement VAR_LAST_TALKED, FortreeCity_Movement_1A0662
+ applymovement VAR_LAST_TALKED, Movement_KecleonAppears
waitmovement 0
waitse
playmoncry SPECIES_KECLEON, 2
diff --git a/data/maps/MagmaHideout_B1F/map.json b/data/maps/MagmaHideout_B1F/map.json
index e2b9bf84b..50c510625 100644
--- a/data/maps/MagmaHideout_B1F/map.json
+++ b/data/maps/MagmaHideout_B1F/map.json
@@ -86,7 +86,7 @@
"movement_range_y": 1,
"trainer_type": "0",
"trainer_sight_or_berry_tree_id": "0",
- "script": "MagmaHideout_B1F_EventScript_1A04FD",
+ "script": "Hideout_B1F_EventScript_Electrode1",
"flag": "FLAG_HIDE_ELECTRODE_1_HIDEOUT"
},
{
@@ -112,7 +112,7 @@
"movement_range_y": 1,
"trainer_type": "0",
"trainer_sight_or_berry_tree_id": "0",
- "script": "MagmaHideout_B1F_EventScript_1A051B",
+ "script": "Hideout_B1F_EventScript_Electrode2",
"flag": "FLAG_HIDE_ELECTRODE_2_HIDEOUT"
}
],
diff --git a/data/maps/Route119/map.json b/data/maps/Route119/map.json
index 65f784333..6de1b9c0f 100644
--- a/data/maps/Route119/map.json
+++ b/data/maps/Route119/map.json
@@ -474,7 +474,7 @@
"movement_range_y": 1,
"trainer_type": "0",
"trainer_sight_or_berry_tree_id": "0",
- "script": "Route119_EventScript_1A057A",
+ "script": "Route119_EventScript_Kecleon1",
"flag": "FLAG_HIDE_KECLEON_ROUTE119_1"
},
{
@@ -487,7 +487,7 @@
"movement_range_y": 1,
"trainer_type": "0",
"trainer_sight_or_berry_tree_id": "0",
- "script": "Route119_EventScript_1A0587",
+ "script": "Route119_EventScript_Kecleon2",
"flag": "FLAG_HIDE_KECLEON_ROUTE119_2"
},
{
diff --git a/data/maps/Route120/map.json b/data/maps/Route120/map.json
index c9a163922..8898ceece 100644
--- a/data/maps/Route120/map.json
+++ b/data/maps/Route120/map.json
@@ -500,7 +500,7 @@
"movement_range_y": 1,
"trainer_type": "0",
"trainer_sight_or_berry_tree_id": "0",
- "script": "Route120_EventScript_1A0539",
+ "script": "Route120_EventScript_Kecleon1",
"flag": "FLAG_HIDE_KECLEON_ROUTE120_3"
},
{
@@ -513,7 +513,7 @@
"movement_range_y": 1,
"trainer_type": "0",
"trainer_sight_or_berry_tree_id": "0",
- "script": "Route120_EventScript_1A0546",
+ "script": "Route120_EventScript_Kecleon2",
"flag": "FLAG_HIDE_KECLEON_ROUTE120_4"
},
{
@@ -526,7 +526,7 @@
"movement_range_y": 1,
"trainer_type": "0",
"trainer_sight_or_berry_tree_id": "0",
- "script": "Route120_EventScript_1A0553",
+ "script": "Route120_EventScript_Kecleon3",
"flag": "FLAG_HIDE_KECLEON_ROUTE120_5"
},
{
@@ -539,7 +539,7 @@
"movement_range_y": 1,
"trainer_type": "0",
"trainer_sight_or_berry_tree_id": "0",
- "script": "Route120_EventScript_1A056D",
+ "script": "Route120_EventScript_Kecleon5",
"flag": "FLAG_HIDE_KECLEON_ROUTE120_7"
},
{
@@ -552,7 +552,7 @@
"movement_range_y": 1,
"trainer_type": "0",
"trainer_sight_or_berry_tree_id": "0",
- "script": "Route120_EventScript_1A0560",
+ "script": "Route120_EventScript_Kecleon4",
"flag": "FLAG_HIDE_KECLEON_ROUTE120_6"
}
],
diff --git a/data/maps/Route120/scripts.inc b/data/maps/Route120/scripts.inc
index b0949e9d8..47bcc35d6 100644
--- a/data/maps/Route120/scripts.inc
+++ b/data/maps/Route120/scripts.inc
@@ -213,7 +213,7 @@ Route120_EventScript_15189D:: @ 815189D
closemessage
applymovement 30, Common_Movement_WalkInPlaceFastestRight
waitmovement 0
- applymovement 30, Route120_Movement_1A0662
+ applymovement 30, Movement_KecleonAppears
waitmovement 0
waitse
playmoncry SPECIES_KECLEON, 2
@@ -268,7 +268,7 @@ Route120_Movement_151995:: @ 8151995
step_end
Route120_EventScript_151998:: @ 8151998
- msgbox Route120_Text_171B93, MSGBOX_NPC
+ msgbox Text_SomethingUnseeable, MSGBOX_NPC
end
Route120_EventScript_1519A1:: @ 81519A1
diff --git a/data/maps/Route120/text.inc b/data/maps/Route120/text.inc
index dbe89d8b4..85567cacd 100644
--- a/data/maps/Route120/text.inc
+++ b/data/maps/Route120/text.inc
@@ -46,15 +46,14 @@ Route120_Text_171B0E:: @ 8171B0E
.string "I think you're doing great.\p"
.string "Well, let's meet again somewhere.$"
-Route119_Text_171B93:: @ 8171B93
-Route120_Text_171B93:: @ 8171B93
+Text_SomethingUnseeable:: @ 8171B93
.string "Something unseeable is in the way.$"
-Route119_Text_171BB6:: @ 8171BB6
+Text_WantToUseDevonScope:: @ 8171BB6
.string "Something unseeable is in the way.\p"
.string "Want to use the DEVON SCOPE?$"
-Route119_Text_171BF6:: @ 8171BF6
+Text_UseDevonScopeMonAttacked:: @ 8171BF6
.string "{PLAYER} used the DEVON SCOPE.\p"
.string "An invisible POKéMON became completely\n"
.string "visible!\p"
diff --git a/data/scripts/static_pokemon.inc b/data/scripts/static_pokemon.inc
new file mode 100644
index 000000000..c881d9518
--- /dev/null
+++ b/data/scripts/static_pokemon.inc
@@ -0,0 +1,177 @@
+Hideout_B1F_EventScript_Electrode1:: @ 81A04FD
+ lock
+ faceplayer
+ setwildbattle SPECIES_ELECTRODE, 30, ITEM_NONE
+ waitse
+ playmoncry SPECIES_ELECTRODE, 2
+ delay 40
+ waitmoncry
+ setflag FLAG_HIDE_ELECTRODE_1_HIDEOUT
+ setflag FLAG_SYS_CTRL_OBJ_DELETE
+ dowildbattle
+ clearflag FLAG_SYS_CTRL_OBJ_DELETE
+ release
+ end
+
+Hideout_B1F_EventScript_Electrode2:: @ 81A051B
+ lock
+ faceplayer
+ setwildbattle SPECIES_ELECTRODE, 30, ITEM_NONE
+ waitse
+ playmoncry SPECIES_ELECTRODE, 2
+ delay 40
+ waitmoncry
+ setflag FLAG_HIDE_ELECTRODE_2_HIDEOUT
+ setflag FLAG_SYS_CTRL_OBJ_DELETE
+ dowildbattle
+ clearflag FLAG_SYS_CTRL_OBJ_DELETE
+ release
+ end
+
+Route120_EventScript_Kecleon1:: @ 81A0539
+ lock
+ faceplayer
+ setvar VAR_0x8004, 1
+ goto EventScript_Kecleon
+ end
+
+Route120_EventScript_Kecleon2:: @ 81A0546
+ lock
+ faceplayer
+ setvar VAR_0x8004, 2
+ goto EventScript_Kecleon
+ end
+
+Route120_EventScript_Kecleon3:: @ 81A0553
+ lock
+ faceplayer
+ setvar VAR_0x8004, 3
+ goto EventScript_Kecleon
+ end
+
+Route120_EventScript_Kecleon4:: @ 81A0560
+ lock
+ faceplayer
+ setvar VAR_0x8004, 4
+ goto EventScript_Kecleon
+ end
+
+Route120_EventScript_Kecleon5:: @ 81A056D
+ lock
+ faceplayer
+ setvar VAR_0x8004, 5
+ goto EventScript_Kecleon
+ end
+
+Route119_EventScript_Kecleon1:: @ 81A057A
+ lock
+ faceplayer
+ setvar VAR_0x8004, 6
+ goto EventScript_Kecleon
+ end
+
+Route119_EventScript_Kecleon2:: @ 81A0587
+ lock
+ faceplayer
+ setvar VAR_0x8004, 7
+ goto EventScript_Kecleon
+ end
+
+EventScript_Kecleon:: @ 81A0594
+ checkitem ITEM_DEVON_SCOPE, 1
+ compare VAR_RESULT, 1
+ goto_if_eq EventScript_AskUseDevonScope
+ msgbox Text_SomethingUnseeable, MSGBOX_DEFAULT
+ release
+ end
+
+EventScript_AskUseDevonScope:: @ 81A05AE
+ msgbox Text_WantToUseDevonScope, MSGBOX_YESNO
+ compare VAR_RESULT, YES
+ goto_if_eq EventScript_BattleKecleon
+ release
+ end
+
+EventScript_BattleKecleon:: @ 81A05C3
+ msgbox Text_UseDevonScopeMonAttacked, MSGBOX_DEFAULT
+ closemessage
+ applymovement VAR_LAST_TALKED, Common_Movement_FacePlayer
+ waitmovement 0
+ applymovement VAR_LAST_TALKED, Movement_KecleonAppears
+ waitmovement 0
+ waitse
+ playmoncry SPECIES_KECLEON, 2
+ delay 40
+ waitmoncry
+ setwildbattle SPECIES_KECLEON, 30, ITEM_NONE
+ compare VAR_0x8004, 1
+ call_if_eq Route120_EventScript_HideKecleon1
+ compare VAR_0x8004, 2
+ call_if_eq Route120_EventScript_HideKecleon2
+ compare VAR_0x8004, 3
+ call_if_eq Route120_EventScript_HideKecleon3
+ compare VAR_0x8004, 4
+ call_if_eq Route120_EventScript_HideKecleon4
+ compare VAR_0x8004, 5
+ call_if_eq Route120_EventScript_HideKecleon5
+ compare VAR_0x8004, 6
+ call_if_eq Route119_EventScript_HideKecleon1
+ compare VAR_0x8004, 7
+ call_if_eq Route119_EventScript_HideKecleon2
+ setflag FLAG_SYS_CTRL_OBJ_DELETE
+ dowildbattle
+ clearflag FLAG_SYS_CTRL_OBJ_DELETE
+ release
+ end
+
+Route120_EventScript_HideKecleon1:: @ 81A0646
+ setflag FLAG_HIDE_KECLEON_ROUTE120_3
+ return
+
+Route120_EventScript_HideKecleon2:: @ 81A064A
+ setflag FLAG_HIDE_KECLEON_ROUTE120_4
+ return
+
+Route120_EventScript_HideKecleon3:: @ 81A064E
+ setflag FLAG_HIDE_KECLEON_ROUTE120_5
+ return
+
+Route120_EventScript_HideKecleon4:: @ 81A0652
+ setflag FLAG_HIDE_KECLEON_ROUTE120_6
+ return
+
+Route120_EventScript_HideKecleon5:: @ 81A0656
+ setflag FLAG_HIDE_KECLEON_ROUTE120_7
+ return
+
+Route119_EventScript_HideKecleon1:: @ 81A065A
+ setflag FLAG_HIDE_KECLEON_ROUTE119_1
+ return
+
+Route119_EventScript_HideKecleon2:: @ 81A065E
+ setflag FLAG_HIDE_KECLEON_ROUTE119_2
+ return
+
+Movement_KecleonAppears:: @ 81A0662
+ set_visible
+ delay_4
+ set_invisible
+ delay_4
+ set_visible
+ delay_4
+ set_invisible
+ delay_4
+ set_visible
+ delay_8
+ set_invisible
+ delay_8
+ set_visible
+ delay_8
+ set_invisible
+ delay_8
+ set_visible
+ delay_16
+ set_invisible
+ delay_16
+ set_visible
+ step_end
diff --git a/src/crt0.s b/src/crt0.s
index 15698972d..e876c4c10 100644
--- a/src/crt0.s
+++ b/src/crt0.s
@@ -1,3 +1,4 @@
+ .include "constants/global.h"
.include "constants/gba_constants.inc"
.include "constants/misc_constants.inc"
.include "constants/version.inc"