diff --git a/assets/xml/objects/object_po_composer.xml b/assets/xml/objects/object_po_composer.xml
new file mode 100644
index 0000000000..2ab8d64d85
--- /dev/null
+++ b/assets/xml/objects/object_po_composer.xml
@@ -0,0 +1,17 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/assets/xml/objects/object_po_field.xml b/assets/xml/objects/object_po_field.xml
new file mode 100644
index 0000000000..b34424cc59
--- /dev/null
+++ b/assets/xml/objects/object_po_field.xml
@@ -0,0 +1,20 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/assets/xml/objects/object_po_sisters.xml b/assets/xml/objects/object_po_sisters.xml
new file mode 100644
index 0000000000..2d6da6f2a1
--- /dev/null
+++ b/assets/xml/objects/object_po_sisters.xml
@@ -0,0 +1,28 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/assets/xml/objects/object_poh.xml b/assets/xml/objects/object_poh.xml
new file mode 100644
index 0000000000..b94f9c8f0d
--- /dev/null
+++ b/assets/xml/objects/object_poh.xml
@@ -0,0 +1,14 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/assets/xml/objects/object_ps.xml b/assets/xml/objects/object_ps.xml
new file mode 100644
index 0000000000..a268e57b0b
--- /dev/null
+++ b/assets/xml/objects/object_ps.xml
@@ -0,0 +1,19 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/assets/xml/objects/object_tk.xml b/assets/xml/objects/object_tk.xml
new file mode 100644
index 0000000000..e6a65e91bb
--- /dev/null
+++ b/assets/xml/objects/object_tk.xml
@@ -0,0 +1,18 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/spec b/spec
index 115899a135..11d9c3b3c8 100644
--- a/spec
+++ b/spec
@@ -3531,7 +3531,8 @@ endseg
beginseg
name "object_poh"
romalign 0x1000
- include "build/baserom/object_poh.o"
+ include "build/assets/objects/object_poh/object_poh.o"
+ number 6
endseg
beginseg
@@ -4210,7 +4211,8 @@ endseg
beginseg
name "object_tk"
romalign 0x1000
- include "build/baserom/object_tk.o"
+ include "build/assets/objects/object_tk/object_tk.o"
+ number 6
endseg
beginseg
@@ -4318,7 +4320,8 @@ endseg
beginseg
name "object_po_sisters"
romalign 0x1000
- include "build/baserom/object_po_sisters.o"
+ include "build/assets/objects/object_po_sisters/object_po_sisters.o"
+ number 6
endseg
beginseg
@@ -5720,7 +5723,8 @@ endseg
beginseg
name "object_po_field"
romalign 0x1000
- include "build/baserom/object_po_field.o"
+ include "build/assets/objects/object_po_field/object_po_field.o"
+ number 6
endseg
beginseg
@@ -5783,7 +5787,8 @@ endseg
beginseg
name "object_po_composer"
romalign 0x1000
- include "build/baserom/object_po_composer.o"
+ include "build/assets/objects/object_po_composer/object_po_composer.o"
+ number 6
endseg
beginseg
@@ -5832,7 +5837,8 @@ endseg
beginseg
name "object_ps"
romalign 0x1000
- include "build/baserom/object_ps.o"
+ include "build/assets/objects/object_ps/object_ps.o"
+ number 6
endseg
beginseg
diff --git a/src/code/z_camera.c b/src/code/z_camera.c
index 6b15d4c32d..b746da9026 100644
--- a/src/code/z_camera.c
+++ b/src/code/z_camera.c
@@ -6178,8 +6178,8 @@ s32 Camera_Demo9(Camera* camera) {
// Run the at and eye cs interpoloation functions, if either of them return 1 (that no more points
// exist) change the animation state to 2 (standby)
- if (func_800BB2B4(&csEyeUpdate, &newRoll, camFOV, demo9OnePoint->onePointCs.eyePoints,
- &anim->keyframe, &anim->curFrame) != 0 ||
+ if (func_800BB2B4(&csEyeUpdate, &newRoll, camFOV, demo9OnePoint->onePointCs.eyePoints, &anim->keyframe,
+ &anim->curFrame) != 0 ||
func_800BB2B4(&csAtUpdate, &newRoll, camFOV, demo9OnePoint->onePointCs.atPoints, &anim->keyframe,
&anim->curFrame) != 0) {
camera->animState = 2;
diff --git a/src/code/z_onepointdemo.c b/src/code/z_onepointdemo.c
index acdcae4c6e..d3f995642d 100644
--- a/src/code/z_onepointdemo.c
+++ b/src/code/z_onepointdemo.c
@@ -47,7 +47,7 @@ f32 OnePointCutscene_RaycastFloor(CollisionContext* colCtx, Vec3f* pos) {
}
void OnePointCutscene_SetCsCamPoints(Camera* camera, s16 actionParameters, s16 initTimer, CutsceneCameraPoint* atPoints,
- CutsceneCameraPoint* eyePoints) {
+ CutsceneCameraPoint* eyePoints) {
OnePointCsCamera* onePointCamData = (OnePointCsCamera*)&camera->paramData;
onePointCamData->atPoints = atPoints;
diff --git a/src/overlays/actors/ovl_Bg_Po_Event/z_bg_po_event.c b/src/overlays/actors/ovl_Bg_Po_Event/z_bg_po_event.c
index c8a1078934..4f07624925 100644
--- a/src/overlays/actors/ovl_Bg_Po_Event/z_bg_po_event.c
+++ b/src/overlays/actors/ovl_Bg_Po_Event/z_bg_po_event.c
@@ -5,6 +5,7 @@
*/
#include "z_bg_po_event.h"
+#include "objects/object_po_sisters/object_po_sisters.h"
#define FLAGS 0x00000000
@@ -29,13 +30,6 @@ void BgPoEvent_PaintingAppear(BgPoEvent* this, GlobalContext* globalCtx);
void BgPoEvent_PaintingPresent(BgPoEvent* this, GlobalContext* globalCtx);
void BgPoEvent_PaintingBurn(BgPoEvent* this, GlobalContext* globalCtx);
-extern Gfx D_060075A0[];
-extern Gfx D_060079E0[];
-extern Gfx D_06006830[];
-extern Gfx D_06006D60[];
-extern Gfx D_06007230[];
-extern CollisionHeader D_06007860;
-
const ActorInit Bg_Po_Event_InitVars = {
ACTOR_BG_PO_EVENT,
ACTORCAT_BG,
@@ -164,7 +158,7 @@ void BgPoEvent_InitBlocks(BgPoEvent* this, GlobalContext* globalCtx) {
s32 bgId;
this->dyna.actor.flags |= 0x30;
- CollisionHeader_GetVirtual(&D_06007860, &colHeader);
+ CollisionHeader_GetVirtual(&gPoSistersAmyBlockCol, &colHeader);
this->dyna.bgId = DynaPoly_SetBgActor(globalCtx, &globalCtx->colCtx.dyna, &this->dyna.actor, colHeader);
if ((this->type == 0) && (this->index != 3)) {
newBlock = Actor_SpawnAsChild(&globalCtx->actorCtx, &this->dyna.actor, globalCtx, ACTOR_BG_PO_EVENT,
@@ -599,7 +593,10 @@ void BgPoEvent_Update(Actor* thisx, GlobalContext* globalCtx) {
}
void BgPoEvent_Draw(Actor* thisx, GlobalContext* globalCtx) {
- static Gfx* displayLists[] = { D_060075A0, D_060079E0, D_06006830, D_06006D60, D_06007230 };
+ static Gfx* displayLists[] = {
+ gPoSistersAmyBlockDL, gPoSistersAmyBethBlockDL, gPoSistersJoellePaintingDL,
+ gPoSistersBethPaintingDL, gPoSistersAmyPaintingDL,
+ };
s32 pad;
BgPoEvent* this = THIS;
u8 alpha;
diff --git a/src/overlays/actors/ovl_En_Gb/z_en_gb.c b/src/overlays/actors/ovl_En_Gb/z_en_gb.c
index 79facdb469..dac68d2a2a 100644
--- a/src/overlays/actors/ovl_En_Gb/z_en_gb.c
+++ b/src/overlays/actors/ovl_En_Gb/z_en_gb.c
@@ -1,4 +1,11 @@
+/*
+ * File: z_en_gb.c
+ * Overlay: ovl_En_Gb
+ * Description: Poe Seller
+ */
+
#include "z_en_gb.h"
+#include "objects/object_ps/object_ps.h"
#define FLAGS 0x00000009
@@ -34,9 +41,9 @@ const ActorInit En_Gb_InitVars = {
};
static EnGbCagedSoulInfo sCagedSoulInfo[] = {
- { { 255, 255, 170, 255 }, { 255, 200, 0, 255 }, 0x0600A870, -15 },
- { { 255, 255, 170, 255 }, { 0, 150, 0, 255 }, 0x0600B070, -12 },
- { { 255, 170, 255, 255 }, { 100, 0, 150, 255 }, 0x0600B870, -8 },
+ { { 255, 255, 170, 255 }, { 255, 200, 0, 255 }, gPoeSellerAngrySoulTex, -15 },
+ { { 255, 255, 170, 255 }, { 0, 150, 0, 255 }, gPoeSellerHappySoulTex, -12 },
+ { { 255, 170, 255, 255 }, { 100, 0, 150, 255 }, gPoeSellerSadSoulTex, -8 },
};
static ColliderCylinderInitType1 sCylinderInit = {
@@ -135,12 +142,6 @@ static Vec3f sBottlesPositions[] = {
{ -48.0f, 0.0f, 60.0f },
};
-extern AnimationHeader D_0600049C;
-extern Gfx D_0600C0B0[];
-extern FlexSkeletonHeader D_0600C220;
-extern CollisionHeader D_0600C2D0;
-extern AnimationHeader D_0600C8EC;
-
void func_80A2F180(EnGb* this) {
if (gSaveContext.infTable[0xB] & 0x40) {
this->textId = 0x70F5;
@@ -159,9 +160,10 @@ void EnGb_Init(Actor* thisx, GlobalContext* globalCtx) {
Actor_ProcessInitChain(&this->dyna.actor, sInitChain);
DynaPolyActor_Init(&this->dyna, DPM_UNK);
- CollisionHeader_GetVirtual(&D_0600C2D0, &colHeader);
+ CollisionHeader_GetVirtual(&gPoeSellerCol, &colHeader);
this->dyna.bgId = DynaPoly_SetBgActor(globalCtx, &globalCtx->colCtx.dyna, &this->dyna.actor, colHeader);
- SkelAnime_InitFlex(globalCtx, &this->skelAnime, &D_0600C220, &D_0600049C, this->jointTable, this->morphTable, 12);
+ SkelAnime_InitFlex(globalCtx, &this->skelAnime, &gPoeSellerSkel, &gPoeSellerIdleAnim, this->jointTable,
+ this->morphTable, 12);
Collider_InitCylinder(globalCtx, &this->collider);
Collider_SetCylinderType1(globalCtx, &this->collider, &this->dyna.actor, &sCylinderInit);
@@ -183,7 +185,7 @@ void EnGb_Init(Actor* thisx, GlobalContext* globalCtx) {
this->actionTimer = (s16)Rand_ZeroFloat(100.0f) + 100;
for (i = 0; i < ARRAY_COUNT(sCagedSoulPositions); i++) {
- this->cagedSouls[i].unk_0 = (s32)Rand_ZeroFloat(30.0f) % 3;
+ this->cagedSouls[i].infoIdx = (s32)Rand_ZeroFloat(30.0f) % 3;
this->cagedSouls[i].unk_14.x = this->cagedSouls[i].translation.x =
sCagedSoulPositions[i].x + this->dyna.actor.world.pos.x;
this->cagedSouls[i].unk_14.y = this->cagedSouls[i].translation.y =
@@ -262,8 +264,8 @@ s32 func_80A2F760(EnGb* this) {
}
void func_80A2F7C0(EnGb* this) {
- Animation_Change(&this->skelAnime, &D_0600C8EC, 1.0f, 0.0f, Animation_GetLastFrame(&D_0600C8EC), ANIMMODE_ONCE,
- 0.0f);
+ Animation_Change(&this->skelAnime, &gPoeSellerSwingStickAnim, 1.0f, 0.0f,
+ Animation_GetLastFrame(&gPoeSellerSwingStickAnim), ANIMMODE_ONCE, 0.0f);
Audio_PlayActorSound2(&this->dyna.actor, NA_SE_EV_NALE_MAGIC);
this->actionFunc = func_80A2FC70;
}
@@ -373,8 +375,9 @@ void func_80A2FC0C(EnGb* this, GlobalContext* globalCtx) {
}
void func_80A2FC70(EnGb* this, GlobalContext* globalCtx) {
- if (this->skelAnime.curFrame == Animation_GetLastFrame(&D_0600C8EC)) {
- Animation_Change(&this->skelAnime, &D_0600049C, 1.0f, 0.0f, Animation_GetLastFrame(&D_0600049C), 0, 0.0f);
+ if (this->skelAnime.curFrame == Animation_GetLastFrame(&gPoeSellerSwingStickAnim)) {
+ Animation_Change(&this->skelAnime, &gPoeSellerIdleAnim, 1.0f, 0.0f, Animation_GetLastFrame(&gPoeSellerIdleAnim),
+ 0, 0.0f);
this->actionFunc = func_80A2F83C;
} else if (this->skelAnime.curFrame == 18.0f) {
this->cagedSouls[1].unk_1 = 3;
@@ -520,12 +523,12 @@ void EnGb_DrawCagedSouls(EnGb* this, GlobalContext* globalCtx) {
func_80093D84(globalCtx->state.gfxCtx);
for (i = 0; i < 4; i++) {
- s32 idx = this->cagedSouls[i].unk_0;
+ s32 idx = this->cagedSouls[i].infoIdx;
gSPSegment(POLY_XLU_DISP++, 0x08,
Gfx_TwoTexScroll(globalCtx->state.gfxCtx, 0, 0, 0, 32, 64, 1, 0,
- (u32)(sCagedSoulInfo[idx].unk_C * this->frameTimer) % 512, 32, 128));
- gSPSegment(POLY_XLU_DISP++, 0x09, SEGMENTED_TO_VIRTUAL(sCagedSoulInfo[idx].unk_8));
+ (u32)(sCagedSoulInfo[idx].timerMultiplier * this->frameTimer) % 512, 32, 128));
+ gSPSegment(POLY_XLU_DISP++, 0x09, SEGMENTED_TO_VIRTUAL(sCagedSoulInfo[idx].texture));
gDPSetPrimColor(POLY_XLU_DISP++, 0x80, 0x80, sCagedSoulInfo[idx].prim.r, sCagedSoulInfo[idx].prim.g,
sCagedSoulInfo[idx].prim.b, sCagedSoulInfo[idx].prim.a);
gDPSetEnvColor(POLY_XLU_DISP++, sCagedSoulInfo[idx].env.r, sCagedSoulInfo[idx].env.g, sCagedSoulInfo[idx].env.b,
@@ -543,7 +546,7 @@ void EnGb_DrawCagedSouls(EnGb* this, GlobalContext* globalCtx) {
gSPMatrix(POLY_XLU_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_en_gb.c", 955),
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
- gSPDisplayList(POLY_XLU_DISP++, D_0600C0B0);
+ gSPDisplayList(POLY_XLU_DISP++, gPoeSellerCagedSoulDL);
Matrix_Pop();
}
diff --git a/src/overlays/actors/ovl_En_Gb/z_en_gb.h b/src/overlays/actors/ovl_En_Gb/z_en_gb.h
index 8d3779b973..9e7779df67 100644
--- a/src/overlays/actors/ovl_En_Gb/z_en_gb.h
+++ b/src/overlays/actors/ovl_En_Gb/z_en_gb.h
@@ -11,12 +11,12 @@ typedef void (*EnGbActionFunc)(struct EnGb*, GlobalContext*);
typedef struct {
/* 0x00 */ Color_RGBA8 prim;
/* 0x04 */ Color_RGBA8 env;
- /* 0x08 */ UNK_TYPE unk_8;
- /* 0x0C */ s16 unk_C;
+ /* 0x08 */ u64* texture;
+ /* 0x0C */ s16 timerMultiplier;
} EnGbCagedSoulInfo; // size = 0x10
typedef struct {
- /* 0x00 */ u8 unk_0;
+ /* 0x00 */ u8 infoIdx;
/* 0x01 */ u8 unk_1;
/* 0x02 */ u8 unk_2;
/* 0x03 */ u8 unk_3;
diff --git a/src/overlays/actors/ovl_En_Po_Desert/z_en_po_desert.c b/src/overlays/actors/ovl_En_Po_Desert/z_en_po_desert.c
index 591962a265..471381f233 100644
--- a/src/overlays/actors/ovl_En_Po_Desert/z_en_po_desert.c
+++ b/src/overlays/actors/ovl_En_Po_Desert/z_en_po_desert.c
@@ -5,6 +5,7 @@
*/
#include "z_en_po_desert.h"
+#include "objects/object_po_field/object_po_field.h"
#define FLAGS 0x00001090
@@ -58,19 +59,13 @@ static InitChainEntry sInitChain[] = {
ICHAIN_F32(targetArrowOffset, 3200, ICHAIN_STOP),
};
-extern SkeletonHeader D_06006A30;
-extern AnimationHeader D_06000924;
-extern AnimationHeader D_06001360;
-
-extern Gfx D_06004BA0[];
-extern Gfx D_06004CC0[];
-
void EnPoDesert_Init(Actor* thisx, GlobalContext* globalCtx) {
s32 pad;
EnPoDesert* this = THIS;
Actor_ProcessInitChain(&this->actor, sInitChain);
- SkelAnime_Init(globalCtx, &this->skelAnime, &D_06006A30, &D_06000924, this->jointTable, this->morphTable, 10);
+ SkelAnime_Init(globalCtx, &this->skelAnime, &gPoeFieldSkel, &gPoeFieldFloatAnim, this->jointTable, this->morphTable,
+ 10);
Collider_InitCylinder(globalCtx, &this->collider);
Collider_SetCylinder(globalCtx, &this->collider, &this->actor, &sColliderInit);
this->lightColor.r = 255;
@@ -98,7 +93,7 @@ void EnPoDesert_SetNextPathPoint(EnPoDesert* this, GlobalContext* globalCtx) {
Path* path = &globalCtx->setupPathList[this->actor.params];
Vec3s* pathPoint;
- Animation_MorphToLoop(&this->skelAnime, &D_06001360, -6.0f);
+ Animation_MorphToLoop(&this->skelAnime, &gPoeFieldDisappearAnim, -6.0f);
pathPoint = &((Vec3s*)SEGMENTED_TO_VIRTUAL(path->points))[this->currentPathPoint];
this->actor.home.pos.x = pathPoint->x;
this->actor.home.pos.y = pathPoint->y;
@@ -115,12 +110,12 @@ void EnPoDesert_SetNextPathPoint(EnPoDesert* this, GlobalContext* globalCtx) {
}
void EnPoDesert_SetupMoveToNextPoint(EnPoDesert* this) {
- Animation_MorphToLoop(&this->skelAnime, &D_06000924, -5.0f);
+ Animation_MorphToLoop(&this->skelAnime, &gPoeFieldFloatAnim, -5.0f);
this->actionFunc = EnPoDesert_MoveToNextPoint;
}
void EnPoDesert_SetupDisappear(EnPoDesert* this) {
- Animation_MorphToPlayOnce(&this->skelAnime, &D_06001360, -6.0f);
+ Animation_MorphToPlayOnce(&this->skelAnime, &gPoeFieldDisappearAnim, -6.0f);
this->actionTimer = 16;
this->actor.speedXZ = 0.0f;
Audio_PlayActorSound2(&this->actor, NA_SE_EN_PO_DISAPPEAR);
@@ -248,8 +243,8 @@ void EnPoDesert_PostLimbDraw(GlobalContext* globalCtx, s32 limbIndex, Gfx** dLis
gDPSetEnvColor((*gfxP)++, color.r, color.g, color.b, 255);
gSPMatrix((*gfxP)++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_en_po_desert.c", 523),
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
- gSPDisplayList((*gfxP)++, D_06004BA0);
- gSPDisplayList((*gfxP)++, D_06004CC0);
+ gSPDisplayList((*gfxP)++, gPoeFieldLanternDL);
+ gSPDisplayList((*gfxP)++, gPoeFieldLanternTopDL);
gDPPipeSync((*gfxP)++);
gDPSetEnvColor((*gfxP)++, this->lightColor.r, this->lightColor.g, this->lightColor.b, this->lightColor.a);
}
diff --git a/src/overlays/actors/ovl_En_Po_Field/z_en_po_field.c b/src/overlays/actors/ovl_En_Po_Field/z_en_po_field.c
index 5524ebe717..9c8d766b53 100644
--- a/src/overlays/actors/ovl_En_Po_Field/z_en_po_field.c
+++ b/src/overlays/actors/ovl_En_Po_Field/z_en_po_field.c
@@ -6,6 +6,7 @@
#include "z_en_po_field.h"
#include "objects/gameplay_keep/gameplay_keep.h"
+#include "objects/object_po_field/object_po_field.h"
#define FLAGS 0x00001035
@@ -136,8 +137,8 @@ static Vec3f D_80AD7114 = { 0.0f, 3.0f, 0.0f };
static Vec3f D_80AD7120 = { 0.0f, 0.0f, 0.0f };
static EnPoFieldInfo sPoFieldInfo[2] = {
- { { 255, 170, 255 }, { 100, 0, 150 }, { 255, 85, 0 }, 248, 0x06001B70 },
- { { 255, 255, 170 }, { 255, 200, 0 }, { 160, 0, 255 }, 241, 0x06001370 },
+ { { 255, 170, 255 }, { 100, 0, 150 }, { 255, 85, 0 }, 248, gPoeFieldSoulTex },
+ { { 255, 255, 170 }, { 255, 200, 0 }, { 160, 0, 255 }, 241, gBigPoeSoulTex },
};
static Vec3f D_80AD714C = { 0.0f, 1400.0f, 0.0f };
@@ -146,20 +147,6 @@ static Vec3s sSpawnPositions[10];
static u8 sSpawnSwitchFlags[10];
static MtxF sLimb7Mtx;
-extern AnimationHeader D_06000924;
-extern SkeletonHeader D_06006A30;
-extern AnimationHeader D_06000F9C;
-extern AnimationHeader D_06000608;
-extern AnimationHeader D_06000454;
-extern AnimationHeader D_06001360;
-extern Gfx D_060059F0[];
-extern Gfx D_06005900[];
-extern Gfx D_06005620[];
-extern Gfx D_060066D0[];
-extern Gfx D_06004BA0[];
-extern Gfx D_06004CC0[];
-extern Gfx D_060023B0[];
-
void EnPoField_Init(Actor* thisx, GlobalContext* globalCtx) {
EnPoField* this = THIS;
s32 pad;
@@ -177,7 +164,8 @@ void EnPoField_Init(Actor* thisx, GlobalContext* globalCtx) {
return;
}
Actor_ProcessInitChain(&this->actor, sInitChain);
- SkelAnime_Init(globalCtx, &this->skelAnime, &D_06006A30, &D_06000924, this->jointTable, this->morphTable, 10);
+ SkelAnime_Init(globalCtx, &this->skelAnime, &gPoeFieldSkel, &gPoeFieldFloatAnim, this->jointTable, this->morphTable,
+ 10);
Collider_InitCylinder(globalCtx, &this->collider);
Collider_SetCylinder(globalCtx, &this->collider, &this->actor, &D_80AD7080);
Collider_InitCylinder(globalCtx, &this->flameCollider);
@@ -217,7 +205,7 @@ void EnPoField_SetupWaitForSpawn(EnPoField* this, GlobalContext* globalCtx) {
}
void EnPoField_SetupAppear(EnPoField* this) {
- Animation_PlayOnce(&this->skelAnime, &D_06000F9C);
+ Animation_PlayOnce(&this->skelAnime, &gPoeFieldAppearAnim);
this->actor.draw = EnPoField_Draw;
this->lightColor.r = 255;
this->lightColor.g = 255;
@@ -250,7 +238,7 @@ void EnPoField_SetupAppear(EnPoField* this) {
void EnPoField_SetupCirclePlayer(EnPoField* this, GlobalContext* globalCtx) {
Player* player = PLAYER;
- Animation_PlayLoop(&this->skelAnime, &D_06000924);
+ Animation_PlayLoop(&this->skelAnime, &gPoeFieldFloatAnim);
this->collider.base.acFlags |= AC_ON;
this->scaleModifier = this->actor.xzDistToPlayer;
Math_Vec3f_Copy(&this->actor.home.pos, &player->actor.world.pos);
@@ -264,7 +252,7 @@ void EnPoField_SetupCirclePlayer(EnPoField* this, GlobalContext* globalCtx) {
}
void EnPoField_SetupFlee(EnPoField* this) {
- Animation_MorphToLoop(&this->skelAnime, &D_06000608, -5.0f);
+ Animation_MorphToLoop(&this->skelAnime, &gPoeFieldFleeAnim, -5.0f);
this->collider.base.acFlags |= AC_ON;
this->actionFunc = EnPoField_Flee;
this->actor.speedXZ = 12.0f;
@@ -277,7 +265,7 @@ void EnPoField_SetupFlee(EnPoField* this) {
}
void EnPoField_SetupDamage(EnPoField* this) {
- Animation_MorphToPlayOnce(&this->skelAnime, &D_06000454, -6.0f);
+ Animation_MorphToPlayOnce(&this->skelAnime, &gPoeFieldDamagedAnim, -6.0f);
if (this->collider.info.acHitInfo->toucher.dmgFlags & 0x1F824) {
this->actor.world.rot.y = this->collider.base.ac->world.rot.y;
} else {
@@ -302,7 +290,7 @@ void EnPoField_SetupDeath(EnPoField* this) {
}
void EnPoField_SetupDisappear(EnPoField* this) {
- Animation_MorphToLoop(&this->skelAnime, &D_06001360, -6.0f);
+ Animation_MorphToLoop(&this->skelAnime, &gPoeFieldDisappearAnim, -6.0f);
this->actionTimer = 16;
this->collider.base.acFlags &= ~(AC_HIT | AC_ON);
this->actor.speedXZ = 0.0f;
@@ -616,7 +604,8 @@ void EnPoField_SoulIdle(EnPoField* this, GlobalContext* globalCtx) {
this->actionTimer--;
}
if (this->actor.bgCheckFlags & 1) {
- EffectSsHahen_SpawnBurst(globalCtx, &this->actor.world.pos, 6.0f, 0, 1, 1, 15, OBJECT_PO_FIELD, 10, D_06004BA0);
+ EffectSsHahen_SpawnBurst(globalCtx, &this->actor.world.pos, 6.0f, 0, 1, 1, 15, OBJECT_PO_FIELD, 10,
+ gPoeFieldLanternDL);
func_80AD42B0(this);
} else if (this->actionTimer == 0) {
EnPoField_SetupWaitForSpawn(this, globalCtx);
@@ -890,11 +879,11 @@ s32 EnPoField_OverrideLimbDraw2(GlobalContext* globalCtx, s32 limbIndex, Gfx** d
*dList = NULL;
} else if (this->actor.params == EN_PO_FIELD_BIG) {
if (limbIndex == 1) {
- *dList = D_06005900;
+ *dList = gBigPoeFaceDL;
} else if (limbIndex == 8) {
- *dList = D_06005620;
+ *dList = gBigPoeCloakDL;
} else if (limbIndex == 9) {
- *dList = D_060059F0;
+ *dList = gBigPoeBodyDL;
}
}
if (this->actionFunc == EnPoField_Disappear && limbIndex == 7) {
@@ -909,7 +898,7 @@ void EnPoField_PostLimDraw2(GlobalContext* globalCtx, s32 limbIndex, Gfx** dList
if (this->actionFunc == EnPoField_Death && this->actionTimer >= 2 && limbIndex == 8) {
gSPMatrix((*gfxP)++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_en_po_field.c", 1916),
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
- gSPDisplayList((*gfxP)++, D_060066D0);
+ gSPDisplayList((*gfxP)++, gPoeFieldBurnDL);
}
if (limbIndex == 7) {
Vec3f vec;
@@ -961,8 +950,8 @@ void EnPoField_Draw(Actor* thisx, GlobalContext* globalCtx) {
Matrix_Put(&sLimb7Mtx);
gSPMatrix(POLY_OPA_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_en_po_field.c", 2033),
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
- gSPDisplayList(POLY_OPA_DISP++, D_06004BA0);
- gSPDisplayList(POLY_OPA_DISP++, D_06004CC0);
+ gSPDisplayList(POLY_OPA_DISP++, gPoeFieldLanternDL);
+ gSPDisplayList(POLY_OPA_DISP++, gPoeFieldLanternTopDL);
CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_en_po_field.c", 2039);
}
EnPoField_DrawFlame(this, globalCtx);
@@ -993,21 +982,21 @@ void EnPoField_DrawSoul(Actor* thisx, GlobalContext* globalCtx) {
gDPSetEnvColor(POLY_OPA_DISP++, this->soulColor.r, this->soulColor.g, this->soulColor.b, 255);
gSPMatrix(POLY_OPA_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_en_po_field.c", 2104),
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
- gSPDisplayList(POLY_OPA_DISP++, D_06004BA0);
- gSPDisplayList(POLY_OPA_DISP++, D_06004CC0);
+ gSPDisplayList(POLY_OPA_DISP++, gPoeFieldLanternDL);
+ gSPDisplayList(POLY_OPA_DISP++, gPoeFieldLanternTopDL);
} else {
func_80093D84(globalCtx->state.gfxCtx);
gSPSegment(POLY_XLU_DISP++, 0x08,
Gfx_TwoTexScroll(globalCtx->state.gfxCtx, 0, 0, 0, 0x20, 0x40, 1, 0,
(globalCtx->gameplayFrames * info->unk_9) & 0x1FF, 0x20, 0x80));
- gSPSegment(POLY_XLU_DISP++, 0x09, SEGMENTED_TO_VIRTUAL(info->unk_C));
+ gSPSegment(POLY_XLU_DISP++, 0x09, SEGMENTED_TO_VIRTUAL(info->soulTexture));
gDPSetPrimColor(POLY_XLU_DISP++, 0x80, 0x80, info->primColor.r, info->primColor.g, info->primColor.b,
this->lightColor.a);
gDPSetEnvColor(POLY_XLU_DISP++, this->lightColor.r, this->lightColor.g, this->lightColor.b, 255);
Matrix_RotateY((s16)(Camera_GetCamDirYaw(ACTIVE_CAM) + 0x8000) * 9.58738e-05f, MTXMODE_APPLY);
gSPMatrix(POLY_XLU_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_en_po_field.c", 2143),
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
- gSPDisplayList(POLY_XLU_DISP++, D_060023B0);
+ gSPDisplayList(POLY_XLU_DISP++, gPoeFieldSoulDL);
}
CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_en_po_field.c", 2149);
EnPoField_DrawFlame(this, globalCtx);
diff --git a/src/overlays/actors/ovl_En_Po_Field/z_en_po_field.h b/src/overlays/actors/ovl_En_Po_Field/z_en_po_field.h
index 409fbcb16b..55d0e4094f 100644
--- a/src/overlays/actors/ovl_En_Po_Field/z_en_po_field.h
+++ b/src/overlays/actors/ovl_En_Po_Field/z_en_po_field.h
@@ -18,7 +18,7 @@ typedef struct {
/* 0x0003 */ Color_RGB8 lightColor;
/* 0x0006 */ Color_RGB8 envColor;
/* 0x0009 */ s8 unk_9;
- /* 0x000C */ UNK_PTR unk_C;
+ /* 0x000C */ u64* soulTexture;
} EnPoFieldInfo; // size = 0x10
typedef struct EnPoField {
diff --git a/src/overlays/actors/ovl_En_Po_Relay/z_en_po_relay.c b/src/overlays/actors/ovl_En_Po_Relay/z_en_po_relay.c
index 9ca2820ecc..45c33263ab 100644
--- a/src/overlays/actors/ovl_En_Po_Relay/z_en_po_relay.c
+++ b/src/overlays/actors/ovl_En_Po_Relay/z_en_po_relay.c
@@ -6,6 +6,7 @@
#include "z_en_po_relay.h"
#include "overlays/actors/ovl_En_Honotrap/z_en_honotrap.h"
+#include "objects/object_tk/object_tk.h"
#define FLAGS 0x00011019
@@ -79,24 +80,20 @@ static Vec3f D_80AD8D3C = { 0.0f, 0.0f, 0.0f };
static Vec3f D_80AD8D48 = { 0.0f, 1200.0f, 0.0f };
-static UNK_PTR sEyesSegments[] = {
- 0x06003B40,
- 0x06004340,
- 0x06004B40,
+static u64* sEyesSegments[] = {
+ gDampeEyeOpenTex,
+ gDampeEyeHalfOpenTex,
+ gDampeEyeClosedTex,
};
-extern FlexSkeletonHeader D_0600BE40;
-extern AnimationHeader D_06003768;
-extern Gfx D_0600B838[];
-extern Gfx D_0600BBA0[];
-
void EnPoRelay_Init(Actor* thisx, GlobalContext* globalCtx) {
EnPoRelay* this = THIS;
s32 temp;
Actor_ProcessInitChain(&this->actor, sInitChain);
ActorShape_Init(&this->actor.shape, 0.0f, ActorShadow_DrawCircle, 42.0f);
- SkelAnime_InitFlex(globalCtx, &this->skelAnime, &D_0600BE40, &D_06003768, this->jointTable, this->morphTable, 18);
+ SkelAnime_InitFlex(globalCtx, &this->skelAnime, &gDampeSkel, &gDampeFloatAnim, this->jointTable, this->morphTable,
+ 18);
Collider_InitCylinder(globalCtx, &this->collider);
Collider_SetCylinder(globalCtx, &this->collider, &this->actor, &sCylinderInit);
this->lightNode = LightContext_InsertLight(globalCtx, &globalCtx->lightCtx, &this->lightInfo);
@@ -387,7 +384,7 @@ void EnPoRelay_PostLimbDraw(GlobalContext* globalCtx, s32 limbIndex, Gfx** dList
this->lightColor.b = (s16)(rand * 160.0f) + 95;
gDPPipeSync(POLY_OPA_DISP++);
gDPSetEnvColor(POLY_OPA_DISP++, this->lightColor.r, this->lightColor.g, this->lightColor.b, 128);
- gSPDisplayList(POLY_OPA_DISP++, D_0600B838);
+ gSPDisplayList(POLY_OPA_DISP++, gDampeLanternDL);
if (1) {}
CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_en_po_relay.c", 901);
Matrix_MultVec3f(&D_80AD8D48, &vec);
@@ -397,7 +394,7 @@ void EnPoRelay_PostLimbDraw(GlobalContext* globalCtx, s32 limbIndex, Gfx** dList
OPEN_DISPS(globalCtx->state.gfxCtx, "../z_en_po_relay.c", 916);
gSPMatrix(POLY_OPA_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_en_po_relay.c", 918),
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
- gSPDisplayList(POLY_OPA_DISP++, D_0600BBA0);
+ gSPDisplayList(POLY_OPA_DISP++, gDampeHaloDL);
CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_en_po_relay.c", 922);
}
}
diff --git a/src/overlays/actors/ovl_En_Po_Sisters/z_en_po_sisters.c b/src/overlays/actors/ovl_En_Po_Sisters/z_en_po_sisters.c
index bad2f482f8..ba8ea5e53e 100644
--- a/src/overlays/actors/ovl_En_Po_Sisters/z_en_po_sisters.c
+++ b/src/overlays/actors/ovl_En_Po_Sisters/z_en_po_sisters.c
@@ -6,6 +6,7 @@
#include "z_en_po_sisters.h"
#include "objects/gameplay_keep/gameplay_keep.h"
+#include "objects/object_po_sisters/object_po_sisters.h"
#define FLAGS 0x00005215
@@ -151,9 +152,19 @@ static Vec3s D_80ADD7A4[4] = {
static Vec3f D_80ADD7BC = { 120.0f, 250.0f, -1420.0f };
-static Gfx* D_80ADD7C8[4] = { 0x06001DE0, 0x06002F88, 0x06003628, 0x06003DC8 };
+static Gfx* D_80ADD7C8[4] = {
+ gPoeSistersMegBodyDL,
+ gPoeSistersJoelleBodyDL,
+ gPoeSistersBethBodyDL,
+ gPoeSistersAmyBodyDL,
+};
-static Gfx* D_80ADD7D8[4] = { 0x06001CB0, 0x06002EB8, 0x06003880, 0x06004020 };
+static Gfx* D_80ADD7D8[4] = {
+ gPoeSistersMegFaceDL,
+ gPoeSistersJoelleFaceDL,
+ gPoeSistersBethFaceDL,
+ gPoSistersAmyFaceDL,
+};
static Color_RGBA8 D_80ADD7E8[4] = {
{ 80, 0, 100, 0 },
@@ -164,25 +175,14 @@ static Color_RGBA8 D_80ADD7E8[4] = {
static Vec3f D_80ADD7F8 = { 1000.0f, -1700.0f, 0.0f };
-extern SkeletonHeader D_060065C8;
-extern AnimationHeader D_060014CC;
-extern AnimationHeader D_06000D40;
-extern AnimationHeader D_06000114;
-extern AnimationHeader D_060008C0;
-extern AnimationHeader D_06000A54;
-extern AnimationHeader D_0600119C;
-extern AnimationHeader D_06000680;
-
-extern Gfx D_060027B0[];
-extern Gfx D_060046E0[];
-
void EnPoSisters_Init(Actor* thisx, GlobalContext* globalCtx) {
EnPoSisters* this = THIS;
s32 pad;
Actor_ProcessInitChain(&this->actor, sInitChain);
ActorShape_Init(&this->actor.shape, 0.0f, ActorShadow_DrawCircle, 50.0f);
- SkelAnime_Init(globalCtx, &this->skelAnime, &D_060065C8, &D_060014CC, this->jointTable, this->morphTable, 12);
+ SkelAnime_Init(globalCtx, &this->skelAnime, &gPoeSistersSkel, &gPoeSistersSwayAnim, this->jointTable,
+ this->morphTable, 12);
this->unk_22E.r = 255;
this->unk_22E.g = 255;
this->unk_22E.b = 210;
@@ -246,7 +246,7 @@ void func_80AD9240(EnPoSisters* this, s32 arg1, Vec3f* arg2) {
}
void func_80AD9368(EnPoSisters* this) {
- Animation_MorphToLoop(&this->skelAnime, &D_060014CC, -3.0f);
+ Animation_MorphToLoop(&this->skelAnime, &gPoeSistersSwayAnim, -3.0f);
this->unk_19A = Rand_S16Offset(2, 3);
this->actionFunc = func_80ADA4A8;
this->actor.speedXZ = 0.0f;
@@ -254,7 +254,7 @@ void func_80AD9368(EnPoSisters* this) {
void func_80AD93C4(EnPoSisters* this) {
if (this->actionFunc != func_80ADA6A0) {
- Animation_MorphToLoop(&this->skelAnime, &D_06000D40, -3.0f);
+ Animation_MorphToLoop(&this->skelAnime, &gPoeSistersFloatAnim, -3.0f);
}
this->unk_19A = Rand_S16Offset(0xF, 3);
this->unk_199 |= 7;
@@ -270,9 +270,9 @@ void func_80AD944C(EnPoSisters* this) {
this->collider.base.colType = COLTYPE_METAL;
this->collider.base.acFlags |= AC_HARD;
}
- Animation_MorphToLoop(&this->skelAnime, &D_06000114, -5.0f);
+ Animation_MorphToLoop(&this->skelAnime, &gPoeSistersAttackAnim, -5.0f);
this->actor.speedXZ = 0.0f;
- this->unk_19A = Animation_GetLastFrame(&D_06000114) * 3 + 3;
+ this->unk_19A = Animation_GetLastFrame(&gPoeSistersAttackAnim) * 3 + 3;
this->unk_199 &= ~2;
this->actionFunc = func_80ADA7F0;
}
@@ -282,7 +282,7 @@ void func_80AD94E0(EnPoSisters* this) {
if (this->unk_194 == 0) {
this->collider.base.colType = COLTYPE_METAL;
this->collider.base.acFlags |= AC_HARD;
- Animation_MorphToLoop(&this->skelAnime, &D_06000114, -5.0f);
+ Animation_MorphToLoop(&this->skelAnime, &gPoeSistersAttackAnim, -5.0f);
}
this->unk_19A = 5;
this->actor.world.rot.y = this->actor.yawTowardsPlayer;
@@ -291,7 +291,7 @@ void func_80AD94E0(EnPoSisters* this) {
}
void func_80AD9568(EnPoSisters* this) {
- Animation_MorphToLoop(&this->skelAnime, &D_06000D40, -3.0f);
+ Animation_MorphToLoop(&this->skelAnime, &gPoeSistersFloatAnim, -3.0f);
this->actor.world.rot.y = this->actor.yawTowardsPlayer + 0x8000;
if (this->unk_194 != 0) {
this->collider.base.colType = COLTYPE_HIT3;
@@ -301,7 +301,7 @@ void func_80AD9568(EnPoSisters* this) {
}
void func_80AD95D8(EnPoSisters* this) {
- Animation_MorphToPlayOnce(&this->skelAnime, &D_060008C0, -3.0f);
+ Animation_MorphToPlayOnce(&this->skelAnime, &gPoeSistersDamagedAnim, -3.0f);
if (this->collider.base.ac != NULL) {
this->actor.world.rot.y = (this->collider.info.acHitInfo->toucher.dmgFlags & 0x1F824)
? this->collider.base.ac->world.rot.y
@@ -316,7 +316,7 @@ void func_80AD95D8(EnPoSisters* this) {
}
void func_80AD96A4(EnPoSisters* this) {
- Animation_MorphToLoop(&this->skelAnime, &D_06000A54, -3.0f);
+ Animation_MorphToLoop(&this->skelAnime, &gPoeSistersFleeAnim, -3.0f);
this->actor.world.rot.y = this->actor.shape.rot.y + 0x8000;
this->unk_19A = 5;
this->unk_199 |= 0xB;
@@ -325,8 +325,8 @@ void func_80AD96A4(EnPoSisters* this) {
}
void func_80AD9718(EnPoSisters* this) {
- Animation_Change(&this->skelAnime, &D_0600119C, 1.5f, 0.0f, Animation_GetLastFrame(&D_0600119C), ANIMMODE_ONCE,
- -3.0f);
+ Animation_Change(&this->skelAnime, &gPoeSistersAppearDisappearAnim, 1.5f, 0.0f,
+ Animation_GetLastFrame(&gPoeSistersAppearDisappearAnim), ANIMMODE_ONCE, -3.0f);
this->actor.speedXZ = 0.0f;
this->unk_19C = 100;
this->actor.world.rot.y = this->actor.shape.rot.y;
@@ -356,8 +356,8 @@ void func_80AD97C8(EnPoSisters* this, GlobalContext* globalCtx) {
}
void func_80AD98F4(EnPoSisters* this, GlobalContext* globalCtx) {
- Animation_Change(&this->skelAnime, &D_0600119C, 1.5f, 0.0f, Animation_GetLastFrame(&D_0600119C), ANIMMODE_ONCE,
- -3.0f);
+ Animation_Change(&this->skelAnime, &gPoeSistersAppearDisappearAnim, 1.5f, 0.0f,
+ Animation_GetLastFrame(&gPoeSistersAppearDisappearAnim), ANIMMODE_ONCE, -3.0f);
if (this->unk_194 == 0) {
this->unk_294 = 110.0f;
func_80AD97C8(this, globalCtx);
@@ -417,7 +417,7 @@ void func_80AD9AA8(EnPoSisters* this, GlobalContext* globalCtx) {
actor3->parent = &this->actor;
actor2->parent = &this->actor;
actor1->parent = &this->actor;
- Animation_PlayLoop(&this->skelAnime, &D_06000680);
+ Animation_PlayLoop(&this->skelAnime, &gPoeSistersMegCryAnim);
this->unk_198 = 0;
this->unk_199 = 160;
this->actionFunc = func_80ADB2B8;
@@ -446,11 +446,11 @@ void func_80AD9C24(EnPoSisters* this, GlobalContext* globalCtx) {
void func_80AD9D44(EnPoSisters* this) {
if (this->unk_194 == 3) {
- Animation_PlayOnce(&this->skelAnime, &D_0600119C);
+ Animation_PlayOnce(&this->skelAnime, &gPoeSistersAppearDisappearAnim);
Audio_PlayActorSound2(&this->actor, NA_SE_EN_PO_APPEAR);
} else {
- Animation_Change(&this->skelAnime, &D_0600119C, 0.5f, 0.0f, Animation_GetLastFrame(&D_0600119C),
- ANIMMODE_ONCE_INTERP, 0.0f);
+ Animation_Change(&this->skelAnime, &gPoeSistersAppearDisappearAnim, 0.5f, 0.0f,
+ Animation_GetLastFrame(&gPoeSistersAppearDisappearAnim), ANIMMODE_ONCE_INTERP, 0.0f);
}
this->unk_22E.a = 0;
this->unk_199 = 32;
@@ -458,7 +458,7 @@ void func_80AD9D44(EnPoSisters* this) {
}
void func_80AD9DF0(EnPoSisters* this, GlobalContext* globalCtx) {
- Animation_MorphToPlayOnce(&this->skelAnime, &D_0600119C, -5.0f);
+ Animation_MorphToPlayOnce(&this->skelAnime, &gPoeSistersAppearDisappearAnim, -5.0f);
this->unk_198 = 1;
this->unk_199 &= ~0x80;
this->actionFunc = func_80ADB4B0;
@@ -466,8 +466,8 @@ void func_80AD9DF0(EnPoSisters* this, GlobalContext* globalCtx) {
}
void func_80AD9E60(EnPoSisters* this) {
- Animation_MorphToLoop(&this->skelAnime, &D_06000D40, -3.0f);
- this->unk_19A = Animation_GetLastFrame(&D_06000D40) * 7 + 7;
+ Animation_MorphToLoop(&this->skelAnime, &gPoeSistersFloatAnim, -3.0f);
+ this->unk_19A = Animation_GetLastFrame(&gPoeSistersFloatAnim) * 7 + 7;
if (this->actor.parent != NULL) {
this->actor.world.pos = this->actor.parent->world.pos;
this->actor.shape.rot.y = this->actor.parent->shape.rot.y;
@@ -482,7 +482,7 @@ void func_80AD9E60(EnPoSisters* this) {
}
void func_80AD9F1C(EnPoSisters* this) {
- Animation_MorphToLoop(&this->skelAnime, &D_06000D40, -3.0f);
+ Animation_MorphToLoop(&this->skelAnime, &gPoeSistersFloatAnim, -3.0f);
this->unk_22E.a = 255;
this->unk_19A = 300;
this->unk_19C = 3;
@@ -499,14 +499,14 @@ void func_80AD9F90(EnPoSisters* this) {
this->actor.home.pos.x = 752.0f;
this->actor.home.pos.z = -3440.0f;
}
- Animation_PlayLoop(&this->skelAnime, &D_06000D40);
+ Animation_PlayLoop(&this->skelAnime, &gPoeSistersFloatAnim);
this->unk_199 |= 0xA;
this->actionFunc = func_80ADBB6C;
this->actor.speedXZ = 5.0f;
}
void func_80ADA028(EnPoSisters* this) {
- Animation_MorphToLoop(&this->skelAnime, &D_060014CC, -3.0f);
+ Animation_MorphToLoop(&this->skelAnime, &gPoeSistersSwayAnim, -3.0f);
this->unk_22E.a = 255;
this->unk_199 |= 0x15;
this->actor.flags |= 1;
@@ -535,8 +535,8 @@ void func_80ADA10C(EnPoSisters* this) {
}
void func_80ADA1B8(EnPoSisters* this) {
- Animation_Change(&this->skelAnime, &D_0600119C, 0.833f, 0.0f, Animation_GetLastFrame(&D_0600119C),
- ANIMMODE_ONCE_INTERP, 0.0f);
+ Animation_Change(&this->skelAnime, &gPoeSistersAppearDisappearAnim, 0.833f, 0.0f,
+ Animation_GetLastFrame(&gPoeSistersAppearDisappearAnim), ANIMMODE_ONCE_INTERP, 0.0f);
if (this->unk_194 == 0 || this->unk_194 == 1) {
this->unk_19A = 40;
} else {
@@ -548,7 +548,7 @@ void func_80ADA1B8(EnPoSisters* this) {
}
void func_80ADA25C(EnPoSisters* this) {
- Animation_PlayLoop(&this->skelAnime, &D_060014CC);
+ Animation_PlayLoop(&this->skelAnime, &gPoeSistersSwayAnim);
this->unk_198 = 8;
this->unk_19A = 32;
func_80AD9240(this, this->unk_19A, &this->actor.home.pos);
@@ -556,7 +556,7 @@ void func_80ADA25C(EnPoSisters* this) {
}
void func_80ADA2BC(EnPoSisters* this, GlobalContext* globalCtx) {
- Animation_MorphToLoop(&this->skelAnime, &D_06000D40, -3.0f);
+ Animation_MorphToLoop(&this->skelAnime, &gPoeSistersFloatAnim, -3.0f);
this->unk_198 = 0;
this->unk_199 = 40;
this->unk_19A = 90;
@@ -1234,17 +1234,17 @@ void EnPoSisters_Update(Actor* thisx, GlobalContext* globalCtx) {
void func_80ADC55C(EnPoSisters* this) {
s16 temp_var;
- if (this->skelAnime.animation == &D_06000114) {
+ if (this->skelAnime.animation == &gPoeSistersAttackAnim) {
this->unk_22E.r = CLAMP_MAX((s16)(this->unk_22E.r + 5), 255);
this->unk_22E.g = CLAMP_MIN((s16)(this->unk_22E.g - 5), 50);
temp_var = this->unk_22E.b - 5;
this->unk_22E.b = CLAMP_MIN(temp_var, 0);
- } else if (this->skelAnime.animation == &D_06000A54) {
+ } else if (this->skelAnime.animation == &gPoeSistersFleeAnim) {
this->unk_22E.r = CLAMP_MAX((s16)(this->unk_22E.r + 5), 80);
this->unk_22E.g = CLAMP_MAX((s16)(this->unk_22E.g + 5), 255);
temp_var = this->unk_22E.b + 5;
this->unk_22E.b = CLAMP_MAX(temp_var, 225);
- } else if (this->skelAnime.animation == &D_060008C0) {
+ } else if (this->skelAnime.animation == &gPoeSistersDamagedAnim) {
if (this->actor.colorFilterTimer & 2) {
this->unk_22E.r = 0;
this->unk_22E.g = 0;
@@ -1304,7 +1304,7 @@ void EnPoSisters_PostLimbDraw(GlobalContext* globalCtx, s32 limbIndex, Gfx** dLi
if (this->actionFunc == func_80ADAFC0 && this->unk_19A >= 8 && limbIndex == 9) {
gSPMatrix((*gfxP)++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_en_po_sisters.c", 2876),
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
- gSPDisplayList((*gfxP)++, D_060046E0);
+ gSPDisplayList((*gfxP)++, gPoSistersBurnDL);
}
if (limbIndex == 8 && this->actionFunc != func_80ADB2B8) {
if (this->unk_199 & 0x20) {
@@ -1369,7 +1369,7 @@ void EnPoSisters_Draw(Actor* thisx, GlobalContext* globalCtx) {
Matrix_Put(&this->unk_2F8);
gSPMatrix(POLY_OPA_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_en_po_sisters.c", 3034),
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
- gSPDisplayList(POLY_OPA_DISP++, D_060027B0);
+ gSPDisplayList(POLY_OPA_DISP++, gPoSistersTorchDL);
}
gSPSegment(POLY_XLU_DISP++, 0x08,
Gfx_TwoTexScroll(globalCtx->state.gfxCtx, 0, 0, 0, 0x20, 0x40, 1, 0,
diff --git a/src/overlays/actors/ovl_En_Poh/z_en_poh.c b/src/overlays/actors/ovl_En_Poh/z_en_poh.c
index 9c6bf20dbd..ed25557858 100644
--- a/src/overlays/actors/ovl_En_Poh/z_en_poh.c
+++ b/src/overlays/actors/ovl_En_Poh/z_en_poh.c
@@ -5,6 +5,8 @@
*/
#include "z_en_poh.h"
+#include "objects/object_poh/object_poh.h"
+#include "objects/object_po_composer/object_po_composer.h"
#define FLAGS 0x00001015
@@ -145,13 +147,13 @@ static EnPohInfo sPoeInfo[2] = {
18,
5,
248,
- 0x060015B0,
- 0x06000A60,
- 0x060004EC,
- 0x060006E0,
- 0x06002D28,
- 0x06002608,
- 0x06003850,
+ &gPoeDisappearAnim,
+ &gPoeFloatAnim,
+ &gPoeDamagedAnim,
+ &gPoeFleeAnim,
+ gPoeLanternDL,
+ gPoeBurnDL,
+ gPoeSoulDL,
},
{
{ 255, 255, 170 },
@@ -159,13 +161,13 @@ static EnPohInfo sPoeInfo[2] = {
9,
1,
244,
- 0x06001440,
- 0x060009DC,
- 0x06000570,
- 0x06000708,
- 0x060045A0,
- 0x06005220,
- 0x06001C90,
+ &gPoeComposerDisappearAnim,
+ &gPoeComposerFloatAnim,
+ &gPoeComposerDamagedAnim,
+ &gPoeComposerFleeAnim,
+ gPoeComposerLanternDL,
+ gPoeComposerBurnDL,
+ gPoeComposerSoulDL,
},
};
@@ -181,23 +183,6 @@ static InitChainEntry sInitChain[] = {
static Vec3f D_80AE1B60 = { 0.0f, 3.0f, 0.0f };
static Vec3f D_80AE1B6C = { 0.0f, 0.0f, 0.0f };
-extern FlexSkeletonHeader D_06006F90;
-extern AnimationHeader D_060009DC;
-extern SkeletonHeader D_060050D0;
-extern AnimationHeader D_06000A60;
-
-extern AnimationHeader D_060001A8;
-extern AnimationHeader D_0600020C;
-extern AnimationHeader D_060004EC;
-extern AnimationHeader D_06000570;
-extern AnimationHeader D_06000FE4;
-extern AnimationHeader D_060011C4;
-
-extern Gfx D_06004638[];
-
-extern Gfx D_06004498[];
-extern Gfx D_06004530[];
-
void EnPoh_Init(Actor* thisx, GlobalContext* globalCtx) {
s32 pad;
EnItem00* collectible;
@@ -273,20 +258,20 @@ void EnPoh_Destroy(Actor* thisx, GlobalContext* globalCtx) {
}
void func_80ADE114(EnPoh* this) {
- Animation_PlayLoop(&this->skelAnime, this->info->unk_C);
+ Animation_PlayLoop(&this->skelAnime, this->info->idleAnim);
this->unk_198 = Rand_S16Offset(2, 3);
this->actionFunc = func_80ADEAC4;
this->actor.speedXZ = 0.0f;
}
void EnPoh_SetupIdle(EnPoh* this) {
- Animation_PlayLoop(&this->skelAnime, this->info->unk_10);
+ Animation_PlayLoop(&this->skelAnime, this->info->idleAnim2);
this->unk_198 = Rand_S16Offset(15, 3);
this->actionFunc = EnPoh_Idle;
}
void func_80ADE1BC(EnPoh* this) {
- Animation_PlayLoop(&this->skelAnime, this->info->unk_10);
+ Animation_PlayLoop(&this->skelAnime, this->info->idleAnim2);
this->actionFunc = func_80ADEC9C;
this->unk_198 = 0;
this->actor.speedXZ = 2.0f;
@@ -294,9 +279,9 @@ void func_80ADE1BC(EnPoh* this) {
void EnPoh_SetupAttack(EnPoh* this) {
if (this->infoIdx == EN_POH_INFO_NORMAL) {
- Animation_MorphToLoop(&this->skelAnime, &D_060001A8, -6.0f);
+ Animation_MorphToLoop(&this->skelAnime, &gPoeAttackAnim, -6.0f);
} else {
- Animation_PlayLoop(&this->skelAnime, &D_0600020C);
+ Animation_PlayLoop(&this->skelAnime, &gPoeComposerAttackAnim);
}
this->unk_198 = 12;
this->actor.speedXZ = 0.0f;
@@ -306,9 +291,9 @@ void EnPoh_SetupAttack(EnPoh* this) {
void func_80ADE28C(EnPoh* this) {
if (this->infoIdx == EN_POH_INFO_NORMAL) {
- Animation_MorphToPlayOnce(&this->skelAnime, &D_060004EC, -6.0f);
+ Animation_MorphToPlayOnce(&this->skelAnime, &gPoeDamagedAnim, -6.0f);
} else {
- Animation_PlayOnce(&this->skelAnime, &D_06000570);
+ Animation_PlayOnce(&this->skelAnime, &gPoeComposerDamagedAnim);
}
if (this->colliderCyl.info.acHitInfo->toucher.dmgFlags & 0x0001F824) {
this->actor.world.rot.y = this->colliderCyl.base.ac->world.rot.y;
@@ -322,7 +307,7 @@ void func_80ADE28C(EnPoh* this) {
}
void func_80ADE368(EnPoh* this) {
- Animation_MorphToLoop(&this->skelAnime, this->info->unk_18, -5.0f);
+ Animation_MorphToLoop(&this->skelAnime, this->info->fleeAnim, -5.0f);
this->actor.speedXZ = 5.0f;
this->actor.world.rot.y = this->actor.shape.rot.y + 0x8000;
this->colliderCyl.base.acFlags |= AC_ON;
@@ -334,10 +319,10 @@ void EnPoh_SetupInitialAction(EnPoh* this) {
this->lightColor.a = 0;
this->actor.flags &= ~1;
if (this->infoIdx == EN_POH_INFO_NORMAL) {
- Animation_PlayOnceSetSpeed(&this->skelAnime, &D_060011C4, 0.0f);
+ Animation_PlayOnceSetSpeed(&this->skelAnime, &gPoeAppearAnim, 0.0f);
this->actionFunc = func_80ADEF38;
} else {
- Animation_PlayOnceSetSpeed(&this->skelAnime, &D_06000FE4, 1.0f);
+ Animation_PlayOnceSetSpeed(&this->skelAnime, &gPoeComposerAppearAnim, 1.0f);
this->actor.world.pos.y = this->actor.home.pos.y + 20.0f;
Audio_PlayActorSound2(&this->actor, NA_SE_EN_PO_LAUGH);
Audio_PlayActorSound2(&this->actor, NA_SE_EN_PO_APPEAR);
@@ -355,13 +340,13 @@ void func_80ADE48C(EnPoh* this) {
}
void func_80ADE4C8(EnPoh* this) {
- Animation_PlayOnce(&this->skelAnime, this->info->unk_10);
+ Animation_PlayOnce(&this->skelAnime, this->info->idleAnim2);
this->actionFunc = func_80ADF574;
this->actor.speedXZ = -5.0f;
}
void func_80ADE514(EnPoh* this) {
- Animation_PlayLoop(&this->skelAnime, this->info->unk_C);
+ Animation_PlayLoop(&this->skelAnime, this->info->idleAnim);
this->unk_19C = this->actor.world.rot.y + 0x8000;
this->actionFunc = func_80ADF5E0;
this->actor.speedXZ = 0.0f;
@@ -734,7 +719,8 @@ void EnPoh_Death(EnPoh* this, GlobalContext* globalCtx) {
}
if (this->actor.bgCheckFlags & 1) {
objId = (this->infoIdx == EN_POH_INFO_COMPOSER) ? OBJECT_PO_COMPOSER : OBJECT_POH;
- EffectSsHahen_SpawnBurst(globalCtx, &this->actor.world.pos, 6.0f, 0, 1, 1, 15, objId, 10, this->info->unk_1C);
+ EffectSsHahen_SpawnBurst(globalCtx, &this->actor.world.pos, 6.0f, 0, 1, 1, 15, objId, 10,
+ this->info->lanternDisplayList);
func_80ADE6D4(this);
} else if (this->unk_198 == 0) {
Actor_Kill(&this->actor);
@@ -925,11 +911,11 @@ void EnPoh_Update(Actor* thisx, GlobalContext* globalCtx) {
this->actor.update = EnPoh_UpdateLiving;
Actor_SetObjectDependency(globalCtx, &this->actor);
if (this->infoIdx == EN_POH_INFO_NORMAL) {
- SkelAnime_Init(globalCtx, &this->skelAnime, &D_060050D0, &D_06000A60, this->jointTable, this->morphTable,
+ SkelAnime_Init(globalCtx, &this->skelAnime, &gPoeSkel, &gPoeFloatAnim, this->jointTable, this->morphTable,
21);
this->actor.draw = EnPoh_DrawRegular;
} else {
- SkelAnime_InitFlex(globalCtx, &this->skelAnime, &D_06006F90, &D_060009DC, this->jointTable,
+ SkelAnime_InitFlex(globalCtx, &this->skelAnime, &gPoeComposerSkel, &gPoeComposerFloatAnim, this->jointTable,
this->morphTable, 12);
this->actor.draw = EnPoh_DrawComposer;
this->colliderSph.elements[0].dim.limb = 9;
@@ -1045,7 +1031,8 @@ s32 EnPoh_OverrideLimbDraw(GlobalContext* globalCtx, s32 limbIndex, Gfx** dList,
(this->actionFunc == func_80ADF15C && this->unk_198 >= 2)) {
*dList = NULL;
} else if (this->actor.params == EN_POH_FLAT && limbIndex == 0xA) {
- *dList = D_06004638;
+ // Replace Sharp's head with Flat's
+ *dList = gPoeComposerFlatHeadDL;
}
if (limbIndex == 0x13 && this->infoIdx == EN_POH_INFO_NORMAL) {
gDPPipeSync((*gfxP)++);
@@ -1061,7 +1048,7 @@ void EnPoh_PostLimbDraw(GlobalContext* globalCtx, s32 limbIndex, Gfx** dList, Ve
if (this->actionFunc == func_80ADF15C && this->unk_198 >= 2 && limbIndex == this->info->unk_7) {
gSPMatrix((*gfxP)++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_en_poh.c", 2460),
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
- gSPDisplayList((*gfxP)++, this->info->unk_20);
+ gSPDisplayList((*gfxP)++, this->info->burnDisplayList);
}
if (limbIndex == this->info->unk_6) {
if (this->actionFunc == func_80ADF15C && this->unk_198 >= 19 && 0.0f != this->actor.scale.x) {
@@ -1104,7 +1091,7 @@ void EnPoh_DrawRegular(Actor* thisx, GlobalContext* globalCtx) {
Matrix_Put(&this->unk_368);
gSPMatrix(POLY_OPA_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_en_poh.c", 2676),
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
- gSPDisplayList(POLY_OPA_DISP++, this->info->unk_1C);
+ gSPDisplayList(POLY_OPA_DISP++, this->info->lanternDisplayList);
CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_en_poh.c", 2681);
}
@@ -1155,11 +1142,11 @@ void EnPoh_DrawComposer(Actor* thisx, GlobalContext* globalCtx) {
Matrix_Put(&this->unk_368);
gSPMatrix(POLY_OPA_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_en_poh.c", 2787),
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
- gSPDisplayList(POLY_OPA_DISP++, this->info->unk_1C);
- gSPDisplayList(POLY_OPA_DISP++, D_06004498);
+ gSPDisplayList(POLY_OPA_DISP++, this->info->lanternDisplayList);
+ gSPDisplayList(POLY_OPA_DISP++, gPoeComposerLanternBottomDL);
gDPPipeSync(POLY_OPA_DISP++);
gDPSetEnvColor(POLY_OPA_DISP++, sp90->r, sp90->g, sp90->b, 255);
- gSPDisplayList(POLY_OPA_DISP++, D_06004530);
+ gSPDisplayList(POLY_OPA_DISP++, gPoeComposerLanternTopDL);
CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_en_poh.c", 2802);
}
@@ -1185,14 +1172,14 @@ void EnPoh_DrawSoul(Actor* thisx, GlobalContext* globalCtx) {
this->actor.world.pos.z, this->envColor.r, this->envColor.g, this->envColor.b, 200);
gSPMatrix(POLY_OPA_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_en_poh.c", 2854),
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
- gSPDisplayList(POLY_OPA_DISP++, this->info->unk_1C);
+ gSPDisplayList(POLY_OPA_DISP++, this->info->lanternDisplayList);
if (this->infoIdx == EN_POH_INFO_COMPOSER) {
Color_RGBA8* envColor = (this->actor.params == EN_POH_SHARP) ? &D_80AE1B4C : &D_80AE1B50;
s32 pad;
- gSPDisplayList(POLY_OPA_DISP++, D_06004498);
+ gSPDisplayList(POLY_OPA_DISP++, gPoeComposerLanternBottomDL);
gDPPipeSync(POLY_OPA_DISP++);
gDPSetEnvColor(POLY_OPA_DISP++, envColor->r, envColor->g, envColor->b, 255);
- gSPDisplayList(POLY_OPA_DISP++, D_06004530);
+ gSPDisplayList(POLY_OPA_DISP++, gPoeComposerLanternTopDL);
}
} else {
func_80093D84(globalCtx->state.gfxCtx);
diff --git a/src/overlays/actors/ovl_En_Poh/z_en_poh.h b/src/overlays/actors/ovl_En_Poh/z_en_poh.h
index cad0c23cf8..18deee44ae 100644
--- a/src/overlays/actors/ovl_En_Poh/z_en_poh.h
+++ b/src/overlays/actors/ovl_En_Poh/z_en_poh.h
@@ -26,12 +26,12 @@ typedef struct {
/* 0x0006 */ u8 unk_6; // limb index
/* 0x0006 */ u8 unk_7; // limb index
/* 0x0008 */ s8 unk_8; // rate of some kind
- /* 0x000C */ AnimationHeader* unk_C;
- /* 0x0010 */ AnimationHeader* unk_10;
- /* 0x0014 */ UNK_PTR unk_14;
- /* 0x0018 */ AnimationHeader* unk_18;
- /* 0x001C */ Gfx* unk_1C;
- /* 0x0020 */ Gfx* unk_20;
+ /* 0x000C */ AnimationHeader* idleAnim;
+ /* 0x0010 */ AnimationHeader* idleAnim2;
+ /* 0x0014 */ AnimationHeader* damageAnim;
+ /* 0x0018 */ AnimationHeader* fleeAnim;
+ /* 0x001C */ Gfx* lanternDisplayList;
+ /* 0x0020 */ Gfx* burnDisplayList;
/* 0x0024 */ Gfx* soulDisplayList;
} EnPohInfo; // size = 0x28
diff --git a/src/overlays/actors/ovl_En_Tk/z_en_tk.c b/src/overlays/actors/ovl_En_Tk/z_en_tk.c
index 608b402970..d432b48e25 100644
--- a/src/overlays/actors/ovl_En_Tk/z_en_tk.c
+++ b/src/overlays/actors/ovl_En_Tk/z_en_tk.c
@@ -6,6 +6,7 @@
#include "z_en_tk.h"
#include "objects/gameplay_keep/gameplay_keep.h"
+#include "objects/object_tk/object_tk.h"
#define FLAGS 0x00000009
@@ -21,17 +22,6 @@ void EnTk_Rest(EnTk* this, GlobalContext* globalCtx);
void EnTk_Walk(EnTk* this, GlobalContext* globalCtx);
void EnTk_Dig(EnTk* this, GlobalContext* globalCtx);
-extern AnimationHeader D_06001144;
-extern AnimationHeader D_06001FA8;
-extern AnimationHeader D_06002F84;
-extern UNK_TYPE D_06003B40;
-extern UNK_TYPE D_06004340;
-extern UNK_TYPE D_06004B40;
-extern Gfx D_0600ACE0[];
-extern Gfx D_0600BC90[];
-extern Gfx D_0600BCA0[];
-extern FlexSkeletonHeader D_0600BE40;
-
const ActorInit En_Tk_InitVars = {
ACTOR_EN_TK,
ACTORCAT_NPC,
@@ -111,7 +101,7 @@ void EnTkEff_Draw(EnTk* this, GlobalContext* globalCtx) {
if (eff->active != 0) {
if (gfxSetup == 0) {
POLY_XLU_DISP = Gfx_CallSetupDL(POLY_XLU_DISP, 0);
- gSPDisplayList(POLY_XLU_DISP++, D_0600BC90);
+ gSPDisplayList(POLY_XLU_DISP++, gDampeEff1DL);
gDPSetEnvColor(POLY_XLU_DISP++, 100, 60, 20, 0);
gfxSetup = 1;
}
@@ -129,7 +119,7 @@ void EnTkEff_Draw(EnTk* this, GlobalContext* globalCtx) {
imageIdx = eff->timeLeft * ((f32)ARRAY_COUNT(dustImages) / eff->timeTotal);
gSPSegment(POLY_XLU_DISP++, 0x08, SEGMENTED_TO_VIRTUAL(dustImages[imageIdx]));
- gSPDisplayList(POLY_XLU_DISP++, D_0600BCA0);
+ gSPDisplayList(POLY_XLU_DISP++, gDampeEff2DL);
}
eff++;
}
@@ -173,26 +163,28 @@ static ColliderCylinderInit sCylinderInit = {
static CollisionCheckInfoInit2 sColChkInfoInit = { 0, 0, 0, 0, MASS_IMMOVABLE };
void EnTk_RestAnim(EnTk* this, GlobalContext* globalCtx) {
- AnimationHeader* anim = &D_06002F84;
+ AnimationHeader* anim = &gDampeRestAnim;
- Animation_Change(&this->skelAnime, anim, 1.0f, 0.0f, Animation_GetLastFrame(&D_06002F84), ANIMMODE_LOOP, -10.0f);
+ Animation_Change(&this->skelAnime, anim, 1.0f, 0.0f, Animation_GetLastFrame(&gDampeRestAnim), ANIMMODE_LOOP,
+ -10.0f);
this->actionCountdown = Rand_S16Offset(60, 60);
this->actor.speedXZ = 0.0f;
}
void EnTk_WalkAnim(EnTk* this, GlobalContext* globalCtx) {
- AnimationHeader* anim = &D_06001FA8;
+ AnimationHeader* anim = &gDampeWalkAnim;
- Animation_Change(&this->skelAnime, anim, 1.0f, 0.0f, Animation_GetLastFrame(&D_06002F84), ANIMMODE_LOOP, -10.0f);
+ Animation_Change(&this->skelAnime, anim, 1.0f, 0.0f, Animation_GetLastFrame(&gDampeRestAnim), ANIMMODE_LOOP,
+ -10.0f);
this->actionCountdown = Rand_S16Offset(240, 240);
}
void EnTk_DigAnim(EnTk* this, GlobalContext* globalCtx) {
- AnimationHeader* anim = &D_06001144;
+ AnimationHeader* anim = &gDampeDigAnim;
- Animation_Change(&this->skelAnime, anim, 1.0f, 0.0f, Animation_GetLastFrame(&D_06001144), ANIMMODE_LOOP, -10.0f);
+ Animation_Change(&this->skelAnime, anim, 1.0f, 0.0f, Animation_GetLastFrame(&gDampeDigAnim), ANIMMODE_LOOP, -10.0f);
if (EnTk_CheckNextSpot(this, globalCtx) >= 0) {
this->validDigHere = 1;
@@ -290,7 +282,7 @@ f32 EnTk_Step(EnTk* this, GlobalContext* globalCtx) {
Audio_PlayActorSound2(&this->actor, NA_SE_EN_MORIBLIN_WALK);
}
- if (this->skelAnime.animation != &D_06001FA8) {
+ if (this->skelAnime.animation != &gDampeWalkAnim) {
return 0.0f;
}
@@ -492,9 +484,9 @@ void EnTk_Init(Actor* thisx, GlobalContext* globalCtx) {
ActorShape_Init(&this->actor.shape, 0, ActorShadow_DrawCircle, 24.0f);
- SkelAnime_InitFlex(globalCtx, &this->skelAnime, &D_0600BE40, NULL, this->jointTable, this->morphTable, 18);
- Animation_Change(&this->skelAnime, &D_06002F84, 1.0f, 0.0f, Animation_GetLastFrame(&D_06002F84), ANIMMODE_LOOP,
- 0.0f);
+ SkelAnime_InitFlex(globalCtx, &this->skelAnime, &gDampeSkel, NULL, this->jointTable, this->morphTable, 18);
+ Animation_Change(&this->skelAnime, &gDampeRestAnim, 1.0f, 0.0f, Animation_GetLastFrame(&gDampeRestAnim),
+ ANIMMODE_LOOP, 0.0f);
Collider_InitCylinder(globalCtx, &this->collider);
Collider_SetCylinder(globalCtx, &this->collider, &this->actor, &sCylinderInit);
@@ -684,7 +676,7 @@ void EnTk_Update(Actor* thisx, GlobalContext* globalCtx) {
void func_80B1D200(GlobalContext* globalCtx) {
OPEN_DISPS(globalCtx->state.gfxCtx, "../z_en_tk.c", 1188);
- gSPDisplayList(POLY_OPA_DISP++, D_0600ACE0);
+ gSPDisplayList(POLY_OPA_DISP++, gDampeShovelDL);
CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_en_tk.c", 1190);
}
@@ -725,10 +717,10 @@ void EnTk_PostLimbDraw(GlobalContext* globalCtx, s32 limbIndex, Gfx** dList, Vec
}
void EnTk_Draw(Actor* thisx, GlobalContext* globalCtx) {
- static UNK_PTR sEyesSegments[] = {
- 0x06003B40,
- 0x06004340,
- 0x06004B40,
+ static u64* sEyesSegments[] = {
+ gDampeEyeOpenTex,
+ gDampeEyeHalfOpenTex,
+ gDampeEyeClosedTex,
};
EnTk* this = THIS;
diff --git a/tools/Makefile b/tools/Makefile
index da52fcfb40..9b545d1a83 100644
--- a/tools/Makefile
+++ b/tools/Makefile
@@ -8,11 +8,9 @@ all: $(PROGRAMS)
clean:
$(RM) $(PROGRAMS) $(addsuffix .exe,$(PROGRAMS))
- $(RM) ZAPD/ZAPD.out
-# Need to clean the above line later...
+ $(MAKE) -C ZAPD clean
distclean: clean
- $(MAKE) -C ZAPD clean
.PHONY: all clean distclean
@@ -22,9 +20,6 @@ yaz0_SOURCES := yaz0tool.c yaz0.c util.c
makeromfs_SOURCES := makeromfs.c n64chksum.c util.c
vtxdis_SOURCES := vtxdis.c
-#$(ZAPD):
-# cd ZAPD && $(MAKE)
-
define COMPILE =
$(1): $($1_SOURCES)
$(CC) $(CFLAGS) $$^ -o $$@