Document object_gmo (#517)

* Update XML for gmo

* Update object references in Baguo

* Add comment to indicate potential original name

* Update unused idle animation
This commit is contained in:
Tom Overton 2021-12-26 19:23:04 -08:00 committed by GitHub
parent d2c411e132
commit 8f11e841a7
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 16 additions and 24 deletions

View File

@ -1,13 +1,15 @@
<Root>
<File Name="object_gmo" Segment="6">
<Animation Name="object_gmo_Anim_000018" Offset="0x18" />
<DList Name="object_gmo_DL_000B70" Offset="0xB70" />
<DList Name="object_gmo_DL_000E38" Offset="0xE38" />
<Texture Name="object_gmo_TLUT_000EC8" OutName="tlut_000EC8" Format="rgba16" Width="16" Height="16" Offset="0xEC8" />
<Texture Name="object_gmo_Tex_0010C8" OutName="tex_0010C8" Format="ci8" Width="32" Height="32" Offset="0x10C8" />
<!-- <Blob Name="object_gmo_Blob_0014C8" Size="0xC00" Offset="0x14C8" /> -->
<Limb Name="object_gmo_Standardlimb_0020C8" Type="Standard" Offset="0x20C8" />
<Limb Name="object_gmo_Standardlimb_0020D4" Type="Standard" Offset="0x20D4" />
<Skeleton Name="object_gmo_Skel_0020E8" Type="Normal" LimbType="Standard" Offset="0x20E8" />
<Animation Name="gNejironIdleAnim" Offset="0x18" /> <!-- Original name might be "gm_default" -->
<DList Name="gNejironBodyDL" Offset="0xB70" />
<DList Name="gNejironEyesDL" Offset="0xE38" />
<Texture Name="gNejironBodyTLUT" OutName="nejiron_body_palette" Format="rgba16" Width="16" Height="16" Offset="0xEC8" />
<Texture Name="gNejironBodyTex" OutName="nejiron_body" Format="ci8" Width="32" Height="32" Offset="0x10C8" />
<Texture Name="gNejironEyeOpenTex" OutName="nejiron_eye_open" Format="rgba16" Width="16" Height="32" Offset="0x14C8" />
<Texture Name="gNejironEyeHalfTex" OutName="nejiron_eye_half" Format="rgba16" Width="16" Height="32" Offset="0x18C8" />
<Texture Name="gNejironEyeClosedTex" OutName="nejiron_eye_closed" Format="rgba16" Width="16" Height="32" Offset="0x1CC8" />
<Limb Name="gNejironBodyLimb" Type="Standard" Offset="0x20C8" />
<Limb Name="gNejironEyeLimb" Type="Standard" Offset="0x20D4" />
<Skeleton Name="gNejironSkel" Type="Normal" LimbType="Standard" Offset="0x20E8" />
</File>
</Root>

View File

@ -5,6 +5,8 @@
*/
#include "z_en_baguo.h"
#include "objects/object_gmo/object_gmo.h"
#include "objects/gameplay_keep/gameplay_keep.h"
#define FLAGS 0x00000005
@ -106,16 +108,11 @@ static DamageTable sDamageTable = {
/* Powder Keg */ DMG_ENTRY(1, NEJIRON_DMGEFF_KILL),
};
extern Gfx D_060014C8;
extern Gfx D_060018C8;
extern Gfx D_06001CC8;
extern SkeletonHeader D_060020E8;
void EnBaguo_Init(Actor* thisx, GlobalContext* globalCtx) {
EnBaguo* this = THIS;
ActorShape_Init(&this->actor.shape, 0.0f, func_800B3FC0, 0.0f);
SkelAnime_Init(globalCtx, &this->skelAnime, &D_060020E8, NULL, this->jointTable, this->morphTable, 3);
SkelAnime_Init(globalCtx, &this->skelAnime, &gNejironSkel, NULL, this->jointTable, this->morphTable, 3);
this->actor.hintId = 0xB;
this->maxDistanceFromHome = 240.0f;
this->maxDistanceFromHome += this->actor.world.rot.z * 40.0f;
@ -390,7 +387,7 @@ void EnBaguo_PostLimbDraw(GlobalContext* globalCtx, s32 limbIndex, Gfx** dList,
}
void EnBaguo_DrawBody(Actor* thisx, GlobalContext* globalCtx) {
static TexturePtr sEyeTextures[] = { &D_060014C8, &D_060018C8, &D_06001CC8 };
static TexturePtr sEyeTextures[] = { &gNejironEyeOpenTex, &gNejironEyeHalfTex, &gNejironEyeClosedTex };
EnBaguo* this = THIS;
Gfx* gfx;
s32 eyeIndex;
@ -483,7 +480,7 @@ void EnBaguo_DrawRockParticles(EnBaguo* this, GlobalContext* globalCtx) {
Matrix_Scale(particle->scale, particle->scale, particle->scale, MTXMODE_APPLY);
gSPMatrix(POLY_OPA_DISP++, Matrix_NewMtx(gfxCtx), G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
gDPSetPrimColor(POLY_OPA_DISP++, 0, 1, 255, 255, 255, 255);
gSPDisplayList(POLY_OPA_DISP++, &D_0401FA40);
gSPDisplayList(POLY_OPA_DISP++, &gameplay_keep_DL_01FA40);
}
}
CLOSE_DISPS(gfxCtx);

View File

@ -1594,13 +1594,6 @@ D_06005EF0 = 0x06005EF0;
D_06006B10 = 0x06006B10;
D_060092A0 = 0x060092A0;
// ovl_En_Baguo
D_060014C8 = 0x060014C8;
D_060018C8 = 0x060018C8;
D_06001CC8 = 0x06001CC8;
D_060020E8 = 0x060020E8;
// ovl_En_Baisen
D_060008B4 = 0x060008B4;