mirror of
https://github.com/zeldaret/tmc
synced 2026-09-07 11:21:35 -04:00
great fairy ~70%
This commit is contained in:
+23
-10
@@ -24,7 +24,7 @@ union SplitWord {
|
||||
} HALF;
|
||||
};
|
||||
|
||||
typedef struct
|
||||
typedef struct Entity
|
||||
{
|
||||
u32 *field_0x0;
|
||||
u32 * field_0x4;
|
||||
@@ -53,15 +53,28 @@ typedef struct
|
||||
u8 ss7:1;
|
||||
} __attribute__((packed)) b;
|
||||
} __attribute__((packed)) spriteSettings;
|
||||
u8 spriteOrder;
|
||||
|
||||
struct {
|
||||
u8 b0:2;
|
||||
u8 b1:2;
|
||||
u8 b2:4;
|
||||
} __attribute__((packed)) spriteOrder;
|
||||
u8 palette;
|
||||
u8 spriteOrientation[3];
|
||||
struct {
|
||||
u8 b0:4;
|
||||
u8 b1:1;
|
||||
u8 b2:3;
|
||||
} __attribute__((packed)) spriteOrientation;
|
||||
u8 filler[2];
|
||||
u8 animationList;
|
||||
u8 field_1f;
|
||||
u16 field_0x20;
|
||||
u32 field_0x20;
|
||||
s16 nonPlanarMovement;
|
||||
u8 spriteAnimation[3];
|
||||
u8 ticks;
|
||||
struct {
|
||||
u8 b0:3;
|
||||
u8 b1:5;
|
||||
} __attribute__((packed)) ticks;
|
||||
u16 collisions;
|
||||
union SplitWord x;
|
||||
union SplitWord y;
|
||||
@@ -86,8 +99,8 @@ typedef struct
|
||||
u8 field_0x4d;
|
||||
u8 field_0x4e;
|
||||
u8 field_0x4f;
|
||||
void * parent;
|
||||
u32 * attachedEntity;
|
||||
struct Entity * parent;
|
||||
struct Entity * attachedEntity;
|
||||
u8 field_0x58;
|
||||
u8 field_0x59;
|
||||
union {
|
||||
@@ -104,9 +117,10 @@ typedef struct
|
||||
u16 spriteVramOffset;
|
||||
u8 spriteRenderPositionOffset;
|
||||
u8 field_0x63;
|
||||
u8 * field_0x64;
|
||||
u32 * otherEntity;
|
||||
u8 filler2[8];
|
||||
u16 field_0x68;
|
||||
u16 field_0x6a;
|
||||
u8 filler4[8];
|
||||
u32 * heldObjectPtr;
|
||||
u8 filler3[2];
|
||||
u16 itemCooldown;
|
||||
@@ -117,5 +131,4 @@ typedef struct
|
||||
|
||||
} Entity;
|
||||
|
||||
|
||||
#endif
|
||||
@@ -0,0 +1,46 @@
|
||||
#ifndef GREATFAIRY_H
|
||||
#define GREATFAIRY_H
|
||||
|
||||
extern u32 __modsi3(u32, u32);
|
||||
extern void UpdateSprite(Entity *, u32);
|
||||
extern void sub_08087380();
|
||||
extern u32 sub_0807CC3C();
|
||||
extern Entity *sub_080873AC(Entity*, u32, u32);
|
||||
extern void PositionRelative();
|
||||
extern void CopyPosition();
|
||||
extern void DoFade();
|
||||
extern void PlaySFX();
|
||||
extern void sub_08004274();
|
||||
extern void sub_0805EC9C();
|
||||
extern void sub_0805EC60();
|
||||
extern void sub_080873D0();
|
||||
extern void sub_0805E7BC();
|
||||
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 *);
|
||||
|
||||
extern u32 gUnk_0810C2E4;
|
||||
extern RoomControls gRoomControls;
|
||||
extern Entity gLinkEntity;
|
||||
extern s16 gGreatFairyRippleOffsets[10];
|
||||
extern u32 gUnk_02034350;
|
||||
extern RoomVars gRoomVars;
|
||||
extern Screen gScreen;
|
||||
extern u32 gUnk_02033280;
|
||||
extern u8 gUnk_0812079C[8];
|
||||
|
||||
#endif
|
||||
@@ -33,4 +33,15 @@ typedef struct {
|
||||
Entity * cameraTarget;
|
||||
} RoomControls;
|
||||
|
||||
typedef struct {
|
||||
u8 filler[6];
|
||||
u8 itemForSaleIndex;
|
||||
u16 unk;
|
||||
u8 unk2;
|
||||
u16 filler2[3];
|
||||
u8 filler3[4];
|
||||
u8 filler4[52];
|
||||
u8 filler5[28];
|
||||
u32 greatFairyState;
|
||||
} RoomVars;
|
||||
#endif
|
||||
@@ -23,7 +23,6 @@ typedef struct {
|
||||
u16 bg2yOffset;
|
||||
u16 unk;
|
||||
u32 unk2;
|
||||
u16 unk3;
|
||||
u16 bg3Control;
|
||||
u16 bg3xOffset;
|
||||
u16 bg3yOffset;
|
||||
@@ -60,4 +59,12 @@ typedef struct {
|
||||
u16 layerBrightness;
|
||||
} BgControls;
|
||||
|
||||
typedef struct {
|
||||
LcdControls lcd;
|
||||
BgSettings bg1;
|
||||
BgSettings bg2;
|
||||
BgAffSettings affine;
|
||||
BgControls controls;
|
||||
} Screen;
|
||||
|
||||
#endif
|
||||
Reference in New Issue
Block a user