cleanup headers

This commit is contained in:
Henny022p 2025-03-05 17:09:01 +00:00
parent d602b93c8d
commit 3b9b1a388b
540 changed files with 2106 additions and 985 deletions

View File

@ -621,23 +621,23 @@ _0800439C: .4byte gSpritePtrs
_080043A0: .4byte gSpritePtrs
_080043A4: .4byte gGFXSlots+4
thumb_func_start CreateDrownFX
CreateDrownFX: @ 0x080043A8
thumb_func_start CreateDrownFx
CreateDrownFx: @ 0x080043A8
movs r1, #0xb // FX_WATER_SPLASH
b create_fx
thumb_func_start CreateLavaDrownFX
CreateLavaDrownFX: @ 0x080043AC
thumb_func_start CreateLavaDrownFx
CreateLavaDrownFx: @ 0x080043AC
movs r1, #0xc // FX_LAVA_SPLASH
b create_fx
thumb_func_start CreateSwampDrownFX
CreateSwampDrownFX: @ 0x080043AC
thumb_func_start CreateSwampDrownFx
CreateSwampDrownFx: @ 0x080043AC
movs r1, #0x52 // FX_GREEN_SPLASH
b create_fx
thumb_func_start CreatePitFallFX
CreatePitFallFX: @ 0x080043B4
thumb_func_start CreatePitFallFx
CreatePitFallFx: @ 0x080043B4
movs r1, #0 // FX_FALL_DOWN
create_fx:

View File

@ -62,10 +62,10 @@ sub_0800442E: @ 0x0800442E
not_hazard:
movs r0, #0
pop {r1, pc}
_0800444C: .4byte CreatePitFallFX
_08004450: .4byte CreateDrownFX
_08004454: .4byte CreateLavaDrownFX
_08004458: .4byte CreateSwampDrownFX
_0800444C: .4byte CreatePitFallFx
_08004450: .4byte CreateDrownFx
_08004454: .4byte CreateLavaDrownFx
_08004458: .4byte CreateSwampDrownFx
thumb_func_start sub_0800445C
sub_0800445C: @ 0x0800445C

View File

@ -71,7 +71,7 @@ _08001230:
ldr r3, _0800135C @ =UpdateAnimationVariableFrames
bx r3
_0800123E:
ldr r3, _08001360 @ =CreatePitFallFX
ldr r3, _08001360 @ =CreatePitFallFx
bx r3
non_word_aligned_thumb_func_start GenericConfused
@ -155,9 +155,9 @@ _080012BA:
gUnk_080012C8::
.4byte 0x00000000
_080012CC: .4byte sub_08001214
_080012D0: .4byte CreateDrownFX
_080012D4: .4byte CreateLavaDrownFX
_080012D8: .4byte CreateSwampDrownFX
_080012D0: .4byte CreateDrownFx
_080012D4: .4byte CreateLavaDrownFx
_080012D8: .4byte CreateSwampDrownFx
thumb_func_start sub_080012DC
sub_080012DC: @ 0x080012DC
@ -241,7 +241,7 @@ _08001352:
.align 2, 0
_08001358: .4byte gEnemyFunctions
_0800135C: .4byte UpdateAnimationVariableFrames
_08001360: .4byte CreatePitFallFX
_08001360: .4byte CreatePitFallFx
_08001364: .4byte 0x00001800
_08001368: .4byte gUnk_080012C8
_0800136C: .4byte gUnk_080012C8

View File

@ -1,5 +1,5 @@
thumb_func_start CreateDustFromScript
CreateDustFromScript:
push {lr}
bl CreateDust
bl CreateDeathFx
pop {pc}

View File

@ -6,7 +6,7 @@ SCRIPT_START script_CutsceneMiscObjectOctorok1
SetAnimation 0x0001
EndBlock
WaitForSyncFlagAndClear 0x00000001
Call CreateDust
Call CreateDeathFx
DoPostScriptAction 0x0006
SCRIPT_END
.2byte 0x0000

View File

@ -6,7 +6,7 @@ SCRIPT_START script_CutsceneMiscObjectOctorok2
SetAnimation 0x0002
EndBlock
WaitForSyncFlagAndClear 0x00000002
Call CreateDust
Call CreateDeathFx
DoPostScriptAction 0x0006
SCRIPT_END
.2byte 0x0000

View File

@ -6,7 +6,7 @@ SCRIPT_START script_CutsceneMiscObjectOctorok3
SetAnimation 0x0000
EndBlock
WaitForSyncFlagAndClear 0x00000004
Call CreateDust
Call CreateDeathFx
DoPostScriptAction 0x0006
SCRIPT_END
.2byte 0x0000

View File

@ -6,7 +6,7 @@ SCRIPT_START script_CutsceneMiscObjectOctorok4
SetAnimation 0x0003
EndBlock
WaitForSyncFlagAndClear 0x00000008
Call CreateDust
Call CreateDeathFx
DoPostScriptAction 0x0006
SCRIPT_END
.2byte 0x0000

View File

@ -6,7 +6,7 @@ SCRIPT_START script_CutsceneMiscObjectTektite1
SetAnimation 0x0000
EndBlock
WaitForSyncFlagAndClear 0x00000001
Call CreateDust
Call CreateDeathFx
DoPostScriptAction 0x0006
SCRIPT_END
.2byte 0x0000

View File

@ -6,7 +6,7 @@ SCRIPT_START script_CutsceneMiscObjectTektite2
SetAnimation 0x0000
EndBlock
WaitForSyncFlagAndClear 0x00000002
Call CreateDust
Call CreateDeathFx
DoPostScriptAction 0x0006
SCRIPT_END
.2byte 0x0000

View File

@ -6,7 +6,7 @@ SCRIPT_START script_CutsceneMiscObjectTektite3
SetAnimation 0x0000
EndBlock
WaitForSyncFlagAndClear 0x00000004
Call CreateDust
Call CreateDeathFx
DoPostScriptAction 0x0006
SCRIPT_END
.2byte 0x0000

View File

@ -6,7 +6,7 @@ SCRIPT_START script_CutsceneMiscObjectTektite4
SetAnimation 0x0000
EndBlock
WaitForSyncFlagAndClear 0x00000008
Call CreateDust
Call CreateDeathFx
DoPostScriptAction 0x0006
SCRIPT_END
.2byte 0x0000

View File

@ -39,7 +39,7 @@ SCRIPT_START script_MinishEzloGoodbye
Wait 0x001e
SetSyncFlag 0x00000020
StopBgm
Call CreateDust
Call CreateDeathFx
Call sub_0806305C
Call sub_080630A4
_0807EF3C 0x0000, 0x0020

21
include/affine.h Normal file
View File

@ -0,0 +1,21 @@
#ifndef AFFINE_H
#define AFFINE_H
#include "gba/types.h"
typedef struct {
s16 x;
s16 y;
u16 _4;
u16 _6;
u16 _8;
} OAMCommand;
extern OAMCommand gOamCmd;
extern void FlushSprites(void);
extern void CopyOAM(void);
extern void DrawEntities(void);
extern void sub_080ADA04(OAMCommand*, void*);
extern void DrawDirect(u32 spriteIndex, u32 frameIndex);
#endif //AFFINE_H

View File

@ -106,4 +106,18 @@ typedef struct {
*/
extern u32 FindValueForKey(u32 key, const KeyValuePair* keyValuePairList);
extern u32 GetTileIndex(u32 tilePos, u32 layer);
extern void LinearMoveDirectionOLD(struct Entity_*, u32, u32);
extern u16* DoTileInteraction(struct Entity_*, u32, u32, u32);
extern void UpdateCollisionLayer(struct Entity_*);
extern void sub_080028E0(struct Entity_*);
extern void SnapToTile(struct Entity_*);
extern u32 sub_0800419C(struct Entity_*, struct Entity_*, u32, u32);
extern u32 sub_080041DC(struct Entity_*, u32, u32);
extern void sub_080042BA(struct Entity_*, u32);
extern void sub_080042D0(struct Entity_*, u32, u16);
extern void sub_080044AE(struct Entity_*, u32, u32);
extern void sub_0800451C(struct Entity_*);
extern void sub_08004542(struct Entity_*);
#endif // ASM_H

View File

@ -32,4 +32,7 @@ extern BgAnimation gBgAnimations[MAX_BG_ANIMATIONS];
extern const u16* const gUnk_080B755C[];
extern const u16 gUnk_080B77C0[];
extern void LoadBgAnimations(u16*);
extern void ClearBgAnimations(void);
#endif // BACKGROUNDANIMATIONS_H

View File

@ -28,4 +28,21 @@ void LoadMapData(MapDataDefinition* dataDefinition);
*/
void RenderMapLayerToSubTileMap(u16* tileMap, MapLayer* mapLayer);
extern void sub_0801AFE4(void);
extern void SetBGDefaults(void);
typedef struct {
s16 tileIndex;
s16 tilePosOffset;
} TileData;
/**
* @brief Sets multiple tiles at once
*
* @param tileData [u16 tileIndex, s16 positionOffset], ends with 0xffff
* @param basePosition the position the offsets in tileData are based on
* @param layer the tile layer
*/
extern void SetMultipleTiles(const TileData* tileData, u32 basePosition, u32 layer);
#endif // BEANSTALKSUBTASK_H

View File

@ -67,4 +67,6 @@ u32 sub_080176E4(Entity*);
extern const u8 gMapTileTypeToActTile[]; // actTile for tileType?
extern u32 sub_0801766C(Entity*);
#endif // COLLISION_H

View File

@ -143,4 +143,6 @@ typedef struct {
u32 mapDataOffset;
} DungeonLayout;
extern void sub_0801E104(void);
#endif // COMMON_H

View File

@ -115,4 +115,23 @@ typedef enum {
FX_6C
} Effect;
Entity* CreateFx(Entity* parent, Effect type, u32 type2);
void CreateDeathFx(Entity* parent);
void CreateDeathFxAt(s32 xOff, s32 yOff, u32 layer);
void CreateDashFx(Entity* parent);
void CreateExplosionBrokenFx(Entity* parent);
void CreateWaterSplashFx(Entity* parent);
Entity* CreateRippleFx(Entity* parent);
void CreateRippleFxRandom(Entity* parent, s32 range);
Entity* CreateLargeRippleFx(Entity* parent);
void CreateLargeRippleFxRandom(Entity* parent, s32 minDistance, s32 maxDistance);
void CreateSparkleFx(Entity* parent);
extern void CreateDrownFx(Entity*);
extern void CreateLavaDrownFx(Entity* parent);
extern void CreateSwampDrownFx(Entity* parent);
extern void CreatePitFallFx(Entity* parent);
void CreateMagicSparklesFxAt(u32 baseX, u32 baseY, u32 layer);
#endif // EFFECTS_H

View File

@ -77,6 +77,11 @@ bool32 PlayerInRange(Entity*, u32, s32);
void EnemyCopyParams(Entity*, Entity*);
void GenericKnockback2(Entity*);
extern void sub_08001318(Entity*);
extern void StealRupees(Entity*);
extern void EnemyDisableRespawn(Enemy*);
enum {
/*0x00*/ OCTOROK,
/*0x01*/ CHUCHU,

8
include/enemy/armos.h Normal file
View File

@ -0,0 +1,8 @@
#ifndef ARMOS_H
#define ARMOS_H
#include "gba/types.h"
void Armos_SetFlagFromTransition(u32 armosId);
#endif //ARMOS_H

View File

@ -325,10 +325,7 @@ bool32 ProcessMovement0(Entity*);
Entity* GetEmptyEntity(void);
Entity* CreateEnemy(u32 id, u32 type);
Entity* CreateNPC(u32 id, u32 type, u32 type2);
Entity* CreateObject(u32 id, u32 type, u32 type2);
Entity* CreateObjectWithParent(Entity* parent, u32 id, u32 type, u32 type2);
Entity* CreateAuxPlayerEntity(void);
Entity* CreateFx(Entity* parent, u32 type, u32 type2);
/// @}
/**

View File

@ -1,9 +1,9 @@
#ifndef FILESELECT_H
#define FILESELECT_H
#include "sound.h"
#include "global.h"
#include "save.h"
#include "message.h"
typedef struct {
/*0x00*/ u8 unk_0x0;
@ -23,19 +23,6 @@ static_assert(sizeof(ChooseFileState) == 0x30);
// TODO: This occupies the same memory region as gMenu
extern ChooseFileState gChooseFileState;
// typedef struct {
// u8 unk00 : 4;
// u8 unk04 : 4;
// u8 unk1;
// u8 charColor;
// u8 bgColor;
// u16 unk4;
// u16 unk6;
// u8* unk8;
// } struct_02036540;
extern struct_020227E8 gUnk_020227E8[];
typedef struct {
/*0x00*/ u8 isTransitioning;
/*0x01*/ u8 unk1;
@ -51,13 +38,9 @@ typedef struct {
extern struct_02019EE0 gMapDataBottomSpecial;
// TODO size: 0x8000 from ClearTileMaps?
extern void sub_08056FEC(u32, struct_020227E8*);
extern u32 ShowTextBox(u32 textIndexOrPtr, const Font* font);
extern void ClearTileMaps(void);
extern void ResetSaveFile(u32);
extern WStruct* sub_0805F2C8(void);
extern u32 sub_0805F7DC(u32, WStruct*);
extern void sub_0805F300(WStruct*);
extern void sub_08050A64(u32);
extern void sub_08050AFC(u32);
extern void sub_08050384();

View File

@ -2,104 +2,8 @@
#define FUNCTIONS_H
#include "global.h"
#include "entity.h"
#include "manager.h"
#include "physics.h"
#include "player.h"
#include "room.h"
#include "structures.h"
#include "script.h"
#include "map.h"
// Identified - to be sorted into header files
extern u32 CheckRegionOnScreen(u32, u32, u32, u32);
extern void CopyOAM(void);
extern void CreateLavaDrownFX(Entity*);
extern Entity* CreateGroundItem(Entity*, u32, u32);
extern Entity* CreateGroundItemWithFlags(Entity*, u32, u32, u32);
extern void CreatePitFallFX(Entity*);
extern void CreateMagicSparkles(u32, u32, u32);
extern void CreateMinishEntrance(u32 tile);
extern u32 CreateRandomItemDrop(Entity*, u32);
extern void DrawDirect(u32 spriteIndex, u32 frameIndex);
extern void DrawEntities(void);
extern void FlushSprites(void);
extern u32 GetTileIndex(u32 tilePos, u32 layer);
extern u32 GiveItem(u32, u32);
extern bool32 LoadFixedGFX(Entity*, u32);
extern void LoadResources(void);
extern bool32 LoadSwapGFX(Entity*, u16, u32);
extern void MenuFadeIn(u32, u32);
extern void SetDirtTile(u32);
/**
* @brief Sets multiple tiles at once
*
* @param tileData [u16 tileIndex, s16 positionOffset], ends with 0xffff
* @param basePosition the position the offsets in tileData are based on
* @param layer the tile layer
*/
extern void SetMultipleTiles(const TileData* tileData, u32 basePosition, u32 layer);
extern void TryLoadPrologueHyruleTown(void);
extern void UnloadGFXSlots(Entity*);
extern void UnloadOBJPalette(Entity*);
extern void UpdateDisplayControls(void);
extern void ClearBgAnimations(void);
extern void SetBGDefaults(void);
// Unidentified
extern s32 sub_080012DC(Entity*);
extern void sub_08001318(Entity*);
extern void LinearMoveDirectionOLD(Entity*, u32, u32);
extern void sub_080028E0(Entity*);
extern u32 sub_080040A2(Entity*);
extern u32 sub_080040D8(Entity*, u8*, s32, s32);
extern void SnapToTile(Entity*);
extern u32 sub_0800419C(Entity*, Entity*, u32, u32);
extern u32 sub_080041DC(Entity*, u32, u32);
extern void sub_080042BA(Entity*, u32);
extern void sub_080042D0(Entity*, u32, u16);
extern void CreateDrownFX(Entity*);
extern u32 sub_0800445C(Entity*);
extern void sub_080044AE(Entity*, u32, u32);
extern u32 BounceUpdate(Entity*, u32);
extern void sub_0800451C(Entity*);
extern void sub_08004542(Entity*);
extern void sub_080085B0(Entity*);
extern u16* DoTileInteraction(Entity*, u32, u32, u32);
extern void UpdateCollisionLayer(Entity*);
extern u32 sub_0801766C(Entity*);
extern void sub_0801AFE4(void);
extern void UpdateUIElements(void);
extern void sub_0801E104(void);
extern void sub_08030118(u32);
extern void sub_0803C0AC(Entity*);
extern void EnemyDisableRespawn(Entity*);
extern u32 sub_0804A024(Entity*, u32, u32);
extern u32 IsMinishItem(u32);
extern void DisableRandomDrops();
extern void EnableRandomDrops(void);
extern s32 sub_08056338(void);
extern void sub_080575C8(u32);
extern void sub_08057688(void);
extern void sub_080580B0(u32);
extern void sub_08058324(u32);
extern void sub_08059278(void);
extern void LoadStaticBackground(u32);
extern void sub_0805EC60(Entity*);
extern void InitPlayerMacro(PlayerMacroEntry*);
extern u32* sub_0805F25C(u32);
extern void sub_0805F8E4(u32 r0, WStruct* r1);
extern void sub_0806D0B0(Entity*);
extern bool32 DoApplicableTransition(u32, u32, u32, u32);
extern void DoExitTransitionWithType(const Transition* screenTransition, u32 transitionType);
extern void sub_080809D4(void);
extern void sub_08080CB4(Entity*);
extern u32 sub_0808288C(Entity*, u32, u32, u32);
extern bool32 sub_08083734(Entity*, u32);
extern void sub_08095C48(Entity*);
extern void sub_080A57F4(void);
extern void sub_080A71C4(u32, u32, u32, u32);
extern void sub_080ADD70(void);
extern void sub_080AF284(void);
extern u32 sub_0804A024(struct Entity_*, u32, u32);
extern void sub_0805EC60(struct Entity_*);
#endif // FUNCTIONS_H

View File

@ -3,7 +3,7 @@
#include "global.h"
#include "area.h"
#include "structures.h"
#include "message.h"
/**
* Change the light level of the room.

View File

@ -5,6 +5,12 @@
#include "entity.h"
#include "player.h"
extern u32 GiveItem(u32, u32);
extern u32 CreateRandomItemDrop(Entity*, u32);
extern void DisableRandomDrops();
extern void EnableRandomDrops(void);
extern u32 IsMinishItem(u32);
void CreateItemEntity(u32, u32, u32);
extern void ExecuteItemFunction(ItemBehavior* this, u32 index);
@ -153,7 +159,11 @@ typedef enum {
} Item;
/** Slot that the item is equipped in. */
typedef enum { EQUIP_SLOT_A, EQUIP_SLOT_B, EQUIP_SLOT_NONE } EquipSlot;
typedef enum {
EQUIP_SLOT_A,
EQUIP_SLOT_B,
EQUIP_SLOT_NONE,
} EquipSlot;
/** Function used to create the item. */
typedef enum {

View File

@ -4,6 +4,7 @@
#include "global.h"
#include "entity.h"
extern void CreateMinishEntrance(u32 tile);
extern void sub_08018C58(u32);
typedef enum {

View File

@ -2,10 +2,10 @@
#define MAIN_H
#include "global.h"
#include "structures.h"
#include "room.h"
#include "script.h"
#include "screen.h"
#include "vram.h"
/** File signature */
#define SIGNATURE 'MCZ3'
@ -158,6 +158,7 @@ extern void DemoTask(void);
extern u8 gUnk_03003DE4[0xC];
extern u16 gPaletteBuffer[];
extern u32 CheckRegionOnScreen(u32, u32, u32, u32);
extern u32 CheckRegionsOnScreen(const u16* arr);
#endif // MAIN_H

View File

@ -11,4 +11,6 @@ typedef struct {
u32 unk_3c;
} HorizontalMinishPathBackgroundManager;
extern void sub_080580B0(u32);
#endif // HORIZONTALMINISHPATHBACKGROUNDMANAGER_H

View File

@ -10,4 +10,6 @@ typedef struct {
u8 gfxGroup2;
} HyruleTownTileSetManager;
extern void TryLoadPrologueHyruleTown(void);
#endif // HYRULETOWNTILESETMANAGER_H

View File

@ -9,4 +9,6 @@ typedef struct {
u32 unk_3c;
} MinishRaftersBackgroundManager;
extern void sub_08058324(u32);
#endif // MINISHRAFTERSBACKGROUNDMANAGER_H

View File

@ -12,4 +12,7 @@ typedef struct {
u16 flag2;
} MiscManager;
extern void sub_08059278(void);
extern void SetDirtTile(u32);
#endif // MISCMANAGER_H

View File

@ -8,4 +8,6 @@ typedef struct {
u32 field_0x20;
} StaticBackgroundManager;
extern void LoadStaticBackground(u32);
#endif // STATICBACKGROUNDMANAGER_H

View File

@ -10,4 +10,7 @@ typedef struct {
void* field_0x3c;
} VerticalMinishPathBackgroundManager;
extern void sub_080575C8(u32);
extern void sub_08057688(void);
#endif // VERTICALMINISHPATHBACKGROUNDMANAGER_H

View File

@ -3,10 +3,54 @@
#include "global.h"
#include "entity.h"
#include "structures.h"
#define MESSAGE_ACTIVE 0x7f
typedef struct {
u8 unk00 : 1;
u8 unk01 : 3;
u8 unk04 : 4;
u8 unk1;
u8 charColor;
u8 bgColor;
u16 unk4;
u16 unk6;
void* unk8;
} WStruct;
static_assert(sizeof(WStruct) == 12);
typedef union {
char s[8];
u32 w[2];
} String8;
extern String8 gUnk_020227E8[];
extern u32 NumberToAscii(u32, String8*);
extern WStruct* sub_0805F2C8(void);
extern u32 sub_0805F7DC(u32, WStruct*);
extern void sub_0805F300(WStruct*);
extern void sub_0805F8E4(u32 r0, WStruct* r1);
extern s32 sub_08056338(void);
typedef struct {
u16* dest;
void* gfx_dest;
void* buffer_loc;
u32 _c;
u16 gfx_src;
u8 width;
u8 right_align : 1;
u8 sm_border : 1;
u8 unused : 1;
u8 draw_border : 1;
u8 border_type : 4;
u8 fill_type;
u8 charColor;
u8 _16;
u8 stylized;
} Font;
typedef struct {
u8 state;
u8 unk;
@ -45,9 +89,11 @@ typedef struct {
Token curToken;
WStruct _50;
char player_name[10];
u8 _66[0x10];
u8 _76;
u8 _77[0x11];
u8 _66[2];
String8 _68;
String8 _70;
String8 _78;
String8 _80;
u8 msgStatus;
u8 renderStatus;
u8 newlineDelay;
@ -138,7 +184,7 @@ void MessageClose(void);
void DispMessageFrame(u16*, s32, s32, u32);
void sub_08057044(u32, struct_020227E8*, u32);
void NumberToAsciiPad3Digits(u32, String8*, u32);
typedef enum {
TEXT_SAVE,

View File

@ -2,22 +2,7 @@
#define NPC_H
#include "global.h"
#include "asm.h"
#include "common.h"
#include "sound.h"
#include "effects.h"
#include "room.h"
#include "flags.h"
#include "physics.h"
#include "message.h"
#include "script.h"
#include "save.h"
#include "entity.h"
#include "player.h"
#include "structures.h"
typedef enum {
DIALOG_ROOM_FLAG,

8
include/npc/bigGoron.h Normal file
View File

@ -0,0 +1,8 @@
#ifndef BIGGORON_H
#define BIGGORON_H
#include "global.h"
extern void sub_0806D0B0(struct Entity_*);
#endif //BIGGORON_H

View File

@ -2,36 +2,8 @@
#define OBJECT_H
#include "global.h"
#include "asm.h"
#include "common.h"
#include "sound.h"
#include "flags.h"
#include "effects.h"
#include "room.h"
#include "physics.h"
#include "definitions.h"
#include "entity.h"
#include "player.h"
void AddInteractablePedestal(Entity*);
void AddInteractableCheckableObject(Entity*);
void sub_0808C650(Entity*, u32);
u32 sub_0808C67C(void);
void sub_0808C688(void);
void SyncPlayerToPlatform(Entity*, bool32);
void UpdateRailMovement(Entity*, u16**, u16*);
void sub_080A2AF4(Entity*, s32, s32);
Entity* CreateLargeWaterTrace(Entity*);
void CreateSparkle(Entity*);
void CreateDust(Entity* parent);
void CreateDustAt(s32, s32, u32);
void CreateDustSmall(Entity* parent);
Entity* CreateWaterTrace(Entity*);
Entity* CreateSpeechBubbleQuestionMark(Entity*, s32, s32);
Entity* CreateSpeechBubbleExclamationMark(Entity*, s32, s32);
Entity* CreateSpeechBubbleSleep(Entity*, s32, s32);
typedef enum {
GROUND_ITEM,
@ -230,6 +202,27 @@ typedef enum {
LINK_ANIMATION,
} Object;
Entity* CreateLinkAnimation(Entity* parent, u32 type, u32 type2);
void ObjectInit(Entity* this);
u32 LoadObjectSprite(Entity* this, s32 type, const ObjectDefinition* definition);
Entity* CreateObject(Object id, u32 type, u32 type2);
Entity* CreateObjectWithParent(Entity* parent, Object id, u32 type, u32 type2);
extern Entity* CreateGroundItem(Entity*, u32 item, u32 subvalue);
extern Entity* CreateGroundItemWithFlags(Entity*, u32 item, u32 subvalue, u32 flags);
void SyncPlayerToPlatform(Entity* this, bool32 param_2);
void UpdateRailMovement(Entity* this, u16** param_2, u16* param_3);
Entity* CreateSpeechBubbleExclamationMark(Entity* parent, s32 offsetX, s32 offsetY);
Entity* CreateSpeechBubbleQuestionMark(Entity* parent, s32 offsetX, s32 offsetY);
Entity* CreateSpeechBubbleSleep(Entity* parent, s32 offsetX, s32 offsetY);
void AddInteractablePedestal(Entity*);
void AddInteractableCheckableObject(Entity*);
void sub_0808C650(Entity*, u32);
u32 sub_0808C67C(void);
void sub_0808C688(void);
void ItemOnGround();
void DeathFx();
void ItemForSale();

View File

@ -0,0 +1,8 @@
#ifndef CUTSCENEMISCOBJECT_H
#define CUTSCENEMISCOBJECT_H
#include "global.h"
extern void sub_08095C48(struct Entity_*);
#endif //CUTSCENEMISCOBJECT_H

View File

@ -0,0 +1,8 @@
#ifndef LOCKEDDOOR_H
#define LOCKEDDOOR_H
#include "global.h"
extern bool32 sub_08083734(struct Entity_*, u32);
#endif //LOCKEDDOOR_H

8
include/object/pot.h Normal file
View File

@ -0,0 +1,8 @@
#ifndef POT_H
#define POT_H
#include "global.h"
extern u32 sub_0808288C(struct Entity_*, u32, u32, u32);
#endif //POT_H

View File

@ -55,8 +55,11 @@ extern bool32 ProcessMovement4(Entity*);
extern bool32 ProcessMovement5(Entity*);
extern bool32 ProcessMovement6(Entity*);
extern bool32 ProcessMovementInternal(Entity*, s32, s32, u32);
extern void sub_080AF284(void);
extern const s16 gSineTable[64];
extern const s16 gCosineTable[256];
extern u32 BounceUpdate(Entity*, u32);
#endif // PHYSICS_H

View File

@ -609,6 +609,17 @@ typedef struct {
/*0x18*/ Entity* field_0x18;
} ItemBehavior;
typedef enum { ACTIVE_ITEM_0, ACTIVE_ITEM_1, ACTIVE_ITEM_2, ACTIVE_ITEM_LANTERN, MAX_ACTIVE_ITEMS } ActiveItemIndex;
/**
* Currently active items.
* 0: Active items?
* 1: Boots, Cape
* 2: would be used by CreateItem1 if gActiveItems[1] was already filled
* 3: Lamp
*/
extern ItemBehavior gActiveItems[MAX_ACTIVE_ITEMS];
static_assert(sizeof(gActiveItems) == 0x70);
extern void (*const gPlayerItemFunctions[])(Entity*);
typedef struct {
@ -778,6 +789,8 @@ bool32 HasSwordEquipped();
u32 GetPlayerPalette(bool32 use);
void PlayerShrinkByRay(void);
extern void InitPlayerMacro(PlayerMacroEntry*);
// player.s
extern u32 PlayerCheckNEastTile();
extern u32* DoTileInteractionHere(Entity*, u32);
@ -786,6 +799,7 @@ extern void sub_08008AC6(Entity*);
extern void sub_08008926(Entity*);
extern void sub_08008AC6(Entity*);
extern void sub_08008AA0(Entity*);
extern void sub_080085B0(Entity*);
// zelda.c
void SetZeldaFollowTarget(Entity* target);

View File

@ -1,6 +1,8 @@
#ifndef PLAYERITEM_H
#define PLAYERITEM_H
#include "global.h"
typedef enum {
PLAYER_ITEM_NONE,
PLAYER_ITEM_SWORD,
@ -29,4 +31,6 @@ typedef enum {
PLAYER_ITEM_CELL_OVERWRITE_SET2,
} PlayerItem;
extern u32 sub_080040D8(struct Entity_*, u8*, s32, s32);
#endif // PLAYERITEM_H

View File

@ -233,8 +233,6 @@ Entity* LoadRoomEntity(const EntityData*);
void LoadRoomEntityList(const EntityData* listPtr);
void* GetRoomProperty(u32 area, u32 room, u32 property);
bool32 LoadFixedGFX(Entity*, u32);
void UnloadGFXSlots(Entity*);
void LoadSmallChestTile2(TileEntity*);
void sub_0804B0B0(u32 arg0, u32 arg1);

View File

@ -3,11 +3,22 @@
#include "global.h"
#include "player.h"
#include "structures.h"
#include "room.h"
#define FILENAME_LENGTH 6
typedef struct {
int signature;
u8 saveFileId;
u8 msg_speed;
u8 brightness;
u8 language;
u8 name[6];
u8 invalid;
u8 initialized;
} SaveHeader;
#define gSaveHeader ((SaveHeader*)(0x2000000))
typedef enum {
SAVE_BUSY = 0,
SAVE_OK = 1,

View File

@ -76,17 +76,6 @@ typedef struct {
// /*0x78*/ u32 _78;
} Screen;
typedef struct {
s16 x;
s16 y;
u16 _4;
u16 _6;
u16 _8;
} OAMCommand;
extern Screen gScreen;
extern OAMCommand gOamCmd;
extern void sub_080ADA04(OAMCommand*, void*);
#endif // SCREEN_H

View File

@ -2,8 +2,15 @@
#define SCROLL_H
#include "global.h"
#include "transitions.h"
extern bool32 DoApplicableTransition(u32, u32, u32, u32);
extern void DoExitTransitionWithType(const Transition* screenTransition, u32 transitionType);
void UpdateIsDiggingCave(void);
void sub_08080930(u32);
extern void sub_080809D4(void);
extern void sub_08080CB4(struct Entity_*);
#endif // SCROLL_H

View File

@ -3,19 +3,6 @@
#include "global.h"
#include "entity.h"
#include "player.h"
typedef struct {
int signature;
u8 saveFileId;
u8 msg_speed;
u8 brightness;
u8 language;
u8 name[6];
u8 invalid;
u8 initialized;
} SaveHeader;
#define gSaveHeader ((SaveHeader*)(0x2000000))
typedef struct {
u8 unk_00;
@ -141,47 +128,6 @@ typedef struct {
} HUD;
extern HUD gHUD;
#define MAX_GFX_SLOTS 44
typedef enum {
GFX_SLOT_FREE,
GFX_SLOT_UNLOADED, // some sort of free? no longer in use?
GFX_SLOT_STATUS2, // some sort of free?
GFX_SLOT_FOLLOWER, // Set by SetGFXSlotStatus for the following slots
GFX_SLOT_RESERVED, // maybe ready to be loaded?
GFX_SLOT_GFX,
GFX_SLOT_PALETTE
} GfxSlotStatus;
typedef enum {
GFX_VRAM_0,
GFX_VRAM_1, // uploaded to vram?
GFX_VRAM_2,
GFX_VRAM_3, // not yet uploaded to vram?
} GfxSlotVramStatus;
typedef struct {
/*0x00*/ u8 status : 4;
/*0x00*/ u8 vramStatus : 4; // Whether the gfx was uploaded to the vram?
/*0x01*/ u8 slotCount;
/*0x02*/ u8 referenceCount; /**< How many entities use this gfx slot */
/*0x03*/ u8 unk_3;
/*0x04*/ u16 gfxIndex;
/*0x06*/ u16 paletteIndex;
/*0x08*/ const void* palettePointer;
} GfxSlot;
typedef struct {
/*0x00*/ u8 unk0;
/*0x01*/ u8 unk_1;
/*0x02*/ u8 unk_2;
/*0x03*/ u8 unk_3;
/*0x04*/ GfxSlot slots[MAX_GFX_SLOTS];
} GfxSlotList;
extern GfxSlotList gGFXSlots;
static_assert(sizeof(GfxSlotList) == 0x214);
typedef struct {
u16 unk_00;
u8 unk_02[0xE];
@ -193,16 +139,6 @@ extern u16 gBG1Buffer[0x400];
extern u16 gBG2Buffer[0x400];
extern u16 gBG3Buffer[0x800];
typedef enum { ACTIVE_ITEM_0, ACTIVE_ITEM_1, ACTIVE_ITEM_2, ACTIVE_ITEM_LANTERN, MAX_ACTIVE_ITEMS } ActiveItemIndex;
/**
* Currently active items.
* 0: Active items?
* 1: Boots, Cape
* 2: would be used by CreateItem1 if gActiveItems[1] was already filled
* 3: Lamp
*/
extern ItemBehavior gActiveItems[MAX_ACTIVE_ITEMS];
static_assert(sizeof(gActiveItems) == 0x70);
typedef struct {
u8 event_priority; // system requested priority
@ -230,20 +166,6 @@ typedef struct {
extern PauseMenuOptions gPauseMenuOptions;
static_assert(sizeof(PauseMenuOptions) == 0x18);
typedef struct {
u8 unk00 : 1;
u8 unk01 : 3;
u8 unk04 : 4;
u8 unk1;
u8 charColor;
u8 bgColor;
u16 unk4;
u16 unk6;
void* unk8;
} WStruct;
static_assert(sizeof(WStruct) == 12);
typedef struct {
u8 unk0;
u8 unk1;
@ -267,11 +189,6 @@ typedef struct {
} OAMControls;
extern OAMControls gOAMControls;
typedef struct {
union SplitWord _0;
union SplitWord _4;
} struct_020227E8;
typedef struct {
s8 x;
s8 y;
@ -318,24 +235,6 @@ typedef struct {
extern SpritePtr gSpritePtrs[];
typedef struct {
u16* dest;
void* gfx_dest;
void* buffer_loc;
u32 _c;
u16 gfx_src;
u8 width;
u8 right_align : 1;
u8 sm_border : 1;
u8 unused : 1;
u8 draw_border : 1;
u8 border_type : 4;
u8 fill_type;
u8 charColor;
u8 _16;
u8 stylized;
} Font;
typedef struct {
u8 unk_0;
u8 unk_1;
@ -351,11 +250,6 @@ typedef struct {
extern struct_02018EB0 gUnk_02018EB0;
typedef struct {
s16 tileIndex;
s16 tilePosOffset;
} TileData;
typedef struct {
/*0x00*/ bool8 isOnlyActiveFirstFrame; /**< Is the behavior for this item only created on the first frame */
/*0x01*/ u8 priority;

View File

@ -117,4 +117,7 @@ extern const struct_gUnk_08128E94 gUnk_08128E94[];
#define DRAW_DIRECT_SPRITE_INDEX 0x1fb
#endif
extern void MenuFadeIn(u32, u32);
extern void sub_080A71C4(u32, u32, u32, u32);
#endif // SUBTASK_H

View File

@ -4,6 +4,7 @@
#include "global.h"
extern void DrawUIElements(void);
extern void UpdateUIElements(void);
extern void CreateUIElement(u32, u32);
extern void sub_0801C2F0(u32, u32);
extern void sub_0801C25C(void);

53
include/vram.h Normal file
View File

@ -0,0 +1,53 @@
#ifndef VRAM_H
#define VRAM_H
#include "global.h"
#include "entity.h"
#define MAX_GFX_SLOTS 44
typedef enum {
GFX_SLOT_FREE,
GFX_SLOT_UNLOADED, // some sort of free? no longer in use?
GFX_SLOT_STATUS2, // some sort of free?
GFX_SLOT_FOLLOWER, // Set by SetGFXSlotStatus for the following slots
GFX_SLOT_RESERVED, // maybe ready to be loaded?
GFX_SLOT_GFX,
GFX_SLOT_PALETTE
} GfxSlotStatus;
typedef enum {
GFX_VRAM_0,
GFX_VRAM_1, // uploaded to vram?
GFX_VRAM_2,
GFX_VRAM_3, // not yet uploaded to vram?
} GfxSlotVramStatus;
typedef struct {
/*0x00*/ u8 status : 4;
/*0x00*/ u8 vramStatus : 4; // Whether the gfx was uploaded to the vram?
/*0x01*/ u8 slotCount;
/*0x02*/ u8 referenceCount; /**< How many entities use this gfx slot */
/*0x03*/ u8 unk_3;
/*0x04*/ u16 gfxIndex;
/*0x06*/ u16 paletteIndex;
/*0x08*/ const void* palettePointer;
} GfxSlot;
typedef struct {
/*0x00*/ u8 unk0;
/*0x01*/ u8 unk_1;
/*0x02*/ u8 unk_2;
/*0x03*/ u8 unk_3;
/*0x04*/ GfxSlot slots[MAX_GFX_SLOTS];
} GfxSlotList;
extern GfxSlotList gGFXSlots;
static_assert(sizeof(GfxSlotList) == 0x214);
extern bool32 LoadFixedGFX(Entity*, u32);
extern bool32 LoadSwapGFX(Entity*, u32, u32);
extern void UnloadGFXSlots(Entity*);
extern void sub_080ADD70(void);
#endif //VRAM_H

View File

@ -1,3 +1,4 @@
#include "affine.h"
#include "global.h"
#include "structures.h"
#include "main.h"

View File

@ -8,7 +8,8 @@
#include "asm.h"
#include "assets/gfx_offsets.h"
#include "common.h"
#include "functions.h"
#include "structures.h"
#include "room.h"
void LoadBgAnimationGfx(const BgAnimationGfx*);
u32 GetBgAnimationTimer(const s32*);

View File

@ -4,7 +4,6 @@
#include "collision.h"
#include "common.h"
#include "fade.h"
#include "functions.h"
#include "game.h"
#include "item.h"
#include "main.h"
@ -12,10 +11,16 @@
#include "manager/diggingCaveEntranceManager.h"
#include "menu.h"
#include "object.h"
#include "asm.h"
#include "flags.h"
#include "room.h"
#include "player.h"
#include "screen.h"
#include "scroll.h"
#include "structures.h"
#include "tiles.h"
#include "affine.h"
#include "subtask.h"
extern void sub_0807C898(void);
extern void sub_0805BB74(s32);

View File

@ -1,7 +1,7 @@
#include "asm.h"
#include "global.h"
#include "entity.h"
#include "functions.h"
#include "map.h"
#include "player.h"
#include "room.h"

View File

@ -3,11 +3,13 @@
#include "common.h"
#include "enemy.h"
#include "entity.h"
#include "functions.h"
#include "game.h"
#include "structures.h"
#include "global.h"
#include "item.h"
#include "object.h"
#include "sound.h"
#include "effects.h"
#include "physics.h"
#include "player.h"
#include "save.h"
#include "tiles.h"

View File

@ -7,6 +7,7 @@
#include "fileselect.h"
#include "main.h"
#include "physics.h"
#include "structures.h"
extern Palette gUnk_02001A3C;

View File

@ -4,7 +4,7 @@
#include "area.h"
#include "asm.h"
#include "flags.h"
#include "functions.h"
#include "physics.h"
#include "game.h"
#include "global.h"
#include "item.h"
@ -15,6 +15,7 @@
#include "save.h"
#include "screen.h"
#include "sound.h"
#include "subtask.h"
#include "structures.h"
extern u8 gUnk_03003DE0;
@ -97,9 +98,8 @@ typedef struct {
u8 y;
} PACKED DungeonMapObject;
// More like PrepareTileEntitesForDungeonMap or so
u32 DecToHex(u32 value) {
u32 EncodeBCD(u32 value) {
u32 result;
FORCE_REGISTER(u32 r1, r1);

View File

@ -8,14 +8,22 @@
#include "enemy.h"
#include "fade.h"
#include "fileselect.h"
#include "functions.h"
#include "structures.h"
#include "game.h"
#include "main.h"
#include "menu.h"
#include "npc.h"
#include "object.h"
#include "common.h"
#include "sound.h"
#include "flags.h"
#include "room.h"
#include "screen.h"
#include "subtask.h"
#include "beanstalkSubtask.h"
#include "tiles.h"
#include "backgroundAnimations.h"
#include "manager/staticBackgroundManager.h"
void sub_08051F78(void);
void sub_08051FF0(void);

View File

@ -6,13 +6,14 @@
*/
#include "common.h"
#include "functions.h"
#include "game.h"
#include "main.h"
#include "menu.h"
#include "message.h"
#include "screen.h"
#include "sound.h"
#include "save.h"
#include "structures.h"
void sub_0805FA04(void);
void sub_0805FA98(void);

View File

@ -7,7 +7,6 @@
#include "common.h"
#include "fileselect.h"
#include "functions.h"
#include "game.h"
#include "global.h"
#include "main.h"
@ -15,6 +14,9 @@
#include "message.h"
#include "screen.h"
#include "menu.h"
#include "sound.h"
#include "affine.h"
#include "structures.h"
void sub_080A30AC(void);
void sub_080A2E40(void);

View File

@ -5,7 +5,8 @@
* @brief Acro Bandits enemy
*/
#include "enemy.h"
#include "functions.h"
#include "player.h"
#include "physics.h"
typedef struct {
/*0x00*/ Entity base;

View File

@ -4,14 +4,17 @@
*
* @brief Armos enemy
*/
#include "enemy/armos.h"
#include "collision.h"
#include "common.h"
#include "enemy.h"
#include "flags.h"
#include "functions.h"
#include "physics.h"
#include "global.h"
#include "hitbox.h"
#include "tiles.h"
#include "room.h"
#include "player.h"
typedef struct {
/*0x00*/ Entity base;
@ -68,11 +71,11 @@ void sub_080300E8(void) {
}
}
void sub_08030118(u32 armosId) {
void Armos_SetFlagFromTransition(u32 armosId) {
if (((gRoomTransition.armos_data.field_0xac >> armosId) & 1) != 0) {
SetLocalFlagByBank(FLAG_BANK_3, armosId + 0x67);
SetLocalFlagByBank(FLAG_BANK_3, armosId + AMOS_00_00);
} else {
ClearLocalFlagByBank(FLAG_BANK_3, armosId + 0x67);
ClearLocalFlagByBank(FLAG_BANK_3, armosId + AMOS_00_00);
}
}

View File

@ -6,7 +6,8 @@
*/
#include "enemy.h"
#include "entity.h"
#include "functions.h"
#include "room.h"
#include "physics.h"
typedef struct {
Entity base;

View File

@ -5,7 +5,8 @@
* @brief Beetle enemy
*/
#include "enemy.h"
#include "functions.h"
#include "player.h"
#include "physics.h"
typedef struct {
/*0x00*/ Entity base;

View File

@ -4,10 +4,10 @@
*
* @brief Blade Trap enemy
*/
#include "entity.h"
#include "object.h"
#include "room.h"
#include "sound.h"
#include "room.h"
#include "physics.h"
typedef struct {
/*0x00*/ Entity base;

View File

@ -7,9 +7,11 @@
#include "asm.h"
#include "collision.h"
#include "enemy.h"
#include "functions.h"
#include "object.h"
#include "sound.h"
#include "effects.h"
#include "physics.h"
#include "player.h"
typedef struct {
/*0x00*/ Entity base;
@ -177,7 +179,7 @@ void sub_0802C91C(BobombEntity* this) {
sub_0802CBC4(this);
} else {
if ((super->timer & 0xf) == 8) {
CreateDustSmall(super);
CreateDashFx(super);
}
sub_0802CC18(this);
}

View File

@ -9,6 +9,8 @@
#include "entity.h"
#include "functions.h"
#include "object.h"
#include "room.h"
#include "physics.h"
#include "player.h"
typedef struct {

View File

@ -5,9 +5,10 @@
* @brief Bombarossa enemy
*/
#include "enemy.h"
#include "entity.h"
#include "object.h"
#include "asm.h"
#include "room.h"
#include "physics.h"
typedef struct {
Entity base;

View File

@ -6,7 +6,7 @@
*/
#include "enemy.h"
#include "entity.h"
#include "functions.h"
#include "physics.h"
typedef struct {
Entity base;

View File

@ -6,14 +6,13 @@
*/
#include "asm.h"
#include "enemy.h"
#include "functions.h"
#include "game.h"
#include "item.h"
#include "kinstone.h"
#include "message.h"
#include "npc.h"
#include "save.h"
#include "tiles.h"
#include "vram.h"
struct SalesOffering {
u8 field_0x0;

View File

@ -4,9 +4,13 @@
*
* @brief Business Scrub Prologue enemy
*/
#include "object/cutsceneMiscObject.h"
#include "enemy.h"
#include "entity.h"
#include "functions.h"
#include "script.h"
#include "physics.h"
#include "room.h"
#include "player.h"
typedef struct {
Entity base;

View File

@ -6,6 +6,8 @@
*/
#include "enemy.h"
#include "functions.h"
#include "player.h"
#include "physics.h"
extern void (*const Chaser_Functions[])(Entity*);
extern void (*const gUnk_080CD298[])(Entity*);

View File

@ -6,7 +6,7 @@
*/
#include "asm.h"
#include "enemy.h"
#include "functions.h"
#include "physics.h"
#include "tiles.h"
typedef struct {
@ -73,7 +73,7 @@ void Chuchu(ChuchuEntity* this) {
/* ... */
break;
case 2:
CreateDrownFX(super);
CreateDrownFx(super);
return;
}
}

View File

@ -5,9 +5,19 @@
* @brief Chuchu Boss enemy
*/
#include "enemy.h"
#include "functions.h"
#include "object.h"
#include "asm.h"
#include "common.h"
#include "sound.h"
#include "effects.h"
#include "room.h"
#include "physics.h"
#include "player.h"
#include "tiles.h"
#include "structures.h"
#ifndef EU
#include "vram.h"
#endif
typedef struct {
u8 unk_00;

View File

@ -6,7 +6,7 @@
*/
#include "collision.h"
#include "enemy.h"
#include "functions.h"
#include "room.h"
#include "physics.h"
#include "tiles.h"

View File

@ -6,7 +6,7 @@
*/
#include "enemy.h"
#include "entity.h"
#include "functions.h"
#include "physics.h"
typedef struct {
Entity base;

View File

@ -6,7 +6,9 @@
*/
#include "enemy.h"
#include "entity.h"
#include "functions.h"
#include "room.h"
#include "player.h"
#include "physics.h"
typedef struct {
Entity base;

View File

@ -5,7 +5,7 @@
* @brief Cucco Chick Aggr enemy
*/
#include "enemy.h"
#include "functions.h"
#include "player.h"
void sub_08022A88(Entity*);
void sub_08022AA4(Entity*);

View File

@ -5,7 +5,6 @@
* @brief Dark Nut enemy
*/
#include "enemy.h"
#include "functions.h"
typedef struct {
/*0x00*/ Entity base;

View File

@ -5,9 +5,13 @@
* @brief Door Mimic enemy
*/
#include "enemy.h"
#include "functions.h"
#include "sound.h"
#include "tiles.h"
#include "object.h"
#include "asm.h"
#include "common.h"
#include "effects.h"
#include "room.h"
typedef struct {
/*0x00*/ Entity base;
@ -51,7 +55,7 @@ void DoorMimic_OnCollision(DoorMimicEntity* this) {
void DoorMimic_OnDeath(DoorMimicEntity* this) {
SetTile(this->unk_7c, this->unk_7e, super->collisionLayer);
CreateFx(super, FX_POT_SHATTER, 0);
EnemyDisableRespawn(super);
EnemyDisableRespawn((Enemy*)super);
DeleteThisEntity();
}

View File

@ -9,9 +9,13 @@
#include "entity.h"
#include "hitbox.h"
#include "object.h"
#include "common.h"
#include "sound.h"
#include "flags.h"
#include "effects.h"
#include "room.h"
#include "physics.h"
#include "player.h"
#include "room.h"
typedef struct {
Entity base;

View File

@ -6,7 +6,8 @@
*/
#include "enemy.h"
#include "entity.h"
#include "functions.h"
#include "room.h"
#include "physics.h"
typedef struct {
/*0x00*/ Entity base;

View File

@ -6,8 +6,9 @@
*/
#include "area.h"
#include "enemy.h"
#include "functions.h"
#include "physics.h"
#include "player.h"
#include "room.h"
typedef struct {
/*0x00*/ Entity base;

View File

@ -6,8 +6,11 @@
*/
#include "enemy.h"
#include "fade.h"
#include "functions.h"
#include "scroll.h"
#include "physics.h"
#include "tiles.h"
#include "room.h"
#include "player.h"
typedef struct {
/*0x00*/ Entity base;

View File

@ -5,7 +5,6 @@
* @brief EnemyE enemy
*/
#include "enemy.h"
#include "functions.h"
void sub_08023000(Entity*, int);

View File

@ -6,9 +6,14 @@
*/
#include "enemy.h"
#include "fade.h"
#include "functions.h"
#include "hitbox.h"
#include "object.h"
#include "asm.h"
#include "sound.h"
#include "flags.h"
#include "effects.h"
#include "room.h"
#include "physics.h"
#include "tiles.h"
typedef struct {

View File

@ -5,7 +5,9 @@
* @brief Falling Boulder enemy
*/
#include "enemy.h"
#include "functions.h"
#include "room.h"
#include "player.h"
#include "physics.h"
typedef struct {
/*0x00*/ Entity base;

View File

@ -5,7 +5,8 @@
* @brief Fireball Guy enemy
*/
#include "enemy.h"
#include "functions.h"
#include "player.h"
#include "physics.h"
typedef struct {
/*0x00*/ Entity base;

View File

@ -6,7 +6,7 @@
*/
#include "collision.h"
#include "enemy.h"
#include "functions.h"
#include "physics.h"
#include "player.h"
#include "room.h"
#include "tiles.h"

View File

@ -4,12 +4,15 @@
*
* @brief Flying Skull enemy
*/
#include "object/pot.h"
#include "collision.h"
#include "enemy.h"
#include "entity.h"
#include "functions.h"
#include "physics.h"
#include "hitbox.h"
#include "tiles.h"
#include "room.h"
#include "player.h"
typedef struct {
Entity base;

View File

@ -6,7 +6,7 @@
*/
#include "area.h"
#include "enemy.h"
#include "functions.h"
#include "player.h"
#include "physics.h"
typedef struct {

View File

@ -5,8 +5,12 @@
* @brief Gibdo enemy
*/
#include "enemy.h"
#include "functions.h"
#include "object.h"
#include "asm.h"
#include "sound.h"
#include "effects.h"
#include "physics.h"
#include "player.h"
typedef struct {
Entity base;

View File

@ -6,10 +6,17 @@
*/
#include "enemy.h"
#include "entity.h"
#include "functions.h"
#include "object.h"
#include "asm.h"
#include "common.h"
#include "sound.h"
#include "flags.h"
#include "effects.h"
#include "room.h"
#include "physics.h"
#include "player.h"
#include "screen.h"
#include "structures.h"
typedef struct {
union SplitHWord unk0;

View File

@ -6,8 +6,9 @@
*/
#include "asm.h"
#include "enemy/gyorg.h"
#include "functions.h"
#include "room.h"
#include "player.h"
#include "physics.h"
void GyorgChild_OnTick(GyorgChildEntity*);
void GyorgChild_OnCollision(GyorgChildEntity*);

View File

@ -12,7 +12,8 @@
#include "sound.h"
#include "assets/map_offsets.h"
#include "game.h"
#include "functions.h"
#include "player.h"
#include "room.h"
extern u8 gEntCount;
extern u8 gMapDataTopSpecial[];

View File

@ -7,8 +7,8 @@
#include "enemy.h"
#include "enemy/gyorg.h"
#include "entity.h"
#include "functions.h"
#include "player.h"
#include "room.h"
void GyorgFemaleEye_OnTick(GyorgFemaleEyeEntity*);
void GyorgFemaleEye_OnCollision(GyorgFemaleEyeEntity*);

View File

@ -8,7 +8,7 @@
#include "enemy.h"
#include "enemy/gyorg.h"
#include "fileselect.h"
#include "functions.h"
#include "physics.h"
#include "player.h"
// todo: wrong types

Some files were not shown because too many files have changed in this diff Show More