From eff952b9446b11123f51de438959771b999ec2bd Mon Sep 17 00:00:00 2001 From: Derek Hensley Date: Sat, 23 Jul 2022 11:53:06 -0700 Subject: [PATCH] General Cleanup 8 (#958) * EnBigokuta * EnBji * Soldiers * Start harfgibud * Finish harfgibud * Pamela * PametFrog * format * bigslime * bji comment * PR + small cleanup of Eye Tex anims * Shikashi --- assets/xml/objects/object_bigokuta.xml | 40 ++--- assets/xml/objects/object_bigslime.xml | 48 +++--- assets/xml/objects/object_bji.xml | 69 ++++---- assets/xml/objects/object_fsn.xml | 4 +- assets/xml/objects/object_harfgibud.xml | 152 +++++++++--------- assets/xml/objects/object_pamera.xml | 90 ++++++----- assets/xml/objects/object_sdn.xml | 34 ++-- assets/xml/overlays/ovl_En_Bigslime.xml | 8 +- .../actors/ovl_En_Bigokuta/z_en_bigokuta.c | 3 +- .../actors/ovl_En_Bigokuta/z_en_bigokuta.h | 25 +-- .../actors/ovl_En_Bigslime/z_en_bigslime.c | 16 +- .../actors/ovl_En_Bji_01/z_en_bji_01.c | 33 ++-- .../actors/ovl_En_Bji_01/z_en_bji_01.h | 33 +--- .../ovl_En_Demo_heishi/z_en_demo_heishi.c | 7 +- .../ovl_En_Demo_heishi/z_en_demo_heishi.h | 26 +-- .../ovl_En_Ending_Hero4/z_en_ending_hero4.c | 2 +- .../ovl_En_Ending_Hero6/z_en_ending_hero6.c | 6 +- .../actors/ovl_En_Heishi/z_en_heishi.c | 7 +- .../actors/ovl_En_Heishi/z_en_heishi.h | 26 +-- src/overlays/actors/ovl_En_Hg/z_en_hg.c | 13 +- src/overlays/actors/ovl_En_Hg/z_en_hg.h | 29 +--- src/overlays/actors/ovl_En_Hgo/z_en_hgo.c | 21 ++- src/overlays/actors/ovl_En_Hgo/z_en_hgo.h | 33 +--- .../actors/ovl_En_Pamera/z_en_pamera.c | 23 ++- .../actors/ovl_En_Pamera/z_en_pamera.h | 36 +---- .../actors/ovl_En_Pametfrog/z_en_pametfrog.c | 21 ++- .../actors/ovl_En_Pametfrog/z_en_pametfrog.h | 29 +--- 27 files changed, 330 insertions(+), 504 deletions(-) diff --git a/assets/xml/objects/object_bigokuta.xml b/assets/xml/objects/object_bigokuta.xml index 21ead0501a..2c54c6a61a 100644 --- a/assets/xml/objects/object_bigokuta.xml +++ b/assets/xml/objects/object_bigokuta.xml @@ -34,25 +34,25 @@ - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + diff --git a/assets/xml/objects/object_bigslime.xml b/assets/xml/objects/object_bigslime.xml index 5b7530addf..7195c20c71 100644 --- a/assets/xml/objects/object_bigslime.xml +++ b/assets/xml/objects/object_bigslime.xml @@ -65,30 +65,30 @@ - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/assets/xml/objects/object_bji.xml b/assets/xml/objects/object_bji.xml index b41ac15468..0fec0c8c36 100644 --- a/assets/xml/objects/object_bji.xml +++ b/assets/xml/objects/object_bji.xml @@ -3,21 +3,23 @@ - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + @@ -36,22 +38,27 @@ - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + diff --git a/assets/xml/objects/object_fsn.xml b/assets/xml/objects/object_fsn.xml index 2ed2b5d081..e3ae8db1bd 100644 --- a/assets/xml/objects/object_fsn.xml +++ b/assets/xml/objects/object_fsn.xml @@ -53,8 +53,8 @@ - - + + diff --git a/assets/xml/objects/object_harfgibud.xml b/assets/xml/objects/object_harfgibud.xml index a97e42c000..361bbe74c6 100644 --- a/assets/xml/objects/object_harfgibud.xml +++ b/assets/xml/objects/object_harfgibud.xml @@ -5,23 +5,25 @@ - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + @@ -35,47 +37,51 @@ - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + @@ -91,25 +97,27 @@ - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + diff --git a/assets/xml/objects/object_pamera.xml b/assets/xml/objects/object_pamera.xml index 6b457ab8b6..28f73983e1 100644 --- a/assets/xml/objects/object_pamera.xml +++ b/assets/xml/objects/object_pamera.xml @@ -1,26 +1,28 @@  - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + @@ -38,29 +40,31 @@ - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/assets/xml/objects/object_sdn.xml b/assets/xml/objects/object_sdn.xml index 219436b025..88c62434e8 100644 --- a/assets/xml/objects/object_sdn.xml +++ b/assets/xml/objects/object_sdn.xml @@ -44,23 +44,23 @@ - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + diff --git a/assets/xml/overlays/ovl_En_Bigslime.xml b/assets/xml/overlays/ovl_En_Bigslime.xml index 9526daea6f..fe92a87fb0 100644 --- a/assets/xml/overlays/ovl_En_Bigslime.xml +++ b/assets/xml/overlays/ovl_En_Bigslime.xml @@ -1,20 +1,14 @@ - + - - - - - - diff --git a/src/overlays/actors/ovl_En_Bigokuta/z_en_bigokuta.c b/src/overlays/actors/ovl_En_Bigokuta/z_en_bigokuta.c index 60dbab0412..2b1111809f 100644 --- a/src/overlays/actors/ovl_En_Bigokuta/z_en_bigokuta.c +++ b/src/overlays/actors/ovl_En_Bigokuta/z_en_bigokuta.c @@ -5,7 +5,6 @@ */ #include "z_en_bigokuta.h" -#include "assets/objects/object_bigokuta/object_bigokuta.h" #define FLAGS (ACTOR_FLAG_1 | ACTOR_FLAG_4) @@ -584,7 +583,7 @@ s32 EnBigokuta_OverrideLimbDraw(PlayState* play, s32 limbIndex, Gfx** dList, Vec } rot->x -= rotX; } - } else if (limbIndex == BIGOKUTA_LIMB_SNOUT_CENTER) { + } else if (limbIndex == BIGOKUTA_LIMB_CENTER_SNOUT) { EnBigokuta* this = THIS; if (this->actionFunc == EnBigokuta_PlayDeathEffects) { diff --git a/src/overlays/actors/ovl_En_Bigokuta/z_en_bigokuta.h b/src/overlays/actors/ovl_En_Bigokuta/z_en_bigokuta.h index c5cb799a52..ba59e9a976 100644 --- a/src/overlays/actors/ovl_En_Bigokuta/z_en_bigokuta.h +++ b/src/overlays/actors/ovl_En_Bigokuta/z_en_bigokuta.h @@ -2,36 +2,13 @@ #define Z_EN_BIGOKUTA_H #include "global.h" +#include "assets/objects/object_bigokuta/object_bigokuta.h" struct EnBigokuta; typedef void (*EnBigokutaActionFunc)(struct EnBigokuta*, PlayState*); typedef void (*EnBigokutaUnkFunc)(PlayState*, struct EnBigokuta*); -typedef enum { - /* 00 */ BIGOKUTA_LIMB_NONE, - /* 01 */ BIGOKUTA_LIMB_BODY, - /* 02 */ BIGOKUTA_LIMB_ARM_BASE_RIGHT_FRONT, - /* 03 */ BIGOKUTA_LIMB_ARM_END_RIGHT_FRONT, - /* 04 */ BIGOKUTA_LIMB_ARM_BASE_LEFT_FRONT, - /* 05 */ BIGOKUTA_LIMB_ARM_END_LEFT_FRONT, - /* 06 */ BIGOKUTA_LIMB_ARM_BASE_RIGHT_BACK, - /* 07 */ BIGOKUTA_LIMB_ARM_END_RIGHT_BACK, - /* 08 */ BIGOKUTA_LIMB_ARM_BASE_LEFT_BACK, - /* 09 */ BIGOKUTA_LIMB_ARM_END_LEFT_BACK, - /* 10 */ BIGOKUTA_LIMB_HEAD, - /* 11 */ BIGOKUTA_LIMB_TENTACLE_BASE_LEFT, - /* 12 */ BIGOKUTA_LIMB_TENTACLE_TIP_LEFT, - /* 13 */ BIGOKUTA_LIMB_TENTACLE_BASE_RIGHT, - /* 14 */ BIGOKUTA_LIMB_TENTACLE_TIP_RIGHT, - /* 15 */ BIGOKUTA_LIMB_WEAK_POINT_LEFT, - /* 16 */ BIGOKUTA_LIMB_WEAK_POINT_RIGHT, - /* 17 */ BIGOKUTA_LIMB_SNOUT_CENTER, - /* 18 */ BIGOKUTA_LIMB_SNOUT_RIGHT, - /* 19 */ BIGOKUTA_LIMB_SNOUT_LEFT, - /* 20 */ BIGOKUTA_LIMB_MAX -} ObjectBigokutaLimbs; - typedef struct EnBigokuta { /* 0x000 */ Actor actor; /* 0x144 */ EnBigokutaUnkFunc unkFunc; // possibly something to do with photographing diff --git a/src/overlays/actors/ovl_En_Bigslime/z_en_bigslime.c b/src/overlays/actors/ovl_En_Bigslime/z_en_bigslime.c index e22457a128..6f48cdb7a0 100644 --- a/src/overlays/actors/ovl_En_Bigslime/z_en_bigslime.c +++ b/src/overlays/actors/ovl_En_Bigslime/z_en_bigslime.c @@ -153,7 +153,7 @@ static Vtx sBigslimeTargetVtx[BIGSLIME_NUM_VTX] = { * Purpose: indices to calculate/update normal vector for lighting calculations * "EnBigslimeTri" struct based on "Tri" struct from gbi.h, but without the flag */ -static EnBigslimeTri sEnbigslimeTri[BIGSLIME_NUM_FACES] = { +static EnBigslimeTri sBigslimeTri[BIGSLIME_NUM_FACES] = { { 0, 2, 1 }, { 1, 7, 6 }, { 1, 2, 7 }, { 2, 8, 7 }, { 6, 17, 16 }, { 6, 7, 17 }, { 8, 19, 18 }, { 7, 8, 18 }, { 7, 18, 17 }, { 9, 21, 20 }, { 0, 3, 2 }, { 2, 9, 8 }, { 2, 3, 9 }, { 3, 10, 9 }, { 8, 20, 19 }, { 8, 9, 20 }, { 10, 22, 21 }, { 9, 10, 21 }, @@ -436,13 +436,13 @@ void EnBigslime_UpdateSurfaceNorm(EnBigslime* this) { } for (i = 0; i < BIGSLIME_NUM_FACES; i++) { - dynamicVtx0 = &sBigslimeDynamicVtx[this->dynamicVtxState][sEnbigslimeTri[i].v[0]]; - dynamicVtx12 = &sBigslimeDynamicVtx[this->dynamicVtxState][sEnbigslimeTri[i].v[1]]; + dynamicVtx0 = &sBigslimeDynamicVtx[this->dynamicVtxState][sBigslimeTri[i].v[0]]; + dynamicVtx12 = &sBigslimeDynamicVtx[this->dynamicVtxState][sBigslimeTri[i].v[1]]; vecTriEdge1.x = dynamicVtx12->n.ob[0] - dynamicVtx0->n.ob[0]; vecTriEdge1.y = dynamicVtx12->n.ob[1] - dynamicVtx0->n.ob[1]; vecTriEdge1.z = dynamicVtx12->n.ob[2] - dynamicVtx0->n.ob[2]; - dynamicVtx12 = &sBigslimeDynamicVtx[this->dynamicVtxState][sEnbigslimeTri[i].v[2]]; + dynamicVtx12 = &sBigslimeDynamicVtx[this->dynamicVtxState][sBigslimeTri[i].v[2]]; vecTriEdge2.x = dynamicVtx12->n.ob[0] - dynamicVtx0->n.ob[0]; vecTriEdge2.y = dynamicVtx12->n.ob[1] - dynamicVtx0->n.ob[1]; vecTriEdge2.z = dynamicVtx12->n.ob[2] - dynamicVtx0->n.ob[2]; @@ -450,9 +450,9 @@ void EnBigslime_UpdateSurfaceNorm(EnBigslime* this) { Math3D_CrossProduct(&vecTriEdge1, &vecTriEdge2, &vecTriNorm); EnBigslime_Vec3fNormalize(&vecTriNorm); - Math_Vec3f_Sum(&vtxNorm[sEnbigslimeTri[i].v[0]], &vecTriNorm, &vtxNorm[sEnbigslimeTri[i].v[0]]); - Math_Vec3f_Sum(&vtxNorm[sEnbigslimeTri[i].v[1]], &vecTriNorm, &vtxNorm[sEnbigslimeTri[i].v[1]]); - Math_Vec3f_Sum(&vtxNorm[sEnbigslimeTri[i].v[2]], &vecTriNorm, &vtxNorm[sEnbigslimeTri[i].v[2]]); + Math_Vec3f_Sum(&vtxNorm[sBigslimeTri[i].v[0]], &vecTriNorm, &vtxNorm[sBigslimeTri[i].v[0]]); + Math_Vec3f_Sum(&vtxNorm[sBigslimeTri[i].v[1]], &vecTriNorm, &vtxNorm[sBigslimeTri[i].v[1]]); + Math_Vec3f_Sum(&vtxNorm[sBigslimeTri[i].v[2]], &vecTriNorm, &vtxNorm[sBigslimeTri[i].v[2]]); } for (i = 0; i < BIGSLIME_NUM_VTX; i++) { @@ -3053,7 +3053,7 @@ void EnBigslime_PostLimbDraw(PlayState* play, s32 limbIndex, Gfx** dList, Vec3s* Matrix_MultZero(&this->limbPos[limbPosIndex[limbIndex]]); } - if (limbIndex == GEKKO_LIMB_R_ANKLE) { + if (limbIndex == GEKKO_LIMB_RIGHT_ANKLE) { Matrix_MultVec3f(&rightFootOffsetRef, &rightFootOffset); this->gekkoCollider.dim.pos.y = rightFootOffset.y; } diff --git a/src/overlays/actors/ovl_En_Bji_01/z_en_bji_01.c b/src/overlays/actors/ovl_En_Bji_01/z_en_bji_01.c index 63cc7ed57f..725b740f07 100644 --- a/src/overlays/actors/ovl_En_Bji_01/z_en_bji_01.c +++ b/src/overlays/actors/ovl_En_Bji_01/z_en_bji_01.c @@ -5,7 +5,6 @@ */ #include "z_en_bji_01.h" -#include "objects/object_bji/object_bji.h" #define FLAGS (ACTOR_FLAG_1 | ACTOR_FLAG_8 | ACTOR_FLAG_10) @@ -90,7 +89,7 @@ void func_809CCE98(EnBji01* this, PlayState* play) { void func_809CCEE8(EnBji01* this, PlayState* play) { Math_ScaledStepToS(&this->actor.shape.rot.y, this->actor.home.rot.y, 0x444); - if (this->actor.params == ENBJI01_PARAMS_DEFAULT) { + if (this->actor.params == SHIKASHI_TYPE_DEFAULT) { if ((this->actor.xzDistToPlayer <= 60.0f) && (this->actor.playerHeightRel <= 10.0f)) { this->actor.flags |= ACTOR_FLAG_10000; } else { @@ -118,8 +117,8 @@ void func_809CD028(EnBji01* this, PlayState* play) { f32 timeBeforeMoonCrash; switch (this->actor.params) { - case ENBJI01_PARAMS_DEFAULT: - case ENBJI01_PARAMS_FINISHED_CONVERSATION: + case SHIKASHI_TYPE_DEFAULT: + case SHIKASHI_TYPE_FINISHED_CONVERSATION: switch (gSaveContext.save.playerForm) { case PLAYER_FORM_DEKU: if (gSaveContext.save.weekEventReg[17] & 0x10) { @@ -154,7 +153,7 @@ void func_809CD028(EnBji01* this, PlayState* play) { break; } break; - case ENBJI01_PARAMS_LOOKED_THROUGH_TELESCOPE: + case SHIKASHI_TYPE_LOOKED_THROUGH_TELESCOPE: switch (gSaveContext.save.playerForm) { case PLAYER_FORM_DEKU: if (gSaveContext.save.weekEventReg[74] & 0x80) { @@ -208,7 +207,7 @@ void EnBji01_DialogueHandler(EnBji01* this, PlayState* play) { case TEXT_STATE_CHOICE: if (Message_ShouldAdvance(play)) { this->actor.flags &= ~ACTOR_FLAG_10000; - this->actor.params = ENBJI01_PARAMS_FINISHED_CONVERSATION; + this->actor.params = SHIKASHI_TYPE_FINISHED_CONVERSATION; switch (play->msgCtx.choiceIndex) { case 0: func_8019F208(); @@ -276,14 +275,14 @@ void EnBji01_DialogueHandler(EnBji01* this, PlayState* play) { case 0x5F8: func_801477B4(play); this->actor.flags &= ~ACTOR_FLAG_10000; - this->actor.params = ENBJI01_PARAMS_FINISHED_CONVERSATION; + this->actor.params = SHIKASHI_TYPE_FINISHED_CONVERSATION; func_809CCE98(this, play); break; } } break; case TEXT_STATE_DONE: - this->actor.params = ENBJI01_PARAMS_FINISHED_CONVERSATION; + this->actor.params = SHIKASHI_TYPE_FINISHED_CONVERSATION; this->actor.flags &= ~ACTOR_FLAG_10000; func_809CCE98(this, play); break; @@ -330,8 +329,8 @@ void EnBji01_Init(Actor* thisx, PlayState* play) { EnBji01* this = THIS; ActorShape_Init(&this->actor.shape, 0.0f, ActorShadow_DrawCircle, 30.0f); - SkelAnime_InitFlex(play, &this->skelAnime, &object_bji_Skel_00578C, &object_bji_Anim_000FDC, this->jointTable, - this->morphTable, BJI_LIMB_MAX); + SkelAnime_InitFlex(play, &this->skelAnime, &gShikashiSkel, &object_bji_Anim_000FDC, this->jointTable, + this->morphTable, SHIKASHI_LIMB_MAX); Collider_InitAndSetCylinder(play, &this->collider, &this->actor, &sCylinderInit); this->actor.colChkInfo.mass = MASS_IMMOVABLE; @@ -346,14 +345,14 @@ void EnBji01_Init(Actor* thisx, PlayState* play) { switch (gSaveContext.save.entranceIndex) { case 0x4C00: /* Observatory from ECT */ case 0x4C10: /* Observatory from Termina Field door */ - this->actor.params = ENBJI01_PARAMS_DEFAULT; + this->actor.params = SHIKASHI_TYPE_DEFAULT; func_809CCE98(this, play); break; case 0x4C20: /* Observatory from Termina Field telescope */ this->actor.flags |= ACTOR_FLAG_10000; func_801A5BD0(0); Audio_QueueSeqCmd(0xE0000100); - this->actor.params = ENBJI01_PARAMS_LOOKED_THROUGH_TELESCOPE; + this->actor.params = SHIKASHI_TYPE_LOOKED_THROUGH_TELESCOPE; func_809CCE98(this, play); break; default: @@ -394,20 +393,20 @@ void EnBji01_Update(Actor* thisx, PlayState* play) { s32 EnBji01_OverrideLimbDraw(PlayState* play, s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3s* rot, Actor* thisx) { EnBji01* this = THIS; - if ((limbIndex == BJI_LIMB_NONE) && ((play->gameplayFrames % 2) != 0)) { + if ((limbIndex == SHIKASHI_LIMB_NONE) && ((play->gameplayFrames % 2) != 0)) { *dList = NULL; } - if (limbIndex == BJI_LIMB_NONE) { + if (limbIndex == SHIKASHI_LIMB_NONE) { rot->x = rot->x; rot->y = rot->y; rot->z = rot->z; } switch (limbIndex) { - case BJI_LIMB_TORSO: + case SHIKASHI_LIMB_TORSO: rot->x += this->torsoXRotStep; rot->z += this->torsoZRotStep; break; - case BJI_LIMB_HEAD: + case SHIKASHI_LIMB_HEAD: rot->x += this->headXRotStep; rot->z += this->headZRotStep; break; @@ -421,7 +420,7 @@ void EnBji01_PostLimbDraw(PlayState* play, s32 limbIndex, Gfx** dList, Vec3s* ro Vec3f sp20; s32 temp_f4 = 0; - if (limbIndex == BJI_LIMB_HEAD) { + if (limbIndex == SHIKASHI_LIMB_HEAD) { Math_Vec3f_Copy(&sp20, &D_809CDCC8); sp20.x += temp_f4 * 0.1f; sp20.y += temp_f4 * 0.1f; diff --git a/src/overlays/actors/ovl_En_Bji_01/z_en_bji_01.h b/src/overlays/actors/ovl_En_Bji_01/z_en_bji_01.h index 113db6a388..ac738bc715 100644 --- a/src/overlays/actors/ovl_En_Bji_01/z_en_bji_01.h +++ b/src/overlays/actors/ovl_En_Bji_01/z_en_bji_01.h @@ -3,44 +3,25 @@ #include "global.h" #include "overlays/actors/ovl_Obj_Moon_Stone/z_obj_moon_stone.h" +#include "objects/object_bji/object_bji.h" struct EnBji01; typedef void (*EnBji01ActionFunc)(struct EnBji01*, PlayState*); typedef enum { - /* 00 */ BJI_LIMB_NONE, - /* 01 */ BJI_LIMB_ROOT, - /* 02 */ BJI_LIMB_THIGH_LEFT, - /* 03 */ BJI_LIMB_LEG_LEFT, - /* 04 */ BJI_LIMB_FOOT_LEFT, - /* 05 */ BJI_LIMB_THIGH_RIGHT, - /* 06 */ BJI_LIMB_LEG_RIGHT, - /* 07 */ BJI_LIMB_FOOT_RIGHT, - /* 08 */ BJI_LIMB_TORSO, - /* 09 */ BJI_LIMB_ARM_LEFT, - /* 10 */ BJI_LIMB_FOREARM_LEFT, - /* 11 */ BJI_LIMB_HAND_LEFT, - /* 12 */ BJI_LIMB_ARM_RIGHT, - /* 13 */ BJI_LIMB_FOREARM_RIGHT, - /* 14 */ BJI_LIMB_HAND_RIGHT, - /* 15 */ BJI_LIMB_HEAD, - /* 16 */ BJI_LIMB_MAX -} ObjectBjiLimbs; - -typedef enum { - /* 00 */ ENBJI01_PARAMS_DEFAULT, - /* 01 */ ENBJI01_PARAMS_FINISHED_CONVERSATION, - /* 03 */ ENBJI01_PARAMS_LOOKED_THROUGH_TELESCOPE = 3 -} EnBji01Params; + /* 0 */ SHIKASHI_TYPE_DEFAULT, + /* 1 */ SHIKASHI_TYPE_FINISHED_CONVERSATION, + /* 3 */ SHIKASHI_TYPE_LOOKED_THROUGH_TELESCOPE = 3 +} ShikashiType; typedef struct EnBji01 { /* 0x000 */ Actor actor; /* 0x144 */ EnBji01ActionFunc actionFunc; /* 0x148 */ SkelAnime skelAnime; /* 0x18C */ ColliderCylinder collider; - /* 0x1D8 */ Vec3s jointTable[BJI_LIMB_MAX]; - /* 0x238 */ Vec3s morphTable[BJI_LIMB_MAX]; + /* 0x1D8 */ Vec3s jointTable[SHIKASHI_LIMB_MAX]; + /* 0x238 */ Vec3s morphTable[SHIKASHI_LIMB_MAX]; /* 0x298 */ s32 animationIndex; /* 0x29C */ s16 eyeTexIndex; /* 0x29E */ s16 blinkSeqIndex; diff --git a/src/overlays/actors/ovl_En_Demo_heishi/z_en_demo_heishi.c b/src/overlays/actors/ovl_En_Demo_heishi/z_en_demo_heishi.c index 17ee92ede8..4b6eae5bb2 100644 --- a/src/overlays/actors/ovl_En_Demo_heishi/z_en_demo_heishi.c +++ b/src/overlays/actors/ovl_En_Demo_heishi/z_en_demo_heishi.c @@ -5,7 +5,6 @@ */ #include "z_en_demo_heishi.h" -#include "objects/object_sdn/object_sdn.h" #define FLAGS (ACTOR_FLAG_1 | ACTOR_FLAG_8) @@ -69,8 +68,8 @@ void EnDemoheishi_Init(Actor* thisx, PlayState* play) { EnDemoheishi* this = THIS; ActorShape_Init(&this->actor.shape, 0.0f, ActorShadow_DrawCircle, 25.0f); - SkelAnime_InitFlex(play, &this->skelAnime, &gSoldierSkeleton, &gSoldierWave, this->jointTable, this->morphTable, - 17); + SkelAnime_InitFlex(play, &this->skelAnime, &gSoldierSkel, &gSoldierWave, this->jointTable, this->morphTable, + SOLDIER_LIMB_MAX); this->actor.colChkInfo.mass = MASS_IMMOVABLE; this->actor.targetMode = 6; this->actor.gravity = -3.0f; @@ -175,7 +174,7 @@ void EnDemoheishi_Update(Actor* thisx, PlayState* play) { s32 EnDemoheishi_OverrideLimbDraw(PlayState* play, s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3s* rot, Actor* thisx) { EnDemoheishi* this = THIS; - if (limbIndex == DEMOHEISHI_LIMB_HEAD) { + if (limbIndex == SOLDIER_LIMB_HEAD) { rot->x += this->headRotX; rot->y += this->headRotY; rot->z += this->headRotZ; diff --git a/src/overlays/actors/ovl_En_Demo_heishi/z_en_demo_heishi.h b/src/overlays/actors/ovl_En_Demo_heishi/z_en_demo_heishi.h index f67cbe0743..c14fa53269 100644 --- a/src/overlays/actors/ovl_En_Demo_heishi/z_en_demo_heishi.h +++ b/src/overlays/actors/ovl_En_Demo_heishi/z_en_demo_heishi.h @@ -2,37 +2,17 @@ #define Z_EN_DEMO_HEISHI_H #include "global.h" +#include "objects/object_sdn/object_sdn.h" struct EnDemoheishi; typedef void (*EnDemoheishiActionFunc)(struct EnDemoheishi*, PlayState*); -typedef enum { - /* 0 */ DEMOHEISHI_LIMB_NONE, - /* 1 */ DEMOHEISHI_LIMB_ROOT, - /* 2 */ DEMOHEISHI_LIMB_PELVIS, - /* 3 */ DEMOHEISHI_LIMB_LEFT_THIGH, - /* 4 */ DEMOHEISHI_LIMB_LEFT_SHIN, - /* 5 */ DEMOHEISHI_LIMB_LEFT_FOOT, - /* 6 */ DEMOHEISHI_LIMB_RIGHT_THIGH, - /* 7 */ DEMOHEISHI_LIMB_RIGHT_SHIN, - /* 8 */ DEMOHEISHI_LIMB_RIGHT_FOOT, - /* 9 */ DEMOHEISHI_LIMB_TORSO, - /* 10 */ DEMOHEISHI_LIMB_LEFT_SHOULDER, - /* 11 */ DEMOHEISHI_LIMB_LEFT_FOREARM, - /* 12 */ DEMOHEISHI_LIMB_LEFT_HAND, - /* 13 */ DEMOHEISHI_LIMB_RIGHT_SHOULDER, - /* 14 */ DEMOHEISHI_LIMB_RIGHT_FOREARM, - /* 15 */ DEMOHEISHI_LIMB_RIGHT_HAND_WITH_SPEAR, - /* 16 */ DEMOHEISHI_LIMB_HEAD, - /* 17 */ DEMOHEISHI_LIMB_MAX -} EnDemoheishiLimbs; - typedef struct EnDemoheishi { /* 0x000 */ Actor actor; /* 0x144 */ SkelAnime skelAnime; - /* 0x188 */ Vec3s jointTable[DEMOHEISHI_LIMB_MAX]; - /* 0x1EE */ Vec3s morphTable[DEMOHEISHI_LIMB_MAX]; + /* 0x188 */ Vec3s jointTable[SOLDIER_LIMB_MAX]; + /* 0x1EE */ Vec3s morphTable[SOLDIER_LIMB_MAX]; /* 0x254 */ EnDemoheishiActionFunc actionFunc; /* 0x258 */ s16 headRotY; /* 0x25A */ s16 headRotX; diff --git a/src/overlays/actors/ovl_En_Ending_Hero4/z_en_ending_hero4.c b/src/overlays/actors/ovl_En_Ending_Hero4/z_en_ending_hero4.c index 9a58673d05..716237321c 100644 --- a/src/overlays/actors/ovl_En_Ending_Hero4/z_en_ending_hero4.c +++ b/src/overlays/actors/ovl_En_Ending_Hero4/z_en_ending_hero4.c @@ -38,7 +38,7 @@ void EnEndingHero4_Init(Actor* thisx, PlayState* play) { Actor_SetScale(&this->actor, 0.01f); this->actor.targetMode = 6; this->actor.gravity = -3.0f; - SkelAnime_InitFlex(play, &this->skelAnime, &gSoldierSkeleton, &gSoldierCheerWithSpear, this->jointTable, + SkelAnime_InitFlex(play, &this->skelAnime, &gSoldierSkel, &gSoldierCheerWithSpear, this->jointTable, this->morphTable, 17); ActorShape_Init(&this->actor.shape, 0.0f, ActorShadow_DrawCircle, 25.0f); func_80C23748(this); diff --git a/src/overlays/actors/ovl_En_Ending_Hero6/z_en_ending_hero6.c b/src/overlays/actors/ovl_En_Ending_Hero6/z_en_ending_hero6.c index e22603b4ef..d6da2f9787 100644 --- a/src/overlays/actors/ovl_En_Ending_Hero6/z_en_ending_hero6.c +++ b/src/overlays/actors/ovl_En_Ending_Hero6/z_en_ending_hero6.c @@ -37,9 +37,9 @@ const ActorInit En_Ending_Hero6_InitVars = { }; static FlexSkeletonHeader* sSkeletons[] = { - &object_dt_Skel_00B0CC, &object_bai_Skel_007908, &object_toryo_Skel_007150, - &gSoldierSkeleton, &object_daiku_Skel_00A850, &object_daiku_Skel_00A850, - &object_daiku_Skel_00A850, &object_daiku_Skel_00A850, &object_daiku_Skel_00A850, + &object_dt_Skel_00B0CC, &object_bai_Skel_007908, &object_toryo_Skel_007150, &gSoldierSkel, + &object_daiku_Skel_00A850, &object_daiku_Skel_00A850, &object_daiku_Skel_00A850, &object_daiku_Skel_00A850, + &object_daiku_Skel_00A850, }; static AnimationHeader* sAnimations[] = { diff --git a/src/overlays/actors/ovl_En_Heishi/z_en_heishi.c b/src/overlays/actors/ovl_En_Heishi/z_en_heishi.c index 74693be4e6..aba6b4f900 100644 --- a/src/overlays/actors/ovl_En_Heishi/z_en_heishi.c +++ b/src/overlays/actors/ovl_En_Heishi/z_en_heishi.c @@ -5,7 +5,6 @@ */ #include "z_en_heishi.h" -#include "objects/object_sdn/object_sdn.h" #define FLAGS (ACTOR_FLAG_1 | ACTOR_FLAG_8) @@ -65,8 +64,8 @@ void EnHeishi_Init(Actor* thisx, PlayState* play) { EnHeishi* this = THIS; ActorShape_Init(&this->actor.shape, 0.0f, ActorShadow_DrawCircle, 25.0f); - SkelAnime_InitFlex(play, &this->skelAnime, &gSoldierSkeleton, &gSoldierWave, this->jointTable, this->morphTable, - HEISHI_LIMB_MAX); + SkelAnime_InitFlex(play, &this->skelAnime, &gSoldierSkel, &gSoldierWave, this->jointTable, this->morphTable, + SOLDIER_LIMB_MAX); this->actor.colChkInfo.mass = MASS_IMMOVABLE; this->paramsCopy = this->actor.params; this->yawTowardsPlayer = this->actor.world.rot.y; @@ -174,7 +173,7 @@ void EnHeishi_Update(Actor* thisx, PlayState* play) { s32 EnHeishi_OverrideLimbDraw(PlayState* play, s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3s* rot, Actor* thisx) { EnHeishi* this = THIS; - if (limbIndex == HEISHI_LIMB_HEAD) { + if (limbIndex == SOLDIER_LIMB_HEAD) { rot->x += this->headRotX; rot->y += this->headRotY; rot->z += this->headRotZ; diff --git a/src/overlays/actors/ovl_En_Heishi/z_en_heishi.h b/src/overlays/actors/ovl_En_Heishi/z_en_heishi.h index 6e5d65e8f8..1758ceae6d 100644 --- a/src/overlays/actors/ovl_En_Heishi/z_en_heishi.h +++ b/src/overlays/actors/ovl_En_Heishi/z_en_heishi.h @@ -2,37 +2,17 @@ #define Z_EN_HEISHI_H #include "global.h" +#include "objects/object_sdn/object_sdn.h" struct EnHeishi; typedef void (*EnHeishiActionFunc)(struct EnHeishi*, PlayState*); -typedef enum { - /* 0 */ HEISHI_LIMB_NONE, - /* 1 */ HEISHI_LIMB_ROOT, - /* 2 */ HEISHI_LIMB_PELVIS, - /* 3 */ HEISHI_LIMB_LEFT_THIGH, - /* 4 */ HEISHI_LIMB_LEFT_CALF, - /* 5 */ HEISHI_LIMB_LEFT_FOOT, - /* 6 */ HEISHI_LIMB_RIGHT_THIGH, - /* 7 */ HEISHI_LIMB_RIGHT_CALF, - /* 8 */ HEISHI_LIMB_RIGHT_FOOT, - /* 9 */ HEISHI_LIMB_TORSO, - /* 10 */ HEISHI_LIMB_LEFT_SHOULDER, - /* 11 */ HEISHI_LIMB_LEFT_FOREARM, - /* 12 */ HEISHI_LIMB_LEFT_HAND, - /* 13 */ HEISHI_LIMB_RIGHT_SHOULDER, - /* 14 */ HEISHI_LIMB_RIGHT_FOREARM, - /* 15 */ HEISHI_LIMB_RIGHT_HAND_WITH_SPEAR, - /* 16 */ HEISHI_LIMB_HEAD, - /* 17 */ HEISHI_LIMB_MAX -} EnHeishiLimbs; - typedef struct EnHeishi { /* 0x000 */ Actor actor; /* 0x144 */ SkelAnime skelAnime; - /* 0x188 */ Vec3s jointTable[HEISHI_LIMB_MAX]; - /* 0x1EE */ Vec3s morphTable[HEISHI_LIMB_MAX]; + /* 0x188 */ Vec3s jointTable[SOLDIER_LIMB_MAX]; + /* 0x1EE */ Vec3s morphTable[SOLDIER_LIMB_MAX]; /* 0x254 */ EnHeishiActionFunc actionFunc; /* 0x258 */ s16 headRotY; /* 0x25A */ s16 headRotX; diff --git a/src/overlays/actors/ovl_En_Hg/z_en_hg.c b/src/overlays/actors/ovl_En_Hg/z_en_hg.c index d3af20a413..c247a34023 100644 --- a/src/overlays/actors/ovl_En_Hg/z_en_hg.c +++ b/src/overlays/actors/ovl_En_Hg/z_en_hg.c @@ -1,11 +1,10 @@ /* * File: z_en_hg.c * Overlay: ovl_En_Hg - * Description: Pamela's Father (Human) + * Description: Pamela's Father (Gibdo) */ #include "z_en_hg.h" -#include "objects/object_harfgibud/object_harfgibud.h" #define FLAGS (ACTOR_FLAG_1 | ACTOR_FLAG_8 | ACTOR_FLAG_10 | ACTOR_FLAG_100000 | ACTOR_FLAG_2000000) @@ -121,8 +120,8 @@ void EnHg_Init(Actor* thisx, PlayState* play) { s32 i; ActorShape_Init(&this->actor.shape, 0.0f, NULL, 36.0f); - SkelAnime_InitFlex(play, &this->skelAnime, &object_harfgibud_Skel_008580, &object_harfgibud_Anim_00260C, - this->jointTable, this->morphTable, HG_LIMB_MAX); + SkelAnime_InitFlex(play, &this->skelAnime, &gHarfgibudGibdoSkel, &object_harfgibud_Anim_00260C, this->jointTable, + this->morphTable, HARFGIBUD_GIBDO_LIMB_MAX); Collider_InitCylinder(play, &this->collider); Collider_SetCylinder(play, &this->collider, &this->actor, &sCylinderInit); CollisionCheck_SetInfo2(&this->actor.colChkInfo, &sDamageTable, &sColChkInfoInit2); @@ -401,9 +400,9 @@ s32 EnHg_OverrideLimbDraw(PlayState* play, s32 limbIndex, Gfx** dList, Vec3f* po void EnHg_PostLimbDraw(PlayState* play, s32 limbIndex, Gfx** dList, Vec3s* rot, Actor* thisx) { EnHg* this = THIS; - if (limbIndex == HG_LIMB_HEAD) { + if (limbIndex == HARFGIBUD_GIBDO_LIMB_EYEBROWS) { Matrix_Get(&this->unk1D8); - } else if (limbIndex == HG_LIMB_PELVIS) { + } else if (limbIndex == HARFGIBUD_GIBDO_LIMB_HEAD) { Matrix_MultZero(&this->actor.focus.pos); } } @@ -417,6 +416,6 @@ void EnHg_Draw(Actor* thisx, PlayState* play) { EnHg_OverrideLimbDraw, EnHg_PostLimbDraw, &this->actor); Matrix_Put(&this->unk1D8); gSPMatrix(POLY_OPA_DISP++, Matrix_NewMtx(play->state.gfxCtx), G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW); - gSPDisplayList(POLY_OPA_DISP++, object_harfgibud_DL_005E28); + gSPDisplayList(POLY_OPA_DISP++, gHarfgibudGibdoEyebrowsDL); CLOSE_DISPS(play->state.gfxCtx); } diff --git a/src/overlays/actors/ovl_En_Hg/z_en_hg.h b/src/overlays/actors/ovl_En_Hg/z_en_hg.h index 75703ccbd1..2883143791 100644 --- a/src/overlays/actors/ovl_En_Hg/z_en_hg.h +++ b/src/overlays/actors/ovl_En_Hg/z_en_hg.h @@ -2,34 +2,13 @@ #define Z_EN_HG_H #include "global.h" +#include "objects/object_harfgibud/object_harfgibud.h" + struct EnHg; typedef void (*EnHgActionFunc)(struct EnHg*, PlayState*); -typedef enum { - /* 00 */ HG_LIMB_NONE, - /* 01 */ HG_LIMB_ABDOMEN, - /* 02 */ HG_LIMB_CHEST, - /* 03 */ HG_LIMB_SHOULDER_LEFT, - /* 04 */ HG_LIMB_ARM_LEFT, - /* 05 */ HG_LIMB_HAND_LEFT, - /* 06 */ HG_LIMB_SHOULDER_RIGHT, - /* 07 */ HG_LIMB_ARM_RIGHT, - /* 08 */ HG_LIMB_HAND_RIGHT, - /* 09 */ HG_LIMB_EYEBROW, - /* 10 */ HG_LIMB_HEAD, - /* 11 */ HG_LIMB_PELVIS, - /* 12 */ HG_LIMB_THIGH_LEFT, - /* 13 */ HG_LIMB_LEG_LEFT, - /* 14 */ HG_LIMB_FOOT_LEFT, - /* 15 */ HG_LIMB_THIGH_RIGHT, - /* 16 */ HG_LIMB_LEG_RIGHT, - /* 17 */ HG_LIMB_FOOT_RIGHT, - /* 19 */ HG_LIMB_UNK, - /* 20 */ HG_LIMB_MAX, -} ObjectHgLimbs; - typedef struct EnHg { /* 0x000 */ Actor actor; /* 0x144 */ ColliderCylinder collider; @@ -38,8 +17,8 @@ typedef struct EnHg { /* 0x1D8 */ MtxF unk1D8; /* 0x218 */ s32 unk218; /* 0x21C */ s32 currentAnimation; - /* 0x220 */ Vec3s jointTable[HG_LIMB_MAX]; - /* 0x292 */ Vec3s morphTable[HG_LIMB_MAX]; + /* 0x220 */ Vec3s jointTable[HARFGIBUD_GIBDO_LIMB_MAX]; + /* 0x292 */ Vec3s morphTable[HARFGIBUD_GIBDO_LIMB_MAX]; /* 0x304 */ UNK_TYPE1 pad304[0xC]; /* 0x310 */ u16 cutscenes[4]; } EnHg; // size = 0x318 diff --git a/src/overlays/actors/ovl_En_Hgo/z_en_hgo.c b/src/overlays/actors/ovl_En_Hgo/z_en_hgo.c index 0c99521493..c8de1f2105 100644 --- a/src/overlays/actors/ovl_En_Hgo/z_en_hgo.c +++ b/src/overlays/actors/ovl_En_Hgo/z_en_hgo.c @@ -1,11 +1,10 @@ /* * File: z_en_hgo.c * Overlay: ovl_En_Hgo - * Description: Pamela's Father (Gibdo) + * Description: Pamela's Father (Human) */ #include "z_en_hgo.h" -#include "objects/object_harfgibud/object_harfgibud.h" #define FLAGS (ACTOR_FLAG_1 | ACTOR_FLAG_8 | ACTOR_FLAG_10 | ACTOR_FLAG_2000000) @@ -83,8 +82,8 @@ void EnHgo_Init(Actor* thisx, PlayState* play) { s32 pad; ActorShape_Init(&thisx->shape, 0.0f, ActorShadow_DrawCircle, 36.0f); - SkelAnime_InitFlex(play, &this->skelAnime, &object_harfgibud_Skel_012A58, &object_harfgibud_Anim_00B644, - this->jointTable, this->morphTable, HGO_LIMB_MAX); + SkelAnime_InitFlex(play, &this->skelAnime, &gHarfgibudHumanSkel, &object_harfgibud_Anim_00B644, this->jointTable, + this->morphTable, HARFGIBUD_HUMAN_LIMB_MAX); Collider_InitCylinder(play, &this->collider); Collider_SetCylinder(play, &this->collider, &this->actor, &sCylinderInit); CollisionCheck_SetInfo2(&thisx->colChkInfo, NULL, &sColChkInfoInit); @@ -319,7 +318,7 @@ s32 func_80BD0898(EnHgo* this, PlayState* play) { } void func_80BD0B8C(EnHgo* this, PlayState* play) { - Actor_TrackPlayer(play, &this->actor, &this->unk_300, &this->unk_306, this->actor.focus.pos); + Actor_TrackPlayer(play, &this->actor, &this->headRot, &this->torsoRot, this->actor.focus.pos); if (this->unk_30E > 2) { this->unk_30E--; } else if (this->unk_30E == 2) { @@ -341,7 +340,7 @@ void EnHgo_Update(Actor* thisx, PlayState* play) { this->actionFunc(this, play); SkelAnime_Update(&this->skelAnime); if (func_80BD0898(this, play)) { - Actor_TrackNone(&this->unk_300, &this->unk_306); + Actor_TrackNone(&this->headRot, &this->torsoRot); } else if (this->actionFunc != func_80BD0410) { if (this->actionFunc != func_80BD0434) { Collider_UpdateCylinder(&this->actor, &this->collider); @@ -354,9 +353,9 @@ void EnHgo_Update(Actor* thisx, PlayState* play) { s32 EnHgo_OverrideLimbDraw(PlayState* play, s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3s* rot, Actor* thisx) { EnHgo* this = THIS; - if (limbIndex == HGO_LIMB_PELVIS) { - rot->x += this->unk_300.y; - rot->z += this->unk_300.x; + if (limbIndex == HARFGIBUD_HUMAN_LIMB_HEAD) { + rot->x += this->headRot.y; + rot->z += this->headRot.x; } return false; } @@ -364,7 +363,7 @@ s32 EnHgo_OverrideLimbDraw(PlayState* play, s32 limbIndex, Gfx** dList, Vec3f* p void EnHgo_PostLimbDraw(PlayState* play, s32 limbIndex, Gfx** dList, Vec3s* pos, Actor* thisx) { EnHgo* this = THIS; - if (limbIndex == HGO_LIMB_PELVIS) { + if (limbIndex == HARFGIBUD_HUMAN_LIMB_HEAD) { Matrix_Get(&this->unk_1D8); Matrix_MultZero(&this->actor.focus.pos); } @@ -380,6 +379,6 @@ void EnHgo_Draw(Actor* thisx, PlayState* play) { EnHgo_OverrideLimbDraw, &EnHgo_PostLimbDraw, &this->actor); Matrix_Put(&this->unk_1D8); gSPMatrix(POLY_OPA_DISP++, Matrix_NewMtx(play->state.gfxCtx), G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW); - gSPDisplayList(POLY_OPA_DISP++, object_harfgibud_DL_00F248); + gSPDisplayList(POLY_OPA_DISP++, gHarfgibudHumanEyebrowsDL); CLOSE_DISPS(play->state.gfxCtx); } diff --git a/src/overlays/actors/ovl_En_Hgo/z_en_hgo.h b/src/overlays/actors/ovl_En_Hgo/z_en_hgo.h index 994dabcfb2..34e4ebdc48 100644 --- a/src/overlays/actors/ovl_En_Hgo/z_en_hgo.h +++ b/src/overlays/actors/ovl_En_Hgo/z_en_hgo.h @@ -2,35 +2,12 @@ #define Z_EN_HGO_H #include "global.h" +#include "objects/object_harfgibud/object_harfgibud.h" struct EnHgo; typedef void (*EnHgoActionFunc)(struct EnHgo*, PlayState*); -// Shares the same setup as en_hg -typedef enum { - /* 00 */ HGO_LIMB_NONE, - /* 01 */ HGO_LIMB_ABDOMEN, - /* 02 */ HGO_LIMB_CHEST, - /* 03 */ HGO_LIMB_SHOULDER_LEFT, - /* 04 */ HGO_LIMB_ARM_LEFT, - /* 05 */ HGO_LIMB_HAND_LEFT, - /* 06 */ HGO_LIMB_SHOULDER_RIGHT, - /* 07 */ HGO_LIMB_ARM_RIGHT, - /* 08 */ HGO_LIMB_HAND_RIGHT, - /* 09 */ HGO_LIMB_EYEBROW, - /* 10 */ HGO_LIMB_HEAD, - /* 11 */ HGO_LIMB_PELVIS, - /* 12 */ HGO_LIMB_THIGH_LEFT, - /* 13 */ HGO_LIMB_LEG_LEFT, - /* 14 */ HGO_LIMB_FOOT_LEFT, - /* 15 */ HGO_LIMB_THIGH_RIGHT, - /* 16 */ HGO_LIMB_LEG_RIGHT, - /* 17 */ HGO_LIMB_FOOT_RIGHT, - /* 18 */ HGO_LIMB_UNK, - /* 19 */ HGO_LIMB_MAX, -} ObjectHgoLimbs; - typedef struct EnHgo { /* 0x000 */ Actor actor; /* 0x144 */ ColliderCylinder collider; @@ -38,10 +15,10 @@ typedef struct EnHgo { /* 0x1D4 */ EnHgoActionFunc actionFunc; /* 0x1D8 */ MtxF unk_1D8; /* 0x218 */ s32 unk_218; - /* 0x21C */ Vec3s jointTable[HGO_LIMB_MAX]; - /* 0x28E */ Vec3s morphTable[HGO_LIMB_MAX]; - /* 0x300 */ Vec3s unk_300; - /* 0x306 */ Vec3s unk_306; + /* 0x21C */ Vec3s jointTable[HARFGIBUD_HUMAN_LIMB_MAX]; + /* 0x28E */ Vec3s morphTable[HARFGIBUD_HUMAN_LIMB_MAX]; + /* 0x300 */ Vec3s headRot; + /* 0x306 */ Vec3s torsoRot; // Set, but not used /* 0x30C */ s16 unk_30C; /* 0x30E */ s16 unk_30E; /* 0x310 */ s16 unk_310; diff --git a/src/overlays/actors/ovl_En_Pamera/z_en_pamera.c b/src/overlays/actors/ovl_En_Pamera/z_en_pamera.c index a848f43a32..603d08fb5f 100644 --- a/src/overlays/actors/ovl_En_Pamera/z_en_pamera.c +++ b/src/overlays/actors/ovl_En_Pamera/z_en_pamera.c @@ -5,9 +5,8 @@ */ #include "z_en_pamera.h" -#include "../ovl_En_Bom/z_en_bom.h" -#include "../ovl_En_Door/z_en_door.h" -#include "objects/object_pamera/object_pamera.h" +#include "overlays/actors/ovl_En_Bom/z_en_bom.h" +#include "overlays/actors/ovl_En_Door/z_en_door.h" #define FLAGS (ACTOR_FLAG_1 | ACTOR_FLAG_8 | ACTOR_FLAG_10) @@ -136,8 +135,8 @@ void EnPamera_Init(Actor* thisx, PlayState* play) { Vec3f sp44; ActorShape_Init(&this->actor.shape, 0.0f, ActorShadow_DrawCircle, 15.0f); - SkelAnime_InitFlex(play, &this->skelAnime, &object_pamera_Skel_008448, &object_pamera_Anim_0005BC, this->jointTable, - this->morphTable, PAMERA_LIMB_MAX); + SkelAnime_InitFlex(play, &this->skelAnime, &gPamelaSkel, &object_pamera_Anim_0005BC, this->jointTable, + this->morphTable, PAMELA_LIMB_MAX); Collider_InitCylinder(play, &this->collider); Collider_SetCylinder(play, &this->collider, &this->actor, &sCylinderInit); CollisionCheck_SetInfo2(&this->actor.colChkInfo, NULL, &sColChkInfoInit2); @@ -511,9 +510,9 @@ void func_80BD94E0(EnPamera* this, PlayState* play) { if ((this->actionFunc != func_80BD8B70) && (this->actionFunc != func_80BD8964) && (this->actionFunc != func_80BD909C) && (this->actionFunc != func_80BD8D1C) && ((this->actionFunc != func_80BD8DB0) || (this->actor.speedXZ == 3.0f))) { - Actor_TrackPlayer(play, &this->actor, &this->limb9Rot, &this->limb8Rot, this->actor.focus.pos); + Actor_TrackPlayer(play, &this->actor, &this->headRot, &this->torsoRot, this->actor.focus.pos); } else { - Actor_TrackNone(&this->limb9Rot, &this->limb8Rot); + Actor_TrackNone(&this->headRot, &this->torsoRot); } } @@ -534,9 +533,9 @@ void EnPamera_Update(Actor* thisx, PlayState* play) { s32 EnPamera_OverrideLimbDraw(PlayState* play, s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3s* rot, Actor* thisx) { EnPamera* this = THIS; - if (limbIndex == PAMERA_LIMB_HAIR) { - rot->x += this->limb9Rot.y; - rot->z += this->limb9Rot.x; + if (limbIndex == PAMELA_LIMB_HEAD) { + rot->x += this->headRot.y; + rot->z += this->headRot.x; } return false; } @@ -544,7 +543,7 @@ s32 EnPamera_OverrideLimbDraw(PlayState* play, s32 limbIndex, Gfx** dList, Vec3f void EnPamera_PostLimbDraw(PlayState* play, s32 limbIndex, Gfx** dList, Vec3s* rot, Actor* thisx) { EnPamera* this = THIS; - if (limbIndex == PAMERA_LIMB_HAIR) { + if (limbIndex == PAMELA_LIMB_HEAD) { Matrix_MultVec3f(&D_80BDA5F0, &this->actor.focus.pos); } } @@ -858,7 +857,7 @@ void func_80BDA344(Actor* thisx, PlayState* play) { if (!(gSaveContext.save.weekEventReg[61] & 4)) { gSaveContext.save.weekEventReg[61] |= 4; } - Actor_TrackNone(&this->limb9Rot, &this->limb8Rot); + Actor_TrackNone(&this->headRot, &this->torsoRot); } else { func_80BD94E0(this, play); if (this->actionFunc == func_80BD994C) { diff --git a/src/overlays/actors/ovl_En_Pamera/z_en_pamera.h b/src/overlays/actors/ovl_En_Pamera/z_en_pamera.h index 0cebc213f7..cf5611c4ed 100644 --- a/src/overlays/actors/ovl_En_Pamera/z_en_pamera.h +++ b/src/overlays/actors/ovl_En_Pamera/z_en_pamera.h @@ -2,36 +2,10 @@ #define Z_EN_PAMERA_H #include "global.h" +#include "objects/object_pamera/object_pamera.h" struct EnPamera; -typedef enum { - /* 00 */ PAMERA_LIMB_NONE, - /* 01 */ PAMERA_LIMB_ROOT, - /* 02 */ PAMERA_LIMB_SHOULDER_LEFT, - /* 03 */ PAMERA_LIMB_FOREARM_LEFT, - /* 04 */ PAMERA_LIMB_HAND_LEFT, - /* 05 */ PAMERA_LIMB_SHOULDER_RIGHT, - /* 06 */ PAMERA_LIMB_FOREARM_RIGHT, - /* 07 */ PAMERA_LIMB_HAND_RIGHT, - /* 08 */ PAMERA_LIMB_HEAD_FRONT_AND_TOP, - /* 09 */ PAMERA_LIMB_HAIR, - /* 10 */ PAMERA_LIMB_TORSO_FRONT, - /* 11 */ PAMERA_LIMB_NECK, - /* 12 */ PAMERA_LIMB_THIGH_LEFT, - /* 13 */ PAMERA_LIMB_LEG_LEFT, - /* 14 */ PAMERA_LIMB_FOOT_LEFT, - /* 15 */ PAMERA_LIMB_THIGH_RIGHT, - /* 16 */ PAMERA_LIMB_LEG_RIGHT, - /* 17 */ PAMERA_LIMB_FOOT_RIGHT, - /* 18 */ PAMERA_DRESS_FRONT, - /* 19 */ PAMERA_DRESS_BACK, - /* 20 */ PAMERA_DRESS_SIDES, - /* 21 */ PAMERA_LIMB_UNK, - /* 22 */ PAMERA_LIMB_UNK2, - /* 23 */ PAMERA_LIMB_MAX -} ObjectPameraLimbs; - typedef void (*EnPameraActionFunc)(struct EnPamera*, PlayState*); typedef void (*EnPameraSetupFunc)(struct EnPamera*, PlayState*); @@ -46,10 +20,10 @@ typedef struct EnPamera { /* 0x1E4 */ s32 pathPointsCount; /* 0x1E8 */ s32 pathId; /* 0x1EC */ s32 unk_1EC; - /* 0x1F0 */ Vec3s jointTable[PAMERA_LIMB_MAX]; - /* 0x27A */ Vec3s morphTable[PAMERA_LIMB_MAX]; - /* 0x304 */ Vec3s limb9Rot; - /* 0x30A */ Vec3s limb8Rot; + /* 0x1F0 */ Vec3s jointTable[PAMELA_LIMB_MAX]; + /* 0x27A */ Vec3s morphTable[PAMELA_LIMB_MAX]; + /* 0x304 */ Vec3s headRot; + /* 0x30A */ Vec3s torsoRot; // Set, but not used /* 0x310 */ s16 unk_310; /* 0x312 */ s16 unk_312; /* 0x314 */ s16 unk_314; diff --git a/src/overlays/actors/ovl_En_Pametfrog/z_en_pametfrog.c b/src/overlays/actors/ovl_En_Pametfrog/z_en_pametfrog.c index e47ca26b81..420d40b780 100644 --- a/src/overlays/actors/ovl_En_Pametfrog/z_en_pametfrog.c +++ b/src/overlays/actors/ovl_En_Pametfrog/z_en_pametfrog.c @@ -8,7 +8,6 @@ #include "z64rumble.h" #include "overlays/actors/ovl_En_Bigpamet/z_en_bigpamet.h" #include "overlays/effects/ovl_Effect_Ss_Hahen/z_eff_ss_hahen.h" -#include "objects/object_bigslime/object_bigslime.h" #define FLAGS (ACTOR_FLAG_1 | ACTOR_FLAG_4 | ACTOR_FLAG_10 | ACTOR_FLAG_20) @@ -1370,16 +1369,16 @@ void EnPametfrog_Update(Actor* thisx, PlayState* play) { /* value -1: Limb Not used * value 0: GEKKO_LIMB_WAIST - * value 1: GEKKO_LIMB_L_SHIN - * value 2: GEKKO_LIMB_L_FOOT - * value 3: GEKKO_LIMB_R_SHIN - * value 4: GEKKO_LIMB_R_FOOT - * value 5: GEKKO_LIMB_L_UPPER_ARM - * value 6: GEKKO_LIMB_L_FOREARM - * value 7: GEKKO_LIMB_L_HAND - * value 8: GEKKO_LIMB_R_UPPER_ARM - * value 9: GEKKO_LIMB_R_FOREARM - * value 10: GEKKO_LIMB_R_HAND + * value 1: GEKKO_LIMB_LEFT_SHIN + * value 2: GEKKO_LIMB_LEFT_FOOT + * value 3: GEKKO_LIMB_RIGHT_SHIN + * value 4: GEKKO_LIMB_RIGHT_FOOT + * value 5: GEKKO_LIMB_LEFT_UPPER_ARM + * value 6: GEKKO_LIMB_LEFT_FOREARM + * value 7: GEKKO_LIMB_LEFT_HAND + * value 8: GEKKO_LIMB_RIGHT_UPPER_ARM + * value 9: GEKKO_LIMB_RIGHT_FOREARM + * value 10: GEKKO_LIMB_RIGHT_HAND * value 11: GEKKO_LIMB_JAW */ static s8 limbPosIndex[] = { diff --git a/src/overlays/actors/ovl_En_Pametfrog/z_en_pametfrog.h b/src/overlays/actors/ovl_En_Pametfrog/z_en_pametfrog.h index 2b56261099..3f3e82165b 100644 --- a/src/overlays/actors/ovl_En_Pametfrog/z_en_pametfrog.h +++ b/src/overlays/actors/ovl_En_Pametfrog/z_en_pametfrog.h @@ -2,6 +2,7 @@ #define Z_EN_PAMETFROG_H #include "global.h" +#include "objects/object_bigslime/object_bigslime.h" struct EnPametfrog; @@ -20,34 +21,6 @@ typedef enum { /* 0x9 */ GEKKO_DEFEAT, } EnPametfrogState; -typedef enum { - /* 0x00 */ GEKKO_LIMB_NONE, - /* 0x01 */ GEKKO_LIMB_ROOT, - /* 0x02 */ GEKKO_LIMB_WAIST, - /* 0x03 */ GEKKO_LIMB_L_THIGH, - /* 0x04 */ GEKKO_LIMB_L_SHIN, - /* 0x05 */ GEKKO_LIMB_L_ANKLE, - /* 0x06 */ GEKKO_LIMB_L_FOOT, - /* 0x07 */ GEKKO_LIMB_R_THIGH, - /* 0x08 */ GEKKO_LIMB_R_SHIN, - /* 0x09 */ GEKKO_LIMB_R_ANKLE, - /* 0x0A */ GEKKO_LIMB_R_FOOT, - /* 0x0B */ GEKKO_LIMB_TORSO, - /* 0x0C */ GEKKO_LIMB_L_UPPER_ARM, - /* 0x0D */ GEKKO_LIMB_L_FOREARM, - /* 0x0E */ GEKKO_LIMB_L_WRIST, - /* 0x0F */ GEKKO_LIMB_L_HAND, - /* 0x10 */ GEKKO_LIMB_R_UPPER_ARM, - /* 0x11 */ GEKKO_LIMB_R_FOREARM, - /* 0x12 */ GEKKO_LIMB_R_WRIST, - /* 0x13 */ GEKKO_LIMB_R_HAND, - /* 0x14 */ GEKKO_LIMB_HEAD, - /* 0x15 */ GEKKO_LIMB_JAW, - /* 0x16 */ GEKKO_LIMB_L_EYE, - /* 0x17 */ GEKKO_LIMB_R_EYE, - /* 0x18 */ GEKKO_LIMB_MAX, -} EnPametfrogLimb; - typedef struct EnPametfrog { /* 0x000 */ Actor actor; /* 0x144 */ SkelAnime skelAnime;