mirror of https://github.com/zeldaret/mm.git
Document object_aob (Mamamu Yan's object) (#749)
This commit is contained in:
parent
72265fac92
commit
941f3e6949
|
@ -1,53 +1,65 @@
|
||||||
<Root>
|
<Root>
|
||||||
|
<!-- Assets for Mamamu Yan, the proprietor of the Doggy Racetrack. -->
|
||||||
<File Name="object_aob" Segment="6">
|
<File Name="object_aob" Segment="6">
|
||||||
<Animation Name="object_aob_Anim_00007C" Offset="0x7C" />
|
<!-- Unused dummied-out idle animation. Probably an OoT leftover, since her idle animation in that game has the same name. -->
|
||||||
<Limb Name="object_aob_Standardlimb_000090" Type="Standard" EnumName="OBJECT_AOB_LIMB_01" Offset="0x90" />
|
<Animation Name="gMamamuYanUnusedIdleAnim" Offset="0x7C" /> <!-- Original name is "Aob_mastu" (probably a misspelling of "matsu" or "wait") -->
|
||||||
<Limb Name="object_aob_Standardlimb_00009C" Type="Standard" EnumName="OBJECT_AOB_LIMB_02" Offset="0x9C" />
|
|
||||||
<Limb Name="object_aob_Standardlimb_0000A8" Type="Standard" EnumName="OBJECT_AOB_LIMB_03" Offset="0xA8" />
|
<!-- Mamamu Yan Limbs -->
|
||||||
<Limb Name="object_aob_Standardlimb_0000B4" Type="Standard" EnumName="OBJECT_AOB_LIMB_04" Offset="0xB4" />
|
<Limb Name="gMamamuYanDressLimb" Type="Standard" EnumName="MAMAMU_YAN_LIMB_DRESS" Offset="0x90" />
|
||||||
<Limb Name="object_aob_Standardlimb_0000C0" Type="Standard" EnumName="OBJECT_AOB_LIMB_05" Offset="0xC0" />
|
<Limb Name="gMamamuYanLeftThighLimb" Type="Standard" EnumName="MAMAMU_YAN_LIMB_LEFT_THIGH" Offset="0x9C" />
|
||||||
<Limb Name="object_aob_Standardlimb_0000CC" Type="Standard" EnumName="OBJECT_AOB_LIMB_06" Offset="0xCC" />
|
<Limb Name="gMamamuYanLeftShinLimb" Type="Standard" EnumName="MAMAMU_YAN_LIMB_LEFT_SHIN" Offset="0xA8" />
|
||||||
<Limb Name="object_aob_Standardlimb_0000D8" Type="Standard" EnumName="OBJECT_AOB_LIMB_07" Offset="0xD8" />
|
<Limb Name="gMamamuYanLeftFootLimb" Type="Standard" EnumName="MAMAMU_YAN_LIMB_LEFT_FOOT" Offset="0xB4" />
|
||||||
<Limb Name="object_aob_Standardlimb_0000E4" Type="Standard" EnumName="OBJECT_AOB_LIMB_08" Offset="0xE4" />
|
<Limb Name="gMamamuYanRightThighLimb" Type="Standard" EnumName="MAMAMU_YAN_LIMB_RIGHT_THIGH" Offset="0xC0" />
|
||||||
<Limb Name="object_aob_Standardlimb_0000F0" Type="Standard" EnumName="OBJECT_AOB_LIMB_09" Offset="0xF0" />
|
<Limb Name="gMamamuYanRightShinLimb" Type="Standard" EnumName="MAMAMU_YAN_LIMB_RIGHT_SHIN" Offset="0xCC" />
|
||||||
<Limb Name="object_aob_Standardlimb_0000FC" Type="Standard" EnumName="OBJECT_AOB_LIMB_0A" Offset="0xFC" />
|
<Limb Name="gMamamuYanRightFootLimb" Type="Standard" EnumName="MAMAMU_YAN_LIMB_RIGHT_FOOT" Offset="0xD8" />
|
||||||
<Limb Name="object_aob_Standardlimb_000108" Type="Standard" EnumName="OBJECT_AOB_LIMB_0B" Offset="0x108" />
|
<Limb Name="gMamamuYanTorsoLimb" Type="Standard" EnumName="MAMAMU_YAN_LIMB_TORSO" Offset="0xE4" />
|
||||||
<Limb Name="object_aob_Standardlimb_000114" Type="Standard" EnumName="OBJECT_AOB_LIMB_0C" Offset="0x114" />
|
<Limb Name="gMamamuYanLeftUpperArmLimb" Type="Standard" EnumName="MAMAMU_YAN_LIMB_LEFT_UPPER_ARM" Offset="0xF0" />
|
||||||
<Limb Name="object_aob_Standardlimb_000120" Type="Standard" EnumName="OBJECT_AOB_LIMB_0D" Offset="0x120" />
|
<Limb Name="gMamamuYanLeftForearmLimb" Type="Standard" EnumName="MAMAMU_YAN_LIMB_LEFT_FOREARM" Offset="0xFC" />
|
||||||
<Limb Name="object_aob_Standardlimb_00012C" Type="Standard" EnumName="OBJECT_AOB_LIMB_0E" Offset="0x12C" />
|
<Limb Name="gMamamuYanLeftHandLimb" Type="Standard" EnumName="MAMAMU_YAN_LIMB_LEFT_HAND" Offset="0x108" />
|
||||||
<Limb Name="object_aob_Standardlimb_000138" Type="Standard" EnumName="OBJECT_AOB_LIMB_0F" Offset="0x138" />
|
<Limb Name="gMamamuYanRightUpperArmLimb" Type="Standard" EnumName="MAMAMU_YAN_LIMB_RIGHT_UPPER_ARM" Offset="0x114" />
|
||||||
<Skeleton Name="object_aob_Skel_000180" Type="Flex" LimbType="Standard" LimbNone="OBJECT_AOB_LIMB_NONE" LimbMax="OBJECT_AOB_LIMB_MAX" EnumName="object_aob_Limbs" Offset="0x180" />
|
<Limb Name="gMamamuYanRightForearmLimb" Type="Standard" EnumName="MAMAMU_YAN_LIMB_RIGHT_FOREARM" Offset="0x120" />
|
||||||
<Texture Name="object_aob_TLUT_000198" OutName="tlut_000198" Format="rgba16" Width="16" Height="16" Offset="0x198" />
|
<Limb Name="gMamamuYanRightHandLimb" Type="Standard" EnumName="MAMAMU_YAN_LIMB_RIGHT_HAND" Offset="0x12C" />
|
||||||
<Texture Name="object_aob_Tex_000398" OutName="tex_000398" Format="ci8" Width="16" Height="16" Offset="0x398" />
|
<Limb Name="gMamamuYanHeadLimb" Type="Standard" EnumName="MAMAMU_YAN_LIMB_HEAD" Offset="0x138" />
|
||||||
<Texture Name="object_aob_Tex_000498" OutName="tex_000498" Format="ci8" Width="8" Height="8" Offset="0x498" />
|
|
||||||
<Texture Name="object_aob_Tex_0004D8" OutName="tex_0004D8" Format="ci8" Width="16" Height="16" Offset="0x4D8" />
|
<!-- Mamamu Yan Skeleton -->
|
||||||
<Texture Name="object_aob_Tex_0005D8" OutName="tex_0005D8" Format="ci8" Width="8" Height="8" Offset="0x5D8" />
|
<Skeleton Name="gMamamuYanSkel" Type="Flex" LimbType="Standard" LimbNone="MAMAMU_YAN_LIMB_NONE" LimbMax="MAMAMU_YAN_LIMB_MAX" EnumName="MamamuYanLimbs" Offset="0x180" />
|
||||||
<Texture Name="object_aob_Tex_000618" OutName="tex_000618" Format="ci8" Width="8" Height="8" Offset="0x618" />
|
|
||||||
<Texture Name="object_aob_Tex_000658" OutName="tex_000658" Format="rgba16" Width="32" Height="32" Offset="0x658" />
|
<!-- Mamamu Yan Textures -->
|
||||||
<Texture Name="object_aob_Tex_000E58" OutName="tex_000E58" Format="rgba16" Width="32" Height="32" Offset="0xE58" />
|
<Texture Name="gMamamuYanTLUT" OutName="mamamu_yan_tlut" Format="rgba16" Width="16" Height="16" Offset="0x198" />
|
||||||
<Texture Name="object_aob_Tex_001658" OutName="tex_001658" Format="rgba16" Width="32" Height="32" Offset="0x1658" />
|
<Texture Name="gMamamuYanHairTex" OutName="mamamu_yan_hair" Format="ci8" Width="16" Height="16" Offset="0x398" />
|
||||||
<Texture Name="object_aob_Tex_001E58" OutName="tex_001E58" Format="ci8" Width="16" Height="16" Offset="0x1E58" />
|
<Texture Name="gMamamuYanSkinTex" OutName="mamamu_yan_skin" Format="ci8" Width="8" Height="8" Offset="0x498" />
|
||||||
<Texture Name="object_aob_Tex_001F58" OutName="tex_001F58" Format="ci8" Width="8" Height="8" Offset="0x1F58" />
|
<Texture Name="gMamamuYanEarTex" OutName="mamamu_yan_ear" Format="ci8" Width="16" Height="16" Offset="0x4D8" />
|
||||||
<Texture Name="object_aob_Tex_001F98" OutName="tex_001F98" Format="ci8" Width="8" Height="8" Offset="0x1F98" />
|
<Texture Name="gMamamuYanLipsTex" OutName="mamamu_yan_lips" Format="ci8" Width="8" Height="8" Offset="0x5D8" />
|
||||||
<DList Name="object_aob_DL_003D18" Offset="0x3D18" />
|
<Texture Name="gMamamuYanNostrilTex" OutName="mamamu_yan_nostril" Format="ci8" Width="8" Height="8" Offset="0x618" />
|
||||||
<DList Name="object_aob_DL_0044D8" Offset="0x44D8" />
|
<Texture Name="gMamamuYanEyeOpenTex" OutName="mamamu_yan_eye_open" Format="rgba16" Width="32" Height="32" Offset="0x658" />
|
||||||
<DList Name="object_aob_DL_0046E0" Offset="0x46E0" />
|
<Texture Name="gMamamuYanEyeHalfTex" OutName="mamamu_yan_eye_half" Format="rgba16" Width="32" Height="32" Offset="0xE58" />
|
||||||
<DList Name="object_aob_DL_004810" Offset="0x4810" />
|
<Texture Name="gMamamuYanEyeClosedTex" OutName="mamamu_yan_eye_closed" Format="rgba16" Width="32" Height="32" Offset="0x1658" />
|
||||||
<DList Name="object_aob_DL_0049B8" Offset="0x49B8" />
|
<Texture Name="gMamamuYanFingersTex" OutName="mamamu_yan_fingers" Format="ci8" Width="16" Height="16" Offset="0x1E58" />
|
||||||
<DList Name="object_aob_DL_004BC0" Offset="0x4BC0" />
|
<Texture Name="gMamamuYanSleevesTex" OutName="mamamu_yan_sleeves" Format="ci8" Width="8" Height="8" Offset="0x1F58" />
|
||||||
<DList Name="object_aob_DL_004CF0" Offset="0x4CF0" />
|
<Texture Name="gMamamuYanDressTex" OutName="mamamu_yan_dress" Format="ci8" Width="8" Height="8" Offset="0x1F98" />
|
||||||
<DList Name="object_aob_DL_004E98" Offset="0x4E98" />
|
|
||||||
<DList Name="object_aob_DL_005138" Offset="0x5138" />
|
<!-- Mamamu Yan Limb DisplayLists -->
|
||||||
<DList Name="object_aob_DL_005208" Offset="0x5208" />
|
<DList Name="gMamamuYanHeadDL" Offset="0x3D18" />
|
||||||
<DList Name="object_aob_DL_0052D8" Offset="0x52D8" />
|
<DList Name="gMamamuYanRightHandDL" Offset="0x44D8" />
|
||||||
<DList Name="object_aob_DL_0053A8" Offset="0x53A8" />
|
<DList Name="gMamamuYanRightForearmDL" Offset="0x46E0" />
|
||||||
<DList Name="object_aob_DL_005478" Offset="0x5478" />
|
<DList Name="gMamamuYanRightUpperArmDL" Offset="0x4810" />
|
||||||
<DList Name="object_aob_DL_005548" Offset="0x5548" />
|
<DList Name="gMamamuYanLeftHandDL" Offset="0x49B8" />
|
||||||
<DList Name="object_aob_DL_005618" Offset="0x5618" />
|
<DList Name="gMamamuYanLeftForearmDL" Offset="0x4BC0" />
|
||||||
<Animation Name="object_aob_Anim_0058EC" Offset="0x58EC" />
|
<DList Name="gMamamuYanLeftUpperArmDL" Offset="0x4CF0" />
|
||||||
<Animation Name="object_aob_Anim_006040" Offset="0x6040" />
|
<DList Name="gMamamuYanTorsoDL" Offset="0x4E98" />
|
||||||
<Animation Name="object_aob_Anim_0068B4" Offset="0x68B4" />
|
<DList Name="gMamamuYanRightFootDL" Offset="0x5138" /> <!-- Renders a single triangle instead of a normal-looking limb -->
|
||||||
<Animation Name="object_aob_Anim_00700C" Offset="0x700C" />
|
<DList Name="gMamamuYanRightShinDL" Offset="0x5208" /> <!-- Renders a single triangle instead of a normal-looking limb -->
|
||||||
<Animation Name="object_aob_Anim_007758" Offset="0x7758" />
|
<DList Name="gMamamuYanRightThighDL" Offset="0x52D8" /> <!-- Renders a single triangle instead of a normal-looking limb -->
|
||||||
|
<DList Name="gMamamuYanLeftFootDL" Offset="0x53A8" /> <!-- Renders a single triangle instead of a normal-looking limb -->
|
||||||
|
<DList Name="gMamamuYanLeftShinDL" Offset="0x5478" /> <!-- Renders a single triangle instead of a normal-looking limb -->
|
||||||
|
<DList Name="gMamamuYanLeftThighDL" Offset="0x5548" /> <!-- Renders a single triangle instead of a normal-looking limb -->
|
||||||
|
<DList Name="gMamamuYanDressDL" Offset="0x5618" />
|
||||||
|
|
||||||
|
<!-- Mamamu Yan Animations -->
|
||||||
|
<Animation Name="gMamamuYanSurpriseStartAnim" Offset="0x58EC" /> <!-- Original name is "Aob_odoroku" ("surprise") -->
|
||||||
|
<Animation Name="gMamamuYanSurpriseLoopAnim" Offset="0x6040" /> <!-- Original name is "Aob_odorokuroop" -->
|
||||||
|
<Animation Name="gMamamuYanLaughStartAnim" Offset="0x68B4" /> <!-- Original name is "Aob_sikkari" (reference to her catchphrase in the Japanese text) -->
|
||||||
|
<Animation Name="gMamamuYanLaughLoopAnim" Offset="0x700C" /> <!-- Original name is "Aob_sikkariroop" -->
|
||||||
|
<Animation Name="gMamamuYanIdleAnim" Offset="0x7758" /> <!-- Original name is "Aob_wait" -->
|
||||||
</File>
|
</File>
|
||||||
</Root>
|
</Root>
|
||||||
|
|
|
@ -12,7 +12,7 @@
|
||||||
#include "objects/object_os_anime/object_os_anime.h"
|
#include "objects/object_os_anime/object_os_anime.h"
|
||||||
|
|
||||||
static AnimationInfoS sAnimations[] = {
|
static AnimationInfoS sAnimations[] = {
|
||||||
{ &object_aob_Anim_00007C, 1.0f, 0, -1, ANIMMODE_LOOP, 0 },
|
{ &gMamamuYanUnusedIdleAnim, 1.0f, 0, -1, ANIMMODE_LOOP, 0 },
|
||||||
{ &object_boj_Anim_001494, 1.0f, 0, -1, ANIMMODE_LOOP, 0 },
|
{ &object_boj_Anim_001494, 1.0f, 0, -1, ANIMMODE_LOOP, 0 },
|
||||||
{ &object_boj_Anim_001494, 1.0f, 0, -1, ANIMMODE_LOOP, -8 },
|
{ &object_boj_Anim_001494, 1.0f, 0, -1, ANIMMODE_LOOP, -8 },
|
||||||
{ &object_boj_Anim_001908, 1.0f, 0, -1, ANIMMODE_LOOP, 0 },
|
{ &object_boj_Anim_001908, 1.0f, 0, -1, ANIMMODE_LOOP, 0 },
|
||||||
|
|
|
@ -7,7 +7,6 @@
|
||||||
#include "z_en_aob_01.h"
|
#include "z_en_aob_01.h"
|
||||||
#include "overlays/actors/ovl_En_Racedog/z_en_racedog.h"
|
#include "overlays/actors/ovl_En_Racedog/z_en_racedog.h"
|
||||||
#include "overlays/actors/ovl_En_Dg/z_en_dg.h"
|
#include "overlays/actors/ovl_En_Dg/z_en_dg.h"
|
||||||
#include "objects/object_aob/object_aob.h"
|
|
||||||
|
|
||||||
#define FLAGS (ACTOR_FLAG_1 | ACTOR_FLAG_8 | ACTOR_FLAG_10)
|
#define FLAGS (ACTOR_FLAG_1 | ACTOR_FLAG_8 | ACTOR_FLAG_10)
|
||||||
|
|
||||||
|
@ -46,12 +45,12 @@ const ActorInit En_Aob_01_InitVars = {
|
||||||
};
|
};
|
||||||
|
|
||||||
static AnimationInfo D_809C3790[6] = {
|
static AnimationInfo D_809C3790[6] = {
|
||||||
{ &object_aob_Anim_007758, 1.0f, 0.0f, 0.0f, ANIMMODE_LOOP, 0.0f },
|
{ &gMamamuYanIdleAnim, 1.0f, 0.0f, 0.0f, ANIMMODE_LOOP, 0.0f },
|
||||||
{ &object_aob_Anim_0068B4, 1.0f, 0.0f, 0.0f, ANIMMODE_ONCE, 0.0f },
|
{ &gMamamuYanLaughStartAnim, 1.0f, 0.0f, 0.0f, ANIMMODE_ONCE, 0.0f },
|
||||||
{ &object_aob_Anim_00700C, 1.0f, 0.0f, 0.0f, ANIMMODE_LOOP, 0.0f },
|
{ &gMamamuYanLaughLoopAnim, 1.0f, 0.0f, 0.0f, ANIMMODE_LOOP, 0.0f },
|
||||||
{ &object_aob_Anim_0058EC, 1.0f, 0.0f, 0.0f, ANIMMODE_ONCE, 0.0f },
|
{ &gMamamuYanSurpriseStartAnim, 1.0f, 0.0f, 0.0f, ANIMMODE_ONCE, 0.0f },
|
||||||
{ &object_aob_Anim_006040, 1.0f, 0.0f, 0.0f, ANIMMODE_LOOP, 0.0f },
|
{ &gMamamuYanSurpriseLoopAnim, 1.0f, 0.0f, 0.0f, ANIMMODE_LOOP, 0.0f },
|
||||||
{ &object_aob_Anim_007758, 1.0f, 0.0f, 0.0f, ANIMMODE_LOOP, -6.0f },
|
{ &gMamamuYanIdleAnim, 1.0f, 0.0f, 0.0f, ANIMMODE_LOOP, -6.0f },
|
||||||
};
|
};
|
||||||
|
|
||||||
static ColliderCylinderInit sCylinderInit = {
|
static ColliderCylinderInit sCylinderInit = {
|
||||||
|
@ -91,11 +90,11 @@ static EnAobStruct D_809C384C[] = {
|
||||||
};
|
};
|
||||||
|
|
||||||
void func_809C10B0(EnAob01* this, s32 arg1) {
|
void func_809C10B0(EnAob01* this, s32 arg1) {
|
||||||
if (DECR(this->unk_3F0) == 0) {
|
if (DECR(this->blinkTimer) == 0) {
|
||||||
this->unk_3EE++;
|
this->eyeIndex++;
|
||||||
if (this->unk_3EE >= arg1) {
|
if (this->eyeIndex >= arg1) {
|
||||||
this->unk_3EE = 0;
|
this->eyeIndex = 0;
|
||||||
this->unk_3F0 = Rand_S16Offset(30, 30);
|
this->blinkTimer = Rand_S16Offset(30, 30);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -925,8 +924,8 @@ void EnAob01_Init(Actor* thisx, GlobalContext* globalCtx) {
|
||||||
EnAob01* this = THIS;
|
EnAob01* this = THIS;
|
||||||
|
|
||||||
ActorShape_Init(&this->actor.shape, 0.0f, NULL, 0.0f);
|
ActorShape_Init(&this->actor.shape, 0.0f, NULL, 0.0f);
|
||||||
SkelAnime_InitFlex(globalCtx, &this->skelAnime, &object_aob_Skel_000180, NULL, this->jointTable, this->morphTable,
|
SkelAnime_InitFlex(globalCtx, &this->skelAnime, &gMamamuYanSkel, NULL, this->jointTable, this->morphTable,
|
||||||
16);
|
MAMAMU_YAN_LIMB_MAX);
|
||||||
Collider_InitCylinder(globalCtx, &this->collider);
|
Collider_InitCylinder(globalCtx, &this->collider);
|
||||||
Collider_SetCylinder(globalCtx, &this->collider, &this->actor, &sCylinderInit);
|
Collider_SetCylinder(globalCtx, &this->collider, &this->actor, &sCylinderInit);
|
||||||
this->unk_43C = 0;
|
this->unk_43C = 0;
|
||||||
|
@ -982,35 +981,36 @@ void EnAob01_Update(Actor* thisx, GlobalContext* globalCtx) {
|
||||||
s32 EnAob01_OverrideLimbDraw(GlobalContext* globalCtx, s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3s* rot,
|
s32 EnAob01_OverrideLimbDraw(GlobalContext* globalCtx, s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3s* rot,
|
||||||
Actor* thisx) {
|
Actor* thisx) {
|
||||||
EnAob01* this = THIS;
|
EnAob01* this = THIS;
|
||||||
TexturePtr sp38[] = {
|
TexturePtr eyeTextures[] = {
|
||||||
object_aob_Tex_000658,
|
gMamamuYanEyeOpenTex,
|
||||||
object_aob_Tex_000E58,
|
gMamamuYanEyeHalfTex,
|
||||||
object_aob_Tex_001658,
|
gMamamuYanEyeClosedTex,
|
||||||
};
|
};
|
||||||
|
|
||||||
if (limbIndex == 15) {
|
if (limbIndex == MAMAMU_YAN_LIMB_HEAD) {
|
||||||
OPEN_DISPS(globalCtx->state.gfxCtx);
|
OPEN_DISPS(globalCtx->state.gfxCtx);
|
||||||
|
|
||||||
*dList = object_aob_DL_003D18;
|
*dList = gMamamuYanHeadDL;
|
||||||
|
|
||||||
gSPSegment(POLY_OPA_DISP++, 0x0A, Lib_SegmentedToVirtual(sp38[this->unk_3EE]));
|
gSPSegment(POLY_OPA_DISP++, 0x0A, Lib_SegmentedToVirtual(eyeTextures[this->eyeIndex]));
|
||||||
|
|
||||||
CLOSE_DISPS(globalCtx->state.gfxCtx);
|
CLOSE_DISPS(globalCtx->state.gfxCtx);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (limbIndex == 15) {
|
if (limbIndex == MAMAMU_YAN_LIMB_HEAD) {
|
||||||
Matrix_InsertTranslation(1500.0f, 0.0f, 0.0f, MTXMODE_APPLY);
|
Matrix_InsertTranslation(1500.0f, 0.0f, 0.0f, MTXMODE_APPLY);
|
||||||
Matrix_InsertXRotation_s(this->unk_2DA.y, MTXMODE_APPLY);
|
Matrix_InsertXRotation_s(this->unk_2DA.y, MTXMODE_APPLY);
|
||||||
Matrix_InsertZRotation_s(this->unk_2DA.x * -1, MTXMODE_APPLY);
|
Matrix_InsertZRotation_s(this->unk_2DA.x * -1, MTXMODE_APPLY);
|
||||||
Matrix_InsertTranslation(-1500.0f, 0.0f, 0.0f, MTXMODE_APPLY);
|
Matrix_InsertTranslation(-1500.0f, 0.0f, 0.0f, MTXMODE_APPLY);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (limbIndex == 8) {
|
if (limbIndex == MAMAMU_YAN_LIMB_TORSO) {
|
||||||
Matrix_InsertXRotation_s(this->unk_2E0.y * -1, MTXMODE_APPLY);
|
Matrix_InsertXRotation_s(this->unk_2E0.y * -1, MTXMODE_APPLY);
|
||||||
Matrix_InsertZRotation_s(this->unk_2E0.x * -1, MTXMODE_APPLY);
|
Matrix_InsertZRotation_s(this->unk_2E0.x * -1, MTXMODE_APPLY);
|
||||||
}
|
}
|
||||||
|
|
||||||
if ((limbIndex == 8) || (limbIndex == 9) || (limbIndex == 12)) {
|
if ((limbIndex == MAMAMU_YAN_LIMB_TORSO) || (limbIndex == MAMAMU_YAN_LIMB_LEFT_UPPER_ARM) ||
|
||||||
|
(limbIndex == MAMAMU_YAN_LIMB_RIGHT_UPPER_ARM)) {
|
||||||
rot->y += (s16)Math_SinS(this->unk_2F8[limbIndex]) * 200;
|
rot->y += (s16)Math_SinS(this->unk_2F8[limbIndex]) * 200;
|
||||||
rot->z += (s16)Math_CosS(this->unk_318[limbIndex]) * 200;
|
rot->z += (s16)Math_CosS(this->unk_318[limbIndex]) * 200;
|
||||||
}
|
}
|
||||||
|
@ -1021,7 +1021,7 @@ void EnAob01_PostLimbDraw(GlobalContext* globalCtx, s32 limbIndex, Gfx** dList,
|
||||||
static Vec3f D_809C3968 = { 0.0f, 0.0f, 0.0f };
|
static Vec3f D_809C3968 = { 0.0f, 0.0f, 0.0f };
|
||||||
EnAob01* this = THIS;
|
EnAob01* this = THIS;
|
||||||
|
|
||||||
if (limbIndex == 15) {
|
if (limbIndex == MAMAMU_YAN_LIMB_HEAD) {
|
||||||
Matrix_MultiplyVector3fByState(&D_809C3968, &this->actor.focus.pos);
|
Matrix_MultiplyVector3fByState(&D_809C3968, &this->actor.focus.pos);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -2,6 +2,7 @@
|
||||||
#define Z_EN_AOB_01_H
|
#define Z_EN_AOB_01_H
|
||||||
|
|
||||||
#include "global.h"
|
#include "global.h"
|
||||||
|
#include "objects/object_aob/object_aob.h"
|
||||||
|
|
||||||
struct EnAob01;
|
struct EnAob01;
|
||||||
|
|
||||||
|
@ -17,8 +18,8 @@ typedef struct EnAob01 {
|
||||||
/* 0x18C */ ColliderCylinder collider;
|
/* 0x18C */ ColliderCylinder collider;
|
||||||
/* 0x1D8 */ Path* unk_1D8[14];
|
/* 0x1D8 */ Path* unk_1D8[14];
|
||||||
/* 0x210 */ u16 unk_210;
|
/* 0x210 */ u16 unk_210;
|
||||||
/* 0x212 */ Vec3s jointTable[16];
|
/* 0x212 */ Vec3s jointTable[MAMAMU_YAN_LIMB_MAX];
|
||||||
/* 0x272 */ Vec3s morphTable[16];
|
/* 0x272 */ Vec3s morphTable[MAMAMU_YAN_LIMB_MAX];
|
||||||
/* 0x2D2 */ u16 unk_2D2;
|
/* 0x2D2 */ u16 unk_2D2;
|
||||||
/* 0x2D4 */ Vec3s unk_2D4;
|
/* 0x2D4 */ Vec3s unk_2D4;
|
||||||
/* 0x2DA */ Vec3s unk_2DA;
|
/* 0x2DA */ Vec3s unk_2DA;
|
||||||
|
@ -26,11 +27,11 @@ typedef struct EnAob01 {
|
||||||
/* 0x2E6 */ Vec3s unk_2E6;
|
/* 0x2E6 */ Vec3s unk_2E6;
|
||||||
/* 0x2EC */ Vec3s unk_2EC;
|
/* 0x2EC */ Vec3s unk_2EC;
|
||||||
/* 0x2F2 */ Vec3s unk_2F2;
|
/* 0x2F2 */ Vec3s unk_2F2;
|
||||||
/* 0x2F8 */ s16 unk_2F8[16];
|
/* 0x2F8 */ s16 unk_2F8[MAMAMU_YAN_LIMB_MAX];
|
||||||
/* 0x318 */ s16 unk_318[16];
|
/* 0x318 */ s16 unk_318[MAMAMU_YAN_LIMB_MAX];
|
||||||
/* 0x338 */ UNK_TYPE1 unk338[0xB6];
|
/* 0x338 */ UNK_TYPE1 unk338[0xB6];
|
||||||
/* 0x3EE */ s16 unk_3EE;
|
/* 0x3EE */ s16 eyeIndex;
|
||||||
/* 0x3F0 */ s16 unk_3F0;
|
/* 0x3F0 */ s16 blinkTimer;
|
||||||
/* 0x3F4 */ Actor* unk_3F4;
|
/* 0x3F4 */ Actor* unk_3F4;
|
||||||
/* 0x3F8 */ Actor* unk_3F8[14];
|
/* 0x3F8 */ Actor* unk_3F8[14];
|
||||||
/* 0x430 */ s16 unk_430;
|
/* 0x430 */ s16 unk_430;
|
||||||
|
|
Loading…
Reference in New Issue