Document object_skb (#1404)

* object_skb: Limb and Anim docs

* object_skb: DL and text docs

* Formatting changed files

* Changed names for some bones to reflect oot names

* updating some names to address code review comments

* Whoops, forgot to change the name of MAX

* Rename EnHinkSkbAnimation in src/overlays/actors/ovl_En_Hint_Skb/z_en_hint_skb.c

Co-authored-by: engineer124 <47598039+engineer124@users.noreply.github.com>

* Changed STALCHILD_ANIM_x to STALCHILD_HINT_ANIM_x

* forgot to rename both parts of a typedef enum

* gStalchildSwingOnBranch missing Anim tag

Co-authored-by: engineer124 <47598039+engineer124@users.noreply.github.com>

* Fixed all instances of gStalchildSwingOnBranchAnim

---------

Co-authored-by: engineer124 <47598039+engineer124@users.noreply.github.com>
This commit is contained in:
Zach North 2023-10-07 01:11:10 -04:00 committed by GitHub
parent 43df8f4454
commit da0c9072f5
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
5 changed files with 164 additions and 162 deletions

View File

@ -1,64 +1,65 @@
<Root>
<!-- Assets for Stalchild -->
<File Name="object_skb" Segment="6">
<Animation Name="object_skb_Anim_0009E4" Offset="0x9E4" />
<Animation Name="object_skb_Anim_0015EC" Offset="0x15EC" />
<Animation Name="object_skb_Anim_001D1C" Offset="0x1D1C" />
<Animation Name="object_skb_Anim_002190" Offset="0x2190" />
<Animation Name="gStalchildIdleAnim" Offset="0x9E4" />
<Animation Name="gStalchildSaluteAnim" Offset="0x15EC" />
<Animation Name="gStalchildSwingOnBranchAnim" Offset="0x1D1C" />
<Animation Name="gStalchildAttackAnim" Offset="0x2190" />
<!-- <Blob Name="object_skb_zeroes_unk_000021A0" Size="0x20" Offset="0x21A0" /> -->
<Animation Name="object_skb_Anim_00270C" Offset="0x270C" />
<Animation Name="gStalchildCollapseAnim" Offset="0x270C" />
<!-- <Blob Name="object_skb_zeroes_unk_00002720" Size="0x20" Offset="0x2720" /> -->
<Animation Name="object_skb_Anim_002AC8" Offset="0x2AC8" />
<Animation Name="gStalchildStaggerAnim" Offset="0x2AC8" />
<!-- <Blob Name="object_skb_zeroes_unk_00002AE0" Size="0x10" Offset="0x2AE0" /> -->
<Animation Name="object_skb_Anim_003584" Offset="0x3584" />
<Texture Name="object_skb_Tex_0035A0" OutName="tex_0035A0" Format="rgba16" Width="16" Height="16" Offset="0x35A0" />
<Texture Name="object_skb_Tex_0037A0" OutName="tex_0037A0" Format="rgba16" Width="8" Height="16" Offset="0x37A0" />
<Texture Name="object_skb_Tex_0038A0" OutName="tex_0038A0" Format="rgba16" Width="8" Height="8" Offset="0x38A0" />
<Texture Name="object_skb_Tex_003920" OutName="tex_003920" Format="rgba16" Width="8" Height="8" Offset="0x3920" />
<Texture Name="object_skb_Tex_0039A0" OutName="tex_0039A0" Format="rgba16" Width="8" Height="8" Offset="0x39A0" />
<Texture Name="object_skb_Tex_003A20" OutName="tex_003A20" Format="rgba16" Width="8" Height="16" Offset="0x3A20" />
<Texture Name="object_skb_Tex_003B20" OutName="tex_003B20" Format="rgba16" Width="16" Height="8" Offset="0x3B20" />
<Texture Name="object_skb_Tex_003C20" OutName="tex_003C20" Format="rgba16" Width="16" Height="16" Offset="0x3C20" />
<Texture Name="object_skb_Tex_003E20" OutName="tex_003E20" Format="rgba16" Width="8" Height="8" Offset="0x3E20" />
<DList Name="object_skb_DL_004F30" Offset="0x4F30" />
<DList Name="object_skb_DL_005298" Offset="0x5298" />
<DList Name="object_skb_DL_005340" Offset="0x5340" />
<DList Name="object_skb_DL_005408" Offset="0x5408" />
<DList Name="object_skb_DL_0054A0" Offset="0x54A0" />
<DList Name="object_skb_DL_0055A8" Offset="0x55A8" />
<DList Name="object_skb_DL_005668" Offset="0x5668" />
<DList Name="object_skb_DL_005710" Offset="0x5710" />
<DList Name="object_skb_DL_0057D8" Offset="0x57D8" />
<DList Name="object_skb_DL_005898" Offset="0x5898" />
<DList Name="object_skb_DL_005940" Offset="0x5940" />
<DList Name="object_skb_DL_005A08" Offset="0x5A08" />
<DList Name="object_skb_DL_005AA0" Offset="0x5AA0" />
<DList Name="object_skb_DL_005B48" Offset="0x5B48" />
<DList Name="object_skb_DL_005BE8" Offset="0x5BE8" />
<DList Name="object_skb_DL_005C80" Offset="0x5C80" />
<DList Name="object_skb_DL_005D28" Offset="0x5D28" />
<Limb Name="object_skb_Standardlimb_005DC8" Type="Standard" EnumName="OBJECT_SKB_LIMB_01" Offset="0x5DC8" />
<Limb Name="object_skb_Standardlimb_005DD4" Type="Standard" EnumName="OBJECT_SKB_LIMB_02" Offset="0x5DD4" />
<Limb Name="object_skb_Standardlimb_005DE0" Type="Standard" EnumName="OBJECT_SKB_LIMB_03" Offset="0x5DE0" />
<Limb Name="object_skb_Standardlimb_005DEC" Type="Standard" EnumName="OBJECT_SKB_LIMB_04" Offset="0x5DEC" />
<Limb Name="object_skb_Standardlimb_005DF8" Type="Standard" EnumName="OBJECT_SKB_LIMB_05" Offset="0x5DF8" />
<Limb Name="object_skb_Standardlimb_005E04" Type="Standard" EnumName="OBJECT_SKB_LIMB_06" Offset="0x5E04" />
<Limb Name="object_skb_Standardlimb_005E10" Type="Standard" EnumName="OBJECT_SKB_LIMB_07" Offset="0x5E10" />
<Limb Name="object_skb_Standardlimb_005E1C" Type="Standard" EnumName="OBJECT_SKB_LIMB_08" Offset="0x5E1C" />
<Limb Name="object_skb_Standardlimb_005E28" Type="Standard" EnumName="OBJECT_SKB_LIMB_09" Offset="0x5E28" />
<Limb Name="object_skb_Standardlimb_005E34" Type="Standard" EnumName="OBJECT_SKB_LIMB_0A" Offset="0x5E34" />
<Limb Name="object_skb_Standardlimb_005E40" Type="Standard" EnumName="OBJECT_SKB_LIMB_0B" Offset="0x5E40" />
<Limb Name="object_skb_Standardlimb_005E4C" Type="Standard" EnumName="OBJECT_SKB_LIMB_0C" Offset="0x5E4C" />
<Limb Name="object_skb_Standardlimb_005E58" Type="Standard" EnumName="OBJECT_SKB_LIMB_0D" Offset="0x5E58" />
<Limb Name="object_skb_Standardlimb_005E64" Type="Standard" EnumName="OBJECT_SKB_LIMB_0E" Offset="0x5E64" />
<Limb Name="object_skb_Standardlimb_005E70" Type="Standard" EnumName="OBJECT_SKB_LIMB_0F" Offset="0x5E70" />
<Limb Name="object_skb_Standardlimb_005E7C" Type="Standard" EnumName="OBJECT_SKB_LIMB_10" Offset="0x5E7C" />
<Limb Name="object_skb_Standardlimb_005E88" Type="Standard" EnumName="OBJECT_SKB_LIMB_11" Offset="0x5E88" />
<Limb Name="object_skb_Standardlimb_005E94" Type="Standard" EnumName="OBJECT_SKB_LIMB_12" Offset="0x5E94" />
<Limb Name="object_skb_Standardlimb_005EA0" Type="Standard" EnumName="OBJECT_SKB_LIMB_13" Offset="0x5EA0" />
<Skeleton Name="object_skb_Skel_005EF8" Type="Normal" LimbType="Standard" LimbNone="OBJECT_SKB_LIMB_NONE" LimbMax="OBJECT_SKB_LIMB_MAX" EnumName="ObjectSkbLimb" Offset="0x5EF8" />
<Animation Name="object_skb_Anim_0064E0" Offset="0x64E0" />
<Animation Name="gStalchildStandUpAnim" Offset="0x3584" />
<Texture Name="gStalchildPelvisTex" OutName="stalchild_pelvis" Format="rgba16" Width="16" Height="16" Offset="0x35A0" />
<Texture Name="gStalchildRibcageTex" OutName="stalchild_ribcage" Format="rgba16" Width="8" Height="16" Offset="0x37A0" />
<Texture Name="gStalchildSkullTex" OutName="stalchild_skull" Format="rgba16" Width="8" Height="8" Offset="0x38A0" />
<Texture Name="gStalchildNoseTex" OutName="stalchild_nose" Format="rgba16" Width="8" Height="8" Offset="0x3920" />
<Texture Name="gStalchildBoneTex" OutName="stalchild_bone" Format="rgba16" Width="8" Height="8" Offset="0x39A0" />
<Texture Name="gStalchildHandAndFeetTex" OutName="stalchild_hand_and_feet" Format="rgba16" Width="8" Height="16" Offset="0x3A20" />
<Texture Name="gStalchildTeethTex" OutName="stalchild_teeth" Format="rgba16" Width="16" Height="8" Offset="0x3B20" />
<Texture Name="gStalchildEyeSocketTex" OutName="stalchild_eye_socket" Format="rgba16" Width="16" Height="16" Offset="0x3C20" />
<Texture Name="gStalchildEyeTex" OutName="stalchild_eye" Format="rgba16" Width="8" Height="8" Offset="0x3E20" />
<DList Name="gStalchildHeadDL" Offset="0x4F30" />
<DList Name="gStalchildLowerJawDL" Offset="0x5298" />
<DList Name="gStalchildRibcageDL" Offset="0x5340" />
<DList Name="gStalchildSpineDL" Offset="0x5408" />
<DList Name="gStalchildPelvisDL" Offset="0x54A0" />
<DList Name="gStalchildLeftUpperArmDL" Offset="0x55A8" />
<DList Name="gStalchildLeftLowerArmDL" Offset="0x5668" />
<DList Name="gStalchildLeftHandDL" Offset="0x5710" />
<DList Name="gStalchildRightUpperArmDL" Offset="0x57D8" />
<DList Name="gStalchildRightLowerArmDL" Offset="0x5898" />
<DList Name="gStalchildRightHandDL" Offset="0x5940" />
<DList Name="gStalchildLeftThighDL" Offset="0x5A08" />
<DList Name="gStalchildLeftShinDL" Offset="0x5AA0" />
<DList Name="gStalchildLeftFootDL" Offset="0x5B48" />
<DList Name="gStalchildRightThighDL" Offset="0x5BE8" />
<DList Name="gStalchildRightShinDL" Offset="0x5C80" />
<DList Name="gStalchildRightFootDL" Offset="0x5D28" />
<Limb Name="gStalchildRootLimb" Type="Standard" EnumName="STALCHILD_LIMB_ROOT" Offset="0x5DC8" />
<Limb Name="gStalchildPelvisLimb" Type="Standard" EnumName="STALCHILD_LIMB_PELVIS" Offset="0x5DD4" />
<Limb Name="gStalchildRootLegsLimb" Type="Standard" EnumName="STALCHILD_LIMB_ROOT_LEGS" Offset="0x5DE0" />
<Limb Name="gStalchildRightThighLimb" Type="Standard" EnumName="STALCHILD_LIMB_RIGHT_THIGH" Offset="0x5DEC" />
<Limb Name="gStalchildRightShinLimb" Type="Standard" EnumName="STALCHILD_LIMB_RIGHT_SHIN" Offset="0x5DF8" />
<Limb Name="gStalchildRightFootLimb" Type="Standard" EnumName="STALCHILD_LIMB_RIGHT_FOOT" Offset="0x5E04" />
<Limb Name="gStalchildLeftThighLimb" Type="Standard" EnumName="STALCHILD_LIMB_LEFT_THIGH" Offset="0x5E10" />
<Limb Name="gStalchildLeftShinLimb" Type="Standard" EnumName="STALCHILD_LIMB_LEFT_SHIN" Offset="0x5E1C" />
<Limb Name="gStalchildLeftFootLimb" Type="Standard" EnumName="STALCHILD_LIMB_LEFT_FOOT" Offset="0x5E28" />
<Limb Name="gStalchildRibcageLimb" Type="Standard" EnumName="STALCHILD_LIMB_RIBCAGE" Offset="0x5E34" />
<Limb Name="gStalchildHeadLimb" Type="Standard" EnumName="STALCHILD_LIMB_HEAD" Offset="0x5E40" />
<Limb Name="gStalchildLowerJawLimb" Type="Standard" EnumName="STALCHILD_LIMB_LOWER_JAW" Offset="0x5E4C" />
<Limb Name="gStalchildRightUpperArmLimb" Type="Standard" EnumName="STALCHILD_LIMB_RIGHT_UPPER_ARM" Offset="0x5E58" />
<Limb Name="gStalchildRightLowerArmLimb" Type="Standard" EnumName="STALCHILD_LIMB_RIGHT_LOWER_ARM" Offset="0x5E64" />
<Limb Name="gStalchildRightHandLimb" Type="Standard" EnumName="STALCHILD_LIMB_RIGHT_HAND" Offset="0x5E70" />
<Limb Name="gStalchildLeftUpperArmLimb" Type="Standard" EnumName="STALCHILD_LIMB_LEFT_UPPER_ARM" Offset="0x5E7C" />
<Limb Name="gStalchildLeftLowerArmLimb" Type="Standard" EnumName="STALCHILD_LIMB_LEFT_LOWER_ARM" Offset="0x5E88" />
<Limb Name="gStalchildLeftHandLimb" Type="Standard" EnumName="STALCHILD_LIMB_LEFT_HAND" Offset="0x5E94" />
<Limb Name="gStalchildSpineLimb" Type="Standard" EnumName="STALCHILD_LIMB_SPINE" Offset="0x5EA0" />
<Skeleton Name="gStalchildSkel" Type="Normal" LimbType="Standard" LimbNone="STALCHILD_LIMB_NONE" LimbMax="STALCHILD_LIMB_MAX" EnumName="StalchildLimb" Offset="0x5EF8" />
<Animation Name="gStalchildWalkAnim" Offset="0x64E0" />
<!-- <Blob Name="object_skb_zeroes_unk_000064F0" Size="0x20" Offset="0x64F0" /> -->
<Animation Name="object_skb_Anim_00697C" Offset="0x697C" />
<Animation Name="object_skb_Anim_006D90" Offset="0x6D90" />
<Animation Name="gStalchildSitLaughAnim" Offset="0x697C" />
<Animation Name="gStalchildSitTapToesAnim" Offset="0x6D90" />
</File>
</Root>

View File

@ -125,37 +125,37 @@ static DamageTable sDamageTable = {
/* Powder Keg */ DMG_ENTRY(1, 0xF),
};
typedef enum EnHinkSkbAnimation {
/* 0 */ ENHINTSKB_ANIM_0,
/* 1 */ ENHINTSKB_ANIM_1,
/* 2 */ ENHINTSKB_ANIM_2,
/* 3 */ ENHINTSKB_ANIM_3,
/* 4 */ ENHINTSKB_ANIM_4,
/* 5 */ ENHINTSKB_ANIM_5,
/* 6 */ ENHINTSKB_ANIM_6,
/* 7 */ ENHINTSKB_ANIM_7,
/* 8 */ ENHINTSKB_ANIM_8,
/* 9 */ ENHINTSKB_ANIM_9,
/* 10 */ ENHINTSKB_ANIM_10,
/* 11 */ ENHINTSKB_ANIM_11,
/* 12 */ ENHINTSKB_ANIM_12,
/* 13 */ ENHINTSKB_ANIM_MAX
} EnHinkSkbAnimation;
typedef enum StalchildHintAnimation {
/* 0 */ STALCHILD_HINT_ANIM_WALK,
/* 1 */ STALCHILD_HINT_ANIM_STAND_UP_MORPH_1,
/* 2 */ STALCHILD_HINT_ANIM_ATTACK,
/* 3 */ STALCHILD_HINT_ANIM_STAGGER_MORPH_4,
/* 4 */ STALCHILD_HINT_ANIM_COLLAPSE,
/* 5 */ STALCHILD_HINT_ANIM_SIT_LAUGH,
/* 6 */ STALCHILD_HINT_ANIM_SIT_TAP_TOES,
/* 7 */ STALCHILD_HINT_ANIM_SWING_ON_BRANCH,
/* 8 */ STALCHILD_HINT_ANIM_STAND_UP_MORPH_8,
/* 9 */ STALCHILD_HINT_ANIM_STAND_UP_MORPH_16,
/* 10 */ STALCHILD_HINT_ANIM_STAGGER_MORPH_8,
/* 11 */ STALCHILD_HINT_ANIM_SALUTE,
/* 12 */ STALCHILD_HINT_ANIM_IDLE,
/* 13 */ STALCHILD_HINT_ANIM_MAX
} StalchildHintAnimation;
static AnimationInfo sAnimationInfo[ENHINTSKB_ANIM_MAX] = {
{ &object_skb_Anim_0064E0, 0.96f, 0.0f, 0.0f, ANIMMODE_LOOP, -4.0f }, // ENHINTSKB_ANIM_0
{ &object_skb_Anim_003584, 1.0f, 0.0f, 0.0f, ANIMMODE_ONCE, -1.0f }, // ENHINTSKB_ANIM_1
{ &object_skb_Anim_002190, 0.6f, 0.0f, 0.0f, ANIMMODE_ONCE_INTERP, 4.0f }, // ENHINTSKB_ANIM_2
{ &object_skb_Anim_002AC8, 1.0f, 0.0f, 0.0f, ANIMMODE_ONCE, -4.0f }, // ENHINTSKB_ANIM_3
{ &object_skb_Anim_00270C, 1.0f, 0.0f, 0.0f, ANIMMODE_ONCE, -4.0f }, // ENHINTSKB_ANIM_4
{ &object_skb_Anim_00697C, 1.0f, 0.0f, 0.0f, ANIMMODE_LOOP, -4.0f }, // ENHINTSKB_ANIM_5
{ &object_skb_Anim_006D90, 1.0f, 0.0f, 0.0f, ANIMMODE_LOOP, -4.0f }, // ENHINTSKB_ANIM_6
{ &object_skb_Anim_001D1C, 1.0f, 0.0f, 0.0f, ANIMMODE_LOOP, -4.0f }, // ENHINTSKB_ANIM_7
{ &object_skb_Anim_003584, 1.0f, 0.0f, 0.0f, ANIMMODE_ONCE, -8.0f }, // ENHINTSKB_ANIM_8
{ &object_skb_Anim_003584, 1.0f, 0.0f, 0.0f, ANIMMODE_ONCE, -16.0f }, // ENHINTSKB_ANIM_9
{ &object_skb_Anim_002AC8, 1.0f, 0.0f, 0.0f, ANIMMODE_ONCE, -8.0f }, // ENHINTSKB_ANIM_10
{ &object_skb_Anim_0015EC, 1.0f, 0.0f, 0.0f, ANIMMODE_ONCE, -8.0f }, // ENHINTSKB_ANIM_11
{ &object_skb_Anim_0009E4, 1.0f, 0.0f, 0.0f, ANIMMODE_LOOP, -8.0f }, // ENHINTSKB_ANIM_12
static AnimationInfo sAnimationInfo[STALCHILD_HINT_ANIM_MAX] = {
{ &gStalchildWalkAnim, 0.96f, 0.0f, 0.0f, ANIMMODE_LOOP, -4.0f }, // STALCHILD_HINT_ANIM_WALK
{ &gStalchildStandUpAnim, 1.0f, 0.0f, 0.0f, ANIMMODE_ONCE, -1.0f }, // STALCHILD_HINT_ANIM_STAND_UP_MORPH_1
{ &gStalchildAttackAnim, 0.6f, 0.0f, 0.0f, ANIMMODE_ONCE_INTERP, 4.0f }, // STALCHILD_HINT_ANIM_ATTACK
{ &gStalchildStaggerAnim, 1.0f, 0.0f, 0.0f, ANIMMODE_ONCE, -4.0f }, // STALCHILD_HINT_ANIM_STAGGER_MORPH_4
{ &gStalchildCollapseAnim, 1.0f, 0.0f, 0.0f, ANIMMODE_ONCE, -4.0f }, // STALCHILD_HINT_ANIM_COLLAPSE
{ &gStalchildSitLaughAnim, 1.0f, 0.0f, 0.0f, ANIMMODE_LOOP, -4.0f }, // STALCHILD_HINT_ANIM_SIT_LAUGH
{ &gStalchildSitTapToesAnim, 1.0f, 0.0f, 0.0f, ANIMMODE_LOOP, -4.0f }, // STALCHILD_HINT_ANIM_SIT_TAP_TOES
{ &gStalchildSwingOnBranchAnim, 1.0f, 0.0f, 0.0f, ANIMMODE_LOOP, -4.0f }, // STALCHILD_HINT_ANIM_SWING_ON_BRANCH
{ &gStalchildStandUpAnim, 1.0f, 0.0f, 0.0f, ANIMMODE_ONCE, -8.0f }, // STALCHILD_HINT_ANIM_STAND_UP_MORPH_8
{ &gStalchildStandUpAnim, 1.0f, 0.0f, 0.0f, ANIMMODE_ONCE, -16.0f }, // STALCHILD_HINT_ANIM_STAND_UP_MORPH_16
{ &gStalchildStaggerAnim, 1.0f, 0.0f, 0.0f, ANIMMODE_ONCE, -8.0f }, // STALCHILD_HINT_ANIM_STAGGER_MORPH_8
{ &gStalchildSaluteAnim, 1.0f, 0.0f, 0.0f, ANIMMODE_ONCE, -8.0f }, // STALCHILD_HINT_ANIM_SALUTE
{ &gStalchildIdleAnim, 1.0f, 0.0f, 0.0f, ANIMMODE_LOOP, -8.0f }, // STALCHILD_HINT_ANIM_IDLE
};
static InitChainEntry sInitChain[] = {
@ -168,8 +168,8 @@ void EnHintSkb_Init(Actor* thisx, PlayState* play) {
EnHintSkb* this = THIS;
ActorShape_Init(&this->actor.shape, 0.0f, ActorShadow_DrawCircle, 36.0f);
SkelAnime_Init(play, &this->skelAnime, &object_skb_Skel_005EF8, &object_skb_Anim_00697C, this->jointTable,
this->morphTable, OBJECT_SKB_LIMB_MAX);
SkelAnime_Init(play, &this->skelAnime, &gStalchildSkel, &gStalchildSitLaughAnim, this->jointTable, this->morphTable,
STALCHILD_LIMB_MAX);
Collider_InitJntSph(play, &this->collider);
Collider_SetJntSph(play, &this->collider, &this->actor, &sJntSphInit, this->colliderElement);
CollisionCheck_SetInfo2(&this->actor.colChkInfo, &sDamageTable, &sColChkInfoInit);
@ -197,7 +197,7 @@ void func_80C1FE20(EnHintSkb* this, PlayState* play) {
}
void func_80C1FE30(EnHintSkb* this) {
Actor_ChangeAnimationByInfo(&this->skelAnime, sAnimationInfo, ENHINTSKB_ANIM_0);
Actor_ChangeAnimationByInfo(&this->skelAnime, sAnimationInfo, STALCHILD_HINT_ANIM_WALK);
this->actor.speed = 1.6f;
this->actionFunc = func_80C1FE80;
}
@ -216,7 +216,7 @@ void func_80C1FE80(EnHintSkb* this, PlayState* play) {
void func_80C1FF30(EnHintSkb* this) {
this->collider.base.atFlags &= ~AT_BOUNCED;
this->actor.speed = 0.0f;
Actor_ChangeAnimationByInfo(&this->skelAnime, sAnimationInfo, ENHINTSKB_ANIM_2);
Actor_ChangeAnimationByInfo(&this->skelAnime, sAnimationInfo, STALCHILD_HINT_ANIM_ATTACK);
this->actionFunc = func_80C1FF88;
}
@ -240,7 +240,7 @@ void func_80C1FF88(EnHintSkb* this, PlayState* play) {
}
void func_80C2003C(EnHintSkb* this) {
Animation_Change(&this->skelAnime, &object_skb_Anim_002190, -0.4f, this->skelAnime.curFrame - 1.0f, 0.0f,
Animation_Change(&this->skelAnime, &gStalchildAttackAnim, -0.4f, this->skelAnime.curFrame - 1.0f, 0.0f,
ANIMMODE_ONCE_INTERP, 0.0f);
this->collider.base.atFlags &= ~AT_BOUNCED;
this->actionFunc = func_80C200B8;
@ -277,7 +277,7 @@ void func_80C2016C(EnHintSkb* this, PlayState* play) {
if (this->actor.colChkInfo.health == 0) {
SoundSource_PlaySfxAtFixedWorldPos(play, &this->actor.world.pos, 40, NA_SE_EN_STALKID_DEAD);
func_80C20484(this);
} else if (this->skelAnime.animation == &object_skb_Anim_00697C) {
} else if (this->skelAnime.animation == &gStalchildSitLaughAnim) {
func_80C1FE0C(this);
} else if (func_80C21414(this)) {
func_80C1FF30(this);
@ -288,14 +288,14 @@ void func_80C2016C(EnHintSkb* this, PlayState* play) {
}
void func_80C20274(EnHintSkb* this) {
if (this->skelAnime.animation == &object_skb_Anim_00697C) {
if (this->skelAnime.animation == &gStalchildSitLaughAnim) {
this->actor.world.rot.y = this->actor.yawTowardsPlayer;
Actor_ChangeAnimationByInfo(&this->skelAnime, sAnimationInfo, ENHINTSKB_ANIM_8);
Actor_ChangeAnimationByInfo(&this->skelAnime, sAnimationInfo, STALCHILD_HINT_ANIM_STAND_UP_MORPH_8);
this->actor.gravity = -1.0f;
this->actor.speed = 1.0f;
} else {
this->actor.world.rot.y = this->actor.yawTowardsPlayer;
Actor_ChangeAnimationByInfo(&this->skelAnime, sAnimationInfo, ENHINTSKB_ANIM_3);
Actor_ChangeAnimationByInfo(&this->skelAnime, sAnimationInfo, STALCHILD_HINT_ANIM_STAGGER_MORPH_4);
if (this->actor.bgCheckFlags & BGCHECKFLAG_GROUND) {
this->actor.speed = -4.0f;
}
@ -333,7 +333,7 @@ void func_80C20334(EnHintSkb* this, PlayState* play) {
}
void func_80C20484(EnHintSkb* this) {
Actor_ChangeAnimationByInfo(&this->skelAnime, sAnimationInfo, ENHINTSKB_ANIM_4);
Actor_ChangeAnimationByInfo(&this->skelAnime, sAnimationInfo, STALCHILD_HINT_ANIM_COLLAPSE);
this->unk_3E8 |= 4;
if (this->actor.bgCheckFlags & BGCHECKFLAG_GROUND) {
this->actor.speed = -6.0f;
@ -365,7 +365,7 @@ void func_80C20590(EnHintSkb* this, PlayState* play) {
this->drawDmgEffAlpha = 0.0f;
if (this->actor.colChkInfo.health != 0) {
Actor_SetColorFilter(&this->actor, COLORFILTER_COLORFLAG_RED, 255, COLORFILTER_BUFFLAG_OPA, 8);
Actor_ChangeAnimationByInfo(&this->skelAnime, sAnimationInfo, ENHINTSKB_ANIM_3);
Actor_ChangeAnimationByInfo(&this->skelAnime, sAnimationInfo, STALCHILD_HINT_ANIM_STAGGER_MORPH_4);
Actor_PlaySfx(&this->actor, NA_SE_EN_STALKID_DAMAGE);
this->unk_3E8 |= 1;
func_80C20274(this);
@ -392,7 +392,7 @@ void func_80C2069C(EnHintSkb* this, PlayState* play) {
this->drawDmgEffAlpha = 0.0f;
if (this->actor.colChkInfo.health != 0) {
Actor_SetColorFilter(&this->actor, COLORFILTER_COLORFLAG_RED, 255, COLORFILTER_BUFFLAG_OPA, 8);
Actor_ChangeAnimationByInfo(&this->skelAnime, sAnimationInfo, ENHINTSKB_ANIM_3);
Actor_ChangeAnimationByInfo(&this->skelAnime, sAnimationInfo, STALCHILD_HINT_ANIM_STAGGER_MORPH_4);
Actor_PlaySfx(&this->actor, NA_SE_EN_STALKID_DAMAGE);
this->unk_3E8 |= 1;
func_80C20274(this);
@ -416,15 +416,15 @@ void func_80C2077C(EnHintSkb* this, PlayState* play) {
this->unk_3DC = 1;
Message_StartTextbox(play, 0x1147, &this->actor);
this->unk_3E6 = 0x1147;
if (this->skelAnime.animation == &object_skb_Anim_00697C) {
if (this->skelAnime.animation == &gStalchildSitLaughAnim) {
play->msgCtx.msgMode = MSGMODE_PAUSED;
this->actor.speed = 2.4f;
this->actor.gravity = -1.0f;
this->actor.velocity.y = 3.0f;
Actor_ChangeAnimationByInfo(&this->skelAnime, sAnimationInfo, ENHINTSKB_ANIM_8);
Actor_ChangeAnimationByInfo(&this->skelAnime, sAnimationInfo, STALCHILD_HINT_ANIM_STAND_UP_MORPH_8);
}
} else {
Actor_ChangeAnimationByInfo(&this->skelAnime, sAnimationInfo, ENHINTSKB_ANIM_11);
Actor_ChangeAnimationByInfo(&this->skelAnime, sAnimationInfo, STALCHILD_HINT_ANIM_SALUTE);
Message_StartTextbox(play, 0x1148, &this->actor);
this->unk_3E6 = 0x1148;
}
@ -480,11 +480,11 @@ void func_80C208D0(EnHintSkb* this, PlayState* play) {
}
}
if ((this->skelAnime.animation == &object_skb_Anim_003584) &&
if ((this->skelAnime.animation == &gStalchildStandUpAnim) &&
Animation_OnFrame(&this->skelAnime, this->skelAnime.endFrame)) {
Message_StartTextbox(play, 0x1147, &this->actor);
this->unk_3E6 = 0x1147;
Actor_ChangeAnimationByInfo(&this->skelAnime, sAnimationInfo, ENHINTSKB_ANIM_0);
Actor_ChangeAnimationByInfo(&this->skelAnime, sAnimationInfo, STALCHILD_HINT_ANIM_WALK);
}
}
@ -559,7 +559,7 @@ void func_80C20C24(EnHintSkb* this, PlayState* play) {
case 0x1147:
Message_StartTextbox(play, 0x1148, &this->actor);
this->unk_3E6 = 0x1148;
Actor_ChangeAnimationByInfo(&this->skelAnime, sAnimationInfo, ENHINTSKB_ANIM_11);
Actor_ChangeAnimationByInfo(&this->skelAnime, sAnimationInfo, STALCHILD_HINT_ANIM_SALUTE);
break;
case 0x1148:
@ -611,7 +611,7 @@ void func_80C20D64(EnHintSkb* this, PlayState* play) {
this->actor.hintId = TATL_HINT_ID_NONE;
this->actor.textId = 0;
if (this->actionFunc == func_80C1FE80) {
Actor_ChangeAnimationByInfo(&this->skelAnime, sAnimationInfo, ENHINTSKB_ANIM_12);
Actor_ChangeAnimationByInfo(&this->skelAnime, sAnimationInfo, STALCHILD_HINT_ANIM_IDLE);
}
func_80C2075C(this);
}
@ -620,7 +620,7 @@ void func_80C20D64(EnHintSkb* this, PlayState* play) {
this->actor.flags |= (ACTOR_FLAG_TARGETABLE | ACTOR_FLAG_UNFRIENDLY);
this->actor.hintId = TATL_HINT_ID_STALCHILD;
this->actor.textId = 0;
if (this->skelAnime.animation == &object_skb_Anim_00697C) {
if (this->skelAnime.animation == &gStalchildSitLaughAnim) {
func_80C1FE0C(this);
} else {
func_80C1FE30(this);
@ -724,7 +724,7 @@ void func_80C20E90(EnHintSkb* this, PlayState* play) {
this->drawDmgEffScale = 0.5f;
Actor_SetColorFilter(&this->actor, COLORFILTER_COLORFLAG_RED, 255, COLORFILTER_BUFFLAG_OPA, 8);
Actor_PlaySfx(&this->actor, NA_SE_EN_STALKID_DAMAGE);
Actor_ChangeAnimationByInfo(&this->skelAnime, sAnimationInfo, ENHINTSKB_ANIM_3);
Actor_ChangeAnimationByInfo(&this->skelAnime, sAnimationInfo, STALCHILD_HINT_ANIM_STAGGER_MORPH_4);
func_80C2066C(this);
break;
@ -743,7 +743,7 @@ void func_80C20E90(EnHintSkb* this, PlayState* play) {
case 13:
Actor_SetColorFilter(&this->actor, COLORFILTER_COLORFLAG_RED, 255, COLORFILTER_BUFFLAG_OPA, 8);
Actor_PlaySfx(&this->actor, NA_SE_EN_STALKID_DAMAGE);
Actor_ChangeAnimationByInfo(&this->skelAnime, sAnimationInfo, ENHINTSKB_ANIM_3);
Actor_ChangeAnimationByInfo(&this->skelAnime, sAnimationInfo, STALCHILD_HINT_ANIM_STAGGER_MORPH_4);
func_80C20274(this);
break;
@ -873,7 +873,7 @@ s32 EnHintSkb_OverrideLimbDraw(PlayState* play, s32 limbIndex, Gfx** dList, Vec3
EnHintSkb* this = THIS;
f32 temp_f10;
if (limbIndex == OBJECT_SKB_LIMB_0B) {
if (limbIndex == STALCHILD_LIMB_HEAD) {
OPEN_DISPS(play->state.gfxCtx);
temp_f10 = fabsf(Math_SinS(play->state.frames * 6000) * 95.0f) + 160.0f;
@ -882,13 +882,13 @@ s32 EnHintSkb_OverrideLimbDraw(PlayState* play, s32 limbIndex, Gfx** dList, Vec3
gDPSetEnvColor(POLY_OPA_DISP++, (s16)temp_f10, (s16)temp_f10, (s16)temp_f10, 255);
CLOSE_DISPS(play->state.gfxCtx);
} else if (limbIndex == OBJECT_SKB_LIMB_0A) {
} else if (limbIndex == STALCHILD_LIMB_RIBCAGE) {
Matrix_MultZero(&this->actor.focus.pos);
} else if ((limbIndex == OBJECT_SKB_LIMB_0C) && (this->unk_3DE == 1)) {
} else if ((limbIndex == STALCHILD_LIMB_LOWER_JAW) && (this->unk_3DE == 1)) {
Matrix_RotateZS(0x71C, MTXMODE_APPLY);
}
if (((limbIndex == OBJECT_SKB_LIMB_0B) || (limbIndex == OBJECT_SKB_LIMB_0C)) && (this->unk_3E8 & 2)) {
if (((limbIndex == STALCHILD_LIMB_HEAD) || (limbIndex == STALCHILD_LIMB_LOWER_JAW)) && (this->unk_3E8 & 2)) {
*dList = NULL;
}
@ -902,25 +902,26 @@ void EnHintSkb_PostLimbDraw(PlayState* play, s32 limbIndex, Gfx** dList, Vec3s*
if (!(this->unk_3E8 & 8)) {
Collider_UpdateSpheres(limbIndex, &this->collider);
if ((limbIndex == OBJECT_SKB_LIMB_0B) && (this->unk_3E8 & 1) && !(this->unk_3E8 & 2)) {
if ((limbIndex == STALCHILD_LIMB_HEAD) && (this->unk_3E8 & 1) && !(this->unk_3E8 & 2)) {
Actor_SpawnBodyParts(&this->actor, play, 1, dList);
this->unk_3E8 |= 2;
} else if ((this->unk_3E8 & 4) && !(this->unk_3E8 & 8) &&
((limbIndex != OBJECT_SKB_LIMB_0B) || !(this->unk_3E8 & 1)) && (limbIndex != OBJECT_SKB_LIMB_0C)) {
((limbIndex != STALCHILD_LIMB_HEAD) || !(this->unk_3E8 & 1)) &&
(limbIndex != STALCHILD_LIMB_LOWER_JAW)) {
Actor_SpawnBodyParts(&this->actor, play, 1, dList);
}
if (this->drawDmgEffTimer != 0) {
if ((limbIndex == OBJECT_SKB_LIMB_02) || (limbIndex == OBJECT_SKB_LIMB_04) ||
(limbIndex == OBJECT_SKB_LIMB_05) || (limbIndex == OBJECT_SKB_LIMB_06) ||
(limbIndex == OBJECT_SKB_LIMB_07) || (limbIndex == OBJECT_SKB_LIMB_08) ||
(limbIndex == OBJECT_SKB_LIMB_09) || (limbIndex == OBJECT_SKB_LIMB_0D) ||
(limbIndex == OBJECT_SKB_LIMB_0E) || (limbIndex == OBJECT_SKB_LIMB_0F) ||
(limbIndex == OBJECT_SKB_LIMB_10) || (limbIndex == OBJECT_SKB_LIMB_11) ||
(limbIndex == OBJECT_SKB_LIMB_12)) {
if ((limbIndex == STALCHILD_LIMB_PELVIS) || (limbIndex == STALCHILD_LIMB_RIGHT_THIGH) ||
(limbIndex == STALCHILD_LIMB_RIGHT_SHIN) || (limbIndex == STALCHILD_LIMB_RIGHT_FOOT) ||
(limbIndex == STALCHILD_LIMB_LEFT_THIGH) || (limbIndex == STALCHILD_LIMB_LEFT_SHIN) ||
(limbIndex == STALCHILD_LIMB_LEFT_FOOT) || (limbIndex == STALCHILD_LIMB_RIGHT_UPPER_ARM) ||
(limbIndex == STALCHILD_LIMB_RIGHT_LOWER_ARM) || (limbIndex == STALCHILD_LIMB_RIGHT_HAND) ||
(limbIndex == STALCHILD_LIMB_LEFT_UPPER_ARM) || (limbIndex == STALCHILD_LIMB_LEFT_LOWER_ARM) ||
(limbIndex == STALCHILD_LIMB_LEFT_HAND)) {
Matrix_MultZero(&this->bodyPartsPos[this->bodyPartsCount]);
this->bodyPartsCount++;
} else if ((limbIndex == OBJECT_SKB_LIMB_0B) && !(this->unk_3E8 & 2)) {
} else if ((limbIndex == STALCHILD_LIMB_HEAD) && !(this->unk_3E8 & 2)) {
Matrix_MultVec3f(&D_80C21E70, &this->bodyPartsPos[this->bodyPartsCount]);
this->bodyPartsCount++;
}

View File

@ -38,8 +38,8 @@ typedef struct EnHintSkb {
/* 0x2D4 */ f32 drawDmgEffAlpha;
/* 0x2D8 */ f32 drawDmgEffScale;
/* 0x2DC */ s32 bodyPartsCount;
/* 0x2E0 */ Vec3s jointTable[OBJECT_SKB_LIMB_MAX];
/* 0x358 */ Vec3s morphTable[OBJECT_SKB_LIMB_MAX];
/* 0x2E0 */ Vec3s jointTable[STALCHILD_LIMB_MAX];
/* 0x358 */ Vec3s morphTable[STALCHILD_LIMB_MAX];
/* 0x3D0 */ UNK_TYPE1 unk3D0[0xC];
/* 0x3DC */ s16 unk_3DC;
/* 0x3DE */ s16 unk_3DE;

View File

@ -63,19 +63,19 @@ ActorInit En_Rail_Skb_InitVars = {
};
static AnimationInfo sAnimationInfo[] = {
{ &object_skb_Anim_0064E0, 0.96f, 0.0f, 0.0f, ANIMMODE_LOOP, -4.0f },
{ &object_skb_Anim_003584, 1.0f, 0.0f, 0.0f, ANIMMODE_ONCE, -1.0f },
{ &object_skb_Anim_002190, 0.6f, 0.0f, 0.0f, ANIMMODE_ONCE_INTERP, 4.0f },
{ &object_skb_Anim_002AC8, 1.0f, 0.0f, 0.0f, ANIMMODE_ONCE, -4.0f },
{ &object_skb_Anim_00270C, 1.0f, 0.0f, 0.0f, ANIMMODE_ONCE, -4.0f },
{ &object_skb_Anim_00697C, 1.0f, 0.0f, 0.0f, ANIMMODE_LOOP, -4.0f },
{ &object_skb_Anim_006D90, 1.0f, 0.0f, 0.0f, ANIMMODE_LOOP, -4.0f },
{ &object_skb_Anim_001D1C, 1.0f, 0.0f, 0.0f, ANIMMODE_LOOP, -4.0f },
{ &object_skb_Anim_003584, 1.0f, 0.0f, 0.0f, ANIMMODE_ONCE, -8.0f },
{ &object_skb_Anim_003584, 1.0f, 0.0f, 0.0f, ANIMMODE_ONCE, -16.0f },
{ &object_skb_Anim_002AC8, 1.0f, 0.0f, 0.0f, ANIMMODE_ONCE, -8.0f },
{ &object_skb_Anim_0015EC, 1.0f, 0.0f, 0.0f, ANIMMODE_ONCE, -8.0f },
{ &object_skb_Anim_0009E4, 1.0f, 0.0f, 0.0f, ANIMMODE_LOOP, -8.0f },
{ &gStalchildWalkAnim, 0.96f, 0.0f, 0.0f, ANIMMODE_LOOP, -4.0f },
{ &gStalchildStandUpAnim, 1.0f, 0.0f, 0.0f, ANIMMODE_ONCE, -1.0f },
{ &gStalchildAttackAnim, 0.6f, 0.0f, 0.0f, ANIMMODE_ONCE_INTERP, 4.0f },
{ &gStalchildStaggerAnim, 1.0f, 0.0f, 0.0f, ANIMMODE_ONCE, -4.0f },
{ &gStalchildCollapseAnim, 1.0f, 0.0f, 0.0f, ANIMMODE_ONCE, -4.0f },
{ &gStalchildSitLaughAnim, 1.0f, 0.0f, 0.0f, ANIMMODE_LOOP, -4.0f },
{ &gStalchildSitTapToesAnim, 1.0f, 0.0f, 0.0f, ANIMMODE_LOOP, -4.0f },
{ &gStalchildSwingOnBranchAnim, 1.0f, 0.0f, 0.0f, ANIMMODE_LOOP, -4.0f },
{ &gStalchildStandUpAnim, 1.0f, 0.0f, 0.0f, ANIMMODE_ONCE, -8.0f },
{ &gStalchildStandUpAnim, 1.0f, 0.0f, 0.0f, ANIMMODE_ONCE, -16.0f },
{ &gStalchildStaggerAnim, 1.0f, 0.0f, 0.0f, ANIMMODE_ONCE, -8.0f },
{ &gStalchildSaluteAnim, 1.0f, 0.0f, 0.0f, ANIMMODE_ONCE, -8.0f },
{ &gStalchildIdleAnim, 1.0f, 0.0f, 0.0f, ANIMMODE_LOOP, -8.0f },
};
static ColliderJntSphElementInit sJntSphElementsInit[2] = {
@ -270,8 +270,8 @@ void EnRailSkb_Init(Actor* thisx, PlayState* play) {
func_80B708C0(this, play);
ActorShape_Init(&this->actor.shape, 0.0f, ActorShadow_DrawCircle, 36.0f);
SkelAnime_Init(play, &this->skelAnime, &object_skb_Skel_005EF8, &object_skb_Anim_0064E0, this->jointTable,
this->morphTable, 20);
SkelAnime_Init(play, &this->skelAnime, &gStalchildSkel, &gStalchildWalkAnim, this->jointTable, this->morphTable,
STALCHILD_LIMB_MAX);
Collider_InitJntSph(play, &this->collider);
Collider_SetJntSph(play, &this->collider, &this->actor, &sJntSphInit, this->colliderElements);
CollisionCheck_SetInfo2(&this->actor.colChkInfo, &sDamageTable, &sColChkInfoInit);

View File

@ -50,19 +50,19 @@ s32 func_80996594(EnSkb* this, PlayState* play);
void func_80996BEC(EnSkb* this, PlayState* play);
static AnimationInfo sAnimationInfo[] = {
{ &object_skb_Anim_0064E0, 1.0f, 0.0f, 0.0f, ANIMMODE_LOOP, -4.0 },
{ &object_skb_Anim_003584, 1.0f, 0.0f, 0.0f, ANIMMODE_ONCE, -1.0f },
{ &object_skb_Anim_002190, 0.6f, 0.0f, 0.0f, ANIMMODE_ONCE_INTERP, 4.0f },
{ &object_skb_Anim_002AC8, 1.0f, 0.0f, 0.0f, ANIMMODE_ONCE, -4.0 },
{ &object_skb_Anim_00270C, 1.0f, 0.0f, 0.0f, ANIMMODE_ONCE, -4.0 },
{ &object_skb_Anim_00697C, 1.0f, 0.0f, 0.0f, ANIMMODE_LOOP, -4.0 },
{ &object_skb_Anim_006D90, 1.0f, 0.0f, 0.0f, ANIMMODE_LOOP, -4.0 },
{ &object_skb_Anim_001D1C, 1.0f, 0.0f, 0.0f, ANIMMODE_LOOP, -4.0 },
{ &object_skb_Anim_003584, 1.0f, 0.0f, 0.0f, ANIMMODE_ONCE, -8.0f },
{ &object_skb_Anim_003584, 1.0f, 0.0f, 0.0f, ANIMMODE_ONCE, -16.0f },
{ &object_skb_Anim_002AC8, 1.0f, 0.0f, 0.0f, ANIMMODE_ONCE, -8.0f },
{ &object_skb_Anim_0015EC, 1.0f, 0.0f, 0.0f, ANIMMODE_ONCE, -4.0 },
{ &object_skb_Anim_0009E4, 1.0f, 0.0f, 0.0f, ANIMMODE_LOOP, -4.0 },
{ &gStalchildWalkAnim, 1.0f, 0.0f, 0.0f, ANIMMODE_LOOP, -4.0 },
{ &gStalchildStandUpAnim, 1.0f, 0.0f, 0.0f, ANIMMODE_ONCE, -1.0f },
{ &gStalchildAttackAnim, 0.6f, 0.0f, 0.0f, ANIMMODE_ONCE_INTERP, 4.0f },
{ &gStalchildStaggerAnim, 1.0f, 0.0f, 0.0f, ANIMMODE_ONCE, -4.0 },
{ &gStalchildCollapseAnim, 1.0f, 0.0f, 0.0f, ANIMMODE_ONCE, -4.0 },
{ &gStalchildSitLaughAnim, 1.0f, 0.0f, 0.0f, ANIMMODE_LOOP, -4.0 },
{ &gStalchildSitTapToesAnim, 1.0f, 0.0f, 0.0f, ANIMMODE_LOOP, -4.0 },
{ &gStalchildSwingOnBranchAnim, 1.0f, 0.0f, 0.0f, ANIMMODE_LOOP, -4.0 },
{ &gStalchildStandUpAnim, 1.0f, 0.0f, 0.0f, ANIMMODE_ONCE, -8.0f },
{ &gStalchildStandUpAnim, 1.0f, 0.0f, 0.0f, ANIMMODE_ONCE, -16.0f },
{ &gStalchildStaggerAnim, 1.0f, 0.0f, 0.0f, ANIMMODE_ONCE, -8.0f },
{ &gStalchildSaluteAnim, 1.0f, 0.0f, 0.0f, ANIMMODE_ONCE, -4.0 },
{ &gStalchildIdleAnim, 1.0f, 0.0f, 0.0f, ANIMMODE_LOOP, -4.0 },
};
static Vec3f D_80997468[] = {
@ -176,29 +176,29 @@ void func_809947B0(PlayState* play, EnSkb* this, Vec3f* inPos) {
}
void func_8099495C(EnSkb* this, PlayState* play) {
SkelAnime_Init(play, &this->skelAnime, &object_skb_Skel_005EF8, &object_skb_Anim_003584, this->jointTable,
this->morphTable, 20);
SkelAnime_Init(play, &this->skelAnime, &gStalchildSkel, &gStalchildStandUpAnim, this->jointTable, this->morphTable,
STALCHILD_LIMB_MAX);
this->unk_3DC = 0;
func_80994E2C(this);
}
void func_809949C4(EnSkb* this, PlayState* play) {
SkelAnime_Init(play, &this->skelAnime, &object_skb_Skel_005EF8, &object_skb_Anim_00697C, this->jointTable,
this->morphTable, 20);
SkelAnime_Init(play, &this->skelAnime, &gStalchildSkel, &gStalchildSitLaughAnim, this->jointTable, this->morphTable,
STALCHILD_LIMB_MAX);
this->unk_3DC = 1;
func_809952D8(this);
}
void func_80994A30(EnSkb* this, PlayState* play) {
SkelAnime_Init(play, &this->skelAnime, &object_skb_Skel_005EF8, &object_skb_Anim_006D90, this->jointTable,
this->morphTable, 20);
SkelAnime_Init(play, &this->skelAnime, &gStalchildSkel, &gStalchildSitTapToesAnim, this->jointTable,
this->morphTable, STALCHILD_LIMB_MAX);
this->unk_3DC = 1;
func_809953E8(this);
}
void func_80994A9C(EnSkb* this, PlayState* play) {
SkelAnime_Init(play, &this->skelAnime, &object_skb_Skel_005EF8, &object_skb_Anim_001D1C, this->jointTable,
this->morphTable, 20);
SkelAnime_Init(play, &this->skelAnime, &gStalchildSkel, &gStalchildSwingOnBranchAnim, this->jointTable,
this->morphTable, STALCHILD_LIMB_MAX);
this->unk_3DC = 1;
func_809954F8(this);
}
@ -535,7 +535,7 @@ void func_80995818(EnSkb* this, PlayState* play) {
}
void func_809958F4(EnSkb* this) {
Animation_Change(&this->skelAnime, &object_skb_Anim_003584, -1.0f, Animation_GetLastFrame(&object_skb_Anim_003584),
Animation_Change(&this->skelAnime, &gStalchildStandUpAnim, -1.0f, Animation_GetLastFrame(&gStalchildStandUpAnim),
0.0f, ANIMMODE_ONCE, -4.0f);
this->unk_3E4 = 0;
this->actor.flags &= ~ACTOR_FLAG_TARGETABLE;
@ -620,7 +620,7 @@ void func_80995C84(EnSkb* this, PlayState* play) {
}
void func_80995D3C(EnSkb* this) {
Animation_Change(&this->skelAnime, &object_skb_Anim_002190, -0.4f, this->skelAnime.curFrame - 1.0f, 0.0f,
Animation_Change(&this->skelAnime, &gStalchildAttackAnim, -0.4f, this->skelAnime.curFrame - 1.0f, 0.0f,
ANIMMODE_ONCE_INTERP, 0.0f);
this->collider.base.atFlags &= ~AT_BOUNCED;
this->unk_3DE = 4;