summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--[-rwxr-xr-x]src/battle/anim/current.c0
-rw-r--r--src/battle/anim/dark.c2
-rw-r--r--[-rwxr-xr-x]src/battle/anim/egg.c0
-rw-r--r--[-rwxr-xr-x]src/battle/anim/flying.c0
-rw-r--r--[-rwxr-xr-x]src/battle/anim/ghost.c0
-rw-r--r--[-rwxr-xr-x]src/battle/anim/ground.c0
-rw-r--r--[-rwxr-xr-x]src/battle/anim/ice.c0
-rw-r--r--[-rwxr-xr-x]src/battle/anim/normal.c0
-rw-r--r--src/battle/battle_2.c8
-rw-r--r--[-rwxr-xr-x]src/battle/battle_ai_switch_items.c0
-rw-r--r--src/battle/battle_anim.c6
-rw-r--r--[-rwxr-xr-x]src/battle/battle_anim_812C144.c238
-rw-r--r--src/battle/battle_setup.c36
-rw-r--r--src/battle/pokeball.c2
-rw-r--r--src/berry_blender.c6
-rw-r--r--src/berry_tag_screen.c2
-rw-r--r--src/bike.c4
-rw-r--r--src/cable_car.c4
-rw-r--r--src/cable_club.c4
-rw-r--r--src/contest.c2
-rw-r--r--src/credits.c4
-rw-r--r--src/data/battle_strings_en.h4
-rw-r--r--[-rwxr-xr-x]src/data/field_event_obj/event_object_graphics.h0
-rw-r--r--[-rwxr-xr-x]src/data/field_event_obj/field_effect_object_graphics.h0
-rw-r--r--src/data/field_event_obj/field_effect_object_template_pointers.h4
-rw-r--r--src/data/field_event_obj/field_effect_objects.h106
-rw-r--r--src/debug/nakamura_debug_menu.c8
-rw-r--r--src/debug/sound_check_menu.c252
-rw-r--r--src/decoration.c16
-rw-r--r--src/event_object_movement.c246
-rw-r--r--src/evolution_scene.c20
-rw-r--r--src/field_camera.c60
-rw-r--r--src/field_control_avatar.c14
-rw-r--r--src/field_effect.c94
-rw-r--r--src/field_effect_helpers.c298
-rw-r--r--src/field_fadetransition.c74
-rw-r--r--src/field_player_avatar.c6
-rw-r--r--src/field_screen_effect.c115
-rw-r--r--src/field_specials.c18
-rw-r--r--src/field_tasks.c37
-rw-r--r--src/fieldmap.c112
-rw-r--r--src/fldeff_flash.c138
-rw-r--r--src/hall_of_fame.c2
-rw-r--r--src/hof_pc.c1
-rw-r--r--src/item_menu.c13
-rw-r--r--src/item_use.c181
-rw-r--r--src/main_menu.c2
-rw-r--r--src/mauville_man.c2
-rw-r--r--src/move_tutor_menu.c4
-rw-r--r--src/new_game.c2
-rw-r--r--src/overworld.c505
-rw-r--r--src/party_menu.c6
-rw-r--r--src/player_pc.c4
-rw-r--r--src/pokemon_3.c30
-rw-r--r--src/pokemon_menu.c24
-rw-r--r--src/region_map.c20
-rw-r--r--src/rom_8077ABC.c8
-rw-r--r--src/roulette.c4
-rw-r--r--src/safari_zone.c2
-rw-r--r--src/scrcmd.c19
-rw-r--r--src/secret_base.c13
-rw-r--r--src/shop.c8
-rw-r--r--src/slot_machine.c14
-rw-r--r--src/sound.c24
-rw-r--r--src/sprite.c1
-rw-r--r--src/tileset_anim.c576
-rw-r--r--src/time_events.c2
-rw-r--r--src/trade.c6
-rw-r--r--src/wild_encounter.c2
69 files changed, 1844 insertions, 1571 deletions
diff --git a/src/battle/anim/current.c b/src/battle/anim/current.c
index af72edef0..af72edef0 100755..100644
--- a/src/battle/anim/current.c
+++ b/src/battle/anim/current.c
diff --git a/src/battle/anim/dark.c b/src/battle/anim/dark.c
index a7026edff..59db85342 100644
--- a/src/battle/anim/dark.c
+++ b/src/battle/anim/dark.c
@@ -1024,7 +1024,7 @@ void sub_80E0A4C(u8 taskId)
if (IsContest())
{
- species = EWRAM_19348;
+ species = EWRAM_19348[0];
}
else
{
diff --git a/src/battle/anim/egg.c b/src/battle/anim/egg.c
index 5b6d56dac..5b6d56dac 100755..100644
--- a/src/battle/anim/egg.c
+++ b/src/battle/anim/egg.c
diff --git a/src/battle/anim/flying.c b/src/battle/anim/flying.c
index ec40e26c4..ec40e26c4 100755..100644
--- a/src/battle/anim/flying.c
+++ b/src/battle/anim/flying.c
diff --git a/src/battle/anim/ghost.c b/src/battle/anim/ghost.c
index 85879c86c..85879c86c 100755..100644
--- a/src/battle/anim/ghost.c
+++ b/src/battle/anim/ghost.c
diff --git a/src/battle/anim/ground.c b/src/battle/anim/ground.c
index a523df20e..a523df20e 100755..100644
--- a/src/battle/anim/ground.c
+++ b/src/battle/anim/ground.c
diff --git a/src/battle/anim/ice.c b/src/battle/anim/ice.c
index 50c8b9030..50c8b9030 100755..100644
--- a/src/battle/anim/ice.c
+++ b/src/battle/anim/ice.c
diff --git a/src/battle/anim/normal.c b/src/battle/anim/normal.c
index 8303e7c68..8303e7c68 100755..100644
--- a/src/battle/anim/normal.c
+++ b/src/battle/anim/normal.c
diff --git a/src/battle/battle_2.c b/src/battle/battle_2.c
index 79d60125e..11ddd6b71 100644
--- a/src/battle/battle_2.c
+++ b/src/battle/battle_2.c
@@ -6339,7 +6339,7 @@ void HandleEndTurn_BattleWon(void)
{
case TRAINER_CLASS_ELITE_FOUR:
case TRAINER_CLASS_CHAMPION:
- PlayBGM(BGM_KACHI5);
+ PlayBGM(MUS_KACHI5);
break;
case TRAINER_CLASS_TEAM_AQUA:
case TRAINER_CLASS_TEAM_MAGMA:
@@ -6347,13 +6347,13 @@ void HandleEndTurn_BattleWon(void)
case TRAINER_CLASS_AQUA_LEADER:
case TRAINER_CLASS_MAGMA_ADMIN:
case TRAINER_CLASS_MAGMA_LEADER:
- PlayBGM(BGM_KACHI4);
+ PlayBGM(MUS_KACHI4);
break;
case TRAINER_CLASS_LEADER:
- PlayBGM(BGM_KACHI3);
+ PlayBGM(MUS_KACHI3);
break;
default:
- PlayBGM(BGM_KACHI1);
+ PlayBGM(MUS_KACHI1);
break;
}
}
diff --git a/src/battle/battle_ai_switch_items.c b/src/battle/battle_ai_switch_items.c
index 4dd7614bf..4dd7614bf 100755..100644
--- a/src/battle/battle_ai_switch_items.c
+++ b/src/battle/battle_ai_switch_items.c
diff --git a/src/battle/battle_anim.c b/src/battle/battle_anim.c
index f3b0056ac..ebfe2401d 100644
--- a/src/battle/battle_anim.c
+++ b/src/battle/battle_anim.c
@@ -1499,7 +1499,7 @@ void LaunchBattleAnimation(const u8 *const moveAnims[], u16 move, u8 isMoveAnim)
else
{
for (i = 0; i < 4; i++)
- gAnimSpeciesByBanks[i] = EWRAM_19348;
+ gAnimSpeciesByBanks[i] = EWRAM_19348[0];
}
if (isMoveAnim == 0)
@@ -1933,7 +1933,7 @@ void MoveBattlerSpriteToBG(u8 bank, u8 toBG_2)
spriteId = gBankSpriteIds[bank];
gBattle_BG1_X = -(gSprites[spriteId].pos1.x + gSprites[spriteId].pos2.x) + 32;
- if (IsContest() != 0 && IsSpeciesNotUnown(EWRAM_19348) != 0)
+ if (IsContest() != 0 && IsSpeciesNotUnown(EWRAM_19348[0]) != 0)
gBattle_BG1_X--;
gBattle_BG1_Y = -(gSprites[spriteId].pos1.y + gSprites[spriteId].pos2.y) + 32;
gSprites[gBankSpriteIds[bank]].invisible = TRUE;
@@ -1987,7 +1987,7 @@ static void sub_8076380(void)
struct UnknownStruct2 s;
u16 *ptr;
- if (IsSpeciesNotUnown(EWRAM_19348))
+ if (IsSpeciesNotUnown(EWRAM_19348[0]))
{
sub_8078914(&s);
ptr = s.unk4;
diff --git a/src/battle/battle_anim_812C144.c b/src/battle/battle_anim_812C144.c
index 601e3c6df..cef1fb97c 100755..100644
--- a/src/battle/battle_anim_812C144.c
+++ b/src/battle/battle_anim_812C144.c
@@ -1,12 +1,17 @@
#include "global.h"
#include "battle.h"
#include "battle_anim.h"
+#include "contest.h"
+#include "data2.h"
+#include "decompress.h"
+#include "ewram.h"
#include "palette.h"
#include "random.h"
#include "rom_8077ABC.h"
#include "scanline_effect.h"
#include "sound.h"
#include "trig.h"
+#include "constants/songs.h"
extern s16 gBattleAnimArgs[];
extern u8 gAnimBankAttacker;
@@ -18,15 +23,25 @@ extern u16 gBattle_WIN0V;
extern u16 gBattle_WIN1H;
extern u16 gBattle_WIN1V;
extern u16 gBattle_BG1_X;
+extern u16 gBattle_BG1_Y;
extern u16 gBattle_BG2_X;
+extern u16 gBattle_BG2_Y;
extern const struct SpriteTemplate gBattleAnimSpriteTemplate_83D7220;
extern const struct SpriteTemplate gSpriteTemplate_8402500;
+extern const union AffineAnimCmd *const gSpriteAffineAnimTable_81E7C18[];
+extern const union AffineAnimCmd *const gSpriteAffineAnimTable_81E7BEC[];
extern const union AffineAnimCmd gUnknown_08402400[];
extern const union AffineAnimCmd gUnknown_084024B0[];
extern const union AffineAnimCmd gUnknown_08402518[];
extern const union AffineAnimCmd gUnknown_08402540[];
extern const union AffineAnimCmd gUnknown_08402590[];
+extern const u32 gUnknown_08D2AA98[];
+extern const u32 gUnknown_08D2A9E0[];
+extern const u16 gUnknown_08D2AA80[];
+extern const s8 gUnknown_084025C0[];
+extern u8 gBattleMonForms[];
+extern u8 gBankSpriteIds[];
extern u8 sub_8046234(s16 x, s16 y, u8 a3);
@@ -1124,3 +1139,226 @@ void sub_812D790(u8 taskId)
DestroyAnimVisualTask(taskId);
}
}
+
+void sub_812D7E8(u8 taskId)
+{
+ int i, j;
+ u8 position;
+ struct Struct_sub_8078914 subStruct;
+ u8 *dest;
+ u8 *src;
+ u16 *field_4;
+ u16 *ptr;
+ u16 stretch;
+
+ switch (gTasks[taskId].data[0])
+ {
+ case 0:
+ REG_MOSAIC = 0;
+ if (GetBattlerPosition_permutated(gAnimBankAttacker) == 1)
+ REG_BG1CNT_BITFIELD.mosaic = 1;
+ else
+ REG_BG2CNT_BITFIELD.mosaic = 1;
+
+ gTasks[taskId].data[10] = gBattleAnimArgs[0];
+ gTasks[taskId].data[0]++;
+ break;
+ case 1:
+ if (gTasks[taskId].data[2]++ > 1)
+ {
+ gTasks[taskId].data[2] = 0;
+ gTasks[taskId].data[1]++;
+ stretch = gTasks[taskId].data[1];
+ REG_MOSAIC = (stretch << 4) | stretch;
+ if (stretch == 15)
+ gTasks[taskId].data[0]++;
+ }
+ break;
+ case 2:
+ sub_8031FC4(gAnimBankAttacker, gAnimBankTarget, gTasks[taskId].data[10]);
+ sub_8078954(&subStruct, gAnimBankAttacker);
+
+ if (IsContest())
+ position = 0;
+ else
+ position = GetBattlerPosition(gAnimBankAttacker);
+
+ dest = gUnknown_081FAF4C[position] + (gBattleMonForms[gAnimBankAttacker] << 11);
+ src = subStruct.field_0;
+ DmaCopy32(3, dest, src, 0x800);
+
+ if (IsContest())
+ {
+ if (IsSpeciesNotUnown(EWRAM_19348[0]) != IsSpeciesNotUnown(EWRAM_19348[1]))
+ {
+ field_4 = (u16 *)subStruct.field_4;
+ for (i = 0; i < 8; i++)
+ {
+ for (j = 0; j < 4; j++)
+ {
+ u16 temp = field_4[j + i * 0x20];
+ field_4[j + i * 0x20] = field_4[(7 - j) + i * 0x20];
+ field_4[(7 - j) + i * 0x20] = temp;
+ }
+ }
+
+ for (i = 0; i < 8; i++)
+ {
+ for (j = 0; j < 8; j++)
+ {
+ field_4[j + i * 0x20] ^= 0x400;
+ }
+ }
+ }
+
+ ptr = EWRAM_19348;
+ if (IsSpeciesNotUnown(ptr[1]))
+ gSprites[gBankSpriteIds[gAnimBankAttacker]].affineAnims = gSpriteAffineAnimTable_81E7C18;
+ else
+ gSprites[gBankSpriteIds[gAnimBankAttacker]].affineAnims = gSpriteAffineAnimTable_81E7BEC;
+
+ StartSpriteAffineAnim(&gSprites[gBankSpriteIds[gAnimBankAttacker]], 0);
+ }
+
+ gTasks[taskId].data[0]++;
+ break;
+ case 3:
+ if (gTasks[taskId].data[2]++ > 1)
+ {
+ gTasks[taskId].data[2] = 0;
+ gTasks[taskId].data[1]--;
+ stretch = gTasks[taskId].data[1];
+ REG_MOSAIC = (stretch << 4) | stretch;
+
+ if (stretch == 0)
+ gTasks[taskId].data[0]++;
+ }
+ break;
+ case 4:
+ REG_MOSAIC = 0;
+ if (GetBattlerPosition_permutated(gAnimBankAttacker) == 1)
+ REG_BG1CNT_BITFIELD.mosaic = 0;
+ else
+ REG_BG2CNT_BITFIELD.mosaic = 0;
+
+ if (!IsContest())
+ {
+ if (GetBattlerSide(gAnimBankAttacker) == B_SIDE_OPPONENT)
+ {
+ if (gTasks[taskId].data[10] == 0)
+ sub_8032984(gAnimBankAttacker, eTransformStatuses[gAnimBankAttacker].species);
+ }
+ }
+
+ DestroyAnimVisualTask(taskId);
+ break;
+ }
+}
+
+void c3_80DFBE4(u8 taskId)
+{
+ gBattleAnimArgs[7] = gSprites[gBankSpriteIds[gAnimBankAttacker]].invisible;
+ DestroyAnimVisualTask(taskId);
+}
+
+void sub_812DB58(u8 taskId)
+{
+ sub_8031FC4(gAnimBankAttacker, gAnimBankTarget, 1);
+ DestroyAnimVisualTask(taskId);
+}
+
+void sub_812DB84(u8 taskId)
+{
+ struct Struct_sub_8078914 subStruct;
+
+ switch (gTasks[taskId].data[0])
+ {
+ case 0:
+ REG_BLDCNT = BLDCNT_TGT2_BD | BLDCNT_TGT2_OBJ | BLDCNT_TGT2_BG0 | BLDCNT_TGT2_BG1
+ | BLDCNT_TGT2_BG2 | BLDCNT_TGT2_BG3 | BLDCNT_EFFECT_BLEND | BLDCNT_TGT1_BG1;
+ REG_BLDALPHA = 0x1000;
+ REG_BG1CNT_BITFIELD.screenSize = 0;
+ REG_BG1CNT_BITFIELD.priority = 1;
+ if (!IsContest())
+ REG_BG1CNT_BITFIELD.charBaseBlock = 1;
+
+ sub_8078914(&subStruct);
+ DmaClear32(3, subStruct.field_4, 0x1000);
+ LZDecompressVram(gUnknown_08D2AA98, subStruct.field_4);
+ LZDecompressVram(gUnknown_08D2A9E0, subStruct.field_0);
+ LoadCompressedPalette(gUnknown_08D2AA80, subStruct.field_8 * 16, 32);
+ if (IsContest())
+ {
+ sub_80763FC(subStruct.field_8, (u16 *)subStruct.field_4, 0, 0);
+ gBattle_BG1_X = -56;
+ gBattle_BG1_Y = 0;
+ }
+ else
+ {
+ if (GetBattlerSide(gAnimBankAttacker) != B_SIDE_PLAYER)
+ gBattle_BG1_X = -135;
+ else
+ gBattle_BG1_X = -10;
+
+ gBattle_BG1_Y = 0;
+ }
+
+ gTasks[taskId].data[10] = gBattle_BG1_X;
+ gTasks[taskId].data[11] = gBattle_BG1_Y;
+
+ gTasks[taskId].data[0]++;
+ PlaySE12WithPanning(SE_W234, BattleAnimAdjustPanning(-64));
+ break;
+ case 1:
+ if (gTasks[taskId].data[4]++ > 0)
+ {
+ gTasks[taskId].data[4] = 0;
+ if (++gTasks[taskId].data[1] > 12)
+ gTasks[taskId].data[1] = 12;
+
+ REG_BLDALPHA = ((16 - gTasks[taskId].data[1]) << 8) | gTasks[taskId].data[1];
+
+ if (gTasks[taskId].data[1] == 12)
+ gTasks[taskId].data[0]++;
+ }
+ break;
+ case 2:
+ if (--gTasks[taskId].data[1] < 0)
+ gTasks[taskId].data[1] = 0;
+
+ REG_BLDALPHA = ((16 - gTasks[taskId].data[1]) << 8) | gTasks[taskId].data[1];
+
+ if (gTasks[taskId].data[1] == 0)
+ {
+ gBattle_BG1_X = gUnknown_084025C0[gTasks[taskId].data[2]] + gTasks[taskId].data[10];
+ if (++gTasks[taskId].data[2] == 4)
+ gTasks[taskId].data[0] = 4;
+ else
+ gTasks[taskId].data[0] = 3;
+ }
+ break;
+ case 3:
+ if (++gTasks[taskId].data[3] == 4)
+ {
+ gTasks[taskId].data[3] = 0;
+ gTasks[taskId].data[0] = 1;
+ PlaySE12WithPanning(SE_W234, BattleAnimAdjustPanning(-64));
+ }
+ break;
+ case 4:
+ sub_8078914(&subStruct);
+ DmaFill32Large(3, 0, subStruct.field_0, 0x2000, 0x1000);
+ DmaClear32(3, subStruct.field_4, 0x800);
+
+ if (!IsContest())
+ REG_BG1CNT_BITFIELD.charBaseBlock = 0;
+
+ REG_BG1CNT_BITFIELD.priority = 1;
+ gBattle_BG1_X = 0;
+ gBattle_BG1_Y = 0;
+ REG_BLDCNT = 0;
+ REG_BLDALPHA = 0;
+ DestroyAnimVisualTask(taskId);
+ break;
+ }
+}
diff --git a/src/battle/battle_setup.c b/src/battle/battle_setup.c
index f53959cc2..8c5f68902 100644
--- a/src/battle/battle_setup.c
+++ b/src/battle/battle_setup.c
@@ -587,7 +587,7 @@ void ScrSpecial_StartRayquazaBattle(void)
ScriptContext2_Enable();
gMain.savedCallback = CB2_EndScriptedWildBattle;
gBattleTypeFlags = BATTLE_TYPE_LEGENDARY;
- CreateBattleStartTask(B_TRANSITION_BLUR, BGM_BATTLE34);
+ CreateBattleStartTask(B_TRANSITION_BLUR, MUS_BATTLE34);
IncrementGameStat(GAME_STAT_TOTAL_BATTLES);
IncrementGameStat(GAME_STAT_WILD_BATTLES);
}
@@ -598,9 +598,9 @@ void ScrSpecial_StartGroudonKyogreBattle(void)
gMain.savedCallback = CB2_EndScriptedWildBattle;
gBattleTypeFlags = BATTLE_TYPE_LEGENDARY | BATTLE_TYPE_KYOGRE_GROUDON;
if (gGameVersion == VERSION_RUBY)
- CreateBattleStartTask(B_TRANSITION_SHARDS, BGM_BATTLE34); // GROUDON
+ CreateBattleStartTask(B_TRANSITION_SHARDS, MUS_BATTLE34); // GROUDON
else
- CreateBattleStartTask(B_TRANSITION_RIPPLE, BGM_BATTLE34); // KYOGRE
+ CreateBattleStartTask(B_TRANSITION_RIPPLE, MUS_BATTLE34); // KYOGRE
IncrementGameStat(GAME_STAT_TOTAL_BATTLES);
IncrementGameStat(GAME_STAT_WILD_BATTLES);
}
@@ -610,7 +610,7 @@ void ScrSpecial_StartRegiBattle(void)
ScriptContext2_Enable();
gMain.savedCallback = CB2_EndScriptedWildBattle;
gBattleTypeFlags = BATTLE_TYPE_LEGENDARY | BATTLE_TYPE_REGI;
- CreateBattleStartTask(B_TRANSITION_GRID_SQUARES, BGM_BATTLE36);
+ CreateBattleStartTask(B_TRANSITION_GRID_SQUARES, MUS_BATTLE36);
IncrementGameStat(GAME_STAT_TOTAL_BATTLES);
IncrementGameStat(GAME_STAT_WILD_BATTLES);
}
@@ -1172,46 +1172,46 @@ void PlayTrainerEncounterMusic(void)
switch (sub_803FC58(gTrainerBattleOpponent))
{
case TRAINER_ENCOUNTER_MUSIC_MALE:
- music = BGM_BOYEYE;
+ music = MUS_BOYEYE;
break;
case TRAINER_ENCOUNTER_MUSIC_FEMALE:
- music = BGM_GIRLEYE;
+ music = MUS_GIRLEYE;
break;
case TRAINER_ENCOUNTER_MUSIC_GIRL:
- music = BGM_SYOUJOEYE;
+ music = MUS_SYOUJOEYE;
break;
case TRAINER_ENCOUNTER_MUSIC_INTENSE:
- music = BGM_HAGESHII;
+ music = MUS_HAGESHII;
break;
case TRAINER_ENCOUNTER_MUSIC_COOL:
- music = BGM_KAKKOII;
+ music = MUS_KAKKOII;
break;
case TRAINER_ENCOUNTER_MUSIC_AQUA:
- music = BGM_AQA_0;
+ music = MUS_AQA_0;
break;
case TRAINER_ENCOUNTER_MUSIC_MAGMA:
- music = BGM_MGM0;
+ music = MUS_MGM0;
break;
case TRAINER_ENCOUNTER_MUSIC_SWIMMER:
- music = BGM_SWIMEYE;
+ music = MUS_SWIMEYE;
break;
case TRAINER_ENCOUNTER_MUSIC_TWINS:
- music = BGM_HUTAGO;
+ music = MUS_HUTAGO;
break;
case TRAINER_ENCOUNTER_MUSIC_ELITE_FOUR:
- music = BGM_SITENNOU;
+ music = MUS_SITENNOU;
break;
case TRAINER_ENCOUNTER_MUSIC_HIKER:
- music = BGM_YAMA_EYE;
+ music = MUS_YAMA_EYE;
break;
case TRAINER_ENCOUNTER_MUSIC_INTERVIEWER:
- music = BGM_INTER_V;
+ music = MUS_INTER_V;
break;
case TRAINER_ENCOUNTER_MUSIC_RICH:
- music = BGM_TEST;
+ music = MUS_TEST;
break;
default:
- music = BGM_AYASII;
+ music = MUS_AYASII;
}
PlayNewMapMusic(music);
}
diff --git a/src/battle/pokeball.c b/src/battle/pokeball.c
index be2adbf1b..c619141a1 100644
--- a/src/battle/pokeball.c
+++ b/src/battle/pokeball.c
@@ -815,7 +815,7 @@ static void sub_8046FBC(struct Sprite *sprite)
{
gDoingBattleAnim = 0;
m4aMPlayAllStop();
- PlaySE(BGM_FANFA5);
+ PlaySE(MUS_FANFA5);
}
else if (sprite->data[4] == 315)
{
diff --git a/src/berry_blender.c b/src/berry_blender.c
index 4531ea546..8bf669a92 100644
--- a/src/berry_blender.c
+++ b/src/berry_blender.c
@@ -1245,7 +1245,7 @@ static void sub_804E9F8(void)
{
gBerryBlenderData->field_178 = GetCurrentMapMusic();
}
- PlayBGM(BGM_CYCLING);
+ PlayBGM(MUS_CYCLING);
break;
case 100:
Menu_DrawStdWindowFrame(0, 13, 29, 19);
@@ -1507,7 +1507,7 @@ static void sub_804F378(void)
{
gBerryBlenderData->field_178 = GetCurrentMapMusic();
}
- PlayBGM(BGM_CYCLING);
+ PlayBGM(MUS_CYCLING);
PlaySE(SE_MOTER);
Blender_ControlHitPitch();
break;
@@ -3524,7 +3524,7 @@ static void sub_8052BD0(u8 taskID)
{
if (gTasks[taskID].data[0] == 0)
{
- PlayFanfare(BGM_FANFA1);
+ PlayFanfare(MUS_FANFA1);
gTasks[taskID].data[0]++;
}
if (IsFanfareTaskInactive())
diff --git a/src/berry_tag_screen.c b/src/berry_tag_screen.c
index 77f80d728..a8f797e28 100644
--- a/src/berry_tag_screen.c
+++ b/src/berry_tag_screen.c
@@ -238,7 +238,7 @@ static void sub_814640C(u8 taskId)
{
SetMainCallback2(sub_80A5B40);
sub_80A7DD4();
- gpu_pal_allocator_reset__manage_upper_four();
+ FreeAndReserveObjectSpritePalettes();
DestroyTask(taskId);
}
}
diff --git a/src/bike.c b/src/bike.c
index f0f996b6b..41090a375 100644
--- a/src/bike.c
+++ b/src/bike.c
@@ -1001,8 +1001,8 @@ void GetOnOffBike(u8 var)
else
{
SetPlayerAvatarTransitionFlags(var);
- Overworld_SetSavedMusic(BGM_CYCLING);
- Overworld_ChangeMusicTo(BGM_CYCLING);
+ Overworld_SetSavedMusic(MUS_CYCLING);
+ Overworld_ChangeMusicTo(MUS_CYCLING);
}
}
diff --git a/src/cable_car.c b/src/cable_car.c
index bae6f020a..52111b285 100644
--- a/src/cable_car.c
+++ b/src/cable_car.c
@@ -386,7 +386,7 @@ static void CableCarMainCallback_Setup(void)
break;
case 7:
BeginNormalPaletteFade(0xFFFFFFFF, 3, 16, 0, RGB(0, 0, 0));
- FadeInNewBGM(BGM_ROPEWAY, 1);
+ FadeInNewBGM(MUS_ROPEWAY, 1);
sub_8123FBC(1);
gMain.state++;
break;
@@ -439,7 +439,7 @@ static void sub_8123740(void)
DmaFill16Large(3, 0, VRAM, VRAM_SIZE, 0x1000);
DmaFill32Defvars(3, 0, OAM, OAM_SIZE);
DmaFill16Defvars(3, 0, PLTT, PLTT_SIZE);
- warp_in();
+ WarpIntoMap();
gFieldCallback = NULL;
SetMainCallback2(CB2_LoadMap);
}
diff --git a/src/cable_club.c b/src/cable_club.c
index 0da23c5f3..1e1f0af07 100644
--- a/src/cable_club.c
+++ b/src/cable_club.c
@@ -766,9 +766,9 @@ static void sub_808382C(u8 taskId)
break;
case 5:
if (gLinkPlayers[0].trainerId & 1)
- current_map_music_set__default_for_battle(BGM_BATTLE32);
+ current_map_music_set__default_for_battle(MUS_BATTLE32);
else
- current_map_music_set__default_for_battle(BGM_BATTLE20);
+ current_map_music_set__default_for_battle(MUS_BATTLE20);
switch (gSpecialVar_0x8004)
{
diff --git a/src/contest.c b/src/contest.c
index fcadd8ae1..9dff08ea7 100644
--- a/src/contest.c
+++ b/src/contest.c
@@ -1584,7 +1584,7 @@ void sub_80AC2CC(u8 taskId)
{
case 0:
sub_80B1EA8(-1, 1);
- PlayFanfare(BGM_ME_ZANNEN);
+ PlayFanfare(MUS_ME_ZANNEN);
gTasks[taskId].data[10]++;
break;
case 1:
diff --git a/src/credits.c b/src/credits.c
index b99bc56bd..1a810492b 100644
--- a/src/credits.c
+++ b/src/credits.c
@@ -497,7 +497,7 @@ void sub_81439D0(void)
SetVBlankCallback(vblank_8143948);
- m4aSongNumStart(BGM_THANKFOR);
+ m4aSongNumStart(MUS_THANKFOR);
SetMainCallback2(sub_814395C);
gUnknown_02039325 = 0;
@@ -741,7 +741,7 @@ static void task_a_8144080(u8 taskIdA)
}
if (gTasks[taskIdA].data[TDA_0] == 6840)
- m4aSongNumStart(BGM_END);
+ m4aSongNumStart(MUS_END);
gTasks[taskIdA].data[TDA_0] -= 1;
}
diff --git a/src/data/battle_strings_en.h b/src/data/battle_strings_en.h
index 67eb70ee1..7ae5467dd 100644
--- a/src/data/battle_strings_en.h
+++ b/src/data/battle_strings_en.h
@@ -747,8 +747,8 @@ const u8 BattleText_BallBrokeOhNo[] = _("Oh, no!\nThe POKéMON broke free!");
const u8 BattleText_BallBrokeAppeared[] = _("Aww!\nIt appeared to be caught!");
const u8 BattleText_BallBrokeAlmost[] = _("Aargh!\nAlmost had it!");
const u8 BattleText_BallBrokeSoClose[] = _("Shoot!\nIt was so close, too!");
-const u8 BattleText_BallCaught1[] = _("Gotcha!\n{STRING 3} was caught!{UNKNOWN_A}{PLAY_BGM BGM_KACHI22}\p");
-const u8 BattleText_BallCaught2[] = _("Gotcha!\n{STRING 3} was caught!{UNKNOWN_A}{PLAY_BGM BGM_KACHI22}{PAUSE 127}");
+const u8 BattleText_BallCaught1[] = _("Gotcha!\n{STRING 3} was caught!{UNKNOWN_A}{PLAY_BGM MUS_KACHI22}\p");
+const u8 BattleText_BallCaught2[] = _("Gotcha!\n{STRING 3} was caught!{UNKNOWN_A}{PLAY_BGM MUS_KACHI22}{PAUSE 127}");
const u8 BattleText_GiveNickname[] = _("Give a nickname to the\ncaptured {STRING 3}?");
const u8 BattleText_SentToPC[] = _("{STRING 3} was sent to\n{STRING 35} PC.");
const u8 BattleText_Someone[] = _("someone’s");
diff --git a/src/data/field_event_obj/event_object_graphics.h b/src/data/field_event_obj/event_object_graphics.h
index 8f1bb96a8..8f1bb96a8 100755..100644
--- a/src/data/field_event_obj/event_object_graphics.h
+++ b/src/data/field_event_obj/event_object_graphics.h
diff --git a/src/data/field_event_obj/field_effect_object_graphics.h b/src/data/field_event_obj/field_effect_object_graphics.h
index 36850a4ec..36850a4ec 100755..100644
--- a/src/data/field_event_obj/field_effect_object_graphics.h
+++ b/src/data/field_event_obj/field_effect_object_graphics.h
diff --git a/src/data/field_event_obj/field_effect_object_template_pointers.h b/src/data/field_event_obj/field_effect_object_template_pointers.h
index 320af1ff8..682816ed9 100644
--- a/src/data/field_event_obj/field_effect_object_template_pointers.h
+++ b/src/data/field_event_obj/field_effect_object_template_pointers.h
@@ -26,7 +26,7 @@ const struct SpriteTemplate gFieldEffectSpriteTemplate_Unknown17;
const struct SpriteTemplate gFieldEffectSpriteTemplate_Unknown18;
const struct SpriteTemplate gFieldEffectSpriteTemplate_Unknown19;
const struct SpriteTemplate gFieldEffectSpriteTemplate_Unknown20;
-const struct SpriteTemplate gFieldEffectSpriteTemplate_Unknown21;
+const struct SpriteTemplate gFieldEffectSpriteTemplate_Reflection;
const struct SpriteTemplate gFieldEffectSpriteTemplate_BerryTreeGrowthSparkle;
const struct SpriteTemplate gFieldEffectSpriteTemplate_DeepSandFootprints;
const struct SpriteTemplate gFieldEffectSpriteTemplate_TreeDisguise;
@@ -64,7 +64,7 @@ const struct SpriteTemplate *const gFieldEffectObjectTemplatePointers[] = {
&gFieldEffectSpriteTemplate_Unknown18,
&gFieldEffectSpriteTemplate_Unknown19,
&gFieldEffectSpriteTemplate_Unknown20,
- &gFieldEffectSpriteTemplate_Unknown21,
+ &gFieldEffectSpriteTemplate_Reflection,
&gFieldEffectSpriteTemplate_BerryTreeGrowthSparkle,
&gFieldEffectSpriteTemplate_DeepSandFootprints,
&gFieldEffectSpriteTemplate_TreeDisguise,
diff --git a/src/data/field_event_obj/field_effect_objects.h b/src/data/field_event_obj/field_effect_objects.h
index 9d3ae343d..8533b3cdd 100644
--- a/src/data/field_event_obj/field_effect_objects.h
+++ b/src/data/field_event_obj/field_effect_objects.h
@@ -34,13 +34,13 @@ const struct SpriteFrameImage gFieldEffectPicTable_ShadowExtraLarge[] = {
obj_frame_tiles(gFieldEffectPic_ShadowExtraLarge)
};
-const struct SpriteTemplate gFieldEffectSpriteTemplate_ShadowSmall = {0xFFFF, 0xFFFF, &gFieldOamData_8x8, gFieldEffectAnimTable_Shadow, gFieldEffectPicTable_ShadowSmall, gDummySpriteAffineAnimTable, oamc_shadow};
+const struct SpriteTemplate gFieldEffectSpriteTemplate_ShadowSmall = {0xFFFF, 0xFFFF, &gFieldOamData_8x8, gFieldEffectAnimTable_Shadow, gFieldEffectPicTable_ShadowSmall, gDummySpriteAffineAnimTable, UpdateShadowFieldEffect};
-const struct SpriteTemplate gFieldEffectSpriteTemplate_ShadowMedium = {0xFFFF, 0xFFFF, &gFieldOamData_16x8, gFieldEffectAnimTable_Shadow, gFieldEffectPicTable_ShadowMedium, gDummySpriteAffineAnimTable, oamc_shadow};
+const struct SpriteTemplate gFieldEffectSpriteTemplate_ShadowMedium = {0xFFFF, 0xFFFF, &gFieldOamData_16x8, gFieldEffectAnimTable_Shadow, gFieldEffectPicTable_ShadowMedium, gDummySpriteAffineAnimTable, UpdateShadowFieldEffect};
-const struct SpriteTemplate gFieldEffectSpriteTemplate_ShadowLarge = {0xFFFF, 0xFFFF, &gFieldOamData_32x8, gFieldEffectAnimTable_Shadow, gFieldEffectPicTable_ShadowLarge, gDummySpriteAffineAnimTable, oamc_shadow};
+const struct SpriteTemplate gFieldEffectSpriteTemplate_ShadowLarge = {0xFFFF, 0xFFFF, &gFieldOamData_32x8, gFieldEffectAnimTable_Shadow, gFieldEffectPicTable_ShadowLarge, gDummySpriteAffineAnimTable, UpdateShadowFieldEffect};
-const struct SpriteTemplate gFieldEffectSpriteTemplate_ShadowExtraLarge = {0xFFFF, 0xFFFF, &gFieldOamData_64x32, gFieldEffectAnimTable_Shadow, gFieldEffectPicTable_ShadowExtraLarge, gDummySpriteAffineAnimTable, oamc_shadow};
+const struct SpriteTemplate gFieldEffectSpriteTemplate_ShadowExtraLarge = {0xFFFF, 0xFFFF, &gFieldOamData_64x32, gFieldEffectAnimTable_Shadow, gFieldEffectPicTable_ShadowExtraLarge, gDummySpriteAffineAnimTable, UpdateShadowFieldEffect};
const struct SpriteFrameImage gFieldEffectPicTable_TallGrass[] = {
obj_frame_tiles(gFieldEffectPic_TallGrass_0),
@@ -63,7 +63,7 @@ const union AnimCmd *const gFieldEffectAnimTable_TallGrass[] = {
gFieldEffectAnim_83745E8
};
-const struct SpriteTemplate gFieldEffectSpriteTemplate_TallGrass = {0xFFFF, 0x1005, &gFieldOamData_16x16, gFieldEffectAnimTable_TallGrass, gFieldEffectPicTable_TallGrass, gDummySpriteAffineAnimTable, unc_grass_normal};
+const struct SpriteTemplate gFieldEffectSpriteTemplate_TallGrass = {0xFFFF, 0x1005, &gFieldOamData_16x16, gFieldEffectAnimTable_TallGrass, gFieldEffectPicTable_TallGrass, gDummySpriteAffineAnimTable, UpdateTallGrassFieldEffect};
const struct SpriteFrameImage gFieldEffectPicTable_Ripple[] = {
obj_frame_tiles(gFieldEffectPic_Ripple_0),
@@ -89,7 +89,7 @@ const union AnimCmd *const gFieldEffectAnimTable_Ripple[] = {
gFieldEffectAnim_8374644
};
-const struct SpriteTemplate gFieldEffectSpriteTemplate_Ripple = {0xFFFF, 0x1005, &gFieldOamData_16x16, gFieldEffectAnimTable_Ripple, gFieldEffectPicTable_Ripple, gDummySpriteAffineAnimTable, sub_8128800};
+const struct SpriteTemplate gFieldEffectSpriteTemplate_Ripple = {0xFFFF, 0x1005, &gFieldOamData_16x16, gFieldEffectAnimTable_Ripple, gFieldEffectPicTable_Ripple, gDummySpriteAffineAnimTable, WaitFieldEffectSpriteAnim};
const struct SpriteFrameImage gFieldEffectPicTable_Ash[] = {
obj_frame_tiles(gFieldEffectPic_Ash_0),
@@ -112,7 +112,7 @@ const union AnimCmd *const gFieldEffectAnimTable_Ash[] = {
gFieldEffectAnim_83746AC
};
-const struct SpriteTemplate gFieldEffectSpriteTemplate_Ash = {0xFFFF, 0x1005, &gFieldOamData_16x16, gFieldEffectAnimTable_Ash, gFieldEffectPicTable_Ash, gDummySpriteAffineAnimTable, sub_8127D84};
+const struct SpriteTemplate gFieldEffectSpriteTemplate_Ash = {0xFFFF, 0x1005, &gFieldOamData_16x16, gFieldEffectAnimTable_Ash, gFieldEffectPicTable_Ash, gDummySpriteAffineAnimTable, UpdateAshFieldEffect};
const struct SpriteFrameImage gFieldEffectPicTable_SurfBlob[] = {
obj_frame_tiles(gFieldEffectPic_SurfBlob_0),
@@ -147,7 +147,7 @@ const union AnimCmd *const gFieldEffectAnimTable_SurfBlob[] = {
gFieldEffectAnim_8374710
};
-const struct SpriteTemplate gFieldEffectSpriteTemplate_SurfBlob = {0xFFFF, 0xFFFF, &gFieldOamData_32x32, gFieldEffectAnimTable_SurfBlob, gFieldEffectPicTable_SurfBlob, gDummySpriteAffineAnimTable, sub_8127F7C};
+const struct SpriteTemplate gFieldEffectSpriteTemplate_SurfBlob = {0xFFFF, 0xFFFF, &gFieldOamData_32x32, gFieldEffectAnimTable_SurfBlob, gFieldEffectPicTable_SurfBlob, gDummySpriteAffineAnimTable, UpdateSurfBlobFieldEffect};
const struct SpriteFrameImage gFieldEffectPicTable_Arrow[] = {
obj_frame_tiles(gFieldEffectPic_Arrow_0),
@@ -210,7 +210,7 @@ const union AnimCmd *const gFieldEffectAnimTable_Dust[] = {
gFieldEffectAnim_83747F0
};
-const struct SpriteTemplate gFieldEffectSpriteTemplate_Dust = {0xFFFF, 0x1004, &gFieldOamData_16x8, gFieldEffectAnimTable_Dust, gFieldEffectPicTable_Dust, gDummySpriteAffineAnimTable, sub_81287C4};
+const struct SpriteTemplate gFieldEffectSpriteTemplate_Dust = {0xFFFF, 0x1004, &gFieldOamData_16x8, gFieldEffectAnimTable_Dust, gFieldEffectPicTable_Dust, gDummySpriteAffineAnimTable, UpdateJumpLandingFieldEffect};
const struct SpriteFrameImage gFieldEffectPicTable_JumpTallGrass[] = {
obj_frame_tiles(gFieldEffectPic_JumpTallGrass_0),
@@ -231,7 +231,7 @@ const union AnimCmd *const gFieldEffectAnimTable_JumpTallGrass[] = {
gFieldEffectAnim_837483C
};
-const struct SpriteTemplate gFieldEffectSpriteTemplate_JumpTallGrass = {0xFFFF, 0x1005, &gFieldOamData_16x8, gFieldEffectAnimTable_JumpTallGrass, gFieldEffectPicTable_JumpTallGrass, gDummySpriteAffineAnimTable, sub_81287C4};
+const struct SpriteTemplate gFieldEffectSpriteTemplate_JumpTallGrass = {0xFFFF, 0x1005, &gFieldOamData_16x8, gFieldEffectAnimTable_JumpTallGrass, gFieldEffectPicTable_JumpTallGrass, gDummySpriteAffineAnimTable, UpdateJumpLandingFieldEffect};
const struct SpriteFrameImage gFieldEffectPicTable_SandFootprints[] = {
obj_frame_tiles(gFieldEffectPic_SandFootprints_0),
@@ -266,7 +266,7 @@ const union AnimCmd *const gFieldEffectAnimTable_SandFootprints[] = {
gFieldEffectAnim_8374894
};
-const struct SpriteTemplate gFieldEffectSpriteTemplate_SandFootprints = {0xFFFF, 0x1004, &gFieldOamData_16x16, gFieldEffectAnimTable_SandFootprints, gFieldEffectPicTable_SandFootprints, gDummySpriteAffineAnimTable, sub_8127584};
+const struct SpriteTemplate gFieldEffectSpriteTemplate_SandFootprints = {0xFFFF, 0x1004, &gFieldOamData_16x16, gFieldEffectAnimTable_SandFootprints, gFieldEffectPicTable_SandFootprints, gDummySpriteAffineAnimTable, UpdateFootprintsTireTracksFieldEffect};
const struct SpriteFrameImage gFieldEffectPicTable_DeepSandFootprints[] = {
obj_frame_tiles(gFieldEffectPic_DeepSandFootprints_0),
@@ -301,7 +301,7 @@ const union AnimCmd *const gFieldEffectAnimTable_DeepSandFootprints[] = {
gFieldEffectAnim_83748F0
};
-const struct SpriteTemplate gFieldEffectSpriteTemplate_DeepSandFootprints = {0xFFFF, 0x1004, &gFieldOamData_16x16, gFieldEffectAnimTable_DeepSandFootprints, gFieldEffectPicTable_DeepSandFootprints, gDummySpriteAffineAnimTable, sub_8127584};
+const struct SpriteTemplate gFieldEffectSpriteTemplate_DeepSandFootprints = {0xFFFF, 0x1004, &gFieldOamData_16x16, gFieldEffectAnimTable_DeepSandFootprints, gFieldEffectPicTable_DeepSandFootprints, gDummySpriteAffineAnimTable, UpdateFootprintsTireTracksFieldEffect};
const struct SpriteFrameImage gFieldEffectPicTable_BikeTireTracks[] = {
obj_frame_tiles(gFieldEffectPic_BikeTireTracks_0),
@@ -362,7 +362,7 @@ const union AnimCmd *const gFieldEffectAnimTable_BikeTireTracks[] = {
gFieldEffectAnim_837497C
};
-const struct SpriteTemplate gFieldEffectSpriteTemplate_BikeTireTracks = {0xFFFF, 0x1004, &gFieldOamData_16x16, gFieldEffectAnimTable_BikeTireTracks, gFieldEffectPicTable_BikeTireTracks, gDummySpriteAffineAnimTable, sub_8127584};
+const struct SpriteTemplate gFieldEffectSpriteTemplate_BikeTireTracks = {0xFFFF, 0x1004, &gFieldOamData_16x16, gFieldEffectAnimTable_BikeTireTracks, gFieldEffectPicTable_BikeTireTracks, gDummySpriteAffineAnimTable, UpdateFootprintsTireTracksFieldEffect};
const struct SpriteFrameImage gFieldEffectPicTable_JumpBigSplash[] = {
obj_frame_tiles(gFieldEffectPic_JumpBigSplash_0),
@@ -383,7 +383,7 @@ const union AnimCmd *const gFieldEffectAnimTable_JumpBigSplash[] = {
gFieldEffectAnim_83749E0
};
-const struct SpriteTemplate gFieldEffectSpriteTemplate_JumpBigSplash = {0xFFFF, 0x1004, &gFieldOamData_16x16, gFieldEffectAnimTable_JumpBigSplash, gFieldEffectPicTable_JumpBigSplash, gDummySpriteAffineAnimTable, sub_81287C4};
+const struct SpriteTemplate gFieldEffectSpriteTemplate_JumpBigSplash = {0xFFFF, 0x1004, &gFieldOamData_16x16, gFieldEffectAnimTable_JumpBigSplash, gFieldEffectPicTable_JumpBigSplash, gDummySpriteAffineAnimTable, UpdateJumpLandingFieldEffect};
const struct SpriteFrameImage gFieldEffectPicTable_Splash[] = {
obj_frame_tiles(gFieldEffectPic_Splash_0),
@@ -413,7 +413,7 @@ const union AnimCmd *const gFieldEffectAnimTable_Splash[] = {
gFieldEffectAnim_8374A2C
};
-const struct SpriteTemplate gFieldEffectSpriteTemplate_Splash = {0xFFFF, 0x1004, &gFieldOamData_16x8, gFieldEffectAnimTable_Splash, gFieldEffectPicTable_Splash, gDummySpriteAffineAnimTable, sub_81276B4};
+const struct SpriteTemplate gFieldEffectSpriteTemplate_Splash = {0xFFFF, 0x1004, &gFieldOamData_16x8, gFieldEffectAnimTable_Splash, gFieldEffectPicTable_Splash, gDummySpriteAffineAnimTable, UpdateSplashFieldEffect};
const struct SpriteFrameImage gFieldEffectPicTable_JumpSmallSplash[] = {
obj_frame_tiles(gFieldEffectPic_JumpSmallSplash_0),
@@ -432,7 +432,7 @@ const union AnimCmd *const gFieldEffectAnimTable_JumpSmallSplash[] = {
gFieldEffectAnim_8374A88
};
-const struct SpriteTemplate gFieldEffectSpriteTemplate_JumpSmallSplash = {0xFFFF, 0x1004, &gFieldOamData_16x8, gFieldEffectAnimTable_JumpSmallSplash, gFieldEffectPicTable_JumpSmallSplash, gDummySpriteAffineAnimTable, sub_81287C4};
+const struct SpriteTemplate gFieldEffectSpriteTemplate_JumpSmallSplash = {0xFFFF, 0x1004, &gFieldOamData_16x8, gFieldEffectAnimTable_JumpSmallSplash, gFieldEffectPicTable_JumpSmallSplash, gDummySpriteAffineAnimTable, UpdateJumpLandingFieldEffect};
const struct SpriteFrameImage gFieldEffectPicTable_LongGrass[] = {
obj_frame_tiles(gFieldEffectPic_LongGrass_0),
@@ -456,7 +456,7 @@ const union AnimCmd *const gFieldEffectAnimTable_LongGrass[] = {
gFieldEffectAnim_8374AD4
};
-const struct SpriteTemplate gFieldEffectSpriteTemplate_LongGrass = {0xFFFF, 0x1005, &gFieldOamData_16x16, gFieldEffectAnimTable_LongGrass, gFieldEffectPicTable_LongGrass, gDummySpriteAffineAnimTable, unc_grass_tall};
+const struct SpriteTemplate gFieldEffectSpriteTemplate_LongGrass = {0xFFFF, 0x1005, &gFieldOamData_16x16, gFieldEffectAnimTable_LongGrass, gFieldEffectPicTable_LongGrass, gDummySpriteAffineAnimTable, UpdateLongGrassFieldEffect};
const struct SpriteFrameImage gFieldEffectPicTable_JumpLongGrass[] = {
obj_frame_tiles(gFieldEffectPic_JumpLongGrass_0),
@@ -481,7 +481,7 @@ const union AnimCmd *const gFieldEffectAnimTable_JumpLongGrass[] = {
gFieldEffectAnim_8374B40
};
-const struct SpriteTemplate gFieldEffectSpriteTemplate_JumpLongGrass = {0xFFFF, 0x1005, &gFieldOamData_16x16, gFieldEffectAnimTable_JumpLongGrass, gFieldEffectPicTable_JumpLongGrass, gDummySpriteAffineAnimTable, sub_81287C4};
+const struct SpriteTemplate gFieldEffectSpriteTemplate_JumpLongGrass = {0xFFFF, 0x1005, &gFieldOamData_16x16, gFieldEffectAnimTable_JumpLongGrass, gFieldEffectPicTable_JumpLongGrass, gDummySpriteAffineAnimTable, UpdateJumpLandingFieldEffect};
const struct SpriteFrameImage gFieldEffectPicTable_Unknown17[] = {
obj_frame_tiles(gFieldEffectPic_JumpLongGrass_5),
@@ -512,7 +512,7 @@ const union AnimCmd *const gFieldEffectAnimTable_Unknown17[] = {
gFieldEffectAnim_8374BC0
};
-const struct SpriteTemplate gFieldEffectSpriteTemplate_Unknown17 = {0xFFFF, 0x1005, &gFieldOamData_16x16, gFieldEffectAnimTable_Unknown17, gFieldEffectPicTable_Unknown17, gDummySpriteAffineAnimTable, sub_8128800};
+const struct SpriteTemplate gFieldEffectSpriteTemplate_Unknown17 = {0xFFFF, 0x1005, &gFieldOamData_16x16, gFieldEffectAnimTable_Unknown17, gFieldEffectPicTable_Unknown17, gDummySpriteAffineAnimTable, WaitFieldEffectSpriteAnim};
const struct SpriteFrameImage gFieldEffectPicTable_Unknown18[] = {
obj_frame_tiles(gFieldEffectPic_Unknown18_0),
@@ -535,7 +535,7 @@ const union AnimCmd *const gFieldEffectAnimTable_Unknown18[] = {
gFieldEffectAnim_8374C24
};
-const struct SpriteTemplate gFieldEffectSpriteTemplate_Unknown18 = {0xFFFF, 0x1005, &gFieldOamData_16x16, gFieldEffectAnimTable_Unknown18, gFieldEffectPicTable_Unknown18, gDummySpriteAffineAnimTable, sub_8128800};
+const struct SpriteTemplate gFieldEffectSpriteTemplate_Unknown18 = {0xFFFF, 0x1005, &gFieldOamData_16x16, gFieldEffectAnimTable_Unknown18, gFieldEffectPicTable_Unknown18, gDummySpriteAffineAnimTable, WaitFieldEffectSpriteAnim};
const struct SpriteFrameImage gFieldEffectPicTable_Unknown19[] = {
obj_frame_tiles(gFieldEffectPic_Unknown19_0),
@@ -556,7 +556,7 @@ const union AnimCmd *const gFieldEffectAnimTable_Unknown19[] = {
gFieldEffectAnim_8374C7C
};
-const struct SpriteTemplate gFieldEffectSpriteTemplate_Unknown19 = {0xFFFF, 0x1004, &gFieldOamData_16x16, gFieldEffectAnimTable_Unknown19, gFieldEffectPicTable_Unknown19, gDummySpriteAffineAnimTable, sub_8128800};
+const struct SpriteTemplate gFieldEffectSpriteTemplate_Unknown19 = {0xFFFF, 0x1004, &gFieldOamData_16x16, gFieldEffectAnimTable_Unknown19, gFieldEffectPicTable_Unknown19, gDummySpriteAffineAnimTable, WaitFieldEffectSpriteAnim};
const struct SpriteFrameImage gFieldEffectPicTable_SandPile[] = {
obj_frame_tiles(gFieldEffectPic_SandPile_0),
@@ -575,7 +575,7 @@ const union AnimCmd *const gFieldEffectAnimTable_SandPile[] = {
gFieldEffectAnim_8374CC4
};
-const struct SpriteTemplate gFieldEffectSpriteTemplate_SandPile = {0xFFFF, 0x1004, &gFieldOamData_16x8, gFieldEffectAnimTable_SandPile, gFieldEffectPicTable_SandPile, gDummySpriteAffineAnimTable, sub_81282E0};
+const struct SpriteTemplate gFieldEffectSpriteTemplate_SandPile = {0xFFFF, 0x1004, &gFieldOamData_16x8, gFieldEffectAnimTable_SandPile, gFieldEffectPicTable_SandPile, gDummySpriteAffineAnimTable, UpdateSandPileFieldEffect};
const struct SpriteFrameImage gFieldEffectPicTable_Unknown20[] = {
obj_frame_tiles(gFieldEffectPic_Unknown20_0),
@@ -598,40 +598,40 @@ const union AnimCmd *const gFieldEffectAnimTable_Unknown20[] = {
gFieldEffectAnim_8374D10
};
-const struct SpriteTemplate gFieldEffectSpriteTemplate_Unknown20 = {0xFFFF, 0x1004, &gFieldOamData_16x16, gFieldEffectAnimTable_Unknown20, gFieldEffectPicTable_Unknown20, gDummySpriteAffineAnimTable, sub_8128800};
+const struct SpriteTemplate gFieldEffectSpriteTemplate_Unknown20 = {0xFFFF, 0x1004, &gFieldOamData_16x16, gFieldEffectAnimTable_Unknown20, gFieldEffectPicTable_Unknown20, gDummySpriteAffineAnimTable, WaitFieldEffectSpriteAnim};
-const union AffineAnimCmd gFieldEffectAffineAnim_8374D48[] = {
+const union AffineAnimCmd gFieldEffectAffineAnim_WavyReflection[] = {
AFFINEANIMCMD_FRAME(0xFF00, 0x100, -128, 0),
- AFFINEANIMCMD_FRAME(0x1, 0x0, 0, 4),
- AFFINEANIMCMD_FRAME(0x0, 0x0, 0, 8),
- AFFINEANIMCMD_FRAME(0xFFFF, 0x0, 0, 4),
- AFFINEANIMCMD_FRAME(0x0, 0x0, 0, 8),
- AFFINEANIMCMD_FRAME(0xFFFF, 0x0, 0, 4),
- AFFINEANIMCMD_FRAME(0x0, 0x0, 0, 8),
- AFFINEANIMCMD_FRAME(0x1, 0x0, 0, 4),
- AFFINEANIMCMD_FRAME(0x0, 0x0, 0, 8),
+ AFFINEANIMCMD_FRAME( 1, 0, 0, 4),
+ AFFINEANIMCMD_FRAME( 0, 0, 0, 8),
+ AFFINEANIMCMD_FRAME(-1, 0, 0, 4),
+ AFFINEANIMCMD_FRAME( 0, 0, 0, 8),
+ AFFINEANIMCMD_FRAME(-1, 0, 0, 4),
+ AFFINEANIMCMD_FRAME( 0, 0, 0, 8),
+ AFFINEANIMCMD_FRAME( 1, 0, 0, 4),
+ AFFINEANIMCMD_FRAME( 0, 0, 0, 8),
AFFINEANIMCMD_JUMP(1)
};
-const union AffineAnimCmd gFieldEffectAffineAnim_8374D98[] = {
+const union AffineAnimCmd gFieldEffectAffineAnim_WavyReflectionFlipped[] = {
AFFINEANIMCMD_FRAME(0x100, 0x100, -128, 0),
- AFFINEANIMCMD_FRAME(0xFFFF, 0x0, 0, 4),
- AFFINEANIMCMD_FRAME(0x0, 0x0, 0, 8),
- AFFINEANIMCMD_FRAME(0x1, 0x0, 0, 4),
- AFFINEANIMCMD_FRAME(0x0, 0x0, 0, 8),
- AFFINEANIMCMD_FRAME(0x1, 0x0, 0, 4),
- AFFINEANIMCMD_FRAME(0x0, 0x0, 0, 8),
- AFFINEANIMCMD_FRAME(0xFFFF, 0x0, 0, 4),
- AFFINEANIMCMD_FRAME(0x0, 0x0, 0, 8),
+ AFFINEANIMCMD_FRAME(-1, 0, 0, 4),
+ AFFINEANIMCMD_FRAME( 0, 0, 0, 8),
+ AFFINEANIMCMD_FRAME( 1, 0, 0, 4),
+ AFFINEANIMCMD_FRAME( 0, 0, 0, 8),
+ AFFINEANIMCMD_FRAME( 1, 0, 0, 4),
+ AFFINEANIMCMD_FRAME( 0, 0, 0, 8),
+ AFFINEANIMCMD_FRAME(-1, 0, 0, 4),
+ AFFINEANIMCMD_FRAME( 0, 0, 0, 8),
AFFINEANIMCMD_JUMP(1)
};
-const union AffineAnimCmd *const gFieldEffectAffineAnimTable_Unknown21[] = {
- gFieldEffectAffineAnim_8374D48,
- gFieldEffectAffineAnim_8374D98
+const union AffineAnimCmd *const gFieldEffectAffineAnimTable_Reflection[] = {
+ gFieldEffectAffineAnim_WavyReflection,
+ gFieldEffectAffineAnim_WavyReflectionFlipped
};
-const struct SpriteTemplate gFieldEffectSpriteTemplate_Unknown21 = {0x0, 0xFFFF, &gDummyOamData, gDummySpriteAnimTable, NULL, gFieldEffectAffineAnimTable_Unknown21, SpriteCallbackDummy};
+const struct SpriteTemplate gFieldEffectSpriteTemplate_Reflection = {0x0, 0xFFFF, &gDummyOamData, gDummySpriteAnimTable, NULL, gFieldEffectAffineAnimTable_Reflection, SpriteCallbackDummy};
const struct SpriteFrameImage gFieldEffectPicTable_BerryTreeGrowthSparkle[] = {
obj_frame_tiles(gFieldEffectPic_BerryTreeGrowthSparkle_0),
@@ -670,7 +670,7 @@ const union AnimCmd *const gFieldEffectAnimTable_BerryTreeGrowthSparkle[] = {
gFieldEffectAnim_8374E38
};
-const struct SpriteTemplate gFieldEffectSpriteTemplate_BerryTreeGrowthSparkle = {0xFFFF, 0xFFFF, &gFieldOamData_16x16, gFieldEffectAnimTable_BerryTreeGrowthSparkle, gFieldEffectPicTable_BerryTreeGrowthSparkle, gDummySpriteAffineAnimTable, sub_8128800};
+const struct SpriteTemplate gFieldEffectSpriteTemplate_BerryTreeGrowthSparkle = {0xFFFF, 0xFFFF, &gFieldOamData_16x16, gFieldEffectAnimTable_BerryTreeGrowthSparkle, gFieldEffectPicTable_BerryTreeGrowthSparkle, gDummySpriteAffineAnimTable, WaitFieldEffectSpriteAnim};
const struct SpriteFrameImage gFieldEffectPicTable_TreeDisguise[] = {
obj_frame_tiles(gFieldEffectPic_TreeDisguise_0),
@@ -703,7 +703,7 @@ const union AnimCmd *const gFieldEffectAnimTable_TreeDisguise[] = {
gFieldEffectAnim_8374EE8
};
-const struct SpriteTemplate gFieldEffectSpriteTemplate_TreeDisguise = {0xFFFF, 0xFFFF, &gFieldOamData_16x32, gFieldEffectAnimTable_TreeDisguise, gFieldEffectPicTable_TreeDisguise, gDummySpriteAffineAnimTable, sub_81285AC};
+const struct SpriteTemplate gFieldEffectSpriteTemplate_TreeDisguise = {0xFFFF, 0xFFFF, &gFieldOamData_16x32, gFieldEffectAnimTable_TreeDisguise, gFieldEffectPicTable_TreeDisguise, gDummySpriteAffineAnimTable, UpdateDisguiseFieldEffect};
const struct SpriteFrameImage gFieldEffectPicTable_MountainDisguise[] = {
obj_frame_tiles(gFieldEffectPic_MountainDisguise_0),
@@ -736,7 +736,7 @@ const union AnimCmd *const gFieldEffectAnimTable_MountainDisguise[] = {
gFieldEffectAnim_8374F68
};
-const struct SpriteTemplate gFieldEffectSpriteTemplate_MountainDisguise = {0xFFFF, 0xFFFF, &gFieldOamData_16x32, gFieldEffectAnimTable_MountainDisguise, gFieldEffectPicTable_MountainDisguise, gDummySpriteAffineAnimTable, sub_81285AC};
+const struct SpriteTemplate gFieldEffectSpriteTemplate_MountainDisguise = {0xFFFF, 0xFFFF, &gFieldOamData_16x32, gFieldEffectAnimTable_MountainDisguise, gFieldEffectPicTable_MountainDisguise, gDummySpriteAffineAnimTable, UpdateDisguiseFieldEffect};
const struct SpriteFrameImage gFieldEffectPicTable_SandDisguise[] = {
obj_frame_tiles(gFieldEffectPic_SandDisguise_0),
@@ -748,7 +748,7 @@ const struct SpriteFrameImage gFieldEffectPicTable_SandDisguise[] = {
obj_frame_tiles(gFieldEffectPic_SandDisguise_6)
};
-const struct SpriteTemplate gFieldEffectSpriteTemplate_SandDisguise = {0xFFFF, 0xFFFF, &gFieldOamData_16x32, gFieldEffectAnimTable_TreeDisguise, gFieldEffectPicTable_SandDisguise, gDummySpriteAffineAnimTable, sub_81285AC};
+const struct SpriteTemplate gFieldEffectSpriteTemplate_SandDisguise = {0xFFFF, 0xFFFF, &gFieldOamData_16x32, gFieldEffectAnimTable_TreeDisguise, gFieldEffectPicTable_SandDisguise, gDummySpriteAffineAnimTable, UpdateDisguiseFieldEffect};
const struct SpriteFrameImage gFieldEffectPicTable_Bird[] = {
obj_frame_tiles(gFieldEffectPic_Bird)
@@ -780,7 +780,7 @@ const union AnimCmd *const gFieldEffectAnimTable_ShortGrass[] = {
gFieldEffectAnim_8375034
};
-const struct SpriteTemplate gFieldEffectSpriteTemplate_ShortGrass = {0xFFFF, 0x1005, &gFieldOamData_16x16, gFieldEffectAnimTable_ShortGrass, gFieldEffectPicTable_ShortGrass, gDummySpriteAffineAnimTable, sub_8127334};
+const struct SpriteTemplate gFieldEffectSpriteTemplate_ShortGrass = {0xFFFF, 0x1005, &gFieldOamData_16x16, gFieldEffectAnimTable_ShortGrass, gFieldEffectPicTable_ShortGrass, gDummySpriteAffineAnimTable, UpdateShortGrassFieldEffect};
const struct SpriteFrameImage gFieldEffectPicTable_HotSpringsWater[] = {
obj_frame_tiles(gFieldEffectPic_HotSpringsWater)
@@ -795,7 +795,7 @@ const union AnimCmd *const gFieldEffectAnimTable_HotSpringsWater[] = {
gFieldEffectAnim_8375064
};
-const struct SpriteTemplate gFieldEffectSpriteTemplate_HotSpringsWater = {0xFFFF, 0x1005, &gFieldOamData_16x16, gFieldEffectAnimTable_HotSpringsWater, gFieldEffectPicTable_HotSpringsWater, gDummySpriteAffineAnimTable, sub_8127A7C};
+const struct SpriteTemplate gFieldEffectSpriteTemplate_HotSpringsWater = {0xFFFF, 0x1005, &gFieldOamData_16x16, gFieldEffectAnimTable_HotSpringsWater, gFieldEffectPicTable_HotSpringsWater, gDummySpriteAffineAnimTable, UpdateHotSpringsWaterFieldEffect};
const struct SpriteFrameImage gFieldEffectPicTable_PopOutOfAsh[] = {
obj_frame_tiles(gFieldEffectPic_PopOutOfAsh_0),
@@ -872,7 +872,7 @@ const union AnimCmd *const gFieldEffectAnimTable_Bubbles[] = {
gFieldEffectAnim_8375188
};
-const struct SpriteTemplate gFieldEffectSpriteTemplate_Bubbles = {0xFFFF, 0x1004, &gFieldOamData_16x32, gFieldEffectAnimTable_Bubbles, gFieldEffectPicTable_Bubbles, gDummySpriteAffineAnimTable, sub_8128410};
+const struct SpriteTemplate gFieldEffectSpriteTemplate_Bubbles = {0xFFFF, 0x1004, &gFieldOamData_16x32, gFieldEffectAnimTable_Bubbles, gFieldEffectPicTable_Bubbles, gDummySpriteAffineAnimTable, UpdateBubblesFieldEffect};
const struct SpriteFrameImage gFieldEffectPicTable_Sparkle[] = {
obj_frame_tiles(gFieldEffectPic_Sparkle_0),
@@ -890,7 +890,7 @@ const union AnimCmd *const gFieldEffectAnimTable_Sparkle[] = {
gFieldEffectAnim_83751D8
};
-const struct SpriteTemplate gFieldEffectSpriteTemplate_Sparkle = {0xFFFF, 0x100F, &gFieldOamData_16x16, gFieldEffectAnimTable_Sparkle, gFieldEffectPicTable_Sparkle, gDummySpriteAffineAnimTable, sub_8128774};
+const struct SpriteTemplate gFieldEffectSpriteTemplate_Sparkle = {0xFFFF, 0x100F, &gFieldOamData_16x16, gFieldEffectAnimTable_Sparkle, gFieldEffectPicTable_Sparkle, gDummySpriteAffineAnimTable, UpdateSparkleFieldEffect};
const struct SpritePalette gFieldEffectObjectPaletteInfo3 = {gFieldEffectObjectPalette3, 0x100F};
diff --git a/src/debug/nakamura_debug_menu.c b/src/debug/nakamura_debug_menu.c
index a20d58319..508dc048e 100644
--- a/src/debug/nakamura_debug_menu.c
+++ b/src/debug/nakamura_debug_menu.c
@@ -752,14 +752,14 @@ static const u8 Str_843E58D[] = _(
static u16 FishingPoints_CountFishingTilesInMapThird(u8 a0)
{
u16 retval = 0;
- u16 height = gMapHeader.mapData->height / 3;
+ u16 height = gMapHeader.mapLayout->height / 3;
u16 y;
u16 x;
u16 start = height * a0;
for (y = start; y < start + height; y++)
{
- for (x = 0; x < gMapHeader.mapData->width; x++)
+ for (x = 0; x < gMapHeader.mapLayout->width; x++)
{
if (MetatileBehavior_IsFeebasEncounterable(MapGridGetMetatileBehaviorAt(x + 7, y + 7)) == TRUE)
{
@@ -783,9 +783,9 @@ static u16 FishingPoints_GetIndexOfCurrentFishingSpot(void)
x -= 7;
y -= 7;
- for (yy = 0; yy < gMapHeader.mapData->height; yy++)
+ for (yy = 0; yy < gMapHeader.mapLayout->height; yy++)
{
- for (xx = 0; xx < gMapHeader.mapData->width; xx++)
+ for (xx = 0; xx < gMapHeader.mapLayout->width; xx++)
{
if (MetatileBehavior_IsFeebasEncounterable(MapGridGetMetatileBehaviorAt(xx + 7, yy + 7)) == TRUE)
{
diff --git a/src/debug/sound_check_menu.c b/src/debug/sound_check_menu.c
index 1fcf52f38..d57c699da 100644
--- a/src/debug/sound_check_menu.c
+++ b/src/debug/sound_check_menu.c
@@ -19,7 +19,7 @@
// window selections
enum
{
- BGM_WINDOW,
+ MUS_WINDOW,
SE_WINDOW
};
@@ -151,7 +151,7 @@ void CB2_StartSoundCheckMenu(void)
SetMainCallback2(CB2_SoundCheckMenu);
REG_DISPCNT = 0x7140;
taskId = CreateTask(Task_InitSoundCheckMenu, 0);
- gTasks[taskId].tWindowSelected = BGM_WINDOW;
+ gTasks[taskId].tWindowSelected = MUS_WINDOW;
gTasks[taskId].tBgmIndex = 0;
gTasks[taskId].tSeIndex = 0;
gTasks[taskId].data[3] = 0;
@@ -196,7 +196,7 @@ extern const u8 *const gSENames[];
void sub_80BA384(u8 taskId) // Task_HandleDrawingSoundCheckMenuText
{
HighlightSelectedWindow(gTasks[taskId].tWindowSelected);
- PrintSoundNumber(gTasks[taskId].tBgmIndex + BGM_STOP, 7, 8); // print by BGM index
+ PrintSoundNumber(gTasks[taskId].tBgmIndex + MUS_STOP, 7, 8); // print by BGM index
sub_80BA79C(gBGMNames[gTasks[taskId].tBgmIndex], 11, 8);
PrintSoundNumber(gTasks[taskId].tSeIndex, 7, 15);
sub_80BA79C(gSENames[gTasks[taskId].tSeIndex], 11, 15);
@@ -247,19 +247,19 @@ bool8 Task_ProcessSoundCheckMenuInput(u8 taskId)
{
if (gTasks[taskId].tBgmIndex != 0)
{
- m4aSongNumStop(gTasks[taskId].data[3] + BGM_STOP);
- m4aSongNumStart(gTasks[taskId].tBgmIndex + BGM_STOP);
+ m4aSongNumStop(gTasks[taskId].data[3] + MUS_STOP);
+ m4aSongNumStart(gTasks[taskId].tBgmIndex + MUS_STOP);
gTasks[taskId].data[3] = gTasks[taskId].tBgmIndex;
}
else
{
- m4aSongNumStop(gTasks[taskId].data[3] + BGM_STOP);
+ m4aSongNumStop(gTasks[taskId].data[3] + MUS_STOP);
gTasks[taskId].data[3] = 0;
}
}
else if (gTasks[taskId].tBgmIndex != 0)
{
- m4aSongNumStart(gTasks[taskId].tBgmIndex + BGM_STOP);
+ m4aSongNumStart(gTasks[taskId].tBgmIndex + MUS_STOP);
gTasks[taskId].data[3] = gTasks[taskId].tBgmIndex;
}
}
@@ -346,7 +346,7 @@ void HighlightSelectedWindow(u8 windowType)
{
switch (windowType)
{
- case BGM_WINDOW:
+ case MUS_WINDOW:
default:
REG_WIN1H = WIN_RANGE(17, 223);
REG_WIN1V = WIN_RANGE(41, 87);
@@ -819,124 +819,124 @@ void sub_80BB1D4(void)
}
#define SOUND_LIST_BGM \
- X(BGM_STOP, "STOP") \
- X(BGM_TETSUJI, "TETSUJI") \
- X(BGM_FIELD13, "FIELD13") \
- X(BGM_KACHI22, "KACHI22") \
- X(BGM_KACHI2, "KACHI2") \
- X(BGM_KACHI3, "KACHI3") \
- X(BGM_KACHI5, "KACHI5") \
- X(BGM_PCC, "PCC") \
- X(BGM_NIBI, "NIBI") \
- X(BGM_SUIKUN, "SUIKUN") \
- X(BGM_DOORO1, "DOORO1") \
- X(BGM_DOORO_X1, "DOORO-X1") \
- X(BGM_DOORO_X3, "DOORO-X3") \
- X(BGM_MACHI_S2, "MACHI-S2") \
- X(BGM_MACHI_S4, "MACHI-S4") \
- X(BGM_GIM, "GIM") \
- X(BGM_NAMINORI, "NAMINORI") \
- X(BGM_DAN01, "DAN01") \
- X(BGM_FANFA1, "FANFA1") \
- X(BGM_ME_ASA, "ME-ASA") \
- X(BGM_ME_BACHI, "ME-BACHI") \
- X(BGM_FANFA4, "FANFA4") \
- X(BGM_FANFA5, "FANFA5") \
- X(BGM_ME_WAZA, "ME-WAZA") \
- X(BGM_BIJYUTU, "BIJYUTU") \
- X(BGM_DOORO_X4, "DOORO-X4") \
- X(BGM_FUNE_KAN, "FUNE-KAN") \
- X(BGM_ME_SHINKA, "ME-SHINKA") \
- X(BGM_SHINKA, "SHINKA") \
- X(BGM_ME_WASURE, "ME-WASURE") \
- X(BGM_SYOUJOEYE, "SYOUJOEYE") \
- X(BGM_BOYEYE, "BOYEYE") \
- X(BGM_DAN02, "DAN02") \
- X(BGM_MACHI_S3, "MACHI-S3") \
- X(BGM_ODAMAKI, "ODAMAKI") \
- X(BGM_B_TOWER, "B-TOWER") \
- X(BGM_SWIMEYE, "SWIMEYE") \
- X(BGM_DAN03, "DAN03") \
- X(BGM_ME_KINOMI, "ME-KINOMI") \
- X(BGM_ME_TAMA, "ME-TAMA") \
- X(BGM_ME_B_BIG, "ME-B-BIG") \
- X(BGM_ME_B_SMALL, "ME-B-SMALL") \
- X(BGM_ME_ZANNEN, "ME-ZANNEN") \
- X(BGM_BD_TIME, "BD-TIME") \
- X(BGM_TEST1, "TEST1") \
- X(BGM_TEST2, "TEST2") \
- X(BGM_TEST3, "TEST3") \
- X(BGM_TEST4, "TEST4") \
- X(BGM_TEST, "TEST") \
- X(BGM_GOMACHI0, "GOMACHI0") \
- X(BGM_GOTOWN, "GOTOWN") \
- X(BGM_POKECEN, "POKECEN") \
- X(BGM_NEXTROAD, "NEXTROAD") \
- X(BGM_GRANROAD, "GRANROAD") \
- X(BGM_CYCLING, "CYCLING") \
- X(BGM_FRIENDLY, "FRIENDLY") \
- X(BGM_MISHIRO, "MISHIRO") \
- X(BGM_TOZAN, "TOZAN") \
- X(BGM_GIRLEYE, "GIRLEYE") \
- X(BGM_MINAMO, "MINAMO") \
- X(BGM_ASHROAD, "ASHROAD") \
- X(BGM_EVENT0, "EVENT0") \
- X(BGM_DEEPDEEP, "DEEPDEEP") \
- X(BGM_KACHI1, "KACHI1") \
- X(BGM_TITLE3, "TITLE3") \
- X(BGM_DEMO1, "DEMO1") \
- X(BGM_GIRL_SUP, "GIRL-SUP") \
- X(BGM_HAGESHII, "HAGESHII") \
- X(BGM_KAKKOII, "KAKKOII") \
- X(BGM_KAZANBAI, "KAZANBAI") \
- X(BGM_AQA_0, "AQA-0") \
- X(BGM_TSURETEK, "TSURETEK") \
- X(BGM_BOY_SUP, "BOY-SUP") \
- X(BGM_RAINBOW, "RAINBOW") \
- X(BGM_AYASII, "AYASII") \
- X(BGM_KACHI4, "KACHI4") \
- X(BGM_ROPEWAY, "ROPEWAY") \
- X(BGM_CASINO, "CASINO") \
- X(BGM_HIGHTOWN, "HIGHTOWN") \
- X(BGM_SAFARI, "SAFARI") \
- X(BGM_C_ROAD, "C-ROAD") \
- X(BGM_AJITO, "AJITO") \
- X(BGM_M_BOAT, "M-BOAT") \
- X(BGM_M_DUNGON, "M-DUNGON") \
- X(BGM_FINECITY, "FINECITY") \
- X(BGM_MACHUPI, "MACHUPI") \
- X(BGM_P_SCHOOL, "P-SCHOOL") \
- X(BGM_DENDOU, "DENDOU") \
- X(BGM_TONEKUSA, "TONEKUSA") \
- X(BGM_MABOROSI, "MABOROSI") \
- X(BGM_CON_FAN, "CON-FAN") \
- X(BGM_CONTEST0, "CONTEST0") \
- X(BGM_MGM0, "MGM0") \
- X(BGM_T_BATTLE, "T-BATTLE") \
- X(BGM_OOAME, "OOAME") \
- X(BGM_HIDERI, "HIDERI") \
- X(BGM_RUNECITY, "RUNECITY") \
- X(BGM_CON_K, "CON-K") \
- X(BGM_EIKOU_R, "EIKOU-R") \
- X(BGM_KARAKURI, "KARAKURI") \
- X(BGM_HUTAGO, "HUTAGO") \
- X(BGM_SITENNOU, "SITENNOU") \
- X(BGM_YAMA_EYE, "YAMA-EYE") \
- X(BGM_CONLOBBY, "CONLOBBY") \
- X(BGM_INTER_V, "INTER-V") \
- X(BGM_DAIGO, "DAIGO") \
- X(BGM_THANKFOR, "THANKFOR") \
- X(BGM_END, "END") \
- X(BGM_BATTLE27, "BATTLE27") \
- X(BGM_BATTLE31, "BATTLE31") \
- X(BGM_BATTLE20, "BATTLE20") \
- X(BGM_BATTLE32, "BATTLE32") \
- X(BGM_BATTLE33, "BATTLE33") \
- X(BGM_BATTLE36, "BATTLE36") \
- X(BGM_BATTLE34, "BATTLE34") \
- X(BGM_BATTLE35, "BATTLE35") \
- X(BGM_BATTLE38, "BATTLE38") \
- X(BGM_BATTLE30, "BATTLE30")
+ X(MUS_STOP, "STOP") \
+ X(MUS_TETSUJI, "TETSUJI") \
+ X(MUS_FIELD13, "FIELD13") \
+ X(MUS_KACHI22, "KACHI22") \
+ X(MUS_KACHI2, "KACHI2") \
+ X(MUS_KACHI3, "KACHI3") \
+ X(MUS_KACHI5, "KACHI5") \
+ X(MUS_PCC, "PCC") \
+ X(MUS_NIBI, "NIBI") \
+ X(MUS_SUIKUN, "SUIKUN") \
+ X(MUS_DOORO1, "DOORO1") \
+ X(MUS_DOORO_X1, "DOORO-X1") \
+ X(MUS_DOORO_X3, "DOORO-X3") \
+ X(MUS_MACHI_S2, "MACHI-S2") \
+ X(MUS_MACHI_S4, "MACHI-S4") \
+ X(MUS_GIM, "GIM") \
+ X(MUS_NAMINORI, "NAMINORI") \
+ X(MUS_DAN01, "DAN01") \
+ X(MUS_FANFA1, "FANFA1") \
+ X(MUS_ME_ASA, "ME-ASA") \
+ X(MUS_ME_BACHI, "ME-BACHI") \
+ X(MUS_FANFA4, "FANFA4") \
+ X(MUS_FANFA5, "FANFA5") \
+ X(MUS_ME_WAZA, "ME-WAZA") \
+ X(MUS_BIJYUTU, "BIJYUTU") \
+ X(MUS_DOORO_X4, "DOORO-X4") \
+ X(MUS_FUNE_KAN, "FUNE-KAN") \
+ X(MUS_ME_SHINKA, "ME-SHINKA") \
+ X(MUS_SHINKA, "SHINKA") \
+ X(MUS_ME_WASURE, "ME-WASURE") \
+ X(MUS_SYOUJOEYE, "SYOUJOEYE") \
+ X(MUS_BOYEYE, "BOYEYE") \
+ X(MUS_DAN02, "DAN02") \
+ X(MUS_MACHI_S3, "MACHI-S3") \
+ X(MUS_ODAMAKI, "ODAMAKI") \
+ X(MUS_B_TOWER, "B-TOWER") \
+ X(MUS_SWIMEYE, "SWIMEYE") \
+ X(MUS_DAN03, "DAN03") \
+ X(MUS_ME_KINOMI, "ME-KINOMI") \
+ X(MUS_ME_TAMA, "ME-TAMA") \
+ X(MUS_ME_B_BIG, "ME-B-BIG") \
+ X(MUS_ME_B_SMALL, "ME-B-SMALL") \
+ X(MUS_ME_ZANNEN, "ME-ZANNEN") \
+ X(MUS_BD_TIME, "BD-TIME") \
+ X(MUS_TEST1, "TEST1") \
+ X(MUS_TEST2, "TEST2") \
+ X(MUS_TEST3, "TEST3") \
+ X(MUS_TEST4, "TEST4") \
+ X(MUS_TEST, "TEST") \
+ X(MUS_GOMACHI0, "GOMACHI0") \
+ X(MUS_GOTOWN, "GOTOWN") \
+ X(MUS_POKECEN, "POKECEN") \
+ X(MUS_NEXTROAD, "NEXTROAD") \
+ X(MUS_GRANROAD, "GRANROAD") \
+ X(MUS_CYCLING, "CYCLING") \
+ X(MUS_FRIENDLY, "FRIENDLY") \
+ X(MUS_MISHIRO, "MISHIRO") \
+ X(MUS_TOZAN, "TOZAN") \
+ X(MUS_GIRLEYE, "GIRLEYE") \
+ X(MUS_MINAMO, "MINAMO") \
+ X(MUS_ASHROAD, "ASHROAD") \
+ X(MUS_EVENT0, "EVENT0") \
+ X(MUS_DEEPDEEP, "DEEPDEEP") \
+ X(MUS_KACHI1, "KACHI1") \
+ X(MUS_TITLE3, "TITLE3") \
+ X(MUS_DEMO1, "DEMO1") \
+ X(MUS_GIRL_SUP, "GIRL-SUP") \
+ X(MUS_HAGESHII, "HAGESHII") \
+ X(MUS_KAKKOII, "KAKKOII") \
+ X(MUS_KAZANBAI, "KAZANBAI") \
+ X(MUS_AQA_0, "AQA-0") \
+ X(MUS_TSURETEK, "TSURETEK") \
+ X(MUS_BOY_SUP, "BOY-SUP") \
+ X(MUS_RAINBOW, "RAINBOW") \
+ X(MUS_AYASII, "AYASII") \
+ X(MUS_KACHI4, "KACHI4") \
+ X(MUS_ROPEWAY, "ROPEWAY") \
+ X(MUS_CASINO, "CASINO") \
+ X(MUS_HIGHTOWN, "HIGHTOWN") \
+ X(MUS_SAFARI, "SAFARI") \
+ X(MUS_C_ROAD, "C-ROAD") \
+ X(MUS_AJITO, "AJITO") \
+ X(MUS_M_BOAT, "M-BOAT") \
+ X(MUS_M_DUNGON, "M-DUNGON") \
+ X(MUS_FINECITY, "FINECITY") \
+ X(MUS_MACHUPI, "MACHUPI") \
+ X(MUS_P_SCHOOL, "P-SCHOOL") \
+ X(MUS_DENDOU, "DENDOU") \
+ X(MUS_TONEKUSA, "TONEKUSA") \
+ X(MUS_MABOROSI, "MABOROSI") \
+ X(MUS_CON_FAN, "CON-FAN") \
+ X(MUS_CONTEST0, "CONTEST0") \
+ X(MUS_MGM0, "MGM0") \
+ X(MUS_T_BATTLE, "T-BATTLE") \
+ X(MUS_OOAME, "OOAME") \
+ X(MUS_HIDERI, "HIDERI") \
+ X(MUS_RUNECITY, "RUNECITY") \
+ X(MUS_CON_K, "CON-K") \
+ X(MUS_EIKOU_R, "EIKOU-R") \
+ X(MUS_KARAKURI, "KARAKURI") \
+ X(MUS_HUTAGO, "HUTAGO") \
+ X(MUS_SITENNOU, "SITENNOU") \
+ X(MUS_YAMA_EYE, "YAMA-EYE") \
+ X(MUS_CONLOBBY, "CONLOBBY") \
+ X(MUS_INTER_V, "INTER-V") \
+ X(MUS_DAIGO, "DAIGO") \
+ X(MUS_THANKFOR, "THANKFOR") \
+ X(MUS_END, "END") \
+ X(MUS_BATTLE27, "BATTLE27") \
+ X(MUS_BATTLE31, "BATTLE31") \
+ X(MUS_BATTLE20, "BATTLE20") \
+ X(MUS_BATTLE32, "BATTLE32") \
+ X(MUS_BATTLE33, "BATTLE33") \
+ X(MUS_BATTLE36, "BATTLE36") \
+ X(MUS_BATTLE34, "BATTLE34") \
+ X(MUS_BATTLE35, "BATTLE35") \
+ X(MUS_BATTLE38, "BATTLE38") \
+ X(MUS_BATTLE30, "BATTLE30")
#define SOUND_LIST_SE \
X(SE_STOP, "STOP") \
diff --git a/src/decoration.c b/src/decoration.c
index e31624540..a4976932d 100644
--- a/src/decoration.c
+++ b/src/decoration.c
@@ -2039,7 +2039,7 @@ void sub_80FF114(u8 taskId)
{
DrawWholeMapView();
Overworld_SetWarpDestination(gSaveBlock1.location.mapGroup, gSaveBlock1.location.mapNum, -1, gTasks[taskId].data[3], gTasks[taskId].data[4]);
- warp_in();
+ WarpIntoMap();
}
void sub_80FF160(u8 taskId)
{
@@ -2271,7 +2271,7 @@ void AddDecorationIconObjectFromEventObject(struct UnkStruct_02038900 * unk_0203
sub_81008BC(unk_02038900);
sub_8100930(unk_02038900->decoration->shape);
sub_8100874(unk_02038900);
- sub_810070C(unk_02038900->palette, ((u16 *)gMapHeader.mapData->secondaryTileset->metatiles + 8 * unk_02038900->decoration->tiles[0])[7] >> 12);
+ sub_810070C(unk_02038900->palette, ((u16 *)gMapHeader.mapLayout->secondaryTileset->metatiles + 8 * unk_02038900->decoration->tiles[0])[7] >> 12);
LoadSpritePalette(&gUnknown_083EC954);
gUnknown_020391A8 = gSprites[gFieldCamera.trackedSpriteId].data[0];
gFieldCamera.trackedSpriteId = CreateSprite(&gSpriteTemplate_83EC93C, gUnknown_083EC900[unk_02038900->decoration->shape].x, gUnknown_083EC900[unk_02038900->decoration->shape].y, 0);
@@ -3206,7 +3206,7 @@ bool8 sub_810038C(u8 taskId)
{
data[1]++;
return FALSE;
- } else if (gUnknown_020391AA == DIR_NORTH && data[1] - 7 >= gMapHeader.mapData->height)
+ } else if (gUnknown_020391AA == DIR_NORTH && data[1] - 7 >= gMapHeader.mapLayout->height)
{
data[1]--;
return FALSE;
@@ -3214,7 +3214,7 @@ bool8 sub_810038C(u8 taskId)
{
data[0]++;
return FALSE;
- } else if (gUnknown_020391AA == DIR_EAST && data[0] + data[5] - 8 >= gMapHeader.mapData->width)
+ } else if (gUnknown_020391AA == DIR_EAST && data[0] + data[5] - 8 >= gMapHeader.mapLayout->width)
{
data[0]--;
return FALSE;
@@ -3336,7 +3336,7 @@ void sub_810070C(u16 *a0, u16 a1)
u16 i;
for (i=0; i<16; i++)
{
- a0[i] = ((u16 *)gMapHeader.mapData->primaryTileset->palettes)[16 * a1 + i];
+ a0[i] = ((u16 *)gMapHeader.mapLayout->primaryTileset->palettes)[16 * a1 + i];
}
}
@@ -3352,7 +3352,7 @@ void sub_8100740(u8 *dest, u16 flags)
}
for (i=0; i<32; i++)
{
- buffer[i] = ((u8 *)gMapHeader.mapData->primaryTileset->tiles)[flags * 32 + i];
+ buffer[i] = ((u8 *)gMapHeader.mapLayout->primaryTileset->tiles)[flags * 32 + i];
}
switch (mode)
{
@@ -3398,7 +3398,7 @@ void sub_8100874(struct UnkStruct_02038900 *unk_02038900)
u16 sub_810089C(u16 a0)
{
- return ((u16 *)gMapHeader.mapData->secondaryTileset->metatiles)[a0] & 0xfff;
+ return ((u16 *)gMapHeader.mapLayout->secondaryTileset->metatiles)[a0] & 0xfff;
}
const u8 Unknown_3EC660[] = {0, 1, 2, 3};
@@ -3665,7 +3665,7 @@ void sub_8100B6C(void)
{
for (k=0; k<gUnknown_020391B4[i].width; k++)
{
- MapGridSetMetatileEntryAt(x + 7 + k, y + 7 - j, ((u16 *)gMapHeader.mapData->map)[(x + k) + gMapHeader.mapData->width * (y - j)] | 0x3000);
+ MapGridSetMetatileEntryAt(x + 7 + k, y + 7 - j, ((u16 *)gMapHeader.mapLayout->map)[(x + k) + gMapHeader.mapLayout->width * (y - j)] | 0x3000);
}
}
sub_8100A60(gUnknown_020391B4[i].decorId);
diff --git a/src/event_object_movement.c b/src/event_object_movement.c
index 60bd09ca9..5d498c1ff 100644
--- a/src/event_object_movement.c
+++ b/src/event_object_movement.c
@@ -60,8 +60,9 @@ static bool8 EventObjectZCoordIsCompatible(struct EventObject*, u8);
static struct EventObjectTemplate *FindEventObjectTemplateByLocalId(u8, struct EventObjectTemplate*, u8);
static void UpdateEventObjectSpriteSubpriorityAndVisibility(struct Sprite *);
static void InitObjectPriorityByZCoord(struct Sprite *sprite, u8 z);
+static void CreateReflectionEffectSprites(void);
-const u8 gUnknown_0830FD14[] = {1, 1, 6, 7, 8, 9, 6, 7, 8, 9, 11, 11, 0, 0, 0, 0};
+const u8 gReflectionEffectPaletteMap[] = {1, 1, 6, 7, 8, 9, 6, 7, 8, 9, 11, 11, 0, 0, 0, 0};
const struct SpriteTemplate gCameraSpriteTemplate = {0, 0xFFFF, &gDummyOamData, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, ObjectCB_CameraObject};
@@ -324,7 +325,7 @@ const u8 gInitialMovementTypeFacingDirections[] = {
#include "data/field_event_obj/event_object_subsprites.h"
#include "data/field_event_obj/event_object_graphics_info.h"
-const struct SpritePalette gUnknown_0837377C[] = {
+const struct SpritePalette sEventObjectSpritePalettes[] = {
{gEventObjectPalette0, 0x1103},
{gEventObjectPalette1, 0x1104},
{gEventObjectPalette2, 0x1105},
@@ -355,121 +356,122 @@ const struct SpritePalette gUnknown_0837377C[] = {
{NULL, 0x0000}
};
-const u16 Palettes_837385C[] = {
+const u16 gPlayerReflectionPaletteTags[] = {
0x1101,
0x1101,
0x1101,
0x1101
};
-const u16 Palettes_8373864[] = {
+// These were probably intended to be used for the female player's reflection.
+const u16 gUnusedPlayerReflectionPaletteTags[] = {
0x1111,
0x1111,
0x1111,
0x1111
};
-const u16 Palettes_837386C[] = {
+const u16 gPlayerUnderwaterReflectionPaletteTags[] = {
0x1115,
0x1115,
0x1115,
0x1115
};
-const struct PairedPalettes gUnknown_08373874[] = {
- {0x1100, Palettes_837385C},
- {0x1110, Palettes_837385C},
- {0x1115, Palettes_837386C},
+const struct ReflectionPaletteSet gPlayerReflectionPaletteSets[] = {
+ {0x1100, gPlayerReflectionPaletteTags},
+ {0x1110, gPlayerReflectionPaletteTags},
+ {0x1115, gPlayerUnderwaterReflectionPaletteTags},
{0x11FF, NULL}
};
-const u16 Palettes_8373894[] = {
+const u16 gQuintyPlumpReflectionPaletteTags[] = {
0x110C,
0x110C,
0x110C,
0x110C
};
-const u16 Palettes_837389C[] = {
+const u16 gTruckReflectionPaletteTags[] = {
0x110D,
0x110D,
0x110D,
0x110D
};
-const u16 Palettes_83738A4[] = {
+const u16 gMachokeMoverReflectionPaletteTags[] = {
0x110E,
0x110E,
0x110E,
0x110E
};
-const u16 Palettes_83738AC[] = {
+const u16 gMovingBoxReflectionPaletteTags[] = {
0x1112,
0x1112,
0x1112,
0x1112
};
-const u16 Palettes_83738B4[] = {
+const u16 gCableCarReflectionPaletteTags[] = {
0x1113,
0x1113,
0x1113,
0x1113
};
-const u16 Palettes_83738BC[] = {
+const u16 gSSTidalReflectionPaletteTags[] = {
0x1114,
0x1114,
0x1114,
0x1114
};
-const u16 Palettes_83738C4[] = {
+const u16 gSubmarineShadowReflectionPaletteTags[] = {
0x111A,
0x111A,
0x111A,
0x111A
};
-const u16 Palettes_83738CC[] = {
+const u16 gKyogre2ReflectionPaletteTags[] = {
0x1117,
0x1117,
0x1117,
0x1117
};
-const u16 Palettes_83738D4[] = {
+const u16 gGroudon2ReflectionPaletteTags[] = {
0x1119,
0x1119,
0x1119,
0x1119
};
-const u16 Palettes_83738DC[] = {
+const u16 gInvisibleKecleonReflectionPaletteTags[] = {
0x1109,
0x1109,
0x1109,
0x1109
};
-const struct PairedPalettes gUnknown_083738E4[] = {
- {0x1100, Palettes_837385C},
- {0x1110, Palettes_837385C},
- {0x110B, Palettes_8373894},
- {0x110D, Palettes_837389C},
- {0x110E, Palettes_83738A4},
- {0x1112, Palettes_83738AC},
- {0x1113, Palettes_83738B4},
- {0x1114, Palettes_83738BC},
- {0x1116, Palettes_83738CC},
- {0x1118, Palettes_83738D4},
- {0x1105, Palettes_83738DC},
- {0x111A, Palettes_83738C4},
+const struct ReflectionPaletteSet gSpecialObjectReflectionPaletteSets[] = {
+ {0x1100, gPlayerReflectionPaletteTags},
+ {0x1110, gPlayerReflectionPaletteTags},
+ {0x110B, gQuintyPlumpReflectionPaletteTags},
+ {0x110D, gTruckReflectionPaletteTags},
+ {0x110E, gMachokeMoverReflectionPaletteTags},
+ {0x1112, gMovingBoxReflectionPaletteTags},
+ {0x1113, gCableCarReflectionPaletteTags},
+ {0x1114, gSSTidalReflectionPaletteTags},
+ {0x1116, gKyogre2ReflectionPaletteTags},
+ {0x1118, gGroudon2ReflectionPaletteTags},
+ {0x1105, gInvisibleKecleonReflectionPaletteTags},
+ {0x111A, gSubmarineShadowReflectionPaletteTags},
{0x11FF, NULL}
};
-const u16 Unknown_837394C[] = {
+const u16 gObjectPaletteTags0[] = {
0x1100,
0x1101,
0x1103,
@@ -482,7 +484,7 @@ const u16 Unknown_837394C[] = {
0x110A
};
-const u16 Unknown_8373960[] = {
+const u16 gObjectPaletteTags1[] = {
0x1100,
0x1101,
0x1103,
@@ -495,7 +497,7 @@ const u16 Unknown_8373960[] = {
0x110A
};
-const u16 Unknown_8373974[] = {
+const u16 gObjectPaletteTags2[] = {
0x1100,
0x1101,
0x1103,
@@ -508,7 +510,7 @@ const u16 Unknown_8373974[] = {
0x110A
};
-const u16 Unknown_8373988[] = {
+const u16 gObjectPaletteTags3[] = {
0x1100,
0x1101,
0x1103,
@@ -521,11 +523,11 @@ const u16 Unknown_8373988[] = {
0x110A
};
-const u16 *const gUnknown_0837399C[] = {
- Unknown_837394C,
- Unknown_8373960,
- Unknown_8373974,
- Unknown_8373988
+const u16 *const gObjectPaletteTagSets[] = {
+ gObjectPaletteTags0,
+ gObjectPaletteTags1,
+ gObjectPaletteTags2,
+ gObjectPaletteTags3
};
#include "data/field_event_obj/berry_tree_graphics_tables.h"
@@ -729,7 +731,7 @@ bool8 (*const gDirectionBlockedMetatileFuncs[])(u8) = {
MetatileBehavior_IsWestBlocked
};
-const struct Coords16 gDirectionToVectors[] = {
+static const struct Coords16 sDirectionToVectors[] = {
{ 0, 0},
{ 0, 1},
{ 0, -1},
@@ -958,8 +960,11 @@ const u8 gUnknown_08375767[][4] = {
#include "data/field_event_obj/movement_action_func_tables.h"
-static u8 gUnknown_030005A4;
-static u16 gUnknown_030005A6;
+// There is code supporing multiple sets of player reflection palettes, but
+// the data for each is identical. Perhaps non-water/ice reflections were planned.
+static u8 sCurrentReflectionType;
+
+static u16 sCurrentSpecialObjectPaletteTag;
extern struct LinkPlayerEventObject gLinkPlayerEventObjects[];
extern u8 gReservedSpritePaletteCount;
@@ -989,16 +994,21 @@ static void ClearAllEventObjects(void)
#endif
}
-void sub_805AA98(void)
+void ResetEventObjects(void)
{
ClearLinkPlayerEventObjects();
ClearAllEventObjects();
ClearPlayerAvatarInfo();
- sub_805AAB0();
+ CreateReflectionEffectSprites();
}
-void sub_805AAB0(void)
+static void CreateReflectionEffectSprites(void)
{
+ // The reflection effect when an event object is standing over water or ice
+ // is driven by these two invisible sprites' callback functions. The callback
+ // continuously updates OAM rot/scale matrices using affine animations that scale
+ // the sprite up and down horizontally. The second one is needed to handle the inverted
+ // effect when the object is facing to the east. (The sprite has h-flip enabled).
u8 spriteId = spriteId = CreateSpriteAtEnd(gFieldEffectObjectTemplatePointers[21], 0, 0, 0x1F);
gSprites[spriteId].oam.affineMode = 1;
InitSpriteAffineAnim(&gSprites[spriteId]);
@@ -1223,9 +1233,9 @@ static u8 TrySetupEventObjectSprite(struct EventObjectTemplate *eventObjTemplate
eventObject = &gEventObjects[eventObjectId];
gfxInfo = GetEventObjectGraphicsInfo(eventObject->graphicsId);
if (gfxInfo->paletteSlot == 0)
- npc_load_two_palettes__no_record(gfxInfo->paletteTag1, gfxInfo->paletteSlot);
+ LoadPlayerObjectReflectionPalette(gfxInfo->paletteTag, gfxInfo->paletteSlot);
else if (gfxInfo->paletteSlot == 10)
- npc_load_two_palettes__and_record(gfxInfo->paletteTag1, gfxInfo->paletteSlot);
+ LoadSpecialObjectReflectionPalette(gfxInfo->paletteTag, gfxInfo->paletteSlot);
if (eventObject->movementType == MOVEMENT_TYPE_INVISIBLE)
eventObject->invisible = TRUE;
@@ -1330,7 +1340,7 @@ void MakeObjectTemplateFromEventObjectGraphicsInfo(u16 graphicsId, void (*callba
const struct EventObjectGraphicsInfo *gfxInfo = GetEventObjectGraphicsInfo(graphicsId);
sprTemplate->tileTag = gfxInfo->tileTag;
- sprTemplate->paletteTag = gfxInfo->paletteTag1;
+ sprTemplate->paletteTag = gfxInfo->paletteTag;
sprTemplate->oam = gfxInfo->oam;
sprTemplate->anims = gfxInfo->anims;
sprTemplate->images = gfxInfo->images;
@@ -1397,7 +1407,7 @@ u8 sub_805B410(u8 graphicsId, u8 b, s16 x, s16 y, u8 elevation, u8 direction)
sprite->data[0] = b;
sprite->data[1] = elevation;
if (gfxInfo->paletteSlot == 10)
- npc_load_two_palettes__and_record(gfxInfo->paletteTag1, gfxInfo->paletteSlot);
+ LoadSpecialObjectReflectionPalette(gfxInfo->paletteTag, gfxInfo->paletteSlot);
if (subspriteTables != NULL)
{
SetSubspriteTables(sprite, subspriteTables);
@@ -1497,7 +1507,7 @@ void sub_805B710(u16 a, u16 b)
#endif
}
}
- sub_805AAB0();
+ CreateReflectionEffectSprites();
}
extern void SetPlayerAvatarEventObjectIdAndObjectId(u8, u8);
@@ -1529,9 +1539,9 @@ void sub_805B75C(u8 eventObjectId, s16 b, s16 c)
sp0.images = &sp18;
*(u16 *)&sp0.paletteTag = 0xFFFF;
if (gfxInfo->paletteSlot == 0)
- npc_load_two_palettes__no_record(gfxInfo->paletteTag1, gfxInfo->paletteSlot);
+ LoadPlayerObjectReflectionPalette(gfxInfo->paletteTag, gfxInfo->paletteSlot);
if (gfxInfo->paletteSlot > 9)
- npc_load_two_palettes__and_record(gfxInfo->paletteTag1, gfxInfo->paletteSlot);
+ LoadSpecialObjectReflectionPalette(gfxInfo->paletteTag, gfxInfo->paletteSlot);
*(u16 *)&sp0.paletteTag = 0xFFFF;
spriteId = CreateSprite(&sp0, 0, 0, 0);
if (spriteId != 64)
@@ -1547,7 +1557,7 @@ void sub_805B75C(u8 eventObjectId, s16 b, s16 c)
if (eventObject->movementType == MOVEMENT_TYPE_PLAYER)
{
SetPlayerAvatarEventObjectIdAndObjectId(eventObjectId, spriteId);
- eventObject->warpArrowSpriteId = sub_8126B54();
+ eventObject->warpArrowSpriteId = CreateWarpArrowSprite();
}
if (subspriteTables != NULL)
SetSubspriteTables(sprite, subspriteTables);
@@ -1591,9 +1601,9 @@ void sub_805B980(struct EventObject *eventObject, u8 graphicsId)
gfxInfo = GetEventObjectGraphicsInfo(graphicsId);
sprite = &gSprites[eventObject->spriteId];
if (gfxInfo->paletteSlot == 0)
- pal_patch_for_npc(gfxInfo->paletteTag1, gfxInfo->paletteSlot);
+ PatchObjectPalette(gfxInfo->paletteTag, gfxInfo->paletteSlot);
if (gfxInfo->paletteSlot == 10)
- npc_load_two_palettes__and_record(gfxInfo->paletteTag1, gfxInfo->paletteSlot);
+ LoadSpecialObjectReflectionPalette(gfxInfo->paletteTag, gfxInfo->paletteSlot);
sprite->oam.shape = gfxInfo->oam->shape;
sprite->oam.size = gfxInfo->oam->size;
sprite->images = gfxInfo->images;
@@ -1749,7 +1759,7 @@ void sub_805BD90(u8 localId, u8 mapNum, u8 mapGroup, s16 x, s16 y)
}
}
-void gpu_pal_allocator_reset__manage_upper_four(void)
+void FreeAndReserveObjectSpritePalettes(void)
{
FreeAllSpritePalettes();
gReservedSpritePaletteCount = 12;
@@ -1760,7 +1770,7 @@ void sub_805BDF8(u16 tag)
u16 paletteIndex = FindEventObjectPaletteIndexByTag(tag);
if (paletteIndex != 0x11FF) //always happens. FindEventObjectPaletteIndexByTag returns u8
- sub_805BE58(&gUnknown_0837377C[paletteIndex]);
+ sub_805BE58(&sEventObjectSpritePalettes[paletteIndex]);
}
void unref_sub_805BE24(u16 *arr)
@@ -1779,58 +1789,58 @@ u8 sub_805BE58(const struct SpritePalette *palette)
return LoadSpritePalette(palette);
}
-void pal_patch_for_npc(u16 paletteTag, u16 paletteIndex)
+void PatchObjectPalette(u16 paletteTag, u16 paletteIndex)
{
u8 index = paletteIndex;
u8 tagPaletteIndex = FindEventObjectPaletteIndexByTag(paletteTag);
- LoadPalette(gUnknown_0837377C[tagPaletteIndex].data, index * 16 + 0x100, 0x20);
+ LoadPalette(sEventObjectSpritePalettes[tagPaletteIndex].data, index * 16 + 0x100, 0x20);
}
-void pal_patch_for_npc_range(const u16 *arr, u8 b, u8 c)
+static void PatchObjectPalettes(const u16 *paletteTags, u8 paletteIndex, u8 maxPaletteIndex)
{
- for (; b < c; arr++, b++)
- pal_patch_for_npc(*arr, b);
+ for (; paletteIndex < maxPaletteIndex; paletteTags++, paletteIndex++)
+ PatchObjectPalette(*paletteTags, paletteIndex);
}
u8 FindEventObjectPaletteIndexByTag(u16 tag)
{
u8 i;
- for (i = 0; gUnknown_0837377C[i].tag != 0x11FF; i++)
+ for (i = 0; sEventObjectSpritePalettes[i].tag != 0x11FF; i++)
{
- if (gUnknown_0837377C[i].tag == tag)
+ if (sEventObjectSpritePalettes[i].tag == tag)
return i;
}
return 0xFF;
}
-void npc_load_two_palettes__no_record(u16 paletteTag, u8 paletteIndex)
+void LoadPlayerObjectReflectionPalette(u16 paletteTag, u8 paletteIndex)
{
u8 i;
- pal_patch_for_npc(paletteTag, paletteIndex);
- for (i = 0; gUnknown_08373874[i].tag != 0x11FF; i++)
+ PatchObjectPalette(paletteTag, paletteIndex);
+ for (i = 0; gPlayerReflectionPaletteSets[i].mainPaletteTag != 0x11FF; i++)
{
- if (gUnknown_08373874[i].tag == paletteTag)
+ if (gPlayerReflectionPaletteSets[i].mainPaletteTag == paletteTag)
{
- pal_patch_for_npc(gUnknown_08373874[i].data[gUnknown_030005A4], gUnknown_0830FD14[paletteIndex]);
+ PatchObjectPalette(gPlayerReflectionPaletteSets[i].reflectionPaletteTags[sCurrentReflectionType], gReflectionEffectPaletteMap[paletteIndex]);
break;
}
}
}
-void npc_load_two_palettes__and_record(u16 paletteTag, u8 paletteIndex)
+void LoadSpecialObjectReflectionPalette(u16 paletteTag, u8 paletteIndex)
{
u8 i;
- gUnknown_030005A6 = paletteTag;
- pal_patch_for_npc(paletteTag, paletteIndex);
- for (i = 0; gUnknown_083738E4[i].tag != 0x11FF; i++)
+ sCurrentSpecialObjectPaletteTag = paletteTag;
+ PatchObjectPalette(paletteTag, paletteIndex);
+ for (i = 0; gSpecialObjectReflectionPaletteSets[i].mainPaletteTag != 0x11FF; i++)
{
- if (gUnknown_083738E4[i].tag == paletteTag)
+ if (gSpecialObjectReflectionPaletteSets[i].mainPaletteTag == paletteTag)
{
- pal_patch_for_npc(gUnknown_083738E4[i].data[gUnknown_030005A4], gUnknown_0830FD14[paletteIndex]);
+ PatchObjectPalette(gSpecialObjectReflectionPaletteSets[i].reflectionPaletteTags[sCurrentReflectionType], gReflectionEffectPaletteMap[paletteIndex]);
break;
}
}
@@ -2046,7 +2056,7 @@ u8 unref_sub_805C43C(struct Sprite *src, s16 x, s16 y, u8 subpriority)
{
u8 i;
- for (i = 0; i < 64; i++)
+ for (i = 0; i < MAX_SPRITES; i++)
{
if (!gSprites[i].inUse)
{
@@ -2060,11 +2070,11 @@ u8 unref_sub_805C43C(struct Sprite *src, s16 x, s16 y, u8 subpriority)
return i;
}
-u8 obj_unfreeze(struct Sprite *src, s16 x, s16 y, u8 subpriority)
+u8 CreateCopySpriteAt(struct Sprite *src, s16 x, s16 y, u8 subpriority)
{
s16 i;
- for (i = 63; i > -1; i--)
+ for (i = MAX_SPRITES - 1; i > -1; i--)
{
if (!gSprites[i].inUse)
{
@@ -2075,7 +2085,8 @@ u8 obj_unfreeze(struct Sprite *src, s16 x, s16 y, u8 subpriority)
return i;
}
}
- return 64;
+
+ return MAX_SPRITES;
}
void SetEventObjectDirection(struct EventObject *eventObject, u8 direction)
@@ -2210,28 +2221,31 @@ void TryOverrideTemplateCoordsForEventObject(u8 localId, u8 mapNum, u8 mapGroup)
OverrideTemplateCoordsForEventObject(&gEventObjects[eventObjectId]);
}
-void sub_805C7C4(u8 a)
+void InitEventObjectPalettes(u8 reflectionType)
{
- gpu_pal_allocator_reset__manage_upper_four();
- gUnknown_030005A6 = 0x11FF;
- gUnknown_030005A4 = a;
- pal_patch_for_npc_range(gUnknown_0837399C[gUnknown_030005A4], 0, 10);
+ FreeAndReserveObjectSpritePalettes();
+ sCurrentSpecialObjectPaletteTag = 0x11FF;
+ sCurrentReflectionType = reflectionType;
+ PatchObjectPalettes(gObjectPaletteTagSets[sCurrentReflectionType], 0, 10);
}
-u16 npc_paltag_by_palslot(u8 a)
+u16 GetObjectPaletteTag(u8 paletteIndex)
{
u8 i;
- if (a < 10)
- return gUnknown_0837399C[gUnknown_030005A4][a];
+ // Regular objects and the player occupy the first 10 palettes.
+ if (paletteIndex < 10)
+ return gObjectPaletteTagSets[sCurrentReflectionType][paletteIndex];
- for (i = 0; gUnknown_083738E4[i].tag != 0x11FF; i++)
+ // Palette slots 10 and 11 belong to the special object.
+ for (i = 0; gSpecialObjectReflectionPaletteSets[i].mainPaletteTag != 0x11FF; i++)
{
- if (gUnknown_083738E4[i].tag == gUnknown_030005A6)
+ if (gSpecialObjectReflectionPaletteSets[i].mainPaletteTag == sCurrentSpecialObjectPaletteTag)
{
- return gUnknown_083738E4[i].data[gUnknown_030005A4];
+ return gSpecialObjectReflectionPaletteSets[i].reflectionPaletteTags[sCurrentReflectionType];
}
}
+
return 0x11FF;
}
@@ -4445,14 +4459,14 @@ void sub_8060288(u8 localId, u8 mapNum, u8 mapGroup)
void MoveCoords(u8 direction, s16 *x, s16 *y)
{
- *x += gDirectionToVectors[direction].x;
- *y += gDirectionToVectors[direction].y;
+ *x += sDirectionToVectors[direction].x;
+ *y += sDirectionToVectors[direction].y;
}
void Unref_MovePixelCoords(u8 direction, s16 *x, s16 *y)
{
- *x += gDirectionToVectors[direction].x << 4;
- *y += gDirectionToVectors[direction].y << 4;
+ *x += sDirectionToVectors[direction].x << 4;
+ *y += sDirectionToVectors[direction].y << 4;
}
static void MoveCoordsInDirection(u32 dir, s16 *x, s16 *y, s16 deltaX, s16 deltaY)
@@ -4460,13 +4474,13 @@ static void MoveCoordsInDirection(u32 dir, s16 *x, s16 *y, s16 deltaX, s16 delta
u8 direction = dir;
s16 dx2 = (u16)deltaX;
s16 dy2 = (u16)deltaY;
- if (gDirectionToVectors[direction].x > 0)
+ if (sDirectionToVectors[direction].x > 0)
*x += dx2;
- if (gDirectionToVectors[direction].x < 0)
+ if (sDirectionToVectors[direction].x < 0)
*x -= dx2;
- if (gDirectionToVectors[direction].y > 0)
+ if (sDirectionToVectors[direction].y > 0)
*y += dy2;
- if (gDirectionToVectors[direction].y < 0)
+ if (sDirectionToVectors[direction].y < 0)
*y -= dy2;
}
@@ -7554,12 +7568,12 @@ void GroundEffect_MoveOnLongGrass(struct EventObject *eventObj, struct Sprite *s
void GroundEffect_WaterReflection(struct EventObject *eventObj, struct Sprite *sprite)
{
- SetUpReflection(eventObj, sprite, 0);
+ InitObjectReflectionSprite(eventObj, sprite, 0);
}
void GroundEffect_IceReflection(struct EventObject *eventObj, struct Sprite *sprite)
{
- SetUpReflection(eventObj, sprite, 1);
+ InitObjectReflectionSprite(eventObj, sprite, 1);
}
void GroundEffect_FlowingWater(struct EventObject *eventObj, struct Sprite *sprite)
@@ -7655,8 +7669,12 @@ void GroundEffect_JumpOnTallGrass(struct EventObject *eventObj, struct Sprite *s
gFieldEffectArguments[3] = 2;
FieldEffectStart(FLDEFF_JUMP_TALL_GRASS);
- spriteId = sub_8126FF0(
- eventObj->localId, eventObj->mapNum, eventObj->mapGroup, eventObj->currentCoords.x, eventObj->currentCoords.y);
+ spriteId = FindTallGrassFieldEffectSpriteId(
+ eventObj->localId,
+ eventObj->mapNum,
+ eventObj->mapGroup,
+ eventObj->currentCoords.x,
+ eventObj->currentCoords.y);
if (spriteId == MAX_SPRITES)
GroundEffect_SpawnOnTallGrass(eventObj, sprite);
@@ -7871,32 +7889,32 @@ void UnfreezeEventObjects(void)
static void Step1(struct Sprite *sprite, u8 dir)
{
- sprite->pos1.x += gDirectionToVectors[dir].x;
- sprite->pos1.y += gDirectionToVectors[dir].y;
+ sprite->pos1.x += sDirectionToVectors[dir].x;
+ sprite->pos1.y += sDirectionToVectors[dir].y;
}
static void Step2(struct Sprite *sprite, u8 dir)
{
- sprite->pos1.x += 2 * (u16) gDirectionToVectors[dir].x;
- sprite->pos1.y += 2 * (u16) gDirectionToVectors[dir].y;
+ sprite->pos1.x += 2 * (u16) sDirectionToVectors[dir].x;
+ sprite->pos1.y += 2 * (u16) sDirectionToVectors[dir].y;
}
static void Step3(struct Sprite *sprite, u8 dir)
{
- sprite->pos1.x += 2 * (u16) gDirectionToVectors[dir].x + (u16) gDirectionToVectors[dir].x;
- sprite->pos1.y += 2 * (u16) gDirectionToVectors[dir].y + (u16) gDirectionToVectors[dir].y;
+ sprite->pos1.x += 2 * (u16) sDirectionToVectors[dir].x + (u16) sDirectionToVectors[dir].x;
+ sprite->pos1.y += 2 * (u16) sDirectionToVectors[dir].y + (u16) sDirectionToVectors[dir].y;
}
static void Step4(struct Sprite *sprite, u8 dir)
{
- sprite->pos1.x += 4 * (u16) gDirectionToVectors[dir].x;
- sprite->pos1.y += 4 * (u16) gDirectionToVectors[dir].y;
+ sprite->pos1.x += 4 * (u16) sDirectionToVectors[dir].x;
+ sprite->pos1.y += 4 * (u16) sDirectionToVectors[dir].y;
}
static void Step8(struct Sprite *sprite, u8 dir)
{
- sprite->pos1.x += 8 * (u16) gDirectionToVectors[dir].x;
- sprite->pos1.y += 8 * (u16) gDirectionToVectors[dir].y;
+ sprite->pos1.x += 8 * (u16) sDirectionToVectors[dir].x;
+ sprite->pos1.y += 8 * (u16) sDirectionToVectors[dir].y;
}
static void oamt_npc_ministep_reset(struct Sprite *sprite, u8 direction, u8 a3)
diff --git a/src/evolution_scene.c b/src/evolution_scene.c
index 48d5dd82c..182f85d8d 100644
--- a/src/evolution_scene.c
+++ b/src/evolution_scene.c
@@ -567,14 +567,14 @@ static void Task_EvolutionScene(u8 taskID)
case 3: // wait for cry, play tu du SE
if (IsCryFinished())
{
- PlaySE(BGM_ME_SHINKA);
+ PlaySE(MUS_ME_SHINKA);
gTasks[taskID].tState++;
}
break;
case 4: // play evolution music and fade screen black
if (!IsSEPlaying())
{
- PlayNewMapMusic(BGM_SHINKA);
+ PlayNewMapMusic(MUS_SHINKA);
gTasks[taskID].tState++;
BeginNormalPaletteFade(0x1C, 4, 0, 16, RGB(0, 0, 0));
}
@@ -642,7 +642,7 @@ static void Task_EvolutionScene(u8 taskID)
{
StringExpandPlaceholders(gStringVar4, BattleText_FinishEvo);
Text_InitWindow8002EB0(&gUnknown_03004210, gStringVar4, 144, 2, 15);
- PlayBGM(BGM_FANFA5);
+ PlayBGM(MUS_FANFA5);
gTasks[taskID].tState++;
SetMonData(mon, MON_DATA_SPECIES, (void*)(&gTasks[taskID].tPostEvoSpecies));
CalculateMonStats(mon);
@@ -719,7 +719,7 @@ static void Task_EvolutionScene(u8 taskID)
if (gUnknown_03004210.state == 0 && !IsSEPlaying())
{
sub_8024CEC();
- PlayFanfare(BGM_FANFA1);
+ PlayFanfare(MUS_FANFA1);
StrCpyDecodeToDisplayedStringBattle(gBattleStringsTable[3]);
Text_InitWindow8002EB0(&gUnknown_03004210, gDisplayedStringBattle, 144, 2, 15);
gTasks[taskID].tLearnsFirstMove = 0x40; // re-used as a counter
@@ -908,15 +908,15 @@ static void Task_TradeEvolutionScene(u8 taskID)
case 2:
if (IsCryFinished())
{
- m4aSongNumStop(BGM_SHINKA);
- PlaySE(BGM_ME_SHINKA);
+ m4aSongNumStop(MUS_SHINKA);
+ PlaySE(MUS_ME_SHINKA);
gTasks[taskID].tState++;
}
break;
case 3:
if (!IsSEPlaying())
{
- PlayBGM(BGM_SHINKA);
+ PlayBGM(MUS_SHINKA);
gTasks[taskID].tState++;
BeginNormalPaletteFade(0x1C, 4, 0, 16, RGB(0, 0, 0));
}
@@ -984,7 +984,7 @@ static void Task_TradeEvolutionScene(u8 taskID)
{
StringExpandPlaceholders(gStringVar4, BattleText_FinishEvo);
Text_InitWindow8002EB0(&gUnknown_03004828->window, gStringVar4, gUnknown_03004828->textWindowBaseTileNum, 2, 15);
- PlayFanfare(BGM_FANFA5);
+ PlayFanfare(MUS_FANFA5);
gTasks[taskID].tState++;
SetMonData(mon, MON_DATA_SPECIES, (void*)(&gTasks[taskID].tPostEvoSpecies));
CalculateMonStats(mon);
@@ -1016,7 +1016,7 @@ static void Task_TradeEvolutionScene(u8 taskID)
}
else
{
- PlayBGM(BGM_SHINKA);
+ PlayBGM(MUS_SHINKA);
Text_InitWindow8002EB0(&gUnknown_03004828->window, gOtherText_LinkStandby2, gUnknown_03004828->textWindowBaseTileNum, 2, 15);
gTasks[taskID].tState++;
}
@@ -1033,7 +1033,7 @@ static void Task_TradeEvolutionScene(u8 taskID)
if (gUnknown_03004828->window.state == 0 && !IsSEPlaying())
{
sub_8024CEC();
- PlayFanfare(BGM_FANFA1);
+ PlayFanfare(MUS_FANFA1);
StrCpyDecodeToDisplayedStringBattle(gBattleStringsTable[3]);
Text_InitWindow8002EB0(&gUnknown_03004828->window, gDisplayedStringBattle, gUnknown_03004828->textWindowBaseTileNum, 2, 15);
gTasks[taskID].tLearnsFirstMove = 0x40; // re-used as a counter
diff --git a/src/field_camera.c b/src/field_camera.c
index fa8f1a582..29cdf0496 100644
--- a/src/field_camera.c
+++ b/src/field_camera.c
@@ -24,18 +24,18 @@ static s16 sVerticalCameraPan;
static u8 gUnknown_0300059C;
static void (*sFieldCameraPanningCallback)(void);
-struct FieldCamera gFieldCamera;
-u16 gTotalCameraPixelOffsetY;
-u16 gTotalCameraPixelOffsetX;
-
-static void RedrawMapSliceNorth(struct FieldCameraOffset*, struct MapData*);
-static void RedrawMapSliceSouth(struct FieldCameraOffset*, struct MapData*);
-static void RedrawMapSliceEast(struct FieldCameraOffset*, struct MapData*);
-static void RedrawMapSliceWest(struct FieldCameraOffset*, struct MapData*);
+extern struct FieldCamera gFieldCamera;
+extern u16 gTotalCameraPixelOffsetY;
+extern u16 gTotalCameraPixelOffsetX;
+
+static void RedrawMapSliceNorth(struct FieldCameraOffset*, struct MapLayout*);
+static void RedrawMapSliceSouth(struct FieldCameraOffset*, struct MapLayout*);
+static void RedrawMapSliceEast(struct FieldCameraOffset*, struct MapLayout*);
+static void RedrawMapSliceWest(struct FieldCameraOffset*, struct MapLayout*);
static s32 MapPosToBgTilemapOffset(struct FieldCameraOffset*, s32, s32);
-static void DrawWholeMapViewInternal(int x, int y, struct MapData*);
-static void DrawMetatileAt(struct MapData*, u16, int, int);
+static void DrawWholeMapViewInternal(int x, int y, struct MapLayout*);
+static void DrawMetatileAt(struct MapLayout*, u16, int, int);
static void DrawMetatile(s32, u16*, u16);
static void CameraPanningCB_PanAhead(void);
@@ -96,11 +96,11 @@ void sub_8057B14(u16 *a, u16 *b)
void DrawWholeMapView(void)
{
- DrawWholeMapViewInternal(gSaveBlock1.pos.x, gSaveBlock1.pos.y, gMapHeader.mapData);
+ DrawWholeMapViewInternal(gSaveBlock1.pos.x, gSaveBlock1.pos.y, gMapHeader.mapLayout);
sFieldCameraOffset.copyBGToVRAM = TRUE;
}
-static void DrawWholeMapViewInternal(int x, int y, struct MapData *mapData)
+static void DrawWholeMapViewInternal(int x, int y, struct MapLayout *mapLayout)
{
u8 i;
u8 j;
@@ -118,27 +118,27 @@ static void DrawWholeMapViewInternal(int x, int y, struct MapData *mapData)
temp = sFieldCameraOffset.xTileOffset + j;
if (temp >= 32)
temp -= 32;
- DrawMetatileAt(mapData, r6 + temp, x + j / 2, y + i / 2);
+ DrawMetatileAt(mapLayout, r6 + temp, x + j / 2, y + i / 2);
}
}
}
static void RedrawMapSlicesForCameraUpdate(struct FieldCameraOffset *cameraOffset, int x, int y)
{
- struct MapData *mapData = gMapHeader.mapData;
+ struct MapLayout *mapLayout = gMapHeader.mapLayout;
if (x > 0)
- RedrawMapSliceWest(cameraOffset, mapData);
+ RedrawMapSliceWest(cameraOffset, mapLayout);
if (x < 0)
- RedrawMapSliceEast(cameraOffset, mapData);
+ RedrawMapSliceEast(cameraOffset, mapLayout);
if (y > 0)
- RedrawMapSliceNorth(cameraOffset, mapData);
+ RedrawMapSliceNorth(cameraOffset, mapLayout);
if (y < 0)
- RedrawMapSliceSouth(cameraOffset, mapData);
+ RedrawMapSliceSouth(cameraOffset, mapLayout);
cameraOffset->copyBGToVRAM = TRUE;
}
-static void RedrawMapSliceNorth(struct FieldCameraOffset *cameraOffset, struct MapData *mapData)
+static void RedrawMapSliceNorth(struct FieldCameraOffset *cameraOffset, struct MapLayout *mapLayout)
{
u8 i;
u8 temp;
@@ -153,11 +153,11 @@ static void RedrawMapSliceNorth(struct FieldCameraOffset *cameraOffset, struct M
temp = cameraOffset->xTileOffset + i;
if (temp >= 32)
temp -= 32;
- DrawMetatileAt(mapData, r7 + temp, gSaveBlock1.pos.x + i / 2, gSaveBlock1.pos.y + 14);
+ DrawMetatileAt(mapLayout, r7 + temp, gSaveBlock1.pos.x + i / 2, gSaveBlock1.pos.y + 14);
}
}
-static void RedrawMapSliceSouth(struct FieldCameraOffset *cameraOffset, struct MapData *mapData)
+static void RedrawMapSliceSouth(struct FieldCameraOffset *cameraOffset, struct MapLayout *mapLayout)
{
u8 i;
u8 temp;
@@ -168,11 +168,11 @@ static void RedrawMapSliceSouth(struct FieldCameraOffset *cameraOffset, struct M
temp = cameraOffset->xTileOffset + i;
if (temp >= 32)
temp -= 32;
- DrawMetatileAt(mapData, r7 + temp, gSaveBlock1.pos.x + i / 2, gSaveBlock1.pos.y);
+ DrawMetatileAt(mapLayout, r7 + temp, gSaveBlock1.pos.x + i / 2, gSaveBlock1.pos.y);
}
}
-static void RedrawMapSliceEast(struct FieldCameraOffset *cameraOffset, struct MapData *mapData)
+static void RedrawMapSliceEast(struct FieldCameraOffset *cameraOffset, struct MapLayout *mapLayout)
{
u8 i;
u8 temp;
@@ -183,11 +183,11 @@ static void RedrawMapSliceEast(struct FieldCameraOffset *cameraOffset, struct Ma
temp = cameraOffset->yTileOffset + i;
if (temp >= 32)
temp -= 32;
- DrawMetatileAt(mapData, temp * 32 + r6, gSaveBlock1.pos.x, gSaveBlock1.pos.y + i / 2);
+ DrawMetatileAt(mapLayout, temp * 32 + r6, gSaveBlock1.pos.x, gSaveBlock1.pos.y + i / 2);
}
}
-static void RedrawMapSliceWest(struct FieldCameraOffset *cameraOffset, struct MapData *mapData)
+static void RedrawMapSliceWest(struct FieldCameraOffset *cameraOffset, struct MapLayout *mapLayout)
{
u8 i;
u8 temp;
@@ -200,7 +200,7 @@ static void RedrawMapSliceWest(struct FieldCameraOffset *cameraOffset, struct Ma
temp = cameraOffset->yTileOffset + i;
if (temp >= 32)
temp -= 32;
- DrawMetatileAt(mapData, temp * 32 + r5, gSaveBlock1.pos.x + 14, gSaveBlock1.pos.y + i / 2);
+ DrawMetatileAt(mapLayout, temp * 32 + r5, gSaveBlock1.pos.x + 14, gSaveBlock1.pos.y + i / 2);
}
}
@@ -210,7 +210,7 @@ void CurrentMapDrawMetatileAt(int x, int y)
if (offset >= 0)
{
- DrawMetatileAt(gMapHeader.mapData, offset, x, y);
+ DrawMetatileAt(gMapHeader.mapLayout, offset, x, y);
sFieldCameraOffset.copyBGToVRAM = TRUE;
}
}
@@ -226,7 +226,7 @@ void DrawDoorMetatileAt(int x, int y, u16 *arr)
}
}
-static void DrawMetatileAt(struct MapData *mapData, u16 offset, int x, int y)
+static void DrawMetatileAt(struct MapLayout *mapLayout, u16 offset, int x, int y)
{
u16 *metatiles;
u16 metatileId = MapGridGetMetatileIdAt(x, y);
@@ -236,11 +236,11 @@ static void DrawMetatileAt(struct MapData *mapData, u16 offset, int x, int y)
if (metatileId < 0x200)
{
- metatiles = mapData->primaryTileset->metatiles;
+ metatiles = mapLayout->primaryTileset->metatiles;
}
else
{
- metatiles = mapData->secondaryTileset->metatiles;
+ metatiles = mapLayout->secondaryTileset->metatiles;
metatileId -= 0x200;
}
diff --git a/src/field_control_avatar.c b/src/field_control_avatar.c
index 273378c14..a973b80ca 100644
--- a/src/field_control_avatar.c
+++ b/src/field_control_avatar.c
@@ -356,7 +356,7 @@ u8 *GetInteractedLinkPlayerScript(struct MapPosition *position, u8 metatileBehav
if (!MetatileBehavior_IsCounter(MapGridGetMetatileBehaviorAt(position->x, position->y)))
eventObjectId = GetEventObjectIdByXYZ(position->x, position->y, position->height);
else
- eventObjectId = GetEventObjectIdByXYZ(position->x + gUnknown_0821664C[direction].x, position->y + gUnknown_0821664C[direction].y, position->height);
+ eventObjectId = GetEventObjectIdByXYZ(position->x + gDirectionToVectors[direction].x, position->y + gDirectionToVectors[direction].y, position->height);
if (eventObjectId == 16 || gEventObjects[eventObjectId].localId == 0xFF)
return NULL;
@@ -385,7 +385,7 @@ static u8 *GetInteractedEventObjectScript(struct MapPosition *position, u8 metat
return NULL;
// Look for an event object on the other side of the counter.
- eventObjectId = GetEventObjectIdByXYZ(position->x + gUnknown_0821664C[direction].x, position->y + gUnknown_0821664C[direction].y, position->height);
+ eventObjectId = GetEventObjectIdByXYZ(position->x + gDirectionToVectors[direction].x, position->y + gDirectionToVectors[direction].y, position->height);
if (eventObjectId == 16 || gEventObjects[eventObjectId].localId == 0xFF)
return NULL;
}
@@ -680,7 +680,7 @@ static bool8 mapheader_run_first_tag2_script_list_match_conditionally(struct Map
if (IsArrowWarpMetatileBehavior(metatileBehavior, direction) == TRUE && warpEventId != -1)
{
- walkrun_find_lowest_active_bit_in_bitfield();
+ StoreInitialPlayerAvatarState();
sub_8068C30(&gMapHeader, warpEventId, position);
sub_8080E88();
return TRUE;
@@ -694,7 +694,7 @@ bool8 TryStartWarpEventScript(struct MapPosition *position, u16 metatileBehavior
if (warpEventId != -1 && IsWarpMetatileBehavior(metatileBehavior) == TRUE)
{
- walkrun_find_lowest_active_bit_in_bitfield();
+ StoreInitialPlayerAvatarState();
sub_8068C30(&gMapHeader, warpEventId, position);
if (MetatileBehavior_IsEscalator(metatileBehavior) == TRUE)
{
@@ -798,7 +798,7 @@ static bool8 map_warp_consider_2_to_inside(struct MapPosition *position, u16 met
warpEventId = FindWarpEventByPosition(&gMapHeader, position);
if (warpEventId != -1 && IsWarpMetatileBehavior(metatileBehavior) == TRUE)
{
- walkrun_find_lowest_active_bit_in_bitfield();
+ StoreInitialPlayerAvatarState();
sub_8068C30(&gMapHeader, warpEventId, position);
sub_8080EF0();
return TRUE;
@@ -894,7 +894,7 @@ bool8 dive_warp(struct MapPosition *position, u16 metatileBehavior)
{
if (SetDiveWarpEmerge(position->x - 7, position->y - 7))
{
- walkrun_find_lowest_active_bit_in_bitfield();
+ StoreInitialPlayerAvatarState();
sp13E_warp_to_last_warp();
PlaySE(SE_W291);
return TRUE;
@@ -904,7 +904,7 @@ bool8 dive_warp(struct MapPosition *position, u16 metatileBehavior)
{
if (SetDiveWarpDive(position->x - 7, position->y - 7))
{
- walkrun_find_lowest_active_bit_in_bitfield();
+ StoreInitialPlayerAvatarState();
sp13E_warp_to_last_warp();
PlaySE(SE_W291);
return TRUE;
diff --git a/src/field_effect.c b/src/field_effect.c
index 91794a07a..90c11b8c3 100644
--- a/src/field_effect.c
+++ b/src/field_effect.c
@@ -306,9 +306,11 @@ bool8 (*const gUnknown_0839F364[])(struct Task *, struct EventObject *, struct S
sub_80877D4
};
-void (*const gUnknown_0839F378[])(struct Task *) = {
- sub_80878F4,
- sub_8087914
+static void EscapeRopeFieldEffect_Step0(struct Task *);
+static void EscapeRopeFieldEffect_Step1(struct Task *);
+void (*const gEscapeRopeFieldEffectFuncs[])(struct Task *) = {
+ EscapeRopeFieldEffect_Step0,
+ EscapeRopeFieldEffect_Step1
};
static u8 sActiveList[32];
@@ -918,7 +920,7 @@ void PokeballGlowEffect_1(struct Sprite *sprite)
sprite->data[3] = 0;
if (sprite->data[5])
{
- PlayFanfare(BGM_ME_ASA);
+ PlayFanfare(MUS_ME_ASA);
}
}
}
@@ -1107,7 +1109,7 @@ void task00_8084310(u8 taskId)
if (!FieldEffectActiveListContains(FLDEFF_USE_FLY))
{
Overworld_ResetStateAfterFly();
- warp_in();
+ WarpIntoMap();
SetMainCallback2(CB2_LoadMap);
gFieldCallback = mapldr_08084390;
DestroyTask(taskId);
@@ -1150,7 +1152,6 @@ void c3_080843F8(u8 taskId)
}
}
-extern void pal_fill_for_map_transition(void);
void sub_8086774(u8);
extern void CameraObjectReset2(void);
extern void CameraObjectReset1(void);
@@ -1286,14 +1287,13 @@ bool8 sub_80869F8(struct Task *task)
void sub_8086A68(u8);
extern void sub_80B4824(u8);
-extern void sub_8053FF8(void);
-extern void fade_8080918(void);
+extern void TryFadeOutOldMapMusic(void);
void sub_8086B98(struct Task *);
void sub_8086BE4(struct Task *);
void sub_8086C30(void);
void sub_8086C40(void);
-bool8 sub_8054034(void);
+bool8 BGMusicStopped(void);
void sub_8086C94(void);
void sub_80B483C(void);
void sub_8086CBC(u8);
@@ -1408,16 +1408,16 @@ void sub_8086BE4(struct Task *task)
void sub_8086C30(void)
{
- sub_8053FF8();
- fade_8080918();
+ TryFadeOutOldMapMusic();
+ WarpFadeScreen();
}
void sub_8086C40(void)
{
- if (!gPaletteFade.active && sub_8054034() == TRUE)
+ if (!gPaletteFade.active && BGMusicStopped() == TRUE)
{
sub_80B483C();
- warp_in();
+ WarpIntoMap();
gFieldCallback = sub_8086C94;
SetMainCallback2(CB2_LoadMap);
DestroyTask(FindTaskIdByFunc(sub_8086A68));
@@ -1767,17 +1767,17 @@ bool8 sub_80872E4(struct Task *task, struct EventObject *eventObject, struct Spr
bool8 sub_80873D8(struct Task *task, struct EventObject *eventObject, struct Sprite *sprite)
{
- sub_8053FF8();
- fade_8080918();
+ TryFadeOutOldMapMusic();
+ WarpFadeScreen();
task->data[0]++;
return FALSE;
}
bool8 sub_80873F4(struct Task *task, struct EventObject *eventObject, struct Sprite *sprite)
{
- if (!gPaletteFade.active && sub_8054034() == TRUE)
+ if (!gPaletteFade.active && BGMusicStopped() == TRUE)
{
- warp_in();
+ WarpIntoMap();
gFieldCallback = mapldr_080851BC;
SetMainCallback2(CB2_LoadMap);
DestroyTask(FindTaskIdByFunc(sub_80871D0));
@@ -1930,21 +1930,21 @@ bool8 sub_80877AC(struct Task *task, struct EventObject *eventObject, struct Spr
{
if (!FieldEffectActiveListContains(FLDEFF_POP_OUT_OF_ASH))
{
- sub_8053FF8();
- fade_8080918();
+ TryFadeOutOldMapMusic();
+ WarpFadeScreen();
task->data[0]++;
}
return FALSE;
}
-void sub_80878C4(u8);
+static void DoEscapeRopeFieldEffect(u8);
void mapldr_080859D4(void);
bool8 sub_80877D4(struct Task *task, struct EventObject *eventObject, struct Sprite *sprite)
{
- if (!gPaletteFade.active && sub_8054034() == TRUE)
+ if (!gPaletteFade.active && BGMusicStopped() == TRUE)
{
- warp_in();
+ WarpIntoMap();
gFieldCallback = sub_8086748;
SetMainCallback2(CB2_LoadMap);
DestroyTask(FindTaskIdByFunc(sub_808766C));
@@ -1970,52 +1970,60 @@ void sub_808788C(struct Sprite *sprite)
}
}
-void sub_80878A8(void)
+void StartEscapeRopeFieldEffect(void)
{
ScriptContext2_Enable();
FreezeEventObjects();
- CreateTask(sub_80878C4, 0x50);
+ CreateTask(DoEscapeRopeFieldEffect, 0x50);
}
-void sub_80878C4(u8 taskId)
+static void DoEscapeRopeFieldEffect(u8 taskId)
{
- gUnknown_0839F378[gTasks[taskId].data[0]](&gTasks[taskId]);
+ gEscapeRopeFieldEffectFuncs[gTasks[taskId].data[0]](&gTasks[taskId]);
}
-void sub_80878F4(struct Task *task)
+static void EscapeRopeFieldEffect_Step0(struct Task *task)
{
task->data[0]++;
task->data[14] = 64;
task->data[15] = GetPlayerFacingDirection();
}
-void sub_8087914(struct Task *task)
+static void EscapeRopeFieldEffect_Step1(struct Task *task)
{
struct EventObject *eventObject;
- u8 unknown_0839F380[5] = {1, 3, 4, 2, 1};
+ u8 clockwiseDirections[5] = {
+ DIR_SOUTH,
+ DIR_WEST,
+ DIR_EAST,
+ DIR_NORTH,
+ DIR_SOUTH,
+ };
+
if (task->data[14] != 0 && (--task->data[14]) == 0)
{
- sub_8053FF8();
- fade_8080918();
+ TryFadeOutOldMapMusic();
+ WarpFadeScreen();
}
+
eventObject = &gEventObjects[gPlayerAvatar.eventObjectId];
if (!EventObjectIsMovementOverridden(eventObject) || EventObjectClearHeldMovementIfFinished(eventObject))
{
- if (task->data[14] == 0 && !gPaletteFade.active && sub_8054034() == TRUE)
+ if (task->data[14] == 0 && !gPaletteFade.active && BGMusicStopped() == TRUE)
{
SetEventObjectDirection(eventObject, task->data[15]);
sub_8053678();
- warp_in();
+ WarpIntoMap();
gFieldCallback = mapldr_080859D4;
SetMainCallback2(CB2_LoadMap);
- DestroyTask(FindTaskIdByFunc(sub_80878C4));
- } else if (task->data[1] == 0 || (--task->data[1]) == 0)
+ DestroyTask(FindTaskIdByFunc(DoEscapeRopeFieldEffect));
+ }
+ else if (task->data[1] == 0 || (--task->data[1]) == 0)
{
- EventObjectSetHeldMovement(eventObject, GetFaceDirectionMovementAction(unknown_0839F380[eventObject->facingDirection]));
+ EventObjectSetHeldMovement(eventObject, GetFaceDirectionMovementAction(clockwiseDirections[eventObject->facingDirection]));
if (task->data[2] < 12)
- {
task->data[2]++;
- }
+
task->data[1] = 8 >> (task->data[2] >> 2);
}
}
@@ -2157,17 +2165,17 @@ static void TeleportFieldEffectTask3(struct Task *task)
if (task->data[4] >= 0xa8)
{
task->data[0]++;
- sub_8053FF8();
- fade_8080918();
+ TryFadeOutOldMapMusic();
+ WarpFadeScreen();
}
}
static void TeleportFieldEffectTask4(struct Task *task)
{
- if (!gPaletteFade.active && sub_8054034() == TRUE)
+ if (!gPaletteFade.active && BGMusicStopped() == TRUE)
{
Overworld_SetWarpDestToLastHealLoc();
- warp_in();
+ WarpIntoMap();
SetMainCallback2(CB2_LoadMap);
gFieldCallback = mapldr_08085D88;
DestroyTask(FindTaskIdByFunc(ExecuteTeleportFieldEffectTask));
@@ -3062,7 +3070,7 @@ void sub_8088F10(struct Task *task)
{
if (sub_8088FA4(task->data[1]))
{
- fade_8080918();
+ WarpFadeScreen();
task->data[0]++;
}
}
diff --git a/src/field_effect_helpers.c b/src/field_effect_helpers.c
index 73082bdb7..84f340b35 100644
--- a/src/field_effect_helpers.c
+++ b/src/field_effect_helpers.c
@@ -11,148 +11,153 @@
#include "constants/field_effects.h"
#include "constants/songs.h"
-static void sub_81269E0(struct Sprite *);
-static void npc_pal_op(struct EventObject *eventObject, struct Sprite *sprite);
-static void npc_pal_op_A(struct EventObject *, u8);
-static void npc_pal_op_B(struct EventObject *, u8);
-static void sub_81275A0(struct Sprite *);
-static void sub_81275C4(struct Sprite *);
-static void sub_8127DA0(struct Sprite *);
-static void sub_8127DD0(struct Sprite *);
-static void sub_8127E30(struct Sprite *);
+static void UpdateObjectReflectionSprite(struct Sprite *);
+static void LoadObjectReflectionPalette(struct EventObject *eventObject, struct Sprite *sprite);
+static void LoadObjectHighBridgeReflectionPalette(struct EventObject *, u8);
+static void LoadObjectRegularReflectionPalette(struct EventObject *, u8);
+static void FadeFootprintsTireTracks_Step0(struct Sprite *);
+static void FadeFootprintsTireTracks_Step1(struct Sprite *);
+static void UpdateAshFieldEffect_Step0(struct Sprite *);
+static void UpdateAshFieldEffect_Step1(struct Sprite *);
+static void UpdateAshFieldEffect_Step2(struct Sprite *);
static void sub_812882C(struct Sprite *, u8, u8);
-static void sub_81278D8(struct Sprite *);
+static void UpdateFeetInFlowingWaterFieldEffect(struct Sprite *);
static void sub_8127FD4(struct EventObject *, struct Sprite *);
static void sub_812800C(struct EventObject *, struct Sprite *);
static void sub_81280A0(struct EventObject *, struct Sprite *, struct Sprite *);
static void sub_8128174(struct Sprite *);
static u32 ShowDisguiseFieldEffect(u8, u8, u8);
-void SetUpReflection(struct EventObject *eventObject, struct Sprite *sprite, bool8 flag)
+void InitObjectReflectionSprite(struct EventObject *eventObject, struct Sprite *sprite, bool8 stillReflection)
{
- struct Sprite *newSprite;
+ struct Sprite *reflectionSprite;
- newSprite = &gSprites[obj_unfreeze(sprite, sprite->pos1.x, sprite->pos1.y, 0x98)];
- newSprite->callback = sub_81269E0;
- newSprite->oam.priority = 3;
- newSprite->oam.paletteNum = gUnknown_0830FD14[newSprite->oam.paletteNum];
- newSprite->usingSheet = TRUE;
- newSprite->anims = gDummySpriteAnimTable;
- StartSpriteAnim(newSprite, 0);
- newSprite->affineAnims = gDummySpriteAffineAnimTable;
- newSprite->affineAnimBeginning = TRUE;
- newSprite->subspriteMode = 0;
- newSprite->data[0] = sprite->data[0];
- newSprite->data[1] = eventObject->localId;
- newSprite->data[7] = flag;
- npc_pal_op(eventObject, newSprite);
- if (!flag)
- {
- newSprite->oam.affineMode = 1;
- }
+ reflectionSprite = &gSprites[CreateCopySpriteAt(sprite, sprite->pos1.x, sprite->pos1.y, 0x98)];
+ reflectionSprite->callback = UpdateObjectReflectionSprite;
+ reflectionSprite->oam.priority = 3;
+ reflectionSprite->oam.paletteNum = gReflectionEffectPaletteMap[reflectionSprite->oam.paletteNum];
+ reflectionSprite->usingSheet = TRUE;
+ reflectionSprite->anims = gDummySpriteAnimTable;
+ StartSpriteAnim(reflectionSprite, 0);
+ reflectionSprite->affineAnims = gDummySpriteAffineAnimTable;
+ reflectionSprite->affineAnimBeginning = TRUE;
+ reflectionSprite->subspriteMode = SUBSPRITES_OFF;
+ reflectionSprite->data[0] = sprite->data[0];
+ reflectionSprite->data[1] = eventObject->localId;
+ reflectionSprite->data[7] = stillReflection;
+ LoadObjectReflectionPalette(eventObject, reflectionSprite);
+
+ if (!stillReflection)
+ reflectionSprite->oam.affineMode = ST_OAM_AFFINE_NORMAL;
}
-static s16 sub_81268D0(struct EventObject *eventObject)
+static s16 GetReflectionVerticalOffset(struct EventObject *eventObject)
{
return GetEventObjectGraphicsInfo(eventObject->graphicsId)->height - 2;
}
-static void npc_pal_op(struct EventObject *eventObject, struct Sprite *sprite)
+static void LoadObjectReflectionPalette(struct EventObject *eventObject, struct Sprite *sprite)
{
- u8 whichElement;
- u16 unk_8041e2c[] = {0x0c, 0x1c, 0x2c};
+ u8 bridgeType;
+ u16 bridgeReflectionVerticalOffsets[] = { 12, 28, 44 };
sprite->data[2] = 0;
- if (!GetEventObjectGraphicsInfo(eventObject->graphicsId)->disableReflectionPaletteLoad && ((whichElement = MetatileBehavior_GetBridgeType(eventObject->previousMetatileBehavior)) || (whichElement = MetatileBehavior_GetBridgeType(eventObject->currentMetatileBehavior))))
+ if (!GetEventObjectGraphicsInfo(eventObject->graphicsId)->disableReflectionPaletteLoad && ((bridgeType = MetatileBehavior_GetBridgeType(eventObject->previousMetatileBehavior)) || (bridgeType = MetatileBehavior_GetBridgeType(eventObject->currentMetatileBehavior))))
{
- sprite->data[2] = unk_8041e2c[whichElement - 1];
- npc_pal_op_A(eventObject, sprite->oam.paletteNum);
+ sprite->data[2] = bridgeReflectionVerticalOffsets[bridgeType - 1];
+ LoadObjectHighBridgeReflectionPalette(eventObject, sprite->oam.paletteNum);
}
else
{
- npc_pal_op_B(eventObject, sprite->oam.paletteNum);
+ LoadObjectRegularReflectionPalette(eventObject, sprite->oam.paletteNum);
}
}
-static void npc_pal_op_B(struct EventObject *eventObject, u8 paletteNum)
+static void LoadObjectRegularReflectionPalette(struct EventObject *eventObject, u8 paletteIndex)
{
const struct EventObjectGraphicsInfo *graphicsInfo;
graphicsInfo = GetEventObjectGraphicsInfo(eventObject->graphicsId);
- if (graphicsInfo->paletteTag2 != 0x11ff)
+ if (graphicsInfo->bridgeReflectionPaletteTag != 0x11ff)
{
if (graphicsInfo->paletteSlot == 0)
{
- npc_load_two_palettes__no_record(graphicsInfo->paletteTag1, paletteNum);
+ LoadPlayerObjectReflectionPalette(graphicsInfo->paletteTag, paletteIndex);
}
else if (graphicsInfo->paletteSlot == 10)
{
- npc_load_two_palettes__and_record(graphicsInfo->paletteTag1, paletteNum);
+ LoadSpecialObjectReflectionPalette(graphicsInfo->paletteTag, paletteIndex);
}
else
{
- pal_patch_for_npc(npc_paltag_by_palslot(paletteNum), paletteNum);
+ PatchObjectPalette(GetObjectPaletteTag(paletteIndex), paletteIndex);
}
- UpdateSpritePaletteWithWeather(paletteNum);
+ UpdateSpritePaletteWithWeather(paletteIndex);
}
}
-static void npc_pal_op_A(struct EventObject *eventObject, u8 paletteNum)
+// When walking on a bridge high above water (Route 120), the reflection is a solid dark blue color.
+// This is so the sprite blends in with the dark water metatile underneath the bridge.
+static void LoadObjectHighBridgeReflectionPalette(struct EventObject *eventObject, u8 paletteNum)
{
const struct EventObjectGraphicsInfo *graphicsInfo;
graphicsInfo = GetEventObjectGraphicsInfo(eventObject->graphicsId);
- if (graphicsInfo->paletteTag2 != 0x11ff)
+ if (graphicsInfo->bridgeReflectionPaletteTag != 0x11ff)
{
- pal_patch_for_npc(graphicsInfo->paletteTag2, paletteNum);
+ PatchObjectPalette(graphicsInfo->bridgeReflectionPaletteTag, paletteNum);
UpdateSpritePaletteWithWeather(paletteNum);
}
}
-static void sub_81269E0(struct Sprite *sprite)
+static void UpdateObjectReflectionSprite(struct Sprite *reflectionSprite)
{
struct EventObject *eventObject;
- struct Sprite *oldSprite;
+ struct Sprite *mainSprite;
- eventObject = &gEventObjects[sprite->data[0]];
- oldSprite = &gSprites[eventObject->spriteId];
- if (!eventObject->active || !eventObject->hasReflection || eventObject->localId != sprite->data[1])
+ eventObject = &gEventObjects[reflectionSprite->data[0]];
+ mainSprite = &gSprites[eventObject->spriteId];
+ if (!eventObject->active || !eventObject->hasReflection || eventObject->localId != reflectionSprite->data[1])
{
- sprite->inUse = FALSE;
+ reflectionSprite->inUse = FALSE;
}
else
{
- sprite->oam.paletteNum = gUnknown_0830FD14[oldSprite->oam.paletteNum];
- sprite->oam.shape = oldSprite->oam.shape;
- sprite->oam.size = oldSprite->oam.size;
- sprite->oam.matrixNum = oldSprite->oam.matrixNum | 0x10;
- sprite->oam.tileNum = oldSprite->oam.tileNum;
- sprite->subspriteTables = oldSprite->subspriteTables;
- sprite->subspriteTableNum = oldSprite->subspriteTableNum;
- sprite->invisible = oldSprite->invisible;
- sprite->pos1.x = oldSprite->pos1.x;
- sprite->pos1.y = oldSprite->pos1.y + sub_81268D0(eventObject) + sprite->data[2];
- sprite->centerToCornerVecX = oldSprite->centerToCornerVecX;
- sprite->centerToCornerVecY = oldSprite->centerToCornerVecY;
- sprite->pos2.x = oldSprite->pos2.x;
- sprite->pos2.y = -oldSprite->pos2.y;
- sprite->coordOffsetEnabled = oldSprite->coordOffsetEnabled;
- if (sprite->data[7] == FALSE)
+ reflectionSprite->oam.paletteNum = gReflectionEffectPaletteMap[mainSprite->oam.paletteNum];
+ reflectionSprite->oam.shape = mainSprite->oam.shape;
+ reflectionSprite->oam.size = mainSprite->oam.size;
+ reflectionSprite->oam.matrixNum = mainSprite->oam.matrixNum | 0x10;
+ reflectionSprite->oam.tileNum = mainSprite->oam.tileNum;
+ reflectionSprite->subspriteTables = mainSprite->subspriteTables;
+ reflectionSprite->subspriteTableNum = mainSprite->subspriteTableNum;
+ reflectionSprite->invisible = mainSprite->invisible;
+ reflectionSprite->pos1.x = mainSprite->pos1.x;
+ // reflectionSprite->data[2] holds an additional vertical offset, used by the high bridges on Route 120
+ reflectionSprite->pos1.y = mainSprite->pos1.y + GetReflectionVerticalOffset(eventObject) + reflectionSprite->data[2];
+ reflectionSprite->centerToCornerVecX = mainSprite->centerToCornerVecX;
+ reflectionSprite->centerToCornerVecY = mainSprite->centerToCornerVecY;
+ reflectionSprite->pos2.x = mainSprite->pos2.x;
+ reflectionSprite->pos2.y = -mainSprite->pos2.y;
+ reflectionSprite->coordOffsetEnabled = mainSprite->coordOffsetEnabled;
+
+ // Check if the reflection is not still.
+ if (reflectionSprite->data[7] == FALSE)
{
- sprite->oam.matrixNum = 0;
- if (oldSprite->oam.matrixNum & 0x8)
- {
- sprite->oam.matrixNum = 1;
- }
+ // Sets the reflection sprite's rot/scale matrix to the appropriate
+ // matrix based on whether or not the main sprite is horizontally flipped.
+ // If the sprite is facing to the east, then it is flipped, and its matrixNum is 8.
+ reflectionSprite->oam.matrixNum = 0;
+ if (mainSprite->oam.matrixNum & 0x8)
+ reflectionSprite->oam.matrixNum = 1;
}
}
}
-u8 sub_8126B54(void)
+u8 CreateWarpArrowSprite(void)
{
u8 spriteId;
struct Sprite *sprite;
- spriteId = CreateSpriteAtEnd(gFieldEffectObjectTemplatePointers[8] /*gFieldEffectSpriteTemplate_Arrow*/, 0, 0, 0x52);
+ spriteId = CreateSpriteAtEnd(gFieldEffectObjectTemplatePointers[8], 0, 0, 0x52);
if (spriteId != MAX_SPRITES)
{
sprite = &gSprites[spriteId];
@@ -163,12 +168,12 @@ u8 sub_8126B54(void)
return spriteId;
}
-void objid_set_invisible(u8 spriteId)
+void SetSpriteInvisible(u8 spriteId)
{
gSprites[spriteId].invisible = TRUE;
}
-void sub_8126BC4(u8 spriteId, u8 animNum, s16 x, s16 y)
+void ShowWarpArrowSprite(u8 spriteId, u8 direction, s16 x, s16 y)
{
s16 x2;
s16 y2;
@@ -184,18 +189,18 @@ void sub_8126BC4(u8 spriteId, u8 animNum, s16 x, s16 y)
sprite->invisible = FALSE;
sprite->data[0] = x;
sprite->data[1] = y;
- StartSpriteAnim(sprite, animNum - 1);
+ StartSpriteAnim(sprite, direction - 1);
}
}
-const u8 gUnknown_08401E32[] = {
+const u8 gShadowEffectTemplateIds[] = {
0,
1,
2,
3
};
-const u16 gUnknown_08401E36[] = {
+const u16 gShadowVerticalOffsets[] = {
4,
4,
4,
@@ -210,19 +215,19 @@ u32 FldEff_Shadow(void)
eventObjectId = GetEventObjectIdByLocalIdAndMap(gFieldEffectArguments[0], gFieldEffectArguments[1], gFieldEffectArguments[2]);
graphicsInfo = GetEventObjectGraphicsInfo(gEventObjects[eventObjectId].graphicsId);
- spriteId = CreateSpriteAtEnd(gFieldEffectObjectTemplatePointers[gUnknown_08401E32[graphicsInfo->shadowSize]], 0, 0, 0x94);
+ spriteId = CreateSpriteAtEnd(gFieldEffectObjectTemplatePointers[gShadowEffectTemplateIds[graphicsInfo->shadowSize]], 0, 0, 0x94);
if (spriteId != MAX_SPRITES)
{
gSprites[spriteId].coordOffsetEnabled = TRUE;
gSprites[spriteId].data[0] = gFieldEffectArguments[0];
gSprites[spriteId].data[1] = gFieldEffectArguments[1];
gSprites[spriteId].data[2] = gFieldEffectArguments[2];
- gSprites[spriteId].data[3] = (graphicsInfo->height >> 1) - gUnknown_08401E36[graphicsInfo->shadowSize];
+ gSprites[spriteId].data[3] = (graphicsInfo->height >> 1) - gShadowVerticalOffsets[graphicsInfo->shadowSize];
}
return 0;
}
-void oamc_shadow(struct Sprite *sprite)
+void UpdateShadowFieldEffect(struct Sprite *sprite)
{
u8 eventObjectId;
struct EventObject *eventObject;
@@ -239,7 +244,12 @@ void oamc_shadow(struct Sprite *sprite)
sprite->oam.priority = linkedSprite->oam.priority;
sprite->pos1.x = linkedSprite->pos1.x;
sprite->pos1.y = linkedSprite->pos1.y + sprite->data[3];
- if (!eventObject->active || !eventObject->hasShadow || MetatileBehavior_IsPokeGrass(eventObject->currentMetatileBehavior) || MetatileBehavior_IsSurfableWaterOrUnderwater(eventObject->currentMetatileBehavior) || MetatileBehavior_IsSurfableWaterOrUnderwater(eventObject->previousMetatileBehavior) || MetatileBehavior_IsReflective(eventObject->currentMetatileBehavior) || MetatileBehavior_IsReflective(eventObject->previousMetatileBehavior))
+ if (!eventObject->active || !eventObject->hasShadow
+ || MetatileBehavior_IsPokeGrass(eventObject->currentMetatileBehavior)
+ || MetatileBehavior_IsSurfableWaterOrUnderwater(eventObject->currentMetatileBehavior)
+ || MetatileBehavior_IsSurfableWaterOrUnderwater(eventObject->previousMetatileBehavior)
+ || MetatileBehavior_IsReflective(eventObject->currentMetatileBehavior)
+ || MetatileBehavior_IsReflective(eventObject->previousMetatileBehavior))
{
FieldEffectStop(sprite, FLDEFF_SHADOW);
}
@@ -276,7 +286,7 @@ u32 FldEff_TallGrass(void)
return 0;
}
-void unc_grass_normal(struct Sprite *sprite)
+void UpdateTallGrassFieldEffect(struct Sprite *sprite)
{
u8 mapNum;
u8 mapGroup;
@@ -305,14 +315,12 @@ void unc_grass_normal(struct Sprite *sprite)
{
eventObject = &gEventObjects[eventObjectId];
if ((eventObject->currentCoords.x != sprite->data[1] || eventObject->currentCoords.y != sprite->data[2]) && (eventObject->previousCoords.x != sprite->data[1] || eventObject->previousCoords.y != sprite->data[2]))
- {
sprite->data[7] = TRUE;
- }
+
metatileBehavior = 0;
if (sprite->animCmdIndex == 0)
- {
metatileBehavior = 4;
- }
+
UpdateEventObjectSpriteVisibility(sprite, 0);
sub_812882C(sprite, sprite->data[0], metatileBehavior);
}
@@ -336,7 +344,7 @@ u32 FldEff_JumpTallGrass(void)
return 0;
}
-u8 sub_8126FF0(u8 localId, u8 mapNum, u8 mapGroup, s16 x, s16 y)
+u8 FindTallGrassFieldEffectSpriteId(u8 localId, u8 mapNum, u8 mapGroup, s16 x, s16 y)
{
struct Sprite *sprite;
u8 i;
@@ -346,12 +354,11 @@ u8 sub_8126FF0(u8 localId, u8 mapNum, u8 mapGroup, s16 x, s16 y)
if (gSprites[i].inUse)
{
sprite = &gSprites[i];
- if (sprite->callback == unc_grass_normal && (x == sprite->data[1] && y == sprite->data[2]) && (localId == (u8)(sprite->data[3] >> 8) && mapNum == (sprite->data[3] & 0xFF) && mapGroup == sprite->data[4]))
- {
+ if (sprite->callback == UpdateTallGrassFieldEffect && (x == sprite->data[1] && y == sprite->data[2]) && (localId == (u8)(sprite->data[3] >> 8) && mapNum == (sprite->data[3] & 0xFF) && mapGroup == sprite->data[4]))
return i;
- }
}
}
+
return MAX_SPRITES;
}
@@ -385,7 +392,7 @@ u32 FldEff_LongGrass(void)
return 0;
}
-void unc_grass_tall(struct Sprite *sprite)
+void UpdateLongGrassFieldEffect(struct Sprite *sprite)
{
u8 mapNum;
u8 mapGroup;
@@ -464,7 +471,7 @@ u32 FldEff_ShortGrass(void)
return 0;
}
-void sub_8127334(struct Sprite *sprite)
+void UpdateShortGrassFieldEffect(struct Sprite *sprite)
{
u8 eventObjectId;
s16 x;
@@ -554,29 +561,29 @@ u32 FldEff_BikeTireTracks(void)
return spriteId;
}
-void (*const gUnknown_08401E40[])(struct Sprite *) = {
- sub_81275A0,
- sub_81275C4
+void (*const gFadeFootprintsTireTracksFuncs[])(struct Sprite *) = {
+ FadeFootprintsTireTracks_Step0,
+ FadeFootprintsTireTracks_Step1
};
-void sub_8127584(struct Sprite *sprite)
+void UpdateFootprintsTireTracksFieldEffect(struct Sprite *sprite)
{
- gUnknown_08401E40[sprite->data[0]](sprite);
+ gFadeFootprintsTireTracksFuncs[sprite->data[0]](sprite);
}
-static void sub_81275A0(struct Sprite *sprite)
+static void FadeFootprintsTireTracks_Step0(struct Sprite *sprite)
{
+ // Wait 40 frames before the flickering starts.
if (++sprite->data[1] > 40)
- {
sprite->data[0] = 1;
- }
+
UpdateEventObjectSpriteVisibility(sprite, FALSE);
}
-static void sub_81275C4(struct Sprite *sprite)
+static void FadeFootprintsTireTracks_Step1(struct Sprite *sprite)
{
sprite->invisible ^= 1;
- sprite->data[1] ++;
+ sprite->data[1]++;
UpdateEventObjectSpriteVisibility(sprite, sprite->invisible);
if (sprite->data[1] > 56)
{
@@ -612,7 +619,7 @@ u32 FldEff_Splash(void)
return 0;
}
-void sub_81276B4(struct Sprite *sprite)
+void UpdateSplashFieldEffect(struct Sprite *sprite)
{
u8 eventObjectId;
@@ -679,7 +686,7 @@ u32 FldEff_FeetInFlowingWater(void)
{
graphicsInfo = GetEventObjectGraphicsInfo(eventObject->graphicsId);
sprite = &gSprites[spriteId];
- sprite->callback = sub_81278D8;
+ sprite->callback = UpdateFeetInFlowingWaterFieldEffect;
sprite->coordOffsetEnabled = TRUE;
sprite->oam.priority = gSprites[eventObject->spriteId].oam.priority;
sprite->data[0] = gFieldEffectArguments[0];
@@ -693,7 +700,7 @@ u32 FldEff_FeetInFlowingWater(void)
return 0;
}
-static void sub_81278D8(struct Sprite *sprite)
+static void UpdateFeetInFlowingWaterFieldEffect(struct Sprite *sprite)
{
u8 eventObjectId;
struct Sprite *linkedSprite;
@@ -763,7 +770,7 @@ u32 FldEff_HotSpringsWater(void)
return 0;
}
-void sub_8127A7C(struct Sprite *sprite)
+void UpdateHotSpringsWaterFieldEffect(struct Sprite *sprite)
{
u8 eventObjectId;
const struct EventObjectGraphicsInfo *graphicsInfo;
@@ -852,7 +859,7 @@ u32 FldEff_Unknown22(void)
return 0;
}
-void ash(s16 x, s16 y, u16 c, s16 d)
+void StartAshFieldEffect(s16 x, s16 y, u16 c, s16 d)
{
gFieldEffectArguments[0] = x;
gFieldEffectArguments[1] = y;
@@ -887,28 +894,26 @@ u32 FldEff_Ash(void)
return 0;
}
-void (*const gUnknown_08401E48[])(struct Sprite *) = {
- sub_8127DA0,
- sub_8127DD0,
- sub_8127E30
+void (*const gAshFieldEffectFuncs[])(struct Sprite *) = {
+ UpdateAshFieldEffect_Step0,
+ UpdateAshFieldEffect_Step1,
+ UpdateAshFieldEffect_Step2
};
-void sub_8127D84(struct Sprite *sprite)
+void UpdateAshFieldEffect(struct Sprite *sprite)
{
- gUnknown_08401E48[sprite->data[0]](sprite);
+ gAshFieldEffectFuncs[sprite->data[0]](sprite);
}
-static void sub_8127DA0(struct Sprite *sprite)
+static void UpdateAshFieldEffect_Step0(struct Sprite *sprite)
{
sprite->invisible = TRUE;
sprite->animPaused = TRUE;
if (--sprite->data[4] == 0)
- {
sprite->data[0] = 1;
- }
}
-static void sub_8127DD0(struct Sprite *sprite)
+static void UpdateAshFieldEffect_Step1(struct Sprite *sprite)
{
sprite->invisible = FALSE;
sprite->animPaused = FALSE;
@@ -918,13 +923,11 @@ static void sub_8127DD0(struct Sprite *sprite)
sprite->data[0] = 2;
}
-static void sub_8127E30(struct Sprite *sprite)
+static void UpdateAshFieldEffect_Step2(struct Sprite *sprite)
{
UpdateEventObjectSpriteVisibility(sprite, FALSE);
if (sprite->animEnded)
- {
FieldEffectStop(sprite, FLDEFF_ASH);
- }
}
u32 FldEff_SurfBlob(void)
@@ -979,7 +982,7 @@ static u8 sub_8127F70(struct Sprite *sprite)
return (sprite->data[0] & 0xF00) >> 8;
}
-void sub_8127F7C(struct Sprite *sprite)
+void UpdateSurfBlobFieldEffect(struct Sprite *sprite)
{
struct EventObject *eventObject;
struct Sprite *linkedSprite;
@@ -994,11 +997,16 @@ void sub_8127F7C(struct Sprite *sprite)
static void sub_8127FD4(struct EventObject *eventObject, struct Sprite *sprite)
{
- u8 unk_8041E54[] = {0, 0, 1, 2, 3};
+ u8 surfBlobDirectionAnims[] = {
+ 0, // DIR_NONE
+ 0, // DIR_SOUTH
+ 1, // DIR_NORTH
+ 2, // DIR_WEST
+ 3, // DIR_EAST
+ };
+
if (sub_8127F64(sprite) == 0)
- {
- StartSpriteAnimIfDifferent(sprite, unk_8041E54[eventObject->movementDirection]);
- }
+ StartSpriteAnimIfDifferent(sprite, surfBlobDirectionAnims[eventObject->movementDirection]);
}
#ifdef NONMATCHING
@@ -1211,7 +1219,7 @@ u32 FldEff_SandPile(void)
return 0;
}
-void sub_81282E0(struct Sprite *sprite)
+void UpdateSandPileFieldEffect(struct Sprite *sprite)
{
u8 eventObjectId;
s16 x;
@@ -1257,7 +1265,7 @@ u32 FldEff_Bubbles(void)
return 0;
}
-void sub_8128410(struct Sprite *sprite)
+void UpdateBubblesFieldEffect(struct Sprite *sprite)
{
sprite->data[0] += 0x80;
sprite->data[0] &= 0x100;
@@ -1289,19 +1297,19 @@ u32 FldEff_BerryTreeGrowthSparkle(void)
u32 FldEff_TreeDisguise(void)
{
- return ShowDisguiseFieldEffect(FLDEFF_TREE_DISGUISE, 0x18, 0x04);
+ return ShowDisguiseFieldEffect(FLDEFF_TREE_DISGUISE, 24, 4);
}
u32 FldEff_MountainDisguise(void)
{
- return ShowDisguiseFieldEffect(FLDEFF_MOUNTAIN_DISGUISE, 0x19, 0x03);
+ return ShowDisguiseFieldEffect(FLDEFF_MOUNTAIN_DISGUISE, 25, 3);
}
u32 FldEff_SandDisguise(void)
{
- return ShowDisguiseFieldEffect(FLDEFF_SAND_DISGUISE, 0x1C, 0x02);
+ return ShowDisguiseFieldEffect(FLDEFF_SAND_DISGUISE, 28, 2);
}
static u32 ShowDisguiseFieldEffect(u8 fldEff, u8 templateIdx, u8 paletteNum)
@@ -1328,7 +1336,7 @@ static u32 ShowDisguiseFieldEffect(u8 fldEff, u8 templateIdx, u8 paletteNum)
return spriteId;
}
-void sub_81285AC(struct Sprite *sprite)
+void UpdateDisguiseFieldEffect(struct Sprite *sprite)
{
u8 eventObjectId;
const struct EventObjectGraphicsInfo *graphicsInfo;
@@ -1406,27 +1414,25 @@ u32 FldEff_Sparkle(void)
return 0;
}
-void sub_8128774(struct Sprite *sprite)
+void UpdateSparkleFieldEffect(struct Sprite *sprite)
{
if (sprite->data[0] == 0)
{
if (sprite->animEnded)
{
sprite->invisible = TRUE;
- sprite->data[0] ++;
+ sprite->data[0]++;
}
+
if (sprite->data[0] == 0)
- {
return;
- }
}
- if (++ sprite->data[1] >= 35)
- {
+
+ if (++sprite->data[1] > 34)
FieldEffectStop(sprite, FLDEFF_SPARKLE);
- }
}
-void sub_81287C4(struct Sprite *sprite)
+void UpdateJumpLandingFieldEffect(struct Sprite *sprite)
{
if (sprite->animEnded)
{
@@ -1439,16 +1445,12 @@ void sub_81287C4(struct Sprite *sprite)
}
}
-void sub_8128800(struct Sprite *sprite)
+void WaitFieldEffectSpriteAnim(struct Sprite *sprite)
{
if (sprite->animEnded)
- {
FieldEffectStop(sprite, sprite->data[0]);
- }
else
- {
UpdateEventObjectSpriteVisibility(sprite, FALSE);
- }
}
#ifdef NONMATCHING
diff --git a/src/field_fadetransition.c b/src/field_fadetransition.c
index a9dc78dfa..c52dc98c6 100644
--- a/src/field_fadetransition.c
+++ b/src/field_fadetransition.c
@@ -39,35 +39,35 @@ void palette_bg_fill_black(void)
void pal_fill_for_map_transition(void)
{
- u8 map_light = get_map_type_from_warp0();
- switch (fade_type_for_given_maplight_pair(map_light, Overworld_GetMapTypeOfSaveblockLocation()))
+ u8 previousMapType = GetLastUsedWarpMapType();
+ switch (GetMapPairFadeFromType(previousMapType, Overworld_GetMapTypeOfSaveblockLocation()))
{
case 0:
- FadeScreen(0, 0);
+ FadeScreen(FADE_FROM_BLACK, 0);
palette_bg_fill_black();
break;
case 1:
- FadeScreen(2, 0);
+ FadeScreen(FADE_FROM_WHITE, 0);
palette_bg_fill_white();
}
}
void pal_fill_black(void)
{
- FadeScreen(0, 0);
+ FadeScreen(FADE_FROM_BLACK, 0);
palette_bg_fill_black();
}
-void fade_8080918(void)
+void WarpFadeScreen(void)
{
- u8 light_level = Overworld_GetMapTypeOfSaveblockLocation();
- switch (sub_810CDB8(light_level, warp1_get_mapheader()->mapType))
+ u8 currentMapType = Overworld_GetMapTypeOfSaveblockLocation();
+ switch (GetMapPairFadeToType(currentMapType, GetDestinationWarpMapHeader()->mapType))
{
case 0:
- FadeScreen(1, 0);
+ FadeScreen(FADE_TO_BLACK, 0);
break;
case 1:
- FadeScreen(3, 0);
+ FadeScreen(FADE_TO_WHITE, 0);
}
}
@@ -358,7 +358,7 @@ void sub_8080E44(void)
CreateTask(task_mpl_807E3C8, 10);
}
-bool32 sub_8080E64(void)
+static bool32 PaletteFadeActive(void)
{
return gPaletteFade.active;
}
@@ -374,8 +374,8 @@ bool32 sub_8080E70(void)
void sub_8080E88(void)
{
ScriptContext2_Enable();
- sub_8053FF8();
- fade_8080918();
+ TryFadeOutOldMapMusic();
+ WarpFadeScreen();
PlayRainSoundEffect();
PlaySE(SE_KAIDAN);
gFieldCallback = mapldr_default;
@@ -385,8 +385,8 @@ void sub_8080E88(void)
void sp13E_warp_to_last_warp(void)
{
ScriptContext2_Enable();
- sub_8053FF8();
- fade_8080918();
+ TryFadeOutOldMapMusic();
+ WarpFadeScreen();
PlayRainSoundEffect();
gFieldCallback = mapldr_default;
CreateTask(task0A_fade_n_map_maybe, 10);
@@ -426,8 +426,8 @@ void sub_8080F58(void)
void sub_8080F68(void)
{
ScriptContext2_Enable();
- sub_8053FF8();
- fade_8080918();
+ TryFadeOutOldMapMusic();
+ WarpFadeScreen();
PlaySE(SE_TK_WARPIN);
CreateTask(task0A_fade_n_map_maybe, 10);
gFieldCallback = sub_8080B78;
@@ -436,12 +436,12 @@ void sub_8080F68(void)
void sub_8080F9C(void)
{
ScriptContext2_Enable();
- fade_8080918();
+ WarpFadeScreen();
CreateTask(task0A_fade_n_map_maybe, 10);
gFieldCallback = sub_80C791C;
}
-void sub_8080FC4(u8 taskId)
+static void WaitCableClubWarp(u8 taskId)
{
struct Task *task = &gTasks[taskId];
@@ -452,13 +452,11 @@ void sub_8080FC4(u8 taskId)
task->data[0]++;
break;
case 1:
- if (!sub_8080E64() && sub_8054034())
- {
+ if (!PaletteFadeActive() && BGMusicStopped())
task->data[0]++;
- }
break;
case 2:
- warp_in();
+ WarpIntoMap();
SetMainCallback2(sub_8054588);
DestroyTask(taskId);
break;
@@ -468,10 +466,10 @@ void sub_8080FC4(u8 taskId)
void DoCableClubWarp(void)
{
ScriptContext2_Enable();
- sub_8053FF8();
- fade_8080918();
+ TryFadeOutOldMapMusic();
+ WarpFadeScreen();
PlaySE(SE_KAIDAN);
- CreateTask(sub_8080FC4, 10);
+ CreateTask(WaitCableClubWarp, 10);
}
void sub_8081050(u8 taskId)
@@ -482,13 +480,13 @@ void sub_8081050(u8 taskId)
{
case 0:
ClearLinkCallback_2();
- FadeScreen(1, 0);
- sub_8053FF8();
+ FadeScreen(FADE_TO_BLACK, 0);
+ TryFadeOutOldMapMusic();
PlaySE(SE_KAIDAN);
data[0]++;
break;
case 1:
- if (!sub_8080E64() && sub_8054034())
+ if (!PaletteFadeActive() && BGMusicStopped())
{
sub_800832C();
data[0]++;
@@ -497,7 +495,7 @@ void sub_8081050(u8 taskId)
case 2:
if (!gReceivedRemoteLinkPlayers)
{
- warp_in();
+ WarpIntoMap();
SetMainCallback2(CB2_LoadMap);
DestroyTask(taskId);
}
@@ -538,13 +536,13 @@ void task0A_fade_n_map_maybe(u8 taskId)
task->data[0]++;
break;
case 1:
- if (!sub_8080E64() && sub_8054034())
+ if (!PaletteFadeActive() && BGMusicStopped())
{
task->data[0]++;
}
break;
case 2:
- warp_in();
+ WarpIntoMap();
SetMainCallback2(CB2_LoadMap);
DestroyTask(taskId);
break;
@@ -595,8 +593,8 @@ void sub_808115C(u8 taskId)
}
break;
case 4:
- sub_8053FF8();
- fade_8080918();
+ TryFadeOutOldMapMusic();
+ WarpFadeScreen();
PlayRainSoundEffect();
task->data[0] = 0;
task->func = task0A_fade_n_map_maybe;
@@ -616,13 +614,13 @@ void sub_80812C8(u8 taskId)
task->data[0]++;
break;
case 1:
- if (!sub_8080E64() && sub_8054034())
+ if (!PaletteFadeActive() && BGMusicStopped())
{
task->data[0]++;
}
break;
case 2:
- warp_in();
+ WarpIntoMap();
SetMainCallback2(sub_8054534);
DestroyTask(taskId);
break;
@@ -632,8 +630,8 @@ void sub_80812C8(u8 taskId)
void sub_8081334(void)
{
ScriptContext2_Enable();
- sub_8053FF8();
- fade_8080918();
+ TryFadeOutOldMapMusic();
+ WarpFadeScreen();
PlayRainSoundEffect();
PlaySE(SE_KAIDAN);
gFieldCallback = sub_8080B60;
diff --git a/src/field_player_avatar.c b/src/field_player_avatar.c
index dac26ff32..9a4f5f6cd 100644
--- a/src/field_player_avatar.c
+++ b/src/field_player_avatar.c
@@ -1142,7 +1142,7 @@ void InitPlayerAvatar(s16 x, s16 y, u8 direction, u8 gender)
eventObjectId = SpawnSpecialEventObject(&playerEventObjTemplate);
eventObject = &gEventObjects[eventObjectId];
eventObject->isPlayer = 1;
- eventObject->warpArrowSpriteId = sub_8126B54();
+ eventObject->warpArrowSpriteId = CreateWarpArrowSprite();
EventObjectTurn(eventObject, direction);
ClearPlayerAvatarInfo();
gPlayerAvatar.runningState = NOT_MOVING;
@@ -1199,11 +1199,11 @@ static void sub_8059D60(struct EventObject *eventObject)
x = eventObject->currentCoords.x;
y = eventObject->currentCoords.y;
MoveCoords(direction, &x, &y);
- sub_8126BC4(eventObject->warpArrowSpriteId, direction, x, y);
+ ShowWarpArrowSprite(eventObject->warpArrowSpriteId, direction, x, y);
return;
}
}
- objid_set_invisible(eventObject->warpArrowSpriteId);
+ SetSpriteInvisible(eventObject->warpArrowSpriteId);
}
/* Strength */
diff --git a/src/field_screen_effect.c b/src/field_screen_effect.c
index b314699c5..4e5965ee3 100644
--- a/src/field_screen_effect.c
+++ b/src/field_screen_effect.c
@@ -9,71 +9,78 @@
#include "text.h"
#include "scanline_effect.h"
-const static u16 gUnknown_0839ACDC[] = { 0xC8, 0x48, 0x38, 0x28, 0x18, 0x0 };
+const static u16 sFlashLevelPixelRadii[] = { 200, 72, 56, 40, 24, 0 };
const s32 gMaxFlashLevel = 4;
-const static struct ScanlineEffectParams gUnknown_0839ACEC =
+const static struct ScanlineEffectParams sFlashEffectParams =
{
(void *)REG_ADDR_WIN0H,
((DMA_ENABLE | DMA_START_HBLANK | DMA_REPEAT | DMA_DEST_RELOAD) << 16) | 1,
1
};
-static void sub_808136C(u16 *dest, u32 a2, s32 a3, s32 a4)
+static void SetFlashScanlineEffectWindowBoundary(u16 *dest, u32 y, s32 left, s32 right)
{
- if (a2 <= 0xA0)
+ if (y <= 160)
{
- if (a3 < 0)
- a3 = 0;
- if (a3 > 255)
- a3 = 255;
- if (a4 < 0)
- a4 = 0;
- if (a4 > 255)
- a4 = 255;
- dest[a2] = (a3 << 8) | a4;
+ if (left < 0)
+ left = 0;
+ if (left > 255)
+ left = 255;
+ if (right < 0)
+ right = 0;
+ if (right > 255)
+ right = 255;
+ dest[y] = (left << 8) | right;
}
}
-static void sub_8081398(u16 *dest, s32 a2, s32 a3, s32 a4)
+static void SetFlashScanlineEffectWindowBoundaries(u16 *dest, s32 centerX, s32 centerY, s32 radius)
{
- s32 v1 = a4;
- s32 v2 = a4;
+ s32 r = radius;
+ s32 v2 = radius;
s32 v3 = 0;
- while (v1 >= v3)
+ while (r >= v3)
{
- sub_808136C(dest, a3 - v3, a2 - v1, a2 + v1);
- sub_808136C(dest, a3 + v3, a2 - v1, a2 + v1);
- sub_808136C(dest, a3 - v1, a2 - v3, a2 + v3);
- sub_808136C(dest, a3 + v1, a2 - v3, a2 + v3);
+ SetFlashScanlineEffectWindowBoundary(dest, centerY - v3, centerX - r, centerX + r);
+ SetFlashScanlineEffectWindowBoundary(dest, centerY + v3, centerX - r, centerX + r);
+ SetFlashScanlineEffectWindowBoundary(dest, centerY - r, centerX - v3, centerX + v3);
+ SetFlashScanlineEffectWindowBoundary(dest, centerY + r, centerX - v3, centerX + v3);
v2 -= (v3 * 2) - 1;
v3++;
if (v2 < 0)
{
- v2 += 2 * (v1 - 1);
- v1--;
+ v2 += 2 * (r - 1);
+ r--;
}
}
}
-static void sub_8081424(u8 taskId)
+#define tFlashCenterX data[1]
+#define tFlashCenterY data[2]
+#define tCurFlashRadius data[3]
+#define tDestFlashRadius data[4]
+#define tFlashRadiusDelta data[5]
+#define tClearScanlineEffect data[6]
+
+static void UpdateFlashLevelEffect(u8 taskId)
{
s16 *data = gTasks[taskId].data;
switch (data[0])
{
case 0:
- sub_8081398(gScanlineEffectRegBuffers[gScanlineEffect.srcBuffer], data[1], data[2], data[3]);
+ SetFlashScanlineEffectWindowBoundaries(gScanlineEffectRegBuffers[gScanlineEffect.srcBuffer], tFlashCenterX, tFlashCenterY, tCurFlashRadius);
data[0] = 1;
break;
case 1:
- sub_8081398(gScanlineEffectRegBuffers[gScanlineEffect.srcBuffer], data[1], data[2], data[3]);
+ SetFlashScanlineEffectWindowBoundaries(gScanlineEffectRegBuffers[gScanlineEffect.srcBuffer], tFlashCenterX, tFlashCenterY, tCurFlashRadius);
data[0] = 0;
- data[3] += data[5];
- if (data[3] > data[4])
+ tCurFlashRadius += tFlashRadiusDelta;
+ if (tCurFlashRadius > tDestFlashRadius)
{
- if (data[6] == 1)
+ if (tClearScanlineEffect == 1)
{
ScanlineEffect_Stop();
data[0] = 2;
@@ -93,7 +100,7 @@ static void sub_8081424(u8 taskId)
static void sub_80814E8(u8 taskId)
{
- if (!FuncIsActiveTask(sub_8081424))
+ if (!FuncIsActiveTask(UpdateFlashLevelEffect))
{
EnableBothScriptContexts();
DestroyTask(taskId);
@@ -106,41 +113,46 @@ static void sub_8081510(void)
CreateTask(sub_80814E8, 80);
}
-static u8 sub_8081534(s32 a1, s32 a2, s32 a3, s32 a4, s32 a5, u8 a6)
+static u8 sub_8081534(s32 centerX, s32 centerY, s32 initialFlashRadius, s32 destFlashRadius, s32 clearScanlineEffect, u8 delta)
{
- u8 taskId = CreateTask(sub_8081424, 80);
+ u8 taskId = CreateTask(UpdateFlashLevelEffect, 80);
s16 *data = gTasks[taskId].data;
- data[3] = a3;
- data[4] = a4;
- data[1] = a1;
- data[2] = a2;
- data[6] = a5;
+ tCurFlashRadius = initialFlashRadius;
+ tDestFlashRadius = destFlashRadius;
+ tFlashCenterX = centerX;
+ tFlashCenterY = centerY;
+ tClearScanlineEffect = clearScanlineEffect;
- if (a3 < a4)
- data[5] = a6;
+ if (initialFlashRadius < destFlashRadius)
+ tFlashRadiusDelta = delta;
else
- data[5] = -a6;
+ tFlashRadiusDelta = -delta;
return taskId;
}
-void sub_8081594(u8 a1)
+#undef tCurFlashRadius
+#undef tDestFlashRadius
+#undef tFlashRadiusDelta
+#undef tClearScanlineEffect
+
+void sub_8081594(u8 flashLevel)
{
- u8 flashLevel = Overworld_GetFlashLevel();
+ u8 curFlashLevel = Overworld_GetFlashLevel();
u8 value = 0;
- if (!a1)
+ if (!flashLevel)
value = 1;
- sub_8081534(120, 80, gUnknown_0839ACDC[flashLevel], gUnknown_0839ACDC[a1], value, 1);
+ sub_8081534(120, 80, sFlashLevelPixelRadii[curFlashLevel], sFlashLevelPixelRadii[flashLevel], value, 1);
sub_8081510();
ScriptContext2_Enable();
}
-void sub_80815E0(u8 a1)
+void WriteFlashScanlineEffectBuffer(u8 flashLevel)
{
- if (a1)
+ if (flashLevel)
{
- sub_8081398(&gScanlineEffectRegBuffers[0][0], 120, 80, gUnknown_0839ACDC[a1]);
+ SetFlashScanlineEffectWindowBoundaries(&gScanlineEffectRegBuffers[0][0], 120, 80, sFlashLevelPixelRadii[flashLevel]);
CpuFastSet(&gScanlineEffectRegBuffers[0], &gScanlineEffectRegBuffers[1], 480);
}
}
@@ -208,10 +220,9 @@ static void sub_80816A8(u8 taskId)
REG_BLDALPHA = 1804;
REG_WININ = 63;
REG_WINOUT = 30;
- sub_8081398(&gScanlineEffectRegBuffers[0][0], data[2], data[3], 1);
+ SetFlashScanlineEffectWindowBoundaries(&gScanlineEffectRegBuffers[0][0], data[2], data[3], 1);
CpuFastSet(&gScanlineEffectRegBuffers[0], &gScanlineEffectRegBuffers[1], 480);
- //ScanlineEffect_SetParams(gUnknown_0839ACEC[0], gUnknown_0839ACEC[1], gUnknown_0839ACEC[2]);
- ScanlineEffect_SetParams(gUnknown_0839ACEC);
+ ScanlineEffect_SetParams(sFlashEffectParams);
data[0] = 1;
break;
case 1:
@@ -221,7 +232,7 @@ static void sub_80816A8(u8 taskId)
data[0] = 2;
break;
case 2:
- if (!FuncIsActiveTask(sub_8081424))
+ if (!FuncIsActiveTask(UpdateFlashLevelEffect))
{
EnableBothScriptContexts();
data[0] = 3;
@@ -323,7 +334,7 @@ void sub_8081924(void)
static void task50_0807F0C8(u8 taskId)
{
- if (sub_8054034() == TRUE)
+ if (BGMusicStopped() == TRUE)
{
DestroyTask(taskId);
EnableBothScriptContexts();
diff --git a/src/field_specials.c b/src/field_specials.c
index cb400dc2d..f7b14dad8 100644
--- a/src/field_specials.c
+++ b/src/field_specials.c
@@ -21,6 +21,7 @@
#include "constants/species.h"
#include "constants/abilities.h"
#include "constants/moves.h"
+#include "constants/weather.h"
#include "text.h"
#include "wallclock.h"
#include "tv.h"
@@ -42,7 +43,7 @@
#define CHAR_DECIMAL_SEPARATOR CHAR_COMMA
#endif
-extern struct WarpData gUnknown_020297F0;
+extern struct WarpData gLastUsedWarp;
extern u8 gBattleOutcome;
extern u16 gSpecialVar_0x8004;
extern u16 gSpecialVar_0x8005;
@@ -207,7 +208,7 @@ u16 GetRecordedCyclingRoadResults(void) {
}
void UpdateCyclingRoadState(void) {
- if (gUnknown_020297F0.mapNum == MAP_NUM(ROUTE110_SEASIDE_CYCLING_ROAD_NORTH_ENTRANCE) && gUnknown_020297F0.mapGroup == MAP_GROUP(ROUTE110_SEASIDE_CYCLING_ROAD_NORTH_ENTRANCE))
+ if (gLastUsedWarp.mapNum == MAP_NUM(ROUTE110_SEASIDE_CYCLING_ROAD_NORTH_ENTRANCE) && gLastUsedWarp.mapGroup == MAP_GROUP(ROUTE110_SEASIDE_CYCLING_ROAD_NORTH_ENTRANCE))
{
return;
}
@@ -2009,17 +2010,17 @@ bool8 FoundBlackGlasses(void)
void SetRoute119Weather(void)
{
- if (is_map_type_1_2_3_5_or_6(get_map_type_from_warp0()) != TRUE)
+ if (is_map_type_1_2_3_5_or_6(GetLastUsedWarpMapType()) != TRUE)
{
- SetSav1Weather(0x14);
+ SetSav1Weather(WEATHER_ROUTE119_CYCLE);
}
}
void SetRoute123Weather(void)
{
- if (is_map_type_1_2_3_5_or_6(get_map_type_from_warp0()) != TRUE)
+ if (is_map_type_1_2_3_5_or_6(GetLastUsedWarpMapType()) != TRUE)
{
- SetSav1Weather(0x15);
+ SetSav1Weather(WEATHER_ROUTE123_CYCLE);
}
}
@@ -2027,13 +2028,12 @@ u8 GetLeadMonIndex(void)
{
u8 i;
u8 partyCount = CalculatePlayerPartyCount();
- for (i=0; i<partyCount; i++)
+ for (i = 0; i < partyCount; i++)
{
if (GetMonData(&gPlayerParty[i], MON_DATA_SPECIES2, NULL) != SPECIES_EGG && GetMonData(&gPlayerParty[i], MON_DATA_SPECIES2, NULL) != 0)
- {
return i;
- }
}
+
return 0;
}
diff --git a/src/field_tasks.c b/src/field_tasks.c
index 25a4efc58..8b736c949 100644
--- a/src/field_tasks.c
+++ b/src/field_tasks.c
@@ -611,8 +611,8 @@ bool32 sub_8069D34(s16 x, s16 y)
void SetSootopolisGymCrackedIceMetatiles(void)
{
s32 x, y;
- s32 width = gMapHeader.mapData->width;
- s32 height = gMapHeader.mapData->height;
+ s32 width = gMapHeader.mapLayout->width;
+ s32 height = gMapHeader.mapLayout->height;
for (x = 0; x < width; x++)
{
for (y = 0; y < height; y++)
@@ -713,11 +713,11 @@ void PerStepCallback_8069F64(u8 taskId)
{
if (MapGridGetMetatileIdAt(x, y) == 0x20a)
{
- ash(x, y, 0x212, 4);
+ StartAshFieldEffect(x, y, 0x212, 4);
}
else
{
- ash(x, y, 0x206, 4);
+ StartAshFieldEffect(x, y, 0x206, 4);
}
if (CheckBagHasItem(ITEM_SOOT_SACK, 1))
{
@@ -782,24 +782,29 @@ void PerStepCallback_806A07C(u8 taskId)
}
}
-const u16 gUnknown_08376418[] = {0xe8, 0xeb, 0xea, 0xe9};
+static const u16 sMuddySlopeAnimationMetatiles[] = {0xe8, 0xeb, 0xea, 0xe9};
-void sub_806A18C(s16 *data, s16 x, s16 y)
+static void SetMuddySlopeAnimatedMetatile(s16 *counter, s16 x, s16 y)
{
u16 tile;
- if ((--data[0]) == 0)
- {
+ if (--(*counter) == 0)
tile = 0xe8;
- }
else
- {
- tile = gUnknown_08376418[data[0] / 8];
- }
+ tile = sMuddySlopeAnimationMetatiles[*counter / 8];
+
MapGridSetMetatileIdAt(x, y, tile);
CurrentMapDrawMetatileAt(x, y);
+
+ // Immediately set the metatile back to the original muddy slope metatile
+ // but don't actualy draw it on the screen. This is so the underlying metatile
+ // behvior on the map is not changed.
MapGridSetMetatileIdAt(x, y, 0xe8);
}
+// Checks for the player traversing on muddy slope metatiles.
+// When the player walks or slides on one, it executes a short animation to
+// make it look like a small mudslide. A maximum of 4 mudslide animations can
+// exist simultaneously.
void Task_MuddySlope(u8 taskId)
{
s16 x, y, x2, y2;
@@ -827,7 +832,7 @@ void Task_MuddySlope(u8 taskId)
data[3] = y;
if (MetatileBehavior_IsMuddySlope(MapGridGetMetatileBehaviorAt(x, y)))
{
- for (i=4; i<14; i+=3)
+ for (i = 4; i < 14; i += 3)
{
if (data[i] == 0)
{
@@ -841,6 +846,7 @@ void Task_MuddySlope(u8 taskId)
}
break;
}
+
if (gCamera.field_0 && mapIndices != data[0])
{
data[0] = mapIndices;
@@ -852,13 +858,14 @@ void Task_MuddySlope(u8 taskId)
x2 = 0;
y2 = 0;
}
- for (i=4; i<14; i+=3)
+
+ for (i = 4; i < 14; i += 3)
{
if (data[i])
{
data[i + 1] -= x2;
data[i + 2] -= y2;
- sub_806A18C(&data[i], data[i + 1], data[i + 2]);
+ SetMuddySlopeAnimatedMetatile(&data[i], data[i + 1], data[i + 2]);
}
}
}
diff --git a/src/fieldmap.c b/src/fieldmap.c
index 7383bb174..874df23b0 100644
--- a/src/fieldmap.c
+++ b/src/fieldmap.c
@@ -25,7 +25,7 @@ EWRAM_DATA struct MapHeader gMapHeader = {0};
EWRAM_DATA struct Camera gCamera = {0};
EWRAM_DATA static struct ConnectionFlags gUnknown_0202E850 = {0};
-struct BackupMapData gUnknown_03004870;
+struct BackupMapLayout gUnknown_03004870;
static const struct ConnectionFlags sDummyConnectionFlags = {0};
@@ -53,19 +53,19 @@ void sub_8055FC0(void)
void mapheader_copy_mapdata_with_padding(struct MapHeader *mapHeader)
{
- struct MapData *mapData;
+ struct MapLayout *mapLayout;
int width;
int height;
- mapData = mapHeader->mapData;
+ mapLayout = mapHeader->mapLayout;
CpuFastFill16(0x03ff, gUnknown_02029828, sizeof(gUnknown_02029828));
gUnknown_03004870.map = gUnknown_02029828;
- width = mapData->width + 15;
+ width = mapLayout->width + 15;
gUnknown_03004870.width = width;
- height = mapData->height + 14;
+ height = mapLayout->height + 14;
gUnknown_03004870.height = height;
if (width * height <= 0x2800)
{
- map_copy_with_padding(mapData->map, mapData->width, mapData->height);
+ map_copy_with_padding(mapLayout->map, mapLayout->width, mapLayout->height);
sub_80560AC(mapHeader);
}
}
@@ -129,8 +129,8 @@ void sub_8056134(int x, int y, struct MapHeader *mapHeader, int x2, int y2, int
u16 *dest;
int mapWidth;
- mapWidth = mapHeader->mapData->width;
- src = &mapHeader->mapData->map[mapWidth * y2 + x2];
+ mapWidth = mapHeader->mapLayout->width;
+ src = &mapHeader->mapLayout->map[mapWidth * y2 + x2];
dest = &gUnknown_03004870.map[gUnknown_03004870.width * y + x];
for (i = 0; i < height; i++)
@@ -150,9 +150,9 @@ void fillSouthConnection(struct MapHeader *mapHeader, struct MapHeader *connecte
if (connectedMapHeader)
{
- cWidth = connectedMapHeader->mapData->width;
+ cWidth = connectedMapHeader->mapLayout->width;
x = offset + 7;
- y = mapHeader->mapData->height + 7;
+ y = mapHeader->mapLayout->height + 7;
if (x < 0)
{
x2 = -x;
@@ -196,8 +196,8 @@ void fillNorthConnection(struct MapHeader *mapHeader, struct MapHeader *connecte
if (connectedMapHeader)
{
- cWidth = connectedMapHeader->mapData->width;
- cHeight = connectedMapHeader->mapData->height;
+ cWidth = connectedMapHeader->mapLayout->width;
+ cHeight = connectedMapHeader->mapLayout->height;
x = offset + 7;
y2 = cHeight - 7;
if (x < 0)
@@ -245,8 +245,8 @@ void fillWestConnection(struct MapHeader *mapHeader, struct MapHeader *connected
int cWidth, cHeight;
if (connectedMapHeader)
{
- cWidth = connectedMapHeader->mapData->width;
- cHeight = connectedMapHeader->mapData->height;
+ cWidth = connectedMapHeader->mapLayout->width;
+ cHeight = connectedMapHeader->mapLayout->height;
y = offset + 7;
x2 = cWidth - 7;
if (y < 0)
@@ -291,8 +291,8 @@ void fillEastConnection(struct MapHeader *mapHeader, struct MapHeader *connected
int cHeight;
if (connectedMapHeader)
{
- cHeight = connectedMapHeader->mapData->height;
- x = mapHeader->mapData->width + 7;
+ cHeight = connectedMapHeader->mapLayout->height;
+ x = mapHeader->mapLayout->width + 7;
y = offset + 7;
if (y < 0)
{
@@ -352,10 +352,10 @@ u8 MapGridGetZCoordAt(int x, int y)
}
else
{
- border = gMapHeader.mapData->border;
+ border = gMapHeader.mapLayout->border;
i = (x + 1) & 1;
i += ((y + 1) & 1) * 2;
- block = gMapHeader.mapData->border[i];
+ block = gMapHeader.mapLayout->border[i];
block |= 0xc00;
}
if (block == 0x3ff)
@@ -378,10 +378,10 @@ u8 MapGridIsImpassableAt(int x, int y)
}
else
{
- border = gMapHeader.mapData->border;
+ border = gMapHeader.mapLayout->border;
i = (x + 1) & 1;
i += ((y + 1) & 1) * 2;
- block = gMapHeader.mapData->border[i];
+ block = gMapHeader.mapLayout->border[i];
block |= 0xc00;
}
if (block == 0x3ff)
@@ -396,7 +396,7 @@ u32 MapGridGetMetatileIdAt(int x, int y)
u16 block;
int i;
int j;
- struct MapData *mapData;
+ struct MapLayout *mapLayout;
u16 *border;
u16 block2;
@@ -407,17 +407,17 @@ u32 MapGridGetMetatileIdAt(int x, int y)
}
else
{
- mapData = gMapHeader.mapData;
+ mapLayout = gMapHeader.mapLayout;
i = (x + 1) & 1;
i += ((y + 1) & 1) * 2;
- block = mapData->border[i] | 0xc00;
+ block = mapLayout->border[i] | 0xc00;
}
if (block == 0x3ff)
{
- border = gMapHeader.mapData->border;
+ border = gMapHeader.mapLayout->border;
j = (x + 1) & 1;
j += ((y + 1) & 1) * 2;
- block2 = gMapHeader.mapData->border[j];
+ block2 = gMapHeader.mapLayout->border[j];
block2 |= 0xc00;
return block2 & block;
}
@@ -465,12 +465,12 @@ u32 GetBehaviorByMetatileId(u16 metatile)
u16 *attributes;
if (metatile <= 0x1ff)
{
- attributes = gMapHeader.mapData->primaryTileset->metatileAttributes;
+ attributes = gMapHeader.mapLayout->primaryTileset->metatileAttributes;
return attributes[metatile];
}
else if (metatile <= 0x3ff)
{
- attributes = gMapHeader.mapData->secondaryTileset->metatileAttributes;
+ attributes = gMapHeader.mapLayout->secondaryTileset->metatileAttributes;
return attributes[metatile - 0x200];
}
else
@@ -600,7 +600,7 @@ void sub_80566F0(u8 a1)
int GetMapBorderIdAt(int x, int y)
{
- struct MapData *mapData;
+ struct MapLayout *mapLayout;
u16 block, block2;
int i, j;
if (x >= 0 && x < gUnknown_03004870.width
@@ -616,10 +616,10 @@ int GetMapBorderIdAt(int x, int y)
}
else
{
- mapData = gMapHeader.mapData;
+ mapLayout = gMapHeader.mapLayout;
j = (x + 1) & 1;
j += ((y + 1) & 1) * 2;
- block2 = 0xc00 | mapData->border[j];
+ block2 = 0xc00 | mapLayout->border[j];
if (block2 == 0x3ff)
{
goto fail;
@@ -676,8 +676,8 @@ int GetPostCameraMoveMapBorderId(int x, int y)
int CanCameraMoveInDirection(int direction)
{
int x, y;
- x = gSaveBlock1.pos.x + 7 + gUnknown_0821664C[direction].x;
- y = gSaveBlock1.pos.y + 7 + gUnknown_0821664C[direction].y;
+ x = gSaveBlock1.pos.x + 7 + gDirectionToVectors[direction].x;
+ y = gSaveBlock1.pos.y + 7 + gDirectionToVectors[direction].y;
if (GetMapBorderIdAt(x, y) == -1)
{
return 0;
@@ -696,7 +696,7 @@ void sub_8056918(struct MapConnection *connection, int direction, int x, int y)
gSaveBlock1.pos.y -= connection->offset;
break;
case CONNECTION_WEST:
- gSaveBlock1.pos.x = mapHeader->mapData->width;
+ gSaveBlock1.pos.x = mapHeader->mapLayout->width;
gSaveBlock1.pos.y -= connection->offset;
break;
case CONNECTION_SOUTH:
@@ -705,7 +705,7 @@ void sub_8056918(struct MapConnection *connection, int direction, int x, int y)
break;
case CONNECTION_NORTH:
gSaveBlock1.pos.x -= connection->offset;
- gSaveBlock1.pos.y = mapHeader->mapData->height;
+ gSaveBlock1.pos.y = mapHeader->mapLayout->height;
break;
}
}
@@ -768,10 +768,10 @@ bool8 sub_8056ABC(u8 direction, int x, int y, struct MapConnection *connection)
{
case CONNECTION_SOUTH:
case CONNECTION_NORTH:
- return sub_8056B20(x, gMapHeader.mapData->width, mapHeader->mapData->width, connection->offset);
+ return sub_8056B20(x, gMapHeader.mapLayout->width, mapHeader->mapLayout->width, connection->offset);
case CONNECTION_WEST:
case CONNECTION_EAST:
- return sub_8056B20(y, gMapHeader.mapData->height, mapHeader->mapData->height, connection->offset);
+ return sub_8056B20(y, gMapHeader.mapLayout->height, mapHeader->mapLayout->height, connection->offset);
}
return FALSE;
}
@@ -812,10 +812,10 @@ int sub_8056B60(struct MapConnection *connection, int x, int y)
{
case CONNECTION_SOUTH:
case CONNECTION_NORTH:
- return sub_8056B4C(x - connection->offset, mapHeader->mapData->width);
+ return sub_8056B4C(x - connection->offset, mapHeader->mapLayout->width);
case CONNECTION_WEST:
case CONNECTION_EAST:
- return sub_8056B4C(y - connection->offset, mapHeader->mapData->height);
+ return sub_8056B4C(y - connection->offset, mapHeader->mapLayout->height);
}
return FALSE;
}
@@ -839,9 +839,9 @@ struct MapConnection *sub_8056BA0(s16 x, s16 y)
direction = connection->direction;
if ((direction == CONNECTION_DIVE || direction == CONNECTION_EMERGE)
|| (direction == CONNECTION_NORTH && y > 6)
- || (direction == CONNECTION_SOUTH && y < gMapHeader.mapData->height + 7)
+ || (direction == CONNECTION_SOUTH && y < gMapHeader.mapLayout->height + 7)
|| (direction == CONNECTION_WEST && x > 6)
- || (direction == CONNECTION_EAST && x < gMapHeader.mapData->width + 7))
+ || (direction == CONNECTION_EAST && x < gMapHeader.mapLayout->width + 7))
{
continue;
}
@@ -916,42 +916,42 @@ void sub_8056CBC(struct Tileset *tileset, int offset, int size)
}
}
-void sub_8056D28(struct MapData *mapData)
+void sub_8056D28(struct MapLayout *mapLayout)
{
void *src = (void*)(BG_VRAM);
- sub_8056C98(mapData->primaryTileset, src);
+ sub_8056C98(mapLayout->primaryTileset, src);
}
-void sub_8056D38(struct MapData *mapData)
+void sub_8056D38(struct MapLayout *mapLayout)
{
void *src = (void*)(BG_VRAM + 0x4000);
- sub_8056C98(mapData->secondaryTileset, src);
+ sub_8056C98(mapLayout->secondaryTileset, src);
}
-void apply_map_tileset1_palette(struct MapData *mapData)
+void apply_map_tileset1_palette(struct MapLayout *mapLayout)
{
- sub_8056CBC(mapData->primaryTileset, 0, 0xc0);
+ sub_8056CBC(mapLayout->primaryTileset, 0, 0xc0);
}
-void apply_map_tileset2_palette(struct MapData *mapData)
+void apply_map_tileset2_palette(struct MapLayout *mapLayout)
{
- sub_8056CBC(mapData->secondaryTileset, 0x60, 0xc0);
+ sub_8056CBC(mapLayout->secondaryTileset, 0x60, 0xc0);
}
-void copy_map_tileset1_tileset2_to_vram(struct MapData *mapData)
+void copy_map_tileset1_tileset2_to_vram(struct MapLayout *mapLayout)
{
- if (mapData)
+ if (mapLayout)
{
- sub_8056D28(mapData);
- sub_8056D38(mapData);
+ sub_8056D28(mapLayout);
+ sub_8056D38(mapLayout);
}
}
-void apply_map_tileset1_tileset2_palette(struct MapData *mapData)
+void apply_map_tileset1_tileset2_palette(struct MapLayout *mapLayout)
{
- if (mapData)
+ if (mapLayout)
{
- apply_map_tileset1_palette(mapData);
- apply_map_tileset2_palette(mapData);
+ apply_map_tileset1_palette(mapLayout);
+ apply_map_tileset2_palette(mapLayout);
}
}
diff --git a/src/fldeff_flash.c b/src/fldeff_flash.c
index a9f64a2d1..5a04f7061 100644
--- a/src/fldeff_flash.c
+++ b/src/fldeff_flash.c
@@ -12,12 +12,12 @@
#include "sprite.h"
#include "task.h"
-struct FlashStruct
+struct MapTypeFadePairs
{
- u8 unk0;
- u8 unk1;
- u8 unk2;
- u8 unk3;
+ u8 mapTypeA;
+ u8 mapTypeB;
+ u8 fadeToType; // 0 = fade to black, 1 = fade to white
+ u8 fadeFromType; // 0 = fade from black, 1 = fade from white
void (*func)(void);
};
@@ -26,39 +26,39 @@ extern void (*gPostMenuFieldCallback)(void);
extern u8 gUnknown_081B694A[];
-void sub_810CBFC(void);
-void sub_810CC34(void);
-bool8 sub_810CD5C(void);
-void sub_810CE5C(u8);
-void sub_810CE78(u8);
-void sub_810CF18(u8);
-void sub_810CF5C(u8);
-void sub_810CFC4(u8);
-void sub_810D00C(u8);
-void sub_810D028(u8);
-void sub_810D0C4(u8);
-void sub_810D128(u8);
-void sub_810CFF8(void);
-void sub_810CE48(void);
-
-static const struct FlashStruct gUnknown_083F7FC4[] =
+static void sub_810CBFC(void);
+static void sub_810CC34(void);
+static bool8 sub_810CD5C(void);
+static void sub_810CE5C(u8);
+static void sub_810CE78(u8);
+static void sub_810CF18(u8);
+static void sub_810CF5C(u8);
+static void sub_810CFC4(u8);
+static void sub_810D00C(u8);
+static void sub_810D028(u8);
+static void sub_810D0C4(u8);
+static void sub_810D128(u8);
+static void CreateEnterUndergroundEffectTask(void);
+static void CreateExitUndergroundTask(void);
+
+static const struct MapTypeFadePairs gMapTypeFadePairs[] =
{
- {1, 4, 1, 0, sub_810CFF8},
- {2, 4, 1, 0, sub_810CFF8},
- {3, 4, 1, 0, sub_810CFF8},
- {5, 4, 1, 0, sub_810CFF8},
- {6, 4, 1, 0, sub_810CFF8},
- {7, 4, 1, 0, sub_810CFF8},
- {8, 4, 1, 0, sub_810CFF8},
- {9, 4, 1, 0, sub_810CFF8},
- {4, 1, 0, 1, sub_810CE48},
- {4, 2, 0, 1, sub_810CE48},
- {4, 3, 0, 1, sub_810CE48},
- {4, 5, 0, 1, sub_810CE48},
- {4, 6, 0, 1, sub_810CE48},
- {4, 7, 0, 1, sub_810CE48},
- {4, 8, 0, 1, sub_810CE48},
- {4, 9, 0, 1, sub_810CE48},
+ {MAP_TYPE_TOWN, MAP_TYPE_UNDERGROUND, 1, 0, CreateEnterUndergroundEffectTask},
+ {MAP_TYPE_CITY, MAP_TYPE_UNDERGROUND, 1, 0, CreateEnterUndergroundEffectTask},
+ {MAP_TYPE_ROUTE, MAP_TYPE_UNDERGROUND, 1, 0, CreateEnterUndergroundEffectTask},
+ {MAP_TYPE_UNDERWATER, MAP_TYPE_UNDERGROUND, 1, 0, CreateEnterUndergroundEffectTask},
+ {MAP_TYPE_6, MAP_TYPE_UNDERGROUND, 1, 0, CreateEnterUndergroundEffectTask},
+ {MAP_TYPE_7, MAP_TYPE_UNDERGROUND, 1, 0, CreateEnterUndergroundEffectTask},
+ {MAP_TYPE_INDOOR, MAP_TYPE_UNDERGROUND, 1, 0, CreateEnterUndergroundEffectTask},
+ {MAP_TYPE_SECRET_BASE, MAP_TYPE_UNDERGROUND, 1, 0, CreateEnterUndergroundEffectTask},
+ {MAP_TYPE_UNDERGROUND, MAP_TYPE_TOWN, 0, 1, CreateExitUndergroundTask},
+ {MAP_TYPE_UNDERGROUND, MAP_TYPE_CITY, 0, 1, CreateExitUndergroundTask},
+ {MAP_TYPE_UNDERGROUND, MAP_TYPE_ROUTE, 0, 1, CreateExitUndergroundTask},
+ {MAP_TYPE_UNDERGROUND, MAP_TYPE_UNDERWATER, 0, 1, CreateExitUndergroundTask},
+ {MAP_TYPE_UNDERGROUND, MAP_TYPE_6, 0, 1, CreateExitUndergroundTask},
+ {MAP_TYPE_UNDERGROUND, MAP_TYPE_7, 0, 1, CreateExitUndergroundTask},
+ {MAP_TYPE_UNDERGROUND, MAP_TYPE_INDOOR, 0, 1, CreateExitUndergroundTask},
+ {MAP_TYPE_UNDERGROUND, MAP_TYPE_SECRET_BASE, 0, 1, CreateExitUndergroundTask},
{0, 0, 0, 0, NULL},
};
@@ -95,7 +95,7 @@ bool8 SetUpFieldMove_Flash(void)
return FALSE;
}
-void sub_810CBFC(void)
+static void sub_810CBFC(void)
{
u8 taskId = oei_task_add();
gFieldEffectArguments[0] = gLastFieldPokeMenuOpened;
@@ -103,7 +103,7 @@ void sub_810CBFC(void)
gTasks[taskId].data[9] = (uintptr_t)sub_810CC34;
}
-void sub_810CC34(void)
+static void sub_810CC34(void)
{
PlaySE(SE_W115);
FlagSet(FLAG_SYS_USE_FLASH);
@@ -156,17 +156,17 @@ void sub_810CC80(void)
SetMainCallback2(gMain.savedCallback);
}
-bool8 sub_810CD5C(void)
+static bool8 sub_810CD5C(void)
{
u8 i;
- u8 v0 = get_map_type_from_warp0();
- u8 v1 = Overworld_GetMapTypeOfSaveblockLocation();
+ u8 prevMapType = GetLastUsedWarpMapType();
+ u8 curMapType = Overworld_GetMapTypeOfSaveblockLocation();
- for (i = 0; gUnknown_083F7FC4[i].unk0; i++)
+ for (i = 0; gMapTypeFadePairs[i].mapTypeA; i++)
{
- if (gUnknown_083F7FC4[i].unk0 == v0 && gUnknown_083F7FC4[i].unk1 == v1)
+ if (gMapTypeFadePairs[i].mapTypeA == prevMapType && gMapTypeFadePairs[i].mapTypeB == curMapType)
{
- gUnknown_083F7FC4[i].func();
+ gMapTypeFadePairs[i].func();
return TRUE;
}
}
@@ -174,51 +174,49 @@ bool8 sub_810CD5C(void)
return FALSE;
}
-u8 sub_810CDB8(u8 a1, u8 a2)
+u8 GetMapPairFadeToType(u8 currentMapType, u8 destinationMapType)
{
u8 i;
- u8 v0 = a1;
- u8 v1 = a2;
+ u8 curMapType = currentMapType;
+ u8 destMapType = destinationMapType;
- for (i = 0; gUnknown_083F7FC4[i].unk0; i++)
+ for (i = 0; gMapTypeFadePairs[i].mapTypeA; i++)
{
- if (gUnknown_083F7FC4[i].unk0 == v0 && gUnknown_083F7FC4[i].unk1 == v1)
- {
- return gUnknown_083F7FC4[i].unk2;
- }
+ if (gMapTypeFadePairs[i].mapTypeA == curMapType && gMapTypeFadePairs[i].mapTypeB == destMapType)
+ return gMapTypeFadePairs[i].fadeToType;
}
return FALSE;
}
-u8 fade_type_for_given_maplight_pair(u8 a1, u8 a2)
+u8 GetMapPairFadeFromType(u8 currentMapType, u8 destinationMapType)
{
u8 i;
- u8 v0 = a1;
- u8 v1 = a2;
+ u8 curMapType = currentMapType;
+ u8 destMapType = destinationMapType;
- for (i = 0; gUnknown_083F7FC4[i].unk0; i++)
+ for (i = 0; gMapTypeFadePairs[i].mapTypeA; i++)
{
- if (gUnknown_083F7FC4[i].unk0 == v0 && gUnknown_083F7FC4[i].unk1 == v1)
+ if (gMapTypeFadePairs[i].mapTypeA == curMapType && gMapTypeFadePairs[i].mapTypeB == destMapType)
{
- return gUnknown_083F7FC4[i].unk3;
+ return gMapTypeFadePairs[i].fadeFromType;
}
}
return FALSE;
}
-void sub_810CE48(void)
+static void CreateExitUndergroundTask(void)
{
CreateTask(sub_810CE5C, 0);
}
-void sub_810CE5C(u8 taskId)
+static void sub_810CE5C(u8 taskId)
{
gTasks[taskId].func = sub_810CE78;
}
-void sub_810CE78(u8 taskId)
+static void sub_810CE78(u8 taskId)
{
REG_DISPCNT = 0;
LZ77UnCompVram(gCaveTransitionTiles, (void *)0x600C000);
@@ -235,7 +233,7 @@ void sub_810CE78(u8 taskId)
gTasks[taskId].data[1] = 0;
}
-void sub_810CF18(u8 taskId)
+static void sub_810CF18(u8 taskId)
{
u16 count = gTasks[taskId].data[1];
u16 blend = count + 0x1000;
@@ -251,7 +249,7 @@ void sub_810CF18(u8 taskId)
}
}
-void sub_810CF5C(u8 taskId)
+static void sub_810CF5C(u8 taskId)
{
u16 count;
@@ -272,7 +270,7 @@ void sub_810CF5C(u8 taskId)
}
}
-void sub_810CFC4(u8 taskId)
+static void sub_810CFC4(u8 taskId)
{
if (gTasks[taskId].data[2])
gTasks[taskId].data[2]--;
@@ -280,17 +278,17 @@ void sub_810CFC4(u8 taskId)
SetMainCallback2(gMain.savedCallback);
}
-void sub_810CFF8(void)
+static void CreateEnterUndergroundEffectTask(void)
{
CreateTask(sub_810D00C, 0);
}
-void sub_810D00C(u8 taskId)
+static void sub_810D00C(u8 taskId)
{
gTasks[taskId].func = sub_810D028;
}
-void sub_810D028(u8 taskId)
+static void sub_810D028(u8 taskId)
{
REG_DISPCNT = 0;
LZ77UnCompVram(gCaveTransitionTiles, (void *)0x600C000);
@@ -308,7 +306,7 @@ void sub_810D028(u8 taskId)
gTasks[taskId].data[2] = 0;
}
-void sub_810D0C4(u8 taskId)
+static void sub_810D0C4(u8 taskId)
{
u16 count = gTasks[taskId].data[2];
if (count < 16)
@@ -325,7 +323,7 @@ void sub_810D0C4(u8 taskId)
}
}
-void sub_810D128(u8 taskId)
+static void sub_810D128(u8 taskId)
{
u16 count = 16 - gTasks[taskId].data[1];
u16 blend = count + 0x1000;
diff --git a/src/hall_of_fame.c b/src/hall_of_fame.c
index 5bd0d229b..2536f4898 100644
--- a/src/hall_of_fame.c
+++ b/src/hall_of_fame.c
@@ -451,7 +451,7 @@ static bool8 sub_8141E64(void)
if (!gPaletteFade.active)
{
SetMainCallback2(CB2_HallOfFame);
- PlayBGM(BGM_DENDOU);
+ PlayBGM(MUS_DENDOU);
return 0;
}
break;
diff --git a/src/hof_pc.c b/src/hof_pc.c
index 3ff9eaaea..b9407bace 100644
--- a/src/hof_pc.c
+++ b/src/hof_pc.c
@@ -8,7 +8,6 @@
#include "task.h"
extern void (*gFieldCallback)(void);
-extern void (*gUnknown_0300485C)(void);
static void ReshowPCMenuAfterHallOfFamePC(void);
static void Task_WaitForPaletteFade(u8);
diff --git a/src/item_menu.c b/src/item_menu.c
index 5fbfb775e..71516c0a4 100644
--- a/src/item_menu.c
+++ b/src/item_menu.c
@@ -38,14 +38,13 @@
#include "ewram.h"
// External stuff
-extern void gpu_pal_allocator_reset__manage_upper_four(void);
+extern void FreeAndReserveObjectSpritePalettes(void);
extern void SetVerticalScrollIndicatorPriority();
extern void sub_809D104(u16 *, u16, u16, const u8 *, u16, u16, u16, u16);
extern void PauseVerticalScrollIndicator();
extern u8 sub_80F9284(void);
extern void sub_808B5B4();
extern u8 sub_80F92F4();
-extern void sub_80C9C7C(u8);
extern void pal_fill_black(void);
extern bool8 IsWeatherNotFadingIn(void);
extern u8 sub_80F931C();
@@ -140,7 +139,7 @@ EWRAM_DATA static s8 gUnknown_0203855B = 0;
EWRAM_DATA static s8 gUnknown_0203855C = 0;
EWRAM_DATA u16 gSpecialVar_ItemId = 0;
EWRAM_DATA u8 gCurSelectedItemSlotIndex = 0;
-EWRAM_DATA u8 gUnknown_02038561 = 0;
+EWRAM_DATA u8 gPokemonItemUseType = 0;
EWRAM_DATA static u8 gUnknown_02038562 = 0;
EWRAM_DATA static u8 gUnknown_02038563 = 0;
EWRAM_DATA static u8 gUnknown_02038564 = 0;
@@ -392,7 +391,7 @@ static bool8 SetupBagMultistep(void)
gMain.state++;
break;
case 2:
- gpu_pal_allocator_reset__manage_upper_four();
+ FreeAndReserveObjectSpritePalettes();
gMain.state++;
break;
case 3:
@@ -2666,7 +2665,7 @@ void HandleItemMenuPaletteFade(u8 taskId)
MainCallback cb = (MainCallback)((u16)taskData[8] << 16 | (u16)taskData[9]);
SetMainCallback2(cb);
- gpu_pal_allocator_reset__manage_upper_four();
+ FreeAndReserveObjectSpritePalettes();
DestroyTask(taskId);
}
}
@@ -2701,7 +2700,7 @@ static void HandlePopupMenuAction_UseOnField(u8 taskId)
if (sCurrentBagPocket != BAG_POCKET_BERRIES)
ItemId_GetFieldFunc(gSpecialVar_ItemId)(taskId);
else
- sub_80C9C7C(taskId);
+ ItemUseOutOfBattle_Berry(taskId);
}
}
}
@@ -2925,7 +2924,7 @@ static void HandlePopupMenuAction_Give(u8 taskId)
gTasks[taskId].data[8] = (u32)sub_808B020 >> 16;
gTasks[taskId].data[9] = (u32)sub_808B020;
gTasks[taskId].func = HandleItemMenuPaletteFade;
- gUnknown_02038561 = 1;
+ gPokemonItemUseType = ITEM_USE_GIVE_ITEM;
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 16, RGB(0, 0, 0));
}
}
diff --git a/src/item_use.c b/src/item_use.c
index 69fcd51de..4e76ea434 100644
--- a/src/item_use.c
+++ b/src/item_use.c
@@ -34,28 +34,35 @@
#include "string_util.h"
#include "strings.h"
#include "task.h"
+#include "constants/species.h"
#include "constants/vars.h"
extern void (*gFieldItemUseCallback)(u8);
extern void (*gFieldCallback)(void);
-extern void (*gUnknown_0300485C)(void);
extern void (*gPokemonItemUseCallback)(u8, u16, TaskFunc);
-extern u8 gUnknown_02038561;
+extern u8 gPokemonItemUseType;
extern u8 gLastFieldPokeMenuOpened;
extern u8 gBankInMenu;
-extern u8 gUnknown_081A1654[];
-extern u8 gUnknown_081A168F[];
+extern u8 S_PlantBerryTreeFromBag[];
+extern u8 S_WaterBerryTreeFromBag[];
extern u16 gBattlerPartyIndexes[];
extern u16 gBattleTypeFlags;
+static void ItemUseOnFieldCB_Berry(u8);
+static void ItemUseOnFieldCB_WailmerPail(u8);
+static void StartTeachMonTMHMMove(u8);
+static void DisplayTeachMonTMHMYesNoChoice(u8);
+static void BootTMHM(u8);
+static void WaitButtonPressAndDisplayTMHMInfo(u8);
+
static const u8 gSSTidalBetaString[] = _("この チケットで ふねに のりほうだい\nはやく のってみたいな");
static const u8 gSSTidalBetaString2[] = _("この チケットで ふねに のりほうだい\nはやく のってみたいな");
-static const u8 *const gUnknown_083D61DC[2] =
+static const u8 *const sSSTidalBetaStrings[] =
{
gSSTidalBetaString,
gSSTidalBetaString2,
@@ -70,9 +77,9 @@ static const MainCallback gExitToOverworldFuncList[] =
static const u8 gItemFinderDirections[] = { DIR_NORTH, DIR_EAST, DIR_SOUTH, DIR_WEST };
-static const struct YesNoFuncTable gUnknown_083D61F4 =
+static const struct YesNoFuncTable sTeachMonTMHMYesNoActions =
{
- .yesFunc = sub_80C9FC0,
+ .yesFunc = StartTeachMonTMHMMove,
.noFunc = CleanUpItemMenuMessage,
};
@@ -80,7 +87,7 @@ void ExecuteSwitchToOverworldFromItemUse(u8 taskId)
{
u8 taskData;
- if (gSpecialVar_ItemId == 0xAF)
+ if (gSpecialVar_ItemId == ITEM_ENIGMA_BERRY)
taskData = gTasks[taskId].data[15] - 1;
else
taskData = ItemId_GetType(gSpecialVar_ItemId) - 1;
@@ -115,7 +122,7 @@ void SetUpItemUseOnFieldCallback(u8 taskId)
}
}
-void HandleDeniedItemUseMessage(u8 var1, u8 playerMenuStatus, const u8 *text)
+static void HandleDeniedItemUseMessage(u8 taskId, u8 playerMenuStatus, const u8 *text)
{
StringExpandPlaceholders(gStringVar4, text);
@@ -123,22 +130,22 @@ void HandleDeniedItemUseMessage(u8 var1, u8 playerMenuStatus, const u8 *text)
{
case 0: // Item Menu
Menu_EraseWindowRect(0, 13, 13, 20);
- DisplayItemMessageOnField(var1, gStringVar4, CleanUpItemMenuMessage, 1);
+ DisplayItemMessageOnField(taskId, gStringVar4, CleanUpItemMenuMessage, 1);
break;
default: // Field
- DisplayItemMessageOnField(var1, gStringVar4, CleanUpOverworldMessage, 0);
+ DisplayItemMessageOnField(taskId, gStringVar4, CleanUpOverworldMessage, 0);
break;
}
}
-void DisplayDadsAdviceCannotUseItemMessage(u8 var1, u8 playerMenuStatus)
+void DisplayDadsAdviceCannotUseItemMessage(u8 taskId, u8 playerMenuStatus)
{
- HandleDeniedItemUseMessage(var1, playerMenuStatus, gOtherText_DadsAdvice);
+ HandleDeniedItemUseMessage(taskId, playerMenuStatus, gOtherText_DadsAdvice);
}
-void DisplayCantGetOffBikeItemMessage(u8 var1, u8 playerMenuStatus)
+void DisplayCantGetOffBikeItemMessage(u8 taskId, u8 playerMenuStatus)
{
- HandleDeniedItemUseMessage(var1, playerMenuStatus, gOtherText_CantGetOffBike);
+ HandleDeniedItemUseMessage(taskId, playerMenuStatus, gOtherText_CantGetOffBike);
}
u8 CheckIfItemIsTMHMOrEvolutionStone(u16 itemId)
@@ -177,7 +184,7 @@ void ItemUseOutOfBattle_Bike(u8 taskId)
PlayerGetDestCoords(&x, &y);
tileBehavior = MapGridGetMetatileBehaviorAt(x, y);
- if (FlagGet(FLAG_SYS_CYCLING_ROAD) == TRUE // on cycling road?
+ if (FlagGet(FLAG_SYS_CYCLING_ROAD) == TRUE
|| MetatileBehavior_IsVerticalRail(tileBehavior) == TRUE
|| MetatileBehavior_IsHorizontalRail(tileBehavior) == TRUE
|| MetatileBehavior_IsIsolatedVerticalRail(tileBehavior) == TRUE
@@ -200,9 +207,9 @@ void ItemUseOutOfBattle_Bike(u8 taskId)
void ItemUseOnFieldCB_Bike(u8 taskId)
{
if (ItemId_GetSecondaryId(gSpecialVar_ItemId) == 0)
- GetOnOffBike(2);
+ GetOnOffBike(PLAYER_AVATAR_FLAG_MACH_BIKE);
if (ItemId_GetSecondaryId(gSpecialVar_ItemId) == 1)
- GetOnOffBike(4);
+ GetOnOffBike(PLAYER_AVATAR_FLAG_ACRO_BIKE);
ScriptUnfreezeEventObjects();
ScriptContext2_Disable();
@@ -256,11 +263,11 @@ void ItemUseOnFieldCB_Rod(u8 taskId)
DestroyTask(taskId);
}
-void ItemUseOutOfBattle_Itemfinder(u8 var)
+void ItemUseOutOfBattle_Itemfinder(u8 taskId)
{
IncrementGameStat(GAME_STAT_USED_ITEMFINDER);
gFieldItemUseCallback = (void *)ItemUseOnFieldCB_Itemfinder;
- SetUpItemUseOnFieldCallback(var);
+ SetUpItemUseOnFieldCallback(taskId);
}
void ItemUseOnFieldCB_Itemfinder(u8 taskId)
@@ -384,23 +391,23 @@ bool8 sub_80C9688(struct MapConnection *connection, int x, int y)
case 2:
localOffset = connection->offset + 7;
localX = x - localOffset;
- localLength = mapHeader->mapData->height - 7;
+ localLength = mapHeader->mapLayout->height - 7;
localY = localLength + y; // additions are reversed for some reason
break;
case 1:
localOffset = connection->offset + 7;
localX = x - localOffset;
- localLength = gMapHeader.mapData->height + 7;
+ localLength = gMapHeader.mapLayout->height + 7;
localY = y - localLength;
break;
case 3:
- localLength = mapHeader->mapData->width - 7;
+ localLength = mapHeader->mapLayout->width - 7;
localX = localLength + x; // additions are reversed for some reason
localOffset = connection->offset + 7;
localY = y - localOffset;
break;
case 4:
- localLength = gMapHeader.mapData->width + 7;
+ localLength = gMapHeader.mapLayout->width + 7;
localX = x - localLength;
localOffset = connection->offset + 7;
localY = y - localOffset;
@@ -417,8 +424,8 @@ void sub_80C9720(u8 taskId)
{
s16 x, y;
s16 curX, curY;
- s16 width = gMapHeader.mapData->width + 7;
- s16 height = gMapHeader.mapData->height + 7;
+ s16 width = gMapHeader.mapLayout->width + 7;
+ s16 height = gMapHeader.mapLayout->height + 7;
PlayerGetDestCoords(&x, &y);
@@ -743,7 +750,7 @@ void ItemUseOutOfBattle_CoinCase(u8 taskId)
if (!gTasks[taskId].data[2])
{
- Menu_EraseWindowRect(0, 0xD, 0xD, 0x14);
+ Menu_EraseWindowRect(0, 13, 13, 20);
DisplayItemMessageOnField(taskId, gStringVar4, CleanUpItemMenuMessage, 1);
}
else
@@ -752,16 +759,16 @@ void ItemUseOutOfBattle_CoinCase(u8 taskId)
}
}
-void sub_80C9BB8(u8 var)
+static void SSTicketWaitForAButtonPress(u8 taskId)
{
if (gMain.newKeys & A_BUTTON)
- CleanUpItemMenuMessage(var);
+ CleanUpItemMenuMessage(taskId);
}
-void sub_80C9BD8(u8 var)
+static void SSTicketWaitForAButtonPress2(u8 taskId)
{
if (gMain.newKeys & A_BUTTON)
- CleanUpOverworldMessage(var);
+ CleanUpOverworldMessage(taskId);
}
// unused
@@ -769,20 +776,20 @@ void ItemUseOutOfBattle_SSTicket(u8 taskId)
{
if (gTasks[taskId].data[2] == 0)
{
- Menu_EraseWindowRect(0, 0xD, 0xD, 0x14);
- DisplayItemMessageOnField(taskId, gUnknown_083D61DC[ItemId_GetSecondaryId(gSpecialVar_ItemId)], sub_80C9BB8, 1);
+ Menu_EraseWindowRect(0, 13, 13, 20);
+ DisplayItemMessageOnField(taskId, sSSTidalBetaStrings[ItemId_GetSecondaryId(gSpecialVar_ItemId)], SSTicketWaitForAButtonPress, 1);
}
else
{
- DisplayItemMessageOnField(taskId, gUnknown_083D61DC[ItemId_GetSecondaryId(gSpecialVar_ItemId)], sub_80C9BD8, 0);
+ DisplayItemMessageOnField(taskId, sSSTidalBetaStrings[ItemId_GetSecondaryId(gSpecialVar_ItemId)], SSTicketWaitForAButtonPress2, 0);
}
}
-void sub_80C9C7C(u8 taskId)
+void ItemUseOutOfBattle_Berry(u8 taskId)
{
if (IsPlayerFacingUnplantedSoil() == TRUE)
{
- gFieldItemUseCallback = sub_80C9D00;
+ gFieldItemUseCallback = ItemUseOnFieldCB_Berry;
gFieldCallback = ExecuteItemUseFromBlackPalette;
gTasks[taskId].data[8] = (u32)c2_exit_to_overworld_2_switch >> 16;
gTasks[taskId].data[9] = (u32)c2_exit_to_overworld_2_switch;
@@ -795,11 +802,11 @@ void sub_80C9C7C(u8 taskId)
}
}
-void sub_80C9D00(u8 taskId)
+static void ItemUseOnFieldCB_Berry(u8 taskId)
{
RemoveBagItem(gSpecialVar_ItemId, 1);
ScriptContext2_Enable();
- ScriptContext1_SetupScript(gUnknown_081A1654);
+ ScriptContext1_SetupScript(S_PlantBerryTreeFromBag);
DestroyTask(taskId);
}
@@ -807,7 +814,7 @@ void ItemUseOutOfBattle_WailmerPail(u8 taskId)
{
if (TryToWaterBerryTree() == TRUE)
{
- gFieldItemUseCallback = sub_80C9D74;
+ gFieldItemUseCallback = ItemUseOnFieldCB_WailmerPail;
SetUpItemUseOnFieldCallback(taskId);
}
else
@@ -816,23 +823,23 @@ void ItemUseOutOfBattle_WailmerPail(u8 taskId)
}
}
-void sub_80C9D74(u8 taskId)
+static void ItemUseOnFieldCB_WailmerPail(u8 taskId)
{
ScriptContext2_Enable();
- ScriptContext1_SetupScript(gUnknown_081A168F);
+ ScriptContext1_SetupScript(S_WaterBerryTreeFromBag);
DestroyTask(taskId);
}
-void sub_80C9D98(u8 taskId)
+static void SetPokemonItemUseAndFadeOut(u8 taskId)
{
- gUnknown_02038561 = 0;
+ gPokemonItemUseType = ITEM_USE_SINGLE_MON;
ItemMenu_ConfirmNormalFade(taskId);
}
void ItemUseOutOfBattle_Medicine(u8 taskId)
{
gPokemonItemUseCallback = UseMedicine;
- sub_80C9D98(taskId);
+ SetPokemonItemUseAndFadeOut(taskId);
}
void ItemUseOutOfBattle_SacredAsh(u8 taskId)
@@ -841,74 +848,74 @@ void ItemUseOutOfBattle_SacredAsh(u8 taskId)
gLastFieldPokeMenuOpened = 0;
- for (i = 0; i < 6; i++)
+ for (i = 0; i < PARTY_SIZE; i++)
{
- if (GetMonData(&gPlayerParty[i], MON_DATA_SPECIES) != 0 && GetMonData(&gPlayerParty[i], MON_DATA_HP) == 0)
+ if (GetMonData(&gPlayerParty[i], MON_DATA_SPECIES) != SPECIES_NONE && GetMonData(&gPlayerParty[i], MON_DATA_HP) == 0)
{
gLastFieldPokeMenuOpened = i;
break;
}
}
- gPokemonItemUseCallback = sub_8070048;
- gUnknown_02038561 = 4;
+ gPokemonItemUseCallback = DoSacredAshItemEffect;
+ gPokemonItemUseType = ITEM_USE_ALL_MONS;
ItemMenu_ConfirmNormalFade(taskId);
}
void ItemUseOutOfBattle_PPRecovery(u8 taskId)
{
gPokemonItemUseCallback = DoPPRecoveryItemEffect;
- sub_80C9D98(taskId);
+ SetPokemonItemUseAndFadeOut(taskId);
}
void ItemUseOutOfBattle_PPUp(u8 taskId)
{
gPokemonItemUseCallback = DoPPUpItemEffect;
- sub_80C9D98(taskId);
+ SetPokemonItemUseAndFadeOut(taskId);
}
void ItemUseOutOfBattle_RareCandy(u8 taskId)
{
gPokemonItemUseCallback = DoRareCandyItemEffect;
- sub_80C9D98(taskId);
+ SetPokemonItemUseAndFadeOut(taskId);
}
void ItemUseOutOfBattle_TMHM(u8 taskId)
{
- Menu_EraseWindowRect(0, 0xD, 0xD, 0x14);
+ Menu_EraseWindowRect(0, 13, 13, 20);
if (gSpecialVar_ItemId >= ITEM_HM01_CUT)
- DisplayItemMessageOnField(taskId, gOtherText_BootedHM, sub_80C9EE4, 1); // HM
+ DisplayItemMessageOnField(taskId, gOtherText_BootedHM, BootTMHM, 1); // HM
else
- DisplayItemMessageOnField(taskId, gOtherText_BootedTM, sub_80C9EE4, 1); // TM
+ DisplayItemMessageOnField(taskId, gOtherText_BootedTM, BootTMHM, 1); // TM
}
-void sub_80C9EE4(u8 taskId)
+static void BootTMHM(u8 taskId)
{
PlaySE(SE_PC_LOGON);
- gTasks[taskId].func = sub_80C9F10;
+ gTasks[taskId].func = WaitButtonPressAndDisplayTMHMInfo;
}
-void sub_80C9F10(u8 taskId)
+static void WaitButtonPressAndDisplayTMHMInfo(u8 taskId)
{
if (gMain.newKeys & A_BUTTON || gMain.newKeys & B_BUTTON)
{
StringCopy(gStringVar1, gMoveNames[ItemIdToBattleMoveId(gSpecialVar_ItemId)]);
StringExpandPlaceholders(gStringVar4, gOtherText_ContainsMove);
- DisplayItemMessageOnField(taskId, gStringVar4, sub_80C9F80, 1);
+ DisplayItemMessageOnField(taskId, gStringVar4, DisplayTeachMonTMHMYesNoChoice, 1);
}
}
-void sub_80C9F80(u8 var)
+static void DisplayTeachMonTMHMYesNoChoice(u8 taskId)
{
DisplayYesNoMenu(7, 7, 1);
sub_80A3FA0(gBGTilemapBuffers[1], 8, 8, 5, 4, 1);
- DoYesNoFuncWithChoice(var, &gUnknown_083D61F4);
+ DoYesNoFuncWithChoice(taskId, &sTeachMonTMHMYesNoActions);
}
-void sub_80C9FC0(u8 var)
+static void StartTeachMonTMHMMove(u8 taskId)
{
gPokemonItemUseCallback = TeachMonTMMove;
- sub_80C9D98(var);
+ SetPokemonItemUseAndFadeOut(taskId);
}
static void PrepareItemUseMessage(void)
@@ -919,27 +926,27 @@ static void PrepareItemUseMessage(void)
StringExpandPlaceholders(gStringVar4, gOtherText_UsedItem);
}
-void ItemUseOutOfBattle_Repel(u8 var)
+void ItemUseOutOfBattle_Repel(u8 taskId)
{
if (VarGet(VAR_REPEL_STEP_COUNT) == 0)
{
VarSet(VAR_REPEL_STEP_COUNT, ItemId_GetHoldEffectParam(gSpecialVar_ItemId));
PrepareItemUseMessage();
- DisplayItemMessageOnField(var, gStringVar4, CleanUpItemMenuMessage, 1);
+ DisplayItemMessageOnField(taskId, gStringVar4, CleanUpItemMenuMessage, 1);
}
else
{
- DisplayItemMessageOnField(var, gOtherText_RepelLingers, CleanUpItemMenuMessage, 1);
+ DisplayItemMessageOnField(taskId, gOtherText_RepelLingers, CleanUpItemMenuMessage, 1);
}
}
-void sub_80CA07C(void)
+static void sub_80CA07C(void)
{
sub_80A3E0C();
CopyItemName(gSpecialVar_ItemId, gStringVar2);
}
-void sub_80CA098(u8 taskId)
+static void PlayBlackWhiteFluteSound(u8 taskId)
{
if(++gTasks[taskId].data[15] > 7)
{
@@ -956,7 +963,7 @@ void ItemUseOutOfBattle_BlackWhiteFlute(u8 taskId)
FlagClear(FLAG_SYS_ENC_DOWN_ITEM);
sub_80CA07C();
StringExpandPlaceholders(gStringVar4, gOtherText_UsedFlute);
- gTasks[taskId].func = sub_80CA098;
+ gTasks[taskId].func = PlayBlackWhiteFluteSound;
gTasks[taskId].data[15] = 0;
}
else if (gSpecialVar_ItemId == ITEM_BLACK_FLUTE)
@@ -965,19 +972,19 @@ void ItemUseOutOfBattle_BlackWhiteFlute(u8 taskId)
FlagClear(FLAG_SYS_ENC_UP_ITEM);
sub_80CA07C();
StringExpandPlaceholders(gStringVar4, gOtherText_UsedRepel);
- gTasks[taskId].func = sub_80CA098;
+ gTasks[taskId].func = PlayBlackWhiteFluteSound;
gTasks[taskId].data[15] = 0;
}
}
void task08_080A1C44(u8 taskId)
{
- player_avatar_init_params_reset();
- sub_80878A8();
+ ResetInitialPlayerAvatarState();
+ StartEscapeRopeFieldEffect();
DestroyTask(taskId);
}
-void EscapeRopeCallback(u8 taskId)
+static void ItemUseOnFieldCB_EscapeRope(u8 taskId)
{
Overworld_ResetStateAfterDigEscRope();
PrepareItemUseMessage();
@@ -997,7 +1004,7 @@ void ItemUseOutOfBattle_EscapeRope(u8 taskId)
{
if (CanUseEscapeRopeOnCurrMap() == TRUE)
{
- gFieldItemUseCallback = EscapeRopeCallback;
+ gFieldItemUseCallback = ItemUseOnFieldCB_EscapeRope;
SetUpItemUseOnFieldCallback(taskId);
}
else
@@ -1006,30 +1013,30 @@ void ItemUseOutOfBattle_EscapeRope(u8 taskId)
}
}
-void ItemUseOutOfBattle_EvolutionStone(u8 var)
+void ItemUseOutOfBattle_EvolutionStone(u8 taskId)
{
gPokemonItemUseCallback = DoEvolutionStoneItemEffect;
- sub_80C9D98(var);
+ SetPokemonItemUseAndFadeOut(taskId);
}
-void ItemUseInBattle_PokeBall(u8 var)
+void ItemUseInBattle_PokeBall(u8 taskId)
{
if (PlayerPartyAndPokemonStorageFull() == FALSE) // have room for mon?
{
RemoveBagItem(gSpecialVar_ItemId, 1);
- sub_80A7094(var);
+ sub_80A7094(taskId);
}
else
{
- Menu_EraseWindowRect(0, 0xD, 0xD, 0x14);
- DisplayItemMessageOnField(var, gOtherText_BoxIsFull, CleanUpItemMenuMessage, 1);
+ Menu_EraseWindowRect(0, 13, 13, 20);
+ DisplayItemMessageOnField(taskId, gOtherText_BoxIsFull, CleanUpItemMenuMessage, 1);
}
}
-void sub_80CA294(u8 var)
+void sub_80CA294(u8 taskId)
{
if (gMain.newKeys & A_BUTTON || gMain.newKeys & B_BUTTON)
- sub_80A7094(var);
+ sub_80A7094(taskId);
}
void sub_80CA2BC(u8 taskId)
@@ -1046,7 +1053,7 @@ void ItemUseInBattle_StatIncrease(u8 taskId)
{
u16 partyId = gBattlerPartyIndexes[gBankInMenu];
- Menu_EraseWindowRect(0, 0xD, 0xD, 0x14);
+ Menu_EraseWindowRect(0, 13, 13, 20);
if (ExecuteTableBasedItemEffect_(&gPlayerParty[partyId], gSpecialVar_ItemId, partyId, 0) != FALSE)
{
@@ -1064,7 +1071,7 @@ void sub_80CA394(u8 taskId)
if (!gPaletteFade.active)
{
sub_8094E4C();
- gpu_pal_allocator_reset__manage_upper_four();
+ FreeAndReserveObjectSpritePalettes();
DestroyTask(taskId);
}
}
@@ -1083,7 +1090,7 @@ void ItemUseInBattle_Medicine(u8 var)
void unref_sub_80CA410(u8 var)
{
- gPokemonItemUseCallback = sub_8070048;
+ gPokemonItemUseCallback = DoSacredAshItemEffect;
sub_80CA3C0(var);
}
@@ -1095,7 +1102,7 @@ void ItemUseInBattle_PPRecovery(u8 var)
void unref_sub_80CA448(u8 var)
{
- Menu_EraseWindowRect(0, 0xD, 0xD, 0x14);
+ Menu_EraseWindowRect(0, 13, 13, 20);
if (ExecuteTableBasedItemEffect__(0, gSpecialVar_ItemId, 0) == FALSE)
{
@@ -1112,9 +1119,9 @@ void unref_sub_80CA448(u8 var)
void ItemUseInBattle_Escape(u8 taskId)
{
- Menu_EraseWindowRect(0, 0xD, 0xD, 0x14);
+ Menu_EraseWindowRect(0, 13, 13, 20);
- if((gBattleTypeFlags & BATTLE_TYPE_TRAINER) == FALSE)
+ if ((gBattleTypeFlags & BATTLE_TYPE_TRAINER) == FALSE)
{
PrepareItemUseMessage();
DisplayItemMessageOnField(taskId, gStringVar4, sub_80A7094, 1);
diff --git a/src/main_menu.c b/src/main_menu.c
index 886995b16..93d9be77a 100644
--- a/src/main_menu.c
+++ b/src/main_menu.c
@@ -774,7 +774,7 @@ static void Task_NewGameSpeech1(u8 taskId)
gTasks[taskId].data[3] = 0xFF;
gTasks[taskId].tFrameCounter = 216; //Wait 3.6 seconds (216 frames) before starting speech
- PlayBGM(BGM_DOORO_X4);
+ PlayBGM(MUS_DOORO_X4);
}
static void Task_NewGameSpeech2(u8 taskId)
diff --git a/src/mauville_man.c b/src/mauville_man.c
index e22809242..bfdfe9cf1 100644
--- a/src/mauville_man.c
+++ b/src/mauville_man.c
@@ -745,7 +745,7 @@ static void Task_BardSong(u8 taskId)
case 3:
if (gStringVar4[task->tCharIndex] == EOS)
{
- FadeInNewBGM(BGM_POKECEN, 6);
+ FadeInNewBGM(MUS_POKECEN, 6);
m4aMPlayFadeOutTemporarily(&gMPlay_SE2, 2);
EnableBothScriptContexts();
DestroyTask(taskId);
diff --git a/src/move_tutor_menu.c b/src/move_tutor_menu.c
index 7e1365391..0ecc82a72 100644
--- a/src/move_tutor_menu.c
+++ b/src/move_tutor_menu.c
@@ -602,13 +602,13 @@ static void MoveTutorMain(void)
PrintMainMoveTutorMenuText(gOtherText_ForgotOrDidNotLearnMove);
#endif
sMoveTutorMenu->state = 31;
- PlayFanfare(BGM_FANFA1);
+ PlayFanfare(MUS_FANFA1);
}
break;
case 31:
if (Menu_UpdateWindowText())
{
- PlayFanfare(BGM_FANFA1);
+ PlayFanfare(MUS_FANFA1);
sMoveTutorMenu->state = 32;
}
break;
diff --git a/src/new_game.c b/src/new_game.c
index f8a5524f5..683a22801 100644
--- a/src/new_game.c
+++ b/src/new_game.c
@@ -137,7 +137,7 @@ void debug_sub_8052E04()
void WarpToTruck(void)
{
Overworld_SetWarpDestination(MAP_GROUP(INSIDE_OF_TRUCK), MAP_NUM(INSIDE_OF_TRUCK), -1, -1, -1);
- warp_in();
+ WarpIntoMap();
}
void ClearSav2(void)
diff --git a/src/overworld.c b/src/overworld.c
index 47e23ad35..f6dea1271 100644
--- a/src/overworld.c
+++ b/src/overworld.c
@@ -50,17 +50,11 @@
#include "wild_encounter.h"
#ifdef SAPPHIRE
-#define LEGENDARY_MUSIC BGM_OOAME // Heavy Rain
+#define LEGENDARY_MUSIC MUS_OOAME // Heavy Rain
#else
-#define LEGENDARY_MUSIC BGM_HIDERI // Drought
+#define LEGENDARY_MUSIC MUS_HIDERI // Drought
#endif
-struct UnkTVStruct
-{
- u32 tv_field_0;
- u32 tv_field_4;
-};
-
extern u8 gUnknown_020297ED;
extern u16 gTotalCameraPixelOffsetY;
extern u16 gTotalCameraPixelOffsetX;
@@ -86,15 +80,15 @@ extern u8 TradeRoom_PromptToCancelLink[];
extern u8 TradeRoom_TerminateLink[];
extern u8 gUnknown_081A4508[];
-extern struct MapData * const gMapAttributes[];
+extern struct MapLayout * const gMapLayouts[];
extern struct MapHeader * const * const gMapGroups[];
extern s32 gMaxFlashLevel;
-EWRAM_DATA struct WarpData gUnknown_020297F0 = {0};
-EWRAM_DATA struct WarpData gWarpDestination = {0}; // new warp position
-EWRAM_DATA struct WarpData gUnknown_02029800 = {0};
-EWRAM_DATA struct WarpData gUnknown_02029808 = {0};
-EWRAM_DATA struct UnkPlayerStruct gUnknown_02029810 = {0};
+EWRAM_DATA struct WarpData gLastUsedWarp = {0};
+EWRAM_DATA struct WarpData gWarpDestination = {0};
+EWRAM_DATA struct WarpData gFixedDiveWarp = {0};
+EWRAM_DATA struct WarpData gFixedHoleWarp = {0};
+EWRAM_DATA struct InitialPlayerAvatarState gInitialPlayerAvatarState = {0};
EWRAM_DATA static u16 sAmbientCrySpecies = 0;
EWRAM_DATA static bool8 sIsAmbientCryWaterMon = FALSE;
EWRAM_DATA struct LinkPlayerEventObject gLinkPlayerEventObjects[4] = {0};
@@ -104,10 +98,16 @@ static u16 (*gUnknown_03000584)(u32);
static u8 gUnknown_03000588;
u16 word_3004858;
-void (*gFieldCallback)(void);
+extern void (*gFieldCallback)(void);
u8 gUnknown_03004860;
u8 gFieldLinkPlayerCount;
+static u8 GetAdjustedInitialTransitionFlags(struct InitialPlayerAvatarState*, u16, u8);
+static u8 GetAdjustedInitialDirection(struct InitialPlayerAvatarState*, u8, u16, u8);
+static bool32 sub_805483C(u8*);
+static void c2_80567AC(void);
+static void InitOverworldGraphicsRegisters(void);
+
static const struct WarpData sDummyWarpData =
{
.mapGroup = -1,
@@ -129,20 +129,20 @@ static const u8 sUnusedData[] =
0x2C, 0x00, 0x00, 0x00,
};
-const struct UCoords32 gUnknown_0821664C[] =
-{
- { 0, 0},
- { 0, 1},
- { 0, -1},
- {-1, 0},
- { 1, 0},
- {-1, 1},
- { 1, 1},
- {-1, -1},
- { 1, -1},
+const struct UCoords32 gDirectionToVectors[] =
+{
+ { 0, 0}, // DIR_NONE
+ { 0, 1}, // DIR_SOUTH
+ { 0, -1}, // DIR_NORTH
+ {-1, 0}, // DIR_WEST
+ { 1, 0}, // DIR_EAST
+ {-1, 1}, // DIR_SOUTHWEST
+ { 1, 1}, // DIR_SOUTHEAST
+ {-1, -1}, // DIR_NORTHWEST
+ { 1, -1}, // DIR_NORTHEAST
};
-const struct ScanlineEffectParams gUnknown_08216694 =
+static const struct ScanlineEffectParams sFlashEffectParams =
{
(void *)REG_ADDR_WIN0H,
((DMA_ENABLE | DMA_START_HBLANK | DMA_REPEAT | DMA_DEST_RELOAD) << 16) | 1,
@@ -197,12 +197,12 @@ static void DoWhiteOut(void)
ScrSpecial_HealPlayerParty();
Overworld_ResetStateAfterWhiteOut();
Overworld_SetWarpDestToLastHealLoc();
- warp_in();
+ WarpIntoMap();
}
void Overworld_ResetStateAfterFly(void)
{
- player_avatar_init_params_reset();
+ ResetInitialPlayerAvatarState();
FlagClear(FLAG_SYS_CYCLING_ROAD);
FlagClear(FLAG_SYS_CRUISE_MODE);
FlagClear(FLAG_SYS_SAFARI_MODE);
@@ -212,7 +212,7 @@ void Overworld_ResetStateAfterFly(void)
void Overworld_ResetStateAfterTeleport(void)
{
- player_avatar_init_params_reset();
+ ResetInitialPlayerAvatarState();
FlagClear(FLAG_SYS_CYCLING_ROAD);
FlagClear(FLAG_SYS_CRUISE_MODE);
FlagClear(FLAG_SYS_SAFARI_MODE);
@@ -223,7 +223,7 @@ void Overworld_ResetStateAfterTeleport(void)
void Overworld_ResetStateAfterDigEscRope(void)
{
- player_avatar_init_params_reset();
+ ResetInitialPlayerAvatarState();
FlagClear(FLAG_SYS_CYCLING_ROAD);
FlagClear(FLAG_SYS_CRUISE_MODE);
FlagClear(FLAG_SYS_SAFARI_MODE);
@@ -233,7 +233,7 @@ void Overworld_ResetStateAfterDigEscRope(void)
void Overworld_ResetStateAfterWhiteOut(void)
{
- player_avatar_init_params_reset();
+ ResetInitialPlayerAvatarState();
FlagClear(FLAG_SYS_CYCLING_ROAD);
FlagClear(FLAG_SYS_CRUISE_MODE);
FlagClear(FLAG_SYS_SAFARI_MODE);
@@ -241,7 +241,7 @@ void Overworld_ResetStateAfterWhiteOut(void)
FlagClear(FLAG_SYS_USE_FLASH);
}
-void sub_805308C(void)
+static void sub_805308C(void)
{
FlagClear(FLAG_SYS_SAFARI_MODE);
ChooseAmbientCrySpecies();
@@ -269,18 +269,18 @@ void IncrementGameStat(u8 index)
}
}
-u32 GetGameStat(u8 index)
+u32 GetGameStat(u8 stat)
{
- if (index >= NUM_GAME_STATS)
+ if (stat >= NUM_GAME_STATS)
return 0;
- return gSaveBlock1.gameStats[index];
+ return gSaveBlock1.gameStats[stat];
}
-void SetGameStat(u8 index, u32 value)
+void SetGameStat(u8 stat, u32 value)
{
- if (index < NUM_GAME_STATS)
- gSaveBlock1.gameStats[index] = value;
+ if (stat < NUM_GAME_STATS)
+ gSaveBlock1.gameStats[stat] = value;
}
void LoadEventObjTemplatesFromHeader(void)
@@ -336,26 +336,26 @@ void Overworld_SetEventObjTemplateMovementType(u8 localId, u8 movementType)
static void mapdata_load_assets_to_gpu_and_full_redraw(void)
{
move_tilemap_camera_to_upper_left_corner();
- copy_map_tileset1_tileset2_to_vram(gMapHeader.mapData);
- apply_map_tileset1_tileset2_palette(gMapHeader.mapData);
+ copy_map_tileset1_tileset2_to_vram(gMapHeader.mapLayout);
+ apply_map_tileset1_tileset2_palette(gMapHeader.mapLayout);
DrawWholeMapView();
cur_mapheader_run_tileset_funcs_after_some_cpuset();
}
-static struct MapData *get_mapdata_header(void)
+static struct MapLayout *GetMapLayout(void)
{
- u16 mapDataId = gSaveBlock1.mapDataId;
- if (mapDataId)
- return gMapAttributes[mapDataId - 1];
+ u16 mapLayoutId = gSaveBlock1.mapLayoutId;
+ if (mapLayoutId)
+ return gMapLayouts[mapLayoutId - 1];
return NULL;
}
static void ApplyCurrentWarp(void)
{
- gUnknown_020297F0 = gSaveBlock1.location;
+ gLastUsedWarp = gSaveBlock1.location;
gSaveBlock1.location = gWarpDestination;
- gUnknown_02029800 = sDummyWarpData;
- gUnknown_02029808 = sDummyWarpData;
+ gFixedDiveWarp = sDummyWarpData;
+ gFixedHoleWarp = sDummyWarpData;
}
static void SetWarpData(struct WarpData *warp, s8 mapGroup, s8 mapNum, s8 warpId, s8 x, s8 y)
@@ -367,7 +367,7 @@ static void SetWarpData(struct WarpData *warp, s8 mapGroup, s8 mapNum, s8 warpId
warp->y = y;
}
-static bool32 warp_data_is_not_neg_1(struct WarpData *warp)
+static bool32 IsDummyWarp(struct WarpData *warp)
{
if (warp->mapGroup != -1)
return FALSE;
@@ -387,25 +387,25 @@ struct MapHeader *const Overworld_GetMapHeaderByGroupAndId(u16 mapGroup, u16 map
return gMapGroups[mapGroup][mapNum];
}
-struct MapHeader *const warp1_get_mapheader(void)
+struct MapHeader *const GetDestinationWarpMapHeader(void)
{
return Overworld_GetMapHeaderByGroupAndId(gWarpDestination.mapGroup, gWarpDestination.mapNum);
}
-static void set_current_map_header_from_sav1_save_old_name(void)
+static void LoadCurrentMapData(void)
{
gMapHeader = *Overworld_GetMapHeaderByGroupAndId(gSaveBlock1.location.mapGroup, gSaveBlock1.location.mapNum);
- gSaveBlock1.mapDataId = gMapHeader.mapDataId;
- gMapHeader.mapData = get_mapdata_header();
+ gSaveBlock1.mapLayoutId = gMapHeader.mapLayoutId;
+ gMapHeader.mapLayout = GetMapLayout();
}
static void LoadSaveblockMapHeader(void)
{
gMapHeader = *Overworld_GetMapHeaderByGroupAndId(gSaveBlock1.location.mapGroup, gSaveBlock1.location.mapNum);
- gMapHeader.mapData = get_mapdata_header();
+ gMapHeader.mapLayout = GetMapLayout();
}
-void sub_80533CC(void)
+static void SetPlayerCoordsFromWarp(void)
{
if (gSaveBlock1.location.warpId >= 0 && gSaveBlock1.location.warpId < gMapHeader.events->warpCount)
{
@@ -419,16 +419,16 @@ void sub_80533CC(void)
}
else
{
- gSaveBlock1.pos.x = gMapHeader.mapData->width / 2;
- gSaveBlock1.pos.y = gMapHeader.mapData->height / 2;
+ gSaveBlock1.pos.x = gMapHeader.mapLayout->width / 2;
+ gSaveBlock1.pos.y = gMapHeader.mapLayout->height / 2;
}
}
-void warp_in(void)
+void WarpIntoMap(void)
{
ApplyCurrentWarp();
- set_current_map_header_from_sav1_save_old_name();
- sub_80533CC();
+ LoadCurrentMapData();
+ SetPlayerCoordsFromWarp();
}
void Overworld_SetWarpDestination(s8 mapGroup, s8 mapNum, s8 warpId, s8 x, s8 y)
@@ -495,31 +495,27 @@ void sub_8053678(void)
gWarpDestination = gSaveBlock1.warp4;
}
-void sub_8053690(s8 mapGroup, s8 mapNum, s8 warpId, s8 x, s8 y)
+void SetFixedDiveWarp(s8 mapGroup, s8 mapNum, s8 warpId, s8 x, s8 y)
{
- SetWarpData(&gUnknown_02029800, mapGroup, mapNum, warpId, x, y);
+ SetWarpData(&gFixedDiveWarp, mapGroup, mapNum, warpId, x, y);
}
-static void warp1_set_to_warp2(void)
+static void SetFixedDiveWarpAsDestination(void)
{
- gWarpDestination = gUnknown_02029800;
+ gWarpDestination = gFixedDiveWarp;
}
-void sub_80536E4(s8 mapGroup, s8 mapNum, s8 warpId, s8 x, s8 y)
+void SetFixedHoleWarp(s8 mapGroup, s8 mapNum, s8 warpId, s8 x, s8 y)
{
- SetWarpData(&gUnknown_02029808, mapGroup, mapNum, warpId, x, y);
+ SetWarpData(&gFixedHoleWarp, mapGroup, mapNum, warpId, x, y);
}
-void sub_8053720(s16 x, s16 y)
+void SetFixedHoleWarpAsDestination(s16 x, s16 y)
{
- if (warp_data_is_not_neg_1(&gUnknown_02029808) == TRUE)
- {
- gWarpDestination = gUnknown_020297F0;
- }
+ if (IsDummyWarp(&gFixedHoleWarp) == TRUE)
+ gWarpDestination = gLastUsedWarp;
else
- {
- Overworld_SetWarpDestination(gUnknown_02029808.mapGroup, gUnknown_02029808.mapNum, -1, x, y);
- }
+ Overworld_SetWarpDestination(gFixedHoleWarp.mapGroup, gFixedHoleWarp.mapNum, -1, x, y);
}
void sub_8053778(void)
@@ -563,7 +559,6 @@ struct MapConnection *GetMapConnection(u8 dir)
static bool8 SetDiveWarp(u8 direction, u16 x, u16 y)
{
struct MapConnection *connection = GetMapConnection(direction);
-
if (connection != NULL)
{
Overworld_SetWarpDestination(connection->mapGroup, connection->mapNum, -1, x, y);
@@ -571,10 +566,12 @@ static bool8 SetDiveWarp(u8 direction, u16 x, u16 y)
else
{
mapheader_run_script_with_tag_x6();
- if (warp_data_is_not_neg_1(&gUnknown_02029800))
+ if (IsDummyWarp(&gFixedDiveWarp))
return FALSE;
- warp1_set_to_warp2();
+
+ SetFixedDiveWarpAsDestination();
}
+
return TRUE;
}
@@ -595,7 +592,7 @@ void sub_80538F0(u8 mapGroup, u8 mapNum)
Overworld_SetWarpDestination(mapGroup, mapNum, -1, -1, -1);
sub_8053F0C();
ApplyCurrentWarp();
- set_current_map_header_from_sav1_save_old_name();
+ LoadCurrentMapData();
LoadEventObjTemplatesFromHeader();
ClearTempFieldEventData();
ResetCyclingRoadChallengeData();
@@ -608,8 +605,8 @@ void sub_80538F0(u8 mapGroup, u8 mapNum)
Overworld_ClearSavedMusic();
mapheader_run_script_with_tag_x3();
not_trainer_hill_battle_pyramid();
- sub_8056D38(gMapHeader.mapData);
- apply_map_tileset2_palette(gMapHeader.mapData);
+ sub_8056D38(gMapHeader.mapLayout);
+ apply_map_tileset2_palette(gMapHeader.mapLayout);
for (paletteIndex = 6; paletteIndex < 12; paletteIndex++)
ApplyWeatherGammaShiftToPal(paletteIndex);
@@ -628,7 +625,7 @@ void sub_8053994(u32 a1)
bool8 v2;
bool8 v3;
- set_current_map_header_from_sav1_save_old_name();
+ LoadCurrentMapData();
LoadEventObjTemplatesFromHeader();
v2 = is_map_type_1_2_3_5_or_6(gMapHeader.mapType);
v3 = Overworld_MapTypeIsIndoors(gMapHeader.mapType);
@@ -655,82 +652,82 @@ void sub_8053994(u32 a1)
}
}
-void player_avatar_init_params_reset(void)
+void ResetInitialPlayerAvatarState(void)
{
- gUnknown_02029810.player_field_1 = 1;
- gUnknown_02029810.player_field_0 = 1;
+ gInitialPlayerAvatarState.direction = DIR_SOUTH;
+ gInitialPlayerAvatarState.transitionFlags = PLAYER_AVATAR_FLAG_ON_FOOT;
}
-void walkrun_find_lowest_active_bit_in_bitfield(void)
+void StoreInitialPlayerAvatarState(void)
{
- gUnknown_02029810.player_field_1 = GetPlayerFacingDirection();
+ gInitialPlayerAvatarState.direction = GetPlayerFacingDirection();
if (TestPlayerAvatarFlags(PLAYER_AVATAR_FLAG_MACH_BIKE))
- gUnknown_02029810.player_field_0 = 2;
+ gInitialPlayerAvatarState.transitionFlags = PLAYER_AVATAR_FLAG_MACH_BIKE;
else if (TestPlayerAvatarFlags(PLAYER_AVATAR_FLAG_ACRO_BIKE))
- gUnknown_02029810.player_field_0 = 4;
+ gInitialPlayerAvatarState.transitionFlags = PLAYER_AVATAR_FLAG_ACRO_BIKE;
else if (TestPlayerAvatarFlags(PLAYER_AVATAR_FLAG_SURFING))
- gUnknown_02029810.player_field_0 = 8;
+ gInitialPlayerAvatarState.transitionFlags = PLAYER_AVATAR_FLAG_SURFING;
else if (TestPlayerAvatarFlags(PLAYER_AVATAR_FLAG_UNDERWATER))
- gUnknown_02029810.player_field_0 = 16;
+ gInitialPlayerAvatarState.transitionFlags = PLAYER_AVATAR_FLAG_UNDERWATER;
else
- gUnknown_02029810.player_field_0 = 1;
+ gInitialPlayerAvatarState.transitionFlags = PLAYER_AVATAR_FLAG_ON_FOOT;
}
-struct UnkPlayerStruct *sub_8053AA8(void)
+static struct InitialPlayerAvatarState *GetInitialPlayerAvatarState(void)
{
- struct UnkPlayerStruct playerStruct;
+ struct InitialPlayerAvatarState playerStruct;
u8 mapType = Overworld_GetMapTypeOfSaveblockLocation();
- u16 v2 = cur_mapdata_block_role_at_screen_center_acc_to_sav1();
- u8 v4 = sub_8053B00(&gUnknown_02029810, v2, mapType);
- playerStruct.player_field_0 = v4;
- playerStruct.player_field_1 = sub_8053B60(&gUnknown_02029810, v4, v2, mapType);
- gUnknown_02029810 = playerStruct;
- return &gUnknown_02029810;
-}
-
-u8 sub_8053B00(struct UnkPlayerStruct *playerStruct, u16 a2, u8 a3)
-{
- if (a3 != 8 && FlagGet(FLAG_SYS_CRUISE_MODE))
- return 1;
- if (a3 == 5)
- return 16;
- if (MetatileBehavior_IsSurfableWaterOrUnderwater(a2) == 1)
- return 8;
+ u16 metatileBehavior = GetCenterScreenMetatileBehavior();
+ u8 transitionFlags = GetAdjustedInitialTransitionFlags(&gInitialPlayerAvatarState, metatileBehavior, mapType);
+ playerStruct.transitionFlags = transitionFlags;
+ playerStruct.direction = GetAdjustedInitialDirection(&gInitialPlayerAvatarState, transitionFlags, metatileBehavior, mapType);
+ gInitialPlayerAvatarState = playerStruct;
+ return &gInitialPlayerAvatarState;
+}
+
+static u8 GetAdjustedInitialTransitionFlags(struct InitialPlayerAvatarState *playerStruct, u16 metatileBehavior, u8 mapType)
+{
+ if (mapType != MAP_TYPE_INDOOR && FlagGet(FLAG_SYS_CRUISE_MODE))
+ return PLAYER_AVATAR_FLAG_ON_FOOT;
+ if (mapType == MAP_TYPE_UNDERWATER)
+ return PLAYER_AVATAR_FLAG_UNDERWATER;
+ if (MetatileBehavior_IsSurfableWaterOrUnderwater(metatileBehavior) == TRUE)
+ return PLAYER_AVATAR_FLAG_SURFING;
if (Overworld_IsBikingAllowed() != TRUE)
- return 1;
- if (playerStruct->player_field_0 == 2)
- return 2;
- if (playerStruct->player_field_0 != 4)
- return 1;
- return 4;
-}
-
-u8 sub_8053B60(struct UnkPlayerStruct *playerStruct, u8 a2, u16 a3, u8 a4)
-{
- if (FlagGet(FLAG_SYS_CRUISE_MODE) && a4 == 6)
- return 4;
- if (MetatileBehavior_IsDeepSouthWarp(a3) == TRUE)
- return 2;
- if (MetatileBehavior_IsNonAnimDoor(a3) == TRUE || MetatileBehavior_IsDoor(a3) == TRUE)
- return 1;
- if (MetatileBehavior_IsSouthArrowWarp(a3) == TRUE)
- return 2;
- if (MetatileBehavior_IsNorthArrowWarp(a3) == TRUE)
- return 1;
- if (MetatileBehavior_IsWestArrowWarp(a3) == TRUE)
- return 4;
- if (MetatileBehavior_IsEastArrowWarp(a3) == TRUE)
- return 3;
- if ((playerStruct->player_field_0 == 16 && a2 == 8)
- || (playerStruct->player_field_0 == 8 && a2 == 16))
- return playerStruct->player_field_1;
- if (MetatileBehavior_IsLadder(a3) == TRUE)
- return playerStruct->player_field_1;
- return 1;
-}
-
-u16 cur_mapdata_block_role_at_screen_center_acc_to_sav1(void)
+ return PLAYER_AVATAR_FLAG_ON_FOOT;
+ if (playerStruct->transitionFlags == PLAYER_AVATAR_FLAG_MACH_BIKE)
+ return PLAYER_AVATAR_FLAG_MACH_BIKE;
+ if (playerStruct->transitionFlags != PLAYER_AVATAR_FLAG_ACRO_BIKE)
+ return PLAYER_AVATAR_FLAG_ON_FOOT;
+ return PLAYER_AVATAR_FLAG_ACRO_BIKE;
+}
+
+static u8 GetAdjustedInitialDirection(struct InitialPlayerAvatarState *playerStruct, u8 transitionFlags, u16 metatileBehavior, u8 mapType)
+{
+ if (FlagGet(FLAG_SYS_CRUISE_MODE) && mapType == MAP_TYPE_6)
+ return DIR_EAST;
+ if (MetatileBehavior_IsDeepSouthWarp(metatileBehavior) == TRUE)
+ return DIR_NORTH;
+ if (MetatileBehavior_IsNonAnimDoor(metatileBehavior) == TRUE || MetatileBehavior_IsDoor(metatileBehavior) == TRUE)
+ return DIR_SOUTH;
+ if (MetatileBehavior_IsSouthArrowWarp(metatileBehavior) == TRUE)
+ return DIR_NORTH;
+ if (MetatileBehavior_IsNorthArrowWarp(metatileBehavior) == TRUE)
+ return DIR_SOUTH;
+ if (MetatileBehavior_IsWestArrowWarp(metatileBehavior) == TRUE)
+ return DIR_EAST;
+ if (MetatileBehavior_IsEastArrowWarp(metatileBehavior) == TRUE)
+ return DIR_WEST;
+ if ((playerStruct->transitionFlags == PLAYER_AVATAR_FLAG_UNDERWATER && transitionFlags == PLAYER_AVATAR_FLAG_SURFING)
+ || (playerStruct->transitionFlags == PLAYER_AVATAR_FLAG_SURFING && transitionFlags == PLAYER_AVATAR_FLAG_UNDERWATER))
+ return playerStruct->direction;
+ if (MetatileBehavior_IsLadder(metatileBehavior) == TRUE)
+ return playerStruct->direction;
+ return DIR_SOUTH;
+}
+
+u16 GetCenterScreenMetatileBehavior(void)
{
return MapGridGetMetatileBehaviorAt(gSaveBlock1.pos.x + 7, gSaveBlock1.pos.y + 7);
}
@@ -784,10 +781,10 @@ u8 Overworld_GetFlashLevel(void)
return gSaveBlock1.flashLevel;
}
-void sub_8053D14(u16 mapDataId)
+void sub_8053D14(u16 mapLayoutId)
{
- gSaveBlock1.mapDataId = mapDataId;
- gMapHeader.mapData = get_mapdata_header();
+ gSaveBlock1.mapLayoutId = mapLayoutId;
+ gMapHeader.mapLayout = GetMapLayout();
}
static bool16 ShouldLegendaryMusicPlayAtLocation(struct WarpData *warp)
@@ -831,7 +828,7 @@ static u16 GetLocationMusic(struct WarpData *warp)
if (ShouldLegendaryMusicPlayAtLocation(warp) == TRUE)
return LEGENDARY_MUSIC;
else if (IsInfiltratedWeatherInstitute(warp) == TRUE)
- return BGM_TOZAN;
+ return MUS_TOZAN;
else
return Overworld_GetMapHeaderByGroupAndId(warp->mapGroup, warp->mapNum)->music;
}
@@ -844,7 +841,7 @@ u16 GetCurrLocationDefaultMusic(void)
if (gSaveBlock1.location.mapGroup == MAP_GROUP(ROUTE111)
&& gSaveBlock1.location.mapNum == MAP_NUM(ROUTE111)
&& GetSav1Weather() == 8)
- return BGM_ASHROAD;
+ return MUS_ASHROAD;
music = GetLocationMusic(&gSaveBlock1.location);
if (music != 0x7FFF)
@@ -854,9 +851,9 @@ u16 GetCurrLocationDefaultMusic(void)
else
{
if (gSaveBlock1.pos.x < 24)
- return BGM_DOORO_X1;
+ return MUS_DOORO_X1;
else
- return BGM_GRANROAD;
+ return MUS_GRANROAD;
}
}
@@ -871,9 +868,9 @@ u16 GetWarpDestinationMusic(void)
{
if (gSaveBlock1.location.mapGroup == MAP_GROUP(MAUVILLE_CITY)
&& gSaveBlock1.location.mapNum == MAP_NUM(MAUVILLE_CITY))
- return BGM_DOORO_X1;
+ return MUS_DOORO_X1;
else
- return BGM_GRANROAD;
+ return MUS_GRANROAD;
}
}
@@ -891,9 +888,9 @@ void Overworld_PlaySpecialMapMusic(void)
if (gSaveBlock1.savedMusic)
music = gSaveBlock1.savedMusic;
else if (Overworld_GetMapTypeOfSaveblockLocation() == MAP_TYPE_UNDERWATER)
- music = BGM_DEEPDEEP;
+ music = MUS_DEEPDEEP;
else if (TestPlayerAvatarFlags(PLAYER_AVATAR_FLAG_SURFING))
- music = BGM_NAMINORI;
+ music = MUS_NAMINORI;
}
if (music != GetCurrentMapMusic())
@@ -918,10 +915,10 @@ void sub_8053F0C(void)
u16 currentMusic = GetCurrentMapMusic();
if (newMusic != LEGENDARY_MUSIC)
{
- if (currentMusic == BGM_DEEPDEEP || currentMusic == BGM_NAMINORI)
+ if (currentMusic == MUS_DEEPDEEP || currentMusic == MUS_NAMINORI)
return;
if (TestPlayerAvatarFlags(PLAYER_AVATAR_FLAG_SURFING))
- newMusic = BGM_NAMINORI;
+ newMusic = MUS_NAMINORI;
}
if (newMusic != currentMusic)
{
@@ -949,14 +946,14 @@ void Overworld_ChangeMusicTo(u16 newMusic)
u8 GetMapMusicFadeoutSpeed(void)
{
- struct MapHeader *mapHeader = warp1_get_mapheader();
+ struct MapHeader *mapHeader = GetDestinationWarpMapHeader();
if (Overworld_MapTypeIsIndoors(mapHeader->mapType) == TRUE)
return 2;
else
return 4;
}
-void sub_8053FF8(void)
+void TryFadeOutOldMapMusic(void)
{
u16 music = GetWarpDestinationMusic();
if (FlagGet(FLAG_SPECIAL_FLAG_1) != TRUE && music != GetCurrentMapMusic())
@@ -966,7 +963,7 @@ void sub_8053FF8(void)
}
}
-bool8 sub_8054034(void)
+bool8 BGMusicStopped(void)
{
return IsNotWaitingForBGMStop();
}
@@ -1054,9 +1051,9 @@ u8 Overworld_GetMapTypeOfSaveblockLocation(void)
return GetMapTypeByWarpData(&gSaveBlock1.location);
}
-u8 get_map_type_from_warp0(void)
+u8 GetLastUsedWarpMapType(void)
{
- return GetMapTypeByWarpData(&gUnknown_020297F0);
+ return GetMapTypeByWarpData(&gLastUsedWarp);
}
bool8 is_map_type_1_2_3_5_or_6(u8 mapType)
@@ -1246,7 +1243,7 @@ void sub_80543DC(u16 (*a1)(u32))
gUnknown_03000584 = a1;
}
-void sub_80543E8(void)
+static void RunFieldCallback(void)
{
if (gFieldCallback != NULL)
gFieldCallback();
@@ -1261,7 +1258,7 @@ void CB2_NewGame(void)
StopMapMusic();
ResetSafariZoneFlag_();
NewGameInitData();
- player_avatar_init_params_reset();
+ ResetInitialPlayerAvatarState();
PlayTimeCounter_Start();
ScriptContext1_Init();
ScriptContext2_Disable();
@@ -1274,14 +1271,12 @@ void CB2_NewGame(void)
#if DEBUG
-extern void (*gFieldCallback)(void);
-
void debug_sub_8058C00(void)
{
FieldClearVBlankHBlankCallbacks();
StopMapMusic();
ResetSafariZoneFlag_();
- player_avatar_init_params_reset();
+ ResetInitialPlayerAvatarState();
PlayTimeCounter_Start();
ScriptContext1_Init();
ScriptContext2_Disable();
@@ -1309,7 +1304,7 @@ void CB2_WhiteOut(void)
StopMapMusic();
ResetSafariZoneFlag_();
DoWhiteOut();
- player_avatar_init_params_reset();
+ ResetInitialPlayerAvatarState();
ScriptContext1_Init();
ScriptContext2_Disable();
gFieldCallback = sub_8080B60;
@@ -1363,7 +1358,7 @@ void sub_8054588(void)
SetMainCallback2(c2_80567AC);
}
-void c2_80567AC(void)
+static void c2_80567AC(void)
{
if (sub_805483C(&gMain.state))
{
@@ -1472,7 +1467,7 @@ void CB2_ContinueSavedGame(void)
{
ClearSecretBase2Field_9();
sub_8053778();
- warp_in();
+ WarpIntoMap();
SetMainCallback2(CB2_LoadMap);
}
else
@@ -1509,19 +1504,19 @@ void VBlankCB_Field(void)
sub_8072E74();
}
-void sub_8054814(void)
+static void InitCurrentFlashLevelScanlineEffect(void)
{
- u8 val = Overworld_GetFlashLevel();
- if (val)
+ u8 flashLevel = Overworld_GetFlashLevel();
+ if (flashLevel)
{
- sub_80815E0(val);
- ScanlineEffect_SetParams(gUnknown_08216694);
+ WriteFlashScanlineEffectBuffer(flashLevel);
+ ScanlineEffect_SetParams(sFlashEffectParams);
}
}
-bool32 sub_805483C(u8 *a1)
+static bool32 sub_805483C(u8 *state)
{
- switch (*a1)
+ switch (*state)
{
case 0:
FieldClearVBlankHBlankCallbacks();
@@ -1529,60 +1524,60 @@ bool32 sub_805483C(u8 *a1)
ScriptContext2_Disable();
sub_8054F70();
sub_8054BA8();
- (*a1)++;
+ (*state)++;
break;
case 1:
sub_8053994(1);
- (*a1)++;
+ (*state)++;
break;
case 2:
sub_8054D4C(1);
- (*a1)++;
+ (*state)++;
break;
case 3:
sub_8054E98();
sub_8054D90();
sub_8054EC8();
sub_8054E60();
- (*a1)++;
+ (*state)++;
break;
case 4:
- sub_8054814();
- sub_8054C54();
+ InitCurrentFlashLevelScanlineEffect();
+ InitOverworldGraphicsRegisters();
Text_LoadWindowTemplate(&gWindowTemplate_81E6C3C);
InitMenuWindow(&gMenuTextWindowTemplate);
- (*a1)++;
+ (*state)++;
break;
case 5:
move_tilemap_camera_to_upper_left_corner();
- (*a1)++;
+ (*state)++;
break;
case 6:
- sub_8056D28(gMapHeader.mapData);
- (*a1)++;
+ sub_8056D28(gMapHeader.mapLayout);
+ (*state)++;
break;
case 7:
- sub_8056D38(gMapHeader.mapData);
- (*a1)++;
+ sub_8056D38(gMapHeader.mapLayout);
+ (*state)++;
break;
case 8:
- apply_map_tileset1_tileset2_palette(gMapHeader.mapData);
- (*a1)++;
+ apply_map_tileset1_tileset2_palette(gMapHeader.mapLayout);
+ (*state)++;
break;
case 9:
DrawWholeMapView();
- (*a1)++;
+ (*state)++;
break;
case 10:
cur_mapheader_run_tileset_funcs_after_some_cpuset();
- (*a1)++;
+ (*state)++;
break;
case 12:
- sub_80543E8();
- (*a1)++;
+ RunFieldCallback();
+ (*state)++;
break;
case 11:
- (*a1)++;
+ (*state)++;
break;
case 13:
return 1;
@@ -1590,67 +1585,67 @@ bool32 sub_805483C(u8 *a1)
return 0;
}
-bool32 sub_805493C(u8 *a1, u32 a2)
+bool32 sub_805493C(u8 *state, u32 a2)
{
- switch (*a1)
+ switch (*state)
{
case 0:
FieldClearVBlankHBlankCallbacks();
sub_8053994(a2);
- (*a1)++;
+ (*state)++;
break;
case 1:
sub_8054BA8();
- (*a1)++;
+ (*state)++;
break;
case 2:
sub_8054D4C(a2);
- (*a1)++;
+ (*state)++;
break;
case 3:
mli4_mapscripts_and_other();
sub_8054E34();
- (*a1)++;
+ (*state)++;
break;
case 4:
- sub_8054814();
- sub_8054C54();
+ InitCurrentFlashLevelScanlineEffect();
+ InitOverworldGraphicsRegisters();
Text_LoadWindowTemplate(&gWindowTemplate_81E6C3C);
InitMenuWindow(&gMenuTextWindowTemplate);
- (*a1)++;
+ (*state)++;
break;
case 5:
move_tilemap_camera_to_upper_left_corner();
- (*a1)++;
+ (*state)++;
break;
case 6:
- sub_8056D28(gMapHeader.mapData);
- (*a1)++;
+ sub_8056D28(gMapHeader.mapLayout);
+ (*state)++;
break;
case 7:
- sub_8056D38(gMapHeader.mapData);
- (*a1)++;
+ sub_8056D38(gMapHeader.mapLayout);
+ (*state)++;
break;
case 8:
- apply_map_tileset1_tileset2_palette(gMapHeader.mapData);
- (*a1)++;
+ apply_map_tileset1_tileset2_palette(gMapHeader.mapLayout);
+ (*state)++;
break;
case 9:
DrawWholeMapView();
- (*a1)++;
+ (*state)++;
break;
case 10:
cur_mapheader_run_tileset_funcs_after_some_cpuset();
- (*a1)++;
+ (*state)++;
break;
case 11:
if (gMapHeader.flags == 1 && sub_80BBB24() == 1)
ShowMapNamePopup();
- (*a1)++;
+ (*state)++;
break;
case 12:
- sub_80543E8();
- (*a1)++;
+ RunFieldCallback();
+ (*state)++;
break;
case 13:
return 1;
@@ -1658,24 +1653,24 @@ bool32 sub_805493C(u8 *a1, u32 a2)
return 0;
}
-bool32 sub_8054A4C(u8 *a1)
+bool32 sub_8054A4C(u8 *state)
{
- switch (*a1)
+ switch (*state)
{
case 0:
sub_8054BA8();
sub_8054D4C(0);
sub_8054E20();
sub_8054E34();
- (*a1)++;
+ (*state)++;
break;
case 1:
sub_8054C2C();
- (*a1)++;
+ (*state)++;
break;
case 2:
- sub_80543E8();
- (*a1)++;
+ RunFieldCallback();
+ (*state)++;
break;
case 3:
return 1;
@@ -1683,67 +1678,67 @@ bool32 sub_8054A4C(u8 *a1)
return 0;
}
-bool32 sub_8054A9C(u8 *a1)
+bool32 sub_8054A9C(u8 *state)
{
- switch (*a1)
+ switch (*state)
{
case 0:
FieldClearVBlankHBlankCallbacks();
sub_8054BA8();
- (*a1)++;
+ (*state)++;
break;
case 1:
sub_8054D4C(1);
- (*a1)++;
+ (*state)++;
break;
case 2:
sub_8054F48();
sub_8054E20();
sub_8054E7C();
- (*a1)++;
+ (*state)++;
break;
case 3:
- sub_8054814();
- sub_8054C54();
+ InitCurrentFlashLevelScanlineEffect();
+ InitOverworldGraphicsRegisters();
Text_LoadWindowTemplate(&gWindowTemplate_81E6C3C);
InitMenuWindow(&gMenuTextWindowTemplate);
- (*a1)++;
+ (*state)++;
break;
case 4:
move_tilemap_camera_to_upper_left_corner();
- (*a1)++;
+ (*state)++;
break;
case 5:
- sub_8056D28(gMapHeader.mapData);
- (*a1)++;
+ sub_8056D28(gMapHeader.mapLayout);
+ (*state)++;
break;
case 6:
- sub_8056D38(gMapHeader.mapData);
- (*a1)++;
+ sub_8056D38(gMapHeader.mapLayout);
+ (*state)++;
break;
case 7:
- apply_map_tileset1_tileset2_palette(gMapHeader.mapData);
- (*a1)++;
+ apply_map_tileset1_tileset2_palette(gMapHeader.mapLayout);
+ (*state)++;
break;
case 8:
DrawWholeMapView();
- (*a1)++;
+ (*state)++;
break;
case 9:
cur_mapheader_run_tileset_funcs_after_some_cpuset();
- (*a1)++;
+ (*state)++;
break;
case 12:
- sub_80543E8();
- (*a1)++;
+ RunFieldCallback();
+ (*state)++;
break;
case 10:
case 11:
- (*a1)++;
+ (*state)++;
break;
case 13:
SetFieldVBlankCallback();
- (*a1)++;
+ (*state)++;
return 1;
}
return 0;
@@ -1769,14 +1764,14 @@ void sub_8054BA8(void)
void sub_8054C2C(void)
{
- sub_8054814();
- sub_8054C54();
+ InitCurrentFlashLevelScanlineEffect();
+ InitOverworldGraphicsRegisters();
Text_LoadWindowTemplate(&gWindowTemplate_81E6C3C);
InitMenuWindow(&gMenuTextWindowTemplate);
mapdata_load_assets_to_gpu_and_full_redraw();
}
-void sub_8054C54(void)
+static void InitOverworldGraphicsRegisters(void)
{
REG_MOSAIC = 0;
REG_WININ = 7967;
@@ -1810,7 +1805,7 @@ void sub_8054D4C(u32 a1)
ScanlineEffect_Clear();
ResetCameraUpdateInfo();
InstallCameraPanAheadCallback();
- sub_805C7C4(0);
+ InitEventObjectPalettes(0);
FieldEffectActiveListClear();
InitFieldMessageBox();
StartWeather();
@@ -1824,7 +1819,7 @@ void sub_8054D90(void)
{
gTotalCameraPixelOffsetX = 0;
gTotalCameraPixelOffsetY = 0;
- sub_805AA98();
+ ResetEventObjects();
TrySpawnEventObjects(0, 0);
mapheader_run_first_tag4_script_list_match();
}
@@ -1832,15 +1827,15 @@ void sub_8054D90(void)
void mli4_mapscripts_and_other(void)
{
s16 x, y;
- struct UnkPlayerStruct *player;
+ struct InitialPlayerAvatarState *initialPlayerAvatarState;
gTotalCameraPixelOffsetX = 0;
gTotalCameraPixelOffsetY = 0;
- sub_805AA98();
+ ResetEventObjects();
sav1_camera_get_focus_coords(&x, &y);
- player = sub_8053AA8();
- InitPlayerAvatar(x, y, player->player_field_1, gSaveBlock2.playerGender);
- SetPlayerAvatarTransitionFlags(player->player_field_0);
- player_avatar_init_params_reset();
+ initialPlayerAvatarState = GetInitialPlayerAvatarState();
+ InitPlayerAvatar(x, y, initialPlayerAvatarState->direction, gSaveBlock2.playerGender);
+ SetPlayerAvatarTransitionFlags(initialPlayerAvatarState->transitionFlags);
+ ResetInitialPlayerAvatarState();
TrySpawnEventObjects(0, 0);
ResetBerryTreeSparkleFlags();
mapheader_run_first_tag4_script_list_match();
@@ -2327,8 +2322,8 @@ u8 *sub_805568C(struct UnkStruct_8054FF8 *a1)
return 0;
unkStruct = a1->sub;
- unkStruct.x += gUnknown_0821664C[a1->d].x;
- unkStruct.y += gUnknown_0821664C[a1->d].y;
+ unkStruct.x += gDirectionToVectors[a1->d].x;
+ unkStruct.y += gDirectionToVectors[a1->d].y;
unkStruct.height = 0;
linkPlayerId = GetLinkPlayerIdAt(unkStruct.x, unkStruct.y);
diff --git a/src/party_menu.c b/src/party_menu.c
index a39300825..52c637879 100644
--- a/src/party_menu.c
+++ b/src/party_menu.c
@@ -3975,7 +3975,7 @@ void Task_TeamMonTMMove3(u8 taskId)
{
if (gUnknown_0202E8F6 == 0)
{
- PlayFanfare(BGM_FANFA1);
+ PlayFanfare(MUS_FANFA1);
gTasks[taskId].func = Task_TeamMonTMMove4;
}
}
@@ -4456,7 +4456,7 @@ bool8 IsBlueYellowRedFlute(u16 item)
return FALSE;
}
-void sub_8070048(u8 taskId, u16 item, TaskFunc func)
+void DoSacredAshItemEffect(u8 taskId, u16 item, TaskFunc func)
{
ewram1C000.unk10 = func;
ewram1C000.unk4 = taskId;
@@ -4473,7 +4473,7 @@ void sub_8070088(u8 taskId)
u8 taskId2;
gTasks[taskId].func = TaskDummy;
- if (GetMonData(&gPlayerParty[ewram1C000.primarySelectedMonIndex], MON_DATA_SPECIES) == 0)
+ if (GetMonData(&gPlayerParty[ewram1C000.primarySelectedMonIndex], MON_DATA_SPECIES) == SPECIES_NONE)
{
gTasks[taskId].func = sub_80701DC;
}
diff --git a/src/player_pc.c b/src/player_pc.c
index e52666a50..ce3dda3c7 100644
--- a/src/player_pc.c
+++ b/src/player_pc.c
@@ -37,7 +37,7 @@ static EWRAM_DATA const u8 *gPcItemMenuOptionOrder = NULL;
static u8 gPcItemMenuOptionsNum;
-extern u8 gUnknown_02038561;
+extern u8 gPokemonItemUseType;
// event scripts
extern u8 gBrendanHouse_TurnPCOff[];
@@ -1290,7 +1290,7 @@ static void Mailbox_DoGiveMailPokeMenu(u8 taskId) // Mailbox_DoGiveMailPokeMenu
if(!gPaletteFade.active)
{
SetMainCallback2(sub_808B020);
- gUnknown_02038561 = 3;
+ gPokemonItemUseType = ITEM_USE_GIVE_MAIL;
DestroyTask(taskId);
}
}
diff --git a/src/pokemon_3.c b/src/pokemon_3.c
index c6eda8bca..30e9503cd 100644
--- a/src/pokemon_3.c
+++ b/src/pokemon_3.c
@@ -1108,48 +1108,48 @@ void ClearBattleMonForms(void)
gBattleMonForms[i] = 0;
}
-u16 GetBGM_ForBattle(void)
+u16 GetMUS_ForBattle(void)
{
if (gBattleTypeFlags & BATTLE_TYPE_KYOGRE_GROUDON)
- return BGM_BATTLE34;
+ return MUS_BATTLE34;
if (gBattleTypeFlags & BATTLE_TYPE_REGI)
- return BGM_BATTLE36;
+ return MUS_BATTLE36;
if (gBattleTypeFlags & BATTLE_TYPE_LINK)
- return BGM_BATTLE20;
+ return MUS_BATTLE20;
if (gBattleTypeFlags & BATTLE_TYPE_TRAINER)
{
switch (gTrainers[gTrainerBattleOpponent].trainerClass)
{
case 2:
case 0x31:
- return BGM_BATTLE30;
+ return MUS_BATTLE30;
case 3:
case 4:
case 0x32:
case 0x33:
- return BGM_BATTLE31;
+ return MUS_BATTLE31;
case 0x19:
- return BGM_BATTLE32;
+ return MUS_BATTLE32;
case 0x20:
- return BGM_BATTLE33;
+ return MUS_BATTLE33;
case 0x2E:
if (!StringCompare(gTrainers[gTrainerBattleOpponent].trainerName, BattleText_Wally))
- return BGM_BATTLE20;
- return BGM_BATTLE35;
+ return MUS_BATTLE20;
+ return MUS_BATTLE35;
case 0x18:
- return BGM_BATTLE38;
+ return MUS_BATTLE38;
default:
- return BGM_BATTLE20;
+ return MUS_BATTLE20;
}
}
- return BGM_BATTLE27;
+ return MUS_BATTLE27;
}
void sub_80408BC(void)
{
ResetMapMusic();
m4aMPlayAllStop();
- PlayBGM(GetBGM_ForBattle());
+ PlayBGM(GetMUS_ForBattle());
}
void current_map_music_set__default_for_battle(u16 song)
@@ -1159,7 +1159,7 @@ void current_map_music_set__default_for_battle(u16 song)
if (song)
PlayNewMapMusic(song);
else
- PlayNewMapMusic(GetBGM_ForBattle());
+ PlayNewMapMusic(GetMUS_ForBattle());
}
const u8 *GetMonSpritePal(struct Pokemon *mon)
diff --git a/src/pokemon_menu.c b/src/pokemon_menu.c
index bafa32afa..23020383d 100644
--- a/src/pokemon_menu.c
+++ b/src/pokemon_menu.c
@@ -52,7 +52,7 @@ extern u8 gUnknown_020384F0;
extern u8 gUnknown_0202E8F4;
extern u8 gUnknown_0202E8F5;
extern u8 gUnknown_0202E8F6;
-extern u8 gUnknown_02038561;
+extern u8 gPokemonItemUseType;
extern u16 gUnknown_0202E8F8;
extern void (*gPokemonItemUseCallback)(u8 taskID, u16 itemID, TaskFunc func);
extern TaskFunc gUnknown_03005CF0;
@@ -975,7 +975,7 @@ static void sub_808AF80(void)
{
if (InitPartyMenu() == TRUE)
{
- if (gUnknown_02038561 == 0)
+ if (gPokemonItemUseType == ITEM_USE_SINGLE_MON)
{
switch (CheckIfItemIsTMHMOrEvolutionStone(gSpecialVar_ItemId))
{
@@ -1002,19 +1002,19 @@ static void sub_808AF80(void)
void sub_808B020(void)
{
gPaletteFade.bufferTransferDisabled = 1;
- switch (gUnknown_02038561)
+ switch (gPokemonItemUseType)
{
- case 0:
+ case ITEM_USE_SINGLE_MON:
if (CheckIfItemIsTMHMOrEvolutionStone(gSpecialVar_ItemId) == 1)
SetPartyMenuSettings(PARTY_MENU_TYPE_STANDARD, 0, sub_808B0C0, 20);
else
SetPartyMenuSettings(PARTY_MENU_TYPE_STANDARD, 0, sub_808B0C0, 3);
break;
- case 4:
+ case ITEM_USE_ALL_MONS:
SetPartyMenuSettings(PARTY_MENU_TYPE_STANDARD, 0, sub_808B1EC, 0xFF);
break;
- case 1:
- case 3:
+ case ITEM_USE_GIVE_ITEM:
+ case ITEM_USE_GIVE_MAIL:
SetPartyMenuSettings(PARTY_MENU_TYPE_STANDARD, 0, sub_808B0C0, 4);
break;
}
@@ -1034,14 +1034,14 @@ void sub_808B0C0(u8 taskID)
else
{
sub_806D5A4();
- if (gUnknown_02038561 == 0)
+ if (gPokemonItemUseType == ITEM_USE_SINGLE_MON)
gPokemonItemUseCallback(taskID, gSpecialVar_ItemId, sub_808B224);
- if (gUnknown_02038561 == 1)
+ if (gPokemonItemUseType == ITEM_USE_GIVE_ITEM)
{
PlaySE(SE_SELECT);
PartyMenuTryGiveMonHeldItem(taskID, gSpecialVar_ItemId, sub_808B2EC);
}
- if (gUnknown_02038561 == 3)
+ if (gPokemonItemUseType == ITEM_USE_GIVE_MAIL)
{
PlaySE(SE_SELECT);
PartyMenuTryGiveMonMail(taskID, sub_808B2B4);
@@ -1052,9 +1052,9 @@ void sub_808B0C0(u8 taskID)
gLastFieldPokeMenuOpened = sub_806CA38(taskID);
PlaySE(SE_SELECT);
BeginNormalPaletteFade(0xFFFFFFFF, 0, 0, 16, RGB(0, 0, 0));
- if (gUnknown_02038561 == 0 || gUnknown_02038561 == 1)
+ if (gPokemonItemUseType == ITEM_USE_SINGLE_MON || gPokemonItemUseType == ITEM_USE_GIVE_ITEM)
gTasks[taskID].func = sub_808B25C;
- if (gUnknown_02038561 == 3)
+ if (gPokemonItemUseType == ITEM_USE_GIVE_MAIL)
gTasks[taskID].func = sub_808B2B4;
break;
}
diff --git a/src/region_map.c b/src/region_map.c
index 81ecd7c1b..74062f435 100644
--- a/src/region_map.c
+++ b/src/region_map.c
@@ -628,8 +628,8 @@ static void InitializeCursorPosition(void)
case 5:
gRegionMap->mapSectionId = gMapHeader.regionMapSectionId;
gRegionMap->playerIsInCave = FALSE;
- mapWidth = gMapHeader.mapData->width;
- mapHeight = gMapHeader.mapData->height;
+ mapWidth = gMapHeader.mapLayout->width;
+ mapHeight = gMapHeader.mapLayout->height;
x = gSaveBlock1.pos.x;
y = gSaveBlock1.pos.y;
if (gRegionMap->mapSectionId == MAPSEC_UNDERWATER_128)
@@ -640,8 +640,8 @@ static void InitializeCursorPosition(void)
mapHeader = Overworld_GetMapHeaderByGroupAndId(gSaveBlock1.warp4.mapGroup, gSaveBlock1.warp4.mapNum);
gRegionMap->mapSectionId = mapHeader->regionMapSectionId;
gRegionMap->playerIsInCave = TRUE;
- mapWidth = mapHeader->mapData->width;
- mapHeight = mapHeader->mapData->height;
+ mapWidth = mapHeader->mapLayout->width;
+ mapHeight = mapHeader->mapLayout->height;
x = gSaveBlock1.warp4.x;
y = gSaveBlock1.warp4.y;
break;
@@ -649,8 +649,8 @@ static void InitializeCursorPosition(void)
mapHeader = Overworld_GetMapHeaderByGroupAndId(gSaveBlock1.warp2.mapGroup, gSaveBlock1.warp2.mapNum);
gRegionMap->mapSectionId = mapHeader->regionMapSectionId;
gRegionMap->playerIsInCave = TRUE;
- mapWidth = mapHeader->mapData->width;
- mapHeight = mapHeader->mapData->height;
+ mapWidth = mapHeader->mapLayout->width;
+ mapHeight = mapHeader->mapLayout->height;
x = gSaveBlock1.warp2.x;
y = gSaveBlock1.warp2.y;
break;
@@ -671,8 +671,8 @@ static void InitializeCursorPosition(void)
gRegionMap->mapSectionId = mapHeader->regionMapSectionId;
}
gRegionMap->playerIsInCave = FALSE;
- mapWidth = mapHeader->mapData->width;
- mapHeight = mapHeader->mapData->height;
+ mapWidth = mapHeader->mapLayout->width;
+ mapHeight = mapHeader->mapLayout->height;
x = r4->x;
y = r4->y;
}
@@ -758,14 +758,14 @@ static void sub_80FB600(void)
u16 r1;
gRegionMap->mapSectionId = mapHeader->regionMapSectionId;
- r1 = mapHeader->mapData->width / gRegionMapLocations[gRegionMap->mapSectionId].width;
+ r1 = mapHeader->mapLayout->width / gRegionMapLocations[gRegionMap->mapSectionId].width;
if (r1 == 0)
r1 = 1;
x = sp2 / r1;
if (x >= gRegionMapLocations[gRegionMap->mapSectionId].width)
x = gRegionMapLocations[gRegionMap->mapSectionId].width - 1;
- r1 = mapHeader->mapData->height / gRegionMapLocations[gRegionMap->mapSectionId].height;
+ r1 = mapHeader->mapLayout->height / gRegionMapLocations[gRegionMap->mapSectionId].height;
if (r1 == 0)
r1 = 1;
y = sp4 / r1;
diff --git a/src/rom_8077ABC.c b/src/rom_8077ABC.c
index 9c4cc2217..00ce3d8df 100644
--- a/src/rom_8077ABC.c
+++ b/src/rom_8077ABC.c
@@ -33,12 +33,6 @@
#define gTransformPersonalities gTransformedPersonalities
#define gBattleMonSprites gBankSpriteIds
-struct TransformStatus
-{
- u16 unknown;
- u16 species;
-};
-
struct Struct_gUnknown_0837F578
{
u8 field_0;
@@ -890,7 +884,7 @@ void sub_8078914(struct Struct_sub_8078914 *unk)
}
}
-void sub_8078954(struct Struct_sub_8078914 *unk)
+void sub_8078954(struct Struct_sub_8078914 *unk, u8 b)
{
if (IsContest())
{
diff --git a/src/roulette.c b/src/roulette.c
index ab60e089a..c8804a543 100644
--- a/src/roulette.c
+++ b/src/roulette.c
@@ -1055,13 +1055,13 @@ void sub_8116638(u8 taskid)
case 0x2:
if (gTasks[taskid].data[0x2] == 0xC)
{
- PlayFanfare(BGM_ME_B_BIG);
+ PlayFanfare(MUS_ME_B_BIG);
Menu_DrawStdWindowFrame(0x0, 0xE, 0x1D, 0x13);
Menu_PrintText(&gUnknown_081C41A5, 0x1, 0xF);
}
else
{
- PlayFanfare(BGM_ME_B_SMALL);
+ PlayFanfare(MUS_ME_B_SMALL);
Menu_DrawStdWindowFrame(0x0, 0xE, 0x1D, 0x13);
Menu_PrintText(&gUnknown_081C4199, 0x1, 0xF);
}
diff --git a/src/safari_zone.c b/src/safari_zone.c
index 7cc8e16a0..9272da902 100644
--- a/src/safari_zone.c
+++ b/src/safari_zone.c
@@ -102,7 +102,7 @@ void sub_80C824C(void)
else if (gBattleOutcome == 8)
{
ScriptContext2_RunNewScript(&gUnknown_081C340A);
- warp_in();
+ WarpIntoMap();
gFieldCallback = sub_8080E44;
SetMainCallback2(CB2_LoadMap);
}
diff --git a/src/scrcmd.c b/src/scrcmd.c
index ca49dc0df..d37e1180d 100644
--- a/src/scrcmd.c
+++ b/src/scrcmd.c
@@ -42,6 +42,7 @@
#include "sound.h"
#include "string_util.h"
#include "tv.h"
+#include "constants/maps.h"
typedef u16 (*SpecialFunc)(void);
typedef void (*NativeFunc)(void);
@@ -725,7 +726,7 @@ bool8 ScrCmd_warp(struct ScriptContext *ctx)
Overworld_SetWarpDestination(mapGroup, mapNum, warpId, x, y);
sub_8080E88();
- player_avatar_init_params_reset();
+ ResetInitialPlayerAvatarState();
return TRUE;
}
@@ -739,7 +740,7 @@ bool8 ScrCmd_warpsilent(struct ScriptContext *ctx)
Overworld_SetWarpDestination(mapGroup, mapNum, warpId, x, y);
sp13E_warp_to_last_warp();
- player_avatar_init_params_reset();
+ ResetInitialPlayerAvatarState();
return TRUE;
}
@@ -753,7 +754,7 @@ bool8 ScrCmd_warpdoor(struct ScriptContext *ctx)
Overworld_SetWarpDestination(mapGroup, mapNum, warpId, x, y);
sub_8080EF0();
- player_avatar_init_params_reset();
+ ResetInitialPlayerAvatarState();
return TRUE;
}
@@ -765,12 +766,12 @@ bool8 ScrCmd_warphole(struct ScriptContext *ctx)
u16 y;
PlayerGetDestCoords(&x, &y);
- if (mapGroup == 0xFF && mapNum == 0xFF)
- sub_8053720(x - 7, y - 7);
+ if (mapGroup == MAP_GROUP(UNDEFINED) && mapNum == MAP_NUM(UNDEFINED))
+ SetFixedHoleWarpAsDestination(x - 7, y - 7);
else
Overworld_SetWarpDestination(mapGroup, mapNum, -1, x - 7, y - 7);
sp13F_fall_to_last_warp();
- player_avatar_init_params_reset();
+ ResetInitialPlayerAvatarState();
return TRUE;
}
@@ -784,7 +785,7 @@ bool8 ScrCmd_warpteleport(struct ScriptContext *ctx)
Overworld_SetWarpDestination(mapGroup, mapNum, warpId, x, y);
sub_8080F68();
- player_avatar_init_params_reset();
+ ResetInitialPlayerAvatarState();
return TRUE;
}
@@ -820,7 +821,7 @@ bool8 ScrCmd_setdivewarp(struct ScriptContext *ctx)
u16 x = VarGet(ScriptReadHalfword(ctx));
u16 y = VarGet(ScriptReadHalfword(ctx));
- sub_8053690(mapGroup, mapNum, warpId, x, y);
+ SetFixedDiveWarp(mapGroup, mapNum, warpId, x, y);
return FALSE;
}
@@ -832,7 +833,7 @@ bool8 ScrCmd_setholewarp(struct ScriptContext *ctx)
u16 x = VarGet(ScriptReadHalfword(ctx));
u16 y = VarGet(ScriptReadHalfword(ctx));
- sub_80536E4(mapGroup, mapNum, warpId, x, y);
+ SetFixedHoleWarp(mapGroup, mapNum, warpId, x, y);
return FALSE;
}
diff --git a/src/secret_base.c b/src/secret_base.c
index 60ce80af5..5bec7a06d 100644
--- a/src/secret_base.c
+++ b/src/secret_base.c
@@ -110,7 +110,6 @@ const u8 gUnknown_083D13EC[] = {
0x23,0x24,0xF,0x1F,0x21,0x2F,0xE,0x14,0x20,0x22,0x0,0x0
};
-extern void *gUnknown_0300485C;
extern u8 gUnknown_081A2E14[];
extern u8 UnknownString_81A1BB2[];
extern u8 UnknownString_81A1F67[];
@@ -241,11 +240,11 @@ void sub_80BB764(s16 *arg1, s16 *arg2, u16 arg3)
{
s16 x, y;
- for (y=0; y<gMapHeader.mapData->height; y++)
+ for (y=0; y<gMapHeader.mapLayout->height; y++)
{
- for (x=0; x<gMapHeader.mapData->width; x++)
+ for (x=0; x<gMapHeader.mapLayout->width; x++)
{
- if ((gMapHeader.mapData->map[y * gMapHeader.mapData->width + x] & 0x3ff) == arg3)
+ if ((gMapHeader.mapLayout->map[y * gMapHeader.mapLayout->width + x] & 0x3ff) == arg3)
{
*arg1 = x;
*arg2 = y;
@@ -363,7 +362,7 @@ void sub_80BBA48(u8 taskid)
if (gSaveBlock1.secretBases[curbaseid].sbr_field_10 < 0xff)
gSaveBlock1.secretBases[curbaseid].sbr_field_10++;
sub_80BBA14();
- warp_in();
+ WarpIntoMap();
gFieldCallback = sub_8080990;
SetMainCallback2(CB2_LoadMap);
DestroyTask(taskid);
@@ -416,7 +415,7 @@ void sub_80BBBEC(u8 taskid)
{
idx = 4 * (gCurrentSecretBaseId / 10);
Overworld_SetWarpDestination(gSaveBlock1.location.mapGroup, gSaveBlock1.location.mapNum, -1, gUnknown_083D1374[idx + 2], gUnknown_083D1374[idx + 3]);
- warp_in();
+ WarpIntoMap();
gFieldCallback = sub_80BBB90;
SetMainCallback2(CB2_LoadMap);
DestroyTask(taskid);
@@ -578,7 +577,7 @@ void sub_80BC074(u8 taskid)
break;
case 2:
copy_saved_warp2_bank_and_enter_x_to_warp1(0x7E);
- warp_in();
+ WarpIntoMap();
gFieldCallback = mapldr_default;
SetMainCallback2(CB2_LoadMap);
ScriptContext2_Disable();
diff --git a/src/shop.c b/src/shop.c
index 88719e25e..8a5da1117 100644
--- a/src/shop.c
+++ b/src/shop.c
@@ -409,16 +409,16 @@ static void Shop_DrawViewportTiles(void)
s32 r3 = MapGridGetMetatileLayerTypeAt(facingX + x, facingY + y);
if (metatileId < 512)
- BuyMenuDrawMapMetatile(x, y, (u16 *)gMapHeader.mapData->primaryTileset->metatiles + metatileId * 8, r3);
+ BuyMenuDrawMapMetatile(x, y, (u16 *)gMapHeader.mapLayout->primaryTileset->metatiles + metatileId * 8, r3);
else
- BuyMenuDrawMapMetatile(x, y, (u16 *)gMapHeader.mapData->secondaryTileset->metatiles + (metatileId - 512) * 8, r3);
+ BuyMenuDrawMapMetatile(x, y, (u16 *)gMapHeader.mapLayout->secondaryTileset->metatiles + (metatileId - 512) * 8, r3);
}
else
{
if (metatileId < 512)
- BuyMenuDrawMapPartialMetatile(x, y, (u16 *)gMapHeader.mapData->primaryTileset->metatiles + metatileId * 8);
+ BuyMenuDrawMapPartialMetatile(x, y, (u16 *)gMapHeader.mapLayout->primaryTileset->metatiles + metatileId * 8);
else
- BuyMenuDrawMapPartialMetatile(x, y, (u16 *)gMapHeader.mapData->secondaryTileset->metatiles + (metatileId - 512) * 8);
+ BuyMenuDrawMapPartialMetatile(x, y, (u16 *)gMapHeader.mapLayout->secondaryTileset->metatiles + (metatileId - 512) * 8);
}
if (y == 0 && x != 0 && x != 6)
diff --git a/src/slot_machine.c b/src/slot_machine.c
index ccd7e4353..3de87e0f7 100644
--- a/src/slot_machine.c
+++ b/src/slot_machine.c
@@ -927,17 +927,17 @@ bool8 sub_81020C8(struct Task *task)
}
if (eSlotMachine->matchedSymbols & ((1 << SLOT_MACHINE_MATCHED_777_BLUE) | (1 << SLOT_MACHINE_MATCHED_777_RED)))
{
- PlayFanfare(BGM_ME_B_BIG);
+ PlayFanfare(MUS_ME_B_BIG);
sub_8104CAC(6);
}
else if (eSlotMachine->matchedSymbols & (1 << SLOT_MACHINE_MATCHED_777_MIXED))
{
- PlayFanfare(BGM_ME_B_BIG);
+ PlayFanfare(MUS_ME_B_BIG);
sub_8104CAC(5);
}
else
{
- PlayFanfare(BGM_ME_B_SMALL);
+ PlayFanfare(MUS_ME_B_SMALL);
sub_8104CAC(2);
}
if (eSlotMachine->matchedSymbols & ((1 << SLOT_MACHINE_MATCHED_777_MIXED) | (1 << SLOT_MACHINE_MATCHED_777_BLUE) | (1 << SLOT_MACHINE_MATCHED_777_RED)))
@@ -2682,7 +2682,7 @@ static void sub_810437C(struct Task *task)
sub_810545C();
sub_8102680();
StopMapMusic();
- PlayNewMapMusic(BGM_BD_TIME);
+ PlayNewMapMusic(MUS_BD_TIME);
}
static void sub_81043EC(struct Task *task)
@@ -2818,7 +2818,7 @@ static void sub_81046C0(struct Task *task)
{
task->data[4] = 0xa0;
StartSpriteAnimIfDifferent(gSprites + eSlotMachine->unk3F, 5);
- PlayFanfare(BGM_ME_ZANNEN);
+ PlayFanfare(MUS_ME_ZANNEN);
}
else
{
@@ -2830,7 +2830,7 @@ static void sub_81046C0(struct Task *task)
sub_8104098();
eSlotMachine->pikaPower = 0;
}
- PlayFanfare(BGM_ME_B_SMALL);
+ PlayFanfare(MUS_ME_B_SMALL);
}
}
}
@@ -2906,7 +2906,7 @@ static void sub_81048CC(struct Task *task)
task->data[4] = 4;
task->data[5] = 0;
StopMapMusic();
- PlayFanfare(BGM_ME_ZANNEN);
+ PlayFanfare(MUS_ME_ZANNEN);
PlaySE(SE_W153);
}
diff --git a/src/sound.c b/src/sound.c
index 159ad3f70..5b41acbc6 100644
--- a/src/sound.c
+++ b/src/sound.c
@@ -44,18 +44,18 @@ extern struct ToneData voicegroup_84549C0[];
static const struct Fanfare sFanfares[] =
{
- { BGM_FANFA1, 80 },
- { BGM_FANFA4, 160 },
- { BGM_FANFA5, 220 },
- { BGM_ME_WAZA, 220 },
- { BGM_ME_ASA, 160 },
- { BGM_ME_BACHI, 340 },
- { BGM_ME_WASURE, 180 },
- { BGM_ME_KINOMI, 120 },
- { BGM_ME_TAMA, 710 },
- { BGM_ME_B_BIG, 250 },
- { BGM_ME_B_SMALL, 150 },
- { BGM_ME_ZANNEN, 160 },
+ { MUS_FANFA1, 80 },
+ { MUS_FANFA4, 160 },
+ { MUS_FANFA5, 220 },
+ { MUS_ME_WAZA, 220 },
+ { MUS_ME_ASA, 160 },
+ { MUS_ME_BACHI, 340 },
+ { MUS_ME_WASURE, 180 },
+ { MUS_ME_KINOMI, 120 },
+ { MUS_ME_TAMA, 710 },
+ { MUS_ME_B_BIG, 250 },
+ { MUS_ME_B_SMALL, 150 },
+ { MUS_ME_ZANNEN, 160 },
};
static void Task_Fanfare(u8 taskId);
diff --git a/src/sprite.c b/src/sprite.c
index a9d84e01a..22b3a6d0f 100644
--- a/src/sprite.c
+++ b/src/sprite.c
@@ -72,7 +72,6 @@ static void JumpToTopOfAffineAnimLoop(u8 matrixNum, struct Sprite *sprite);
static void AffineAnimCmd_jump(u8 matrixNum, struct Sprite *sprite);
static void AffineAnimCmd_end(u8 matrixNum, struct Sprite *sprite);
static void AffineAnimCmd_frame(u8 matrixNum, struct Sprite *sprite);
-static void CopyOamMatrix(u8 destMatrixIndex, struct OamMatrix *srcMatrix);
static u8 GetSpriteMatrixNum(struct Sprite *sprite);
static void SetSpriteOamFlipBits(struct Sprite *sprite, u8 hFlip, u8 vFlip);
static void AffineAnimStateRestartAnim(u8 matrixNum);
diff --git a/src/tileset_anim.c b/src/tileset_anim.c
index abd38edad..37cc88bd3 100644
--- a/src/tileset_anim.c
+++ b/src/tileset_anim.c
@@ -60,158 +60,158 @@ static void sub_807399C(u16);
static void sub_8073974(u16);
static void sub_80739EC(u16);
-static const u8 TilesetAnimTiles_General_0_1[] = INCBIN_U8("data/tilesets/primary/general/anim/0/1.4bpp");
-static const u8 TilesetAnimTiles_General_0_0[] = INCBIN_U8("data/tilesets/primary/general/anim/0/0.4bpp");
-static const u8 TilesetAnimTiles_General_0_2[] = INCBIN_U8("data/tilesets/primary/general/anim/0/2.4bpp");
+static const u8 gTilesetAnims_General0_Frame1[] = INCBIN_U8("data/tilesets/primary/general/anim/0/1.4bpp");
+static const u8 gTilesetAnims_General0_Frame0[] = INCBIN_U8("data/tilesets/primary/general/anim/0/0.4bpp");
+static const u8 gTilesetAnims_General0_Frame2[] = INCBIN_U8("data/tilesets/primary/general/anim/0/2.4bpp");
asm(".space 32");
-static const u8 *const gTilesetAnimTable_General_0[] =
+static const u8 *const gTilesetAnims_General0[] =
{
- TilesetAnimTiles_General_0_0,
- TilesetAnimTiles_General_0_1,
- TilesetAnimTiles_General_0_0,
- TilesetAnimTiles_General_0_2,
+ gTilesetAnims_General0_Frame0,
+ gTilesetAnims_General0_Frame1,
+ gTilesetAnims_General0_Frame0,
+ gTilesetAnims_General0_Frame2,
};
-static const u8 TilesetAnimTiles_General_1_0[] = INCBIN_U8("data/tilesets/primary/general/anim/1/0.4bpp");
-static const u8 TilesetAnimTiles_General_1_1[] = INCBIN_U8("data/tilesets/primary/general/anim/1/1.4bpp");
-static const u8 TilesetAnimTiles_General_1_2[] = INCBIN_U8("data/tilesets/primary/general/anim/1/2.4bpp");
-static const u8 TilesetAnimTiles_General_1_3[] = INCBIN_U8("data/tilesets/primary/general/anim/1/3.4bpp");
-static const u8 TilesetAnimTiles_General_1_4[] = INCBIN_U8("data/tilesets/primary/general/anim/1/4.4bpp");
-static const u8 TilesetAnimTiles_General_1_5[] = INCBIN_U8("data/tilesets/primary/general/anim/1/5.4bpp");
-static const u8 TilesetAnimTiles_General_1_6[] = INCBIN_U8("data/tilesets/primary/general/anim/1/6.4bpp");
-static const u8 TilesetAnimTiles_General_1_7[] = INCBIN_U8("data/tilesets/primary/general/anim/1/7.4bpp");
-
-static const u8 *const gTilesetAnimTable_General_1[] =
-{
- TilesetAnimTiles_General_1_0,
- TilesetAnimTiles_General_1_1,
- TilesetAnimTiles_General_1_2,
- TilesetAnimTiles_General_1_3,
- TilesetAnimTiles_General_1_4,
- TilesetAnimTiles_General_1_5,
- TilesetAnimTiles_General_1_6,
- TilesetAnimTiles_General_1_7,
+static const u8 gTilesetAnims_General1_Frame0[] = INCBIN_U8("data/tilesets/primary/general/anim/1/0.4bpp");
+static const u8 gTilesetAnims_General1_Frame1[] = INCBIN_U8("data/tilesets/primary/general/anim/1/1.4bpp");
+static const u8 gTilesetAnims_General1_Frame2[] = INCBIN_U8("data/tilesets/primary/general/anim/1/2.4bpp");
+static const u8 gTilesetAnims_General1_Frame3[] = INCBIN_U8("data/tilesets/primary/general/anim/1/3.4bpp");
+static const u8 gTilesetAnims_General1_Frame4[] = INCBIN_U8("data/tilesets/primary/general/anim/1/4.4bpp");
+static const u8 gTilesetAnims_General1_Frame5[] = INCBIN_U8("data/tilesets/primary/general/anim/1/5.4bpp");
+static const u8 gTilesetAnims_General1_Frame6[] = INCBIN_U8("data/tilesets/primary/general/anim/1/6.4bpp");
+static const u8 gTilesetAnims_General1_Frame7[] = INCBIN_U8("data/tilesets/primary/general/anim/1/7.4bpp");
+
+static const u8 *const gTilesetAnims_General1[] =
+{
+ gTilesetAnims_General1_Frame0,
+ gTilesetAnims_General1_Frame1,
+ gTilesetAnims_General1_Frame2,
+ gTilesetAnims_General1_Frame3,
+ gTilesetAnims_General1_Frame4,
+ gTilesetAnims_General1_Frame5,
+ gTilesetAnims_General1_Frame6,
+ gTilesetAnims_General1_Frame7,
};
-static const u8 TilesetAnimTiles_General_2_0[] = INCBIN_U8("data/tilesets/primary/general/anim/2/0.4bpp");
-static const u8 TilesetAnimTiles_General_2_1[] = INCBIN_U8("data/tilesets/primary/general/anim/2/1.4bpp");
-static const u8 TilesetAnimTiles_General_2_2[] = INCBIN_U8("data/tilesets/primary/general/anim/2/2.4bpp");
-static const u8 TilesetAnimTiles_General_2_3[] = INCBIN_U8("data/tilesets/primary/general/anim/2/3.4bpp");
-static const u8 TilesetAnimTiles_General_2_4[] = INCBIN_U8("data/tilesets/primary/general/anim/2/4.4bpp");
-static const u8 TilesetAnimTiles_General_2_5[] = INCBIN_U8("data/tilesets/primary/general/anim/2/5.4bpp");
-static const u8 TilesetAnimTiles_General_2_6[] = INCBIN_U8("data/tilesets/primary/general/anim/2/6.4bpp");
-
-static const u8 *const gTilesetAnimTable_General_2[] =
-{
- TilesetAnimTiles_General_2_0,
- TilesetAnimTiles_General_2_1,
- TilesetAnimTiles_General_2_2,
- TilesetAnimTiles_General_2_3,
- TilesetAnimTiles_General_2_4,
- TilesetAnimTiles_General_2_5,
- TilesetAnimTiles_General_2_6,
- TilesetAnimTiles_General_2_0,
+static const u8 gTilesetAnims_General2_Frame0[] = INCBIN_U8("data/tilesets/primary/general/anim/2/0.4bpp");
+static const u8 gTilesetAnims_General2_Frame1[] = INCBIN_U8("data/tilesets/primary/general/anim/2/1.4bpp");
+static const u8 gTilesetAnims_General2_Frame2[] = INCBIN_U8("data/tilesets/primary/general/anim/2/2.4bpp");
+static const u8 gTilesetAnims_General2_Frame3[] = INCBIN_U8("data/tilesets/primary/general/anim/2/3.4bpp");
+static const u8 gTilesetAnims_General2_Frame4[] = INCBIN_U8("data/tilesets/primary/general/anim/2/4.4bpp");
+static const u8 gTilesetAnims_General2_Frame5[] = INCBIN_U8("data/tilesets/primary/general/anim/2/5.4bpp");
+static const u8 gTilesetAnims_General2_Frame6[] = INCBIN_U8("data/tilesets/primary/general/anim/2/6.4bpp");
+
+static const u8 *const gTilesetAnims_General2[] =
+{
+ gTilesetAnims_General2_Frame0,
+ gTilesetAnims_General2_Frame1,
+ gTilesetAnims_General2_Frame2,
+ gTilesetAnims_General2_Frame3,
+ gTilesetAnims_General2_Frame4,
+ gTilesetAnims_General2_Frame5,
+ gTilesetAnims_General2_Frame6,
+ gTilesetAnims_General2_Frame0,
};
-static const u8 TilesetAnimTiles_General_3_0[] = INCBIN_U8("data/tilesets/primary/general/anim/3/0.4bpp");
-static const u8 TilesetAnimTiles_General_3_1[] = INCBIN_U8("data/tilesets/primary/general/anim/3/1.4bpp");
-static const u8 TilesetAnimTiles_General_3_2[] = INCBIN_U8("data/tilesets/primary/general/anim/3/2.4bpp");
-static const u8 TilesetAnimTiles_General_3_3[] = INCBIN_U8("data/tilesets/primary/general/anim/3/3.4bpp");
+static const u8 gTilesetAnims_General3_Frame0[] = INCBIN_U8("data/tilesets/primary/general/anim/3/0.4bpp");
+static const u8 gTilesetAnims_General3_Frame1[] = INCBIN_U8("data/tilesets/primary/general/anim/3/1.4bpp");
+static const u8 gTilesetAnims_General3_Frame2[] = INCBIN_U8("data/tilesets/primary/general/anim/3/2.4bpp");
+static const u8 gTilesetAnims_General3_Frame3[] = INCBIN_U8("data/tilesets/primary/general/anim/3/3.4bpp");
-static const u8 *const gTilesetAnimTable_General_3[] =
+static const u8 *const gTilesetAnims_General3[] =
{
- TilesetAnimTiles_General_3_0,
- TilesetAnimTiles_General_3_1,
- TilesetAnimTiles_General_3_2,
- TilesetAnimTiles_General_3_3,
+ gTilesetAnims_General3_Frame0,
+ gTilesetAnims_General3_Frame1,
+ gTilesetAnims_General3_Frame2,
+ gTilesetAnims_General3_Frame3,
};
-static const u8 TilesetAnimTiles_General_4_0[] = INCBIN_U8("data/tilesets/primary/general/anim/4/0.4bpp");
-static const u8 TilesetAnimTiles_General_4_1[] = INCBIN_U8("data/tilesets/primary/general/anim/4/1.4bpp");
-static const u8 TilesetAnimTiles_General_4_2[] = INCBIN_U8("data/tilesets/primary/general/anim/4/2.4bpp");
-static const u8 TilesetAnimTiles_General_4_3[] = INCBIN_U8("data/tilesets/primary/general/anim/4/3.4bpp");
+static const u8 gTilesetAnims_General4_Frame0[] = INCBIN_U8("data/tilesets/primary/general/anim/4/0.4bpp");
+static const u8 gTilesetAnims_General4_Frame1[] = INCBIN_U8("data/tilesets/primary/general/anim/4/1.4bpp");
+static const u8 gTilesetAnims_General4_Frame2[] = INCBIN_U8("data/tilesets/primary/general/anim/4/2.4bpp");
+static const u8 gTilesetAnims_General4_Frame3[] = INCBIN_U8("data/tilesets/primary/general/anim/4/3.4bpp");
-static const u8 *const gTilesetAnimTable_General_4[] =
+static const u8 *const gTilesetAnims_General4[] =
{
- TilesetAnimTiles_General_4_0,
- TilesetAnimTiles_General_4_1,
- TilesetAnimTiles_General_4_2,
- TilesetAnimTiles_General_4_3,
+ gTilesetAnims_General4_Frame0,
+ gTilesetAnims_General4_Frame1,
+ gTilesetAnims_General4_Frame2,
+ gTilesetAnims_General4_Frame3,
};
-static const u8 TilesetAnimTiles_Lavaridge_0[] = INCBIN_U8("data/tilesets/secondary/lavaridge/anim/0.4bpp");
-static const u8 TilesetAnimTiles_Lavaridge_1[] = INCBIN_U8("data/tilesets/secondary/lavaridge/anim/1.4bpp");
-static const u8 TilesetAnimTiles_Lavaridge_2[] = INCBIN_U8("data/tilesets/secondary/lavaridge/anim/2.4bpp");
-static const u8 TilesetAnimTiles_Lavaridge_3[] = INCBIN_U8("data/tilesets/secondary/lavaridge/anim/3.4bpp");
+static const u8 gTilesetAnims_Lavaridge0_Frame0[] = INCBIN_U8("data/tilesets/secondary/lavaridge/anim/0.4bpp");
+static const u8 gTilesetAnims_Lavaridge0_Frame1[] = INCBIN_U8("data/tilesets/secondary/lavaridge/anim/1.4bpp");
+static const u8 gTilesetAnims_Lavaridge0_Frame2[] = INCBIN_U8("data/tilesets/secondary/lavaridge/anim/2.4bpp");
+static const u8 gTilesetAnims_Lavaridge0_Frame3[] = INCBIN_U8("data/tilesets/secondary/lavaridge/anim/3.4bpp");
-static const u8 *const gTilesetAnimTable_Lavaridge[] =
+static const u8 *const gTilesetAnims_Lavaridge0[] =
{
- TilesetAnimTiles_Lavaridge_0,
- TilesetAnimTiles_Lavaridge_1,
- TilesetAnimTiles_Lavaridge_2,
- TilesetAnimTiles_Lavaridge_3,
+ gTilesetAnims_Lavaridge0_Frame0,
+ gTilesetAnims_Lavaridge0_Frame1,
+ gTilesetAnims_Lavaridge0_Frame2,
+ gTilesetAnims_Lavaridge0_Frame3,
};
-static const u8 TilesetAnimTiles_Pacifidlog_0_0[] = INCBIN_U8("data/tilesets/secondary/pacifidlog/anim/0/0.4bpp");
-static const u8 TilesetAnimTiles_Pacifidlog_0_1[] = INCBIN_U8("data/tilesets/secondary/pacifidlog/anim/0/1.4bpp");
-static const u8 TilesetAnimTiles_Pacifidlog_0_2[] = INCBIN_U8("data/tilesets/secondary/pacifidlog/anim/0/2.4bpp");
+static const u8 gTilesetAnims_Pacifidlog0_Frame0[] = INCBIN_U8("data/tilesets/secondary/pacifidlog/anim/0/0.4bpp");
+static const u8 gTilesetAnims_Pacifidlog0_Frame1[] = INCBIN_U8("data/tilesets/secondary/pacifidlog/anim/0/1.4bpp");
+static const u8 gTilesetAnims_Pacifidlog0_Frame2[] = INCBIN_U8("data/tilesets/secondary/pacifidlog/anim/0/2.4bpp");
-static const u8 *const gTilesetAnimTable_Pacifidlog_0[] =
+static const u8 *const gTilesetAnims_Pacifidlog0[] =
{
- TilesetAnimTiles_Pacifidlog_0_0,
- TilesetAnimTiles_Pacifidlog_0_1,
- TilesetAnimTiles_Pacifidlog_0_2,
- TilesetAnimTiles_Pacifidlog_0_1,
+ gTilesetAnims_Pacifidlog0_Frame0,
+ gTilesetAnims_Pacifidlog0_Frame1,
+ gTilesetAnims_Pacifidlog0_Frame2,
+ gTilesetAnims_Pacifidlog0_Frame1,
};
-static const u8 TilesetAnimTiles_Underwater_0[] = INCBIN_U8("data/tilesets/secondary/underwater/anim/0.4bpp");
-static const u8 TilesetAnimTiles_Underwater_1[] = INCBIN_U8("data/tilesets/secondary/underwater/anim/1.4bpp");
-static const u8 TilesetAnimTiles_Underwater_2[] = INCBIN_U8("data/tilesets/secondary/underwater/anim/2.4bpp");
-static const u8 TilesetAnimTiles_Underwater_3[] = INCBIN_U8("data/tilesets/secondary/underwater/anim/3.4bpp");
+static const u8 gTilesetAnims_Underwater0_Frame0[] = INCBIN_U8("data/tilesets/secondary/underwater/anim/0.4bpp");
+static const u8 gTilesetAnims_Underwater0_Frame1[] = INCBIN_U8("data/tilesets/secondary/underwater/anim/1.4bpp");
+static const u8 gTilesetAnims_Underwater0_Frame2[] = INCBIN_U8("data/tilesets/secondary/underwater/anim/2.4bpp");
+static const u8 gTilesetAnims_Underwater0_Frame3[] = INCBIN_U8("data/tilesets/secondary/underwater/anim/3.4bpp");
-static const u8 *const gTilesetAnimTable_Underwater[] =
+static const u8 *const gTilesetAnims_Underwater0[] =
{
- TilesetAnimTiles_Underwater_0,
- TilesetAnimTiles_Underwater_1,
- TilesetAnimTiles_Underwater_2,
- TilesetAnimTiles_Underwater_3,
+ gTilesetAnims_Underwater0_Frame0,
+ gTilesetAnims_Underwater0_Frame1,
+ gTilesetAnims_Underwater0_Frame2,
+ gTilesetAnims_Underwater0_Frame3
};
-static const u8 TilesetAnimTiles_Pacifidlog_1_0[] = INCBIN_U8("data/tilesets/secondary/pacifidlog/anim/1/0.4bpp");
-static const u8 TilesetAnimTiles_Pacifidlog_1_1[] = INCBIN_U8("data/tilesets/secondary/pacifidlog/anim/1/1.4bpp");
-static const u8 TilesetAnimTiles_Pacifidlog_1_2[] = INCBIN_U8("data/tilesets/secondary/pacifidlog/anim/1/2.4bpp");
-static const u8 TilesetAnimTiles_Pacifidlog_1_3[] = INCBIN_U8("data/tilesets/secondary/pacifidlog/anim/1/3.4bpp");
-static const u8 TilesetAnimTiles_Pacifidlog_1_4[] = INCBIN_U8("data/tilesets/secondary/pacifidlog/anim/1/4.4bpp");
-static const u8 TilesetAnimTiles_Pacifidlog_1_5[] = INCBIN_U8("data/tilesets/secondary/pacifidlog/anim/1/5.4bpp");
-static const u8 TilesetAnimTiles_Pacifidlog_1_6[] = INCBIN_U8("data/tilesets/secondary/pacifidlog/anim/1/6.4bpp");
-static const u8 TilesetAnimTiles_Pacifidlog_1_7[] = INCBIN_U8("data/tilesets/secondary/pacifidlog/anim/1/7.4bpp");
-
-static const u8 *const gTilesetAnimTable_Pacifidlog_1[] =
-{
- TilesetAnimTiles_Pacifidlog_1_0,
- TilesetAnimTiles_Pacifidlog_1_1,
- TilesetAnimTiles_Pacifidlog_1_2,
- TilesetAnimTiles_Pacifidlog_1_3,
- TilesetAnimTiles_Pacifidlog_1_4,
- TilesetAnimTiles_Pacifidlog_1_5,
- TilesetAnimTiles_Pacifidlog_1_6,
- TilesetAnimTiles_Pacifidlog_1_7,
+static const u8 gTilesetAnims_Pacifidlog1_Frame0[] = INCBIN_U8("data/tilesets/secondary/pacifidlog/anim/1/0.4bpp");
+static const u8 gTilesetAnims_Pacifidlog1_Frame1[] = INCBIN_U8("data/tilesets/secondary/pacifidlog/anim/1/1.4bpp");
+static const u8 gTilesetAnims_Pacifidlog1_Frame2[] = INCBIN_U8("data/tilesets/secondary/pacifidlog/anim/1/2.4bpp");
+static const u8 gTilesetAnims_Pacifidlog1_Frame3[] = INCBIN_U8("data/tilesets/secondary/pacifidlog/anim/1/3.4bpp");
+static const u8 gTilesetAnims_Pacifidlog1_Frame4[] = INCBIN_U8("data/tilesets/secondary/pacifidlog/anim/1/4.4bpp");
+static const u8 gTilesetAnims_Pacifidlog1_Frame5[] = INCBIN_U8("data/tilesets/secondary/pacifidlog/anim/1/5.4bpp");
+static const u8 gTilesetAnims_Pacifidlog1_Frame6[] = INCBIN_U8("data/tilesets/secondary/pacifidlog/anim/1/6.4bpp");
+static const u8 gTilesetAnims_Pacifidlog1_Frame7[] = INCBIN_U8("data/tilesets/secondary/pacifidlog/anim/1/7.4bpp");
+
+static const u8 *const gTilesetAnims_Pacifidlog1[] =
+{
+ gTilesetAnims_Pacifidlog1_Frame0,
+ gTilesetAnims_Pacifidlog1_Frame1,
+ gTilesetAnims_Pacifidlog1_Frame2,
+ gTilesetAnims_Pacifidlog1_Frame3,
+ gTilesetAnims_Pacifidlog1_Frame4,
+ gTilesetAnims_Pacifidlog1_Frame5,
+ gTilesetAnims_Pacifidlog1_Frame6,
+ gTilesetAnims_Pacifidlog1_Frame7
};
-static const u8 TilesetAnimTiles_Mauville_0_0[] = INCBIN_U8("data/tilesets/secondary/mauville/anim/0/0.4bpp");
-static const u8 TilesetAnimTiles_Mauville_0_1[] = INCBIN_U8("data/tilesets/secondary/mauville/anim/0/1.4bpp");
-static const u8 TilesetAnimTiles_Mauville_0_2[] = INCBIN_U8("data/tilesets/secondary/mauville/anim/0/2.4bpp");
-static const u8 TilesetAnimTiles_Mauville_0_3[] = INCBIN_U8("data/tilesets/secondary/mauville/anim/0/3.4bpp");
-static const u8 TilesetAnimTiles_Mauville_0_4[] = INCBIN_U8("data/tilesets/secondary/mauville/anim/0/4.4bpp");
+static const u8 gTilesetAnims_Mauville0_Frame0[] = INCBIN_U8("data/tilesets/secondary/mauville/anim/0/0.4bpp");
+static const u8 gTilesetAnims_Mauville0_Frame1[] = INCBIN_U8("data/tilesets/secondary/mauville/anim/0/1.4bpp");
+static const u8 gTilesetAnims_Mauville0_Frame2[] = INCBIN_U8("data/tilesets/secondary/mauville/anim/0/2.4bpp");
+static const u8 gTilesetAnims_Mauville0_Frame3[] = INCBIN_U8("data/tilesets/secondary/mauville/anim/0/3.4bpp");
+static const u8 gTilesetAnims_Mauville0_Frame4[] = INCBIN_U8("data/tilesets/secondary/mauville/anim/0/4.4bpp");
-static const u8 TilesetAnimTiles_Mauville_1_0[] = INCBIN_U8("data/tilesets/secondary/mauville/anim/1/0.4bpp");
-static const u8 TilesetAnimTiles_Mauville_1_1[] = INCBIN_U8("data/tilesets/secondary/mauville/anim/1/1.4bpp");
-static const u8 TilesetAnimTiles_Mauville_1_2[] = INCBIN_U8("data/tilesets/secondary/mauville/anim/1/2.4bpp");
-static const u8 TilesetAnimTiles_Mauville_1_3[] = INCBIN_U8("data/tilesets/secondary/mauville/anim/1/3.4bpp");
-static const u8 TilesetAnimTiles_Mauville_1_4[] = INCBIN_U8("data/tilesets/secondary/mauville/anim/1/4.4bpp");
+static const u8 gTilesetAnims_Mauville1_Frame0[] = INCBIN_U8("data/tilesets/secondary/mauville/anim/1/0.4bpp");
+static const u8 gTilesetAnims_Mauville1_Frame1[] = INCBIN_U8("data/tilesets/secondary/mauville/anim/1/1.4bpp");
+static const u8 gTilesetAnims_Mauville1_Frame2[] = INCBIN_U8("data/tilesets/secondary/mauville/anim/1/2.4bpp");
+static const u8 gTilesetAnims_Mauville1_Frame3[] = INCBIN_U8("data/tilesets/secondary/mauville/anim/1/3.4bpp");
+static const u8 gTilesetAnims_Mauville1_Frame4[] = INCBIN_U8("data/tilesets/secondary/mauville/anim/1/4.4bpp");
-static const void *const gUnknown_0837BAE4[] =
+static const void *const gTilesetAnims_MauvilleVDests0[] =
{
(void *)(VRAM + 0x4C00),
(void *)(VRAM + 0x4C80),
@@ -223,7 +223,7 @@ static const void *const gUnknown_0837BAE4[] =
(void *)(VRAM + 0x4F80),
};
-static const void *const gUnknown_0837BB04[] =
+static const void *const gTilesetAnims_MauvilleVDests1[] =
{
(void *)(VRAM + 0x5000),
(void *)(VRAM + 0x5080),
@@ -235,64 +235,64 @@ static const void *const gUnknown_0837BB04[] =
(void *)(VRAM + 0x5380),
};
-static const u8 *const gTilesetAnimTable_Mauville_0A[] =
-{
- TilesetAnimTiles_Mauville_0_0,
- TilesetAnimTiles_Mauville_0_0,
- TilesetAnimTiles_Mauville_0_1,
- TilesetAnimTiles_Mauville_0_2,
- TilesetAnimTiles_Mauville_0_3,
- TilesetAnimTiles_Mauville_0_3,
- TilesetAnimTiles_Mauville_0_3,
- TilesetAnimTiles_Mauville_0_3,
- TilesetAnimTiles_Mauville_0_3,
- TilesetAnimTiles_Mauville_0_3,
- TilesetAnimTiles_Mauville_0_2,
- TilesetAnimTiles_Mauville_0_1,
+static const u8 *const gTilesetAnims_Mauville0[] =
+{
+ gTilesetAnims_Mauville0_Frame0,
+ gTilesetAnims_Mauville0_Frame0,
+ gTilesetAnims_Mauville0_Frame1,
+ gTilesetAnims_Mauville0_Frame2,
+ gTilesetAnims_Mauville0_Frame3,
+ gTilesetAnims_Mauville0_Frame3,
+ gTilesetAnims_Mauville0_Frame3,
+ gTilesetAnims_Mauville0_Frame3,
+ gTilesetAnims_Mauville0_Frame3,
+ gTilesetAnims_Mauville0_Frame3,
+ gTilesetAnims_Mauville0_Frame2,
+ gTilesetAnims_Mauville0_Frame1,
};
-static const u8 *const gTilesetAnimTable_Mauville_1A[] =
-{
- TilesetAnimTiles_Mauville_1_0,
- TilesetAnimTiles_Mauville_1_0,
- TilesetAnimTiles_Mauville_1_1,
- TilesetAnimTiles_Mauville_1_2,
- TilesetAnimTiles_Mauville_1_3,
- TilesetAnimTiles_Mauville_1_3,
- TilesetAnimTiles_Mauville_1_3,
- TilesetAnimTiles_Mauville_1_3,
- TilesetAnimTiles_Mauville_1_3,
- TilesetAnimTiles_Mauville_1_3,
- TilesetAnimTiles_Mauville_1_2,
- TilesetAnimTiles_Mauville_1_1,
+static const u8 *const gTilesetAnims_Mauville1[] =
+{
+ gTilesetAnims_Mauville1_Frame0,
+ gTilesetAnims_Mauville1_Frame0,
+ gTilesetAnims_Mauville1_Frame1,
+ gTilesetAnims_Mauville1_Frame2,
+ gTilesetAnims_Mauville1_Frame3,
+ gTilesetAnims_Mauville1_Frame3,
+ gTilesetAnims_Mauville1_Frame3,
+ gTilesetAnims_Mauville1_Frame3,
+ gTilesetAnims_Mauville1_Frame3,
+ gTilesetAnims_Mauville1_Frame3,
+ gTilesetAnims_Mauville1_Frame2,
+ gTilesetAnims_Mauville1_Frame1,
};
-static const u8 *const gTilesetAnimTable_Mauville_0B[] =
+static const u8 *const gTilesetAnims_Mauville2[] =
{
- TilesetAnimTiles_Mauville_0_0,
- TilesetAnimTiles_Mauville_0_0,
- TilesetAnimTiles_Mauville_0_4,
- TilesetAnimTiles_Mauville_0_4,
+ gTilesetAnims_Mauville0_Frame0,
+ gTilesetAnims_Mauville0_Frame0,
+ gTilesetAnims_Mauville0_Frame4,
+ gTilesetAnims_Mauville0_Frame4,
};
-static const u8 *const gTilesetAnimTable_Mauville_1B[] =
+static const u8 *const gTilesetAnims_Mauville3[] =
{
- TilesetAnimTiles_Mauville_1_0,
- TilesetAnimTiles_Mauville_1_0,
- TilesetAnimTiles_Mauville_1_4,
- TilesetAnimTiles_Mauville_1_4,
+ gTilesetAnims_Mauville1_Frame0,
+ gTilesetAnims_Mauville1_Frame0,
+ gTilesetAnims_Mauville1_Frame4,
+ gTilesetAnims_Mauville1_Frame4,
};
-static const u8 TilesetAnimTiles_Rustboro_0_0[] = INCBIN_U8("data/tilesets/secondary/rustboro/anim/0/0.4bpp");
-static const u8 TilesetAnimTiles_Rustboro_0_1[] = INCBIN_U8("data/tilesets/secondary/rustboro/anim/0/1.4bpp");
-static const u8 TilesetAnimTiles_Rustboro_0_2[] = INCBIN_U8("data/tilesets/secondary/rustboro/anim/0/2.4bpp");
-static const u8 TilesetAnimTiles_Rustboro_0_3[] = INCBIN_U8("data/tilesets/secondary/rustboro/anim/0/3.4bpp");
-static const u8 TilesetAnimTiles_Rustboro_0_4[] = INCBIN_U8("data/tilesets/secondary/rustboro/anim/0/4.4bpp");
-static const u8 TilesetAnimTiles_Rustboro_0_5[] = INCBIN_U8("data/tilesets/secondary/rustboro/anim/0/5.4bpp");
-static const u8 TilesetAnimTiles_Rustboro_0_6[] = INCBIN_U8("data/tilesets/secondary/rustboro/anim/0/6.4bpp");
-static const u8 TilesetAnimTiles_Rustboro_0_7[] = INCBIN_U8("data/tilesets/secondary/rustboro/anim/0/7.4bpp");
+static const u8 gTilesetAnims_Rustboro0_Frame0[] = INCBIN_U8("data/tilesets/secondary/rustboro/anim/0/0.4bpp");
+static const u8 gTilesetAnims_Rustboro0_Frame1[] = INCBIN_U8("data/tilesets/secondary/rustboro/anim/0/1.4bpp");
+static const u8 gTilesetAnims_Rustboro0_Frame2[] = INCBIN_U8("data/tilesets/secondary/rustboro/anim/0/2.4bpp");
+static const u8 gTilesetAnims_Rustboro0_Frame3[] = INCBIN_U8("data/tilesets/secondary/rustboro/anim/0/3.4bpp");
+static const u8 gTilesetAnims_Rustboro0_Frame4[] = INCBIN_U8("data/tilesets/secondary/rustboro/anim/0/4.4bpp");
+static const u8 gTilesetAnims_Rustboro0_Frame5[] = INCBIN_U8("data/tilesets/secondary/rustboro/anim/0/5.4bpp");
+static const u8 gTilesetAnims_Rustboro0_Frame6[] = INCBIN_U8("data/tilesets/secondary/rustboro/anim/0/6.4bpp");
+static const u8 gTilesetAnims_Rustboro0_Frame7[] = INCBIN_U8("data/tilesets/secondary/rustboro/anim/0/7.4bpp");
-static const void *const gUnknown_0837BFA4[] =
+static const void *const gTilesetAnims_RustboroVDests0[] =
{
(void *)(VRAM + 0x5000),
(void *)(VRAM + 0x5080),
@@ -304,57 +304,57 @@ static const void *const gUnknown_0837BFA4[] =
(void *)(VRAM + 0x5380),
};
-static const u8 *const gTilesetAnimTable_Rustboro_0[] =
+static const u8 *const gTilesetAnims_Rustboro0[] =
{
- TilesetAnimTiles_Rustboro_0_0,
- TilesetAnimTiles_Rustboro_0_1,
- TilesetAnimTiles_Rustboro_0_2,
- TilesetAnimTiles_Rustboro_0_3,
- TilesetAnimTiles_Rustboro_0_4,
- TilesetAnimTiles_Rustboro_0_5,
- TilesetAnimTiles_Rustboro_0_6,
- TilesetAnimTiles_Rustboro_0_7,
+ gTilesetAnims_Rustboro0_Frame0,
+ gTilesetAnims_Rustboro0_Frame1,
+ gTilesetAnims_Rustboro0_Frame2,
+ gTilesetAnims_Rustboro0_Frame3,
+ gTilesetAnims_Rustboro0_Frame4,
+ gTilesetAnims_Rustboro0_Frame5,
+ gTilesetAnims_Rustboro0_Frame6,
+ gTilesetAnims_Rustboro0_Frame7,
};
-static const u8 TilesetAnimTiles_Rustboro_1_0[] = INCBIN_U8("data/tilesets/secondary/rustboro/anim/1/0.4bpp");
-static const u8 TilesetAnimTiles_Rustboro_1_1[] = INCBIN_U8("data/tilesets/secondary/rustboro/anim/1/1.4bpp");
+static const u8 gTilesetAnims_Rustboro1_Frame0[] = INCBIN_U8("data/tilesets/secondary/rustboro/anim/1/0.4bpp");
+static const u8 gTilesetAnims_Rustboro1_Frame1[] = INCBIN_U8("data/tilesets/secondary/rustboro/anim/1/1.4bpp");
-static const u8 *const gTilesetAnimTable_Rustboro_1[] =
+static const u8 *const gTilesetAnims_Rustboro1[] =
{
- TilesetAnimTiles_Rustboro_1_0,
- TilesetAnimTiles_Rustboro_1_1,
+ gTilesetAnims_Rustboro1_Frame0,
+ gTilesetAnims_Rustboro1_Frame1,
};
-static const u8 TilesetAnimTiles_Cave_0[] = INCBIN_U8("data/tilesets/secondary/cave/anim/0.4bpp");
-static const u8 TilesetAnimTiles_Cave_1[] = INCBIN_U8("data/tilesets/secondary/cave/anim/1.4bpp");
-static const u8 TilesetAnimTiles_Cave_2[] = INCBIN_U8("data/tilesets/secondary/cave/anim/2.4bpp");
-static const u8 TilesetAnimTiles_Cave_3[] = INCBIN_U8("data/tilesets/secondary/cave/anim/3.4bpp");
+static const u8 gTilesetAnims_Lavaridge1_Cave0_Frame0[] = INCBIN_U8("data/tilesets/secondary/cave/anim/0.4bpp");
+static const u8 gTilesetAnims_Lavaridge1_Cave0_Frame1[] = INCBIN_U8("data/tilesets/secondary/cave/anim/1.4bpp");
+static const u8 gTilesetAnims_Lavaridge1_Cave0_Frame2[] = INCBIN_U8("data/tilesets/secondary/cave/anim/2.4bpp");
+static const u8 gTilesetAnims_Lavaridge1_Cave0_Frame3[] = INCBIN_U8("data/tilesets/secondary/cave/anim/3.4bpp");
// unused anim tiles for cave
-static const u8 TilesetAnimTiles_Cave_4[] = INCBIN_U8("data/tilesets/secondary/cave/anim/unused/0.4bpp");
-static const u8 TilesetAnimTiles_Cave_5[] = INCBIN_U8("data/tilesets/secondary/cave/anim/unused/1.4bpp");
-static const u8 TilesetAnimTiles_Cave_6[] = INCBIN_U8("data/tilesets/secondary/cave/anim/unused/2.4bpp");
-static const u8 TilesetAnimTiles_Cave_7[] = INCBIN_U8("data/tilesets/secondary/cave/anim/unused/3.4bpp");
+static const u8 gTilesetAnims_Lavaridge1_CaveUnused_Frame0[] = INCBIN_U8("data/tilesets/secondary/cave/anim/unused/0.4bpp");
+static const u8 gTilesetAnims_Lavaridge1_CaveUnused_Frame1[] = INCBIN_U8("data/tilesets/secondary/cave/anim/unused/1.4bpp");
+static const u8 gTilesetAnims_Lavaridge1_CaveUnused_Frame2[] = INCBIN_U8("data/tilesets/secondary/cave/anim/unused/2.4bpp");
+static const u8 gTilesetAnims_Lavaridge1_CaveUnused_Frame3[] = INCBIN_U8("data/tilesets/secondary/cave/anim/unused/3.4bpp");
asm(".space 32");
-static const u8 *const gTilesetAnimTable_Cave[] =
+static const u8 *const gTilesetAnims_Lavaridge1_Cave0[] =
{
- TilesetAnimTiles_Cave_0,
- TilesetAnimTiles_Cave_1,
- TilesetAnimTiles_Cave_2,
- TilesetAnimTiles_Cave_3,
+ gTilesetAnims_Lavaridge1_Cave0_Frame0,
+ gTilesetAnims_Lavaridge1_Cave0_Frame1,
+ gTilesetAnims_Lavaridge1_Cave0_Frame2,
+ gTilesetAnims_Lavaridge1_Cave0_Frame3,
};
-static const u8 TilesetAnimTiles_EverGrande_0[] = INCBIN_U8("data/tilesets/secondary/ever_grande/anim/0.4bpp");
-static const u8 TilesetAnimTiles_EverGrande_1[] = INCBIN_U8("data/tilesets/secondary/ever_grande/anim/1.4bpp");
-static const u8 TilesetAnimTiles_EverGrande_2[] = INCBIN_U8("data/tilesets/secondary/ever_grande/anim/2.4bpp");
-static const u8 TilesetAnimTiles_EverGrande_3[] = INCBIN_U8("data/tilesets/secondary/ever_grande/anim/3.4bpp");
-static const u8 TilesetAnimTiles_EverGrande_4[] = INCBIN_U8("data/tilesets/secondary/ever_grande/anim/4.4bpp");
-static const u8 TilesetAnimTiles_EverGrande_5[] = INCBIN_U8("data/tilesets/secondary/ever_grande/anim/5.4bpp");
-static const u8 TilesetAnimTiles_EverGrande_6[] = INCBIN_U8("data/tilesets/secondary/ever_grande/anim/6.4bpp");
-static const u8 TilesetAnimTiles_EverGrande_7[] = INCBIN_U8("data/tilesets/secondary/ever_grande/anim/7.4bpp");
+static const u8 gTilesetAnims_EverGrande0_Frame0[] = INCBIN_U8("data/tilesets/secondary/ever_grande/anim/0.4bpp");
+static const u8 gTilesetAnims_EverGrande0_Frame1[] = INCBIN_U8("data/tilesets/secondary/ever_grande/anim/1.4bpp");
+static const u8 gTilesetAnims_EverGrande0_Frame2[] = INCBIN_U8("data/tilesets/secondary/ever_grande/anim/2.4bpp");
+static const u8 gTilesetAnims_EverGrande0_Frame3[] = INCBIN_U8("data/tilesets/secondary/ever_grande/anim/3.4bpp");
+static const u8 gTilesetAnims_EverGrande0_Frame4[] = INCBIN_U8("data/tilesets/secondary/ever_grande/anim/4.4bpp");
+static const u8 gTilesetAnims_EverGrande0_Frame5[] = INCBIN_U8("data/tilesets/secondary/ever_grande/anim/5.4bpp");
+static const u8 gTilesetAnims_EverGrande0_Frame6[] = INCBIN_U8("data/tilesets/secondary/ever_grande/anim/6.4bpp");
+static const u8 gTilesetAnims_EverGrande0_Frame7[] = INCBIN_U8("data/tilesets/secondary/ever_grande/anim/7.4bpp");
asm(".space 32");
-static const void *const gUnknown_0837C93C[] =
+static const void *const gTilesetAnims_EverGrandeVDests0[] =
{
(void *)(VRAM + 0x5C00),
(void *)(VRAM + 0x5C80),
@@ -366,88 +366,88 @@ static const void *const gUnknown_0837C93C[] =
(void *)(VRAM + 0x5F80),
};
-static const u8 *const gTilesetAnimTable_EverGrande[] =
+static const u8 *const gTilesetAnims_EverGrande0[] =
{
- TilesetAnimTiles_EverGrande_0,
- TilesetAnimTiles_EverGrande_1,
- TilesetAnimTiles_EverGrande_2,
- TilesetAnimTiles_EverGrande_3,
- TilesetAnimTiles_EverGrande_4,
- TilesetAnimTiles_EverGrande_5,
- TilesetAnimTiles_EverGrande_6,
- TilesetAnimTiles_EverGrande_7,
+ gTilesetAnims_EverGrande0_Frame0,
+ gTilesetAnims_EverGrande0_Frame1,
+ gTilesetAnims_EverGrande0_Frame2,
+ gTilesetAnims_EverGrande0_Frame3,
+ gTilesetAnims_EverGrande0_Frame4,
+ gTilesetAnims_EverGrande0_Frame5,
+ gTilesetAnims_EverGrande0_Frame6,
+ gTilesetAnims_EverGrande0_Frame7,
};
-static const u8 TilesetAnimTiles_Building_0[] = INCBIN_U8("data/tilesets/primary/building/anim/0.4bpp");
-static const u8 TilesetAnimTiles_Building_1[] = INCBIN_U8("data/tilesets/primary/building/anim/1.4bpp");
+static const u8 gTilesetAnims_InsideBuilding0_Frame0[] = INCBIN_U8("data/tilesets/primary/building/anim/0.4bpp");
+static const u8 gTilesetAnims_InsideBuilding0_Frame1[] = INCBIN_U8("data/tilesets/primary/building/anim/1.4bpp");
-static const u8 *const gTilesetAnimTable_Building[] =
+static const u8 *const gTilesetAnims_InsideBuilding0[] =
{
- TilesetAnimTiles_Building_0,
- TilesetAnimTiles_Building_1,
+ gTilesetAnims_InsideBuilding0_Frame0,
+ gTilesetAnims_InsideBuilding0_Frame1,
};
-static const u8 TilesetAnimTiles_SootopolisGym_0_0[] = INCBIN_U8("data/tilesets/secondary/sootopolis_gym/anim/0/0.4bpp");
-static const u8 TilesetAnimTiles_SootopolisGym_0_1[] = INCBIN_U8("data/tilesets/secondary/sootopolis_gym/anim/0/1.4bpp");
-static const u8 TilesetAnimTiles_SootopolisGym_0_2[] = INCBIN_U8("data/tilesets/secondary/sootopolis_gym/anim/0/2.4bpp");
-static const u8 TilesetAnimTiles_SootopolisGym_1_0[] = INCBIN_U8("data/tilesets/secondary/sootopolis_gym/anim/1/0.4bpp");
-static const u8 TilesetAnimTiles_SootopolisGym_1_1[] = INCBIN_U8("data/tilesets/secondary/sootopolis_gym/anim/1/1.4bpp");
-static const u8 TilesetAnimTiles_SootopolisGym_1_2[] = INCBIN_U8("data/tilesets/secondary/sootopolis_gym/anim/1/2.4bpp");
+static const u8 gTilesetAnims_SootopolisGym0_Frame0[] = INCBIN_U8("data/tilesets/secondary/sootopolis_gym/anim/0/0.4bpp");
+static const u8 gTilesetAnims_SootopolisGym0_Frame1[] = INCBIN_U8("data/tilesets/secondary/sootopolis_gym/anim/0/1.4bpp");
+static const u8 gTilesetAnims_SootopolisGym0_Frame2[] = INCBIN_U8("data/tilesets/secondary/sootopolis_gym/anim/0/2.4bpp");
+static const u8 gTilesetAnims_SootopolisGym1_Frame0[] = INCBIN_U8("data/tilesets/secondary/sootopolis_gym/anim/1/0.4bpp");
+static const u8 gTilesetAnims_SootopolisGym1_Frame1[] = INCBIN_U8("data/tilesets/secondary/sootopolis_gym/anim/1/1.4bpp");
+static const u8 gTilesetAnims_SootopolisGym1_Frame2[] = INCBIN_U8("data/tilesets/secondary/sootopolis_gym/anim/1/2.4bpp");
-static const u8 *const gTilesetAnimTable_SootopolisGym_0[] =
+static const u8 *const gTilesetAnims_SootopolisGym0[] =
{
- TilesetAnimTiles_SootopolisGym_0_0,
- TilesetAnimTiles_SootopolisGym_0_1,
- TilesetAnimTiles_SootopolisGym_0_2,
+ gTilesetAnims_SootopolisGym0_Frame0,
+ gTilesetAnims_SootopolisGym0_Frame1,
+ gTilesetAnims_SootopolisGym0_Frame2,
};
-static const u8 *const gTilesetAnimTable_SootopolisGym_1[] =
+static const u8 *const gTilesetAnims_SootopolisGym1[] =
{
- TilesetAnimTiles_SootopolisGym_1_0,
- TilesetAnimTiles_SootopolisGym_1_1,
- TilesetAnimTiles_SootopolisGym_1_2,
+ gTilesetAnims_SootopolisGym1_Frame0,
+ gTilesetAnims_SootopolisGym1_Frame1,
+ gTilesetAnims_SootopolisGym1_Frame2,
};
-static const u8 TilesetAnimTiles_EliteFour_1_0[] = INCBIN_U8("data/tilesets/secondary/elite_four/anim/1/0.4bpp");
-static const u8 TilesetAnimTiles_EliteFour_1_1[] = INCBIN_U8("data/tilesets/secondary/elite_four/anim/1/1.4bpp");
-static const u8 TilesetAnimTiles_EliteFour_0_0[] = INCBIN_U8("data/tilesets/secondary/elite_four/anim/0/0.4bpp");
-static const u8 TilesetAnimTiles_EliteFour_0_1[] = INCBIN_U8("data/tilesets/secondary/elite_four/anim/0/1.4bpp");
-static const u8 TilesetAnimTiles_EliteFour_0_2[] = INCBIN_U8("data/tilesets/secondary/elite_four/anim/0/2.4bpp");
-static const u8 TilesetAnimTiles_EliteFour_0_3[] = INCBIN_U8("data/tilesets/secondary/elite_four/anim/0/3.4bpp");
+static const u8 gTilesetAnims_EliteFour0_Frame0[] = INCBIN_U8("data/tilesets/secondary/elite_four/anim/1/0.4bpp");
+static const u8 gTilesetAnims_EliteFour0_Frame1[] = INCBIN_U8("data/tilesets/secondary/elite_four/anim/1/1.4bpp");
+static const u8 gTilesetAnims_EliteFour1_Frame0[] = INCBIN_U8("data/tilesets/secondary/elite_four/anim/0/0.4bpp");
+static const u8 gTilesetAnims_EliteFour1_Frame1[] = INCBIN_U8("data/tilesets/secondary/elite_four/anim/0/1.4bpp");
+static const u8 gTilesetAnims_EliteFour1_Frame2[] = INCBIN_U8("data/tilesets/secondary/elite_four/anim/0/2.4bpp");
+static const u8 gTilesetAnims_EliteFour1_Frame3[] = INCBIN_U8("data/tilesets/secondary/elite_four/anim/0/3.4bpp");
asm(".space 32");
-static const u8 *const gTilesetAnimTable_EliteFour_0[] =
+static const u8 *const gTilesetAnims_EliteFour1[] =
{
- TilesetAnimTiles_EliteFour_0_0,
- TilesetAnimTiles_EliteFour_0_1,
- TilesetAnimTiles_EliteFour_0_2,
- TilesetAnimTiles_EliteFour_0_3,
+ gTilesetAnims_EliteFour1_Frame0,
+ gTilesetAnims_EliteFour1_Frame1,
+ gTilesetAnims_EliteFour1_Frame2,
+ gTilesetAnims_EliteFour1_Frame3,
};
-static const u8 *const gTilesetAnimTable_EliteFour_1[] =
+static const u8 *const gTilesetAnims_EliteFour0[] =
{
- TilesetAnimTiles_EliteFour_1_0,
- TilesetAnimTiles_EliteFour_1_1,
+ gTilesetAnims_EliteFour0_Frame0,
+ gTilesetAnims_EliteFour0_Frame1,
};
-static const u8 TilesetAnimTiles_MauvilleGym_0[] = INCBIN_U8("data/tilesets/secondary/mauville_gym/anim/0.4bpp");
-static const u8 TilesetAnimTiles_MauvilleGym_1[] = INCBIN_U8("data/tilesets/secondary/mauville_gym/anim/1.4bpp");
+static const u8 gTilesetAnims_MauvilleGym0_Frame0[] = INCBIN_U8("data/tilesets/secondary/mauville_gym/anim/0.4bpp");
+static const u8 gTilesetAnims_MauvilleGym0_Frame1[] = INCBIN_U8("data/tilesets/secondary/mauville_gym/anim/1.4bpp");
asm(".space 32");
-static const u8 *const gTilesetAnimTable_MauvilleGym[] =
+static const u8 *const gTilesetAnims_MauvilleGym0[] =
{
- TilesetAnimTiles_MauvilleGym_0,
- TilesetAnimTiles_MauvilleGym_1,
+ gTilesetAnims_MauvilleGym0_Frame0,
+ gTilesetAnims_MauvilleGym0_Frame1,
};
-static const u8 TilesetAnimTiles_BikeShop_0[] = INCBIN_U8("data/tilesets/secondary/bike_shop/anim/0.4bpp");
-static const u8 TilesetAnimTiles_BikeShop_1[] = INCBIN_U8("data/tilesets/secondary/bike_shop/anim/1.4bpp");
+static const u8 gTilesetAnims_BikeShop0_Frame0[] = INCBIN_U8("data/tilesets/secondary/bike_shop/anim/0.4bpp");
+static const u8 gTilesetAnims_BikeShop0_Frame1[] = INCBIN_U8("data/tilesets/secondary/bike_shop/anim/1.4bpp");
asm(".space 32");
-static const u8 *const gTilesetAnimTable_BikeShop[] =
+static const u8 *const gTilesetAnims_BikeShop0[] =
{
- TilesetAnimTiles_BikeShop_0,
- TilesetAnimTiles_BikeShop_1,
+ gTilesetAnims_BikeShop0_Frame0,
+ gTilesetAnims_BikeShop0_Frame1,
};
static void ClearTilesetAnimDmas(void)
@@ -518,11 +518,11 @@ static void StartTileset1Animation(void)
gTileset1AnimFrame = 0;
gTileset1AnimLength = 0;
gTileset1AnimCallback = 0;
- if (gMapHeader.mapData->primaryTileset)
+ if (gMapHeader.mapLayout->primaryTileset)
{
- if (gMapHeader.mapData->primaryTileset->callback)
+ if (gMapHeader.mapLayout->primaryTileset->callback)
{
- gMapHeader.mapData->primaryTileset->callback();
+ gMapHeader.mapLayout->primaryTileset->callback();
}
}
}
@@ -532,11 +532,11 @@ static void StartTileset2Animation(void)
gTileset2AnimFrame = 0;
gTileset2AnimLength = 0;
gTileset2AnimCallback = 0;
- if (gMapHeader.mapData->secondaryTileset)
+ if (gMapHeader.mapLayout->secondaryTileset)
{
- if (gMapHeader.mapData->secondaryTileset->callback)
+ if (gMapHeader.mapLayout->secondaryTileset->callback)
{
- gMapHeader.mapData->secondaryTileset->callback();
+ gMapHeader.mapLayout->secondaryTileset->callback();
}
}
}
@@ -578,28 +578,28 @@ static void sub_8073070(u16 a1)
{
int v1;
v1 = a1 % 4;
- QueueTilesetAnimDma(gTilesetAnimTable_General_0[v1], BG_TILE_ADDR(127), 0x80);
+ QueueTilesetAnimDma(gTilesetAnims_General0[v1], BG_TILE_ADDR(127), 0x80);
}
static void sub_8073098(u16 a1)
{
u8 v1;
v1 = a1 % 8;
- QueueTilesetAnimDma(gTilesetAnimTable_General_1[v1], BG_TILE_ADDR(108), 0x3c0);
+ QueueTilesetAnimDma(gTilesetAnims_General1[v1], BG_TILE_ADDR(108), 0x3c0);
}
static void sub_80730C0(u16 a1)
{
int v1;
v1 = a1 % 8;
- QueueTilesetAnimDma(gTilesetAnimTable_General_2[v1], BG_TILE_ADDR(116), 0x140);
+ QueueTilesetAnimDma(gTilesetAnims_General2[v1], BG_TILE_ADDR(116), 0x140);
}
static void sub_80730E8(u16 a1)
{
int v1;
v1 = a1 % 4;
- QueueTilesetAnimDma(gTilesetAnimTable_General_3[v1], BG_TILE_ADDR(124), 0xc0);
+ QueueTilesetAnimDma(gTilesetAnims_General3[v1], BG_TILE_ADDR(124), 0xc0);
}
void TilesetCB_Petalburg(void)
@@ -815,37 +815,37 @@ static void sub_807361C(u16 a1)
{
int v1;
v1 = a1 % 4;
- QueueTilesetAnimDma(gTilesetAnimTable_General_4[v1], BG_TILE_ADDR(120), 0x140);
+ QueueTilesetAnimDma(gTilesetAnims_General4[v1], BG_TILE_ADDR(120), 0x140);
}
static void sub_8073644(u8 a1)
{
u8 v1;
v1 = a1 % 4;
- QueueTilesetAnimDma(gTilesetAnimTable_Lavaridge[v1], BG_TILE_ADDR(200), 0x80);
+ QueueTilesetAnimDma(gTilesetAnims_Lavaridge0[v1], BG_TILE_ADDR(200), 0x80);
v1 = (a1 + 2) % 4;
- QueueTilesetAnimDma(gTilesetAnimTable_Lavaridge[v1], BG_TILE_ADDR(201), 0x80);
+ QueueTilesetAnimDma(gTilesetAnims_Lavaridge0[v1], BG_TILE_ADDR(201), 0x80);
}
static void sub_807368C(u8 a1)
{
int v1;
v1 = a1 % 4;
- QueueTilesetAnimDma(gTilesetAnimTable_Pacifidlog_0[v1], BG_TILE_ADDR(244), 0x3c0);
+ QueueTilesetAnimDma(gTilesetAnims_Pacifidlog0[v1], BG_TILE_ADDR(244), 0x3c0);
}
static void sub_80736B4(u8 a1)
{
int v1;
v1 = a1 % 4;
- QueueTilesetAnimDma(gTilesetAnimTable_Underwater[v1], BG_TILE_ADDR(252), 0x80);
+ QueueTilesetAnimDma(gTilesetAnims_Underwater0[v1], BG_TILE_ADDR(252), 0x80);
}
static void sub_80736DC(u8 a1)
{
int v1;
v1 = a1 % 8;
- QueueTilesetAnimDma(gTilesetAnimTable_Pacifidlog_1[v1], BG_TILE_ADDR(252), 0x100);
+ QueueTilesetAnimDma(gTilesetAnims_Pacifidlog1[v1], BG_TILE_ADDR(252), 0x100);
}
static void sub_8073704(u16 a1, u8 a2)
@@ -855,14 +855,14 @@ static void sub_8073704(u16 a1, u8 a2)
if (a1 < 12)
{
v1 = a1 % 12;
- QueueTilesetAnimDma(gTilesetAnimTable_Mauville_0A[v1], gUnknown_0837BAE4[a2], 0x80);
- QueueTilesetAnimDma(gTilesetAnimTable_Mauville_1A[v1], gUnknown_0837BB04[a2], 0x80);
+ QueueTilesetAnimDma(gTilesetAnims_Mauville0[v1], gTilesetAnims_MauvilleVDests0[a2], 0x80);
+ QueueTilesetAnimDma(gTilesetAnims_Mauville1[v1], gTilesetAnims_MauvilleVDests1[a2], 0x80);
}
else
{
v1 = a1 % 4;
- QueueTilesetAnimDma(gTilesetAnimTable_Mauville_0B[v1], gUnknown_0837BAE4[a2], 0x80);
- QueueTilesetAnimDma(gTilesetAnimTable_Mauville_1B[v1], gUnknown_0837BB04[a2], 0x80);
+ QueueTilesetAnimDma(gTilesetAnims_Mauville2[v1], gTilesetAnims_MauvilleVDests0[a2], 0x80);
+ QueueTilesetAnimDma(gTilesetAnims_Mauville3[v1], gTilesetAnims_MauvilleVDests1[a2], 0x80);
}
}
@@ -872,9 +872,9 @@ static void sub_80737A4(u16 a1, u8 a2)
a1 -= a2;
v1 = a1 % 8;
- if (gTilesetAnimTable_Rustboro_0[v1])
+ if (gTilesetAnims_Rustboro0[v1])
{
- QueueTilesetAnimDma(gTilesetAnimTable_Rustboro_0[v1], gUnknown_0837BFA4[a2], 0x80);
+ QueueTilesetAnimDma(gTilesetAnims_Rustboro0[v1], gTilesetAnims_RustboroVDests0[a2], 0x80);
}
}
@@ -882,14 +882,14 @@ static void sub_80737E0(u16 a1)
{
int v1;
v1 = a1 % 2;
- QueueTilesetAnimDma(gTilesetAnimTable_Rustboro_1[v1], BG_TILE_ADDR(240), 0x80);
+ QueueTilesetAnimDma(gTilesetAnims_Rustboro1[v1], BG_TILE_ADDR(240), 0x80);
}
static void sub_8073808(u16 a1)
{
int v1;
v1 = a1 % 4;
- QueueTilesetAnimDma(gTilesetAnimTable_Cave[v1], BG_TILE_ADDR(168), 0x80);
+ QueueTilesetAnimDma(gTilesetAnims_Lavaridge1_Cave0[v1], BG_TILE_ADDR(168), 0x80);
}
static void sub_8073830(u16 a1, u8 a2)
@@ -897,14 +897,14 @@ static void sub_8073830(u16 a1, u8 a2)
int v1;
a1 -= a2;
v1 = a1 % 8;
- QueueTilesetAnimDma(gTilesetAnimTable_EverGrande[v1], gUnknown_0837C93C[a2], 0x80);
+ QueueTilesetAnimDma(gTilesetAnims_EverGrande0[v1], gTilesetAnims_EverGrandeVDests0[a2], 0x80);
}
static void sub_8073868(u16 a1)
{
int v1;
v1 = a1 % 4;
- QueueTilesetAnimDma(gTilesetAnimTable_Cave[v1], BG_TILE_ADDR(232), 0x80);
+ QueueTilesetAnimDma(gTilesetAnims_Lavaridge1_Cave0[v1], BG_TILE_ADDR(232), 0x80);
}
static void sub_8073890(u16 a1)
@@ -951,41 +951,41 @@ static void sub_8073904(u16 a1)
{
int v1;
v1 = a1 % 2;
- QueueTilesetAnimDma(gTilesetAnimTable_Building[v1], BG_TILE_ADDR(124), 0x80);
+ QueueTilesetAnimDma(gTilesetAnims_InsideBuilding0[v1], BG_TILE_ADDR(124), 0x80);
}
static void sub_807392C(u16 a1)
{
int v1;
v1 = a1 % 3;
- QueueTilesetAnimDma(gTilesetAnimTable_SootopolisGym_0[v1], BG_TILE_ADDR(252), 0x180);
- QueueTilesetAnimDma(gTilesetAnimTable_SootopolisGym_1[v1], BG_TILE_ADDR(244), 0x280);
+ QueueTilesetAnimDma(gTilesetAnims_SootopolisGym0[v1], BG_TILE_ADDR(252), 0x180);
+ QueueTilesetAnimDma(gTilesetAnims_SootopolisGym1[v1], BG_TILE_ADDR(244), 0x280);
}
static void sub_8073974(u16 a1)
{
int v1;
v1 = a1 % 4;
- QueueTilesetAnimDma(gTilesetAnimTable_EliteFour_0[v1], BG_TILE_ADDR(254), 0x20);
+ QueueTilesetAnimDma(gTilesetAnims_EliteFour1[v1], BG_TILE_ADDR(254), 0x20);
}
static void sub_807399C(u16 a1)
{
int v1;
v1 = a1 % 2;
- QueueTilesetAnimDma(gTilesetAnimTable_EliteFour_1[v1], BG_TILE_ADDR(248), 0x80);
+ QueueTilesetAnimDma(gTilesetAnims_EliteFour0[v1], BG_TILE_ADDR(248), 0x80);
}
static void sub_80739C4(u16 a1)
{
int v1;
v1 = a1 % 2;
- QueueTilesetAnimDma(gTilesetAnimTable_MauvilleGym[v1], BG_TILE_ADDR(164), 0x200);
+ QueueTilesetAnimDma(gTilesetAnims_MauvilleGym0[v1], BG_TILE_ADDR(164), 0x200);
}
static void sub_80739EC(u16 a1)
{
int v1;
v1 = a1 % 2;
- QueueTilesetAnimDma(gTilesetAnimTable_BikeShop[v1], BG_TILE_ADDR(252), 0x120);
+ QueueTilesetAnimDma(gTilesetAnims_BikeShop0[v1], BG_TILE_ADDR(252), 0x120);
}
diff --git a/src/time_events.c b/src/time_events.c
index 4bd732788..d3acdaf2f 100644
--- a/src/time_events.c
+++ b/src/time_events.c
@@ -81,7 +81,7 @@ void UpdateShoalTideFlag(void)
1,
};
- if (is_map_type_1_2_3_5_or_6(get_map_type_from_warp0()))
+ if (is_map_type_1_2_3_5_or_6(GetLastUsedWarpMapType()))
{
RtcCalcLocalTime();
if (tide[gLocalTime.hours])
diff --git a/src/trade.c b/src/trade.c
index 8d7f5b1fc..50de29b7f 100644
--- a/src/trade.c
+++ b/src/trade.c
@@ -1208,7 +1208,7 @@ static void sub_8047EC0(void)
sub_8048C70();
gMain.state ++;
nullsub_5(7, 0);
- PlayBGM(BGM_P_SCHOOL);
+ PlayBGM(MUS_P_SCHOOL);
break;
case 14:
sub_804ACF4(1);
@@ -4812,7 +4812,7 @@ static bool8 sub_804C29C(void)
gSprites[gUnknown_03004828->pokePicSpriteIdxs[0]].pos2.y = gMonFrontPicCoords[gUnknown_03004828->tradeSpecies[0]].y_offset;
gUnknown_03004828->unk_00c4 ++;
gUnknown_03004828->unk_0124 = GetCurrentMapMusic();
- PlayBGM(BGM_SHINKA);
+ PlayBGM(MUS_SHINKA);
break;
case 1:
if (gUnknown_03004828->bg2hofs > 0)
@@ -5195,7 +5195,7 @@ static bool8 sub_804C29C(void)
case 68:
if (++ gUnknown_03004828->unk_00c0 == 4)
{
- PlayFanfare(BGM_FANFA5);
+ PlayFanfare(MUS_FANFA5);
}
if (gUnknown_03004828->unk_00c0 == 0xf0)
{
diff --git a/src/wild_encounter.c b/src/wild_encounter.c
index ad11bf566..133f8b3aa 100644
--- a/src/wild_encounter.c
+++ b/src/wild_encounter.c
@@ -3725,7 +3725,7 @@ static u16 GetRoute119WaterTileNum(s16 x, s16 y, u8 section)
for (yCur = yMin; yCur <= yMax; yCur++)
{
- for (xCur = 0; xCur < gMapHeader.mapData->width; xCur++)
+ for (xCur = 0; xCur < gMapHeader.mapLayout->width; xCur++)
{
if (MetatileBehavior_IsFeebasEncounterable(MapGridGetMetatileBehaviorAt(xCur + 7, yCur + 7)) == TRUE)
{