summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authoroctorock <79596758+octorock@users.noreply.github.com>2022-05-01 11:43:19 +0200
committeroctorock <79596758+octorock@users.noreply.github.com>2022-05-18 13:07:06 +0200
commit60e33b636d7b9dca767b3833ee39affcc626f420 (patch)
tree51d7752fb76f5044028c56404f75c780783d8002 /include
parent3afbd0e9012be95e687ccb36eb62f6df08cded19 (diff)
Rename managers
Diffstat (limited to 'include')
-rw-r--r--include/area.h2
-rw-r--r--include/beanstalkSubtask.h6
-rw-r--r--include/collision.h3
-rw-r--r--include/definitions.h10
-rw-r--r--include/droptables.h6
-rw-r--r--include/effects.h2
-rw-r--r--include/enemy.h2
-rw-r--r--include/entity.h2
-rw-r--r--include/fileselect.h2
-rw-r--r--include/flags.h2
-rw-r--r--include/functions.h4
-rw-r--r--include/gba/syscall.h6
-rw-r--r--include/global.h11
-rw-r--r--include/hitbox.h3
-rw-r--r--include/item.h2
-rw-r--r--include/itemMetaData.h6
-rw-r--r--include/main.h13
-rw-r--r--include/manager.h351
-rw-r--r--include/manager/angryStatueManager.h26
-rw-r--r--include/manager/animatedBackgroundManager.h10
-rw-r--r--include/manager/armosInteriorManager.h10
-rw-r--r--include/manager/bombableWallManager.h18
-rw-r--r--include/manager/bridgeManager.h22
-rw-r--r--include/manager/cameraTargetManager.h18
-rw-r--r--include/manager/cloudOverlayManager.h11
-rw-r--r--include/manager/cloudStaircaseTransitionManager.h17
-rw-r--r--include/manager/delayedEntityLoadManager.h6
-rw-r--r--include/manager/destructibleTileObserveManager.h18
-rw-r--r--include/manager/diggingCaveEntranceManager.h32
-rw-r--r--include/manager/enemyInteractionManager.h13
-rw-r--r--include/manager/enterRoomTextboxManager.h18
-rw-r--r--include/manager/entitySpawnManager.h15
-rw-r--r--include/manager/ezloHintManager.h23
-rw-r--r--include/manager/fallingItemManager.h18
-rw-r--r--include/manager/fightManager.h22
-rw-r--r--include/manager/flagAndOperatorManager.h13
-rw-r--r--include/manager/flameManager.h13
-rw-r--r--include/manager/floatingPlatformManager.h10
-rw-r--r--include/manager/goronMerchantShopManager.h11
-rw-r--r--include/manager/holeManager.h21
-rw-r--r--include/manager/horizontalMinishPathBackgroundManager.h14
-rw-r--r--include/manager/houseSignManager.h11
-rw-r--r--include/manager/hyruleTownBellManager.h10
-rw-r--r--include/manager/hyruleTownTilesetManager.h13
-rw-r--r--include/manager/lightLevelSetManager.h19
-rw-r--r--include/manager/lightManager.h11
-rw-r--r--include/manager/lightRayManager.h17
-rw-r--r--include/manager/manager29.h22
-rw-r--r--include/manager/minishPortalManager.h20
-rw-r--r--include/manager/minishRaftersBackgroundManager.h12
-rw-r--r--include/manager/minishSizedEntranceManager.h11
-rw-r--r--include/manager/minishVillageTilesetManager.h12
-rw-r--r--include/manager/miscManager.h15
-rw-r--r--include/manager/moveableObjectManager.h19
-rw-r--r--include/manager/powBackgroundManager.h10
-rw-r--r--include/manager/pushableFurnitureManager.h23
-rw-r--r--include/manager/railIntersectionManager.h18
-rw-r--r--include/manager/rainfallManager.h10
-rw-r--r--include/manager/regionTriggerManager.h17
-rw-r--r--include/manager/repeatedSoundManager.h10
-rw-r--r--include/manager/rollingBarrelManager.h22
-rw-r--r--include/manager/secretManager.h16
-rw-r--r--include/manager/specialWarpManager.h28
-rw-r--r--include/manager/staticBackgroundManager.h11
-rw-r--r--include/manager/steamOverlayManager.h15
-rw-r--r--include/manager/templeOfDropletsManager.h25
-rw-r--r--include/manager/tileChangeObserveManager.h35
-rw-r--r--include/manager/tilePuzzleManager.h22
-rw-r--r--include/manager/vaati3BackgroundManager.h10
-rw-r--r--include/manager/vaati3InsideArmManager.h11
-rw-r--r--include/manager/vaati3StartManager.h10
-rw-r--r--include/manager/vaatiAppearingManager.h13
-rw-r--r--include/manager/verticalMinishPathBackgroundManager.h13
-rw-r--r--include/manager/waterfallBottomManager.h10
-rw-r--r--include/manager/weatherChangeManager.h15
-rw-r--r--include/map.h5
-rw-r--r--include/menu.h2
-rw-r--r--include/new_player.h2
-rw-r--r--include/npc.h2
-rw-r--r--include/object.h2
-rw-r--r--include/object/deathFx.h6
-rw-r--r--include/physics.h7
-rw-r--r--include/player.h2
-rw-r--r--include/playeritem.h2
-rw-r--r--include/projectile.h2
-rw-r--r--include/projectile/winder.h6
-rw-r--r--include/room.h2
-rw-r--r--include/roomid.h6
-rw-r--r--include/save.h2
-rw-r--r--include/screen.h6
-rw-r--r--include/script.h3
-rw-r--r--include/scroll.h9
-rw-r--r--include/sprite.h2
-rw-r--r--include/structures.h2
-rw-r--r--include/transitions.h7
-rw-r--r--include/ui.h2
96 files changed, 1141 insertions, 286 deletions
diff --git a/include/area.h b/include/area.h
index 30efcb1f..d8be7fc1 100644
--- a/include/area.h
+++ b/include/area.h
@@ -240,4 +240,4 @@ typedef enum {
AREA_98,
} AreaID;
-#endif
+#endif // AREA_H
diff --git a/include/beanstalkSubtask.h b/include/beanstalkSubtask.h
index 8735475a..e8d6c3b2 100644
--- a/include/beanstalkSubtask.h
+++ b/include/beanstalkSubtask.h
@@ -1,5 +1,5 @@
-#ifndef BEANSTALK_SUBTASK_H
-#define BEANSTALK_SUBTASK_H
+#ifndef BEANSTALKSUBTASK_H
+#define BEANSTALKSUBTASK_H
#include "global.h"
@@ -33,4 +33,4 @@ typedef struct {
#define MAX_BG_ANIMATIONS 8
extern BgAnimation gBgAnimations[MAX_BG_ANIMATIONS];
-#endif // BEANSTALK_SUBTASK_H \ No newline at end of file
+#endif // BEANSTALKSUBTASK_H
diff --git a/include/collision.h b/include/collision.h
index 4a591e6a..9e17ae2d 100644
--- a/include/collision.h
+++ b/include/collision.h
@@ -1,4 +1,3 @@
-
#ifndef COLLISION_H
#define COLLISION_H
@@ -32,4 +31,4 @@ bool32 IsCollidingPlayer(Entity*);
void CalculateEntityTileCollisions(Entity*, u32, u32);
bool32 ProcessMovementInternal(Entity*, s32, s32, u32);
-#endif
+#endif // COLLISION_H
diff --git a/include/definitions.h b/include/definitions.h
index 7a18b709..978b3a31 100644
--- a/include/definitions.h
+++ b/include/definitions.h
@@ -1,5 +1,5 @@
-#ifndef SPRITEDATA_H
-#define SPRITEDATA_H
+#ifndef DEFINITIONS_H
+#define DEFINITIONS_H
#include "gba/types.h"
#include "entity.h"
@@ -436,7 +436,7 @@ typedef enum {
SPRITE_FILESCREENOBJECTS,
SPRITE_OBJECTA2,
SPRITE_OBJECT6A_10,
- SPRITE_VAATI_1,
-
+ SPRITE_VAATI_1
} Sprites;
-#endif \ No newline at end of file
+
+#endif // DEFINITIONS_H
diff --git a/include/droptables.h b/include/droptables.h
index 78d75970..63213f98 100644
--- a/include/droptables.h
+++ b/include/droptables.h
@@ -1,5 +1,5 @@
-#ifndef TMC_DROPTABLES_H
-#define TMC_DROPTABLES_H
+#ifndef DROPTABLES_H
+#define DROPTABLES_H
#include "global.h"
@@ -37,4 +37,4 @@ enum {
};
extern const Droptable gDroptableModifiers[];
-#endif // TMC_DROPTABLES_H
+#endif // DROPTABLES_H
diff --git a/include/effects.h b/include/effects.h
index 95ad4105..396f4eaf 100644
--- a/include/effects.h
+++ b/include/effects.h
@@ -112,7 +112,7 @@ typedef enum {
FX_69,
FX_6A,
FX_6B,
- FX_6C,
+ FX_6C
} Effect;
#endif // EFFECTS_H
diff --git a/include/enemy.h b/include/enemy.h
index a392ee82..7183030a 100644
--- a/include/enemy.h
+++ b/include/enemy.h
@@ -253,4 +253,4 @@ void Enemy66(Entity*);
extern void (*const gUnk_080012C8[])(Entity*);
-#endif
+#endif // ENEMY_H
diff --git a/include/entity.h b/include/entity.h
index 30bc9a75..ddeef86c 100644
--- a/include/entity.h
+++ b/include/entity.h
@@ -526,6 +526,8 @@ extern u8 gManagerCount;
/** @name Tile Macros */ /// @{
#define TILE(x, y) (((((x)-gRoomControls.origin_x) >> 4) & 0x3F) | ((((y)-gRoomControls.origin_y) >> 4) & 0x3F) << 6)
#define TILE_POS(x, y) (x + (y << 6))
+#define TILE_POS_X_COMPONENT 0x3f
+#define TILE_POS_Y_COMPONENT 0xfc0
#define COORD_TO_TILE(entity) TILE((entity)->x.HALF.HI, (entity)->y.HALF.HI)
#define COORD_TO_TILE_OFFSET(entity, xOff, yOff) TILE((entity)->x.HALF.HI - (xOff), (entity)->y.HALF.HI - (yOff))
/// @}
diff --git a/include/fileselect.h b/include/fileselect.h
index f6a2547d..c1868b2b 100644
--- a/include/fileselect.h
+++ b/include/fileselect.h
@@ -72,4 +72,4 @@ extern u32 gUsedPalettes;
extern u8 gTextGfxBuffer[];
extern u8 gUnk_02022030;
-#endif \ No newline at end of file
+#endif // FILESELECT_H \ No newline at end of file
diff --git a/include/flags.h b/include/flags.h
index 1ee02ce7..681e1b8c 100644
--- a/include/flags.h
+++ b/include/flags.h
@@ -1741,4 +1741,4 @@ typedef enum {
END_12,
} LocalFlags12;
-#endif
+#endif // FLAGS_H
diff --git a/include/functions.h b/include/functions.h
index 10d18e30..18cc67e7 100644
--- a/include/functions.h
+++ b/include/functions.h
@@ -1,4 +1,3 @@
-
#ifndef FUNCTIONS_H
#define FUNCTIONS_H
@@ -112,4 +111,5 @@ extern void sub_080A57F4(void);
extern void sub_080A71C4(u32, u32, u32, u32);
extern void sub_080ADD70(void);
extern void sub_080AF284(void);
-#endif
+
+#endif // FUNCTIONS_H
diff --git a/include/gba/syscall.h b/include/gba/syscall.h
index eca78eb4..48f35863 100644
--- a/include/gba/syscall.h
+++ b/include/gba/syscall.h
@@ -1,5 +1,5 @@
-#ifndef GUARD_GBA_SYSCALL_H
-#define GUARD_GBA_SYSCALL_H
+#ifndef SYSCALL_H
+#define SYSCALL_H
#include "types.h"
@@ -62,4 +62,4 @@ int MultiBoot(struct MultiBootParam* mp);
s32 Div(s32 num, s32 denom);
-#endif // GUARD_GBA_SYSCALL_H
+#endif // SYSCALL_H
diff --git a/include/global.h b/include/global.h
index 5664b1f5..08ef97f4 100644
--- a/include/global.h
+++ b/include/global.h
@@ -1,12 +1,14 @@
-#ifndef GUARD_GLOBAL_H
-#define GUARD_GLOBAL_H
+#ifndef GLOBAL_H
+#define GLOBAL_H
/**
* @defgroup Tasks Tasks
* @defgroup Subtasks Subtasks
*/
-/** @defgroup Entities Entities */
+/**
+ * @defgroup Entities Entities
+ */
///@{
/**
* @defgroup Player Player
@@ -16,6 +18,7 @@
* @defgroup NPCs NPCs
* @defgroup Items Items
* @defgroup Managers Managers
+ * @brief Entities with a smaller footprint of 0x40 bytes
*/
///@}
@@ -122,4 +125,4 @@ union SplitHWord {
/* forward decls */
struct Entity_;
-#endif // GUARD_GLOBAL_H
+#endif // GLOBAL_H
diff --git a/include/hitbox.h b/include/hitbox.h
index 0426c992..b2b601ea 100644
--- a/include/hitbox.h
+++ b/include/hitbox.h
@@ -137,4 +137,5 @@ extern const Hitbox gUnk_080FD580;
extern const Hitbox gUnk_080FD588;
extern const Hitbox gPlayerHitbox;
-#endif
+
+#endif // HITBOX_H
diff --git a/include/item.h b/include/item.h
index 20516e0f..e8e3917c 100644
--- a/include/item.h
+++ b/include/item.h
@@ -151,4 +151,4 @@ typedef enum {
ITEM_ENEMY_BEETLE
} Item;
-#endif
+#endif // ITEM_H
diff --git a/include/itemMetaData.h b/include/itemMetaData.h
index 805a204f..fca0ef69 100644
--- a/include/itemMetaData.h
+++ b/include/itemMetaData.h
@@ -1,5 +1,5 @@
-#ifndef TMC_ITEMMETADATA_H
-#define TMC_ITEMMETADATA_H
+#ifndef ITEMMETADATA_H
+#define ITEMMETADATA_H
#include "global.h"
@@ -38,4 +38,4 @@ typedef struct ItemMetaData {
extern const ItemMetaData gItemMetaData[];
-#endif // TMC_ITEMMETADATA_H
+#endif // ITEMMETADATA_H
diff --git a/include/main.h b/include/main.h
index 134ca8e0..3017b9ab 100644
--- a/include/main.h
+++ b/include/main.h
@@ -5,6 +5,7 @@
#include "structures.h"
#include "room.h"
#include "script.h"
+#include "screen.h"
/** File signature */
#define SIGNATURE 'MCZ3'
@@ -86,8 +87,8 @@ typedef struct {
/*0x00E*/ u8 unk_e;
/*0x00F*/ u8 unk_f;
/*0x010*/ void** currentRoomProperties;
- /*0x014*/ u16* mapBottomBgControlPtr;
- /*0x018*/ u16* mapTopBgControlPtr;
+ /*0x014*/ BgSettings* mapBottomBgSettings;
+ /*0x018*/ BgSettings* mapTopBgSettings;
/*0x01C*/ RoomControls roomControls;
/*0x054*/ GfxSlotList gfxSlotList;
/*0x268*/ Palette palettes[0x10];
@@ -126,7 +127,7 @@ void DoSoftReset(void);
*/
void SetSleepMode(void);
-extern void sub_0805622C(void* a1, u32 a2, u32 a3);
+extern void sub_0805622C(struct BgAffineDstData* a1, u32 a2, u32 a3);
extern void sub_08056208(void);
extern void ResetPalettes(void);
extern void VBlankIntrWait();
@@ -151,7 +152,9 @@ extern void DemoTask(void);
#endif
/// @}
-extern u8 gUnk_03003DE4;
+extern u8 gUnk_03003DE4[0xC];
extern u16 gPaletteBuffer[];
-#endif
+extern u32 CheckRegionsOnScreen(const u16* arr);
+
+#endif // MAIN_H
diff --git a/include/manager.h b/include/manager.h
index 94df1639..ac43dd63 100644
--- a/include/manager.h
+++ b/include/manager.h
@@ -12,224 +12,143 @@ union SplitSHWord {
} PACKED;
typedef struct Manager {
- /*0x00*/ struct Manager* prev;
- /*0x00*/ struct Manager* next;
- /*0x08*/ u8 type;
- /*0x09*/ u8 subtype;
- /*0x0a*/ u8 unk_0a;
- /*0x0b*/ u8 unk_0b;
- /*0x0c*/ u8 action;
- /*0x0d*/ u8 unk_0d;
- /*0x0e*/ u8 unk_0e;
- /*0x0f*/ u8 unk_0f;
- /*0x10*/ u8 unk_10;
- /*0x11*/ u8 unk_11[3];
- /*0x14*/ struct Manager* parent;
- /*0x18*/ u8 unk_18[0x8];
- // union SplitHWord y;
- // u16 unk_22;
- // u16 unk_24;
- // u16 unk_26;
- // u8 unk_28[0x0D];
- // u8 unk_35;
- // u16 unk_36;
- // union SplitSHWord unk_38;
- // union SplitSHWord unk_3a;
- // u16 unk_3c;
- // u16 unk_3e;
+ /*0x00*/ struct Manager* prev; /**< previous Manager */
+ /*0x00*/ struct Manager* next; /**< next Manager */
+ /*0x08*/ u8 kind; /**< @see EntityKind */
+ /*0x09*/ u8 id; /**< Manager id. @see Managers */
+ /*0x0a*/ u8 type; /**< For use internally to allow different variations. */
+ /*0x0b*/ u8 type2; /**< For use internally. */
+ /*0x0c*/ u8 action; /**< Current action. Usually used to index a function table. */
+ /*0x0d*/ u8 subAction; /**< Optional sub-action. */
+ /*0x0e*/ u8 timer; /**< General purpose timer. */
+ /*0x0f*/ u8 subtimer; /**< General purpose timer. */
+ /*0x10*/ u8 flags; /**< @see EntityFlags */
+ /*0x11*/ u8 unused[3]; /**< Not used by any manager. */
+ /*0x14*/ Entity* parent; /**< Parent Entity. */
+ /*0x18*/ Entity* child; /**< Child Entity. */
+ /*0x1c*/ u8 unused2[0x4]; /**< Not used by any manager. */
} Manager;
-typedef struct {
- u16 posX;
- u16 posY;
- u8 width;
- u8 height;
- u8 unk_06;
- union {
- u8 all;
- struct {
- u8 layer : 2;
- u8 unk1 : 2;
- u8 unk2 : 1;
- u8 unk3 : 3;
- } PACKED b;
- } PACKED unk_07;
-} Manager6WarpData;
-
-typedef struct {
- Manager manager;
- Manager6WarpData* warpList;
-} Manager6;
-
-typedef struct {
- Manager manager;
- u16 x;
- u16 y;
- u16 rx;
- u16 ry;
- u8 unk_28[13];
- u8 msg_height;
- u16 msg_idx;
- u8 x_raw;
- u8 y_raw;
- u8 rx_raw;
- u8 ry_raw;
- u16 flag1;
- u16 flag2;
-} ManagerA;
-
-typedef struct {
- Manager manager;
- u8 unk_20;
- u8 unk_21[0x14];
- u8 unk_35;
- u8 unk_36[0x4];
- u16 unk_3a;
- u16 unk_3c;
- u16 unk_3e;
-} ManagerB;
-
-typedef struct {
- Manager manager;
- Entity* enemies[8];
-} ManagerBHelper;
-
-typedef struct {
- Manager manager;
- u8 unk_20[0x18];
- s16 unk_38;
- s16 unk_3a;
- u16 unk_3c;
- u16 unk_3e;
-} ManagerE;
-
-typedef struct {
- Manager manager;
- u8 unk_20[0x18];
- s16 unk_38;
- s16 unk_3a;
- u16 unk_3c;
- u16 unk_3e;
-} ManagerF;
-
-typedef struct {
- Manager manager;
- u8 unk_20;
- u8 unk_21;
- u8 unk_22;
- u8 unk_23;
- u8 filler_0x24[0x1C];
-} Manager10;
-
-typedef struct Manager11 {
- Manager manager;
- u8 unk_20[0x1C];
- u16 unk_3c;
- u16 unk_3e;
-} Manager11;
-
-typedef struct {
- u16 unk_00;
- u8 source_room;
- u8 unk_03;
- u8 target_area;
- u8 target_room;
- u16 unk_06;
-} DiggingCaveEntrance;
-
-typedef struct {
- const DiggingCaveEntrance* unk_00;
- u16 unk_04;
- u16 unk_06;
- u8 isDiggingCave;
- u8 unk_09;
- u8 unk_0a;
- u8 unk_0b;
-} struct_03004030;
-extern struct_03004030 gUnk_03004030;
-
-extern const DiggingCaveEntrance* const diggingCaveEntrances[];
-
-typedef struct {
- Manager manager;
- u8 field_0x20[0x15];
- u8 field_0x35;
- u8 field_0x36;
- u8 field_0x37;
- s16 x;
- u16 y;
- u16 tile;
- u16 field_0x3e;
-} Manager24;
-
-typedef struct {
- u8 unk_00;
- u8 unk_01;
- u8 unk_02;
- u8 unk_03;
- u16 unk_04;
- u16 unk_06;
-} UnkManager26HelperStruct;
-
-extern void Manager1_Main();
-extern void Manager2_Main();
-extern void Manager3_Main();
-extern void Manager4_Main();
-extern void Manager5_Main();
-extern void Manager6_Main();
-extern void Manager7_Main();
-extern void Manager8_Main();
-extern void Manager9_Main();
-extern void ManagerA_Main();
-extern void ManagerB_Main();
-extern void ManagerC_Main();
-extern void ManagerD_Main();
-extern void ManagerE_Main();
-extern void sub_08058ECC(ManagerF*);
-extern void Manager10_Main(Manager10*);
-extern void Manager11_Main(Manager11*);
-extern void Manager12_Main();
-extern void Manager13_Main();
-extern void Manager14_Main();
-extern void Manager15_Main();
-extern void Manager16_Main();
-extern void Manager17_Main();
-extern void Manager18_Main();
-extern void Manager19_Main();
-extern void Manager1A_Main();
-extern void Manager1B_Main();
-extern void Manager1C_Main(Manager*);
-extern void Manager1D_Main();
-extern void Manager1E_Main();
-extern void Manager1F_Main();
-extern void Manager20_Main();
-extern void Manager21_Main();
-extern void Manager22_Main();
-extern void Manager23_Main();
-extern void Manager24_Main();
-extern void Manager25_Main();
-extern void Manager26_Main();
-extern void Manager27_Main();
-extern void Manager28_Main();
+typedef enum {
+ MANAGER_NONE,
+ LIGHT_RAY_MANAGER,
+ VERTICAL_MINISH_PATH_BACKGROUND_MANAGER,
+ MINISH_PORTAL_MANAGER,
+ DIGGING_CAVE_ENTRANCE_MANAGER,
+ BRIDGE_MANAGER,
+ SPECIAL_WARP_MANAGER,
+ MINISH_VILLAGE_MANAGER,
+ HORIZONTAL_MINISH_PATH_BACKGROUND_MANAGER,
+ MINISH_RAFTERS_BACKGROUND_MANAGER,
+ EZLO_HINT_MANAGER,
+ FIGHT_MANAGER,
+ ROLLING_BARREL_MANAGER,
+ TILE_CHANGE_OBSERVE_MANAGER,
+ ENTITY_SPAWN_MANAGER,
+ MISC_MANAGER,
+ WEATHER_CHANGE_MANAGER,
+ FLAG_AND_OPERATOR_MANAGER,
+ HYRULE_TOWN_TILESET_MANAGER,
+ HOUSE_SIGN_MANAGER,
+ STEAM_OVERLAY_MANAGER,
+ TEMPLE_OF_DROPLETS_MANAGER,
+ DELAYED_ENTITY_LOAD_MANAGER,
+ FALLING_ITEM_MANAGER,
+ CLOUD_OVERLAY_MANAGER,
+ POW_BACKGROUND_MANAGER,
+ HOLE_MANAGER,
+ STATIC_BACKGROUND_MANAGER,
+ RAINFALL_MANAGER,
+ ANIMATED_BACKGROUND_MANAGER,
+ REGION_TRIGGER_MANAGER,
+ RAIL_INTERSECTION_MANAGER,
+ MOVEABLE_OBJECT_MANAGER,
+ MINISH_SIZED_ENTRANCE_MANAGER,
+ LIGHT_MANAGER,
+ LIGHT_LEVEL_SET_MANAGER,
+ BOMBABLE_WALL_MANAGER,
+ FLAME_MANAGER,
+ PUSHABLE_FURNITURE_MANAGER,
+ ARMOS_INTERIOR_MANAGER,
+ ENEMY_INTERACTION_MANAGER,
+ MANAGER_29,
+ DESTRUCTIBLE_TILE_OBSERVE_MANAGER,
+ ANGRY_STATUE_MANAGER,
+ CLOUD_STAIRCASE_TRANSITION_MANAGER,
+ WATERFALL_BOTTOM_MANAGER,
+ SECRET_MANAGER,
+ VAATI3_BACKGROUND_MANAGER,
+ TILE_PUZZLE_MANAGER,
+ GORON_MERCHANT_SHOP_MANAGER,
+ VAATI_APPARATE_MANAGER,
+ HYRULE_TOWN_BELL_MANAGER,
+ VAATI3_INSIDE_ARM_MANAGER,
+ CAMERA_TARGET_MANAGER,
+ REPEATED_SOUND_MANAGER,
+ VAATI3_START_MANAGER,
+ FLOATING_PLATFORM_MANAGER,
+ ENTER_ROOM_TEXTBOX_MANAGER
+} Managers;
+
+extern void LightRayManager_Main();
+extern void VerticalMinishPathBackgroundManager_Main();
+extern void MinishPortalManager_Main();
+extern void DiggingCaveEntranceManager_Main();
+extern void BridgeManager_Main();
+extern void SpecialWarpManager_Main();
+extern void MinishVillageTilesetManager_Main();
+extern void HorizontalMinishPathBackgroundManager_Main();
+extern void MinishRaftersBackgroundManager_Main();
+extern void EzloHintManager_Main();
+extern void FightManager_Main();
+extern void RollingBarrelManager_Main();
+extern void TileChangeObserveManager_Main();
+extern void EntitySpawnManager_Main();
+extern void MiscManager_Main();
+extern void WeatherChangeManager_Main();
+extern void FlagAndOperatorManager_Main();
+extern void HyruleTownTilesetManager_Main();
+extern void HouseSignManager_Main();
+extern void SteamOverlayManager_Main();
+extern void TempleOfDropletsManager_Main();
+extern void DelayedEntityLoadManager_Main();
+extern void FallingItemManager_Main();
+extern void CloudOverlayManager_Main();
+extern void PowBackgroundManager_Main();
+extern void HoleManager_Main();
+extern void StaticBackgroundManager_Main();
+extern void RainfallManager_Main();
+extern void AnimatedBackgroundManager_Main();
+extern void RegionTriggerManager_Main();
+extern void RailIntersectionManager_Main();
+extern void MoveableObjectManager_Main();
+extern void MinishSizedEntranceManager_Main();
+extern void LightManager_Main();
+extern void LightLevelSetManager_Main();
+extern void BombableWallManager_Main();
+extern void FlameManager_Main();
+extern void PushableFurnitureManager_Main();
+extern void ArmosInteriorManager_Main();
+extern void EnemyInteractionManager_Main();
extern void Manager29_Main();
-extern void Manager2A_Main(Manager*);
-extern void Manager2B_Main();
-extern void Manager2C_Main();
-extern void Manager2D_Main(Entity*);
-extern void Manager2E_Main();
-extern void Manager2F_Main();
-extern void Manager30_Main();
-extern void Manager31_Main();
-extern void Manager32_Main();
-extern void Manager33_Main();
-extern void Manager34_Main();
-extern void Manager35_Main();
-extern void Manager36_Main(Manager*);
-extern void Manager37_Main();
-extern void Manager38_Main(Entity*);
-extern void Manager39_Main();
-
-extern void (*const gManagerFunctions[58])();
+extern void DestructibleTileObserveManager_Main();
+extern void AngryStatueManager_Main();
+extern void CloudStaircaseTransitionManager_Main();
+extern void WaterfallBottomManager_Main();
+extern void SecretManager_Main();
+extern void Vaati3BackgroundManager_Main();
+extern void TilePuzzleManager_Main();
+extern void GoronMerchantShopManager_Main();
+extern void VaatiAppearingManager_Main();
+extern void HyruleTownBellManager_Main();
+extern void Vaati3InsideArmManager_Main();
+extern void CameraTargetManager_Main();
+extern void RepeatedSoundManager_Main();
+extern void Vaati3StartManager_Main();
+extern void FloatingPlatformManager_Main();
+extern void EnterRoomTextboxManager_Main();
+
+extern void (*const gMiscManagerunctions[58])();
Manager* GetEmptyManager(void);
@@ -242,4 +161,4 @@ extern u32 sub_0805ACC0(Entity*);
extern void sub_0801855C(void);
extern void sub_080186C0(u32);
-#endif
+#endif // MANAGER_H
diff --git a/include/manager/angryStatueManager.h b/include/manager/angryStatueManager.h
new file mode 100644
index 00000000..b2b3f9c8
--- /dev/null
+++ b/include/manager/angryStatueManager.h
@@ -0,0 +1,26 @@
+#ifndef ANGRYSTATUEMANAGER_H
+#define ANGRYSTATUEMANAGER_H
+
+#include "manager.h"
+
+typedef struct {
+ Manager base;
+ Entity* field_0x20[4];
+ u8 field_0x30;
+ u8 field_0x31;
+ u8 field_0x32;
+ u8 field_0x33;
+ u8 field_0x34;
+ u8 field_0x35;
+ u8 field_0x36;
+ u8 field_0x37;
+ u8 field_0x38;
+ u8 field_0x39;
+ u8 field_0x3a;
+ u8 field_0x3b;
+ u8 field_0x3c;
+ u8 field_0x3d;
+ u16 field_0x3e;
+} AngryStatueManager;
+
+#endif // ANGRYSTATUEMANAGER_H
diff --git a/include/manager/animatedBackgroundManager.h b/include/manager/animatedBackgroundManager.h
new file mode 100644
index 00000000..c5807445
--- /dev/null
+++ b/include/manager/animatedBackgroundManager.h
@@ -0,0 +1,10 @@
+#ifndef ANIMATEDBACKGROUNDMANAGER_H
+#define ANIMATEDBACKGROUNDMANAGER_H
+
+#include "manager.h"
+
+typedef struct {
+ Manager base;
+} AnimatedBackgroundManager;
+
+#endif // ANIMATEDBACKGROUNDMANAGER_H
diff --git a/include/manager/armosInteriorManager.h b/include/manager/armosInteriorManager.h
new file mode 100644
index 00000000..09ff6c96
--- /dev/null
+++ b/include/manager/armosInteriorManager.h
@@ -0,0 +1,10 @@
+#ifndef ARMOSINTERIORMANAGER_H
+#define ARMOSINTERIORMANAGER_H
+
+#include "manager.h"
+
+typedef struct {
+ Manager base;
+} ArmosInteriorManager;
+
+#endif // ARMOSINTERIORMANAGER_H
diff --git a/include/manager/bombableWallManager.h b/include/manager/bombableWallManager.h
new file mode 100644
index 00000000..8d41bde4
--- /dev/null
+++ b/include/manager/bombableWallManager.h
@@ -0,0 +1,18 @@
+#ifndef BOMBABLEWALLMANAGER_H
+#define BOMBABLEWALLMANAGER_H
+
+#include "manager.h"
+
+typedef struct {
+ Manager base;
+ u8 field_0x20[0x15];
+ u8 field_0x35;
+ u8 field_0x36;
+ u8 field_0x37;
+ s16 x;
+ u16 y;
+ u16 tile;
+ u16 field_0x3e;
+} BombableWallManager;
+
+#endif // BOMBABLEWALLMANAGER_H
diff --git a/include/manager/bridgeManager.h b/include/manager/bridgeManager.h
new file mode 100644
index 00000000..aab1f1ab
--- /dev/null
+++ b/include/manager/bridgeManager.h
@@ -0,0 +1,22 @@
+#ifndef BRIDGEMANAGER_H
+#define BRIDGEMANAGER_H
+
+#include "manager.h"
+
+typedef struct {
+ Manager base;
+ u8 unk_20[0x08];
+ u16 unk_28;
+ u16 unk_2a;
+ u16 unk_2c;
+ u16 unk_2e;
+ u16 unk_30;
+ u16 unk_32;
+ u8 unk_34[0x04];
+ s16 x;
+ s16 y;
+ u16 unk_3c;
+ u16 flags;
+} BridgeManager;
+
+#endif // BRIDGEMANAGER_H
diff --git a/include/manager/cameraTargetManager.h b/include/manager/cameraTargetManager.h
new file mode 100644
index 00000000..156dad8f
--- /dev/null
+++ b/include/manager/cameraTargetManager.h
@@ -0,0 +1,18 @@
+#ifndef CAMERATARGETMANAGER_H
+#define CAMERATARGETMANAGER_H
+
+#include "manager.h"
+
+typedef struct {
+ Manager base;
+ u8 field_0x20[0x15];
+ u8 field_0x35;
+ u8 field_0x36;
+ u8 field_0x37;
+ s16 field_0x38;
+ s16 field_0x3a;
+ u16 field_0x3c;
+ u16 field_0x3e;
+} CameraTargetManager;
+
+#endif // CAMERATARGETMANAGER_H
diff --git a/include/manager/cloudOverlayManager.h b/include/manager/cloudOverlayManager.h
new file mode 100644
index 00000000..e4b9ae71
--- /dev/null
+++ b/include/manager/cloudOverlayManager.h
@@ -0,0 +1,11 @@
+#ifndef CLOUDOVERLAYMANAGER_H
+#define CLOUDOVERLAYMANAGER_H
+
+#include "manager.h"
+
+typedef struct {
+ Manager base;
+ u16 field_0x20;
+} CloudOverlayManager;
+
+#endif // CLOUDOVERLAYMANAGER_H
diff --git a/include/manager/cloudStaircaseTransitionManager.h b/include/manager/cloudStaircaseTransitionManager.h
new file mode 100644
index 00000000..3a276801
--- /dev/null
+++ b/include/manager/cloudStaircaseTransitionManager.h
@@ -0,0 +1,17 @@
+#ifndef CLOUDSTAIRCASETRANSITIONMANAGER_H
+#define CLOUDSTAIRCASETRANSITIONMANAGER_H
+
+#include "manager.h"
+
+typedef struct {
+ struct Manager base;
+ u8 field_0x20[0x16];
+ u8 field_0x36;
+ u8 field_0x37;
+ s16 x;
+ s16 y;
+ u16 field_0x3c;
+ u16 field_0x3e;
+} CloudStaircaseTransitionManager;
+
+#endif // CLOUDSTAIRCASETRANSITIONMANAGER_H
diff --git a/include/manager/delayedEntityLoadManager.h b/include/manager/delayedEntityLoadManager.h
new file mode 100644
index 00000000..4546090b
--- /dev/null
+++ b/include/manager/delayedEntityLoadManager.h
@@ -0,0 +1,6 @@
+#ifndef DELAYEDENTITYLOADMANAGER_H
+#define DELAYEDENTITYLOADMANAGER_H
+
+#include "manager.h"
+
+#endif // DELAYEDENTITYLOADMANAGER_H
diff --git a/include/manager/destructibleTileObserveManager.h b/include/manager/destructibleTileObserveManager.h
new file mode 100644
index 00000000..7a60c768
--- /dev/null
+++ b/include/manager/destructibleTileObserveManager.h
@@ -0,0 +1,18 @@
+#ifndef DESTRUCTIBLETILEOBSERVEMANAGER_H
+#define DESTRUCTIBLETILEOBSERVEMANAGER_H
+
+#include "manager.h"
+
+typedef struct {
+ Manager base;
+} DestructibleTileObserveManager;
+
+typedef struct {
+ u8 field_0x0;
+ u8 tileLayer;
+ u16 flag;
+ u16 tilePos;
+ u16 tileType; // If the tile type at tilePos, tileLayer is tileType, set the local flag.
+} DestructibleTileObserveManager_unk; // TODO result of GetCurrentRoomProperty(3)?
+
+#endif // DESTRUCTIBLETILEOBSERVEMANAGER_H
diff --git a/include/manager/diggingCaveEntranceManager.h b/include/manager/diggingCaveEntranceManager.h
new file mode 100644
index 00000000..6f9c8914
--- /dev/null
+++ b/include/manager/diggingCaveEntranceManager.h
@@ -0,0 +1,32 @@
+#ifndef DIGGINGCAVEENTRANCEMANAGER_H
+#define DIGGINGCAVEENTRANCEMANAGER_H
+
+#include "manager.h"
+
+typedef struct {
+ Manager base;
+} DiggingCaveEntranceManager;
+
+typedef struct {
+ u16 sourceTilePosition; /**< Tile position for the entrance in the source room. */
+ u8 sourceRoom;
+ u8 type; // TODO some sort of type that is used to index gUnk_08109194
+ u8 targetArea;
+ u8 targetRoom;
+ u16 targetTilePosition; /**< Tile position for the entrance in the target room. */
+} DiggingCaveEntrance;
+
+typedef struct {
+ const DiggingCaveEntrance* entrance;
+ u16 offsetX; /**< X offset from the player to the entrance. */
+ u16 offsetY; /**< Y offset from the player to the entrance. */
+ bool8 isDiggingCave;
+ u8 currentArea; /**< Area the player was in before the transition. */
+ u8 previousArea; /**< Previous value of currentArea. */
+ u8 targetRoom; /**< targetRoom | 0x80 ? */
+} DiggingCaveEntranceTransition;
+extern DiggingCaveEntranceTransition gDiggingCaveEntranceTransition;
+
+extern const DiggingCaveEntrance* const diggingCaveEntrances[];
+
+#endif // DIGGINGCAVEENTRANCEMANAGER_H
diff --git a/include/manager/enemyInteractionManager.h b/include/manager/enemyInteractionManager.h
new file mode 100644
index 00000000..8356ecdb
--- /dev/null
+++ b/include/manager/enemyInteractionManager.h
@@ -0,0 +1,13 @@
+#ifndef ENEMYINTERACTIONMANAGER_H
+#define ENEMYINTERACTIONMANAGER_H
+
+#include "manager.h"
+
+typedef struct {
+ Manager base;
+ struct {
+ Entity* enemies[8];
+ } d;
+} EnemyInteractionManager;
+
+#endif // ENEMYINTERACTIONMANAGER_H
diff --git a/include/manager/enterRoomTextboxManager.h b/include/manager/enterRoomTextboxManager.h
new file mode 100644
index 00000000..f823a612
--- /dev/null
+++ b/include/manager/enterRoomTextboxManager.h
@@ -0,0 +1,18 @@
+#ifndef ENTERROOMTEXTBOXMANAGER_H
+#define ENTERROOMTEXTBOXMANAGER_H
+
+#include "manager.h"
+
+typedef struct {
+ Manager base;
+ u8 unk_20; // unused
+ u8 unk_21[0x13]; // unused
+ u16 unk_34; // unused
+ u16 unk_36; // unused
+ s16 unk_38; // unused
+ s16 unk_3A; // unused
+ u16 unk_3C; // unused
+ u16 unk_3E; // unused
+} EnterRoomTextboxManager;
+
+#endif // ENTERROOMTEXTBOXMANAGER_H
diff --git a/include/manager/entitySpawnManager.h b/include/manager/entitySpawnManager.h
new file mode 100644
index 00000000..02abba52
--- /dev/null
+++ b/include/manager/entitySpawnManager.h
@@ -0,0 +1,15 @@
+#ifndef ENTITYSPAWNMANAGER_H
+#define ENTITYSPAWNMANAGER_H
+
+#include "manager.h"
+
+typedef struct {
+ Manager base;
+ u8 unk_20[0x18];
+ s16 sound;
+ s16 spawnTimer; /**< Timer until the entity list is loaded. */
+ u16 unk_3c;
+ u16 flag;
+} EntitySpawnManager;
+
+#endif // ENTITYSPAWNMANAGER_H
diff --git a/include/manager/ezloHintManager.h b/include/manager/ezloHintManager.h
new file mode 100644
index 00000000..a06ea474
--- /dev/null
+++ b/include/manager/ezloHintManager.h
@@ -0,0 +1,23 @@
+#ifndef EZLOHINTMANAGER_H
+#define EZLOHINTMANAGER_H
+
+#include "manager.h"
+
+typedef struct {
+ Manager base;
+ u16 x;
+ u16 y;
+ u16 rx;
+ u16 ry;
+ u8 unk_28[13];
+ u8 msg_height;
+ u16 msg_idx;
+ u8 x_raw;
+ u8 y_raw;
+ u8 rx_raw;
+ u8 ry_raw;
+ u16 flag1;
+ u16 flag2;
+} EzloHintManager;
+
+#endif // EZLOHINTMANAGER_H
diff --git a/include/manager/fallingItemManager.h b/include/manager/fallingItemManager.h
new file mode 100644
index 00000000..77c79aa5
--- /dev/null
+++ b/include/manager/fallingItemManager.h
@@ -0,0 +1,18 @@
+#ifndef FALLINGITEMMANAGER_H
+#define FALLINGITEMMANAGER_H
+
+#include "manager.h"
+
+typedef struct {
+ Manager base;
+ u8 field_0x20[0x15];
+ u8 field_0x35;
+ u8 field_0x36;
+ u8 field_0x37;
+ s16 field_0x38;
+ s16 field_0x3a;
+ u16 field_0x3c;
+ u16 field_0x3e;
+} FallingItemManager;
+
+#endif // FALLINGITEMMANAGER_H
diff --git a/include/manager/fightManager.h b/include/manager/fightManager.h
new file mode 100644
index 00000000..2d3968de
--- /dev/null
+++ b/include/manager/fightManager.h
@@ -0,0 +1,22 @@
+#ifndef FIGHTMANAGER_H
+#define FIGHTMANAGER_H
+
+#include "manager.h"
+
+typedef struct {
+ Manager base;
+ u8 unk_20;
+ u8 unk_21[0x14];
+ u8 unk_35;
+ u8 unk_36[0x4];
+ u16 unk_3a;
+ u16 fightStartFlag;
+ u16 fightCompletedFlag;
+} FightManager;
+
+typedef struct {
+ Manager base;
+ Entity* enemies[8];
+} FightManagerHelper;
+
+#endif // FIGHTMANAGER_H
diff --git a/include/manager/flagAndOperatorManager.h b/include/manager/flagAndOperatorManager.h
new file mode 100644
index 00000000..f41a129a
--- /dev/null
+++ b/include/manager/flagAndOperatorManager.h
@@ -0,0 +1,13 @@
+#ifndef FLAGANDOPERATORMANAGER_H
+#define FLAGANDOPERATORMANAGER_H
+
+#include "manager.h"
+
+typedef struct FlagAndOperatorManager {
+ Manager base;
+ u8 unk_20[0x1C];
+ u16 unk_3c;
+ u16 unk_3e;
+} FlagAndOperatorManager;
+
+#endif // FLAGANDOPERATORMANAGER_H
diff --git a/include/manager/flameManager.h b/include/manager/flameManager.h
new file mode 100644
index 00000000..2c5ebe7c
--- /dev/null
+++ b/include/manager/flameManager.h
@@ -0,0 +1,13 @@
+#ifndef FLAMEMANAGER_H
+#define FLAMEMANAGER_H
+
+#include "manager.h"
+
+typedef struct {
+ struct Manager base;
+ u8 field_0x20[0x18];
+ s16 field_0x38;
+ s16 field_0x3a;
+} FlameManager;
+
+#endif // FLAMEMANAGER_H
diff --git a/include/manager/floatingPlatformManager.h b/include/manager/floatingPlatformManager.h
new file mode 100644
index 00000000..deb7235f
--- /dev/null
+++ b/include/manager/floatingPlatformManager.h
@@ -0,0 +1,10 @@
+#ifndef FLOATINGPLATFORMMANAGER_H
+#define FLOATINGPLATFORMMANAGER_H
+
+#include "manager.h"
+
+typedef struct {
+ Manager base;
+} FloatingPlatformManager;
+
+#endif // FLOATINGPLATFORMMANAGER_H
diff --git a/include/manager/goronMerchantShopManager.h b/include/manager/goronMerchantShopManager.h
new file mode 100644
index 00000000..dcc78c55
--- /dev/null
+++ b/include/manager/goronMerchantShopManager.h
@@ -0,0 +1,11 @@
+#ifndef GORONMERCHANTSHOPMANAGER_H
+#define GORONMERCHANTSHOPMANAGER_H
+
+#include "manager.h"
+
+typedef struct {
+ Manager base;
+ u8 itemActive[3];
+} GoronMerchantShopManager;
+
+#endif // GORONMERCHANTSHOPMANAGER_H
diff --git a/include/manager/holeManager.h b/include/manager/holeManager.h
new file mode 100644
index 00000000..59bb8d66
--- /dev/null
+++ b/include/manager/holeManager.h
@@ -0,0 +1,21 @@
+#ifndef HOLEMANAGER_H
+#define HOLEMANAGER_H
+
+#include "manager.h"
+
+typedef struct {
+ Manager base;
+ s16 unk_20;
+ s16 unk_22;
+ u16 unk_24;
+ u16 unk_26;
+ u8 unk_28[8];
+ u16 unk_30;
+ u16 unk_32;
+ u16 unk_34;
+ u16 unk_36;
+ u8 unk_38[7];
+ u8 unk_3f;
+} HoleManager;
+
+#endif // HOLEMANAGER_H
diff --git a/include/manager/horizontalMinishPathBackgroundManager.h b/include/manager/horizontalMinishPathBackgroundManager.h
new file mode 100644
index 00000000..f67d4841
--- /dev/null
+++ b/include/manager/horizontalMinishPathBackgroundManager.h
@@ -0,0 +1,14 @@
+#ifndef HORIZONTALMINISHPATHBACKGROUNDMANAGER_H
+#define HORIZONTALMINISHPATHBACKGROUNDMANAGER_H
+
+#include "manager.h"
+
+typedef struct {
+ Manager base;
+ u8 unk_20;
+ u8 unk_21[0x17];
+ u32 unk_38;
+ u32 unk_3c;
+} HorizontalMinishPathBackgroundManager;
+
+#endif // HORIZONTALMINISHPATHBACKGROUNDMANAGER_H
diff --git a/include/manager/houseSignManager.h b/include/manager/houseSignManager.h
new file mode 100644
index 00000000..7402bc0d
--- /dev/null
+++ b/include/manager/houseSignManager.h
@@ -0,0 +1,11 @@
+#ifndef HOUSESIGNMANAGER_H
+#define HOUSESIGNMANAGER_H
+
+#include "manager.h"
+
+typedef struct {
+ Manager base;
+ u32 bitfield;
+} HouseSignManager;
+
+#endif // HOUSESIGNMANAGER_H
diff --git a/include/manager/hyruleTownBellManager.h b/include/manager/hyruleTownBellManager.h
new file mode 100644
index 00000000..976a639e
--- /dev/null
+++ b/include/manager/hyruleTownBellManager.h
@@ -0,0 +1,10 @@
+#ifndef HYRULETOWNBELLMANAGER_H
+#define HYRULETOWNBELLMANAGER_H
+
+#include "manager.h"
+
+typedef struct {
+ Manager base;
+} HyruleTownBellManager;
+
+#endif // HYRULETOWNBELLMANAGER_H
diff --git a/include/manager/hyruleTownTilesetManager.h b/include/manager/hyruleTownTilesetManager.h
new file mode 100644
index 00000000..8e269355
--- /dev/null
+++ b/include/manager/hyruleTownTilesetManager.h
@@ -0,0 +1,13 @@
+#ifndef HYRULETOWNTILESETMANAGER_H
+#define HYRULETOWNTILESETMANAGER_H
+
+#include "manager.h"
+
+typedef struct {
+ Manager base;
+ u8 field_0x20;
+ u8 field_0x21;
+ u8 field_0x22;
+} HyruleTownTilesetManager;
+
+#endif // HYRULETOWNTILESETMANAGER_H
diff --git a/include/manager/lightLevelSetManager.h b/include/manager/lightLevelSetManager.h
new file mode 100644
index 00000000..73170ffe
--- /dev/null
+++ b/include/manager/lightLevelSetManager.h
@@ -0,0 +1,19 @@
+#ifndef LIGHTLEVELSETMANAGER_H
+#define LIGHTLEVELSETMANAGER_H
+
+#include "manager.h"
+
+typedef struct {
+ Manager base;
+ u16 field_0x20;
+ u16 field_0x22;
+ u8 field_0x24[0x12];
+ u8 field_0x36;
+ u8 field_0x37;
+ u16 field_0x38;
+ u16 field_0x3a;
+ u16 field_0x3c;
+ u16 field_0x3e;
+} LightLevelSetManager;
+
+#endif // LIGHTLEVELSETMANAGER_H
diff --git a/include/manager/lightManager.h b/include/manager/lightManager.h
new file mode 100644
index 00000000..9bbb1c6b
--- /dev/null
+++ b/include/manager/lightManager.h
@@ -0,0 +1,11 @@
+#ifndef LIGHTMANAGER_H
+#define LIGHTMANAGER_H
+
+#include "manager.h"
+
+typedef struct {
+ Manager base;
+ s32 unk20;
+} LightManager;
+
+#endif // LIGHTMANAGER_H
diff --git a/include/manager/lightRayManager.h b/include/manager/lightRayManager.h
new file mode 100644
index 00000000..c36ba862
--- /dev/null
+++ b/include/manager/lightRayManager.h
@@ -0,0 +1,17 @@
+#ifndef LIGHTRAYMANAGER_H
+#define LIGHTRAYMANAGER_H
+
+#include "manager.h"
+
+typedef struct {
+ Manager base;
+ u8 unk_20;
+ u8 unk_21;
+ u8 unk_22;
+ u8 unk_23;
+ u8 unk_24;
+ u8 unk_25[15];
+ void* unk_34;
+} LightRayManager;
+
+#endif // LIGHTRAYMANAGER_H
diff --git a/include/manager/manager29.h b/include/manager/manager29.h
new file mode 100644
index 00000000..a26f291c
--- /dev/null
+++ b/include/manager/manager29.h
@@ -0,0 +1,22 @@
+#ifndef MANAGER29_H
+#define MANAGER29_H
+
+#include "manager.h"
+
+typedef struct {
+ Manager base;
+ u8 unk_20[0x8];
+ u16* unk_28;
+ u16* unk_2c;
+ u8 filler[0x4];
+ u8 unk_34;
+ u8 unk_35;
+ u8 unk_36;
+ u8 unk_37;
+ s16 unk_38;
+ u16 unk_3a;
+ u16 unk_3c;
+ u16 unk_3e;
+} Manager29;
+
+#endif // MANAGER29_H
diff --git a/include/manager/minishPortalManager.h b/include/manager/minishPortalManager.h
new file mode 100644
index 00000000..35a40027
--- /dev/null
+++ b/include/manager/minishPortalManager.h
@@ -0,0 +1,20 @@
+#ifndef MINISHPORTALMANAGER_H
+#define MINISHPORTALMANAGER_H
+
+#include "manager.h"
+
+typedef struct {
+ Manager base;
+ u32 unk_20;
+ u32 unk_24;
+ u8 unk_28[0xC];
+ u8 unk_34;
+ u8 unk_35;
+ u16 unk_36;
+ u16 unk_38;
+ u16 unk_3a;
+ u16 unk_3c;
+ u16 unk_3e;
+} MinishPortalManager;
+
+#endif // MINISHPORTALMANAGER_H
diff --git a/include/manager/minishRaftersBackgroundManager.h b/include/manager/minishRaftersBackgroundManager.h
new file mode 100644
index 00000000..1c746870
--- /dev/null
+++ b/include/manager/minishRaftersBackgroundManager.h
@@ -0,0 +1,12 @@
+#ifndef MINISHRAFTERSBACKGROUNDMANAGER_H
+#define MINISHRAFTERSBACKGROUNDMANAGER_H
+
+#include "manager.h"
+
+typedef struct {
+ Manager base;
+ u8 unk_00[0x1C];
+ u32 unk_3c;
+} MinishRaftersBackgroundManager;
+
+#endif // MINISHRAFTERSBACKGROUNDMANAGER_H
diff --git a/include/manager/minishSizedEntranceManager.h b/include/manager/minishSizedEntranceManager.h
new file mode 100644
index 00000000..1da3f4d5
--- /dev/null
+++ b/include/manager/minishSizedEntranceManager.h
@@ -0,0 +1,11 @@
+#ifndef MINISHSIZEDENTRANCEMANAGER_H
+#define MINISHSIZEDENTRANCEMANAGER_H
+
+#include "manager.h"
+
+typedef struct {
+ Manager base;
+ u32 field_0x20;
+} MinishSizedEntranceManager;
+
+#endif // MINISHSIZEDENTRANCEMANAGER_H
diff --git a/include/manager/minishVillageTilesetManager.h b/include/manager/minishVillageTilesetManager.h
new file mode 100644
index 00000000..50c01f54
--- /dev/null
+++ b/include/manager/minishVillageTilesetManager.h
@@ -0,0 +1,12 @@
+#ifndef MINISHVILLAGETILESETMANAGER_H
+#define MINISHVILLAGETILESETMANAGER_H
+
+#include "manager.h"
+
+typedef struct {
+ Manager base;
+ u8 unk_20;
+ u8 unk_21[0x1F];
+} MinishVillageTilesetManager;
+
+#endif // MINISHVILLAGETILESETMANAGER_H
diff --git a/include/manager/miscManager.h b/include/manager/miscManager.h
new file mode 100644
index 00000000..6c763ca1
--- /dev/null
+++ b/include/manager/miscManager.h
@@ -0,0 +1,15 @@
+#ifndef MISCMANAGER_H
+#define MISCMANAGER_H
+
+#include "manager.h"
+
+typedef struct {
+ Manager base;
+ u8 unk_20[0x18];
+ s16 unk_38;
+ s16 unk_3a;
+ u16 unk_3c;
+ u16 unk_3e;
+} MiscManager;
+
+#endif // MISCMANAGER_H
diff --git a/include/manager/moveableObjectManager.h b/include/manager/moveableObjectManager.h
new file mode 100644
index 00000000..9d742a59
--- /dev/null
+++ b/include/manager/moveableObjectManager.h
@@ -0,0 +1,19 @@
+#ifndef MOVEABLEOBJECTMANAGER_H
+#define MOVEABLEOBJECTMANAGER_H
+
+#include "manager.h"
+
+typedef struct {
+ Manager base;
+ u8 unk_20[0x12];
+ u16 unk_32;
+ u8 unk_34[2];
+ u8 unk_36;
+ u8 unk_37;
+ u16 unk_38;
+ u16 unk_3a;
+ u16 unk_3c;
+ u16 flags;
+} MoveableObjectManager;
+
+#endif // MOVEABLEOBJECTMANAGER_H
diff --git a/include/manager/powBackgroundManager.h b/include/manager/powBackgroundManager.h
new file mode 100644
index 00000000..300022c8
--- /dev/null
+++ b/include/manager/powBackgroundManager.h
@@ -0,0 +1,10 @@
+#ifndef POWBACKGROUNDMANAGER_H
+#define POWBACKGROUNDMANAGER_H
+
+#include "manager.h"
+
+typedef struct {
+ Manager base;
+} PowBackgroundManager;
+
+#endif // POWBACKGROUNDMANAGER_H
diff --git a/include/manager/pushableFurnitureManager.h b/include/manager/pushableFurnitureManager.h
new file mode 100644
index 00000000..590be85b
--- /dev/null
+++ b/include/manager/pushableFurnitureManager.h
@@ -0,0 +1,23 @@
+#ifndef PUSHABLEFURNITUREMANAGER_H
+#define PUSHABLEFURNITUREMANAGER_H
+
+#include "manager.h"
+
+typedef struct {
+ Manager base;
+ u8 unk_20[0x8];
+ u8 unk_28;
+ u8 unk_29;
+ u16 unk_2a;
+} PushableFurnitureManager;
+
+typedef struct {
+ u8 unk_00;
+ u8 unk_01;
+ u8 unk_02;
+ u8 unk_03;
+ u16 unk_04;
+ u16 unk_06;
+} UnkPushableFurnitureManagerHelperStruct;
+
+#endif // PUSHABLEFURNITUREMANAGER_H
diff --git a/include/manager/railIntersectionManager.h b/include/manager/railIntersectionManager.h
new file mode 100644
index 00000000..9de3c0ad
--- /dev/null
+++ b/include/manager/railIntersectionManager.h
@@ -0,0 +1,18 @@
+#ifndef RAILINTERSECTIONMANAGER_H
+#define RAILINTERSECTIONMANAGER_H
+
+#include "manager.h"
+
+typedef struct {
+ Manager base;
+ u8 field_0x20[0x16];
+ u8 field_0x36;
+ u8 field_0x37;
+ s16 field_0x38;
+ u16 field_0x3a;
+ u8 field_0x3c;
+ u8 field_0x3d;
+ u16 flags;
+} RailIntersectionManager;
+
+#endif // RAILINTERSECTIONMANAGER_H
diff --git a/include/manager/rainfallManager.h b/include/manager/rainfallManager.h
new file mode 100644
index 00000000..217bc10a
--- /dev/null
+++ b/include/manager/rainfallManager.h
@@ -0,0 +1,10 @@
+#ifndef RAINFALLMANAGER_H
+#define RAINFALLMANAGER_H
+
+#include "manager.h"
+
+typedef struct {
+ Manager base;
+} RainfallManager;
+
+#endif // RAINFALLMANAGER_H
diff --git a/include/manager/regionTriggerManager.h b/include/manager/regionTriggerManager.h
new file mode 100644
index 00000000..0c7a3be2
--- /dev/null
+++ b/include/manager/regionTriggerManager.h
@@ -0,0 +1,17 @@
+#ifndef REGIONTRIGGERMANAGER_H
+#define REGIONTRIGGERMANAGER_H
+
+#include "manager.h"
+
+typedef struct {
+ Manager base;
+ u8 unk_20[0x14]; // unused
+ u16 radiusX;
+ u16 radiusY;
+ s16 posX;
+ s16 posY;
+ u8 unk_3c[2]; // unused
+ u16 playerInRegionFlag;
+} RegionTriggerManager;
+
+#endif // REGIONTRIGGERMANAGER_H
diff --git a/include/manager/repeatedSoundManager.h b/include/manager/repeatedSoundManager.h
new file mode 100644
index 00000000..6ac1dfb3
--- /dev/null
+++ b/include/manager/repeatedSoundManager.h
@@ -0,0 +1,10 @@
+#ifndef REPEATEDSOUNDMANAGER_H
+#define REPEATEDSOUNDMANAGER_H
+
+#include "manager.h"
+
+typedef struct {
+ Manager base;
+} RepeatedSoundManager;
+
+#endif // REPEATEDSOUNDMANAGER_H
diff --git a/include/manager/rollingBarrelManager.h b/include/manager/rollingBarrelManager.h
new file mode 100644
index 00000000..614d935c
--- /dev/null
+++ b/include/manager/rollingBarrelManager.h
@@ -0,0 +1,22 @@
+#ifndef ROLLINGBARRELMANAGER_H
+#define ROLLINGBARRELMANAGER_H
+
+#include "manager.h"
+
+typedef struct {
+ Manager base;
+ s32 unk_20;
+ union SplitWord unk_24;
+ u32 unk_28;
+ u32 unk_2c;
+ u8 unk_30[0x10];
+} RollingBarrelManager;
+
+typedef struct {
+ u16 unk_0;
+ u16 unk_2;
+ u16 unk_4;
+ u16 unk_6;
+} struct_08108228;
+
+#endif // ROLLINGBARRELMANAGER_H
diff --git a/include/manager/secretManager.h b/include/manager/secretManager.h
new file mode 100644
index 00000000..96a94048
--- /dev/null
+++ b/include/manager/secretManager.h
@@ -0,0 +1,16 @@
+#ifndef SECRETMANAGER_H
+#define SECRETMANAGER_H
+
+#include "manager.h"
+
+typedef struct {
+ Manager base;
+ u8 field_0x20[0x18];
+ s16 field_0x38;
+ u8 field_0x3a;
+ u8 field_0x3b;
+ u16 field_0x3c;
+ u16 field_0x3e;
+} SecretManager;
+
+#endif // SECRETMANAGER_H
diff --git a/include/manager/specialWarpManager.h b/include/manager/specialWarpManager.h
new file mode 100644
index 00000000..200edcf1
--- /dev/null
+++ b/include/manager/specialWarpManager.h
@@ -0,0 +1,28 @@
+#ifndef SPECIALWARPMANAGER_H
+#define SPECIALWARPMANAGER_H
+
+#include "manager.h"
+
+typedef struct {
+ u16 posX;
+ u16 posY;
+ u8 width;
+ u8 height;
+ u8 roomProperty;
+ union {
+ u8 all;
+ struct {
+ u8 layer : 2;
+ u8 unk1 : 2;
+ u8 unk2 : 1;
+ u8 unk3 : 3;
+ } PACKED b;
+ } PACKED unk_07;
+} SpecialWarpManagerWarpData;
+
+typedef struct {
+ Manager base;
+ SpecialWarpManagerWarpData* warpList;
+} SpecialWarpManager;
+
+#endif // SPECIALWARPMANAGER_H
diff --git a/include/manager/staticBackgroundManager.h b/include/manager/staticBackgroundManager.h
new file mode 100644
index 00000000..f2cab28a
--- /dev/null
+++ b/include/manager/staticBackgroundManager.h
@@ -0,0 +1,11 @@
+#ifndef STATICBACKGROUNDMANAGER_H
+#define STATICBACKGROUNDMANAGER_H
+
+#include "manager.h"
+
+typedef struct {
+ Manager base;
+ u32 field_0x20;
+} StaticBackgroundManager;
+
+#endif // STATICBACKGROUNDMANAGER_H
diff --git a/include/manager/steamOverlayManager.h b/include/manager/steamOverlayManager.h
new file mode 100644
index 00000000..4ab2b455
--- /dev/null
+++ b/include/manager/steamOverlayManager.h
@@ -0,0 +1,15 @@
+#ifndef STEAMOVERLAYMANAGER_H
+#define STEAMOVERLAYMANAGER_H
+
+#include "manager.h"
+
+typedef struct {
+ Manager base;
+ u16 unk_20;
+ u8 unk_22;
+ u8 unk_23[1];
+ u8 unk_24;
+ u8 unk_25[0x1b];
+} SteamOverlayManager;
+
+#endif // STEAMOVERLAYMANAGER_H
diff --git a/include/manager/templeOfDropletsManager.h b/include/manager/templeOfDropletsManager.h
new file mode 100644
index 00000000..da1e8f66
--- /dev/null
+++ b/include/manager/templeOfDropletsManager.h
@@ -0,0 +1,25 @@
+#ifndef TEMPLEOFDROPLETSMANAGER_H
+#define TEMPLEOFDROPLETSMANAGER_H
+
+#include "manager.h"
+
+typedef struct {
+ Manager base;
+ u8 unk_20;
+ u8 unk_21;
+ u8 unk_22;
+ u8 unk_23; // used
+ u16 unk_24;
+ u16 unk_26;
+ void* unk_28;
+ u16 unk_2c;
+ u8 unk_2e[0x6];
+ s16 unk_34;
+ s16 unk_36;
+ s16 unk_38;
+ s16 unk_3a;
+ u16 unk_3c;
+ u16 unk_3e; // used
+} TempleOfDropletsManager;
+
+#endif // TEMPLEOFDROPLETSMANAGER_H
diff --git a/include/manager/tileChangeObserveManager.h b/include/manager/tileChangeObserveManager.h
new file mode 100644
index 00000000..fda2c35a
--- /dev/null
+++ b/include/manager/tileChangeObserveManager.h
@@ -0,0 +1,35 @@
+#ifndef TILECHANGEOBSERVEMANAGER_H
+#define TILECHANGEOBSERVEMANAGER_H
+
+#include "manager.h"
+
+typedef struct {
+ Manager base;
+ u8 field_0x20;
+ u8 field_0x21;
+ u8 field_0x22;
+ u8 field_0x23;
+ u8 field_0x24;
+ u8 field_0x25;
+ u8 field_0x26;
+ u8 field_0x27;
+ u16 initialTile;
+ u8 field_0x2a;
+ u8 field_0x2b;
+ u8 field_0x2c;
+ u8 field_0x2d;
+ u8 field_0x2e;
+ u8 field_0x2f;
+ u16* observedTile;
+ u8 field_0x34;
+ u8 field_0x35;
+ u8 field_0x36;
+ u8 field_0x37;
+ u16 tilePosition;
+ u16 field_0x3a;
+ u8 field_0x3c;
+ u8 field_0x3d;
+ u16 flag;
+} TileChangeObserveManager;
+
+#endif // TILECHANGEOBSERVEMANAGER_H
diff --git a/include/manager/tilePuzzleManager.h b/include/manager/tilePuzzleManager.h
new file mode 100644
index 00000000..bbf2e2cf
--- /dev/null
+++ b/include/manager/tilePuzzleManager.h
@@ -0,0 +1,22 @@
+#ifndef TILEPUZZLEMANAGER_H
+#define TILEPUZZLEMANAGER_H
+
+#include "manager.h"
+
+typedef struct TilePuzzleManager {
+ Manager base;
+ u8 unk_20[8]; // unused
+ u16 own_tile;
+ u8 unk_2a[0x2]; // unused
+ u16 player_previous_tile;
+ u16 player_current_tile;
+ u8 unk_30[0x6]; // unused
+ u8 width;
+ u8 height;
+ s16 x;
+ s16 y;
+ u16 flag_succeeded;
+ u16 flag_reset;
+} TilePuzzleManager;
+
+#endif // TILEPUZZLEMANAGER_H
diff --git a/include/manager/vaati3BackgroundManager.h b/include/manager/vaati3BackgroundManager.h
new file mode 100644
index 00000000..58f167a4
--- /dev/null
+++ b/include/manager/vaati3BackgroundManager.h
@@ -0,0 +1,10 @@
+#ifndef VAATI3BACKGROUNDMANAGER_H
+#define VAATI3BACKGROUNDMANAGER_H
+
+#include "manager.h"
+
+typedef struct {
+ Manager base;
+} Vaati3BackgroundManager;
+
+#endif // VAATI3BACKGROUNDMANAGER_H
diff --git a/include/manager/vaati3InsideArmManager.h b/include/manager/vaati3InsideArmManager.h
new file mode 100644
index 00000000..54510841
--- /dev/null
+++ b/include/manager/vaati3InsideArmManager.h
@@ -0,0 +1,11 @@
+#ifndef VAATI3INSIDEARMMANAGER_H
+#define VAATI3INSIDEARMMANAGER_H
+
+#include "manager.h"
+
+typedef struct {
+ Manager base;
+ u16 field_0x20;
+} Vaati3InsideArmManager;
+
+#endif // VAATI3INSIDEARMMANAGER_H
diff --git a/include/manager/vaati3StartManager.h b/include/manager/vaati3StartManager.h
new file mode 100644
index 00000000..30d8e1bf
--- /dev/null
+++ b/include/manager/vaati3StartManager.h
@@ -0,0 +1,10 @@
+#ifndef VAATI3STARTMANAGER_H
+#define VAATI3STARTMANAGER_H
+
+#include "manager.h"
+
+typedef struct {
+ Manager base;
+} Vaati3StartManager;
+
+#endif // VAATI3STARTMANAGER_H
diff --git a/include/manager/vaatiAppearingManager.h b/include/manager/vaatiAppearingManager.h
new file mode 100644
index 00000000..305ab528
--- /dev/null
+++ b/include/manager/vaatiAppearingManager.h
@@ -0,0 +1,13 @@
+#ifndef VAATIAPPEARINGMANAGER_H
+#define VAATIAPPEARINGMANAGER_H
+
+#include "manager.h"
+
+typedef struct {
+ Manager base;
+ u32 field_0x20;
+ u32 field_0x24;
+ u32 field_0x28;
+} VaatiAppearingManager;
+
+#endif // VAATIAPPEARINGMANAGER_H
diff --git a/include/manager/verticalMinishPathBackgroundManager.h b/include/manager/verticalMinishPathBackgroundManager.h
new file mode 100644
index 00000000..34a80080
--- /dev/null
+++ b/include/manager/verticalMinishPathBackgroundManager.h
@@ -0,0 +1,13 @@
+#ifndef VERTICALMINISHPATHBACKGROUNDMANAGER_H
+#define VERTICALMINISHPATHBACKGROUNDMANAGER_H
+
+#include "manager.h"
+
+typedef struct {
+ Manager base;
+ u32 field_0x20[0x6];
+ void* field_0x38;
+ void* field_0x3c;
+} VerticalMinishPathBackgroundManager;
+
+#endif // VERTICALMINISHPATHBACKGROUNDMANAGER_H
diff --git a/include/manager/waterfallBottomManager.h b/include/manager/waterfallBottomManager.h
new file mode 100644
index 00000000..88d35f7a
--- /dev/null
+++ b/include/manager/waterfallBottomManager.h
@@ -0,0 +1,10 @@
+#ifndef WATERFALLBOTTOMMANAGER_H
+#define WATERFALLBOTTOMMANAGER_H
+
+#include "manager.h"
+
+typedef struct {
+ Manager base;
+} WaterfallBottomManager;
+
+#endif // WATERFALLBOTTOMMANAGER_H
diff --git a/include/manager/weatherChangeManager.h b/include/manager/weatherChangeManager.h
new file mode 100644
index 00000000..d0a7744c
--- /dev/null
+++ b/include/manager/weatherChangeManager.h
@@ -0,0 +1,15 @@
+#ifndef WEATHERCHANGEMANAGER_H
+#define WEATHERCHANGEMANAGER_H
+
+#include "manager.h"
+
+typedef struct {
+ Manager base;
+ u8 unk_20;
+ u8 unk_21;
+ u8 unk_22;
+ u8 unk_23;
+ u8 filler_0x24[0x1C];
+} WeatherChangeManager;
+
+#endif // WEATHERCHANGEMANAGER_H
diff --git a/include/map.h b/include/map.h
index 8c8adb46..b943ca2e 100644
--- a/include/map.h
+++ b/include/map.h
@@ -2,9 +2,10 @@
#define MAP_H
#include "global.h"
+#include "screen.h"
typedef struct {
- /*0x0000*/ u16* bgControlPtr; // Points to the BgSettings.control field for the bg belonging to this layer?
+ /*0x0000*/ BgSettings* bgSettings;
/*0x0004*/ u16 mapData[0x1000]; // tilemap data? <-- gMapDataTop / gMapDataBottom
/*0x2004*/ u8 collisionData[0x1000]; // more tilemap data? <-- gUnk_0200D654 / gUnk_02027EB4
/*0x3004*/ u16 mapDataClone[0x1000]; // more tilemap data? <-- gUnk_0200E654 / gUnk_02028EB4
@@ -19,4 +20,4 @@ extern LayerStruct gMapBottom;
LayerStruct* GetLayerByIndex(u32);
-#endif // MAP_H \ No newline at end of file
+#endif // MAP_H
diff --git a/include/menu.h b/include/menu.h
index 609aad82..df97c884 100644
--- a/include/menu.h
+++ b/include/menu.h
@@ -125,4 +125,4 @@ extern Menu gMenu;
#define gFigurineMenu (*(FigurineMenu*)&gMenu)
#define gPauseMenu (*(PauseMenu*)&gMenu)
-#endif
+#endif // MENU_H
diff --git a/include/new_player.h b/include/new_player.h
index a70122ca..bae1ed2f 100644
--- a/include/new_player.h
+++ b/include/new_player.h
@@ -23,4 +23,4 @@ typedef struct {
#define gNewPlayerEntity (*(PlayerEntity*)&gPlayerEntity)
-#endif \ No newline at end of file
+#endif // NEW_PLAYER_H
diff --git a/include/npc.h b/include/npc.h
index 2be97262..05ee9e36 100644
--- a/include/npc.h
+++ b/include/npc.h
@@ -372,4 +372,4 @@ void NPC58_Head(Entity*);
extern void (*const gNPCFunctions[128][3])(Entity*);
-#endif
+#endif // NPC_H
diff --git a/include/object.h b/include/object.h
index cf38190c..a0046526 100644
--- a/include/object.h
+++ b/include/object.h
@@ -427,4 +427,4 @@ void ObjectC1();
extern void (*const gObjectFunctions[194])(Entity*);
-#endif
+#endif // OBJECT_H
diff --git a/include/object/deathFx.h b/include/object/deathFx.h
index 99cffc86..ba8c69dc 100644
--- a/include/object/deathFx.h
+++ b/include/object/deathFx.h
@@ -1,5 +1,5 @@
-#ifndef TMC_DEATHFX_H
-#define TMC_DEATHFX_H
+#ifndef DEATHFX_H
+#define DEATHFX_H
#ifndef NENT_DEPRECATED
#error "deathFx.h requires new entities"
@@ -14,4 +14,4 @@ typedef struct {
u8 item;
} DeathFxObject;
-#endif // TMC_DEATHFX_H
+#endif // DEATHFX_H
diff --git a/include/physics.h b/include/physics.h
index a5aee40d..9389ea22 100644
--- a/include/physics.h
+++ b/include/physics.h
@@ -1,5 +1,5 @@
-#ifndef POSITION_H
-#define POSITION_H
+#ifndef PHYSICS_H
+#define PHYSICS_H
#include "global.h"
#include "entity.h"
@@ -55,4 +55,5 @@ extern bool32 ProcessMovementInternal(Entity*, s32, s32, u32);
extern const s16 gSineTable[64];
extern const s16 gCosineTable[256];
-#endif
+
+#endif // PHYSICS_H
diff --git a/include/player.h b/include/player.h
index ef6129fc..df2ee028 100644
--- a/include/player.h
+++ b/include/player.h
@@ -480,4 +480,4 @@ void SetZeldaFollowTarget(Entity*);
#define COPY_FLAG_FROM_TO(base, src, dest) (base) = ((base) & ~(dest)) | (((dest) * ((base) & (src))) / src)
-#endif
+#endif // PLAYER_H
diff --git a/include/playeritem.h b/include/playeritem.h
index fcf643d9..8ca8d783 100644
--- a/include/playeritem.h
+++ b/include/playeritem.h
@@ -29,4 +29,4 @@ typedef enum {
PLAYER_ITEM_CELL_OVERWRITE_SET2,
} PlayerItem;
-#endif
+#endif // PLAYERITEM_H
diff --git a/include/projectile.h b/include/projectile.h
index 64df8ac4..c8186e2b 100644
--- a/include/projectile.h
+++ b/include/projectile.h
@@ -84,4 +84,4 @@ typedef enum {
/*24*/ V3_TENNIS_BALL_PROJECTILE,
} Projectile;
-#endif \ No newline at end of file
+#endif // PROJECTILE_H
diff --git a/include/projectile/winder.h b/include/projectile/winder.h
index 1fe479ff..face0213 100644
--- a/include/projectile/winder.h
+++ b/include/projectile/winder.h
@@ -1,5 +1,5 @@
-#ifndef PROJECTILE_WINDER_H
-#define PROJECTILE_WINDER_H
+#ifndef WINDER_H
+#define WINDER_H
#include "enemy.h"
#define WINDER_NUM_SEGMENTS 8
@@ -9,4 +9,4 @@ typedef struct {
s16 positions[2 * WINDER_NUM_SEGMENTS];
} WinderEntity;
-#endif
+#endif // WINDER_H
diff --git a/include/room.h b/include/room.h
index d4c35300..d1becf0b 100644
--- a/include/room.h
+++ b/include/room.h
@@ -238,4 +238,4 @@ void sub_0804B0B0(u32 arg0, u32 arg1);
void DoExitTransition(const ScreenTransitionData* data);
-#endif
+#endif // ROOM_H
diff --git a/include/roomid.h b/include/roomid.h
index db520bdd..14bc46c9 100644
--- a/include/roomid.h
+++ b/include/roomid.h
@@ -1,5 +1,5 @@
-#ifndef TMC_ROOMID_H
-#define TMC_ROOMID_H
+#ifndef ROOMID_H
+#define ROOMID_H
typedef enum {
// AREA_MINISH_WOODS
@@ -990,4 +990,4 @@ typedef enum {
ROOM_8F_0 = 0,
} RoomID;
-#endif // TMC_ROOMID_H
+#endif // ROOMID_H
diff --git a/include/save.h b/include/save.h
index 1941a722..4e1c1335 100644
--- a/include/save.h
+++ b/include/save.h
@@ -135,4 +135,4 @@ extern const u8* const demoPointers[];
extern const u8 demoUnknown1[];
#endif
-#endif
+#endif // SAVE_H
diff --git a/include/screen.h b/include/screen.h
index fe17b183..9b6b3f7a 100644
--- a/include/screen.h
+++ b/include/screen.h
@@ -1,5 +1,5 @@
-#ifndef BG_H
-#define BG_H
+#ifndef SCREEN_H
+#define SCREEN_H
#include "global.h"
#include "fade.h"
@@ -80,4 +80,4 @@ extern OAMCommand gOamCmd;
extern void sub_080ADA04(OAMCommand*, void*);
-#endif
+#endif // SCREEN_H
diff --git a/include/script.h b/include/script.h
index 3c4e5bfe..4591ac27 100644
--- a/include/script.h
+++ b/include/script.h
@@ -49,4 +49,5 @@ void ExecuteScriptForEntity(Entity* entity, void (*postScriptCallback)(Entity*,
void HandlePostScriptActions(Entity* entity, ScriptExecutionContext* context);
void HandleEntity0x82Actions(Entity* entity);
void sub_0807DD94(Entity*, void (*function)(Entity*, ScriptExecutionContext*));
-#endif
+
+#endif // SCRIPT_H
diff --git a/include/scroll.h b/include/scroll.h
new file mode 100644
index 00000000..3f6d47b4
--- /dev/null
+++ b/include/scroll.h
@@ -0,0 +1,9 @@
+#ifndef SCROLL_H
+#define SCROLL_H
+
+#include "global.h"
+
+void UpdateIsDiggingCave(void);
+void sub_08080930(u32);
+
+#endif // SCROLL_H
diff --git a/include/sprite.h b/include/sprite.h
index 7539891f..6a8b620b 100644
--- a/include/sprite.h
+++ b/include/sprite.h
@@ -35,4 +35,4 @@ typedef struct {
u8 unk;
} SpriteLoadData;
-#endif
+#endif // SPRITE_H
diff --git a/include/structures.h b/include/structures.h
index 88798071..3b717180 100644
--- a/include/structures.h
+++ b/include/structures.h
@@ -324,4 +324,4 @@ typedef struct {
s16 position;
} TileData;
-#endif
+#endif // STRUCTURES_H
diff --git a/include/transitions.h b/include/transitions.h
index 0d536e5a..3da9d77e 100644
--- a/include/transitions.h
+++ b/include/transitions.h
@@ -1,5 +1,6 @@
-#ifndef TMC_TRANSITIONS_H
-#define TMC_TRANSITIONS_H
+#ifndef TRANSITIONS_H
+#define TRANSITIONS_H
+
#include "global.h"
#include "roomid.h"
@@ -51,4 +52,4 @@ extern const Transition gUnk_08135190[];
extern const Transition gUnk_0813A76C[];
extern const Transition* const* const gExitLists[];
-#endif // TMC_TRANSITIONS_H
+#endif // TRANSITIONS_H
diff --git a/include/ui.h b/include/ui.h
index fd836001..2a4994ee 100644
--- a/include/ui.h
+++ b/include/ui.h
@@ -12,4 +12,4 @@ extern void InitUI(bool32);
extern void RefreshUI(void);
extern void RecoverUI(u32 bottomPt, u32 topPt);
-#endif \ No newline at end of file
+#endif // UI_H