summaryrefslogtreecommitdiff
path: root/include/constants
diff options
context:
space:
mode:
Diffstat (limited to 'include/constants')
-rw-r--r--include/constants/event_objects.h26
-rw-r--r--include/constants/field_effects.h2
-rw-r--r--include/constants/flags.h2
-rw-r--r--include/constants/global.h77
-rw-r--r--include/constants/rgb.h3
-rw-r--r--include/constants/songs.h2
-rw-r--r--include/constants/vars.h8
7 files changed, 106 insertions, 14 deletions
diff --git a/include/constants/event_objects.h b/include/constants/event_objects.h
index 7a97c4caf..9973477da 100644
--- a/include/constants/event_objects.h
+++ b/include/constants/event_objects.h
@@ -241,12 +241,26 @@
#define EVENT_OBJ_GFX_LUGIA 237
#define EVENT_OBJ_GFX_HOOH 238
#define EVENT_OBJ_GFX_BARD_2 239
-#define EVENT_OBJ_GFX_HIPSTER 240
-#define EVENT_OBJ_GFX_TRADER 241
-#define EVENT_OBJ_GFX_STORYTELLER 242
-#define EVENT_OBJ_GFX_GIDDY 243
-#define EVENT_OBJ_GFX_PLACEHOLDER_1 244
-#define EVENT_OBJ_GFX_PLACEHOLDER_2 245
+
+// These are dynamic object gfx ids.
+// They correspond with the values of the VAR_OBJ_GFX_ID_X vars.
+// More info about them in include/constants/vars.h
+#define EVENT_OBJ_GFX_VAR_0 240
+#define EVENT_OBJ_GFX_VAR_1 241
+#define EVENT_OBJ_GFX_VAR_2 242
+#define EVENT_OBJ_GFX_VAR_3 243
+#define EVENT_OBJ_GFX_VAR_4 244
+#define EVENT_OBJ_GFX_VAR_5 245
+#define EVENT_OBJ_GFX_VAR_6 246
+#define EVENT_OBJ_GFX_VAR_7 247
+#define EVENT_OBJ_GFX_VAR_8 248
+#define EVENT_OBJ_GFX_VAR_9 249
+#define EVENT_OBJ_GFX_VAR_A 250
+#define EVENT_OBJ_GFX_VAR_B 251
+#define EVENT_OBJ_GFX_VAR_C 252
+#define EVENT_OBJ_GFX_VAR_D 253
+#define EVENT_OBJ_GFX_VAR_E 254
+#define EVENT_OBJ_GFX_VAR_F 255
#define SHADOW_SIZE_S 0
#define SHADOW_SIZE_M 1
diff --git a/include/constants/field_effects.h b/include/constants/field_effects.h
index b93b98201..add195df8 100644
--- a/include/constants/field_effects.h
+++ b/include/constants/field_effects.h
@@ -67,6 +67,6 @@
#define FLDEFF_USE_TELEPORT 63
#define FLDEFF_64 64
#define FLDEFF_65 65
-#define FLDEFF_66 66
+#define FLDEFF_MOVE_DEOXYS_ROCK 66
#endif
diff --git a/include/constants/flags.h b/include/constants/flags.h
index 0c5fda495..35453384b 100644
--- a/include/constants/flags.h
+++ b/include/constants/flags.h
@@ -1396,7 +1396,7 @@
#define FLAG_SYS_FRONTIER_PASS (SYSTEM_FLAGS + 0x72)
#define FLAG_MAP_SCRIPT_CHECKED_DEOXYS (SYSTEM_FLAGS + 0x73)
-#define FLAG_0x8D4 (SYSTEM_FLAGS + 0x74)
+#define FLAG_DEOXYS_ROCK_COMPLETE (SYSTEM_FLAGS + 0x74)
#define FLAG_ENABLE_SHIP_BIRTH_ISLAND (SYSTEM_FLAGS + 0x75)
#define FLAG_ENABLE_SHIP_FARAWAY_ISLAND (SYSTEM_FLAGS + 0x76)
diff --git a/include/constants/global.h b/include/constants/global.h
new file mode 100644
index 000000000..ff28d6a4b
--- /dev/null
+++ b/include/constants/global.h
@@ -0,0 +1,77 @@
+#ifndef GUARD_CONSTANTS_GLOBAL_H
+#define GUARD_CONSTANTS_GLOBAL_H
+// Invalid Versions show as "----------" in Gen 4 and Gen 5's summary screen.
+// In Gens 6 and 7, invalid versions instead show "a distant land" in the summary screen.
+// In Gen 4 only, migrated Pokemon with Diamond, Pearl, or Platinum's ID show as "----------".
+// Gen 5 and up read Diamond, Pearl, or Platinum's ID as "Sinnoh".
+// In Gen 4 and up, migrated Pokemon with HeartGold or SoulSilver's ID show the otherwise unused "Johto" string.
+#define VERSION_SAPPHIRE 1
+#define VERSION_RUBY 2
+#define VERSION_EMERALD 3
+#define VERSION_FIRE_RED 4
+#define VERSION_LEAF_GREEN 5
+#define VERSION_HEART_GOLD 7
+#define VERSION_SOUL_SILVER 8
+#define VERSION_DIAMOND 10
+#define VERSION_PEARL 11
+#define VERSION_PLATINUM 12
+#define VERSION_GAMECUBE 15
+
+#define LANGUAGE_JAPANESE 1
+#define LANGUAGE_ENGLISH 2
+#define LANGUAGE_FRENCH 3
+#define LANGUAGE_ITALIAN 4
+#define LANGUAGE_GERMAN 5
+#define LANGUAGE_KOREAN 6 // 6 goes unused but the theory is it was meant to be Korean
+#define LANGUAGE_SPANISH 7
+
+#define GAME_VERSION (VERSION_EMERALD)
+#define GAME_LANGUAGE (LANGUAGE_ENGLISH)
+
+// capacities of various saveblock objects
+#define DAYCARE_MON_COUNT 2
+#define POKEBLOCKS_COUNT 40
+#define EVENT_OBJECTS_COUNT 16
+#define BERRY_TREES_COUNT 128
+#define FLAGS_COUNT 300
+#define VARS_COUNT 256
+#define MAIL_COUNT 16
+#define SECRET_BASES_COUNT 20
+#define TV_SHOWS_COUNT 25
+#define POKE_NEWS_COUNT 16
+#define PC_ITEMS_COUNT 50
+#define BAG_ITEMS_COUNT 30
+#define BAG_KEYITEMS_COUNT 30
+#define BAG_POKEBALLS_COUNT 16
+#define BAG_TMHM_COUNT 64
+#define BAG_BERRIES_COUNT 46
+#define EVENT_OBJECT_TEMPLATES_COUNT 64
+
+#define PYRAMID_BAG_ITEMS_COUNT 10
+#define HALL_FACILITIES_COUNT 9 // 7 facilities for single mode + tower double mode + tower multi mode.
+
+// string lengths
+#define ITEM_NAME_LENGTH 14
+#define POKEMON_NAME_LENGTH 10
+#define PLAYER_NAME_LENGTH 7
+#define MAIL_WORDS_COUNT 9
+#define MOVE_NAME_LENGTH 12
+
+#define MALE 0
+#define FEMALE 1
+
+#define OPTIONS_BUTTON_MODE_NORMAL 0
+#define OPTIONS_BUTTON_MODE_LR 1
+#define OPTIONS_BUTTON_MODE_L_EQUALS_A 2
+
+#define OPTIONS_TEXT_SPEED_SLOW 0
+#define OPTIONS_TEXT_SPEED_MID 1
+#define OPTIONS_TEXT_SPEED_FAST 2
+
+#define OPTIONS_SOUND_MONO 0
+#define OPTIONS_SOUND_STEREO 1
+
+#define OPTIONS_BATTLE_STYLE_SHIFT 0
+#define OPTIONS_BATTLE_STYLE_SET 1
+
+#endif // GUARD_CONSTANTS_GLOBAL_H
diff --git a/include/constants/rgb.h b/include/constants/rgb.h
index fd9c5c5a7..80d951f4b 100644
--- a/include/constants/rgb.h
+++ b/include/constants/rgb.h
@@ -2,6 +2,7 @@
#define GUARD_RGB_H
#define RGB(r, g, b) ((r) | ((g) << 5) | ((b) << 10))
+#define RGB2(r, g, b) (((b) << 10) | ((g) << 5) | (r))
#define _RGB(r, g, b) ((((b) & 0x1F) << 10) + (((g) & 0x1F) << 5) + ((r) & 0x1F))
#define RGB_BLACK RGB(0, 0, 0)
@@ -12,6 +13,6 @@
#define RGB_YELLOW RGB(31, 31, 0)
#define RGB_MAGENTA RGB(31, 0, 31)
#define RGB_CYAN RGB(0, 31, 31)
-#define RGB_WHITEALPHA RGB_WHITE | 0x8000
+#define RGB_WHITEALPHA (RGB_WHITE | 0x8000)
#endif // GUARD_RGB_H
diff --git a/include/constants/songs.h b/include/constants/songs.h
index 58a8e725c..a459edd24 100644
--- a/include/constants/songs.h
+++ b/include/constants/songs.h
@@ -536,6 +536,6 @@
#define PH_NURSE_HELD 608
#define PH_NURSE_SOLO 609
-#define MUS_ROUTE_118 0x7FFF // What is this for?
+#define MUS_ROUTE_118 0x7FFF // map is split into 2 music sections. controlled by GetCurrLocationDefaultMusic().
#endif // GUARD_CONSTANTS_SONGS_H
diff --git a/include/constants/vars.h b/include/constants/vars.h
index faffe7c70..30df01f55 100644
--- a/include/constants/vars.h
+++ b/include/constants/vars.h
@@ -68,8 +68,8 @@
#define VAR_FRONTIER_GAMBLER_AMOUNT_BET 0x4032
#define VAR_FRONTIER_GAMBLER_PLACED_BET_F 0x4033
-#define VAR_0x4034 0x4034
-#define VAR_0x4035 0x4035
+#define VAR_DEOXYS_ROCK_STEP_COUNT 0x4034
+#define VAR_DEOXYS_ROCK_LEVEL 0x4035
#define VAR_STORAGE_UNKNOWN 0x4036
#define VAR_0x4037 0x4037
#define VAR_0x4038 0x4038
@@ -81,8 +81,8 @@
#define VAR_ALTERING_CAVE_WILD_SET 0x403E
#define VAR_0x403F 0x403F
#define VAR_DAYS 0x4040
-#define VAR_FANCLUB_UNKNOWN_1 0x4041
-#define VAR_FANCLUB_UNKNOWN_2 0x4042
+#define VAR_FANCLUB_UNKNOWN_1 0x4041
+#define VAR_FANCLUB_UNKNOWN_2 0x4042
#define VAR_DEPT_STORE_FLOOR 0x4043
#define VAR_0x4044 0x4044
#define VAR_POKELOT_PRIZE 0x4045