summaryrefslogtreecommitdiff
path: root/src/field_tasks.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/field_tasks.c')
-rw-r--r--src/field_tasks.c46
1 files changed, 25 insertions, 21 deletions
diff --git a/src/field_tasks.c b/src/field_tasks.c
index c64fb1924..6bd4b6f46 100644
--- a/src/field_tasks.c
+++ b/src/field_tasks.c
@@ -11,10 +11,14 @@
#include "script.h"
#include "sound.h"
#include "task.h"
+#include "constants/field_tasks.h"
#include "constants/flags.h"
+#include "constants/metatile_labels.h"
#include "constants/songs.h"
#include "constants/vars.h"
+// TODO: Metatile IDs in this file
+
static void DummyPerStepCallback(u8 taskId);
static void AshGrassPerStepCallback(u8 taskId);
static void IcefallCaveIcePerStepCallback(u8 taskId);
@@ -22,27 +26,27 @@ static void CrackedFloorPerStepCallback(u8 taskId);
static const TaskFunc sPerStepCallbacks[] =
{
- DummyPerStepCallback,
- AshGrassPerStepCallback,
- DummyPerStepCallback,
- DummyPerStepCallback,
- IcefallCaveIcePerStepCallback,
- DummyPerStepCallback,
- DummyPerStepCallback,
- CrackedFloorPerStepCallback
+ [STEP_CB_DUMMY] = DummyPerStepCallback,
+ [STEP_CB_ASH] = AshGrassPerStepCallback,
+ [STEP_CB_FORTREE_BRIDGE] = DummyPerStepCallback,
+ [STEP_CB_PACIFIDLOG_BRIDGE] = DummyPerStepCallback,
+ [STEP_CB_ICE] = IcefallCaveIcePerStepCallback,
+ [STEP_CB_TRUCK] = DummyPerStepCallback,
+ [STEP_CB_SECRET_BASE] = DummyPerStepCallback,
+ [STEP_CB_CRACKED_FLOOR] = CrackedFloorPerStepCallback
};
static const u8 sIcefallCaveIceTileCoords[][2] =
{
- { 0x08, 0x03 },
- { 0x0a, 0x05 },
- { 0x0f, 0x05 },
- { 0x08, 0x09 },
- { 0x09, 0x09 },
- { 0x10, 0x09 },
- { 0x08, 0x0a },
- { 0x09, 0x0a },
- { 0x08, 0x0e }
+ { 8, 3 },
+ { 10, 5 },
+ { 15, 5 },
+ { 8, 9 },
+ { 9, 9 },
+ { 16, 9 },
+ { 8, 10 },
+ { 9, 10 },
+ { 8, 14 }
};
static void Task_RunPerStepCallback(u8 taskId)
@@ -134,7 +138,7 @@ static void MarkIcefallCaveCoordVisited(s16 x, s16 y)
}
}
-void Special_SetIcefallCaveCrackedIceMetatiles(void)
+void SetIcefallCaveCrackedIceMetatiles(void)
{
u8 i = 0;
for (; i < NELEMS(sIcefallCaveIceTileCoords); ++i)
@@ -143,7 +147,7 @@ void Special_SetIcefallCaveCrackedIceMetatiles(void)
{
int x = sIcefallCaveIceTileCoords[i][0] + 7;
int y = sIcefallCaveIceTileCoords[i][1] + 7;
- MapGridSetMetatileIdAt(x, y, 0x35a);
+ MapGridSetMetatileIdAt(x, y, METATILE_SeafoamIslands_CrackedIce);
}
}
}
@@ -196,7 +200,7 @@ static void IcefallCaveIcePerStepCallback(u8 taskId)
x = data[4];
y = data[5];
PlaySE(SE_RU_BARI);
- MapGridSetMetatileIdAt(x, y, 0x35a);
+ MapGridSetMetatileIdAt(x, y, METATILE_SeafoamIslands_CrackedIce);
CurrentMapDrawMetatileAt(x, y);
data[1] = 1;
}
@@ -211,7 +215,7 @@ static void IcefallCaveIcePerStepCallback(u8 taskId)
x = data[4];
y = data[5];
PlaySE(SE_RU_GASYAN);
- MapGridSetMetatileIdAt(x, y, 0x35b);
+ MapGridSetMetatileIdAt(x, y, METATILE_SeafoamIslands_IceHole);
CurrentMapDrawMetatileAt(x, y);
VarSet(VAR_TEMP_1, 1);
data[1] = 1;