mirror of
https://github.com/zeldaret/tmc
synced 2026-07-09 23:01:43 -04:00
Extract entity definitions
This commit is contained in:
@@ -0,0 +1,404 @@
|
||||
#ifndef SPRITEDATA_H
|
||||
#define SPRITEDATA_H
|
||||
|
||||
// Definition for enemies and projectiles
|
||||
typedef struct EnemyDefinition {
|
||||
u16 gfx;
|
||||
u16 paletteIndex;
|
||||
union {
|
||||
const Hitbox* hitbox;
|
||||
const struct EnemyDefinition* definition;
|
||||
} ptr;
|
||||
u16 spriteIndex;
|
||||
struct {
|
||||
u8 spritePriority : 3;
|
||||
u8 unknown : 1;
|
||||
u8 draw : 2;
|
||||
u8 shadow : 2;
|
||||
} PACKED spriteFlags;
|
||||
u8 health;
|
||||
s16 speed;
|
||||
u8 damageType;
|
||||
u8 flags2;
|
||||
} EnemyDefinition;
|
||||
|
||||
typedef struct ProjectileDefinition {
|
||||
u16 gfx;
|
||||
u16 paletteIndex;
|
||||
union {
|
||||
const Hitbox* hitbox;
|
||||
const struct ProjectileDefinition* definition;
|
||||
} ptr;
|
||||
u16 spriteIndex : 12;
|
||||
u16 field0x3c : 4;
|
||||
struct {
|
||||
u8 spritePriority : 3;
|
||||
u8 unknown : 1;
|
||||
u8 draw : 2;
|
||||
u8 shadow : 2;
|
||||
} PACKED spriteFlags;
|
||||
u8 field0x40;
|
||||
s16 speed;
|
||||
u8 damageType;
|
||||
u8 flags2;
|
||||
} ProjectileDefinition;
|
||||
|
||||
// Sprite data definition for objects and npcs
|
||||
typedef struct SpriteDataB {
|
||||
u8 type;
|
||||
u8 unk;
|
||||
u16 bitfield;
|
||||
union {
|
||||
struct {
|
||||
u16 paletteIndex;
|
||||
u16 spriteIndex;
|
||||
} sprite;
|
||||
const struct SpriteDataB* spriteData;
|
||||
} data;
|
||||
} SpriteDataB;
|
||||
|
||||
// Sprite data definition for player items
|
||||
typedef struct SpriteDataC {
|
||||
u8 bitfield;
|
||||
u8 index;
|
||||
u16 unk;
|
||||
u8 unk2;
|
||||
u8 spriteIndex;
|
||||
u16 gfxLoadBitfield;
|
||||
} SpriteDataC;
|
||||
|
||||
typedef enum {
|
||||
SPRITE_0,
|
||||
SPRITE_1,
|
||||
SPRITE_2,
|
||||
SPRITE_3,
|
||||
SPRITE_4,
|
||||
SPRITE_5,
|
||||
SPRITE_6,
|
||||
SPRITE_7,
|
||||
SPRITE_8,
|
||||
SPRITE_9,
|
||||
SPRITE_OBJECT4,
|
||||
SPRITE_OBJECT6,
|
||||
SPRITE_12,
|
||||
SPRITE_13,
|
||||
SPRITE_14,
|
||||
SPRITE_15,
|
||||
SPRITE_16,
|
||||
SPRITE_17,
|
||||
SPRITE_18,
|
||||
SPRITE_19,
|
||||
SPRITE_20,
|
||||
SPRITE_21,
|
||||
SPRITE_22,
|
||||
SPRITE_ITEMGUSTJAR,
|
||||
SPRITE_GENTARI,
|
||||
SPRITE_FESTARI,
|
||||
SPRITE_MELARI,
|
||||
SPRITE_MOUNTAINMINISH,
|
||||
SPRITE_28,
|
||||
SPRITE_TOWNMINISH,
|
||||
SPRITE_LIBRARI,
|
||||
SPRITE_FORESTMINISH,
|
||||
SPRITE_VAATI,
|
||||
SPRITE_OBJECT6A_9,
|
||||
SPRITE_OBJECT6A_0,
|
||||
SPRITE_OBJECT6A_1,
|
||||
SPRITE_OBJECT6A_2,
|
||||
SPRITE_MINISHEZLO,
|
||||
SPRITE_OBJECT6A_3,
|
||||
SPRITE_DIN,
|
||||
SPRITE_NAYRU,
|
||||
SPRITE_FARORE,
|
||||
SPRITE_NPC5,
|
||||
SPRITE_GUARDWITHSPEAR,
|
||||
SPRITE_KINGDALTUS,
|
||||
SPRITE_MINISTERPOTHO,
|
||||
SPRITE_NPC26,
|
||||
SPRITE_MAID,
|
||||
SPRITE_TINGLESIBLINGS,
|
||||
SPRITE_BEEDLE,
|
||||
SPRITE_BROCCO,
|
||||
SPRITE_PINA,
|
||||
SPRITE_POSTMAN,
|
||||
SPRITE_MALON,
|
||||
SPRITE_EPONA,
|
||||
SPRITE_MILKCART,
|
||||
SPRITE_SMITH,
|
||||
SPRITE_TOWNSPERSON,
|
||||
SPRITE_58,
|
||||
SPRITE_KID,
|
||||
SPRITE_MAILBOX,
|
||||
SPRITE_SITTINGPERSON,
|
||||
SPRITE_MUTOH,
|
||||
SPRITE_CARPENTER,
|
||||
SPRITE_GORMAN,
|
||||
SPRITE_CAT,
|
||||
SPRITE_CAT_1,
|
||||
SPRITE_DOG,
|
||||
SPRITE_DOG_1,
|
||||
SPRITE_DOG_2,
|
||||
SPRITE_SYRUP,
|
||||
SPRITE_PERCY,
|
||||
SPRITE_FARMERS_0,
|
||||
SPRITE_FARMERS_1,
|
||||
SPRITE_DAMPE,
|
||||
SPRITE_KINGGUSTAF,
|
||||
SPRITE_GINA,
|
||||
SPRITE_SIMON,
|
||||
SPRITE_MAMA,
|
||||
SPRITE_TEACHERS,
|
||||
SPRITE_TEACHERS_1,
|
||||
SPRITE_WINDTRIBESPEOPLE_0,
|
||||
SPRITE_WINDTRIBESPEOPLE_1,
|
||||
SPRITE_WINDTRIBESPEOPLE_2,
|
||||
SPRITE_WINDTRIBESPEOPLE_3,
|
||||
SPRITE_WINDTRIBESPEOPLE_4,
|
||||
SPRITE_WINDTRIBESPEOPLE_5,
|
||||
SPRITE_MAYORHAGEN,
|
||||
SPRITE_GHOSTBROTHERS,
|
||||
SPRITE_HURDYGURDYMAN,
|
||||
SPRITE_COW,
|
||||
SPRITE_GORONMERCHANT,
|
||||
SPRITE_GORONMERCHANT_1,
|
||||
SPRITE_GORON,
|
||||
SPRITE_CASTORWILDSSTATUE,
|
||||
SPRITE_NPC4F,
|
||||
SPRITE_OBJECT6A_4,
|
||||
SPRITE_97,
|
||||
SPRITE_DARKNUT_0,
|
||||
SPRITE_DARKNUT_1,
|
||||
SPRITE_CHUCHUBOSS_0,
|
||||
SPRITE_DEATHFX_0,
|
||||
SPRITE_MADDERPILLAR_0,
|
||||
SPRITE_GLEEROK_0,
|
||||
SPRITE_KEATON,
|
||||
SPRITE_MAZAALHAND,
|
||||
SPRITE_SCISSORSBEETLE,
|
||||
SPRITE_MANDIBLESPROJECTILE,
|
||||
SPRITE_STALFOS,
|
||||
SPRITE_GIBDO,
|
||||
SPRITE_LAKITU,
|
||||
SPRITE_LAKITUCLOUDPROJECTILE,
|
||||
SPRITE_VAATIREBORNENEMY_0,
|
||||
SPRITE_VAATIREBORNENEMY_1,
|
||||
SPRITE_VAATIREBORNENEMY_2,
|
||||
SPRITE_VAATIREBORNENEMY_3,
|
||||
SPRITE_VAATIBALL,
|
||||
SPRITE_VAATITRANSFIGURED_0,
|
||||
SPRITE_VAATITRANSFIGURED_1,
|
||||
SPRITE_VAATITRANSFIGURED_2,
|
||||
SPRITE_VAATITRANSFIGURED_3,
|
||||
SPRITE_VAATIARM,
|
||||
SPRITE_VAATIWRATH,
|
||||
SPRITE_VAATIREBORN,
|
||||
SPRITE_MOBLINLADY_1,
|
||||
SPRITE_BALLCHAINSOLDIER,
|
||||
SPRITE_GYORGMALE,
|
||||
SPRITE_JARPORTAL,
|
||||
SPRITE_BEANSTALK_0,
|
||||
SPRITE_MINECART,
|
||||
SPRITE_LAVAPLATFORM_1,
|
||||
SPRITE_WHIRLWIND,
|
||||
SPRITE_BIGVORTEX,
|
||||
SPRITE_MACROBOOK,
|
||||
SPRITE_GENTARICURTAINS,
|
||||
SPRITE_SPIDERWEB,
|
||||
SPRITE_OBJECT79,
|
||||
SPRITE_OCTOROKBOSS_0,
|
||||
SPRITE_BELL,
|
||||
SPRITE_TALON,
|
||||
SPRITE_STURGEON,
|
||||
SPRITE_LIBRARIANS_0,
|
||||
SPRITE_LIBRARIANS_1,
|
||||
SPRITE_STAMP,
|
||||
SPRITE_MARCY,
|
||||
SPRITE_STOCKWELL,
|
||||
SPRITE_WHEATON,
|
||||
SPRITE_PITA,
|
||||
SPRITE_CUCCOAGGR,
|
||||
SPRITE_BLADEBROTHERS_0,
|
||||
SPRITE_BLADEBROTHERS_1,
|
||||
SPRITE_REM,
|
||||
SPRITE_CARLOV_0,
|
||||
SPRITE_CARLOV_1,
|
||||
SPRITE_DRLEFT,
|
||||
SPRITE_155,
|
||||
SPRITE_ANJU,
|
||||
SPRITE_EMMA,
|
||||
SPRITE_GREGAL,
|
||||
SPRITE_159,
|
||||
SPRITE_CASTORWILDSSTATUE_1,
|
||||
SPRITE_CHUCHU,
|
||||
SPRITE_SPECIALFX,
|
||||
SPRITE_SPECIALFX_1,
|
||||
SPRITE_OBJECT64,
|
||||
SPRITE_BEETLE,
|
||||
SPRITE_166,
|
||||
SPRITE_POT,
|
||||
SPRITE_DEATHFX_1,
|
||||
SPRITE_PEAHAT,
|
||||
SPRITE_RAILTRACK,
|
||||
SPRITE_ROLLOBITE,
|
||||
SPRITE_OBJECTD,
|
||||
SPRITE_OBJECT2A,
|
||||
SPRITE_OCTOROK,
|
||||
SPRITE_OBJECT43,
|
||||
SPRITE_ROCKPROJECTILE,
|
||||
SPRITE_KEESE,
|
||||
SPRITE_DOORMIMIC,
|
||||
SPRITE_DOORMIMIC_1,
|
||||
SPRITE_ROCKCHUCHU,
|
||||
SPRITE_SPINYCHUCHU,
|
||||
SPRITE_OBJECT24,
|
||||
SPRITE_OBJECT1E,
|
||||
SPRITE_CHESTSPAWNER,
|
||||
SPRITE_BIGBARREL,
|
||||
SPRITE_PUSHABLESTATUE,
|
||||
SPRITE_MOLDWORM,
|
||||
SPRITE_SLUGGULA,
|
||||
SPRITE_SLUGGULA_1,
|
||||
SPRITE_SLUGGULA_2,
|
||||
SPRITE_PESTO,
|
||||
SPRITE_PUFFSTOOL,
|
||||
SPRITE_PUSHABLEROCK,
|
||||
SPRITE_BEANSTALK_1,
|
||||
SPRITE_OBJECTB3,
|
||||
SPRITE_PULLABLEMUSHROOM,
|
||||
SPRITE_BOLLARD,
|
||||
SPRITE_WARPPOINT,
|
||||
SPRITE_OBJECT29,
|
||||
SPRITE_CHUCHUBOSS_1,
|
||||
SPRITE_CHUCHUBOSS_2,
|
||||
SPRITE_OBJECT9,
|
||||
SPRITE_BOSSDOOR,
|
||||
SPRITE_OBJECT45,
|
||||
SPRITE_LIKELIKE,
|
||||
SPRITE_SPEARMOBLIN,
|
||||
SPRITE_BOWMOBLIN,
|
||||
SPRITE_BUSINESSSCRUB,
|
||||
SPRITE_RUPEELIKE,
|
||||
SPRITE_MINISHSIZEDENTRANCE,
|
||||
SPRITE_PULLABLELEVER,
|
||||
SPRITE_THOUGHTBUBBLE,
|
||||
SPRITE_MADDERPILLAR_1,
|
||||
SPRITE_LAVAPLATFORM,
|
||||
SPRITE_WATERDROP,
|
||||
SPRITE_WALLMASTER,
|
||||
SPRITE_DIRTBALLPROJECTILE,
|
||||
SPRITE_CRENALBEANSPROUT,
|
||||
SPRITE_BOMBPEAHAT,
|
||||
SPRITE_SPARK,
|
||||
SPRITE_CHASER,
|
||||
SPRITE_SPIKEDBEETLE,
|
||||
SPRITE_HELMASAUR,
|
||||
SPRITE_FALLINGBOULDER,
|
||||
SPRITE_BOBOMB,
|
||||
SPRITE_GLEEROK_1,
|
||||
SPRITE_GREATFAIRY,
|
||||
SPRITE_TEKTITE,
|
||||
SPRITE_WIZZROBEWIND,
|
||||
SPRITE_WIZZROBEFIRE,
|
||||
SPRITE_WIZZROBEICE,
|
||||
SPRITE_WINDPROJECTILE,
|
||||
SPRITE_FIREPROJECTILE,
|
||||
SPRITE_ICEPROJECTILE,
|
||||
SPRITE_ARMOS,
|
||||
SPRITE_LEEVER,
|
||||
SPRITE_ROPE,
|
||||
SPRITE_EYEGORE,
|
||||
SPRITE_PESTO_1,
|
||||
SPRITE_ACROBANDITS,
|
||||
SPRITE_CROW,
|
||||
SPRITE_MULLDOZER,
|
||||
SPRITE_PUSHABLELEVER,
|
||||
SPRITE_BIGPUSHABLELEVER,
|
||||
SPRITE_BOMBAROSSA,
|
||||
SPRITE_WISP,
|
||||
SPRITE_SPINYBEETLE,
|
||||
SPRITE_MAZAALHEAD,
|
||||
SPRITE_MAZAALBRACELET,
|
||||
SPRITE_MAZAALENERGYBEAM,
|
||||
SPRITE_MAZAALENERGYBEAM_1,
|
||||
SPRITE_MAZAALMACRO,
|
||||
SPRITE_EYESWITCH,
|
||||
SPRITE_OCTOROKBOSS_1,
|
||||
SPRITE_PICOBLOOM,
|
||||
SPRITE_OBJECT35,
|
||||
SPRITE_BIGICEBLOCK,
|
||||
SPRITE_BIGICEBLOCK_1,
|
||||
SPRITE_SMALLICEBLOCK,
|
||||
SPRITE_OBJECT86,
|
||||
SPRITE_EVILSPIRIT,
|
||||
SPRITE_CLOUDPIRANHA,
|
||||
SPRITE_FLYINGSKULL,
|
||||
SPRITE_BONEPROJECTILE,
|
||||
SPRITE_BAKEROVEN,
|
||||
SPRITE_OBJECT93_0,
|
||||
SPRITE_LAKITULIGHTNING,
|
||||
SPRITE_OBJECT6A_5,
|
||||
SPRITE_BIRD_1,
|
||||
SPRITE_BIRD,
|
||||
SPRITE_TORCHTRAPPROJECTILE_0,
|
||||
SPRITE_TORCHTRAPPROJECTILE_1,
|
||||
SPRITE_OBJECT98,
|
||||
SPRITE_OBJECT93_1,
|
||||
SPRITE_FIGURINEDEVICE,
|
||||
SPRITE_PULLABLELEVER_1,
|
||||
SPRITE_VAATIPROJECTILE,
|
||||
SPRITE_OBJECT44,
|
||||
SPRITE_GHINI,
|
||||
SPRITE_VAATIARM_1,
|
||||
SPRITE_VAATIWRATH_1,
|
||||
SPRITE_OBJECTAF,
|
||||
SPRITE_WRATHEYE,
|
||||
SPRITE_V3HANDPROJECTILE,
|
||||
SPRITE_VAATIWRATH_2,
|
||||
SPRITE_VAATIEYESMACRO,
|
||||
SPRITE_OBJECTB4,
|
||||
#if !defined(EU)
|
||||
SPRITE_OBJECTB4_1,
|
||||
#endif
|
||||
SPRITE_FAN,
|
||||
SPRITE_OBJECTA0,
|
||||
SPRITE_CANNONBALLPROJECTILE,
|
||||
SPRITE_V1EYELASER,
|
||||
SPRITE_V1DARKMAGICPROJECTILE,
|
||||
SPRITE_SLIME,
|
||||
SPRITE_CURTAIN,
|
||||
SPRITE_OBJECT9B,
|
||||
SPRITE_ENEMY5A,
|
||||
SPRITE_VAATITRANSFIGURED_4,
|
||||
SPRITE_VAATITRANSFIGURED_5,
|
||||
SPRITE_OBJECTA6,
|
||||
SPRITE_FIREBALLGUY,
|
||||
SPRITE_SPIKEDROLLERS,
|
||||
SPRITE_OBJECT6A_6,
|
||||
SPRITE_MOBLINLADY,
|
||||
SPRITE_OBJECTAB,
|
||||
SPRITE_GYORGMALEENERGYPROJECTILE,
|
||||
SPRITE_CLOTHESRACK,
|
||||
SPRITE_OBJECT6A_7,
|
||||
SPRITE_JAILBARS,
|
||||
SPRITE_OBJECTB2,
|
||||
SPRITE_ENEMY62,
|
||||
SPRITE_GYORGFEMALEEYE,
|
||||
SPRITE_GYORGCHILD,
|
||||
SPRITE_SMALLTOWNMINISH,
|
||||
SPRITE_GYORGFEMALEMOUTH,
|
||||
SPRITE_V2PROJECTILE,
|
||||
SPRITE_OBJECT6A_8,
|
||||
SPRITE_PINWHEEL,
|
||||
SPRITE_SPEARMOBLIN_1,
|
||||
SPRITE_BOWMOBLIN_1,
|
||||
SPRITE_ARROWPROJECTILE,
|
||||
SPRITE_322,
|
||||
SPRITE_323,
|
||||
SPRITE_324,
|
||||
SPRITE_FILESCREENOBJECTS,
|
||||
SPRITE_OBJECTA2,
|
||||
SPRITE_OBJECT6A_10,
|
||||
SPRITE_VAATI_1,
|
||||
|
||||
} Sprites;
|
||||
#endif
|
||||
+3
-3
@@ -29,7 +29,7 @@ extern void LoadRoomTileEntities(); // tba
|
||||
extern Entity* CreateDeathFx(Entity*, u32, u32);
|
||||
extern void UpdateAnimationVariableFrames(Entity*, u32);
|
||||
extern u8* GetSpriteSubEntryOffsetDataPointer(u32, u32);
|
||||
extern u32 LoadFixedGFX(Entity*, u32);
|
||||
extern bool32 LoadFixedGFX(Entity*, u32);
|
||||
extern Entity* CreateItemEntity(u32, u32, u32);
|
||||
extern u32 ProcessMovement(Entity*);
|
||||
extern void MenuFadeIn(u32, u32);
|
||||
@@ -193,7 +193,7 @@ extern void sub_0800417E(Entity*, u32);
|
||||
extern void sub_080784C8();
|
||||
extern u32 sub_0808288C(Entity*, u32, u32, u32);
|
||||
extern void sub_0806FDA0(Entity*);
|
||||
extern void sub_080AE008(Entity*, u32, u32);
|
||||
extern bool32 sub_080AE008(Entity*, u8, u32);
|
||||
extern u32 sub_08016A30(Entity*);
|
||||
extern void sub_08077728();
|
||||
extern void sub_0807AEE4();
|
||||
@@ -302,5 +302,5 @@ extern void sub_0801855C(void);
|
||||
extern u32 sub_0807CAEC(u32);
|
||||
extern void sub_0807CAC8(u32);
|
||||
extern void sub_0805E4E0(Entity*, u32);
|
||||
|
||||
extern void sub_0801D040(Entity*, u32);
|
||||
#endif
|
||||
|
||||
@@ -0,0 +1,91 @@
|
||||
#ifndef HITBOX_H
|
||||
#define HITBOX_H
|
||||
extern const Hitbox gHitbox_0;
|
||||
extern const Hitbox gHitbox_1;
|
||||
extern const Hitbox gHitbox_2;
|
||||
extern const Hitbox gHitbox_3;
|
||||
extern const Hitbox gHitbox_4;
|
||||
extern const Hitbox gHitbox_5;
|
||||
extern const Hitbox gHitbox_6;
|
||||
extern const Hitbox gHitbox_7;
|
||||
extern const Hitbox gHitbox_8;
|
||||
extern const Hitbox gHitbox_9;
|
||||
extern const Hitbox gHitbox_10;
|
||||
extern const Hitbox gHitbox_11;
|
||||
extern const Hitbox gHitbox_12;
|
||||
extern const Hitbox gHitbox_13;
|
||||
extern const Hitbox gHitbox_14;
|
||||
extern const Hitbox gHitbox_15;
|
||||
extern const Hitbox gHitbox_16;
|
||||
extern const Hitbox gHitbox_17;
|
||||
extern const Hitbox gHitbox_18;
|
||||
extern const Hitbox gHitbox_19;
|
||||
extern const Hitbox gHitbox_20;
|
||||
extern const Hitbox gHitbox_21;
|
||||
extern const Hitbox gHitbox_22;
|
||||
extern const Hitbox gHitbox_23;
|
||||
extern const Hitbox gHitbox_24;
|
||||
extern const Hitbox gHitbox_25;
|
||||
extern const Hitbox gHitbox_26;
|
||||
extern const Hitbox gHitbox_27;
|
||||
extern const Hitbox gHitbox_28;
|
||||
extern const Hitbox gHitbox_29;
|
||||
extern const Hitbox gHitbox_30;
|
||||
extern const Hitbox gUnk_080FD1B4;
|
||||
extern const Hitbox gUnk_080FD330;
|
||||
extern const Hitbox gUnk_080FD258;
|
||||
extern const Hitbox gUnk_080FD490;
|
||||
extern const Hitbox gUnk_080FD488;
|
||||
extern const Hitbox gUnk_080FD538;
|
||||
extern const Hitbox gUnk_080FD530;
|
||||
extern const Hitbox gUnk_080FD544;
|
||||
extern const Hitbox gUnk_080FD588;
|
||||
extern const Hitbox gUnk_080FD37C;
|
||||
extern const Hitbox gUnk_080FD1DC;
|
||||
extern const Hitbox gUnk_080FD1E4;
|
||||
extern const Hitbox gUnk_080FD1FC;
|
||||
extern const Hitbox gUnk_080FD204;
|
||||
extern const Hitbox gUnk_080FD20C;
|
||||
extern const Hitbox gUnk_080FD214;
|
||||
extern const Hitbox gUnk_080FD21C;
|
||||
extern const Hitbox gUnk_080FD22C;
|
||||
extern const Hitbox gUnk_080FD238;
|
||||
extern const Hitbox gUnk_080FD240;
|
||||
extern const Hitbox gUnk_080FD248;
|
||||
extern const Hitbox gUnk_080FD1EC;
|
||||
extern const Hitbox gUnk_080FD290;
|
||||
extern const Hitbox gUnk_080FD298;
|
||||
extern const Hitbox gUnk_080FD2A0;
|
||||
extern const Hitbox gUnk_080FD2D8;
|
||||
extern const Hitbox gUnk_080FD2E0;
|
||||
extern const Hitbox gUnk_080FD2D0;
|
||||
extern const Hitbox gUnk_080FD354;
|
||||
extern const Hitbox gUnk_080FD38C;
|
||||
extern const Hitbox gUnk_080FD3CC;
|
||||
extern const Hitbox gUnk_080FD3DC;
|
||||
extern const Hitbox gUnk_080FD3E4;
|
||||
extern const Hitbox gUnk_080FD3EC;
|
||||
extern const Hitbox gUnk_080FD580;
|
||||
extern const Hitbox gUnk_080FD35C;
|
||||
extern const Hitbox gUnk_080FD36C;
|
||||
extern const Hitbox gUnk_080FD384;
|
||||
extern const Hitbox gUnk_080FD558;
|
||||
extern const Hitbox gUnk_080FD4E8;
|
||||
extern const Hitbox gUnk_080FD4F0;
|
||||
extern const Hitbox gUnk_080FD4F8;
|
||||
extern const Hitbox gUnk_080FD500;
|
||||
extern const Hitbox gUnk_080FD508;
|
||||
extern const Hitbox gUnk_080FD510;
|
||||
extern const Hitbox gUnk_080FD518;
|
||||
extern const Hitbox gUnk_080FD520;
|
||||
extern const Hitbox gUnk_080FD560;
|
||||
extern const Hitbox gUnk_080FD4B8;
|
||||
extern const Hitbox gUnk_080FD4C0;
|
||||
extern const Hitbox gUnk_080FD4C8;
|
||||
extern const Hitbox gUnk_080FD4D0;
|
||||
extern const Hitbox gUnk_080FD4D8;
|
||||
extern const Hitbox gUnk_080FD4E0;
|
||||
extern const Hitbox gUnk_080FD3F4;
|
||||
extern const Hitbox gUnk_080FD3FC;
|
||||
extern const Hitbox gUnk_080FD43C;
|
||||
#endif
|
||||
@@ -0,0 +1,383 @@
|
||||
#ifndef SPRITEDATA_H
|
||||
#define SPRITEDATA_H
|
||||
|
||||
// Sprite data definition for enemies and projectiles
|
||||
typedef struct EnemyDefinition {
|
||||
u16 bitfield;
|
||||
u16 paletteIndex;
|
||||
union {
|
||||
const Hitbox* hitbox;
|
||||
const struct EnemyDefinition* spriteData;
|
||||
} ptr;
|
||||
u16 spriteIndex;
|
||||
struct {
|
||||
u8 spritePriority : 3;
|
||||
u8 unknown : 1;
|
||||
u8 draw : 2;
|
||||
u8 shadow : 2;
|
||||
} PACKED spriteFlags;
|
||||
u8 health;
|
||||
s16 speed;
|
||||
u8 damageType;
|
||||
u8 flags2;
|
||||
} EnemyDefinition;
|
||||
|
||||
// Sprite data definition for objects and npcs
|
||||
typedef struct SpriteDataB {
|
||||
u8 type;
|
||||
u8 unk;
|
||||
u16 bitfield;
|
||||
union {
|
||||
struct {
|
||||
u16 paletteIndex;
|
||||
u16 spriteIndex;
|
||||
} sprite;
|
||||
const struct SpriteDataB* spriteData;
|
||||
} data;
|
||||
} SpriteDataB;
|
||||
|
||||
// Sprite data definition for player items
|
||||
typedef struct SpriteDataC {
|
||||
u8 bitfield;
|
||||
u8 index;
|
||||
u16 unk;
|
||||
u8 unk2;
|
||||
u8 spriteIndex;
|
||||
u16 gfxLoadBitfield;
|
||||
} SpriteDataC;
|
||||
|
||||
typedef enum {
|
||||
SPRITE_0,
|
||||
SPRITE_1,
|
||||
SPRITE_2,
|
||||
SPRITE_3,
|
||||
SPRITE_4,
|
||||
SPRITE_5,
|
||||
SPRITE_6,
|
||||
SPRITE_7,
|
||||
SPRITE_8,
|
||||
SPRITE_9,
|
||||
SPRITE_OBJECT4,
|
||||
SPRITE_OBJECT6,
|
||||
SPRITE_12,
|
||||
SPRITE_13,
|
||||
SPRITE_14,
|
||||
SPRITE_15,
|
||||
SPRITE_16,
|
||||
SPRITE_17,
|
||||
SPRITE_18,
|
||||
SPRITE_19,
|
||||
SPRITE_20,
|
||||
SPRITE_21,
|
||||
SPRITE_22,
|
||||
SPRITE_ITEMGUSTJAR,
|
||||
SPRITE_GENTARI,
|
||||
SPRITE_FESTARI,
|
||||
SPRITE_MELARI,
|
||||
SPRITE_MOUNTAINMINISH,
|
||||
SPRITE_28,
|
||||
SPRITE_TOWNMINISH,
|
||||
SPRITE_LIBRARI,
|
||||
SPRITE_FORESTMINISH,
|
||||
SPRITE_VAATI,
|
||||
SPRITE_OBJECT6A_9,
|
||||
SPRITE_OBJECT6A_0,
|
||||
SPRITE_OBJECT6A_1,
|
||||
SPRITE_OBJECT6A_2,
|
||||
SPRITE_MINISHEZLO,
|
||||
SPRITE_OBJECT6A_3,
|
||||
SPRITE_DIN,
|
||||
SPRITE_NAYRU,
|
||||
SPRITE_FARORE,
|
||||
SPRITE_NPC5,
|
||||
SPRITE_GUARDWITHSPEAR,
|
||||
SPRITE_KINGDALTUS,
|
||||
SPRITE_MINISTERPOTHO,
|
||||
SPRITE_NPC26,
|
||||
SPRITE_MAID,
|
||||
SPRITE_TINGLESIBLINGS,
|
||||
SPRITE_BEEDLE,
|
||||
SPRITE_BROCCO,
|
||||
SPRITE_PINA,
|
||||
SPRITE_POSTMAN,
|
||||
SPRITE_MALON,
|
||||
SPRITE_EPONA,
|
||||
SPRITE_MILKCART,
|
||||
SPRITE_SMITH,
|
||||
SPRITE_TOWNSPERSON,
|
||||
SPRITE_58,
|
||||
SPRITE_KID,
|
||||
SPRITE_MAILBOX,
|
||||
SPRITE_SITTINGPERSON,
|
||||
SPRITE_MUTOH,
|
||||
SPRITE_CARPENTER,
|
||||
SPRITE_GORMAN,
|
||||
SPRITE_CAT,
|
||||
SPRITE_CAT_1,
|
||||
SPRITE_DOG,
|
||||
SPRITE_DOG_1,
|
||||
SPRITE_DOG_2,
|
||||
SPRITE_SYRUP,
|
||||
SPRITE_PERCY,
|
||||
SPRITE_FARMERS_0,
|
||||
SPRITE_FARMERS_1,
|
||||
SPRITE_DAMPE,
|
||||
SPRITE_KINGGUSTAF,
|
||||
SPRITE_GINA,
|
||||
SPRITE_SIMON,
|
||||
SPRITE_MAMA,
|
||||
SPRITE_TEACHERS,
|
||||
SPRITE_TEACHERS_1,
|
||||
SPRITE_WINDTRIBESPEOPLE_0,
|
||||
SPRITE_WINDTRIBESPEOPLE_1,
|
||||
SPRITE_WINDTRIBESPEOPLE_2,
|
||||
SPRITE_WINDTRIBESPEOPLE_3,
|
||||
SPRITE_WINDTRIBESPEOPLE_4,
|
||||
SPRITE_WINDTRIBESPEOPLE_5,
|
||||
SPRITE_MAYORHAGEN,
|
||||
SPRITE_GHOSTBROTHERS,
|
||||
SPRITE_HURDYGURDYMAN,
|
||||
SPRITE_COW,
|
||||
SPRITE_GORONMERCHANT,
|
||||
SPRITE_GORONMERCHANT_1,
|
||||
SPRITE_GORON,
|
||||
SPRITE_CASTORWILDSSTATUE,
|
||||
SPRITE_NPC4F,
|
||||
SPRITE_OBJECT6A_4,
|
||||
SPRITE_97,
|
||||
SPRITE_DARKNUT_0,
|
||||
SPRITE_DARKNUT_1,
|
||||
SPRITE_CHUCHUBOSS_0,
|
||||
SPRITE_DEATHFX_0,
|
||||
SPRITE_MADDERPILLAR_0,
|
||||
SPRITE_GLEEROK_0,
|
||||
SPRITE_KEATON,
|
||||
SPRITE_MAZAALHAND,
|
||||
SPRITE_SCISSORSBEETLE,
|
||||
SPRITE_MANDIBLESPROJECTILE,
|
||||
SPRITE_STALFOS,
|
||||
SPRITE_GIBDO,
|
||||
SPRITE_LAKITU,
|
||||
SPRITE_LAKITUCLOUDPROJECTILE,
|
||||
SPRITE_VAATIREBORNENEMY_0,
|
||||
SPRITE_VAATIREBORNENEMY_1,
|
||||
SPRITE_VAATIREBORNENEMY_2,
|
||||
SPRITE_VAATIREBORNENEMY_3,
|
||||
SPRITE_VAATIBALL,
|
||||
SPRITE_VAATITRANSFIGURED_0,
|
||||
SPRITE_VAATITRANSFIGURED_1,
|
||||
SPRITE_VAATITRANSFIGURED_2,
|
||||
SPRITE_VAATITRANSFIGURED_3,
|
||||
SPRITE_VAATIARM,
|
||||
SPRITE_VAATIWRATH,
|
||||
SPRITE_VAATIREBORN,
|
||||
SPRITE_MOBLINLADY_1,
|
||||
SPRITE_BALLCHAINSOLDIER,
|
||||
SPRITE_GYORGMALE,
|
||||
SPRITE_JARPORTAL,
|
||||
SPRITE_BEANSTALK_0,
|
||||
SPRITE_MINECART,
|
||||
SPRITE_LAVAPLATFORM_1,
|
||||
SPRITE_WHIRLWIND,
|
||||
SPRITE_BIGVORTEX,
|
||||
SPRITE_MACROBOOK,
|
||||
SPRITE_GENTARICURTAINS,
|
||||
SPRITE_SPIDERWEB,
|
||||
SPRITE_OBJECT79,
|
||||
SPRITE_OCTOROKBOSS_0,
|
||||
SPRITE_BELL,
|
||||
SPRITE_TALON,
|
||||
SPRITE_STURGEON,
|
||||
SPRITE_LIBRARIANS_0,
|
||||
SPRITE_LIBRARIANS_1,
|
||||
SPRITE_STAMP,
|
||||
SPRITE_MARCY,
|
||||
SPRITE_STOCKWELL,
|
||||
SPRITE_WHEATON,
|
||||
SPRITE_PITA,
|
||||
SPRITE_CUCCOAGGR,
|
||||
SPRITE_BLADEBROTHERS_0,
|
||||
SPRITE_BLADEBROTHERS_1,
|
||||
SPRITE_REM,
|
||||
SPRITE_CARLOV_0,
|
||||
SPRITE_CARLOV_1,
|
||||
SPRITE_DRLEFT,
|
||||
SPRITE_155,
|
||||
SPRITE_ANJU,
|
||||
SPRITE_EMMA,
|
||||
SPRITE_GREGAL,
|
||||
SPRITE_159,
|
||||
SPRITE_CASTORWILDSSTATUE_1,
|
||||
SPRITE_CHUCHU,
|
||||
SPRITE_SPECIALFX,
|
||||
SPRITE_SPECIALFX_1,
|
||||
SPRITE_OBJECT64,
|
||||
SPRITE_BEETLE,
|
||||
SPRITE_166,
|
||||
SPRITE_POT,
|
||||
SPRITE_DEATHFX_1,
|
||||
SPRITE_PEAHAT,
|
||||
SPRITE_RAILTRACK,
|
||||
SPRITE_ROLLOBITE,
|
||||
SPRITE_OBJECTD,
|
||||
SPRITE_OBJECT2A,
|
||||
SPRITE_OCTOROK,
|
||||
SPRITE_OBJECT43,
|
||||
SPRITE_ROCKPROJECTILE,
|
||||
SPRITE_KEESE,
|
||||
SPRITE_DOORMIMIC,
|
||||
SPRITE_DOORMIMIC_1,
|
||||
SPRITE_ROCKCHUCHU,
|
||||
SPRITE_SPINYCHUCHU,
|
||||
SPRITE_OBJECT24,
|
||||
SPRITE_OBJECT1E,
|
||||
SPRITE_CHESTSPAWNER,
|
||||
SPRITE_BIGBARREL,
|
||||
SPRITE_PUSHABLESTATUE,
|
||||
SPRITE_MOLDWORM,
|
||||
SPRITE_SLUGGULA,
|
||||
SPRITE_SLUGGULA_1,
|
||||
SPRITE_SLUGGULA_2,
|
||||
SPRITE_PESTO,
|
||||
SPRITE_PUFFSTOOL,
|
||||
SPRITE_PUSHABLEROCK,
|
||||
SPRITE_BEANSTALK_1,
|
||||
SPRITE_OBJECTB3,
|
||||
SPRITE_PULLABLEMUSHROOM,
|
||||
SPRITE_BOLLARD,
|
||||
SPRITE_WARPPOINT,
|
||||
SPRITE_OBJECT29,
|
||||
SPRITE_CHUCHUBOSS_1,
|
||||
SPRITE_CHUCHUBOSS_2,
|
||||
SPRITE_OBJECT9,
|
||||
SPRITE_BOSSDOOR,
|
||||
SPRITE_OBJECT45,
|
||||
SPRITE_LIKELIKE,
|
||||
SPRITE_SPEARMOBLIN,
|
||||
SPRITE_BOWMOBLIN,
|
||||
SPRITE_BUSINESSSCRUB,
|
||||
SPRITE_RUPEELIKE,
|
||||
SPRITE_MINISHSIZEDENTRANCE,
|
||||
SPRITE_PULLABLELEVER,
|
||||
SPRITE_THOUGHTBUBBLE,
|
||||
SPRITE_MADDERPILLAR_1,
|
||||
SPRITE_LAVAPLATFORM,
|
||||
SPRITE_WATERDROP,
|
||||
SPRITE_WALLMASTER,
|
||||
SPRITE_DIRTBALLPROJECTILE,
|
||||
SPRITE_CRENALBEANSPROUT,
|
||||
SPRITE_BOMBPEAHAT,
|
||||
SPRITE_SPARK,
|
||||
SPRITE_CHASER,
|
||||
SPRITE_SPIKEDBEETLE,
|
||||
SPRITE_HELMASAUR,
|
||||
SPRITE_FALLINGBOULDER,
|
||||
SPRITE_BOBOMB,
|
||||
SPRITE_GLEEROK_1,
|
||||
SPRITE_GREATFAIRY,
|
||||
SPRITE_TEKTITE,
|
||||
SPRITE_WIZZROBEWIND,
|
||||
SPRITE_WIZZROBEFIRE,
|
||||
SPRITE_WIZZROBEICE,
|
||||
SPRITE_WINDPROJECTILE,
|
||||
SPRITE_FIREPROJECTILE,
|
||||
SPRITE_ICEPROJECTILE,
|
||||
SPRITE_ARMOS,
|
||||
SPRITE_LEEVER,
|
||||
SPRITE_ROPE,
|
||||
SPRITE_EYEGORE,
|
||||
SPRITE_PESTO_1,
|
||||
SPRITE_ACROBANDITS,
|
||||
SPRITE_CROW,
|
||||
SPRITE_MULLDOZER,
|
||||
SPRITE_PUSHABLELEVER,
|
||||
SPRITE_BIGPUSHABLELEVER,
|
||||
SPRITE_BOMBAROSSA,
|
||||
SPRITE_WISP,
|
||||
SPRITE_SPINYBEETLE,
|
||||
SPRITE_MAZAALHEAD,
|
||||
SPRITE_MAZAALBRACELET,
|
||||
SPRITE_MAZAALENERGYBEAM,
|
||||
SPRITE_MAZAALENERGYBEAM_1,
|
||||
SPRITE_MAZAALMACRO,
|
||||
SPRITE_EYESWITCH,
|
||||
SPRITE_OCTOROKBOSS_1,
|
||||
SPRITE_PICOBLOOM,
|
||||
SPRITE_OBJECT35,
|
||||
SPRITE_BIGICEBLOCK,
|
||||
SPRITE_BIGICEBLOCK_1,
|
||||
SPRITE_SMALLICEBLOCK,
|
||||
SPRITE_OBJECT86,
|
||||
SPRITE_EVILSPIRIT,
|
||||
SPRITE_CLOUDPIRANHA,
|
||||
SPRITE_FLYINGSKULL,
|
||||
SPRITE_BONEPROJECTILE,
|
||||
SPRITE_BAKEROVEN,
|
||||
SPRITE_OBJECT93_0,
|
||||
SPRITE_LAKITULIGHTNING,
|
||||
SPRITE_OBJECT6A_5,
|
||||
SPRITE_BIRD_1,
|
||||
SPRITE_BIRD,
|
||||
SPRITE_TORCHTRAPPROJECTILE_0,
|
||||
SPRITE_TORCHTRAPPROJECTILE_1,
|
||||
SPRITE_OBJECT98,
|
||||
SPRITE_OBJECT93_1,
|
||||
SPRITE_FIGURINEDEVICE,
|
||||
SPRITE_PULLABLELEVER_1,
|
||||
SPRITE_VAATIPROJECTILE,
|
||||
SPRITE_OBJECT44,
|
||||
SPRITE_GHINI,
|
||||
SPRITE_VAATIARM_1,
|
||||
SPRITE_VAATIWRATH_1,
|
||||
SPRITE_OBJECTAF,
|
||||
SPRITE_WRATHEYE,
|
||||
SPRITE_V3HANDPROJECTILE,
|
||||
SPRITE_VAATIWRATH_2,
|
||||
SPRITE_VAATIEYESMACRO,
|
||||
SPRITE_OBJECTB4,
|
||||
#if !defined(EU)
|
||||
SPRITE_OBJECTB4_1,
|
||||
#endif
|
||||
SPRITE_FAN,
|
||||
SPRITE_OBJECTA0,
|
||||
SPRITE_CANNONBALLPROJECTILE,
|
||||
SPRITE_V1EYELASER,
|
||||
SPRITE_V1DARKMAGICPROJECTILE,
|
||||
SPRITE_SLIME,
|
||||
SPRITE_CURTAIN,
|
||||
SPRITE_OBJECT9B,
|
||||
SPRITE_ENEMY5A,
|
||||
SPRITE_VAATITRANSFIGURED_4,
|
||||
SPRITE_VAATITRANSFIGURED_5,
|
||||
SPRITE_OBJECTA6,
|
||||
SPRITE_FIREBALLGUY,
|
||||
SPRITE_SPIKEDROLLERS,
|
||||
SPRITE_OBJECT6A_6,
|
||||
SPRITE_MOBLINLADY,
|
||||
SPRITE_OBJECTAB,
|
||||
SPRITE_GYORGMALEENERGYPROJECTILE,
|
||||
SPRITE_CLOTHESRACK,
|
||||
SPRITE_OBJECT6A_7,
|
||||
SPRITE_JAILBARS,
|
||||
SPRITE_OBJECTB2,
|
||||
SPRITE_ENEMY62,
|
||||
SPRITE_GYORGFEMALEEYE,
|
||||
SPRITE_GYORGCHILD,
|
||||
SPRITE_SMALLTOWNMINISH,
|
||||
SPRITE_GYORGFEMALEMOUTH,
|
||||
SPRITE_V2PROJECTILE,
|
||||
SPRITE_OBJECT6A_8,
|
||||
SPRITE_PINWHEEL,
|
||||
SPRITE_SPEARMOBLIN_1,
|
||||
SPRITE_BOWMOBLIN_1,
|
||||
SPRITE_ARROWPROJECTILE,
|
||||
SPRITE_322,
|
||||
SPRITE_323,
|
||||
SPRITE_324,
|
||||
SPRITE_FILESCREENOBJECTS,
|
||||
SPRITE_OBJECTA2,
|
||||
SPRITE_OBJECT6A_10,
|
||||
SPRITE_VAATI_1,
|
||||
|
||||
} Sprites;
|
||||
#endif
|
||||
Reference in New Issue
Block a user