From 381116b3c4962b7b33a3cd2ebef24aaec7f41caf Mon Sep 17 00:00:00 2001 From: SphericalIce Date: Mon, 22 Feb 2021 15:29:14 +0000 Subject: [PATCH] Add labels for cracked floor metatiles --- include/constants/metatile_labels.h | 3 +++ src/field_tasks.c | 5 ++++- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/include/constants/metatile_labels.h b/include/constants/metatile_labels.h index f7405f46a..836ab6ef2 100644 --- a/include/constants/metatile_labels.h +++ b/include/constants/metatile_labels.h @@ -165,6 +165,8 @@ // gTileset_Cave #define METATILE_Cave_EntranceCover 0x229 +#define METATILE_Cave_CrackedFloor_Hole 0x206 +#define METATILE_Cave_CrackedFloor 0x22F #define METATILE_Cave_SealedChamberEntrance_TopLeft 0x22A #define METATILE_Cave_SealedChamberEntrance_TopMid 0x22B #define METATILE_Cave_SealedChamberEntrance_TopRight 0x22C @@ -191,6 +193,7 @@ #define METATILE_Pacifidlog_HalfSubmergedLogs_Vertical1 0x261 #define METATILE_Pacifidlog_SubmergedLogs_Vertical0 0x25A #define METATILE_Pacifidlog_SubmergedLogs_Vertical1 0x262 +#define METATILE_Pacifidlog_SkyPillar_CrackedFloor_Hole 0x237 #define METATILE_Pacifidlog_SkyPillar_DoorOpen_Top 0x2AA #define METATILE_Pacifidlog_SkyPillar_DoorOpen_Bottom 0x2B2 diff --git a/src/field_tasks.c b/src/field_tasks.c index 002977a10..a68b10966 100644 --- a/src/field_tasks.c +++ b/src/field_tasks.c @@ -635,9 +635,12 @@ static void AshGrassPerStepCallback(u8 taskId) } } +// This function uses the constants for gTileset_Cave's metatile labels, but other tilesets with +// the CrackedFloorPerStepCallback callback use the same metatile numbers for the cracked floor +// and hole metatiles, such as gTileset_MirageTower. static void SetCrackedFloorHoleMetatile(s16 x, s16 y) { - MapGridSetMetatileIdAt(x, y, MapGridGetMetatileIdAt(x, y) == 0x22f ? 0x206 : 0x237);// unsure what these are referring to + MapGridSetMetatileIdAt(x, y, MapGridGetMetatileIdAt(x, y) == METATILE_Cave_CrackedFloor ? METATILE_Cave_CrackedFloor_Hole : METATILE_Pacifidlog_SkyPillar_CrackedFloor_Hole); CurrentMapDrawMetatileAt(x, y); }