mirror of
https://github.com/zeldaret/oot.git
synced 2024-12-26 14:46:16 +00:00
z_en_syateki_niw
doc (#1449)
* SyatekiNiw doc started id'ing funcs and fields for SyatekiNiw * `z_en_syateki_niw` doc * `z_en_syateki_niw1: (almost) all fields/funcs doc'd * `z_en_syateki_niw` update changes based on feedback. * `z_en_syateki_niw`: limb fields renamed * Update z_en_syateki_niw.h renamed fields as suggested. * Update src/overlays/actors/ovl_En_Syateki_Niw/z_en_syateki_niw.h fix typo in comment. Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com> * Update z_en_bom_bowl_man.c add minigame enum to actor spawn param * `z_en_syateki_niw`: updated based on feedback renamed local vars for claritey, added more comments to struct. * Update z_en_syateki_niw.c renamed function and var based on feedback --------- Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>
This commit is contained in:
parent
fc3e0f080b
commit
b2787995f5
3 changed files with 401 additions and 396 deletions
|
@ -69,10 +69,10 @@ void EnBomBowlMan_Init(Actor* thisx, PlayState* play2) {
|
|||
|
||||
for (i = 0; i < 2; i++) {
|
||||
cucco = (EnSyatekiNiw*)Actor_Spawn(&play->actorCtx, play, ACTOR_EN_SYATEKI_NIW, cuccoSpawnPos[i].x,
|
||||
cuccoSpawnPos[i].y, cuccoSpawnPos[i].z, 0, 0, 0, 1);
|
||||
|
||||
cuccoSpawnPos[i].y, cuccoSpawnPos[i].z, 0, 0, 0,
|
||||
SYATEKI_MINIGAME_ALLEY);
|
||||
if (cucco != NULL) {
|
||||
cucco->unk_2F4 = cuccoScales[i];
|
||||
cucco->scale = cuccoScales[i];
|
||||
cucco->collider.dim.radius = (s16)cuccoColliderDims[i][0];
|
||||
cucco->collider.dim.height = (s16)cuccoColliderDims[i][1];
|
||||
}
|
||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -9,15 +9,15 @@ struct EnSyatekiNiw;
|
|||
typedef void (*EnSyatekiNiwActionFunc)(struct EnSyatekiNiw*, PlayState*);
|
||||
|
||||
typedef struct {
|
||||
/* 0x00 */ u8 unk_00;
|
||||
/* 0x0C */ Vec3f unk_04;
|
||||
/* 0x10 */ Vec3f unk_10;
|
||||
/* 0x1C */ Vec3f unk_1C;
|
||||
/* 0x28 */ s16 unk_28;
|
||||
/* 0x2A */ s16 unk_2A;
|
||||
/* 0x2C */ f32 unk_2C;
|
||||
/* 0x30 */ f32 unk_30;
|
||||
/* 0x34 */ u8 unk_34;
|
||||
/* 0x00 */ u8 state;
|
||||
/* 0x0C */ Vec3f pos;
|
||||
/* 0x10 */ Vec3f vel;
|
||||
/* 0x1C */ Vec3f accel;
|
||||
/* 0x28 */ s16 lifespan;
|
||||
/* 0x2A */ s16 rotPulse;
|
||||
/* 0x2C */ f32 scale;
|
||||
/* 0x30 */ f32 rot;
|
||||
/* 0x34 */ u8 timer;
|
||||
} EnSyatekiNiwEffect; // size = 0x38
|
||||
|
||||
#define EN_SYATEKI_NIW_EFFECT_COUNT 5
|
||||
|
@ -28,46 +28,51 @@ typedef struct EnSyatekiNiw {
|
|||
/* 0x0190 */ Vec3s jointTable[16];
|
||||
/* 0x01F0 */ Vec3s morphTable[16];
|
||||
/* 0x0250 */ EnSyatekiNiwActionFunc actionFunc;
|
||||
/* 0x0254 */ s16 unk_254;
|
||||
/* 0x0256 */ s16 unk_256;
|
||||
/* 0x0258 */ s16 unk_258;
|
||||
/* 0x025A */ s16 unk_25A;
|
||||
/* 0x025C */ s16 unk_25C;
|
||||
/* 0x025E */ s16 unk_25E;
|
||||
/* 0x0260 */ s16 unk_260;
|
||||
/* 0x0262 */ s16 unk_262;
|
||||
/* 0x0264 */ f32 unk_264;
|
||||
/* 0x0268 */ f32 unk_268;
|
||||
/* 0x026C */ f32 unk_26C;
|
||||
/* 0x0254 */ s16 peckTimer; // intervals of bobbing head on ground
|
||||
/* 0x0256 */ s16 timer1; // sometimes set alongside peckTimer, never read.
|
||||
/* 0x0258 */ s16 flapTimer; // intervals of beating wings
|
||||
/* 0x025A */ s16 archeryTimer;
|
||||
/* 0x025C */ s16 hopTimer; // intervals of jumping
|
||||
/* 0x025E */ s16 movementTimer; // intervals of changing location
|
||||
/* 0x0260 */ s16 sootTimer; // cucco is covered in soot, smoke emmits
|
||||
/* 0x0262 */ s16 cluckTimer; // intervals of clucking SFX
|
||||
/* 0x0264 */ f32 headRotXTarget;
|
||||
/* 0x0268 */ f32 rightWingRotXTarget;
|
||||
/* 0x026C */ f32 leftWingRotXTarget;
|
||||
/* 0x0270 */ char unk_270[0x8];
|
||||
/* 0x0278 */ f32 unk_278;
|
||||
/* 0x027C */ f32 unk_27C;
|
||||
/* 0x0284 */ f32 unk_280;
|
||||
/* 0x0280 */ f32 unk_284;
|
||||
/* 0x0288 */ f32 unk_288;
|
||||
/* 0x028C */ s16 unk_28C;
|
||||
/* 0x028E */ s16 unk_28E;
|
||||
/* 0x0290 */ s16 unk_290;
|
||||
/* 0x0292 */ s16 unk_292;
|
||||
/* 0x0294 */ s16 unk_294;
|
||||
/* 0x0296 */ s16 unk_296;
|
||||
/* 0x0298 */ s16 unk_298;
|
||||
/* 0x029C */ s16 unk_29A;
|
||||
/* 0x029C */ s16 unk_29C;
|
||||
/* 0x029E */ s16 unk_29E;
|
||||
/* 0x02A0 */ s16 unk_2A0;
|
||||
/* 0x02A4 */ Vec3f unk_2A4;
|
||||
/* 0x02B0 */ Vec3f unk_2B0;
|
||||
/* 0x02BC */ Vec3f unk_2BC;
|
||||
/* 0x02C8 */ Vec3f unk_2C8;
|
||||
/* 0x02D4 */ f32 unk_2D4;
|
||||
/* 0x02D8 */ f32 unk_2D8;
|
||||
/* 0x02DC */ Vec3f unk_2DC;
|
||||
/* 0x02E8 */ Vec3f unk_2E8;
|
||||
/* 0x02F4 */ f32 unk_2F4;
|
||||
/* 0x02F8 */ u8 unk_2F8;
|
||||
/* 0x0278 */ f32 rightWingRotYTarget;
|
||||
/* 0x027C */ f32 rightWingRotZTarget;
|
||||
/* 0x0284 */ f32 leftWingRotYTarget;
|
||||
/* 0x0280 */ f32 leftWingRotZTarget;
|
||||
/* 0x0288 */ f32 unkArcheryFloat; // set, but never used. another rot target?
|
||||
/* 0x028C */ s16 lifetime; // always ticks up, never read
|
||||
/* 0x028E */ s16 headRotXState;
|
||||
/* 0x0290 */ s16 unk_290; // set to 0, never read.
|
||||
/* 0x0292 */ s16 wingsRotState;
|
||||
/* 0x0294 */ s16 targetPosTimer;
|
||||
/* 0x0296 */ s16 archeryAnimationType;
|
||||
/* 0x0298 */ s16 rotYFlip;
|
||||
/* 0x029C */ s16 archeryState; // state index for "Archery" action
|
||||
/* 0x029C */ s16 isFalling; // set when hit in archery game
|
||||
/* 0x029E */ s16 minigameType; // uses EnSyatekiMinigame from params
|
||||
/* 0x02A0 */ s16 spawnFeathers; // triggers feather particles
|
||||
/* 0x02A4 */ Vec3f leftWingRot;
|
||||
/* 0x02B0 */ Vec3f rightWingRot;
|
||||
/* 0x02BC */ Vec3f headRot;
|
||||
/* 0x02C8 */ Vec3f posRotStep;
|
||||
/* 0x02D4 */ f32 focusYOffset;
|
||||
/* 0x02D8 */ f32 removeStateYaw;
|
||||
/* 0x02DC */ Vec3f initPos;
|
||||
/* 0x02E8 */ Vec3f targetPos;
|
||||
/* 0x02F4 */ f32 scale;
|
||||
/* 0x02F8 */ u8 unkAlleyHitByte; // Set when hit in Bombchu Alley. Never read.
|
||||
/* 0x02FC */ ColliderCylinder collider;
|
||||
/* 0x0348 */ EnSyatekiNiwEffect effects[EN_SYATEKI_NIW_EFFECT_COUNT];
|
||||
/* 0x0348 */ EnSyatekiNiwEffect effects[EN_SYATEKI_NIW_EFFECT_COUNT]; // feather particles
|
||||
} EnSyatekiNiw; // size = 0x0460
|
||||
|
||||
typedef enum {
|
||||
SYATEKI_MINIGAME_ARCHERY, // unused archery game behavior
|
||||
SYATEKI_MINIGAME_ALLEY // Bombchu Alley behavior
|
||||
} EnSyatekiMinigame;
|
||||
|
||||
#endif
|
||||
|
|
Loading…
Reference in a new issue