EnSGoro OK and documented (#895)

* EnSGoro OK and documented

* Format fix attempt for EnSGoro

* Requested format changes

* EnSGoro additional cleanup

* Fixed updated names

* fork merge (wip - don't review)

* Misc. formatting updates

Also had to un-eat some changes made upstream in functions.txt and variables.txt.

* A couple minor tweaks
This commit is contained in:
Blythe
2022-08-15 13:12:54 -05:00
committed by GitHub
parent d9a10948d3
commit f66ef00aeb
6 changed files with 1459 additions and 103 deletions
+1 -1
View File
@@ -177,7 +177,7 @@ Actor* EnJg_GetShrineGoronToFocusOn(PlayState* play, u8 focusedShrineGoronParam)
while (actorIterator != NULL) {
if ((actorIterator->id == ACTOR_EN_S_GORO) &&
(EN_S_GORO_GET_PARAM_F(actorIterator) == focusedShrineGoronParam)) {
(EN_S_GORO_GET_MAIN_TYPE(actorIterator) == focusedShrineGoronParam)) {
return actorIterator;
}
File diff suppressed because it is too large Load Diff
@@ -2,20 +2,59 @@
#define Z_EN_S_GORO_H
#include "global.h"
#include "objects/object_oF1d_map/object_oF1d_map.h"
#define EN_S_GORO_GET_PARAM_F(thisx) ((thisx)->params & 0xF)
#define EN_S_GORO_GET_MAIN_TYPE(thisx) ((thisx)->params & 0xF)
#define EN_S_GORO_SCENEFLAG_INDEX(thisx) (((thisx)->params & 0x7F0) >> 4)
struct EnSGoro;
typedef void (*EnSGoroActionFunc)(struct EnSGoro*, PlayState*);
typedef struct EnSGoro {
/* 0x000 */ Actor actor;
/* 0x144 */ char unk_144[0x48];
/* 0x18C */ EnSGoroActionFunc actionFunc;
/* 0x190 */ char unk_190[0x180];
} EnSGoro; // size = 0x310
extern const ActorInit En_S_Goro_InitVars;
typedef struct EnSGoro {
/* 0x000 */ Actor actor;
/* 0x144 */ Actor* otherGoron;
/* 0x148 */ SkelAnime skelAnime;
/* 0x18C */ EnSGoroActionFunc actionFunc;
/* 0x190 */ ColliderCylinder collider;
/* 0x1DC */ u16 actionFlags;
/* 0x1DE */ u16 bombbuyFlags;
/* 0x1E0 */ UNK_TYPE1 unk_1E0[0xC];
/* 0x1EC */ s16 eyeTexIndex;
/* 0x1EE */ s16 eyeTimer;
/* 0x1F0 */ s16 loseAttentionTimer;
/* 0x1F4 */ s32 loadedObjIndex;
/* 0x1F8 */ Vec3s jointTable[GORON_LIMB_MAX];
/* 0x264 */ Vec3s morphTable[GORON_LIMB_MAX];
/* 0x2D0 */ f32 scaleFactor;
/* 0x2D4 */ s16 headRotZ;
/* 0x2D6 */ s16 headRotY;
/* 0x2D8 */ s16 bodyRotZ;
/* 0x2DA */ s16 bodyRotY;
/* 0x2DC */ Vec3f headTranslate;
/* 0x2E8 */ Vec3s headRotate;
/* 0x2F0 */ Vec3f bodyTranslate;
/* 0x2FC */ Vec3s bodyRotate;
/* 0x302 */ UNK_TYPE1 unk_302[2];
/* 0x304 */ u16 textId;
/* 0x306 */ s16 snorePhase;
/* 0x308 */ s32 animInfoIndex;
/* 0x30C */ s16 powderKegPrice;
} EnSGoro; // size = 0x310
typedef enum EnSGoroType {
/* 0x0 */ EN_S_GORO_TYPE_SHRINE_WINTER_A,
/* 0x1 */ EN_S_GORO_TYPE_SHRINE_WINTER_B,
/* 0x2 */ EN_S_GORO_TYPE_SHRINE_WINTER_C,
/* 0x3 */ EN_S_GORO_TYPE_SHRINE_SPRING_A,
/* 0x4 */ EN_S_GORO_TYPE_SHRINE_SPRING_B,
/* 0x5 */ EN_S_GORO_TYPE_SHRINE_SPRING_C,
/* 0x6 */ EN_S_GORO_TYPE_SHRINE_SPRING_D,
/* 0x7 */ EN_S_GORO_TYPE_SHRINE_SPRING_E,
/* 0x8 */ EN_S_GORO_TYPE_SHRINE_SPRING_F,
/* 0x9 */ EN_S_GORO_TYPE_BOMBSHOP
} EnSGoroType;
#endif // Z_EN_S_GORO_H