mirror of
https://github.com/zeldaret/tmc
synced 2026-09-07 11:21:35 -04:00
Merge branch 'master' of https://github.com/zeldaret/tmc
This commit is contained in:
+2
-2
@@ -5,12 +5,12 @@
|
||||
|
||||
typedef struct {
|
||||
u8 areaMetadata;
|
||||
u32 locationIndex;
|
||||
u8 locationIndex;
|
||||
u8 unk;
|
||||
u16 localFlagOffset;
|
||||
u8 filler[19];
|
||||
u8 fadeOut;
|
||||
u8 filler[14];
|
||||
u8 filler2[14];
|
||||
} Area;
|
||||
|
||||
extern Area gArea;
|
||||
|
||||
@@ -4,6 +4,8 @@
|
||||
#include "global.h"
|
||||
#include "entity.h"
|
||||
|
||||
extern u32 GetNextFunction(Entity*);
|
||||
|
||||
extern void Octorok(Entity*);
|
||||
extern void Chuchu(Entity*);
|
||||
extern void Leever(Entity*);
|
||||
|
||||
+18
-17
@@ -1,8 +1,9 @@
|
||||
#include "global.h"
|
||||
|
||||
#ifndef ENTITY_H
|
||||
#define ENTITY_H
|
||||
|
||||
#include "global.h"
|
||||
#include "sprite.h"
|
||||
|
||||
typedef struct {
|
||||
void* entity1;
|
||||
void* entity2;
|
||||
@@ -12,8 +13,8 @@ typedef struct {
|
||||
typedef struct {
|
||||
u8 type;
|
||||
u8 subtype;
|
||||
u8 parameter1;
|
||||
u8 parameter2;
|
||||
u8 form;
|
||||
u8 parameter;
|
||||
} EntityType;
|
||||
|
||||
union SplitWord {
|
||||
@@ -36,7 +37,7 @@ typedef struct Entity {
|
||||
EntityType entityType;
|
||||
u8 action;
|
||||
u8 previousActionFlag;
|
||||
u8 parameter3;
|
||||
u8 actionDelay;
|
||||
u8 field_0xf;
|
||||
u8 flags;
|
||||
u8 scriptedScene : 4;
|
||||
@@ -69,18 +70,19 @@ typedef struct Entity {
|
||||
u8 palette;
|
||||
struct {
|
||||
u8 b0 : 4;
|
||||
u8 b1 : 1;
|
||||
u8 b2 : 3;
|
||||
u8 b1 : 2;
|
||||
u8 b2 : 2;
|
||||
} PACKED spriteOrientation;
|
||||
u8 filler[2];
|
||||
u8 animationList;
|
||||
u8 field_1f;
|
||||
u8 frameIndex;
|
||||
u8 lastFrameIndex;
|
||||
s32 field_0x20;
|
||||
s16 nonPlanarMovement;
|
||||
u8 spriteAnimation[3];
|
||||
struct {
|
||||
u8 b0 : 3;
|
||||
u8 b1 : 5;
|
||||
u8 b1 : 3;
|
||||
u8 b2 : 2;
|
||||
} PACKED ticks;
|
||||
u16 collisions;
|
||||
union SplitWord x;
|
||||
@@ -108,8 +110,8 @@ typedef struct Entity {
|
||||
u8 field_0x4f;
|
||||
struct Entity* parent;
|
||||
struct Entity* attachedEntity;
|
||||
u8 field_0x58;
|
||||
u8 field_0x59;
|
||||
u8 animIndex;
|
||||
u8 frameDuration;
|
||||
union {
|
||||
u8 all;
|
||||
struct {
|
||||
@@ -119,11 +121,8 @@ typedef struct Entity {
|
||||
u8 f3 : 1;
|
||||
} PACKED b;
|
||||
} PACKED frames;
|
||||
u8 gfx;
|
||||
u8 field_0x5c;
|
||||
u8 field_0x5d;
|
||||
u8 field_0x5e;
|
||||
u8 field_0x5f;
|
||||
u8 frameSpriteSettings;
|
||||
Frame* animPtr;
|
||||
u16 spriteVramOffset;
|
||||
u8 spriteOffsetX;
|
||||
u8 spriteOffsetY;
|
||||
@@ -145,4 +144,6 @@ typedef struct Entity {
|
||||
|
||||
} Entity;
|
||||
|
||||
#define COORD_TO_TILE(entity) ((((entity->x.HALF.HI - gRoomControls.roomOriginX) >> 4) & 0x3fU) | (((entity->y.HALF.HI - gRoomControls.roomOriginY) >> 4) & 0x3fU) << 6)
|
||||
|
||||
#endif
|
||||
|
||||
+18
-17
@@ -3,28 +3,29 @@
|
||||
|
||||
#include "global.h"
|
||||
|
||||
extern u32 CheckFlags(u32);
|
||||
extern u32 CheckGlobalFlag(u32);
|
||||
extern u32 CheckGlobalFlags(u32);
|
||||
u32 CheckFlags(u32);
|
||||
u32 CheckGlobalFlag(u32);
|
||||
u32 CheckGlobalFlags(u32, u32);
|
||||
extern u32 CheckLocalFlag(u32);
|
||||
extern u32 CheckLocalFlagByOffset(u32, u32);
|
||||
extern u32 CheckLocalFlags(u32);
|
||||
extern u32 CheckLocalFlagsByOffset(u32, u32);
|
||||
extern u32 CheckRoomFlag(u32);
|
||||
extern u32 CheckRoomFlags(u32);
|
||||
u32 CheckLocalFlags(u32, u32);
|
||||
u32 CheckLocalFlagsByOffset(u32, u32, u32);
|
||||
u32 CheckRoomFlag(u32);
|
||||
u32 CheckRoomFlags(u32, u32);
|
||||
|
||||
extern void ClearFlag(u32);
|
||||
extern void ClearGlobalFlag(u32);
|
||||
extern void ClearLocalFlag(u32);
|
||||
extern void ClearLocalFlagByOffset(u32, u32);
|
||||
extern void ClearRoomFlag(u32);
|
||||
void ClearFlag(u32);
|
||||
void ClearGlobalFlag(u32);
|
||||
void ClearLocalFlag(u32);
|
||||
void ClearLocalFlagByOffset(u32, u32);
|
||||
void ClearRoomFlag(u32);
|
||||
|
||||
extern void SetFlag(u32);
|
||||
extern void SetGlobalFlag(u32);
|
||||
extern void SetLocalFlag(u32);
|
||||
extern void SetLocalFlagByOffset(u32, u32);
|
||||
extern void SetRoomFlag(u32);
|
||||
void SetFlag(u32);
|
||||
void SetGlobalFlag(u32);
|
||||
void SetLocalFlag(u32);
|
||||
void SetLocalFlagByOffset(u32, u32);
|
||||
void SetRoomFlag(u32);
|
||||
|
||||
extern u32 gGlobalFlags;
|
||||
extern u32 gRoomFlags;
|
||||
|
||||
#endif
|
||||
+24
-9
@@ -4,6 +4,7 @@
|
||||
|
||||
#include "global.h"
|
||||
#include "entity.h"
|
||||
#include "position.h"
|
||||
|
||||
// Identified
|
||||
extern u32 Random(void);
|
||||
@@ -12,17 +13,22 @@ extern void UpdateSpriteOrderAndFlip(Entity*);
|
||||
extern void InitAnimationForceUpdate(Entity*, u32);
|
||||
extern void ShowNPCDialogue(Entity*, u32*);
|
||||
extern u32 UpdateFuseInteraction();
|
||||
extern void CopyPosition(Entity*, Entity*);
|
||||
extern void PositionRelative(Entity*, Entity*, u32, u32);
|
||||
extern void InitializeAnimation(Entity*, u32);
|
||||
extern void DeleteEntity(Entity*);
|
||||
extern u32 __modsi3(u32, u32);
|
||||
extern void DoFade(u32, u32);
|
||||
extern void UpdateAnimationSingleFrame(Entity*);
|
||||
extern u32 GetInventoryValue(u32);
|
||||
extern void TextboxNoOverlapFollow(u32 index);
|
||||
extern Entity* CreateFx(Entity*, u32, u32);
|
||||
extern u32 CheckKinstoneFused(u32);
|
||||
extern void ForceEquipItem(u8, u8);
|
||||
extern void LoadRoomEntityList();
|
||||
void ModHealth(s32);
|
||||
void CopyPosition(Entity*, Entity*);
|
||||
extern u32* StartCutscene(Entity*, u8*);
|
||||
extern void GetNextFrame(Entity*);
|
||||
extern u32 LoadExtraSpriteData(Entity*, u32*);
|
||||
extern void ResolveEntityOnTop(Entity*, Entity*);
|
||||
|
||||
// Unidentified
|
||||
extern void sub_0806ED78(Entity*);
|
||||
@@ -31,13 +37,10 @@ extern u32 sub_0805ACC0(Entity*);
|
||||
extern u32 sub_0801E99C(Entity*);
|
||||
extern void sub_0806924C(Entity*);
|
||||
extern void sub_080AEF88(Entity*);
|
||||
extern Entity* sub_080873AC(Entity*, u32, u32);
|
||||
extern void sub_08078778(Entity*);
|
||||
extern void sub_080787A8(Entity*, u32);
|
||||
extern void sub_0806F118(Entity*);
|
||||
extern void sub_080791D0();
|
||||
extern void sub_08087380();
|
||||
extern void sub_08004274();
|
||||
extern void sub_0805EC9C();
|
||||
extern void sub_0805EC60();
|
||||
extern void sub_080873D0();
|
||||
@@ -56,13 +59,25 @@ extern void sub_0807DD50(Entity*);
|
||||
extern void sub_0807DD94(Entity*, u32);
|
||||
extern Entity* sub_0805EB00(u32, u32, u32);
|
||||
extern Entity* sub_0805EB2C(u32, u32, u32, u32, u32);
|
||||
extern u32 sub_0806FDEC(Entity*, u32*);
|
||||
extern s32 sub_0806ED9C(Entity*, u32, u32);
|
||||
extern s32* sub_0807DAD0(Entity*, u8*);
|
||||
extern void sub_0806FF60(Entity*, u32, u32);
|
||||
extern void sub_0806FF88(Entity*, u32, u32);
|
||||
extern void sub_0807000C(Entity*);
|
||||
extern void sub_0805E47C(Entity*);
|
||||
extern void sub_0805E584(Entity*);
|
||||
extern void sub_0806FAB0(Entity*, Entity*);
|
||||
extern void sub_0806ED78(Entity*);
|
||||
extern void sub_08068BEC(Entity*, u32);
|
||||
extern void sub_08078778(Entity*);
|
||||
extern s32 sub_0806ED9C(Entity*, u32, u32);
|
||||
extern s32 sub_0806F078(Entity*, s32);
|
||||
extern void sub_0801D2B4(Entity*, u32);
|
||||
extern void sub_0806FD3C(Entity*);
|
||||
extern u32 sub_0801E99C(Entity*);
|
||||
extern void sub_0807DD50(Entity*);
|
||||
extern u32 sub_080045C4(Entity*, Entity*);
|
||||
extern void sub_0806F118(Entity*);
|
||||
extern void sub_0807DD94(Entity*, u32);
|
||||
extern void sub_0805ED14(u32*);
|
||||
extern void sub_080A7C18(u32, u32, u32);
|
||||
extern void sub_08068BEC(Entity*, u32);
|
||||
#endif
|
||||
|
||||
@@ -47,4 +47,16 @@
|
||||
#define min(a, b) ((a) < (b) ? (a) : (b))
|
||||
#define max(a, b) ((a) >= (b) ? (a) : (b))
|
||||
|
||||
struct Coords16
|
||||
{
|
||||
s16 x;
|
||||
s16 y;
|
||||
} PACKED;
|
||||
|
||||
struct UCoords16
|
||||
{
|
||||
u16 x;
|
||||
u16 y;
|
||||
};
|
||||
|
||||
#endif // GUARD_GLOBAL_H
|
||||
|
||||
+31
-17
@@ -3,14 +3,14 @@
|
||||
|
||||
extern u32 __modsi3(u32, u32);
|
||||
extern void InitializeAnimation(Entity*, u32);
|
||||
extern void sub_08087380();
|
||||
extern void GreatFairy_InitializeAnimation(Entity*);
|
||||
extern u32 CheckRoomFlag();
|
||||
extern Entity* sub_080873AC(Entity*, u32, u32);
|
||||
extern Entity* GreatFairy_CreateForm(Entity*, u32, u32);
|
||||
extern void PositionRelative();
|
||||
extern void CopyPosition();
|
||||
extern void DoFade();
|
||||
extern void PlaySFX();
|
||||
extern void sub_08004274();
|
||||
extern void GetNextFrame();
|
||||
extern void sub_0805EC9C();
|
||||
extern void sub_0805EC60();
|
||||
extern void sub_080873D0();
|
||||
@@ -19,24 +19,38 @@ extern void sub_080045D4();
|
||||
extern void sub_0806F69C();
|
||||
extern u32 Random();
|
||||
|
||||
extern void (*gGreatFairy[11])(Entity*);
|
||||
extern void (*gGreatFairyBehaviors[6])(Entity*);
|
||||
extern void (*gGreatFairyWings[3])(Entity*);
|
||||
extern void (*gGreatFairyWake[2])(Entity*);
|
||||
extern void (*gGreatFairyMini[3])(Entity*);
|
||||
extern void (*gGreatFairyMiniAnim[3])(Entity*);
|
||||
extern void (*gGreatFairyDrip[2])(Entity*);
|
||||
extern void (*gGreatFairyRipple[2])(Entity*);
|
||||
extern void (*gGreatFairyBigRipple[2])(Entity*);
|
||||
extern void (*gGreatFairyEnergy[2])(Entity*);
|
||||
extern void (*gGreatFairyInteract1[4])(Entity*);
|
||||
extern void (*gGreatFairyInteract2[5])(Entity*);
|
||||
extern void (*gUnk_081207A4[2])(Entity*);
|
||||
|
||||
enum {
|
||||
BEHAVIORS,
|
||||
WINGS,
|
||||
WAKE,
|
||||
MINI,
|
||||
MINIAFFINE,
|
||||
DROPLET,
|
||||
RIPPLE,
|
||||
BIGRIPPLE,
|
||||
FORM8,
|
||||
FORM9,
|
||||
};
|
||||
|
||||
extern void (*const GreatFairy_Main[])(Entity*);
|
||||
extern void (*const GreatFairy_Behaviors[])(Entity*);
|
||||
extern void (*const GreatFairy_WingsBehaviors[])(Entity*);
|
||||
extern void (*const GreatFairy_WakeBehaviors[])(Entity*);
|
||||
extern void (*const GreatFairy_MiniBehaviors[])(Entity*);
|
||||
extern void (*const GreatFairy_MiniAffineBehaviors[])(Entity*);
|
||||
extern void (*const GreatFairy_DropletBehaviors[])(Entity*);
|
||||
extern void (*const GreatFairy_RippleBehaviors[])(Entity*);
|
||||
extern void (*const GreatFairy_BigRippleBehaviors[])(Entity*);
|
||||
extern void (*const GreatFairy_EnergyBehaviors[])(Entity*);
|
||||
extern void (*const GreatFairy_Form1Behaviors[])(Entity*);
|
||||
extern void (*const GreatFairy_Form2Behaviors[])(Entity*);
|
||||
extern void (*const gUnk_081207A4[])(Entity*);
|
||||
|
||||
extern u32 gUnk_0810C2E4;
|
||||
extern RoomControls gRoomControls;
|
||||
extern Entity gLinkEntity;
|
||||
extern s16 gGreatFairyRippleOffsets[10];
|
||||
extern const s16 GreatFairy_RippleOffsets[10];
|
||||
extern u32 gUnk_02034350;
|
||||
extern RoomVars gRoomVars;
|
||||
extern Screen gScreen;
|
||||
|
||||
+48
-13
@@ -1,8 +1,54 @@
|
||||
#include "global.h"
|
||||
|
||||
#ifndef ITEM_H
|
||||
#define ITEM_H
|
||||
|
||||
#include "global.h"
|
||||
#include "entity.h"
|
||||
|
||||
typedef struct {
|
||||
u8 unk;
|
||||
u8 behaviorID;
|
||||
u8 unk2;
|
||||
u8 unk3;
|
||||
u8 stateID;
|
||||
u8 filler[4];
|
||||
u8 unk4;
|
||||
u8 filler2[4];
|
||||
u8 unk5;
|
||||
} ItemBehavior;
|
||||
|
||||
void extern CellOverwriteSet(ItemBehavior*, u32);
|
||||
void extern Sword(ItemBehavior*, u32);
|
||||
void extern Sword(ItemBehavior*, u32);
|
||||
void extern Sword(ItemBehavior*, u32);
|
||||
void extern Sword(ItemBehavior*, u32);
|
||||
void extern Sword(ItemBehavior*, u32);
|
||||
void extern Sword(ItemBehavior*, u32);
|
||||
void extern Bomb(ItemBehavior*, u32);
|
||||
void extern Bomb(ItemBehavior*, u32);
|
||||
void extern Bow(ItemBehavior*, u32);
|
||||
void extern Bow(ItemBehavior*, u32);
|
||||
void extern sub_08075D14(ItemBehavior*, u32);
|
||||
void extern sub_08075D14(ItemBehavior*, u32);
|
||||
void extern Shield(ItemBehavior*, u32);
|
||||
void extern Shield(ItemBehavior*, u32);
|
||||
void extern Lantern(ItemBehavior*, u32);
|
||||
void extern Lantern(ItemBehavior*, u32);
|
||||
void extern GustJar(ItemBehavior*, u32);
|
||||
void extern PacciCane(ItemBehavior*, u32);
|
||||
void extern MoleMitts(ItemBehavior*, u32);
|
||||
void extern RocsCape(ItemBehavior*, u32);
|
||||
void extern sub_08076800(ItemBehavior*, u32);
|
||||
void extern CellOverwriteSet(ItemBehavior*, u32);
|
||||
void Ocarina(ItemBehavior*, u32);
|
||||
void extern CellOverwriteSet(ItemBehavior*, u32);
|
||||
void extern CellOverwriteSet(ItemBehavior*, u32);
|
||||
void extern CellOverwriteSet(ItemBehavior*, u32);
|
||||
void extern TryPickupObject(ItemBehavior*, u32);
|
||||
void extern JarEmpty(ItemBehavior*, u32);
|
||||
void extern JarEmpty(ItemBehavior*, u32);
|
||||
void extern JarEmpty(ItemBehavior*, u32);
|
||||
void extern JarEmpty(ItemBehavior*, u32);
|
||||
|
||||
/* On hold until naming conflicts are resolved */
|
||||
/*
|
||||
enum
|
||||
@@ -127,15 +173,4 @@
|
||||
LongSpin = 0x75
|
||||
} ItemType;
|
||||
*/
|
||||
typedef struct {
|
||||
u8 unk;
|
||||
u8 behaviorID;
|
||||
u8 unk2;
|
||||
u8 unk3;
|
||||
u8 stateID;
|
||||
u8 filler[4];
|
||||
u8 unk4;
|
||||
u8 filler2[4];
|
||||
u8 unk5;
|
||||
} ItemBehavior;
|
||||
#endif
|
||||
+4
-1
@@ -19,7 +19,9 @@ typedef struct {
|
||||
u8 hurtBlinkSpeed;
|
||||
u8 filler4[4];
|
||||
u16 filler5[3];
|
||||
u8 filler6[8];
|
||||
u8 filler6[2];
|
||||
u8 field_0x1c;
|
||||
u8 filler9[2];
|
||||
u16 filler7[2];
|
||||
u8 swimState;
|
||||
u8 filler8[5];
|
||||
@@ -52,6 +54,7 @@ typedef struct {
|
||||
u32 unk8;
|
||||
} LinkState;
|
||||
|
||||
|
||||
typedef struct {
|
||||
u8 walletType;
|
||||
u8 heartPieces;
|
||||
|
||||
+169
-4
@@ -5,9 +5,174 @@
|
||||
#define NPC_H
|
||||
|
||||
typedef struct {
|
||||
u16 palette;
|
||||
u8 animIndex;
|
||||
u8 unk;
|
||||
} SpriteLoadThing;
|
||||
u16 palette;
|
||||
u8 animIndex;
|
||||
u8 unk;
|
||||
} SpriteLoadData;
|
||||
|
||||
extern void Gentari(Entity*);
|
||||
extern void Gentari_Fusion(Entity*);
|
||||
extern void Festari(Entity*);
|
||||
extern void Festari_Fusion(Entity*);
|
||||
extern void ForestMinish(Entity*);
|
||||
extern void ForestMinish_Head(Entity*);
|
||||
extern void ForestMinish_Fusion(Entity*);
|
||||
extern void Postman(Entity*);
|
||||
extern void Postman_Fusion(Entity*);
|
||||
extern void NPC5(Entity*);
|
||||
extern void Townsperson(Entity*);
|
||||
extern void Townsperson_Head(Entity*);
|
||||
extern void Townsperson_Fusion(Entity*);
|
||||
extern void Kid(Entity*);
|
||||
extern void Kid_Head(Entity*);
|
||||
extern void Kid_Fusion(Entity*);
|
||||
extern void Guard(Entity*);
|
||||
extern void Guard_Head(Entity*);
|
||||
extern void NPC9(Entity*);
|
||||
extern void Stamp(Entity*);
|
||||
extern void Maid(Entity*);
|
||||
extern void Maid_Head(Entity*);
|
||||
extern void Marcy(Entity*);
|
||||
extern void Wheaton(Entity*);
|
||||
extern void Pita(Entity*);
|
||||
extern void MinishEzlo(Entity*);
|
||||
extern void MinishEzlo_Head(Entity*);
|
||||
extern void Mailbox(Entity*);
|
||||
extern void Beedle(Entity*);
|
||||
extern void Beedle_Head(Entity*);
|
||||
extern void Brocco(Entity*);
|
||||
extern void Brocco_Fusion(Entity*);
|
||||
extern void SittingPerson(Entity*);
|
||||
extern void SittingPerson_Head(Entity*);
|
||||
extern void SittingPerson_Fusion(Entity*);
|
||||
extern void Pina(Entity*);
|
||||
extern void Pina_Fusion(Entity*);
|
||||
extern void Guard(Entity*);
|
||||
extern void Guard_Head(Entity*);
|
||||
extern void Maid(Entity*);
|
||||
extern void Maid_Head(Entity*);
|
||||
extern void Din(Entity*);
|
||||
extern void Din_Fusion(Entity*);
|
||||
extern void Nayru(Entity*);
|
||||
extern void Nayru_Fusion(Entity*);
|
||||
extern void Farore(Entity*);
|
||||
extern void Farore_Fusion(Entity*);
|
||||
extern void Sturgeon(Entity*);
|
||||
extern void Sturgeon_Head(Entity*);
|
||||
extern void Sturgeon_Fusion(Entity*);
|
||||
extern void TingleSiblings(Entity*);
|
||||
extern void TingleSiblings_Fusion(Entity*);
|
||||
extern void Stockwell(Entity*);
|
||||
extern void Talon(Entity*);
|
||||
extern void Talon_Head(Entity*);
|
||||
extern void Talon_Fusion(Entity*);
|
||||
extern void Malon(Entity*);
|
||||
extern void Malon_Fusion(Entity*);
|
||||
extern void Epona(Entity*);
|
||||
extern void Epona_Fusion(Entity*);
|
||||
extern void MilkCart(Entity*);
|
||||
extern void GhostBrothers(Entity*);
|
||||
extern void GhostBrothers_Fusion(Entity*);
|
||||
extern void Smith(Entity*);
|
||||
extern void Smith_Head(Entity*);
|
||||
extern void Smith_Fusion(Entity*);
|
||||
extern void NPC23(Entity*);
|
||||
extern void KingDaltus(Entity*);
|
||||
extern void KingDaltus_Fusion(Entity*);
|
||||
extern void MinisterPotho(Entity*);
|
||||
extern void MinisterPotho_Fusion(Entity*);
|
||||
extern void NPC26(Entity*);
|
||||
extern void Vaati(Entity*);
|
||||
extern void Zelda(Entity*);
|
||||
extern void Mutoh(Entity*);
|
||||
extern void Mutoh_Head(Entity*);
|
||||
extern void Mutoh_Fusion(Entity*);
|
||||
extern void Carpenter(Entity*);
|
||||
extern void Carpenter_Head(Entity*);
|
||||
extern void Carpenter_Fusion(Entity*);
|
||||
extern void CastorWildsStatue(Entity*);
|
||||
extern void CastorWildsStatue_Fusion(Entity*);
|
||||
extern void Cat(Entity*);
|
||||
extern void Cat_Fusion(Entity*);
|
||||
extern void MountainMinish(Entity*);
|
||||
extern void MountainMinish_Head(Entity*);
|
||||
extern void MountainMinish_Fusion(Entity*);
|
||||
extern void ZeldaFollower(Entity*);
|
||||
extern void Melari(Entity*);
|
||||
extern void Melari_Head(Entity*);
|
||||
extern void Melari_Fusion(Entity*);
|
||||
extern void BladeBrothers(Entity*);
|
||||
extern void BladeBrothers_Fusion(Entity*);
|
||||
extern void Cow(Entity*);
|
||||
extern void Cow_Fusion(Entity*);
|
||||
extern void Goron(Entity*);
|
||||
extern void Goron_Fusion(Entity*);
|
||||
extern void GoronMerchant(Entity*);
|
||||
extern void Gorman(Entity*);
|
||||
extern void Gorman_Head(Entity*);
|
||||
extern void Dog(Entity*);
|
||||
extern void Dog_Head(Entity*);
|
||||
extern void Dog_Fusion(Entity*);
|
||||
extern void Syrup(Entity*);
|
||||
extern void Syrup_Head(Entity*);
|
||||
extern void Rem(Entity*);
|
||||
extern void TownMinish(Entity*);
|
||||
extern void TownMinish_Head(Entity*);
|
||||
extern void TownMinish_Fusion(Entity*);
|
||||
extern void Librari(Entity*);
|
||||
extern void Librari_Fusion(Entity*);
|
||||
extern void Percy(Entity*);
|
||||
extern void Percy_Head(Entity*);
|
||||
extern void Percy_Fusion(Entity*);
|
||||
extern void VaatiReborn(Entity*);
|
||||
extern void MoblinLady(Entity*);
|
||||
extern void Librarians(Entity*);
|
||||
extern void Farmers(Entity*);
|
||||
extern void Farmers_Head(Entity*);
|
||||
extern void Farmers_Fusion(Entity*);
|
||||
extern void Carlov(Entity*);
|
||||
extern void Dampe(Entity*);
|
||||
extern void Dampe_Fusion(Entity*);
|
||||
extern void DrLeft(Entity*);
|
||||
extern void KingGustaf(Entity*);
|
||||
extern void Gina(Entity*);
|
||||
extern void Gina_Fusion(Entity*);
|
||||
extern void Simon(Entity*);
|
||||
extern void Anju(Entity*);
|
||||
extern void Anju_Fusion(Entity*);
|
||||
extern void Mama(Entity*);
|
||||
extern void Mama_Head(Entity*);
|
||||
extern void Mama_Fusion(Entity*);
|
||||
extern void Emma(Entity*);
|
||||
extern void Teachers(Entity*);
|
||||
extern void Teachers_Head(Entity*);
|
||||
extern void Teachers_Fusion(Entity*);
|
||||
extern void WindTribespeople(Entity*);
|
||||
extern void WindTribespeople_Head(Entity*);
|
||||
extern void WindTribespeople_Fusion(Entity*);
|
||||
extern void Gregal(Entity*);
|
||||
extern void Gregal_Fusion(Entity*);
|
||||
extern void MayorHagen(Entity*);
|
||||
extern void MayorHagen_Fusion(Entity*);
|
||||
extern void BigGoron(Entity*);
|
||||
extern void EzloCap(Entity*);
|
||||
extern void NPC4E(Entity*);
|
||||
extern void NPC4E_Fusion(Entity*);
|
||||
extern void NPC4F(Entity*);
|
||||
extern void ClothesRack(Entity*);
|
||||
extern void PicolyteBottle(Entity*);
|
||||
extern void SmallTownMinish(Entity*);
|
||||
extern void HurdyGurdyMan(Entity*);
|
||||
extern void HurdyGurdyMan_Head(Entity*);
|
||||
extern void HurdyGurdyMan_Fusion(Entity*);
|
||||
extern void Cucco(Entity*);
|
||||
extern void Cucco_Fusion(Entity*);
|
||||
extern void CuccoChick(Entity*);
|
||||
extern void CuccoChick_Fusion(Entity*);
|
||||
extern void FusionMenuNPC(Entity*);
|
||||
extern void FusionMenuNPC_Head(Entity*);
|
||||
extern void Phonograph(Entity*);
|
||||
extern void NPC58(Entity*);
|
||||
extern void NPC58_Head(Entity*);
|
||||
|
||||
#endif
|
||||
+1
-1
@@ -90,7 +90,7 @@ extern void Object52(Entity*);
|
||||
extern void Object53(Entity*);
|
||||
extern void PullableLever(Entity*);
|
||||
extern void Minecart(Entity*);
|
||||
extern void Object56(Entity*);
|
||||
extern void ThoughtBubble(Entity*);
|
||||
extern void HiddenLadderDown(Entity*);
|
||||
extern void GentariCurtain(Entity*);
|
||||
extern void LavaPlatform(Entity*);
|
||||
|
||||
@@ -0,0 +1,13 @@
|
||||
#ifndef POSITION_H
|
||||
#define POSITION_H
|
||||
|
||||
#include "global.h"
|
||||
#include "entity.h"
|
||||
|
||||
void CopyPosition(Entity*, Entity*);
|
||||
void PositionEntityOnTop(Entity*, Entity*);
|
||||
void PositionRelative(Entity*, Entity*, s32, s32);
|
||||
void sub_0806FA90(Entity*, Entity*, s32, s32);
|
||||
void ResolveEntityOnTop(Entity*, Entity*);
|
||||
|
||||
#endif
|
||||
+2
-2
@@ -51,8 +51,8 @@ typedef struct {
|
||||
u8 entityType;
|
||||
u8 field_0x1;
|
||||
u8 entitySubtype;
|
||||
u8 entityParameter1;
|
||||
u32 entityParameter2;
|
||||
u8 entityform;
|
||||
u32 entityparameter;
|
||||
u16 xPos;
|
||||
u16 yPos;
|
||||
u32 spritePtr;
|
||||
|
||||
@@ -0,0 +1,26 @@
|
||||
#ifndef SPRITE_H
|
||||
#define SPRITE_H
|
||||
|
||||
#include "global.h"
|
||||
|
||||
typedef struct {
|
||||
u8 index;
|
||||
u8 duration;
|
||||
union {
|
||||
u8 raw;
|
||||
struct {
|
||||
u8 unk : 6;
|
||||
u8 hFlip : 1;
|
||||
u8 vFlip : 1;
|
||||
} PACKED b;
|
||||
} PACKED spriteSettings;
|
||||
union {
|
||||
u8 raw;
|
||||
struct {
|
||||
u8 extraFrameIndex : 6;
|
||||
u8 unk : 1;
|
||||
u8 endOfAnimation : 1;
|
||||
} PACKED b;
|
||||
} PACKED frameSettings;
|
||||
} Frame;
|
||||
#endif
|
||||
@@ -20,4 +20,5 @@ extern TextBox gTextBox;
|
||||
|
||||
void TextboxNoOverlap(u32 index, Entity* ent);
|
||||
|
||||
void extern TextboxNoOverlapFollow(u32 index);
|
||||
#endif
|
||||
Reference in New Issue
Block a user