summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/constants/battle_arena.h6
-rw-r--r--include/constants/battle_dome.h45
-rw-r--r--include/constants/battle_factory.h37
-rw-r--r--include/constants/battle_palace.h24
-rw-r--r--include/constants/battle_pike.h72
-rw-r--r--include/constants/battle_pyramid.h24
-rw-r--r--include/constants/battle_tent.h32
-rw-r--r--include/constants/battle_tower.h36
-rw-r--r--include/constants/vars.h6
-rw-r--r--include/constants/weather.h104
-rw-r--r--include/event_scripts.h2
-rw-r--r--include/field_specials.h2
-rw-r--r--include/field_weather.h86
-rw-r--r--include/global.h16
14 files changed, 316 insertions, 176 deletions
diff --git a/include/constants/battle_arena.h b/include/constants/battle_arena.h
index f91a6f674..e04211115 100644
--- a/include/constants/battle_arena.h
+++ b/include/constants/battle_arena.h
@@ -5,11 +5,11 @@
#define BATTLE_ARENA_FUNC_GET_DATA 1
#define BATTLE_ARENA_FUNC_SET_DATA 2
#define BATTLE_ARENA_FUNC_SAVE 3
-#define BATTLE_ARENA_FUNC_SET_REWARD 4
-#define BATTLE_ARENA_FUNC_GIVE_REWARD 5
+#define BATTLE_ARENA_FUNC_SET_PRIZE 4
+#define BATTLE_ARENA_FUNC_GIVE_PRIZE 5
#define BATTLE_ARENA_FUNC_GET_TRAINER_NAME 6
-#define ARENA_DATA_REWARD 0
+#define ARENA_DATA_PRIZE 0
#define ARENA_DATA_WIN_STREAK 1
#define ARENA_DATA_WIN_STREAK_ACTIVE 2
diff --git a/include/constants/battle_dome.h b/include/constants/battle_dome.h
new file mode 100644
index 000000000..48152cdbb
--- /dev/null
+++ b/include/constants/battle_dome.h
@@ -0,0 +1,45 @@
+#ifndef GUARD_CONSTANTS_BATTLE_DOME_H
+#define GUARD_CONSTANTS_BATTLE_DOME_H
+
+#define BATTLE_DOME_FUNC_INIT 0
+#define BATTLE_DOME_FUNC_GET_DATA 1
+#define BATTLE_DOME_FUNC_SET_DATA 2
+#define BATTLE_DOME_FUNC_GET_ROUND_TEXT 3
+#define BATTLE_DOME_FUNC_GET_OPPONENT_NAME 4
+#define BATTLE_DOME_FUNC_INIT_OPPONENT_PARTY 5
+#define BATTLE_DOME_FUNC_SHOW_OPPONENT_INFO 6
+#define BATTLE_DOME_FUNC_SHOW_TOURNEY_TREE 7
+#define BATTLE_DOME_FUNC_SHOW_PREV_RESULTS_TREE 8
+#define BATTLE_DOME_FUNC_SET_OPPONENT_ID 9
+#define BATTLE_DOME_FUNC_SET_OPPONENT_GFX 10
+#define BATTLE_DOME_FUNC_SHOW_STATIC_TOURNEY_TREE 11
+#define BATTLE_DOME_FUNC_RESOLVE_WINNERS 12
+#define BATTLE_DOME_FUNC_SAVE 13
+#define BATTLE_DOME_FUNC_INCREMENT_STREAK 14
+#define BATTLE_DOME_FUNC_SET_TRAINERS 15
+#define BATTLE_DOME_FUNC_RESET_SKETCH 16
+#define BATTLE_DOME_FUNC_RESTORE_HELD_ITEMS 17
+#define BATTLE_DOME_FUNC_REDUCE_PARTY 18
+#define BATTLE_DOME_FUNC_COMPARE_SEEDS 19
+#define BATTLE_DOME_FUNC_GET_WINNER_NAME 20
+#define BATTLE_DOME_FUNC_21 21
+#define BATTLE_DOME_FUNC_INIT_TRAINERS 22
+
+#define DOME_DATA_WIN_STREAK 0
+#define DOME_DATA_WIN_STREAK_ACTIVE 1
+#define DOME_DATA_2 2
+#define DOME_DATA_3 3
+#define DOME_DATA_4 4
+#define DOME_DATA_5 5
+#define DOME_DATA_6 6
+#define DOME_DATA_7 7
+#define DOME_DATA_8 8
+#define DOME_DATA_9 9
+
+#define DOME_ROUND1 0
+#define DOME_ROUND2 1
+#define DOME_SEMIFINAL 2
+#define DOME_FINAL 3
+#define DOME_ROUNDS_COUNT 4
+
+#endif //GUARD_CONSTANTS_BATTLE_DOME_H
diff --git a/include/constants/battle_factory.h b/include/constants/battle_factory.h
new file mode 100644
index 000000000..b3aa57449
--- /dev/null
+++ b/include/constants/battle_factory.h
@@ -0,0 +1,37 @@
+#ifndef GUARD_CONSTANTS_BATTLE_FACTORY_H
+#define GUARD_CONSTANTS_BATTLE_FACTORY_H
+
+#define FACTORY_STYLE_NONE 0
+#define FACTORY_STYLE_PREPARATION 1
+#define FACTORY_STYLE_SLOW_STEADY 2
+#define FACTORY_STYLE_ENDURANCE 3
+#define FACTORY_STYLE_HIGH_RISK 4
+#define FACTORY_STYLE_WEAKENING 5
+#define FACTORY_STYLE_UNPREDICTABLE 6
+#define FACTORY_STYLE_WEATHER 7
+#define FACTORY_NUM_STYLES 8
+
+
+#define BATTLE_FACTORY_FUNC_INIT 0
+#define BATTLE_FACTORY_FUNC_GET_DATA 1
+#define BATTLE_FACTORY_FUNC_SET_DATA 2
+#define BATTLE_FACTORY_FUNC_SAVE 3
+#define BATTLE_FACTORY_FUNC_NULL 4
+#define BATTLE_FACTORY_FUNC_NULL2 5
+#define BATTLE_FACTORY_FUNC_SELECT_RENT_MONS 6
+#define BATTLE_FACTORY_FUNC_SWAP_RENT_MONS 7
+#define BATTLE_FACTORY_FUNC_SET_SWAPPED 8
+#define BATTLE_FACTORY_FUNC_SET_OPPONENT_MONS 9
+#define BATTLE_FACTORY_FUNC_SET_PARTIES 10
+#define BATTLE_FACTORY_FUNC_SET_OPPONENT_GFX 11
+#define BATTLE_FACTORY_FUNC_GENERATE_OPPONENT_MONS 12
+#define BATTLE_FACTORY_FUNC_GENERATE_RENTAL_MONS 13
+#define BATTLE_FACTORY_FUNC_GET_OPPONENT_MON_TYPE 14
+#define BATTLE_FACTORY_FUNC_GET_OPPONENT_STYLE 15
+#define BATTLE_FACTORY_FUNC_RESET_HELD_ITEMS 16
+
+#define FACTORY_DATA_WIN_STREAK 1
+#define FACTORY_DATA_WIN_STREAK_ACTIVE 2
+#define FACTORY_DATA_WIN_STREAK_SWAPS 3
+
+#endif // GUARD_CONSTANTS_BATTLE_FACTORY_H
diff --git a/include/constants/battle_palace.h b/include/constants/battle_palace.h
index 027adf7c8..db9855101 100644
--- a/include/constants/battle_palace.h
+++ b/include/constants/battle_palace.h
@@ -1,15 +1,19 @@
#ifndef GUARD_CONSTANTS_BATTLE_PALACE_H
#define GUARD_CONSTANTS_BATTLE_PALACE_H
-#define BATTLE_PALACE_FUNC_0 0
-#define BATTLE_PALACE_FUNC_1 1
-#define BATTLE_PALACE_FUNC_2 2
-#define BATTLE_PALACE_FUNC_3 3
-#define BATTLE_PALACE_FUNC_4 4
-#define BATTLE_PALACE_FUNC_GET_OPPONENT_INTRO 5
-#define BATTLE_PALACE_FUNC_6 6
-#define BATTLE_PALACE_FUNC_7 7
-#define BATTLE_PALACE_FUNC_8 8
-#define BATTLE_PALACE_FUNC_9 9
+#define BATTLE_PALACE_FUNC_INIT 0
+#define BATTLE_PALACE_FUNC_GET_DATA 1
+#define BATTLE_PALACE_FUNC_SET_DATA 2
+#define BATTLE_PALACE_FUNC_GET_COMMENT_ID 3
+#define BATTLE_PALACE_FUNC_SET_OPPONENT 4
+#define BATTLE_PALACE_FUNC_GET_OPPONENT_INTRO 5
+#define BATTLE_PALACE_FUNC_INCREMENT_STREAK 6
+#define BATTLE_PALACE_FUNC_SAVE 7
+#define BATTLE_PALACE_FUNC_SET_PRIZE 8
+#define BATTLE_PALACE_FUNC_GIVE_PRIZE 9
+
+#define PALACE_DATA_PRIZE 0
+#define PALACE_DATA_WIN_STREAK 1
+#define PALACE_DATA_WIN_STREAK_ACTIVE 2
#endif //GUARD_CONSTANTS_BATTLE_PALACE_H
diff --git a/include/constants/battle_pike.h b/include/constants/battle_pike.h
index 4fb20550e..c25f76aaa 100644
--- a/include/constants/battle_pike.h
+++ b/include/constants/battle_pike.h
@@ -23,38 +23,50 @@
#define PIKE_HINT_BRAIN 4
// For the room with a status effect.
-#define PIKE_STATUS_KIRLIA 0
+#define PIKE_STATUS_KIRLIA 0
#define PIKE_STATUS_DUSCLOPS 1
+#define PIKE_STATUS_FREEZE 0
+#define PIKE_STATUS_BURN 1
+#define PIKE_STATUS_TOXIC 2
+#define PIKE_STATUS_PARALYSIS 3
+#define PIKE_STATUS_SLEEP 4
+
// Function IDs for sBattlePikeFunctions / CallBattlePikeFunction
-#define BATTLE_PIKE_FUNC_SET_ROOM_TYPE 0
-#define BATTLE_PIKE_FUNC_GET_DATA 1
-#define BATTLE_PIKE_FUNC_SET_DATA 2
-#define BATTLE_PIKE_FUNC_IS_FINAL_ROOM 3
-#define BATTLE_PIKE_FUNC_SET_ROOM_OBJECTS 4
-#define BATTLE_PIKE_FUNC_GET_ROOM_TYPE 5
-#define BATTLE_PIKE_FUNC_6 6
-#define BATTLE_PIKE_FUNC_7 7
-#define BATTLE_PIKE_FUNC_8 8
-#define BATTLE_PIKE_FUNC_NULL_9 9
-#define BATTLE_PIKE_FUNC_NULL_10 10
-#define BATTLE_PIKE_FUNC_GET_ROOM_STATUS 11
-#define BATTLE_PIKE_FUNC_GET_ROOM_STATUS_MON 12
-#define BATTLE_PIKE_FUNC_HEAL_ONE_TWO_MONS 13
-#define BATTLE_PIKE_FUNC_BUFFER_NPC_MSG 14
-#define BATTLE_PIKE_FUNC_STATUS_SCREEN_FADE 15
-#define BATTLE_PIKE_FUNC_IS_IN 16
-#define BATTLE_PIKE_FUNC_SET_HINT_ROOM 17
-#define BATTLE_PIKE_FUNC_GET_HINT_ROOM_ID 18
-#define BATTLE_PIKE_FUNC_GET_ROOM_TYPE_HINT 19
-#define BATTLE_PIKE_FUNC_CLEAR_TRAINER_IDS 20
-#define BATTLE_PIKE_FUNC_BUFFER_RECORD_MIX_MSG 21
-#define BATTLE_PIKE_FUNC_GET_QUEEN_FIGHT_TYPE 22
-#define BATTLE_PIKE_FUNC_HEAL_MONS_BEFORE_QUEEN 23
-#define BATTLE_PIKE_FUNC_SET_HEALING_ROOMS_DISABLED 24
-#define BATTLE_PIKE_FUNC_IS_PARTY_FULL_HEALTH 25
-#define BATTLE_PIKE_FUNC_SAVE_MON_HELD_ITEMS 26
-#define BATTLE_PIKE_FUNC_LOAD_MON_HELD_ITEMS 27
-#define BATTLE_PIKE_FUNC_INIT_CHALLENGE 28
+#define BATTLE_PIKE_FUNC_SET_ROOM_TYPE 0
+#define BATTLE_PIKE_FUNC_GET_DATA 1
+#define BATTLE_PIKE_FUNC_SET_DATA 2
+#define BATTLE_PIKE_FUNC_IS_FINAL_ROOM 3
+#define BATTLE_PIKE_FUNC_SET_ROOM_OBJECTS 4
+#define BATTLE_PIKE_FUNC_GET_ROOM_TYPE 5
+#define BATTLE_PIKE_FUNC_SET_IN_WILD_MON_ROOM 6
+#define BATTLE_PIKE_FUNC_CLEAR_IN_WILD_MON_ROOM 7
+#define BATTLE_PIKE_FUNC_SAVE 8
+#define BATTLE_PIKE_FUNC_NULL_9 9
+#define BATTLE_PIKE_FUNC_NULL_10 10
+#define BATTLE_PIKE_FUNC_GET_ROOM_STATUS 11
+#define BATTLE_PIKE_FUNC_GET_ROOM_STATUS_MON 12
+#define BATTLE_PIKE_FUNC_HEAL_ONE_TWO_MONS 13
+#define BATTLE_PIKE_FUNC_BUFFER_NPC_MSG 14
+#define BATTLE_PIKE_FUNC_STATUS_SCREEN_FADE 15
+#define BATTLE_PIKE_FUNC_IS_IN 16
+#define BATTLE_PIKE_FUNC_SET_HINT_ROOM 17
+#define BATTLE_PIKE_FUNC_GET_HINT_ROOM_ID 18
+#define BATTLE_PIKE_FUNC_GET_ROOM_TYPE_HINT 19
+#define BATTLE_PIKE_FUNC_CLEAR_TRAINER_IDS 20
+#define BATTLE_PIKE_FUNC_GET_TRAINER_INTRO 21
+#define BATTLE_PIKE_FUNC_GET_QUEEN_FIGHT_TYPE 22
+#define BATTLE_PIKE_FUNC_HEAL_MONS_BEFORE_QUEEN 23
+#define BATTLE_PIKE_FUNC_SET_HEAL_ROOMS_DISABLED 24
+#define BATTLE_PIKE_FUNC_IS_PARTY_FULL_HEALTH 25
+#define BATTLE_PIKE_FUNC_SAVE_HELD_ITEMS 26
+#define BATTLE_PIKE_FUNC_RESET_HELD_ITEMS 27
+#define BATTLE_PIKE_FUNC_INIT 28
+
+#define PIKE_DATA_PRIZE 0
+#define PIKE_DATA_WIN_STREAK 1
+#define PIKE_DATA_RECORD_STREAK 2
+#define PIKE_DATA_TOTAL_STREAKS 3
+#define PIKE_DATA_WIN_STREAK_ACTIVE 4
#endif // GUARD_CONSTANTS_BATTLE_PIKE_H
diff --git a/include/constants/battle_pyramid.h b/include/constants/battle_pyramid.h
index 0d59ae94d..cfe6e891e 100644
--- a/include/constants/battle_pyramid.h
+++ b/include/constants/battle_pyramid.h
@@ -27,23 +27,35 @@
#define OBJ_POSITIONS_NEAR_EXIT 4
// Functions IDs for sBattlePyramidFunctions / CallBattlePyramidFunction
-#define BATTLE_PYRAMID_FUNC_INIT_CHALLENGE 0
+#define BATTLE_PYRAMID_FUNC_INIT 0
#define BATTLE_PYRAMID_FUNC_GET_DATA 1
#define BATTLE_PYRAMID_FUNC_SET_DATA 2
-#define BATTLE_PYRAMID_FUNC_3 3
-#define BATTLE_PYRAMID_FUNC_SET_REWARD 4
-#define BATTLE_PYRAMID_FUNC_GIVE_REWARD 5
+#define BATTLE_PYRAMID_FUNC_SAVE 3
+#define BATTLE_PYRAMID_FUNC_SET_PRIZE 4
+#define BATTLE_PYRAMID_FUNC_GIVE_PRIZE 5 // unused
#define BATTLE_PYRAMID_FUNC_SEED_FLOOR 6
#define BATTLE_PYRAMID_FUNC_SET_ITEM 7
#define BATTLE_PYRAMID_FUNC_HIDE_ITEM 8
#define BATTLE_PYRAMID_FUNC_INIT_TRAINERS 9
#define BATTLE_PYRAMID_FUNC_SHOW_HINT_TEXT 10
-#define BATTLE_PYRAMID_FUNC_UPDATE_STREAK 11
+#define BATTLE_PYRAMID_FUNC_UPDATE_STREAK 11 // unused
#define BATTLE_PYRAMID_FUNC_IS_IN 12
#define BATTLE_PYRAMID_FUNC_UPDATE_LIGHT 13
#define BATTLE_PYRAMID_FUNC_CLEAR_HELD_ITEMS 14
#define BATTLE_PYRAMID_FUNC_SET_FLOOR_PALETTE 15
-#define BATTLE_PYRAMID_FUNC_16 16
+#define BATTLE_PYRAMID_FUNC_16 16 // unused
#define BATTLE_PYRAMID_FUNC_RESTORE_PARTY 17
+#define PYRAMID_DATA_PRIZE 0
+#define PYRAMID_DATA_WIN_STREAK 1
+#define PYRAMID_DATA_WIN_STREAK_ACTIVE 2
+#define PYRAMID_DATA_WIN_STREAK_50 3 // the below streak data are redundant with the above when frontier.lvlMode is correct
+#define PYRAMID_DATA_WIN_STREAK_OPEN 4
+#define PYRAMID_DATA_WIN_STREAK_ACTIVE_50 5
+#define PYRAMID_DATA_WIN_STREAK_ACTIVE_OPEN 6
+#define PYRAMID_DATA_TRAINER_FLAGS 7
+
+#define PYRAMID_LIGHT_SET_RADIUS 0
+#define PYRAMID_LIGHT_INCR_RADIUS 1
+
#endif // GUARD_CONSTANTS_BATTLE_PYRAMID_H
diff --git a/include/constants/battle_tent.h b/include/constants/battle_tent.h
new file mode 100644
index 000000000..666ada6bd
--- /dev/null
+++ b/include/constants/battle_tent.h
@@ -0,0 +1,32 @@
+#ifndef GUARD_CONSTANTS_BATTLE_TENT_H
+#define GUARD_CONSTANTS_BATTLE_TENT_H
+
+#define VERDANTURF_TENT_FUNC_INIT 0
+#define VERDANTURF_TENT_FUNC_GET_PRIZE 1
+#define VERDANTURF_TENT_FUNC_SET_PRIZE 2
+#define VERDANTURF_TENT_FUNC_SET_OPPONENT_GFX 3
+#define VERDANTURF_TENT_FUNC_GET_OPPONENT_INTRO 4
+#define VERDANTURF_TENT_FUNC_SAVE 5
+#define VERDANTURF_TENT_FUNC_SET_RANDOM_PRIZE 6
+#define VERDANTURF_TENT_FUNC_GIVE_PRIZE 7
+
+#define FALLARBOR_TENT_FUNC_INIT 0
+#define FALLARBOR_TENT_FUNC_GET_PRIZE 1
+#define FALLARBOR_TENT_FUNC_SET_PRIZE 2
+#define FALLARBOR_TENT_FUNC_SAVE 3
+#define FALLARBOR_TENT_FUNC_SET_RANDOM_PRIZE 4
+#define FALLARBOR_TENT_FUNC_GIVE_PRIZE 5
+#define FALLARBOR_TENT_FUNC_GET_OPPONENT_NAME 6
+
+#define SLATEPORT_TENT_FUNC_INIT 0
+#define SLATEPORT_TENT_FUNC_GET_PRIZE 1
+#define SLATEPORT_TENT_FUNC_SET_PRIZE 2
+#define SLATEPORT_TENT_FUNC_SAVE 3
+#define SLATEPORT_TENT_FUNC_SET_RANDOM_PRIZE 4
+#define SLATEPORT_TENT_FUNC_GIVE_PRIZE 5
+#define SLATEPORT_TENT_FUNC_SELECT_RENT_MONS 6
+#define SLATEPORT_TENT_FUNC_SWAP_RENT_MONS 7
+#define SLATEPORT_TENT_FUNC_GENERATE_OPPONENT_MONS 8
+#define SLATEPORT_TENT_FUNC_GENERATE_RENTAL_MONS 9
+
+#endif // GUARD_CONSTANTS_BATTLE_TENT_H
diff --git a/include/constants/battle_tower.h b/include/constants/battle_tower.h
index 508656fab..6afd8a949 100644
--- a/include/constants/battle_tower.h
+++ b/include/constants/battle_tower.h
@@ -1,21 +1,25 @@
#ifndef GUARD_CONSTANTS_BATTLE_TOWER_H
#define GUARD_CONSTANTS_BATTLE_TOWER_H
-#define BATTLE_TOWER_FUNC_0 0
-#define BATTLE_TOWER_FUNC_1 1
-#define BATTLE_TOWER_FUNC_2 2
-#define BATTLE_TOWER_FUNC_CHOOSE_TRAINER 3
-#define BATTLE_TOWER_FUNC_4 4
-#define BATTLE_TOWER_FUNC_GIVE_RIBBONS 5
-#define BATTLE_TOWER_FUNC_SAVE 6
-#define BATTLE_TOWER_FUNC_7 7
-#define BATTLE_TOWER_FUNC_NOP 8
-#define BATTLE_TOWER_FUNC_NOP2 9
-#define BATTLE_TOWER_FUNC_10 10
-#define BATTLE_TOWER_FUNC_11 11
-#define BATTLE_TOWER_FUNC_12 12
-#define BATTLE_TOWER_FUNC_13 13
-#define BATTLE_TOWER_FUNC_14 14
-#define BATTLE_TOWER_FUNC_15 15
+#define BATTLE_TOWER_FUNC_INIT 0
+#define BATTLE_TOWER_FUNC_GET_DATA 1
+#define BATTLE_TOWER_FUNC_SET_DATA 2
+#define BATTLE_TOWER_FUNC_SET_OPPONENT 3
+#define BATTLE_TOWER_FUNC_SET_BATTLE_WON 4
+#define BATTLE_TOWER_FUNC_GIVE_RIBBONS 5
+#define BATTLE_TOWER_FUNC_SAVE 6
+#define BATTLE_TOWER_FUNC_GET_OPPONENT_INTRO 7
+#define BATTLE_TOWER_FUNC_NOP 8
+#define BATTLE_TOWER_FUNC_NOP2 9
+#define BATTLE_TOWER_FUNC_10 10
+#define BATTLE_TOWER_FUNC_11 11
+#define BATTLE_TOWER_FUNC_12 12
+#define BATTLE_TOWER_FUNC_13 13
+#define BATTLE_TOWER_FUNC_14 14
+#define BATTLE_TOWER_FUNC_SET_INTERVIEW_DATA 15
+
+#define TOWER_DATA_WIN_STREAK 1
+#define TOWER_DATA_WIN_STREAK_ACTIVE 2
+#define TOWER_DATA_LVL_MODE 3
#endif //GUARD_CONSTANTS_BATTLE_TOWER_H
diff --git a/include/constants/vars.h b/include/constants/vars.h
index d39323831..d078cf841 100644
--- a/include/constants/vars.h
+++ b/include/constants/vars.h
@@ -69,9 +69,9 @@
#define VAR_DEOXYS_ROCK_STEP_COUNT 0x4034
#define VAR_DEOXYS_ROCK_LEVEL 0x4035
#define VAR_PC_BOX_TO_SEND_MON 0x4036
-#define VAR_UNUSUAL_WEATHER_LOCATION 0x4037
-#define VAR_UNUSUAL_WEATHER_STEP_COUNTER 0x4038
-#define VAR_SHOULD_END_UNUSUAL_WEATHER 0x4039
+#define VAR_ABNORMAL_WEATHER_LOCATION 0x4037
+#define VAR_ABNORMAL_WEATHER_STEP_COUNTER 0x4038
+#define VAR_SHOULD_END_ABNORMAL_WEATHER 0x4039
#define VAR_FARAWAY_ISLAND_STEP_COUNTER 0x403A
#define VAR_REGICE_STEPS_1 0x403B
#define VAR_REGICE_STEPS_2 0x403C
diff --git a/include/constants/weather.h b/include/constants/weather.h
index b01cfb390..98a0a2e1e 100644
--- a/include/constants/weather.h
+++ b/include/constants/weather.h
@@ -1,66 +1,66 @@
#ifndef GUARD_CONSTANTS_WEATHER_H
#define GUARD_CONSTANTS_WEATHER_H
-#define WEATHER_NONE 0
-#define WEATHER_CLOUDS 1
-#define WEATHER_SUNNY 2
-#define WEATHER_RAIN_LIGHT 3
-#define WEATHER_SNOW 4
-#define WEATHER_RAIN_MED 5
-#define WEATHER_FOG_1 6
-#define WEATHER_ASH 7
-#define WEATHER_SANDSTORM 8
-#define WEATHER_FOG_2 9
-#define WEATHER_FOG_3 10
-#define WEATHER_SHADE 11
-#define WEATHER_DROUGHT 12
-#define WEATHER_RAIN_HEAVY 13
-#define WEATHER_BUBBLES 14
-#define WEATHER_ALTERNATING 15
-#define WEATHER_ROUTE119_CYCLE 20
-#define WEATHER_ROUTE123_CYCLE 21
+#define WEATHER_NONE 0
+#define WEATHER_SUNNY_CLOUDS 1
+#define WEATHER_SUNNY 2
+#define WEATHER_RAIN 3
+#define WEATHER_SNOW 4 // Unused
+#define WEATHER_RAIN_THUNDERSTORM 5
+#define WEATHER_FOG_HORIZONTAL 6
+#define WEATHER_VOLCANIC_ASH 7
+#define WEATHER_SANDSTORM 8
+#define WEATHER_FOG_DIAGONAL 9 // Unused
+#define WEATHER_UNDERWATER 10 // Unused
+#define WEATHER_SHADE 11 // Original name was closer to WEATHER_CLOUDY/OVERCAST
+#define WEATHER_DROUGHT 12
+#define WEATHER_DOWNPOUR 13
+#define WEATHER_UNDERWATER_BUBBLES 14
+#define WEATHER_ABNORMAL 15 // The alternating weather during Groudon/Kyogre conflict
+#define WEATHER_ROUTE119_CYCLE 20
+#define WEATHER_ROUTE123_CYCLE 21
// These are used in maps' coord_weather_event entries.
// They are not a one-to-one mapping with the engine's
// internal weather constants above.
-#define COORD_EVENT_WEATHER_CLOUDS 1
-#define COORD_EVENT_WEATHER_SUNNY 2
-#define COORD_EVENT_WEATHER_RAIN_LIGHT 3
-#define COORD_EVENT_WEATHER_SNOW 4
-#define COORD_EVENT_WEATHER_RAIN_MED 5
-#define COORD_EVENT_WEATHER_FOG_1 6
-#define COORD_EVENT_WEATHER_FOG_2 7
-#define COORD_EVENT_WEATHER_ASH 8
-#define COORD_EVENT_WEATHER_SANDSTORM 9
-#define COORD_EVENT_WEATHER_SHADE 10
-#define COORD_EVENT_WEATHER_DROUGHT 11
-#define COORD_EVENT_WEATHER_ROUTE119_CYCLE 20
-#define COORD_EVENT_WEATHER_ROUTE123_CYCLE 21
+#define COORD_EVENT_WEATHER_SUNNY_CLOUDS 1
+#define COORD_EVENT_WEATHER_SUNNY 2
+#define COORD_EVENT_WEATHER_RAIN 3
+#define COORD_EVENT_WEATHER_SNOW 4
+#define COORD_EVENT_WEATHER_RAIN_THUNDERSTORM 5
+#define COORD_EVENT_WEATHER_FOG_HORIZONTAL 6
+#define COORD_EVENT_WEATHER_FOG_DIAGONAL 7
+#define COORD_EVENT_WEATHER_VOLCANIC_ASH 8
+#define COORD_EVENT_WEATHER_SANDSTORM 9
+#define COORD_EVENT_WEATHER_SHADE 10
+#define COORD_EVENT_WEATHER_DROUGHT 11
+#define COORD_EVENT_WEATHER_ROUTE119_CYCLE 20
+#define COORD_EVENT_WEATHER_ROUTE123_CYCLE 21
-// These are the "unusual weather events" that are used
+// These are the "abnormal weather events" that are used
// to find Kyogre and Groudon.
-#define UNUSUAL_WEATHER_COUNT_PER_LEGENDARY 8
-#define UNUSUAL_WEATHER_GROUDON_LOCATIONS_START 1
-#define UNUSUAL_WEATHER_KYOGRE_LOCATIONS_START 1 + UNUSUAL_WEATHER_COUNT_PER_LEGENDARY
+#define ABNORMAL_WEATHER_COUNT_PER_LEGENDARY 8
+#define ABNORMAL_WEATHER_GROUDON_LOCATIONS_START 1
+#define ABNORMAL_WEATHER_KYOGRE_LOCATIONS_START 1 + ABNORMAL_WEATHER_COUNT_PER_LEGENDARY
-#define UNUSUAL_WEATHER_NONE 0
+#define ABNORMAL_WEATHER_NONE 0
// Groudon locations
-#define UNUSUAL_WEATHER_ROUTE_114_NORTH 1
-#define UNUSUAL_WEATHER_ROUTE_114_SOUTH 2
-#define UNUSUAL_WEATHER_ROUTE_115_WEST 3
-#define UNUSUAL_WEATHER_ROUTE_115_EAST 4
-#define UNUSUAL_WEATHER_ROUTE_116_NORTH 5
-#define UNUSUAL_WEATHER_ROUTE_116_SOUTH 6
-#define UNUSUAL_WEATHER_ROUTE_118_EAST 7
-#define UNUSUAL_WEATHER_ROUTE_118_WEST 8
+#define ABNORMAL_WEATHER_ROUTE_114_NORTH 1
+#define ABNORMAL_WEATHER_ROUTE_114_SOUTH 2
+#define ABNORMAL_WEATHER_ROUTE_115_WEST 3
+#define ABNORMAL_WEATHER_ROUTE_115_EAST 4
+#define ABNORMAL_WEATHER_ROUTE_116_NORTH 5
+#define ABNORMAL_WEATHER_ROUTE_116_SOUTH 6
+#define ABNORMAL_WEATHER_ROUTE_118_EAST 7
+#define ABNORMAL_WEATHER_ROUTE_118_WEST 8
// Kyogre locations
-#define UNUSUAL_WEATHER_ROUTE_105_NORTH 9
-#define UNUSUAL_WEATHER_ROUTE_105_SOUTH 10
-#define UNUSUAL_WEATHER_ROUTE_125_WEST 11
-#define UNUSUAL_WEATHER_ROUTE_125_EAST 12
-#define UNUSUAL_WEATHER_ROUTE_127_NORTH 13
-#define UNUSUAL_WEATHER_ROUTE_127_SOUTH 14
-#define UNUSUAL_WEATHER_ROUTE_129_WEST 15
-#define UNUSUAL_WEATHER_ROUTE_129_EAST 16
+#define ABNORMAL_WEATHER_ROUTE_105_NORTH 9
+#define ABNORMAL_WEATHER_ROUTE_105_SOUTH 10
+#define ABNORMAL_WEATHER_ROUTE_125_WEST 11
+#define ABNORMAL_WEATHER_ROUTE_125_EAST 12
+#define ABNORMAL_WEATHER_ROUTE_127_NORTH 13
+#define ABNORMAL_WEATHER_ROUTE_127_SOUTH 14
+#define ABNORMAL_WEATHER_ROUTE_129_WEST 15
+#define ABNORMAL_WEATHER_ROUTE_129_EAST 16
#endif // GUARD_CONSTANTS_WEATHER_H
diff --git a/include/event_scripts.h b/include/event_scripts.h
index 3e4251cf6..aa76155c2 100644
--- a/include/event_scripts.h
+++ b/include/event_scripts.h
@@ -546,7 +546,7 @@ extern const u8 EventScript_FallDownHole[];
extern const u8 BattleFrontier_BattlePyramidEmptySquare_EventScript_252BE8[];
extern const u8 EventScript_FieldPoison[];
extern const u8 EventScript_EggHatch[];
-extern const u8 UnusualWeather_EventScript_EndEventAndCleanup_1[];
+extern const u8 AbnormalWeather_EventScript_EndEventAndCleanup_1[];
extern const u8 IslandCave_EventScript_OpenRegiEntrance[];
extern const u8 MauvilleCity_EventScript_RegisterWallyCall[];
extern const u8 Route119_EventScript_ScottWonAtFortreeGymCall[];
diff --git a/include/field_specials.h b/include/field_specials.h
index a4d53a9a6..79fa89bb1 100644
--- a/include/field_specials.h
+++ b/include/field_specials.h
@@ -10,7 +10,7 @@ u16 GetPCBoxToSendMon(void);
bool8 InMultiBattleRoom(void);
void UpdateTrainerFansAfterLinkBattle(void);
void IncrementBirthIslandRockStepCount(void);
-bool8 UnusualWeatherHasExpired(void);
+bool8 AbnormalWeatherHasExpired(void);
bool8 ShouldDoBrailleRegicePuzzle(void);
bool32 ShouldDoWallyCall(void);
bool32 ShouldDoScottFortreeCall(void);
diff --git a/include/field_weather.h b/include/field_weather.h
index 3a84a8a73..e587da233 100644
--- a/include/field_weather.h
+++ b/include/field_weather.h
@@ -3,13 +3,13 @@
#include "sprite.h"
-#define MAX_RAIN_SPRITES 24
-#define NUM_CLOUD_SPRITES 3
-#define NUM_FOG1_SPRITES 20
-#define NUM_ASH_SPRITES 20
-#define NUM_FOG2_SPRITES 20
-#define NUM_SANDSTORM_SPRITES 20
-#define NUM_SWIRL_SANDSTORM_SPRITES 5
+#define MAX_RAIN_SPRITES 24
+#define NUM_CLOUD_SPRITES 3
+#define NUM_FOG_HORIZONTAL_SPRITES 20
+#define NUM_ASH_SPRITES 20
+#define NUM_FOG_DIAGONAL_SPRITES 20
+#define NUM_SANDSTORM_SPRITES 20
+#define NUM_SWIRL_SANDSTORM_SPRITES 5
// Controls how the weather should be changing the screen palettes.
enum
@@ -42,9 +42,9 @@ struct Weather
struct
{
u8 filler0[0xA0];
- struct Sprite *fog1Sprites[NUM_FOG1_SPRITES];
+ struct Sprite *fogHSprites[NUM_FOG_HORIZONTAL_SPRITES];
struct Sprite *ashSprites[NUM_ASH_SPRITES];
- struct Sprite *fog2Sprites[NUM_FOG2_SPRITES];
+ struct Sprite *fogDSprites[NUM_FOG_DIAGONAL_SPRITES];
struct Sprite *sandstormSprites1[NUM_SANDSTORM_SPRITES];
struct Sprite *sandstormSprites2[NUM_SWIRL_SANDSTORM_SPRITES];
} s2;
@@ -75,7 +75,7 @@ struct Weather
u8 targetRainSpriteCount;
u8 rainSpriteCount;
u8 rainSpriteVisibleDelay;
- u8 isHeavyRain;
+ u8 isDownpour;
u8 rainStrength;
/*0x6DE*/ u8 cloudSpritesCreated;
u8 filler_6DF[1];
@@ -89,12 +89,12 @@ struct Weather
u8 unknown_6EB;
u8 unknown_6EC;
u8 thunderTriggered;
- u16 fog1ScrollPosX;
- u16 fog1ScrollCounter;
- u16 fog1ScrollOffset;
+ u16 fogHScrollPosX;
+ u16 fogHScrollCounter;
+ u16 fogHScrollOffset;
u8 lightenedFogSpritePals[6];
u8 lightenedFogSpritePalsCount;
- u8 fog1SpritesCreated;
+ u8 fogHSpritesCreated;
u16 ashBaseSpritesX;
u16 unknown_6FE;
u8 ashSpritesCreated;
@@ -108,13 +108,13 @@ struct Weather
u16 sandstormWaveCounter;
u8 sandstormSpritesCreated;
u8 sandstormSwirlSpritesCreated;
- u16 fog2BaseSpritesX;
- u16 fog2PosY;
- u16 fog2ScrollXCounter;
- u16 fog2ScrollYCounter;
- u16 fog2XOffset;
- u16 fog2YOffset;
- u8 fog2SpritesCreated;
+ u16 fogDBaseSpritesX;
+ u16 fogDPosY;
+ u16 fogDScrollXCounter;
+ u16 fogDScrollYCounter;
+ u16 fogDXOffset;
+ u16 fogDYOffset;
+ u8 fogDSpritesCreated;
u8 filler_725[1];
u16 bubblesDelayCounter;
u16 bubblesDelayIndex;
@@ -145,7 +145,7 @@ extern struct Weather *const gWeatherPtr;
extern const u16 gUnknown_083970E8[];
// field_weather_effect.c
-extern const u8 gWeatherFog1Tiles[];
+extern const u8 gWeatherFogHorizontalTiles[];
void StartWeather(void);
void SetNextWeather(u8 weather);
@@ -186,22 +186,22 @@ void Sunny_InitVars(void);
void Sunny_Main(void);
void Sunny_InitAll(void);
bool8 Sunny_Finish(void);
-void LightRain_InitVars(void);
-void LightRain_Main(void);
-void LightRain_InitAll(void);
-bool8 LightRain_Finish(void);
+void Rain_InitVars(void);
+void Rain_Main(void);
+void Rain_InitAll(void);
+bool8 Rain_Finish(void);
void Snow_InitVars(void);
void Snow_Main(void);
void Snow_InitAll(void);
bool8 Snow_Finish(void);
-void MedRain_InitVars(void);
-void Rain_Main(void);
-void MedRain_InitAll(void);
-bool8 Rain_Finish(void);
-void Fog1_InitVars(void);
-void Fog1_Main(void);
-void Fog1_InitAll(void);
-bool8 Fog1_Finish(void);
+void Thunderstorm_InitVars(void);
+void Thunderstorm_Main(void);
+void Thunderstorm_InitAll(void);
+bool8 Thunderstorm_Finish(void);
+void FogHorizontal_InitVars(void);
+void FogHorizontal_Main(void);
+void FogHorizontal_InitAll(void);
+bool8 FogHorizontal_Finish(void);
void Ash_InitVars(void);
void Ash_Main(void);
void Ash_InitAll(void);
@@ -210,14 +210,10 @@ void Sandstorm_InitVars(void);
void Sandstorm_Main(void);
void Sandstorm_InitAll(void);
bool8 Sandstorm_Finish(void);
-void Fog2_InitVars(void);
-void Fog2_Main(void);
-void Fog2_InitAll(void);
-bool8 Fog2_Finish(void);
-void Fog1_InitVars(void);
-void Fog1_Main(void);
-void Fog1_InitAll(void);
-bool8 Fog1_Finish(void);
+void FogDiagonal_InitVars(void);
+void FogDiagonal_Main(void);
+void FogDiagonal_InitAll(void);
+bool8 FogDiagonal_Finish(void);
void Shade_InitVars(void);
void Shade_Main(void);
void Shade_InitAll(void);
@@ -226,10 +222,8 @@ void Drought_InitVars(void);
void Drought_Main(void);
void Drought_InitAll(void);
bool8 Drought_Finish(void);
-void HeavyRain_InitVars(void);
-void Rain_Main(void);
-void HeavyRain_InitAll(void);
-bool8 Rain_Finish(void);
+void Downpour_InitVars(void);
+void Downpour_InitAll(void);
void Bubbles_InitVars(void);
void Bubbles_Main(void);
void Bubbles_InitAll(void);
diff --git a/include/global.h b/include/global.h
index 61186d084..557bdc1c5 100644
--- a/include/global.h
+++ b/include/global.h
@@ -363,18 +363,18 @@ struct BattleFrontier
/*0xD1C*/ u16 domeTotalChampionships[2][2];
/*0xD24*/ struct BattleDomeTrainer domeTrainers[DOME_TOURNAMENT_TRAINERS_COUNT];
/*0xD64*/ u16 domeMonIds[DOME_TOURNAMENT_TRAINERS_COUNT][FRONTIER_PARTY_SIZE];
- /*0xDC4*/ u16 field_DC4;
- /*0xDC6*/ u16 field_DC6;
+ /*0xDC4*/ u16 unused_DC4;
+ /*0xDC6*/ u16 palacePrize;
/*0xDC8*/ u16 palaceWinStreaks[2][2];
/*0xDD0*/ u16 palaceRecordWinStreaks[2][2];
- /*0xDD8*/ u16 arenaRewardItem;
+ /*0xDD8*/ u16 arenaPrize;
/*0xDDA*/ u16 arenaWinStreaks[2];
/*0xDDE*/ u16 arenaRecordStreaks[2];
/*0xDE2*/ u16 factoryWinStreaks[2][2];
/*0xDEA*/ u16 factoryRecordWinStreaks[2][2];
/*0xDF6*/ u16 factoryRentsCount[2][2];
/*0xDFA*/ u16 factoryRecordRentsCount[2][2];
- /*0xE02*/ u16 field_E02;
+ /*0xE02*/ u16 pikePrize;
/*0xE04*/ u16 pikeWinStreaks[2];
/*0xE08*/ u16 pikeRecordStreaks[2];
/*0xE0C*/ u16 pikeTotalStreaks[2];
@@ -382,16 +382,16 @@ struct BattleFrontier
/*0xE10*/ u8 pikeHintedRoomType:4;
/*0xE10*/ u8 pikeHealingRoomsDisabled:1;
/*0xE12*/ u16 pikeHeldItemsBackup[FRONTIER_PARTY_SIZE];
- /*0xE18*/ u16 pyramidRewardItem;
+ /*0xE18*/ u16 pyramidPrize;
/*0xE1A*/ u16 pyramidWinStreaks[2];
/*0xE1E*/ u16 pyramidRecordStreaks[2];
/*0xE22*/ u16 pyramidRandoms[4];
/*0xE2A*/ u8 pyramidTrainerFlags;
/*0xE2C*/ struct PyramidBag pyramidBag;
/*0xE68*/ u8 pyramidLightRadius;
- /*0xE6A*/ u16 field_E6A;
- /*0xE6C*/ u16 field_E6C;
- /*0xE6E*/ u16 field_E6E;
+ /*0xE6A*/ u16 verdanturfTentPrize;
+ /*0xE6C*/ u16 fallarborTentPrize;
+ /*0xE6E*/ u16 slateportTentPrize;
/*0xE70*/ struct RentalMon rentalMons[PARTY_SIZE];
/*0xEB8*/ u16 battlePoints;
/*0xEBA*/ u16 cardBattlePoints;