diff --git a/assets/xml/objects/gameplay_dangeon_keep.xml b/assets/xml/objects/gameplay_dangeon_keep.xml
index 9d5a9901ad..7e4d2d2010 100644
--- a/assets/xml/objects/gameplay_dangeon_keep.xml
+++ b/assets/xml/objects/gameplay_dangeon_keep.xml
@@ -67,7 +67,7 @@
-
+
@@ -87,7 +87,7 @@
-
+
diff --git a/src/overlays/actors/ovl_Bg_Astr_Bombwall/z_bg_astr_bombwall.c b/src/overlays/actors/ovl_Bg_Astr_Bombwall/z_bg_astr_bombwall.c
index 6965ad4c1a..ab7ac8a52e 100644
--- a/src/overlays/actors/ovl_Bg_Astr_Bombwall/z_bg_astr_bombwall.c
+++ b/src/overlays/actors/ovl_Bg_Astr_Bombwall/z_bg_astr_bombwall.c
@@ -69,7 +69,7 @@ static ColliderTrisInit sTrisInit = {
OC2_NONE,
COLSHAPE_TRIS,
},
- 2,
+ ARRAY_COUNT(sTrisElementsInit),
sTrisElementsInit,
};
diff --git a/src/overlays/actors/ovl_Bg_Ikana_Rotaryroom/z_bg_ikana_rotaryroom.c b/src/overlays/actors/ovl_Bg_Ikana_Rotaryroom/z_bg_ikana_rotaryroom.c
index 90de39bf4d..94eec2c1d6 100644
--- a/src/overlays/actors/ovl_Bg_Ikana_Rotaryroom/z_bg_ikana_rotaryroom.c
+++ b/src/overlays/actors/ovl_Bg_Ikana_Rotaryroom/z_bg_ikana_rotaryroom.c
@@ -78,7 +78,7 @@ static ColliderJntSphInit sJntSphInit1 = {
OC2_NONE,
COLSHAPE_JNTSPH,
},
- 2,
+ ARRAY_COUNT(sJntSphElementsInit1),
sJntSphElementsInit1,
};
@@ -105,7 +105,7 @@ static ColliderJntSphInit sJntSphInit2 = {
OC2_NONE,
COLSHAPE_JNTSPH,
},
- 1,
+ ARRAY_COUNT(sJntSphElementsInit2),
sJntSphElementsInit2,
};
diff --git a/src/overlays/actors/ovl_Bg_Kin2_Fence/z_bg_kin2_fence.c b/src/overlays/actors/ovl_Bg_Kin2_Fence/z_bg_kin2_fence.c
index bb996b85de..628ade7f1f 100644
--- a/src/overlays/actors/ovl_Bg_Kin2_Fence/z_bg_kin2_fence.c
+++ b/src/overlays/actors/ovl_Bg_Kin2_Fence/z_bg_kin2_fence.c
@@ -95,7 +95,7 @@ static ColliderJntSphInit sJntSphInit = {
OC2_TYPE_2,
COLSHAPE_JNTSPH,
},
- 4,
+ ARRAY_COUNT(sJntSphElementsInit),
sJntSphElementsInit,
};
diff --git a/src/overlays/actors/ovl_Bg_Kin2_Picture/z_bg_kin2_picture.c b/src/overlays/actors/ovl_Bg_Kin2_Picture/z_bg_kin2_picture.c
index 59d7649bd0..2f50ca820c 100644
--- a/src/overlays/actors/ovl_Bg_Kin2_Picture/z_bg_kin2_picture.c
+++ b/src/overlays/actors/ovl_Bg_Kin2_Picture/z_bg_kin2_picture.c
@@ -49,7 +49,7 @@ static ColliderTrisElementInit D_80B6F990[2] = {
// static ColliderTrisInit sTrisInit = {
static ColliderTrisInit D_80B6FA08 = {
{ COLTYPE_NONE, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_NONE, OC2_NONE, COLSHAPE_TRIS, },
- 2, D_80B6F990, // sTrisElementsInit,
+ ARRAY_COUNT(sTrisElementsInit), D_80B6F990, // sTrisElementsInit,
};
// static InitChainEntry sInitChain[] = {
diff --git a/src/overlays/actors/ovl_Bg_Last_Bwall/z_bg_last_bwall.c b/src/overlays/actors/ovl_Bg_Last_Bwall/z_bg_last_bwall.c
index f47536123b..a1795d849c 100644
--- a/src/overlays/actors/ovl_Bg_Last_Bwall/z_bg_last_bwall.c
+++ b/src/overlays/actors/ovl_Bg_Last_Bwall/z_bg_last_bwall.c
@@ -43,7 +43,7 @@ static ColliderTrisElementInit D_80C189C0[2] = {
// static ColliderTrisInit sTrisInit = {
static ColliderTrisInit D_80C18A38 = {
{ COLTYPE_NONE, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_NONE, OC2_NONE, COLSHAPE_TRIS, },
- 2, D_80C189C0, // sTrisElementsInit,
+ ARRAY_COUNT(sTrisElementsInit), D_80C189C0, // sTrisElementsInit,
};
// static InitChainEntry sInitChain[] = {
diff --git a/src/overlays/actors/ovl_Bg_Spdweb/z_bg_spdweb.c b/src/overlays/actors/ovl_Bg_Spdweb/z_bg_spdweb.c
index 46eac0c138..379a3ce81a 100644
--- a/src/overlays/actors/ovl_Bg_Spdweb/z_bg_spdweb.c
+++ b/src/overlays/actors/ovl_Bg_Spdweb/z_bg_spdweb.c
@@ -70,7 +70,7 @@ static ColliderTrisInit sTrisInit1 = {
OC2_TYPE_2,
COLSHAPE_TRIS,
},
- 2,
+ ARRAY_COUNT(sTrisElementsInit1),
sTrisElementsInit1,
};
@@ -130,7 +130,7 @@ static ColliderTrisInit sTrisInit2 = {
OC2_TYPE_2,
COLSHAPE_TRIS,
},
- 4,
+ ARRAY_COUNT(sTrisElementsInit2),
sTrisElementsInit2,
};
diff --git a/src/overlays/actors/ovl_Boss_01/z_boss_01.c b/src/overlays/actors/ovl_Boss_01/z_boss_01.c
index a07e2f31e6..11790f3776 100644
--- a/src/overlays/actors/ovl_Boss_01/z_boss_01.c
+++ b/src/overlays/actors/ovl_Boss_01/z_boss_01.c
@@ -130,7 +130,7 @@ static ColliderJntSphElementInit D_809D79D0[3] = {
// static ColliderJntSphInit sJntSphInit = {
static ColliderJntSphInit D_809D7A3C = {
{ COLTYPE_METAL, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_HARD | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_PLAYER, OC2_TYPE_1, COLSHAPE_JNTSPH, },
- 3, D_809D79D0, // sJntSphElementsInit,
+ ARRAY_COUNT(sJntSphElementsInit), D_809D79D0, // sJntSphElementsInit,
};
// static ColliderJntSphElementInit sJntSphElementsInit[1] = {
@@ -144,7 +144,7 @@ static ColliderJntSphElementInit D_809D7A4C[1] = {
// static ColliderJntSphInit sJntSphInit = {
static ColliderJntSphInit D_809D7A70 = {
{ COLTYPE_METAL, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_HARD | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_PLAYER, OC2_TYPE_1, COLSHAPE_JNTSPH, },
- 1, D_809D7A4C, // sJntSphElementsInit,
+ ARRAY_COUNT(sJntSphElementsInit), D_809D7A4C, // sJntSphElementsInit,
};
// static ColliderJntSphElementInit sJntSphElementsInit[11] = {
@@ -198,7 +198,7 @@ static ColliderJntSphElementInit D_809D7A80[11] = {
// static ColliderJntSphInit sJntSphInit = {
static ColliderJntSphInit D_809D7C0C = {
{ COLTYPE_HIT3, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_PLAYER, OC2_TYPE_1, COLSHAPE_JNTSPH, },
- 11, D_809D7A80, // sJntSphElementsInit,
+ ARRAY_COUNT(sJntSphElementsInit), D_809D7A80, // sJntSphElementsInit,
};
// static ColliderJntSphElementInit sJntSphElementsInit[2] = {
@@ -216,7 +216,7 @@ static ColliderJntSphElementInit D_809D7C1C[2] = {
// static ColliderJntSphInit sJntSphInit = {
static ColliderJntSphInit D_809D7C64 = {
{ COLTYPE_HIT3, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_PLAYER, OC2_TYPE_1, COLSHAPE_JNTSPH, },
- 2, D_809D7C1C, // sJntSphElementsInit,
+ ARRAY_COUNT(sJntSphElementsInit), D_809D7C1C, // sJntSphElementsInit,
};
// static ColliderCylinderInit sCylinderInit = {
diff --git a/src/overlays/actors/ovl_Boss_04/z_boss_04.c b/src/overlays/actors/ovl_Boss_04/z_boss_04.c
index a3e969e1a8..8d6bf58795 100644
--- a/src/overlays/actors/ovl_Boss_04/z_boss_04.c
+++ b/src/overlays/actors/ovl_Boss_04/z_boss_04.c
@@ -96,7 +96,7 @@ static ColliderJntSphInit sJntSphInit1 = {
OC2_TYPE_1,
COLSHAPE_JNTSPH,
},
- 1,
+ ARRAY_COUNT(sJntSphElementsInit1),
sJntSphElementsInit1,
};
@@ -123,7 +123,7 @@ static ColliderJntSphInit sJntSphInit2 = {
OC2_TYPE_1,
COLSHAPE_JNTSPH,
},
- 1,
+ ARRAY_COUNT(sJntSphElementsInit2),
sJntSphElementsInit2,
};
diff --git a/src/overlays/actors/ovl_Boss_05/z_boss_05.c b/src/overlays/actors/ovl_Boss_05/z_boss_05.c
index b214a511d6..7b40069d7b 100644
--- a/src/overlays/actors/ovl_Boss_05/z_boss_05.c
+++ b/src/overlays/actors/ovl_Boss_05/z_boss_05.c
@@ -44,7 +44,7 @@ static ColliderJntSphElementInit D_809F1B2C[2] = {
// static ColliderJntSphInit sJntSphInit = {
static ColliderJntSphInit D_809F1B74 = {
{ COLTYPE_HIT3, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_PLAYER, OC2_TYPE_1, COLSHAPE_JNTSPH, },
- 2, D_809F1B2C, // sJntSphElementsInit,
+ ARRAY_COUNT(sJntSphElementsInit), D_809F1B2C, // sJntSphElementsInit,
};
// static ColliderJntSphElementInit sJntSphElementsInit[1] = {
@@ -58,7 +58,7 @@ static ColliderJntSphElementInit D_809F1B84[1] = {
// static ColliderJntSphInit sJntSphInit = {
static ColliderJntSphInit D_809F1BA8 = {
{ COLTYPE_HIT3, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_PLAYER, OC2_TYPE_1, COLSHAPE_JNTSPH, },
- 1, D_809F1B84, // sJntSphElementsInit,
+ ARRAY_COUNT(sJntSphElementsInit), D_809F1B84, // sJntSphElementsInit,
};
// static ColliderJntSphElementInit sJntSphElementsInit[1] = {
@@ -72,7 +72,7 @@ static ColliderJntSphElementInit D_809F1BB8[1] = {
// static ColliderJntSphInit sJntSphInit = {
static ColliderJntSphInit D_809F1BDC = {
{ COLTYPE_HIT3, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_PLAYER, OC2_TYPE_1, COLSHAPE_JNTSPH, },
- 1, D_809F1BB8, // sJntSphElementsInit,
+ ARRAY_COUNT(sJntSphElementsInit), D_809F1BB8, // sJntSphElementsInit,
};
// static DamageTable sDamageTable = {
diff --git a/src/overlays/actors/ovl_Boss_07/z_boss_07.c b/src/overlays/actors/ovl_Boss_07/z_boss_07.c
index ba2a30072d..9b988da18a 100644
--- a/src/overlays/actors/ovl_Boss_07/z_boss_07.c
+++ b/src/overlays/actors/ovl_Boss_07/z_boss_07.c
@@ -296,7 +296,7 @@ static ColliderJntSphElementInit D_80A07A40[11] = {
// static ColliderJntSphInit sJntSphInit = {
static ColliderJntSphInit D_80A07BCC = {
{ COLTYPE_HIT3, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_PLAYER, OC2_TYPE_1, COLSHAPE_JNTSPH, },
- 11, D_80A07A40, // sJntSphElementsInit,
+ ARRAY_COUNT(sJntSphElementsInit), D_80A07A40, // sJntSphElementsInit,
};
// static ColliderCylinderInit sCylinderInit = {
@@ -317,7 +317,7 @@ static ColliderJntSphElementInit D_80A07C08[1] = {
// static ColliderJntSphInit sJntSphInit = {
static ColliderJntSphInit D_80A07C2C = {
{ COLTYPE_HIT3, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_PLAYER, OC2_TYPE_1, COLSHAPE_JNTSPH, },
- 1, D_80A07C08, // sJntSphElementsInit,
+ ARRAY_COUNT(sJntSphElementsInit), D_80A07C08, // sJntSphElementsInit,
};
// static ColliderQuadInit sQuadInit = {
@@ -385,7 +385,7 @@ static ColliderJntSphElementInit D_80A07CDC[11] = {
// static ColliderJntSphInit sJntSphInit = {
static ColliderJntSphInit D_80A07E68 = {
{ COLTYPE_HIT3, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_PLAYER, OC2_TYPE_1, COLSHAPE_JNTSPH, },
- 11, D_80A07CDC, // sJntSphElementsInit,
+ ARRAY_COUNT(sJntSphElementsInit), D_80A07CDC, // sJntSphElementsInit,
};
// static ColliderCylinderInit sCylinderInit = {
diff --git a/src/overlays/actors/ovl_Boss_Hakugin/z_boss_hakugin.c b/src/overlays/actors/ovl_Boss_Hakugin/z_boss_hakugin.c
index 539387aaae..75f530c483 100644
--- a/src/overlays/actors/ovl_Boss_Hakugin/z_boss_hakugin.c
+++ b/src/overlays/actors/ovl_Boss_Hakugin/z_boss_hakugin.c
@@ -128,7 +128,7 @@ static ColliderJntSphElementInit D_80B0E700[19] = {
// static ColliderJntSphInit sJntSphInit = {
static ColliderJntSphInit D_80B0E9AC = {
{ COLTYPE_METAL, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_HARD | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_JNTSPH, },
- 19, D_80B0E700, // sJntSphElementsInit,
+ ARRAY_COUNT(sJntSphElementsInit), D_80B0E700, // sJntSphElementsInit,
};
// static ColliderTrisElementInit sTrisElementsInit[1] = {
@@ -142,7 +142,7 @@ static ColliderTrisElementInit D_80B0E9BC[1] = {
// static ColliderTrisInit sTrisInit = {
static ColliderTrisInit D_80B0E9F8 = {
{ COLTYPE_NONE, AT_ON | AT_TYPE_ENEMY, AC_NONE, OC1_NONE, OC2_TYPE_1, COLSHAPE_TRIS, },
- 1, D_80B0E9BC, // sTrisElementsInit,
+ ARRAY_COUNT(sTrisElementsInit), D_80B0E9BC, // sTrisElementsInit,
};
// static ColliderSphereInit sSphereInit = {
diff --git a/src/overlays/actors/ovl_En_Am/z_en_am.c b/src/overlays/actors/ovl_En_Am/z_en_am.c
index 7bc18e5c5c..5b1b488cb9 100644
--- a/src/overlays/actors/ovl_En_Am/z_en_am.c
+++ b/src/overlays/actors/ovl_En_Am/z_en_am.c
@@ -205,7 +205,7 @@ void EnAm_SpawnEffects(EnAm* this, PlayState* play) {
void func_808AFF9C(EnAm* this) {
f32 lastFrame = Animation_GetLastFrame(&gArmosPushedBackAnim);
- Animation_Change(&this->skelAnime, &gArmosPushedBackAnim, 0.0f, lastFrame, lastFrame, 0, 0.0f);
+ Animation_Change(&this->skelAnime, &gArmosPushedBackAnim, 0.0f, lastFrame, lastFrame, ANIMMODE_LOOP, 0.0f);
this->enemyCollider.info.bumper.dmgFlags = 0x80000088;
this->interactCollider.info.bumper.dmgFlags = 0x77CFFF77;
if (this->actor.colChkInfo.health != 0) {
@@ -380,7 +380,7 @@ void func_808B066C(EnAm* this, PlayState* play) {
void EnAm_TakeDamage(EnAm* this, PlayState* play) {
Animation_Change(&this->skelAnime, &gArmosTakeDamageAnim, 1.0f, 4.0f,
- Animation_GetLastFrame(&gArmosTakeDamageAnim) - 6, 2, 0.0f);
+ Animation_GetLastFrame(&gArmosTakeDamageAnim) - 6, ANIMMODE_ONCE, 0.0f);
func_800BE504(&this->actor, &this->enemyCollider);
this->actor.speedXZ = 6.0f;
Actor_SetColorFilter(&this->actor, 0x4000, 0xFF, 0, Animation_GetLastFrame(&gArmosTakeDamageAnim) - 10);
@@ -449,7 +449,7 @@ void func_808B0894(EnAm* this, PlayState* play) {
}
void func_808B0AD0(EnAm* this, PlayState* play) {
- Animation_Change(&this->skelAnime, &gArmosPushedBackAnim, 1.0f, 0.0f, 8.0f, 2, 0.0f);
+ Animation_Change(&this->skelAnime, &gArmosPushedBackAnim, 1.0f, 0.0f, 8.0f, ANIMMODE_ONCE, 0.0f);
this->actor.world.rot.y = this->actor.yawTowardsPlayer;
this->actor.speedXZ = -6.0f;
this->actionFunc = func_808B0B4C;
diff --git a/src/overlays/actors/ovl_En_Baguo/z_en_baguo.c b/src/overlays/actors/ovl_En_Baguo/z_en_baguo.c
index 46b40b9a90..a0954943b6 100644
--- a/src/overlays/actors/ovl_En_Baguo/z_en_baguo.c
+++ b/src/overlays/actors/ovl_En_Baguo/z_en_baguo.c
@@ -76,7 +76,7 @@ static ColliderJntSphInit sJntSphInit = {
OC2_TYPE_1,
COLSHAPE_JNTSPH,
},
- 1,
+ ARRAY_COUNT(sJntSphElementsInit),
sJntSphElementsInit,
};
diff --git a/src/overlays/actors/ovl_En_Baisen/z_en_baisen.c b/src/overlays/actors/ovl_En_Baisen/z_en_baisen.c
index d00a92aa26..e91fc61f66 100644
--- a/src/overlays/actors/ovl_En_Baisen/z_en_baisen.c
+++ b/src/overlays/actors/ovl_En_Baisen/z_en_baisen.c
@@ -59,7 +59,7 @@ static u16 sTextIds[] = { 0x2ABD, 0x2ABB, 0x2AD5, 0x2AD6, 0x2AD7, 0x2AD8, 0x2AC6
static AnimationHeader* D_80BE8E4C[] = { &object_bai_Anim_0011C0, &object_bai_Anim_0008B4, &object_bai_Anim_008198 };
-static u8 animModes[] = { ANIMMODE_LOOP, ANIMMODE_LOOP };
+static u8 sAnimModes[] = { ANIMMODE_LOOP, ANIMMODE_LOOP };
void EnBaisen_Init(Actor* thisx, PlayState* play) {
EnBaisen* this = THIS;
@@ -104,7 +104,7 @@ void EnBaisen_ChangeAnimation(EnBaisen* this, s32 animIndex) {
this->animIndex = animIndex;
this->frameCount = Animation_GetLastFrame(D_80BE8E4C[animIndex]);
Animation_Change(&this->skelAnime, D_80BE8E4C[this->animIndex], 1.0f, 0.0f, this->frameCount,
- animModes[this->animIndex], -10.0f);
+ sAnimModes[this->animIndex], -10.0f);
}
void func_80BE871C(EnBaisen* this) {
diff --git a/src/overlays/actors/ovl_En_Bal/z_en_bal.c b/src/overlays/actors/ovl_En_Bal/z_en_bal.c
index 98f3e6c4a3..9617e0559b 100644
--- a/src/overlays/actors/ovl_En_Bal/z_en_bal.c
+++ b/src/overlays/actors/ovl_En_Bal/z_en_bal.c
@@ -78,7 +78,7 @@ static ColliderJntSphElementInit D_80A63D0C[1] = {
// static ColliderJntSphInit sJntSphInit = {
static ColliderJntSphInit D_80A63D30 = {
{ COLTYPE_NONE, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_JNTSPH, },
- 1, D_80A63D0C, // sJntSphElementsInit,
+ ARRAY_COUNT(sJntSphElementsInit), D_80A63D0C, // sJntSphElementsInit,
};
#endif
diff --git a/src/overlays/actors/ovl_En_Bigokuta/z_en_bigokuta.c b/src/overlays/actors/ovl_En_Bigokuta/z_en_bigokuta.c
index e14da9e04c..22e87d2a57 100644
--- a/src/overlays/actors/ovl_En_Bigokuta/z_en_bigokuta.c
+++ b/src/overlays/actors/ovl_En_Bigokuta/z_en_bigokuta.c
@@ -208,7 +208,7 @@ void EnBigokuta_SpawnRipple(EnBigokuta* this, PlayState* play) {
}
void EnBigokuta_SetupIdle(EnBigokuta* this) {
- Animation_Change(&this->skelAnime, &gBigOctoIdleAnim, 0.5f, 0.0f, 0.0f, 1, -3.0f);
+ Animation_Change(&this->skelAnime, &gBigOctoIdleAnim, 0.5f, 0.0f, 0.0f, ANIMMODE_LOOP_INTERP, -3.0f);
this->actionFunc = EnBigokuta_Idle;
}
@@ -287,7 +287,7 @@ void EnBigokuta_SetupSuckInPlayer(EnBigokuta* this, PlayState* play) {
Math_Vec3f_Copy(&this->playerPos, &player->actor.world.pos);
this->timer = 0;
- Animation_Change(&this->skelAnime, &gBigOctoIdleAnim, 1.0f, 12.0f, 12.0f, 2, -3.0f);
+ Animation_Change(&this->skelAnime, &gBigOctoIdleAnim, 1.0f, 12.0f, 12.0f, ANIMMODE_ONCE, -3.0f);
ActorCutscene_SetIntentToPlay(this->actor.cutscene);
this->playerHoldPos.x = (Math_SinS(this->actor.shape.rot.y) * 66.0f) + this->actor.world.pos.x;
diff --git a/src/overlays/actors/ovl_En_Bigslime/z_en_bigslime.c b/src/overlays/actors/ovl_En_Bigslime/z_en_bigslime.c
index fd7ba49070..69686feabd 100644
--- a/src/overlays/actors/ovl_En_Bigslime/z_en_bigslime.c
+++ b/src/overlays/actors/ovl_En_Bigslime/z_en_bigslime.c
@@ -2320,7 +2320,7 @@ void EnBigslime_SetupCutsceneDefeat(EnBigslime* this, PlayState* play) {
s16 yawOffset;
Animation_Change(&this->skelAnime, &gGekkoDamagedAnim, 0.5f, 0.0f,
- Animation_GetLastFrame(&gGekkoDamagedAnim.common), 3, 0.0f);
+ Animation_GetLastFrame(&gGekkoDamagedAnim.common), ANIMMODE_ONCE_INTERP, 0.0f);
this->gekkoCollider.base.acFlags &= ~AC_ON;
this->defeatTimer = 60;
this->actor.speedXZ = 10.0f;
diff --git a/src/overlays/actors/ovl_En_Bom/z_en_bom.c b/src/overlays/actors/ovl_En_Bom/z_en_bom.c
index c00a9adf5f..1e43b824b8 100644
--- a/src/overlays/actors/ovl_En_Bom/z_en_bom.c
+++ b/src/overlays/actors/ovl_En_Bom/z_en_bom.c
@@ -89,7 +89,7 @@ static ColliderJntSphInit sJntSphInit1 = {
OC2_NONE,
COLSHAPE_JNTSPH,
},
- 1,
+ ARRAY_COUNT(sJntSphElementsInit1),
sJntSphElementsInit1,
};
@@ -116,7 +116,7 @@ static ColliderJntSphInit sJntSphInit2 = {
OC2_NONE,
COLSHAPE_JNTSPH,
},
- 1,
+ ARRAY_COUNT(sJntSphElementsInit2),
sJntSphElementsInit2,
};
diff --git a/src/overlays/actors/ovl_En_Bombf/z_en_bombf.c b/src/overlays/actors/ovl_En_Bombf/z_en_bombf.c
index 5fb2758c5d..4fbe400340 100644
--- a/src/overlays/actors/ovl_En_Bombf/z_en_bombf.c
+++ b/src/overlays/actors/ovl_En_Bombf/z_en_bombf.c
@@ -79,7 +79,7 @@ static ColliderJntSphInit sJntSphInit = {
OC2_NONE,
COLSHAPE_JNTSPH,
},
- 1,
+ ARRAY_COUNT(sJntSphElementsInit),
sJntSphElementsInit,
};
diff --git a/src/overlays/actors/ovl_En_Bomjimb/z_en_bomjimb.c b/src/overlays/actors/ovl_En_Bomjimb/z_en_bomjimb.c
index da81a580c7..687555e889 100644
--- a/src/overlays/actors/ovl_En_Bomjimb/z_en_bomjimb.c
+++ b/src/overlays/actors/ovl_En_Bomjimb/z_en_bomjimb.c
@@ -72,6 +72,22 @@ static ColliderCylinderInit sCylinderInit = {
{ 20, 30, 0, { 0, 0, 0 } },
};
+static AnimationHeader* sAnimations[] = {
+ &gBomberIdleAnim, &object_cs_Anim_00FAF4, &object_cs_Anim_0057C8, &object_cs_Anim_0053F4,
+ &object_cs_Anim_002044, &object_cs_Anim_01007C, &object_cs_Anim_00349C, &object_cs_Anim_004960,
+ &object_cs_Anim_005128, &object_cs_Anim_004C1C, &object_cs_Anim_002930, &object_cs_Anim_001A1C,
+ &object_cs_Anim_003EE4, &object_cs_Anim_00478C, &object_cs_Anim_00433C, &object_cs_Anim_0060E8,
+ &object_cs_Anim_001708, &object_cs_Anim_005DC4, &object_cs_Anim_0026B0, &object_cs_Anim_0036B0,
+ &object_cs_Anim_0031C4, &object_cs_Anim_010B68,
+};
+
+static u8 sAnimModes[] = {
+ ANIMMODE_LOOP, ANIMMODE_LOOP, ANIMMODE_LOOP, ANIMMODE_LOOP, ANIMMODE_LOOP, ANIMMODE_LOOP,
+ ANIMMODE_ONCE, ANIMMODE_ONCE, ANIMMODE_LOOP, ANIMMODE_LOOP, ANIMMODE_LOOP, ANIMMODE_LOOP,
+ ANIMMODE_ONCE, ANIMMODE_LOOP, ANIMMODE_LOOP, ANIMMODE_LOOP, ANIMMODE_ONCE, ANIMMODE_LOOP,
+ ANIMMODE_ONCE, ANIMMODE_LOOP, ANIMMODE_LOOP, ANIMMODE_ONCE, ANIMMODE_LOOP, ANIMMODE_LOOP,
+};
+
void EnBomjimb_Init(Actor* thisx, PlayState* play) {
EnBomjimb* this = THIS;
@@ -159,21 +175,9 @@ void EnBomjimb_Destroy(Actor* thisx, PlayState* play) {
}
void func_80C0113C(EnBomjimb* this, s32 arg1, f32 arg2) {
- static AnimationHeader* sAnimations[] = {
- &gBomberIdleAnim, &object_cs_Anim_00FAF4, &object_cs_Anim_0057C8, &object_cs_Anim_0053F4,
- &object_cs_Anim_002044, &object_cs_Anim_01007C, &object_cs_Anim_00349C, &object_cs_Anim_004960,
- &object_cs_Anim_005128, &object_cs_Anim_004C1C, &object_cs_Anim_002930, &object_cs_Anim_001A1C,
- &object_cs_Anim_003EE4, &object_cs_Anim_00478C, &object_cs_Anim_00433C, &object_cs_Anim_0060E8,
- &object_cs_Anim_001708, &object_cs_Anim_005DC4, &object_cs_Anim_0026B0, &object_cs_Anim_0036B0,
- &object_cs_Anim_0031C4, &object_cs_Anim_010B68,
- };
- static u8 D_80C03218[] = {
- 0, 0, 0, 0, 0, 0, 2, 2, 0, 0, 0, 0, 2, 0, 0, 0, 2, 0, 2, 0, 0, 2, 0, 0,
- };
-
this->unk_2DC = arg1;
this->unk_2B8 = Animation_GetLastFrame(sAnimations[arg1]);
- Animation_Change(&this->skelAnime, sAnimations[this->unk_2DC], arg2, 0.0f, this->unk_2B8, D_80C03218[this->unk_2DC],
+ Animation_Change(&this->skelAnime, sAnimations[this->unk_2DC], arg2, 0.0f, this->unk_2B8, sAnimModes[this->unk_2DC],
-4.0f);
}
diff --git a/src/overlays/actors/ovl_En_Bsb/z_en_bsb.c b/src/overlays/actors/ovl_En_Bsb/z_en_bsb.c
index dfb92082d7..5a3ce9cf87 100644
--- a/src/overlays/actors/ovl_En_Bsb/z_en_bsb.c
+++ b/src/overlays/actors/ovl_En_Bsb/z_en_bsb.c
@@ -72,7 +72,7 @@ static ColliderJntSphElementInit D_80C0F8D4[7] = {
// static ColliderJntSphInit sJntSphInit = {
static ColliderJntSphInit D_80C0F9D0 = {
{ COLTYPE_HIT6, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_PLAYER, OC2_TYPE_1, COLSHAPE_JNTSPH, },
- 7, D_80C0F8D4, // sJntSphElementsInit,
+ ARRAY_COUNT(sJntSphElementsInit), D_80C0F8D4, // sJntSphElementsInit,
};
// static DamageTable sDamageTable = {
diff --git a/src/overlays/actors/ovl_En_Bubble/z_en_bubble.c b/src/overlays/actors/ovl_En_Bubble/z_en_bubble.c
index 82fb047f33..3030041ca8 100644
--- a/src/overlays/actors/ovl_En_Bubble/z_en_bubble.c
+++ b/src/overlays/actors/ovl_En_Bubble/z_en_bubble.c
@@ -47,7 +47,7 @@ static ColliderJntSphElementInit D_808A0700[2] = {
// static ColliderJntSphInit sJntSphInit = {
static ColliderJntSphInit D_808A0748 = {
{ COLTYPE_HIT6, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_JNTSPH, },
- 2, D_808A0700, // sJntSphElementsInit,
+ ARRAY_COUNT(sJntSphElementsInit), D_808A0700, // sJntSphElementsInit,
};
// sColChkInfoInit
diff --git a/src/overlays/actors/ovl_En_Butte/z_en_butte.c b/src/overlays/actors/ovl_En_Butte/z_en_butte.c
index a25a81a925..5a1744da46 100644
--- a/src/overlays/actors/ovl_En_Butte/z_en_butte.c
+++ b/src/overlays/actors/ovl_En_Butte/z_en_butte.c
@@ -49,7 +49,7 @@ static ColliderJntSphInit sJntSphInit = {
OC2_TYPE_1,
COLSHAPE_JNTSPH,
},
- 1,
+ ARRAY_COUNT(sJntSphElementsInit),
sJntSphElementsInit,
};
@@ -190,7 +190,7 @@ void EnButte_Init(Actor* thisx, PlayState* play) {
this->unk_256 = Rand_ZeroOne() * 0xFFFF;
this->unk_258 = Rand_ZeroOne() * 0xFFFF;
- Animation_Change(&this->skelAnime, &gameplay_field_keep_Anim_001D20, 1.0f, 0.0f, 0.0f, 1, 0.0f);
+ Animation_Change(&this->skelAnime, &gameplay_field_keep_Anim_001D20, 1.0f, 0.0f, 0.0f, ANIMMODE_LOOP_INTERP, 0.0f);
func_8091C748(this);
this->actor.shape.rot.x -= 0x2320;
this->unk_250 = 1;
diff --git a/src/overlays/actors/ovl_En_Crow/z_en_crow.c b/src/overlays/actors/ovl_En_Crow/z_en_crow.c
index 46becf0850..29a4c62bf0 100644
--- a/src/overlays/actors/ovl_En_Crow/z_en_crow.c
+++ b/src/overlays/actors/ovl_En_Crow/z_en_crow.c
@@ -62,7 +62,7 @@ static ColliderJntSphInit sJntSphInit = {
OC2_TYPE_1,
COLSHAPE_JNTSPH,
},
- 1,
+ ARRAY_COUNT(sJntSphElementsInit),
sJntSphElementsInit,
};
diff --git a/src/overlays/actors/ovl_En_Daiku/z_en_daiku.c b/src/overlays/actors/ovl_En_Daiku/z_en_daiku.c
index 216b2d2f12..6e879b50e3 100644
--- a/src/overlays/actors/ovl_En_Daiku/z_en_daiku.c
+++ b/src/overlays/actors/ovl_En_Daiku/z_en_daiku.c
@@ -57,6 +57,17 @@ static ColliderCylinderInit sCylinderInit = {
{ 20, 60, 0, { 0, 0, 0 } },
};
+static AnimationHeader* sAnimations[] = {
+ &object_daiku_Anim_002FA0, &object_daiku_Anim_00ACD0, &object_daiku_Anim_00C92C,
+ &object_daiku_Anim_000C44, &object_daiku_Anim_00C234, &object_daiku_Anim_000600,
+ &object_daiku_Anim_001114, &object_daiku_Anim_00B690, &object_daiku_Anim_00BEAC,
+};
+
+static u8 sAnimModes[] = {
+ ANIMMODE_LOOP, ANIMMODE_LOOP, ANIMMODE_LOOP, ANIMMODE_LOOP, ANIMMODE_ONCE,
+ ANIMMODE_LOOP, ANIMMODE_LOOP, ANIMMODE_ONCE, ANIMMODE_ONCE,
+};
+
void EnDaiku_Init(Actor* thisx, PlayState* play) {
EnDaiku* this = THIS;
@@ -119,17 +130,8 @@ void EnDaiku_Destroy(Actor* thisx, PlayState* play) {
}
void func_8094373C(EnDaiku* this, s32 arg1) {
- static AnimationHeader* D_809440A4[] = {
- &object_daiku_Anim_002FA0, &object_daiku_Anim_00ACD0, &object_daiku_Anim_00C92C,
- &object_daiku_Anim_000C44, &object_daiku_Anim_00C234, &object_daiku_Anim_000600,
- &object_daiku_Anim_001114, &object_daiku_Anim_00B690, &object_daiku_Anim_00BEAC,
- };
- static u8 D_809440C8[] = {
- 0, 0, 0, 0, 2, 0, 0, 2, 2,
- };
-
- this->unk_284 = Animation_GetLastFrame(D_809440A4[arg1]);
- Animation_Change(&this->skelAnime, D_809440A4[arg1], 1.0f, 0.0f, this->unk_284, D_809440C8[arg1], -4.0f);
+ this->unk_284 = Animation_GetLastFrame(sAnimations[arg1]);
+ Animation_Change(&this->skelAnime, sAnimations[arg1], 1.0f, 0.0f, this->unk_284, sAnimModes[arg1], -4.0f);
}
void func_809437C8(EnDaiku* this) {
diff --git a/src/overlays/actors/ovl_En_Daiku2/z_en_daiku2.c b/src/overlays/actors/ovl_En_Daiku2/z_en_daiku2.c
index a573a4dcbe..f8b42045f4 100644
--- a/src/overlays/actors/ovl_En_Daiku2/z_en_daiku2.c
+++ b/src/overlays/actors/ovl_En_Daiku2/z_en_daiku2.c
@@ -127,7 +127,8 @@ void func_80BE6408(EnDaiku2* this, s32 arg1) {
&object_daiku_Anim_001A24, &object_daiku_Anim_002134, &object_daiku_Anim_00D328,
};
static u8 D_80BE7958[] = {
- 0, 0, 0, 0, 2, 0, 0, 0, 0, 2, 0,
+ ANIMMODE_LOOP, ANIMMODE_LOOP, ANIMMODE_LOOP, ANIMMODE_LOOP, ANIMMODE_ONCE, ANIMMODE_LOOP,
+ ANIMMODE_LOOP, ANIMMODE_LOOP, ANIMMODE_LOOP, ANIMMODE_ONCE, ANIMMODE_LOOP,
};
f32 sp34 = 1.0f;
@@ -263,7 +264,8 @@ void func_80BE66E4(EnDaiku2* this, PlayState* play) {
func_80BE6408(this, 10);
} else if ((this->unk_276 == 10) && (this->unk_284 <= sp9C)) {
this->unk_284 = Animation_GetLastFrame(&object_daiku_Anim_002134);
- Animation_Change(&this->skelAnime, &object_daiku_Anim_002134, -1.0f, this->unk_284, 0.0f, 2, -4.0f);
+ Animation_Change(&this->skelAnime, &object_daiku_Anim_002134, -1.0f, this->unk_284, 0.0f, ANIMMODE_ONCE,
+ -4.0f);
this->unk_276 = 11;
} else if ((this->unk_276 == 11) && (sp9C <= 0.0f)) {
func_80BE6408(this, 8);
diff --git a/src/overlays/actors/ovl_En_Death/z_en_death.c b/src/overlays/actors/ovl_En_Death/z_en_death.c
index 5ed61f1461..edc240cd53 100644
--- a/src/overlays/actors/ovl_En_Death/z_en_death.c
+++ b/src/overlays/actors/ovl_En_Death/z_en_death.c
@@ -79,7 +79,7 @@ static ColliderTrisElementInit D_808C9938[2] = {
// static ColliderTrisInit sTrisInit = {
static ColliderTrisInit D_808C99B0 = {
{ COLTYPE_METAL, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_HARD | AC_TYPE_PLAYER, OC1_NONE, OC2_TYPE_1, COLSHAPE_TRIS, },
- 2, D_808C9938, // sTrisElementsInit,
+ ARRAY_COUNT(sTrisElementsInit), D_808C9938, // sTrisElementsInit,
};
// static ColliderQuadInit sQuadInit = {
diff --git a/src/overlays/actors/ovl_En_Dekubaba/z_en_dekubaba.c b/src/overlays/actors/ovl_En_Dekubaba/z_en_dekubaba.c
index 250f4c7ee9..d05ac10039 100644
--- a/src/overlays/actors/ovl_En_Dekubaba/z_en_dekubaba.c
+++ b/src/overlays/actors/ovl_En_Dekubaba/z_en_dekubaba.c
@@ -79,7 +79,7 @@ static ColliderJntSphElementInit D_808B4D60[7] = {
// static ColliderJntSphInit sJntSphInit = {
static ColliderJntSphInit D_808B4E5C = {
{ COLTYPE_HIT6, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_JNTSPH, },
- 7, D_808B4D60, // sJntSphElementsInit,
+ ARRAY_COUNT(sJntSphElementsInit), D_808B4D60, // sJntSphElementsInit,
};
// sColChkInfoInit
diff --git a/src/overlays/actors/ovl_En_Dinofos/z_en_dinofos.c b/src/overlays/actors/ovl_En_Dinofos/z_en_dinofos.c
index a3c995d187..92056c2ae6 100644
--- a/src/overlays/actors/ovl_En_Dinofos/z_en_dinofos.c
+++ b/src/overlays/actors/ovl_En_Dinofos/z_en_dinofos.c
@@ -180,7 +180,7 @@ static ColliderJntSphInit sJntSphInit = {
OC2_TYPE_1,
COLSHAPE_JNTSPH,
},
- 9,
+ ARRAY_COUNT(sJntSphElementsInit),
sJntSphElementsInit,
};
@@ -467,7 +467,7 @@ void func_8089B100(EnDinofos* this, PlayState* play) {
Animation_Change(&this->skelAnime, &object_dinofos_Anim_001CCC, 1.0f,
Animation_GetLastFrame(&object_dinofos_Anim_001CCC),
- Animation_GetLastFrame(&object_dinofos_Anim_001CCC), 2, 0.0f);
+ Animation_GetLastFrame(&object_dinofos_Anim_001CCC), ANIMMODE_ONCE, 0.0f);
func_800BE33C(&subCam->eye, &subCam->at, &this->unk_29A, true);
Math_Vec3f_Diff(&this->actor.world.pos, &player->actor.world.pos, &sp3C);
this->unk_2BC.x = player->actor.world.pos.x + (0.4f * sp3C.x);
@@ -715,7 +715,7 @@ void func_8089BBB4(EnDinofos* this, PlayState* play) {
this->skelAnime.playSpeed = this->actor.speedXZ * 0.166666671634f;
} else {
Animation_Change(&this->skelAnime, &object_dinofos_Anim_00D62C, this->actor.speedXZ * 0.166666671634f, 0.0f,
- 0.0f, 0, -4.0f);
+ 0.0f, ANIMMODE_LOOP, -4.0f);
}
this->actor.world.rot.y = BINANG_ADD(this->actor.shape.rot.y, 0x4000);
@@ -864,7 +864,7 @@ void func_8089C2A8(EnDinofos* this, PlayState* play) {
if ((this->actor.velocity.y < 0.0f) && (this->skelAnime.animation == &object_dinofos_Anim_001CCC)) {
this->colliderQuad.base.atFlags |= AT_ON;
this->colliderJntSph.base.acFlags |= AC_ON;
- Animation_Change(&this->skelAnime, &object_dinofos_Anim_0025B4, 1.0f, 7.0f, 13.0f, 2, -2.0f);
+ Animation_Change(&this->skelAnime, &object_dinofos_Anim_0025B4, 1.0f, 7.0f, 13.0f, ANIMMODE_ONCE, -2.0f);
}
if (this->actor.bgCheckFlags & 1) {
@@ -935,7 +935,8 @@ void func_8089C56C(EnDinofos* this, PlayState* play) {
}
void func_8089C690(EnDinofos* this) {
- Animation_Change(&this->skelAnime, &object_dinofos_Anim_0025B4, -1.0f, this->skelAnime.curFrame, 0.0f, 2, 0.0f);
+ Animation_Change(&this->skelAnime, &object_dinofos_Anim_0025B4, -1.0f, this->skelAnime.curFrame, 0.0f,
+ ANIMMODE_ONCE, 0.0f);
this->colliderQuad.base.atFlags &= ~(AT_ON | AT_BOUNCED);
if (this->actionFunc != func_8089C2A8) {
this->actor.world.rot.y = this->actor.shape.rot.y;
@@ -1166,8 +1167,8 @@ void func_8089D11C(EnDinofos* this, s16 arg1) {
} else {
this->actor.speedXZ = 15.0f;
}
- Animation_Change(&this->skelAnime, &object_dinofos_Anim_00D62C, this->actor.speedXZ * (1.0f / 7.5f), 0.0f, 0.0f, 0,
- -4.0f);
+ Animation_Change(&this->skelAnime, &object_dinofos_Anim_00D62C, this->actor.speedXZ * (1.0f / 7.5f), 0.0f, 0.0f,
+ ANIMMODE_LOOP, -4.0f);
this->actor.world.rot.y = BINANG_ADD(this->actor.shape.rot.y, 0x4000);
this->unk_292 = 10;
this->unk_2A4 = 0.0f;
diff --git a/src/overlays/actors/ovl_En_Dodongo/z_en_dodongo.c b/src/overlays/actors/ovl_En_Dodongo/z_en_dodongo.c
index 588071941b..45311b83f2 100644
--- a/src/overlays/actors/ovl_En_Dodongo/z_en_dodongo.c
+++ b/src/overlays/actors/ovl_En_Dodongo/z_en_dodongo.c
@@ -169,7 +169,7 @@ static ColliderJntSphInit sJntSphInit1 = {
OC2_TYPE_1,
COLSHAPE_JNTSPH,
},
- 10,
+ ARRAY_COUNT(sJntSphElementsInit1),
sJntSphElementsInit1,
};
@@ -231,7 +231,7 @@ static ColliderJntSphInit sJntSphInit3 = {
OC2_NONE,
COLSHAPE_JNTSPH,
},
- 3,
+ ARRAY_COUNT(sJntSphElementsInit2),
sJntSphElementsInit2,
};
@@ -691,7 +691,7 @@ void func_80877D90(EnDodongo* this, PlayState* play) {
}
void func_80877DE0(EnDodongo* this) {
- Animation_Change(&this->skelAnime, &object_dodongo_Anim_0028F0, -1.0f, 35.0f, 0.0f, 2, -4.0f);
+ Animation_Change(&this->skelAnime, &object_dodongo_Anim_0028F0, -1.0f, 35.0f, 0.0f, ANIMMODE_ONCE, -4.0f);
this->actor.flags |= ACTOR_FLAG_10;
this->timer = 25;
this->actionFunc = func_80877E60;
diff --git a/src/overlays/actors/ovl_En_Egol/z_en_egol.c b/src/overlays/actors/ovl_En_Egol/z_en_egol.c
index 8952e118bb..373d06583f 100644
--- a/src/overlays/actors/ovl_En_Egol/z_en_egol.c
+++ b/src/overlays/actors/ovl_En_Egol/z_en_egol.c
@@ -47,7 +47,7 @@ static ColliderJntSphElementInit D_80A80C64[6] = {
// static ColliderJntSphInit sJntSphInit = {
static ColliderJntSphInit D_80A80D3C = {
{ COLTYPE_METAL, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_JNTSPH, },
- 6, D_80A80C64, // sJntSphElementsInit,
+ ARRAY_COUNT(sJntSphElementsInit), D_80A80C64, // sJntSphElementsInit,
};
// static ColliderJntSphElementInit sJntSphElementsInit[1] = {
@@ -61,7 +61,7 @@ static ColliderJntSphElementInit D_80A80C40[1] = {
// static ColliderJntSphInit sJntSphInit = {
static ColliderJntSphInit D_80A80D4C = {
{ COLTYPE_NONE, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_JNTSPH, },
- 1, D_80A80C40, // sJntSphElementsInit,
+ ARRAY_COUNT(sJntSphElementsInit), D_80A80C40, // sJntSphElementsInit,
};
// static ColliderQuadInit sQuadInit = {
diff --git a/src/overlays/actors/ovl_En_Encount2/z_en_encount2.c b/src/overlays/actors/ovl_En_Encount2/z_en_encount2.c
index 413dc92637..d7c0cc5618 100644
--- a/src/overlays/actors/ovl_En_Encount2/z_en_encount2.c
+++ b/src/overlays/actors/ovl_En_Encount2/z_en_encount2.c
@@ -60,7 +60,7 @@ static ColliderJntSphInit sJntSphInit = {
OC2_TYPE_1,
COLSHAPE_JNTSPH,
},
- 1,
+ ARRAY_COUNT(sJntSphElementsInit),
sJntSphElementsInit,
};
diff --git a/src/overlays/actors/ovl_En_Ending_Hero6/z_en_ending_hero6.c b/src/overlays/actors/ovl_En_Ending_Hero6/z_en_ending_hero6.c
index 95e9c362be..e22603b4ef 100644
--- a/src/overlays/actors/ovl_En_Ending_Hero6/z_en_ending_hero6.c
+++ b/src/overlays/actors/ovl_En_Ending_Hero6/z_en_ending_hero6.c
@@ -69,7 +69,7 @@ void EnEndingHero6_Destroy(Actor* thisx, PlayState* play) {
void EnEndingHero6_InitSkelAnime(EnEndingHero6* this, s32 npcIndex) {
this->animIndex = npcIndex;
this->frameCount = Animation_GetLastFrame(sAnimations[npcIndex]);
- Animation_Change(&this->skelAnime, sAnimations[this->animIndex], 1.0f, 0.f, this->frameCount, 0, 0.0f);
+ Animation_Change(&this->skelAnime, sAnimations[this->animIndex], 1.0f, 0.f, this->frameCount, ANIMMODE_LOOP, 0.0f);
}
void EnEndingHero6_SetupIdle(EnEndingHero6* this) {
diff --git a/src/overlays/actors/ovl_En_Famos/z_en_famos.c b/src/overlays/actors/ovl_En_Famos/z_en_famos.c
index f8dd32a84b..dd78c9ba0e 100644
--- a/src/overlays/actors/ovl_En_Famos/z_en_famos.c
+++ b/src/overlays/actors/ovl_En_Famos/z_en_famos.c
@@ -139,7 +139,7 @@ static ColliderJntSphInit sJntSphInit = {
OC2_TYPE_1,
COLSHAPE_JNTSPH,
},
- 2,
+ ARRAY_COUNT(sJntSphElementsInit),
sJntSphElementsInit,
};
diff --git a/src/overlays/actors/ovl_En_Firefly/z_en_firefly.c b/src/overlays/actors/ovl_En_Firefly/z_en_firefly.c
index 3e6e4f53cb..9c6044685b 100644
--- a/src/overlays/actors/ovl_En_Firefly/z_en_firefly.c
+++ b/src/overlays/actors/ovl_En_Firefly/z_en_firefly.c
@@ -328,7 +328,7 @@ void EnFirefly_FlyIdle(EnFirefly* this, PlayState* play) {
void EnFirefly_SetupFall(EnFirefly* this, PlayState* play) {
this->timer = 40;
this->actor.velocity.y = 0.0f;
- Animation_Change(&this->skelAnime, &object_firefly_Anim_00017C, 0.0f, 6.0f, 6.0f, 2, 0.0f);
+ Animation_Change(&this->skelAnime, &object_firefly_Anim_00017C, 0.0f, 6.0f, 6.0f, ANIMMODE_ONCE, 0.0f);
Actor_PlaySfxAtPos(&this->actor, NA_SE_EN_FFLY_DEAD);
this->actor.flags |= ACTOR_FLAG_10;
diff --git a/src/overlays/actors/ovl_En_Fish/z_en_fish.c b/src/overlays/actors/ovl_En_Fish/z_en_fish.c
index 7e927e98e9..268768660b 100644
--- a/src/overlays/actors/ovl_En_Fish/z_en_fish.c
+++ b/src/overlays/actors/ovl_En_Fish/z_en_fish.c
@@ -58,7 +58,7 @@ static ColliderJntSphInit sJntSphInit = {
OC2_TYPE_1,
COLSHAPE_JNTSPH,
},
- 1,
+ ARRAY_COUNT(sJntSphElementsInit),
sJntSphElementsInit,
};
@@ -92,12 +92,12 @@ f32 func_8091D630(Vec3f* arg0, Vec3f* arg1) {
void func_8091D660(EnFish* this) {
Animation_Change(&this->skelAnime, &gameplay_keep_Anim_02F0EC, 1.0f, 0.0f,
- Animation_GetLastFrame(&gameplay_keep_Anim_02F0EC), 1, 2.0f);
+ Animation_GetLastFrame(&gameplay_keep_Anim_02F0EC), ANIMMODE_LOOP_INTERP, 2.0f);
}
void func_8091D6C4(EnFish* this) {
Animation_Change(&this->skelAnime, &gameplay_keep_Anim_02E65C, 1.0f, 0.0f,
- Animation_GetLastFrame(&gameplay_keep_Anim_02E65C), 1, 2.0f);
+ Animation_GetLastFrame(&gameplay_keep_Anim_02E65C), ANIMMODE_LOOP_INTERP, 2.0f);
}
void func_8091D728(EnFish* this) {
diff --git a/src/overlays/actors/ovl_En_Fish2/z_en_fish2.c b/src/overlays/actors/ovl_En_Fish2/z_en_fish2.c
index 1fe0c519f2..a81d6f573b 100644
--- a/src/overlays/actors/ovl_En_Fish2/z_en_fish2.c
+++ b/src/overlays/actors/ovl_En_Fish2/z_en_fish2.c
@@ -95,7 +95,7 @@ static ColliderJntSphInit sJntSphInit = {
OC2_TYPE_1,
COLSHAPE_JNTSPH,
},
- 2,
+ ARRAY_COUNT(sJntSphElementsInit),
sJntSphElementsInit,
};
@@ -107,7 +107,9 @@ void func_80B28370(EnFish2* this, s32 arg0) {
&object_fb_Anim_0013AC, &object_fb_Anim_0007D4, &object_fb_Anim_0006D8,
&object_fb_Anim_0006D8, &object_fb_Anim_001174, &object_fb_Anim_000ACC,
};
- static u8 D_80B2B3A0[] = { 0, 0, 2, 2, 2, 2 };
+ static u8 D_80B2B3A0[] = {
+ ANIMMODE_LOOP, ANIMMODE_LOOP, ANIMMODE_ONCE, ANIMMODE_ONCE, ANIMMODE_ONCE, ANIMMODE_ONCE,
+ };
f32 sp34;
this->unk_2AC = arg0;
diff --git a/src/overlays/actors/ovl_En_Giant/z_en_giant.c b/src/overlays/actors/ovl_En_Giant/z_en_giant.c
index 31b802531a..61eac74f8b 100644
--- a/src/overlays/actors/ovl_En_Giant/z_en_giant.c
+++ b/src/overlays/actors/ovl_En_Giant/z_en_giant.c
@@ -96,7 +96,7 @@ void EnGiant_ChangeAnimation(EnGiant* this, s16 newAnimationId) {
if ((this->animationId == GIANT_ANIMATION_WALKING_LOOP && newAnimationId != GIANT_ANIMATION_WALKING_LOOP) ||
(newAnimationId == GIANT_ANIMATION_WALKING_LOOP && this->animationId != GIANT_ANIMATION_WALKING_LOOP)) {
Animation_Change(&this->skelAnime, sAnimations[newAnimationId], 1.0f, 0.0f,
- Animation_GetLastFrame(&sAnimations[newAnimationId]->common), 2, 10.0f);
+ Animation_GetLastFrame(&sAnimations[newAnimationId]->common), ANIMMODE_ONCE, 10.0f);
} else {
Animation_PlayOnce(&this->skelAnime, sAnimations[newAnimationId]);
}
@@ -193,7 +193,7 @@ void EnGiant_Init(Actor* thisx, PlayState* play) {
this->actionFunc = EnGiant_PerformClockTowerSuccessActions;
Animation_Change(&this->skelAnime, &gGiantRaisedArmsStartAnim, 0.0f,
Animation_GetLastFrame(&gGiantRaisedArmsStartAnim) - 1.0f,
- Animation_GetLastFrame(&gGiantRaisedArmsStartAnim), 2, 0.0f);
+ Animation_GetLastFrame(&gGiantRaisedArmsStartAnim), ANIMMODE_ONCE, 0.0f);
this->actor.draw = EnGiant_Draw;
this->actor.velocity.y = 0.0f;
this->actor.terminalVelocity = 0.0f;
@@ -204,7 +204,7 @@ void EnGiant_Init(Actor* thisx, PlayState* play) {
Actor_SetScale(&this->actor, 0.32f);
this->actionFunc = EnGiant_PlayClockTowerFailureAnimation;
Animation_Change(&this->skelAnime, &gGiantStruggleLoopAnim, 1.0f, 0.0f,
- Animation_GetLastFrame(&gGiantStruggleStartAnim), 0, 0.0f);
+ Animation_GetLastFrame(&gGiantStruggleStartAnim), ANIMMODE_LOOP, 0.0f);
this->actor.draw = EnGiant_Draw;
this->actor.velocity.y = 0.0f;
this->actor.terminalVelocity = 0.0f;
@@ -305,7 +305,7 @@ void EnGiant_ChangeAnimationBasedOnCsAction(EnGiant* this) {
case GIANT_CS_ACTION_HOLDING_UP_MOON_IN_CLOCK_TOWER:
Animation_Change(&this->skelAnime, &gGiantRaisedArmsStartAnim, 0.0f,
Animation_GetLastFrame(&gGiantRaisedArmsStartAnim) - 1.0f,
- Animation_GetLastFrame(&gGiantRaisedArmsStartAnim), 2, 0.0f);
+ Animation_GetLastFrame(&gGiantRaisedArmsStartAnim), ANIMMODE_ONCE, 0.0f);
break;
}
}
diff --git a/src/overlays/actors/ovl_En_Goroiwa/z_en_goroiwa.c b/src/overlays/actors/ovl_En_Goroiwa/z_en_goroiwa.c
index 0cddfab726..df491dd224 100644
--- a/src/overlays/actors/ovl_En_Goroiwa/z_en_goroiwa.c
+++ b/src/overlays/actors/ovl_En_Goroiwa/z_en_goroiwa.c
@@ -67,7 +67,7 @@ static ColliderJntSphInit sJntSphInit = {
OC2_TYPE_2,
COLSHAPE_JNTSPH,
},
- 1,
+ ARRAY_COUNT(sJntSphElementsInit),
sJntSphElementsInit,
};
diff --git a/src/overlays/actors/ovl_En_Grasshopper/z_en_grasshopper.c b/src/overlays/actors/ovl_En_Grasshopper/z_en_grasshopper.c
index 1c37d5c85e..be274690ca 100644
--- a/src/overlays/actors/ovl_En_Grasshopper/z_en_grasshopper.c
+++ b/src/overlays/actors/ovl_En_Grasshopper/z_en_grasshopper.c
@@ -79,7 +79,7 @@ static ColliderJntSphElementInit D_809A8D1C[2] = {
// static ColliderJntSphInit sJntSphInit = {
static ColliderJntSphInit D_809A8D64 = {
{ COLTYPE_HIT2, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_1, OC2_TYPE_1, COLSHAPE_JNTSPH, },
- 2, D_809A8D1C, // sJntSphElementsInit,
+ ARRAY_COUNT(sJntSphElementsInit), D_809A8D1C, // sJntSphElementsInit,
};
#endif
diff --git a/src/overlays/actors/ovl_En_Guruguru/z_en_guruguru.c b/src/overlays/actors/ovl_En_Guruguru/z_en_guruguru.c
index 270fe3bac0..76b445fbb3 100644
--- a/src/overlays/actors/ovl_En_Guruguru/z_en_guruguru.c
+++ b/src/overlays/actors/ovl_En_Guruguru/z_en_guruguru.c
@@ -63,7 +63,7 @@ static ColliderCylinderInit sCylinderInit = {
};
static AnimationHeader* D_80BC79CC[] = { &object_fu_Anim_000B04, &object_fu_Anim_00057C };
-static u8 D_80BC79D4[] = { 0 };
+static u8 D_80BC79D4[] = { ANIMMODE_LOOP, ANIMMODE_LOOP };
static f32 D_80BC79D8[] = { 1.0f, 1.0f };
static TexturePtr sEyeTextures[] = { object_fu_Tex_005F20, object_fu_Tex_006320 };
static TexturePtr sMouthTextures[] = { object_fu_Tex_006720, object_fu_Tex_006920 };
diff --git a/src/overlays/actors/ovl_En_Hint_Skb/z_en_hint_skb.c b/src/overlays/actors/ovl_En_Hint_Skb/z_en_hint_skb.c
index afe2057433..962bc6e491 100644
--- a/src/overlays/actors/ovl_En_Hint_Skb/z_en_hint_skb.c
+++ b/src/overlays/actors/ovl_En_Hint_Skb/z_en_hint_skb.c
@@ -85,7 +85,7 @@ static ColliderJntSphInit sJntSphInit = {
OC2_TYPE_1,
COLSHAPE_JNTSPH,
},
- 2,
+ ARRAY_COUNT(sJntSphElementsInit),
sJntSphElementsInit,
};
@@ -224,7 +224,8 @@ 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, 3, 0.0f);
+ Animation_Change(&this->skelAnime, &object_skb_Anim_002190, -0.4f, this->skelAnime.curFrame - 1.0f, 0.0f,
+ ANIMMODE_ONCE_INTERP, 0.0f);
this->collider.base.atFlags &= ~AT_BOUNCED;
this->actionFunc = func_80C200B8;
}
diff --git a/src/overlays/actors/ovl_En_Honotrap/z_en_honotrap.c b/src/overlays/actors/ovl_En_Honotrap/z_en_honotrap.c
index 9f1566b862..9f6b6b98a3 100644
--- a/src/overlays/actors/ovl_En_Honotrap/z_en_honotrap.c
+++ b/src/overlays/actors/ovl_En_Honotrap/z_en_honotrap.c
@@ -58,7 +58,7 @@ static ColliderTrisElementInit D_80930424[2] = {
// static ColliderTrisInit sTrisInit = {
static ColliderTrisInit D_8093049C = {
{ COLTYPE_NONE, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_NONE, OC2_NONE, COLSHAPE_TRIS, },
- 2, D_80930424, // sTrisElementsInit,
+ ARRAY_COUNT(sTrisElementsInit), D_80930424, // sTrisElementsInit,
};
// static ColliderCylinderInit sCylinderInit = {
diff --git a/src/overlays/actors/ovl_En_Horse/z_en_horse.c b/src/overlays/actors/ovl_En_Horse/z_en_horse.c
index a5e5d23656..9c7979069a 100644
--- a/src/overlays/actors/ovl_En_Horse/z_en_horse.c
+++ b/src/overlays/actors/ovl_En_Horse/z_en_horse.c
@@ -203,7 +203,7 @@ static ColliderJntSphInit sJntSphInit = {
OC2_TYPE_1 | OC2_UNK1,
COLSHAPE_JNTSPH,
},
- 1,
+ ARRAY_COUNT(sJntSphElementsInit),
sJntSphElementsInit,
};
diff --git a/src/overlays/actors/ovl_En_Ik/z_en_ik.c b/src/overlays/actors/ovl_En_Ik/z_en_ik.c
index 6847c99041..33497bdcdf 100644
--- a/src/overlays/actors/ovl_En_Ik/z_en_ik.c
+++ b/src/overlays/actors/ovl_En_Ik/z_en_ik.c
@@ -51,7 +51,7 @@ static ColliderTrisElementInit D_8092C048[2] = {
// static ColliderTrisInit sTrisInit = {
static ColliderTrisInit D_8092C0C0 = {
{ COLTYPE_METAL, AT_NONE, AC_ON | AC_HARD | AC_TYPE_PLAYER, OC1_NONE, OC2_TYPE_2, COLSHAPE_TRIS, },
- 2, D_8092C048, // sTrisElementsInit,
+ ARRAY_COUNT(sTrisElementsInit), D_8092C048, // sTrisElementsInit,
};
// static ColliderQuadInit sQuadInit = {
diff --git a/src/overlays/actors/ovl_En_In/z_en_in.c b/src/overlays/actors/ovl_En_In/z_en_in.c
index aa4beebf9a..f536032be6 100644
--- a/src/overlays/actors/ovl_En_In/z_en_in.c
+++ b/src/overlays/actors/ovl_En_In/z_en_in.c
@@ -77,7 +77,7 @@ static ColliderJntSphInit sJntSphInit = {
OC2_TYPE_2,
COLSHAPE_JNTSPH,
},
- 1,
+ ARRAY_COUNT(sJntSphElementsInit),
sJntSphElementsInit,
};
@@ -319,7 +319,7 @@ void func_808F374C(EnIn* this, PlayState* play) {
this->unk488 %= ARRAY_COUNT(sAnimations);
this->unk486 = this->unk488;
Animation_Change(&this->skelAnime, sAnimations[this->unk488], 1.0f, 0.0f,
- Animation_GetLastFrame(sAnimations[this->unk488]), 2, -10.0f);
+ Animation_GetLastFrame(sAnimations[this->unk488]), ANIMMODE_ONCE, -10.0f);
}
}
@@ -1374,7 +1374,7 @@ void EnIn_Init(Actor* thisx, PlayState* play) {
ActorShape_Init(&this->actor.shape, 0.0f, NULL, 0.0f);
this->unk488 = 1;
Animation_Change(&this->skelAnime, &object_in_Anim_016A60, 1.0f, 0.0f,
- Animation_GetLastFrame(&object_in_Anim_016A60), 2, 0.0f);
+ Animation_GetLastFrame(&object_in_Anim_016A60), ANIMMODE_ONCE, 0.0f);
Actor_SetScale(&this->actor, 0.01f);
this->unk23C = 0;
this->unk23D = 1;
diff --git a/src/overlays/actors/ovl_En_Insect/z_en_insect.c b/src/overlays/actors/ovl_En_Insect/z_en_insect.c
index d41f75bfae..e985f6b5cf 100644
--- a/src/overlays/actors/ovl_En_Insect/z_en_insect.c
+++ b/src/overlays/actors/ovl_En_Insect/z_en_insect.c
@@ -67,7 +67,7 @@ static ColliderJntSphInit sJntSphInit = {
OC2_TYPE_1,
COLSHAPE_JNTSPH,
},
- 1,
+ ARRAY_COUNT(sJntSphElementsInit),
sJntSphElementsInit,
};
@@ -133,7 +133,7 @@ void EnInsect_Init(Actor* thisx, PlayState* play) {
SkelAnime_Init(play, &this->skelAnime, &gameplay_keep_Skel_0527A0, &gameplay_keep_Anim_05140C, this->jointTable,
this->morphTable, 24);
- Animation_Change(&this->skelAnime, &gameplay_keep_Anim_05140C, 1.0f, 0.0f, 0.0f, 1, 0.0f);
+ Animation_Change(&this->skelAnime, &gameplay_keep_Anim_05140C, 1.0f, 0.0f, 0.0f, ANIMMODE_LOOP_INTERP, 0.0f);
Collider_InitJntSph(play, &this->collider);
Collider_SetJntSph(play, &this->collider, &this->actor, &sJntSphInit, this->colliderElements);
diff --git a/src/overlays/actors/ovl_En_Invadepoh/z_en_invadepoh.c b/src/overlays/actors/ovl_En_Invadepoh/z_en_invadepoh.c
index 05ccf6c136..a0e7a6d458 100644
--- a/src/overlays/actors/ovl_En_Invadepoh/z_en_invadepoh.c
+++ b/src/overlays/actors/ovl_En_Invadepoh/z_en_invadepoh.c
@@ -2475,7 +2475,7 @@ void func_80B4843C(EnInvadepoh* this) {
this->behaviorInfo.unk44 = 0.1f;
this->behaviorInfo.unk48 = 2000;
this->actionTimer = 50;
- Animation_Change(&this->skelAnime, &object_ma1_Anim_007328, 2.0f, 0.0f, 0.0f, 0, -5.0f);
+ Animation_Change(&this->skelAnime, &object_ma1_Anim_007328, 2.0f, 0.0f, 0.0f, ANIMMODE_LOOP, -5.0f);
this->actor.draw = func_80B4E324;
this->actionFunc = func_80B484EC;
}
diff --git a/src/overlays/actors/ovl_En_Kame/z_en_kame.c b/src/overlays/actors/ovl_En_Kame/z_en_kame.c
index 039a269e3b..b6edc7778f 100644
--- a/src/overlays/actors/ovl_En_Kame/z_en_kame.c
+++ b/src/overlays/actors/ovl_En_Kame/z_en_kame.c
@@ -525,7 +525,7 @@ void func_80AD7FF8(EnKame* this, PlayState* play) {
void func_80AD8060(EnKame* this) {
s16 sp36 = Animation_GetLastFrame(&object_tl_Anim_0008B4);
- Animation_Change(&this->skelAnime1, &object_tl_Anim_0008B4, 1.0f, 0.0f, sp36, 2, -3.0f);
+ Animation_Change(&this->skelAnime1, &object_tl_Anim_0008B4, 1.0f, 0.0f, sp36, ANIMMODE_ONCE, -3.0f);
Actor_SetColorFilter(&this->actor, 0x4000, 255, 0, sp36);
Actor_PlaySfxAtPos(&this->actor, NA_SE_EN_PAMET_DAMAGE);
this->collider.base.acFlags &= ~AC_ON;
diff --git a/src/overlays/actors/ovl_En_Karebaba/z_en_karebaba.c b/src/overlays/actors/ovl_En_Karebaba/z_en_karebaba.c
index 94d5c36f51..5412065f52 100644
--- a/src/overlays/actors/ovl_En_Karebaba/z_en_karebaba.c
+++ b/src/overlays/actors/ovl_En_Karebaba/z_en_karebaba.c
@@ -255,7 +255,7 @@ void func_808F169C(EnKarebaba* this, PlayState* play) {
void func_808F16FC(EnKarebaba* this) {
Animation_Change(&this->skelAnime, &object_dekubaba_Anim_0002B8, 4.0f, 0.0f,
- Animation_GetLastFrame(&object_dekubaba_Anim_0002B8), 0, -3.0f);
+ Animation_GetLastFrame(&object_dekubaba_Anim_0002B8), ANIMMODE_LOOP, -3.0f);
Actor_PlaySfxAtPos(&this->actor, NA_SE_EN_DEKU_WAKEUP);
this->actionFunc = func_808F1778;
}
@@ -501,7 +501,7 @@ void func_808F21A4(EnKarebaba* this, PlayState* play) {
void func_808F220C(EnKarebaba* this) {
Animation_Change(&this->skelAnime, &object_dekubaba_Anim_0002B8, -3.0f,
- Animation_GetLastFrame(&object_dekubaba_Anim_0002B8), 0.0f, 2, -3.0f);
+ Animation_GetLastFrame(&object_dekubaba_Anim_0002B8), 0.0f, ANIMMODE_ONCE, -3.0f);
func_808F152C(this);
this->actionFunc = func_808F228C;
}
@@ -526,7 +526,7 @@ void func_808F228C(EnKarebaba* this, PlayState* play) {
}
void func_808F238C(EnKarebaba* this) {
- Animation_Change(&this->skelAnime, &object_dekubaba_Anim_0002B8, 0.0f, 0.0f, 0.0f, 2, 0.0f);
+ Animation_Change(&this->skelAnime, &object_dekubaba_Anim_0002B8, 0.0f, 0.0f, 0.0f, ANIMMODE_ONCE, 0.0f);
func_808F152C(this);
this->actor.shape.rot.x = -0x4000;
this->unk_1EE = 200;
diff --git a/src/overlays/actors/ovl_En_Kendo_Js/z_en_kendo_js.c b/src/overlays/actors/ovl_En_Kendo_Js/z_en_kendo_js.c
index 0c902754d4..f9c6ae91cb 100644
--- a/src/overlays/actors/ovl_En_Kendo_Js/z_en_kendo_js.c
+++ b/src/overlays/actors/ovl_En_Kendo_Js/z_en_kendo_js.c
@@ -600,8 +600,8 @@ void func_80B274BC(EnKendoJs* this, PlayState* play) {
}
play_sound(NA_SE_SY_FOUND);
- func_80B279F0(this, play, (((s32)Rand_Next() & 0xFF) % 3) + 1);
- func_80B279F0(this, play, (((s32)Rand_Next() & 0xFF) % 3) + 4);
+ func_80B279F0(this, play, ((u8)Rand_Next() % 3) + 1);
+ func_80B279F0(this, play, ((u8)Rand_Next() % 3) + 4);
this->unk_290 = 0;
this->unk_284++;
} else if (this->unk_290 == 120) {
diff --git a/src/overlays/actors/ovl_En_Kgy/z_en_kgy.c b/src/overlays/actors/ovl_En_Kgy/z_en_kgy.c
index 89f2aaaccf..3a8d7c065f 100644
--- a/src/overlays/actors/ovl_En_Kgy/z_en_kgy.c
+++ b/src/overlays/actors/ovl_En_Kgy/z_en_kgy.c
@@ -63,25 +63,25 @@ void EnKgy_Init(Actor* thisx, PlayState* play) {
play->envCtx.lightSettingOverride = 1;
gSaveContext.save.weekEventReg[21] |= 1;
if (!func_80B40D64(play)) {
- EnKgy_ChangeAnim(this, 4, 0, 0);
+ EnKgy_ChangeAnim(this, 4, ANIMMODE_LOOP, 0);
this->actionFunc = func_80B425A0;
this->actor.textId = 0xC35;
} else if (!func_80B40DB4(play)) {
- EnKgy_ChangeAnim(this, 6, 2, 0);
+ EnKgy_ChangeAnim(this, 6, ANIMMODE_ONCE, 0);
this->actionFunc = func_80B419B0;
this->actor.textId = 0xC4E;
this->unk_29C |= 1;
this->unk_2EA = 3;
} else {
- EnKgy_ChangeAnim(this, 4, 0, 0);
+ EnKgy_ChangeAnim(this, 4, ANIMMODE_LOOP, 0);
this->actionFunc = func_80B42714;
this->actor.textId = 0xC50;
}
} else {
if (gSaveContext.save.weekEventReg[20] & 0x80) {
- EnKgy_ChangeAnim(this, 4, 0, 0);
+ EnKgy_ChangeAnim(this, 4, ANIMMODE_LOOP, 0);
} else {
- EnKgy_ChangeAnim(this, 0, 0, 0);
+ EnKgy_ChangeAnim(this, 0, ANIMMODE_LOOP, 0);
}
this->actionFunc = func_80B42D28;
}
@@ -122,7 +122,7 @@ void EnKgy_ChangeAnim(EnKgy* this, s16 animIndex, u8 mode, f32 transitionRate) {
void func_80B40BC0(EnKgy* this, s16 arg1) {
if (arg1 != this->unk_2D2) {
- EnKgy_ChangeAnim(this, arg1, 0, -5.0f);
+ EnKgy_ChangeAnim(this, arg1, ANIMMODE_LOOP, -5.0f);
}
}
@@ -219,7 +219,7 @@ void func_80B40EE8(EnKgy* this, PlayState* play) {
this->unk_2E4--;
if ((this->unk_2E4 == 0) && (this->unk_2E2 >= 0)) {
if (this->unk_2E2 == 3) {
- EnKgy_ChangeAnim(this, 3, 2, -5.0f);
+ EnKgy_ChangeAnim(this, 3, ANIMMODE_ONCE, -5.0f);
} else {
func_80B40BC0(this, this->unk_2E2);
}
@@ -420,14 +420,14 @@ void func_80B4163C(EnKgy* this, PlayState* play) {
if (SkelAnime_Update(&this->skelAnime)) {
if (this->unk_2D2 == 6) {
if (this->unk_2EA > 0) {
- EnKgy_ChangeAnim(this, 6, 2, 0.0f);
+ EnKgy_ChangeAnim(this, 6, ANIMMODE_ONCE, 0.0f);
this->unk_2EA--;
} else {
- EnKgy_ChangeAnim(this, 9, 2, -5.0f);
+ EnKgy_ChangeAnim(this, 9, ANIMMODE_ONCE, -5.0f);
this->unk_2EA = (s32)Rand_ZeroFloat(3.0f) + 2;
}
} else {
- EnKgy_ChangeAnim(this, 6, 2, -5.0f);
+ EnKgy_ChangeAnim(this, 6, ANIMMODE_ONCE, -5.0f);
}
SkelAnime_Update(&this->skelAnime);
}
@@ -941,7 +941,7 @@ void func_80B4296C(EnKgy* this, PlayState* play) {
if (this->unk_2D2 == 4) {
func_80B40BC0(this, 7);
} else {
- EnKgy_ChangeAnim(this, 5, 2, -5.0f);
+ EnKgy_ChangeAnim(this, 5, ANIMMODE_ONCE, -5.0f);
}
func_80B411DC(this, play, 0);
func_80B40E18(this, this->actor.textId);
@@ -1053,7 +1053,7 @@ void func_80B42D28(EnKgy* this, PlayState* play) {
if (this->actor.textId == 0xC2D) {
func_80B40BC0(this, 1);
} else {
- EnKgy_ChangeAnim(this, 5, 2, -5.0f);
+ EnKgy_ChangeAnim(this, 5, ANIMMODE_ONCE, -5.0f);
gSaveContext.save.weekEventReg[20] |= 0x80;
}
func_80B411DC(this, play, 0);
@@ -1073,7 +1073,7 @@ void func_80B42D28(EnKgy* this, PlayState* play) {
}
if ((this->unk_2D2 == 0) && (this->actor.xzDistToPlayer < 200.0f)) {
- EnKgy_ChangeAnim(this, 8, 2, 5.0f);
+ EnKgy_ChangeAnim(this, 8, ANIMMODE_ONCE, 5.0f);
}
}
}
diff --git a/src/overlays/actors/ovl_En_Knight/z_en_knight.c b/src/overlays/actors/ovl_En_Knight/z_en_knight.c
index 9c925c56c7..095ca5a98a 100644
--- a/src/overlays/actors/ovl_En_Knight/z_en_knight.c
+++ b/src/overlays/actors/ovl_En_Knight/z_en_knight.c
@@ -129,7 +129,7 @@ static ColliderJntSphElementInit D_809BDB44[1] = {
// static ColliderJntSphInit sJntSphInit = {
static ColliderJntSphInit D_809BDB8C = {
{ COLTYPE_METAL, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_HARD | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_PLAYER, OC2_TYPE_1, COLSHAPE_JNTSPH, },
- 1, D_809BDB44, // sJntSphElementsInit,
+ ARRAY_COUNT(sJntSphElementsInit), D_809BDB44, // sJntSphElementsInit,
};
// static ColliderJntSphElementInit sJntSphElementsInit[1] = {
@@ -143,7 +143,7 @@ static ColliderJntSphElementInit D_809BDB68[1] = {
// static ColliderJntSphInit sJntSphInit = {
static ColliderJntSphInit D_809BDB9C = {
{ COLTYPE_METAL, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_HARD | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_PLAYER, OC2_TYPE_1, COLSHAPE_JNTSPH, },
- 1, D_809BDB68, // sJntSphElementsInit,
+ ARRAY_COUNT(sJntSphElementsInit), D_809BDB68, // sJntSphElementsInit,
};
// static ColliderJntSphElementInit sJntSphElementsInit[1] = {
@@ -157,7 +157,7 @@ static ColliderJntSphElementInit D_809BDBAC[1] = {
// static ColliderJntSphInit sJntSphInit = {
static ColliderJntSphInit D_809BDBD0 = {
{ COLTYPE_METAL, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_HARD | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_PLAYER, OC2_TYPE_1, COLSHAPE_JNTSPH, },
- 1, D_809BDBAC, // sJntSphElementsInit,
+ ARRAY_COUNT(sJntSphElementsInit), D_809BDBAC, // sJntSphElementsInit,
};
// static ColliderJntSphElementInit sJntSphElementsInit[2] = {
@@ -175,7 +175,7 @@ static ColliderJntSphElementInit D_809BDBE0[2] = {
// static ColliderJntSphInit sJntSphInit = {
static ColliderJntSphInit D_809BDC28 = {
{ COLTYPE_HIT3, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_PLAYER | OC1_TYPE_1, OC2_TYPE_1, COLSHAPE_JNTSPH, },
- 2, D_809BDBE0, // sJntSphElementsInit,
+ ARRAY_COUNT(sJntSphElementsInit), D_809BDBE0, // sJntSphElementsInit,
};
// static ColliderCylinderInit sCylinderInit = {
diff --git a/src/overlays/actors/ovl_En_Look_Nuts/z_en_look_nuts.c b/src/overlays/actors/ovl_En_Look_Nuts/z_en_look_nuts.c
index 8888ad4885..803fff8b9d 100644
--- a/src/overlays/actors/ovl_En_Look_Nuts/z_en_look_nuts.c
+++ b/src/overlays/actors/ovl_En_Look_Nuts/z_en_look_nuts.c
@@ -139,7 +139,7 @@ void EnLookNuts_Destroy(Actor* thisx, PlayState* play) {
void EnLookNuts_SetupPatrol(EnLookNuts* this) {
Animation_Change(&this->skelAnime, &gDekuPalaceGuardWalkAnim, 1.0f, 0.0f,
- Animation_GetLastFrame(&gDekuPalaceGuardWalkAnim), 0, -10.0f);
+ Animation_GetLastFrame(&gDekuPalaceGuardWalkAnim), ANIMMODE_LOOP, -10.0f);
this->state = PALACE_GUARD_PATROLLING;
this->actionFunc = EnLookNuts_Patrol;
}
@@ -189,7 +189,7 @@ void EnLookNuts_Patrol(EnLookNuts* this, PlayState* play) {
void EnLookNuts_SetupStandAndWait(EnLookNuts* this) {
Animation_Change(&this->skelAnime, &gDekuPalaceGuardWalkAnim, 1.0f, 0.0f,
- Animation_GetLastFrame(&gDekuPalaceGuardWalkAnim), 2, -10.0f);
+ Animation_GetLastFrame(&gDekuPalaceGuardWalkAnim), ANIMMODE_ONCE, -10.0f);
this->waitTimer = Rand_S16Offset(1, 3);
this->headRotTarget.y = 10000.0f;
@@ -262,7 +262,7 @@ void EnLookNuts_StandAndWait(EnLookNuts* this, PlayState* play) {
void EnLookNuts_DetectedPlayer(EnLookNuts* this, PlayState* play) {
Animation_Change(&this->skelAnime, &gDekuPalaceGuardWalkAnim, 2.0f, 0.0f,
- Animation_GetLastFrame(&gDekuPalaceGuardWalkAnim), 0, -10.0f);
+ Animation_GetLastFrame(&gDekuPalaceGuardWalkAnim), ANIMMODE_LOOP, -10.0f);
this->state = PALACE_GUARD_RUNNING_TO_PLAYER;
this->eventTimer = 300;
Message_StartTextbox(play, 0x833, &this->actor);
@@ -285,7 +285,7 @@ void EnLookNuts_RunToPlayer(EnLookNuts* this, PlayState* play) {
void EnLookNuts_SetupSendPlayerToSpawn(EnLookNuts* this) {
Animation_Change(&this->skelAnime, &gDekuPalaceGuardWalkAnim, 1.0f, 0.0f,
- Animation_GetLastFrame(&gDekuPalaceGuardWalkAnim), 2, -10.0f);
+ Animation_GetLastFrame(&gDekuPalaceGuardWalkAnim), ANIMMODE_ONCE, -10.0f);
this->state = PALACE_GUARD_CAUGHT_PLAYER;
this->actionFunc = EnLookNuts_SendPlayerToSpawn;
}
diff --git a/src/overlays/actors/ovl_En_Minideath/z_en_minideath.c b/src/overlays/actors/ovl_En_Minideath/z_en_minideath.c
index 7cc22b4f33..fd00011661 100644
--- a/src/overlays/actors/ovl_En_Minideath/z_en_minideath.c
+++ b/src/overlays/actors/ovl_En_Minideath/z_en_minideath.c
@@ -60,7 +60,7 @@ static ColliderJntSphElementInit D_808CBF50[3] = {
// static ColliderJntSphInit sJntSphInit = {
static ColliderJntSphInit D_808CBFBC = {
{ COLTYPE_NONE, AT_NONE | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_NONE | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_JNTSPH, },
- 3, D_808CBF50, // sJntSphElementsInit,
+ ARRAY_COUNT(sJntSphElementsInit), D_808CBF50, // sJntSphElementsInit,
};
// static DamageTable sDamageTable = {
diff --git a/src/overlays/actors/ovl_En_Minifrog/z_en_minifrog.c b/src/overlays/actors/ovl_En_Minifrog/z_en_minifrog.c
index 41dea70c92..e42c36da48 100644
--- a/src/overlays/actors/ovl_En_Minifrog/z_en_minifrog.c
+++ b/src/overlays/actors/ovl_En_Minifrog/z_en_minifrog.c
@@ -177,7 +177,7 @@ EnMinifrog* EnMinifrog_GetFrog(PlayState* play) {
void EnMinifrog_SetJumpState(EnMinifrog* this) {
if (this->jumpState == MINIFROG_STATE_GROUND) {
this->jumpState = MINIFROG_STATE_JUMP;
- Animation_Change(&this->skelAnime, &object_fr_Anim_0007BC, 1.0f, 0.0f, 7.0f, 2, -5.0f);
+ Animation_Change(&this->skelAnime, &object_fr_Anim_0007BC, 1.0f, 0.0f, 7.0f, ANIMMODE_ONCE, -5.0f);
}
}
diff --git a/src/overlays/actors/ovl_En_Mm3/z_en_mm3.c b/src/overlays/actors/ovl_En_Mm3/z_en_mm3.c
index 2931471e9b..6ba77aee30 100644
--- a/src/overlays/actors/ovl_En_Mm3/z_en_mm3.c
+++ b/src/overlays/actors/ovl_En_Mm3/z_en_mm3.c
@@ -84,7 +84,7 @@ void EnMm3_Init(Actor* thisx, PlayState* play) {
SkelAnime_InitFlex(play, &this->skelAnime, &object_mm_Skel_0096E8, &object_mm_Anim_00A4E0, this->jointTable,
this->morphTable, 16);
Animation_Change(&this->skelAnime, &object_mm_Anim_00A4E0, -1.0f, Animation_GetLastFrame(&object_mm_Anim_00A4E0),
- 0.0f, 2, 0.0f);
+ 0.0f, ANIMMODE_ONCE, 0.0f);
Collider_InitCylinder(play, &this->collider);
Collider_SetCylinder(play, &this->collider, &this->actor, &sCylinderInit);
CollisionCheck_SetInfo2(&this->actor.colChkInfo, NULL, &sColChkInfoInit);
diff --git a/src/overlays/actors/ovl_En_Mushi2/z_en_mushi2.c b/src/overlays/actors/ovl_En_Mushi2/z_en_mushi2.c
index c47b7ba5b0..4e6c471af9 100644
--- a/src/overlays/actors/ovl_En_Mushi2/z_en_mushi2.c
+++ b/src/overlays/actors/ovl_En_Mushi2/z_en_mushi2.c
@@ -67,7 +67,7 @@ static ColliderJntSphInit sJntSphInit = {
OC2_TYPE_1,
COLSHAPE_JNTSPH,
},
- 1,
+ ARRAY_COUNT(sJntSphElementsInit),
sJntSphElementsInit,
};
@@ -751,7 +751,7 @@ void EnMushi2_Init(Actor* thisx, PlayState* play) {
func_80A68F24(this);
SkelAnime_Init(play, &this->skelAnime, &gameplay_keep_Skel_0527A0, &gameplay_keep_Anim_05140C, this->jointTable,
this->morphTable, 24);
- Animation_Change(&this->skelAnime, &gameplay_keep_Anim_05140C, 1.0f, 0.0f, 0.0f, 1, 0.0f);
+ Animation_Change(&this->skelAnime, &gameplay_keep_Anim_05140C, 1.0f, 0.0f, 0.0f, ANIMMODE_LOOP_INTERP, 0.0f);
Collider_InitJntSph(play, &this->collider);
Collider_SetJntSph(play, &this->collider, &this->actor, &sJntSphInit, this->colliderElements);
func_80A68808(this);
diff --git a/src/overlays/actors/ovl_En_Niw/z_en_niw.c b/src/overlays/actors/ovl_En_Niw/z_en_niw.c
index 09b617c3e3..0f392dcfd6 100644
--- a/src/overlays/actors/ovl_En_Niw/z_en_niw.c
+++ b/src/overlays/actors/ovl_En_Niw/z_en_niw.c
@@ -352,7 +352,8 @@ void EnNiw_UpdateRunning(EnNiw* this, PlayState* play, s32 isStormCucco) {
}
void EnNiw_SetupIdle(EnNiw* this) {
- Animation_Change(&this->skelanime, &gNiwIdleAnim, 1.0f, 0.0f, Animation_GetLastFrame(&gNiwIdleAnim), 0, -10.0f);
+ Animation_Change(&this->skelanime, &gNiwIdleAnim, 1.0f, 0.0f, Animation_GetLastFrame(&gNiwIdleAnim), ANIMMODE_LOOP,
+ -10.0f);
this->niwState = NIW_STATE_IDLE;
this->actionFunc = EnNiw_Idle;
}
@@ -656,7 +657,8 @@ void EnNiw_CuccoStorm(EnNiw* this, PlayState* play) {
}
void EnNiw_SetupRunAway(EnNiw* this) {
- Animation_Change(&this->skelanime, &gNiwIdleAnim, 1.0f, 0.0f, Animation_GetLastFrame(&gNiwIdleAnim), 0, -10.0f);
+ Animation_Change(&this->skelanime, &gNiwIdleAnim, 1.0f, 0.0f, Animation_GetLastFrame(&gNiwIdleAnim), ANIMMODE_LOOP,
+ -10.0f);
this->isRunningRight = Rand_ZeroFloat(1.99f);
this->niwState = NIW_STATE_RUNNING;
this->actionFunc = EnNiw_RunAway;
diff --git a/src/overlays/actors/ovl_En_Nwc/z_en_nwc.c b/src/overlays/actors/ovl_En_Nwc/z_en_nwc.c
index 2bfb7da1d1..972513c04a 100644
--- a/src/overlays/actors/ovl_En_Nwc/z_en_nwc.c
+++ b/src/overlays/actors/ovl_En_Nwc/z_en_nwc.c
@@ -246,7 +246,8 @@ void EnNwc_LoadNiwSkeleton(EnNwc* this, PlayState* play) {
SkelAnime_InitFlex(play, &this->niwSkeleton, &gNiwSkeleton, &gNiwIdleAnim, this->jointTable, this->morphTable,
NIW_LIMB_MAX);
- Animation_Change(&this->niwSkeleton, &gNiwIdleAnim, 1.0f, 0.0f, Animation_GetLastFrame(&gNiwIdleAnim), 0, 0.0f);
+ Animation_Change(&this->niwSkeleton, &gNiwIdleAnim, 1.0f, 0.0f, Animation_GetLastFrame(&gNiwIdleAnim),
+ ANIMMODE_LOOP, 0.0f);
gSegments[6] = PHYSICAL_TO_VIRTUAL(play->objectCtx.status[this->nwcObjectIndex].segment);
this->state = NWC_STATE_NIW_LOADED;
diff --git a/src/overlays/actors/ovl_En_Owl/z_en_owl.c b/src/overlays/actors/ovl_En_Owl/z_en_owl.c
index 521624025e..99dd2c0b3b 100644
--- a/src/overlays/actors/ovl_En_Owl/z_en_owl.c
+++ b/src/overlays/actors/ovl_En_Owl/z_en_owl.c
@@ -457,7 +457,7 @@ void func_8095B2F8(EnOwl* this, PlayState* play) {
if ((this->actor.shape.rot.y == this->unk_3EC) && (this->actionFlags & 1)) {
this->actionFunc = func_8095B254;
Animation_Change(this->skelAnime3, this->skelAnime3->animation, 1.0f, 19.0f,
- Animation_GetLastFrame(&object_owl_Anim_001168), 2, 0.0f);
+ Animation_GetLastFrame(&object_owl_Anim_001168), ANIMMODE_ONCE, 0.0f);
this->unk_414 = func_8095C484;
}
@@ -467,7 +467,7 @@ void func_8095B2F8(EnOwl* this, PlayState* play) {
void func_8095B3DC(EnOwl* this, PlayState* play) {
if (this->actionFlags & 1) {
this->actionFunc = func_8095B2F8;
- Animation_Change(this->skelAnime3, &object_owl_Anim_001168, 1.0f, 0.0f, 35.0f, 2, 0.0f);
+ Animation_Change(this->skelAnime3, &object_owl_Anim_001168, 1.0f, 0.0f, 35.0f, ANIMMODE_ONCE, 0.0f);
this->unk_414 = func_8095C408;
this->unk_3EC = 0x5500;
this->actor.world.pos.y += 100.0f;
@@ -524,7 +524,7 @@ void func_8095B650(EnOwl* this, PlayState* play) {
void func_8095B6C8(EnOwl* this, PlayState* play) {
if (this->actionFlags & 1) {
Animation_Change(this->skelAnime3, &object_owl_Anim_00CB94, -1.0f,
- Animation_GetLastFrame(&object_owl_Anim_00CB94), 0.0f, 2, 0.0f);
+ Animation_GetLastFrame(&object_owl_Anim_00CB94), 0.0f, ANIMMODE_ONCE, 0.0f);
this->unk_414 = func_8095C484;
this->actionFunc = func_8095B650;
}
@@ -596,7 +596,7 @@ void func_8095B960(EnOwl* this, PlayState* play) {
void func_8095B9FC(EnOwl* this, PlayState* play) {
if (this->actionFlags & 1) {
this->actionFunc = func_8095B960;
- Animation_Change(this->skelAnime3, &object_owl_Anim_001168, 1.0f, 0.0f, 35.0f, 2, 0.0f);
+ Animation_Change(this->skelAnime3, &object_owl_Anim_001168, 1.0f, 0.0f, 35.0f, ANIMMODE_ONCE, 0.0f);
this->unk_414 = func_8095C408;
func_8095B0C8(this);
}
@@ -803,7 +803,7 @@ void func_8095C258(EnOwl* this) {
this->unk_414 = func_8095C328;
this->unk_3EA = 6;
Animation_Change(this->skelAnime3, &object_owl_Anim_001ADC, 1.0f, 0.0f,
- Animation_GetLastFrame(&object_owl_Anim_001ADC), 2, 5.0f);
+ Animation_GetLastFrame(&object_owl_Anim_001ADC), ANIMMODE_ONCE, 5.0f);
}
}
@@ -812,19 +812,19 @@ void func_8095C328(EnOwl* this) {
if (this->unk_3EA > 0) {
this->unk_3EA--;
Animation_Change(this->skelAnime3, this->skelAnime3->animation, 1.0f, 0.0f,
- Animation_GetLastFrame(this->skelAnime3->animation), 2, 0.0f);
+ Animation_GetLastFrame(this->skelAnime3->animation), ANIMMODE_ONCE, 0.0f);
} else {
this->unk_3EA = 160;
this->unk_414 = func_8095C258;
Animation_Change(this->skelAnime3, &object_owl_Anim_00C6D4, 1.0f, 0.0f,
- Animation_GetLastFrame(&object_owl_Anim_00C6D4), 0, 5.0f);
+ Animation_GetLastFrame(&object_owl_Anim_00C6D4), ANIMMODE_LOOP, 5.0f);
}
}
}
void func_8095C408(EnOwl* this) {
if (SkelAnime_Update(this->skelAnime3)) {
- Animation_Change(this->skelAnime3, this->skelAnime3->animation, 1.0f, 18.0f, 35.0f, 2, 0.0f);
+ Animation_Change(this->skelAnime3, this->skelAnime3->animation, 1.0f, 18.0f, 35.0f, ANIMMODE_ONCE, 0.0f);
this->actionFlags |= 1;
} else {
this->actionFlags &= ~1;
@@ -834,7 +834,7 @@ void func_8095C408(EnOwl* this) {
void func_8095C484(EnOwl* this) {
if (SkelAnime_Update(this->skelAnime3)) {
Animation_Change(this->skelAnime3, this->skelAnime3->animation, 1.0f, 0.0f,
- Animation_GetLastFrame(this->skelAnime3->animation), 2, 0.0f);
+ Animation_GetLastFrame(this->skelAnime3->animation), ANIMMODE_ONCE, 0.0f);
this->actionFlags |= 1;
} else {
this->actionFlags &= ~1;
@@ -1193,7 +1193,8 @@ void func_8095D074(Actor* thisx, PlayState* play) {
void EnOwl_ChangeMode(EnOwl* this, EnOwlActionFunc actionFunc, EnOwlFunc unkFunc, SkelAnime* skelAnime,
AnimationHeader* animation, f32 morphFrames) {
this->skelAnime3 = skelAnime;
- Animation_Change(this->skelAnime3, animation, 1.0f, 0.0f, Animation_GetLastFrame(animation), 2, morphFrames);
+ Animation_Change(this->skelAnime3, animation, 1.0f, 0.0f, Animation_GetLastFrame(animation), ANIMMODE_ONCE,
+ morphFrames);
this->actionFunc = actionFunc;
this->unk_414 = unkFunc;
}
diff --git a/src/overlays/actors/ovl_En_Pametfrog/z_en_pametfrog.c b/src/overlays/actors/ovl_En_Pametfrog/z_en_pametfrog.c
index 1f92d4f568..77cf49acce 100644
--- a/src/overlays/actors/ovl_En_Pametfrog/z_en_pametfrog.c
+++ b/src/overlays/actors/ovl_En_Pametfrog/z_en_pametfrog.c
@@ -157,7 +157,7 @@ static ColliderJntSphInit sJntSphInit = {
OC2_TYPE_1,
COLSHAPE_JNTSPH,
},
- 2,
+ ARRAY_COUNT(sJntSphElementsInit),
sJntSphElementsInit,
};
@@ -534,7 +534,7 @@ void EnPametfrog_FallOffSnapper(EnPametfrog* this, PlayState* play) {
}
void EnPametfrog_SetupJumpToWall(EnPametfrog* this) {
- Animation_Change(&this->skelAnime, &gGekkoJumpForwardAnim, 2.0f, 0.0f, 0.0f, 0, -2.0f);
+ Animation_Change(&this->skelAnime, &gGekkoJumpForwardAnim, 2.0f, 0.0f, 0.0f, ANIMMODE_LOOP, -2.0f);
this->actor.shape.rot.x = 0;
this->actor.shape.rot.z = 0;
this->actor.bgCheckFlags &= ~8;
@@ -701,7 +701,7 @@ void EnPametfrog_SetupClimbDownWall(EnPametfrog* this) {
s16 yaw;
Animation_Change(&this->skelAnime, &gGekkoJumpForwardAnim, 0.0f, 0.0f,
- Animation_GetLastFrame(&gGekkoJumpForwardAnim), 2, 0.0f);
+ Animation_GetLastFrame(&gGekkoJumpForwardAnim), ANIMMODE_ONCE, 0.0f);
this->actor.shape.rot.y = Actor_YawBetweenActors(&this->actor, this->actor.child);
this->actor.world.rot.y = this->actor.shape.rot.y;
this->actor.shape.rot.x = 0;
@@ -735,7 +735,7 @@ void EnPametfrog_ClimbDownWall(EnPametfrog* this, PlayState* play) {
}
void EnPametfrog_SetupRunToSnapper(EnPametfrog* this) {
- Animation_Change(&this->skelAnime, &gGekkoJumpForwardAnim, 2.0f, 0.0f, 0.0f, 0, -2.0f);
+ Animation_Change(&this->skelAnime, &gGekkoJumpForwardAnim, 2.0f, 0.0f, 0.0f, ANIMMODE_LOOP, -2.0f);
this->actor.params = GEKKO_RETURN_TO_SNAPPER;
this->actionFunc = EnPametfrog_RunToSnapper;
}
diff --git a/src/overlays/actors/ovl_En_Peehat/z_en_peehat.c b/src/overlays/actors/ovl_En_Peehat/z_en_peehat.c
index 53106890bd..d0598ce79b 100644
--- a/src/overlays/actors/ovl_En_Peehat/z_en_peehat.c
+++ b/src/overlays/actors/ovl_En_Peehat/z_en_peehat.c
@@ -124,7 +124,7 @@ static ColliderTrisInit sTrisInit = {
OC2_TYPE_1,
COLSHAPE_TRIS,
},
- 2,
+ ARRAY_COUNT(sTrisElementsInit),
sTrisElementsInit,
};
@@ -288,7 +288,7 @@ void func_80897390(EnPeehat* this, PlayState* play) {
void func_80897498(EnPeehat* this) {
Animation_Change(&this->skelAnime, &object_ph_Anim_0009C4, 0.0f, 3.0f,
- Animation_GetLastFrame(&object_ph_Anim_0009C4), 2, 0.0f);
+ Animation_GetLastFrame(&object_ph_Anim_0009C4), ANIMMODE_ONCE, 0.0f);
this->unk_2B0 = 0;
this->unk_2AD = 1;
this->colliderCylinder.base.acFlags &= ~AC_HIT;
@@ -324,7 +324,7 @@ void func_80897520(EnPeehat* this, PlayState* play) {
void func_80897648(EnPeehat* this) {
if (this->actionFunc != func_80898454) {
Animation_Change(&this->skelAnime, &object_ph_Anim_0009C4, 0.0f, 3.0f,
- Animation_GetLastFrame(&object_ph_Anim_0009C4), 2, 0.0f);
+ Animation_GetLastFrame(&object_ph_Anim_0009C4), ANIMMODE_ONCE, 0.0f);
}
this->unk_2B0 = 16;
Actor_PlaySfxAtPos(&this->actor, NA_SE_EN_PIHAT_UP);
diff --git a/src/overlays/actors/ovl_En_Po_Composer/z_en_po_composer.c b/src/overlays/actors/ovl_En_Po_Composer/z_en_po_composer.c
index b828bfc90b..e18897cf28 100644
--- a/src/overlays/actors/ovl_En_Po_Composer/z_en_po_composer.c
+++ b/src/overlays/actors/ovl_En_Po_Composer/z_en_po_composer.c
@@ -58,7 +58,7 @@ static ColliderJntSphElementInit D_80BC67AC[1] = {
// static ColliderJntSphInit sJntSphInit = {
static ColliderJntSphInit D_80BC67D0 = {
{ COLTYPE_HIT3, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_JNTSPH, },
- 1, D_80BC67AC, // sJntSphElementsInit,
+ ARRAY_COUNT(sJntSphElementsInit), D_80BC67AC, // sJntSphElementsInit,
};
// sColChkInfoInit
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 7a2f56299c..afea56cd0f 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
@@ -537,7 +537,7 @@ void func_80B1B628(EnPoSisters* this, PlayState* play) {
void func_80B1B70C(EnPoSisters* this) {
Animation_Change(&this->skelAnime, &object_po_sisters_Anim_00119C, 1.5f, 0.0f,
- Animation_GetLastFrame(&object_po_sisters_Anim_00119C.common), 2, -3.0f);
+ Animation_GetLastFrame(&object_po_sisters_Anim_00119C.common), ANIMMODE_ONCE, -3.0f);
this->unk_194 = 100;
this->actor.speedXZ = 0.0f;
this->actor.world.rot.y = this->actor.shape.rot.y;
@@ -562,7 +562,7 @@ void func_80B1B7BC(EnPoSisters* this, PlayState* play) {
void func_80B1B860(EnPoSisters* this, PlayState* play) {
Animation_Change(&this->skelAnime, &object_po_sisters_Anim_00119C, 1.5f, 0.0f,
- Animation_GetLastFrame(&object_po_sisters_Anim_00119C.common), 2, -3.0f);
+ Animation_GetLastFrame(&object_po_sisters_Anim_00119C.common), ANIMMODE_ONCE, -3.0f);
if (this->unk_18C == 0) {
this->unk_2EC = 110.0f;
func_80B1A768(this, play);
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 31e86b8c88..d165c12d56 100644
--- a/src/overlays/actors/ovl_En_Poh/z_en_poh.c
+++ b/src/overlays/actors/ovl_En_Poh/z_en_poh.c
@@ -101,7 +101,7 @@ static ColliderJntSphInit sJntSphInit = {
OC2_TYPE_1,
COLSHAPE_JNTSPH,
},
- 1,
+ ARRAY_COUNT(sJntSphElementsInit),
sJntSphElementsInit,
};
diff --git a/src/overlays/actors/ovl_En_Pp/z_en_pp.c b/src/overlays/actors/ovl_En_Pp/z_en_pp.c
index bd94fbc4aa..ee58c770ab 100644
--- a/src/overlays/actors/ovl_En_Pp/z_en_pp.c
+++ b/src/overlays/actors/ovl_En_Pp/z_en_pp.c
@@ -75,7 +75,7 @@ static ColliderJntSphElementInit D_80B21664[1] = {
// static ColliderJntSphInit sJntSphInit = {
static ColliderJntSphInit D_80B21688 = {
{ COLTYPE_HARD, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_JNTSPH, },
- 1, D_80B21664, // sJntSphElementsInit,
+ ARRAY_COUNT(sJntSphElementsInit), D_80B21664, // sJntSphElementsInit,
};
// static ColliderJntSphElementInit sJntSphElementsInit[1] = {
@@ -89,7 +89,7 @@ static ColliderJntSphElementInit D_80B21698[1] = {
// static ColliderJntSphInit sJntSphInit = {
static ColliderJntSphInit D_80B216BC = {
{ COLTYPE_HARD, AT_ON | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_JNTSPH, },
- 1, D_80B21698, // sJntSphElementsInit,
+ ARRAY_COUNT(sJntSphElementsInit), D_80B21698, // sJntSphElementsInit,
};
// static ColliderQuadInit sQuadInit = {
diff --git a/src/overlays/actors/ovl_En_Pr/z_en_pr.c b/src/overlays/actors/ovl_En_Pr/z_en_pr.c
index d2fd48ad39..c7fae7c884 100644
--- a/src/overlays/actors/ovl_En_Pr/z_en_pr.c
+++ b/src/overlays/actors/ovl_En_Pr/z_en_pr.c
@@ -106,7 +106,7 @@ static AnimationHeader* sAnimations[] = {
};
u8 D_80A33934[] = {
- 0, 2, 0, 0, 2,
+ ANIMMODE_LOOP, ANIMMODE_ONCE, ANIMMODE_LOOP, ANIMMODE_LOOP, ANIMMODE_ONCE,
};
void EnPr_Init(Actor* thisx, PlayState* play2) {
diff --git a/src/overlays/actors/ovl_En_Pr2/z_en_pr2.c b/src/overlays/actors/ovl_En_Pr2/z_en_pr2.c
index 76fd61744f..2454639c5b 100644
--- a/src/overlays/actors/ovl_En_Pr2/z_en_pr2.c
+++ b/src/overlays/actors/ovl_En_Pr2/z_en_pr2.c
@@ -99,7 +99,7 @@ static AnimationHeader* sAnimations[] = {
&object_pr_Anim_003904,
};
-u8 D_80A75C38[] = { 0, 0, 2, 0 };
+u8 D_80A75C38[] = { ANIMMODE_LOOP, ANIMMODE_LOOP, ANIMMODE_ONCE, ANIMMODE_LOOP };
s16 D_80A75C3C[] = {
0x00, 0x10, 0x20, 0x30, 0x40, 0x50, 0x60, 0x70, 0x80, 0x90, 0xA0, 0xB0, 0xC0, 0xD0, 0xE0, 0xF0,
@@ -520,7 +520,8 @@ void func_80A751B4(EnPr2* this) {
func_80A74510(this, 2);
} else {
this->unk_1F8 = Animation_GetLastFrame(&object_pr_Anim_003904);
- Animation_Change(&this->skelAnime, &object_pr_Anim_003904, 1.0f, this->unk_1F8, this->unk_1F8, 2, 0.0f);
+ Animation_Change(&this->skelAnime, &object_pr_Anim_003904, 1.0f, this->unk_1F8, this->unk_1F8, ANIMMODE_ONCE,
+ 0.0f);
this->unk_1D8 = Rand_S16Offset(20, 30);
this->unk_1E4 = 0x4000;
if (Rand_ZeroOne() < 0.5f) {
diff --git a/src/overlays/actors/ovl_En_Prz/z_en_prz.c b/src/overlays/actors/ovl_En_Prz/z_en_prz.c
index 98593e85d6..6fc5ea24a2 100644
--- a/src/overlays/actors/ovl_En_Prz/z_en_prz.c
+++ b/src/overlays/actors/ovl_En_Prz/z_en_prz.c
@@ -96,7 +96,7 @@ const ActorInit En_Prz_InitVars = {
AnimationHeader* D_80A77240[] = { &object_pr_Anim_004340, &object_pr_Anim_004274 };
-u8 D_80A77248[] = { 0, 0 };
+u8 D_80A77248[] = { ANIMMODE_LOOP, ANIMMODE_LOOP };
Vec3f D_80A7724C = { 0.0f, 0.0f, 0.0f };
diff --git a/src/overlays/actors/ovl_En_Rail_Skb/z_en_rail_skb.c b/src/overlays/actors/ovl_En_Rail_Skb/z_en_rail_skb.c
index a35dff0645..d6427d900e 100644
--- a/src/overlays/actors/ovl_En_Rail_Skb/z_en_rail_skb.c
+++ b/src/overlays/actors/ovl_En_Rail_Skb/z_en_rail_skb.c
@@ -112,7 +112,7 @@ static ColliderJntSphInit sJntSphInit = {
OC2_TYPE_1,
COLSHAPE_JNTSPH,
},
- 2,
+ ARRAY_COUNT(sJntSphElementsInit),
sJntSphElementsInit,
};
diff --git a/src/overlays/actors/ovl_En_Rd/z_en_rd.c b/src/overlays/actors/ovl_En_Rd/z_en_rd.c
index f7ec893edc..1f4c102817 100644
--- a/src/overlays/actors/ovl_En_Rd/z_en_rd.c
+++ b/src/overlays/actors/ovl_En_Rd/z_en_rd.c
@@ -440,7 +440,7 @@ void EnRd_SquattingDance(EnRd* this, PlayState* play) {
} else {
this->actor.hintId = 0x2A;
}
- Animation_Change(&this->skelAnime, &gGibdoRedeadLookBackAnim, 0.0f, 0.0f, 19.0f, 2, -10.0f);
+ Animation_Change(&this->skelAnime, &gGibdoRedeadLookBackAnim, 0.0f, 0.0f, 19.0f, ANIMMODE_ONCE, -10.0f);
this->actionFunc = EnRd_EndClappingOrSquattingDanceWhenPlayerIsClose;
}
@@ -484,7 +484,7 @@ void EnRd_ClappingDance(EnRd* this, PlayState* play) {
} else {
this->actor.hintId = 0x2A;
}
- Animation_Change(&this->skelAnime, &gGibdoRedeadLookBackAnim, 0.0f, 0.0f, 19.0f, 2, -10.0f);
+ Animation_Change(&this->skelAnime, &gGibdoRedeadLookBackAnim, 0.0f, 0.0f, 19.0f, ANIMMODE_ONCE, -10.0f);
this->actionFunc = EnRd_EndClappingOrSquattingDanceWhenPlayerIsClose;
}
@@ -582,7 +582,7 @@ void EnRd_EndPirouetteWhenPlayerIsClose(EnRd* this, PlayState* play) {
this->pirouetteRotationalVelocity -= 0x64;
if ((this->pirouetteRotationalVelocity < 0x834) && (this->pirouetteRotationalVelocity >= 0x7D0)) {
- Animation_Change(&this->skelAnime, &gGibdoRedeadLookBackAnim, 0.0f, 0.0f, 19.0f, 2, -10.0f);
+ Animation_Change(&this->skelAnime, &gGibdoRedeadLookBackAnim, 0.0f, 0.0f, 19.0f, ANIMMODE_ONCE, -10.0f);
} else if (this->pirouetteRotationalVelocity < 0x3E8) {
if ((EN_RD_GET_TYPE(&this->actor) != EN_RD_TYPE_CRYING) && (!this->isMourning)) {
EnRd_SetupAttemptPlayerFreeze(this);
@@ -594,7 +594,7 @@ void EnRd_EndPirouetteWhenPlayerIsClose(EnRd* this, PlayState* play) {
void EnRd_SetupRiseFromCoffin(EnRd* this) {
Animation_Change(&this->skelAnime, &gGibdoRedeadIdleAnim, 0.0f, 0.0f, Animation_GetLastFrame(&gGibdoRedeadIdleAnim),
- 0, -6.0f);
+ ANIMMODE_LOOP, -6.0f);
this->action = EN_RD_ACTION_RISING_FROM_COFFIN;
this->coffinRiseForwardAccelTimer = 6;
this->actor.shape.rot.x = -0x4000;
@@ -630,7 +630,7 @@ void EnRd_RiseFromCoffin(EnRd* this, PlayState* play) {
void EnRd_SetupWalkToPlayer(EnRd* this, PlayState* play) {
f32 frameCount = Animation_GetLastFrame(&gGibdoRedeadWalkAnim);
- Animation_Change(&this->skelAnime, &gGibdoRedeadWalkAnim, 1.0f, 4.0f, frameCount, 1, -4.0f);
+ Animation_Change(&this->skelAnime, &gGibdoRedeadWalkAnim, 1.0f, 4.0f, frameCount, ANIMMODE_LOOP_INTERP, -4.0f);
this->actor.speedXZ = 0.4f;
this->action = EN_RD_ACTION_WALKING_TO_PLAYER_OR_RELEASING_GRAB;
this->actionFunc = EnRd_WalkToPlayer;
@@ -707,7 +707,7 @@ void EnRd_WalkToPlayer(EnRd* this, PlayState* play) {
void EnRd_SetupWalkToHome(EnRd* this, PlayState* play) {
Animation_Change(&this->skelAnime, &gGibdoRedeadWalkAnim, 0.5f, 0.0f, Animation_GetLastFrame(&gGibdoRedeadWalkAnim),
- 1, -4.0f);
+ ANIMMODE_LOOP_INTERP, -4.0f);
this->action = EN_RD_ACTION_WALKING_TO_HOME;
this->actionFunc = EnRd_WalkToHome;
}
@@ -759,7 +759,7 @@ void EnRd_WalkToHome(EnRd* this, PlayState* play) {
void EnRd_SetupWalkToParent(EnRd* this) {
f32 frameCount = Animation_GetLastFrame(&gGibdoRedeadWalkAnim);
- Animation_Change(&this->skelAnime, &gGibdoRedeadWalkAnim, 0.5f, 0.0f, frameCount, 1, -4.0f);
+ Animation_Change(&this->skelAnime, &gGibdoRedeadWalkAnim, 0.5f, 0.0f, frameCount, ANIMMODE_LOOP_INTERP, -4.0f);
this->action = EN_RD_ACTION_WALKING_TO_PARENT;
this->isMourning = true;
this->actionFunc = EnRd_WalkToParent;
@@ -844,7 +844,7 @@ void EnRd_Grab(EnRd* this, PlayState* play) {
player->unk_AE8 = 100;
}
Animation_Change(&this->skelAnime, &gGibdoRedeadGrabEndAnim, 0.5f, 0.0f,
- Animation_GetLastFrame(&gGibdoRedeadGrabEndAnim), 3, 0.0f);
+ Animation_GetLastFrame(&gGibdoRedeadGrabEndAnim), ANIMMODE_ONCE_INTERP, 0.0f);
this->grabState++;
this->action = EN_RD_ACTION_WALKING_TO_PLAYER_OR_RELEASING_GRAB;
break;
@@ -905,7 +905,7 @@ void EnRd_Grab(EnRd* this, PlayState* play) {
void EnRd_SetupAttemptPlayerFreeze(EnRd* this) {
Animation_Change(&this->skelAnime, &gGibdoRedeadLookBackAnim, 0.0f, 0.0f,
- Animation_GetLastFrame(&gGibdoRedeadLookBackAnim), 2, 0.0f);
+ Animation_GetLastFrame(&gGibdoRedeadLookBackAnim), ANIMMODE_ONCE, 0.0f);
this->action = EN_RD_ACTION_ATTEMPTING_PLAYER_STUN;
this->actionFunc = EnRd_AttemptPlayerFreeze;
}
@@ -952,7 +952,7 @@ void EnRd_GrabFail(EnRd* this, PlayState* play) {
void EnRd_SetupTurnAwayAndShakeHead(EnRd* this) {
f32 frameCount = Animation_GetLastFrame(&gGibdoRedeadWalkAnim);
- Animation_Change(&this->skelAnime, &gGibdoRedeadWalkAnim, 0.5f, 0.0f, frameCount, 1, -4.0f);
+ Animation_Change(&this->skelAnime, &gGibdoRedeadWalkAnim, 0.5f, 0.0f, frameCount, ANIMMODE_LOOP_INTERP, -4.0f);
this->action = EN_RD_ACTION_TURNING_AWAY_AND_SHAKING_HEAD;
this->headShakeTimer = 0;
this->actionFunc = EnRd_TurnAwayAndShakeHead;
@@ -989,7 +989,7 @@ void EnRd_StandUp(EnRd* this, PlayState* play) {
void EnRd_SetupCrouch(EnRd* this) {
Animation_Change(&this->skelAnime, &gGibdoRedeadStandUpAnim, -1.0f,
- Animation_GetLastFrame(&gGibdoRedeadStandUpAnim), 0.0f, 2, -4.0f);
+ Animation_GetLastFrame(&gGibdoRedeadStandUpAnim), 0.0f, ANIMMODE_ONCE, -4.0f);
this->action = EN_RD_ACTION_CROUCHING;
this->actionFunc = EnRd_Crouch;
}
diff --git a/src/overlays/actors/ovl_En_Ruppecrow/z_en_ruppecrow.c b/src/overlays/actors/ovl_En_Ruppecrow/z_en_ruppecrow.c
index a67965cc7f..421f2f3c04 100644
--- a/src/overlays/actors/ovl_En_Ruppecrow/z_en_ruppecrow.c
+++ b/src/overlays/actors/ovl_En_Ruppecrow/z_en_ruppecrow.c
@@ -75,7 +75,7 @@ static ColliderJntSphInit sJntSphInit = {
OC2_TYPE_1,
COLSHAPE_JNTSPH,
},
- 1,
+ ARRAY_COUNT(sJntSphElementsInit),
sJntSphElementsInit,
};
@@ -440,7 +440,7 @@ void EnRuppecrow_HandleDeath(EnRuppecrow* this) {
this->actor.speedXZ *= Math_CosS(this->actor.world.rot.x);
this->actor.velocity.y = 0.0f;
- Animation_Change(&this->skelAnime, &gGuayFlyAnim, 0.4f, 0.0f, 0.0f, 0x1, -3.0f);
+ Animation_Change(&this->skelAnime, &gGuayFlyAnim, 0.4f, 0.0f, 0.0f, ANIMMODE_LOOP_INTERP, -3.0f);
this->actor.shape.yOffset = 0.0f;
this->actor.targetArrowOffset = 0.0f;
diff --git a/src/overlays/actors/ovl_En_Sb/z_en_sb.c b/src/overlays/actors/ovl_En_Sb/z_en_sb.c
index 968db69cb8..acd645d63a 100644
--- a/src/overlays/actors/ovl_En_Sb/z_en_sb.c
+++ b/src/overlays/actors/ovl_En_Sb/z_en_sb.c
@@ -145,14 +145,14 @@ void EnSb_SpawnBubbles(PlayState* play, EnSb* this) {
void EnSb_SetupWaitClosed(EnSb* this) {
Animation_Change(&this->skelAnime, &object_sb_Anim_00004C, 1.0f, 0, Animation_GetLastFrame(&object_sb_Anim_00004C),
- 2, 0.0f);
+ ANIMMODE_ONCE, 0.0f);
this->state = SHELLBLADE_WAIT_CLOSED;
this->actionFunc = EnSb_Idle;
}
void EnSb_SetupOpen(EnSb* this) {
Animation_Change(&this->skelAnime, &object_sb_Anim_000194, 1.0f, 0, Animation_GetLastFrame(&object_sb_Anim_000194),
- 2, 0.0f);
+ ANIMMODE_ONCE, 0.0f);
this->state = SHELLBLADE_OPEN;
this->actionFunc = EnSb_Open;
Actor_PlaySfxAtPos(&this->actor, NA_SE_EN_KUSAMUSHI_VIBE);
@@ -160,7 +160,7 @@ void EnSb_SetupOpen(EnSb* this) {
void EnSb_SetupWaitOpen(EnSb* this) {
Animation_Change(&this->skelAnime, &object_sb_Anim_002C8C, 1.0f, 0, Animation_GetLastFrame(&object_sb_Anim_002C8C),
- 0, 0.0f);
+ ANIMMODE_LOOP, 0.0f);
this->state = SHELLBLADE_WAIT_OPEN;
this->actionFunc = EnSb_WaitOpen;
}
@@ -169,7 +169,7 @@ void EnSb_SetupLunge(EnSb* this) {
f32 frameCount = Animation_GetLastFrame(&object_sb_Anim_000124);
f32 playbackSpeed = this->actor.depthInWater > 0.0f ? 1.0f : 0.0f;
- Animation_Change(&this->skelAnime, &object_sb_Anim_000124, playbackSpeed, 0.0f, frameCount, 2, 0);
+ Animation_Change(&this->skelAnime, &object_sb_Anim_000124, playbackSpeed, 0.0f, frameCount, ANIMMODE_ONCE, 0);
this->state = SHELLBLADE_LUNGE;
this->actionFunc = EnSb_Lunge;
Actor_PlaySfxAtPos(&this->actor, NA_SE_EN_KUSAMUSHI_VIBE);
@@ -177,7 +177,7 @@ void EnSb_SetupLunge(EnSb* this) {
void EnSb_SetupBounce(EnSb* this) {
Animation_Change(&this->skelAnime, &object_sb_Anim_0000B4, 1.0f, 0, Animation_GetLastFrame(&object_sb_Anim_0000B4),
- 2, 0.0f);
+ ANIMMODE_ONCE, 0.0f);
this->state = SHELLBLADE_BOUNCE;
this->actionFunc = EnSb_Bounce;
}
@@ -186,7 +186,7 @@ void EnSb_SetupIdle(EnSb* this, s32 changeSpeed) {
f32 frameCount = Animation_GetLastFrame(&object_sb_Anim_00004C);
if (this->state != SHELLBLADE_WAIT_CLOSED) {
- Animation_Change(&this->skelAnime, &object_sb_Anim_00004C, 1.0f, 0, frameCount, 2, 0.0f);
+ Animation_Change(&this->skelAnime, &object_sb_Anim_00004C, 1.0f, 0, frameCount, ANIMMODE_ONCE, 0.0f);
}
this->state = SHELLBLADE_WAIT_CLOSED;
if (changeSpeed) {
diff --git a/src/overlays/actors/ovl_En_Skb/z_en_skb.c b/src/overlays/actors/ovl_En_Skb/z_en_skb.c
index 5fda46fbc1..f92fa32d17 100644
--- a/src/overlays/actors/ovl_En_Skb/z_en_skb.c
+++ b/src/overlays/actors/ovl_En_Skb/z_en_skb.c
@@ -106,7 +106,7 @@ static ColliderJntSphInit sJntSphInit = {
OC2_TYPE_1,
COLSHAPE_JNTSPH,
},
- 2,
+ ARRAY_COUNT(sJntSphElementsInit),
sJntSphElementsInit,
};
@@ -536,7 +536,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),
- 0.0f, 2, -4.0f);
+ 0.0f, ANIMMODE_ONCE, -4.0f);
this->unk_3E4 = 0;
this->actor.flags &= ~ACTOR_FLAG_1;
this->actor.speedXZ = 0.0f;
@@ -620,7 +620,8 @@ 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, 3, 0.0f);
+ Animation_Change(&this->skelAnime, &object_skb_Anim_002190, -0.4f, this->skelAnime.curFrame - 1.0f, 0.0f,
+ ANIMMODE_ONCE_INTERP, 0.0f);
this->collider.base.atFlags &= ~AT_BOUNCED;
this->unk_3DE = 4;
this->unk_3E4 = 0;
diff --git a/src/overlays/actors/ovl_En_Ssh/z_en_ssh.c b/src/overlays/actors/ovl_En_Ssh/z_en_ssh.c
index 4a64f1df6a..031fd14e8f 100644
--- a/src/overlays/actors/ovl_En_Ssh/z_en_ssh.c
+++ b/src/overlays/actors/ovl_En_Ssh/z_en_ssh.c
@@ -102,7 +102,7 @@ static ColliderJntSphInit sJntSphInit = {
OC2_TYPE_1,
COLSHAPE_JNTSPH,
},
- 1,
+ ARRAY_COUNT(sJntSphElementsInit),
sJntSphElementsInit,
};
diff --git a/src/overlays/actors/ovl_En_Sth/z_en_sth.c b/src/overlays/actors/ovl_En_Sth/z_en_sth.c
index 4d80d00493..2e9d6ed270 100644
--- a/src/overlays/actors/ovl_En_Sth/z_en_sth.c
+++ b/src/overlays/actors/ovl_En_Sth/z_en_sth.c
@@ -179,8 +179,8 @@ s32 func_80B6703C(EnSth* this, PlayState* play) {
void func_80B670A4(EnSth* this, s16 arg1) {
if ((arg1 >= 0) && (arg1 < ARRAY_COUNT(D_80B6D1C8)) && (arg1 != this->unk_29A)) {
- Animation_Change(&this->skelAnime, D_80B6D1C8[arg1], 1.0f, 0.0f, Animation_GetLastFrame(D_80B6D1C8[arg1]), 0,
- -5.0f);
+ Animation_Change(&this->skelAnime, D_80B6D1C8[arg1], 1.0f, 0.0f, Animation_GetLastFrame(D_80B6D1C8[arg1]),
+ ANIMMODE_LOOP, -5.0f);
this->unk_29A = arg1;
}
}
diff --git a/src/overlays/actors/ovl_En_Syateki_Crow/z_en_syateki_crow.c b/src/overlays/actors/ovl_En_Syateki_Crow/z_en_syateki_crow.c
index 10dc40483d..65b11055cb 100644
--- a/src/overlays/actors/ovl_En_Syateki_Crow/z_en_syateki_crow.c
+++ b/src/overlays/actors/ovl_En_Syateki_Crow/z_en_syateki_crow.c
@@ -61,7 +61,7 @@ static ColliderJntSphInit sJntSphInit = {
OC2_TYPE_1,
COLSHAPE_JNTSPH,
},
- 1,
+ ARRAY_COUNT(sJntSphElementsInit),
sJntSphElementsInit,
};
@@ -225,7 +225,7 @@ void func_809CAAF8(EnSyatekiCrow* this) {
this->unk_1C2 = 0;
this->actor.speedXZ *= Math_CosS(this->actor.world.rot.x);
this->actor.velocity.y = 0.0f;
- Animation_Change(&this->skelAnime, &gGuayFlyAnim, 0.4f, 0.0f, 0.0f, 1, -3.0f);
+ Animation_Change(&this->skelAnime, &gGuayFlyAnim, 0.4f, 0.0f, 0.0f, ANIMMODE_LOOP_INTERP, -3.0f);
this->actor.bgCheckFlags &= ~1;
Actor_PlaySfxAtPos(&this->actor, NA_SE_EN_KAICHO_DEAD);
Actor_SetColorFilter(&this->actor, 0x4000, 255, 0, 40);
diff --git a/src/overlays/actors/ovl_En_Syateki_Wf/z_en_syateki_wf.c b/src/overlays/actors/ovl_En_Syateki_Wf/z_en_syateki_wf.c
index 56abe88148..e40cc9570f 100644
--- a/src/overlays/actors/ovl_En_Syateki_Wf/z_en_syateki_wf.c
+++ b/src/overlays/actors/ovl_En_Syateki_Wf/z_en_syateki_wf.c
@@ -73,7 +73,7 @@ static ColliderJntSphInit sJntSphInit = {
OC2_TYPE_1,
COLSHAPE_JNTSPH,
},
- 1,
+ ARRAY_COUNT(sJntSphElementsInit),
sJntSphElementsInit,
};
diff --git a/src/overlays/actors/ovl_En_Talk_Gibud/z_en_talk_gibud.c b/src/overlays/actors/ovl_En_Talk_Gibud/z_en_talk_gibud.c
index 042ac0f956..601a9f936e 100644
--- a/src/overlays/actors/ovl_En_Talk_Gibud/z_en_talk_gibud.c
+++ b/src/overlays/actors/ovl_En_Talk_Gibud/z_en_talk_gibud.c
@@ -609,7 +609,7 @@ void EnTalkGibud_Dead(EnTalkGibud* this, PlayState* play) {
void EnTalkGibud_SetupRevive(EnTalkGibud* this) {
Animation_Change(&this->skelAnime, &gGibdoRedeadDeathAnim, -1.0f, Animation_GetLastFrame(&gGibdoRedeadDeathAnim),
- 0.0f, 2, -8.0f);
+ 0.0f, ANIMMODE_ONCE, -8.0f);
this->actor.flags |= ACTOR_FLAG_1;
Actor_PlaySfxAtPos(&this->actor, NA_SE_EN_REDEAD_REVERSE);
this->deathTimer = 0;
diff --git a/src/overlays/actors/ovl_En_Thiefbird/z_en_thiefbird.c b/src/overlays/actors/ovl_En_Thiefbird/z_en_thiefbird.c
index 8eb883a8a3..bcf27f409e 100644
--- a/src/overlays/actors/ovl_En_Thiefbird/z_en_thiefbird.c
+++ b/src/overlays/actors/ovl_En_Thiefbird/z_en_thiefbird.c
@@ -90,7 +90,7 @@ static ColliderJntSphInit sJntSphInit = {
OC2_TYPE_1,
COLSHAPE_JNTSPH,
},
- 3,
+ ARRAY_COUNT(sJntSphElementsInit),
sJntSphElementsInit,
};
@@ -776,7 +776,7 @@ void func_80C12378(EnThiefbird* this, PlayState* play) {
}
void func_80C1242C(EnThiefbird* this) {
- Animation_Change(&this->skelAnime, &object_thiefbird_Anim_000278, 2.0f, 0.0f, 0.0f, 0, -4.0f);
+ Animation_Change(&this->skelAnime, &object_thiefbird_Anim_000278, 2.0f, 0.0f, 0.0f, ANIMMODE_LOOP, -4.0f);
this->actor.flags |= ACTOR_FLAG_10;
this->collider.base.acFlags |= AC_ON;
this->actionFunc = func_80C124B0;
@@ -837,7 +837,7 @@ void func_80C126D8(EnThiefbird* this, PlayState* play) {
void func_80C12744(EnThiefbird* this) {
Animation_MorphToLoop(&this->skelAnime, &object_thiefbird_Anim_000604, -4.0f);
- Animation_Change(&this->skelAnime, &object_thiefbird_Anim_000604, 1.0f, 0.0f, 0.0f, 1, -4.0f);
+ Animation_Change(&this->skelAnime, &object_thiefbird_Anim_000604, 1.0f, 0.0f, 0.0f, ANIMMODE_LOOP_INTERP, -4.0f);
this->unk_190 = 0;
this->collider.base.acFlags |= AC_ON;
this->actor.flags |= ACTOR_FLAG_10;
diff --git a/src/overlays/actors/ovl_En_Tite/z_en_tite.c b/src/overlays/actors/ovl_En_Tite/z_en_tite.c
index 09e3bef208..2b13859651 100644
--- a/src/overlays/actors/ovl_En_Tite/z_en_tite.c
+++ b/src/overlays/actors/ovl_En_Tite/z_en_tite.c
@@ -811,7 +811,7 @@ void func_80895A10(EnTite* this) {
s32 pad;
s16 rand;
- Animation_Change(&this->skelAnime, &object_tite_Anim_000A14, 2.0f, 0.0f, 0.0f, 0, 4.0f);
+ Animation_Change(&this->skelAnime, &object_tite_Anim_000A14, 2.0f, 0.0f, 0.0f, ANIMMODE_LOOP, 4.0f);
this->actor.speedXZ = 0.0f;
rand = Rand_S16Offset(20, 20);
this->unk_2BC = ((Rand_ZeroOne() < 0.5f) ? -1 : 1) * rand;
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 a0b83ff6dd..89ed1388d3 100644
--- a/src/overlays/actors/ovl_En_Tk/z_en_tk.c
+++ b/src/overlays/actors/ovl_En_Tk/z_en_tk.c
@@ -227,7 +227,7 @@ void EnTk_Init(Actor* thisx, PlayState* play) {
ActorShape_Init(&this->actor.shape, 0.0f, ActorShadow_DrawCircle, 24.0f);
SkelAnime_InitFlex(play, &this->skelAnime, &object_tk_Skel_00B9E8, NULL, this->jointTable, this->morphTable, 18);
Animation_Change(&this->skelAnime, &object_tk_Anim_0030A4, 1.0f, 0.0f,
- Animation_GetLastFrame(&object_tk_Anim_0030A4.common), 0, 0.0f);
+ Animation_GetLastFrame(&object_tk_Anim_0030A4.common), ANIMMODE_LOOP, 0.0f);
this->unk_318 = 0;
this->unk_2D4 = -1;
Actor_SetScale(&this->actor, 0.01f);
diff --git a/src/overlays/actors/ovl_En_Vm/z_en_vm.c b/src/overlays/actors/ovl_En_Vm/z_en_vm.c
index 4b43ec95a4..4e7e851470 100644
--- a/src/overlays/actors/ovl_En_Vm/z_en_vm.c
+++ b/src/overlays/actors/ovl_En_Vm/z_en_vm.c
@@ -75,7 +75,7 @@ static ColliderJntSphInit sJntSphInit = {
OC2_TYPE_1,
COLSHAPE_JNTSPH,
},
- 2,
+ ARRAY_COUNT(sJntSphElementsInit),
sJntSphElementsInit,
};
@@ -102,7 +102,7 @@ static ColliderTrisInit sTrisInit = {
OC2_NONE,
COLSHAPE_TRIS,
},
- 1,
+ ARRAY_COUNT(sTrisElementsInit),
sTrisElementsInit,
};
diff --git a/src/overlays/actors/ovl_En_Warp_tag/z_en_warp_tag.c b/src/overlays/actors/ovl_En_Warp_tag/z_en_warp_tag.c
index fd9226483c..77a9611346 100644
--- a/src/overlays/actors/ovl_En_Warp_tag/z_en_warp_tag.c
+++ b/src/overlays/actors/ovl_En_Warp_tag/z_en_warp_tag.c
@@ -264,7 +264,7 @@ void EnWarpTag_Draw(Actor* thisx, PlayState* play) {
OPEN_DISPS(play->state.gfxCtx);
func_8012C28C(play->state.gfxCtx);
- AnimatedMat_Draw(play, Lib_SegmentedToVirtual(&gWarpTagRainbowAnimMat));
+ AnimatedMat_Draw(play, Lib_SegmentedToVirtual(&gWarpTagRainbowTexAnim));
gSPMatrix(POLY_OPA_DISP++, Matrix_NewMtx(play->state.gfxCtx), G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
gSPDisplayList(POLY_OPA_DISP++, gWarpTagGoronTrialBaseDL);
diff --git a/src/overlays/actors/ovl_En_Wdhand/z_en_wdhand.c b/src/overlays/actors/ovl_En_Wdhand/z_en_wdhand.c
index ba5a16db33..a4cf5379aa 100644
--- a/src/overlays/actors/ovl_En_Wdhand/z_en_wdhand.c
+++ b/src/overlays/actors/ovl_En_Wdhand/z_en_wdhand.c
@@ -63,7 +63,7 @@ static ColliderJntSphElementInit D_80AF63E0[7] = {
// static ColliderJntSphInit sJntSphInit = {
static ColliderJntSphInit D_80AF64DC = {
{ COLTYPE_HIT0, AT_NONE | AT_TYPE_ENEMY, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_ALL, OC2_TYPE_1, COLSHAPE_JNTSPH, },
- 7, D_80AF63E0, // sJntSphElementsInit,
+ ARRAY_COUNT(sJntSphElementsInit), D_80AF63E0, // sJntSphElementsInit,
};
// sColChkInfoInit
diff --git a/src/overlays/actors/ovl_En_Wf/z_en_wf.c b/src/overlays/actors/ovl_En_Wf/z_en_wf.c
index 3abb119ed1..95a1a1b050 100644
--- a/src/overlays/actors/ovl_En_Wf/z_en_wf.c
+++ b/src/overlays/actors/ovl_En_Wf/z_en_wf.c
@@ -123,7 +123,7 @@ static ColliderJntSphInit sJntSphInit = {
OC2_TYPE_1,
COLSHAPE_JNTSPH,
},
- 4,
+ ARRAY_COUNT(sJntSphElementsInit),
sJntSphElementsInit,
};
@@ -549,7 +549,7 @@ void func_80990F50(EnWf* this, PlayState* play) {
}
void func_80990FC8(EnWf* this) {
- Animation_Change(&this->skelAnime, &gWolfosRearingUpFallingOverAnim, 0.5f, 0.0f, 7.0f, 3, 0.0f);
+ Animation_Change(&this->skelAnime, &gWolfosRearingUpFallingOverAnim, 0.5f, 0.0f, 7.0f, ANIMMODE_ONCE_INTERP, 0.0f);
this->unk_2A0 = 5;
this->actor.flags |= ACTOR_FLAG_1;
this->actionFunc = func_80991040;
@@ -572,7 +572,7 @@ void func_80991040(EnWf* this, PlayState* play) {
void func_809910F0(EnWf* this) {
this->collider2.base.acFlags &= ~AC_ON;
this->actor.speedXZ = 0.0f;
- Animation_Change(&this->skelAnime, &gWolfosRearingUpFallingOverAnim, 0.5f, 0.0f, 7.0f, 3, -5.0f);
+ Animation_Change(&this->skelAnime, &gWolfosRearingUpFallingOverAnim, 0.5f, 0.0f, 7.0f, ANIMMODE_ONCE_INTERP, -5.0f);
this->unk_2A0 = 5;
this->actionFunc = func_80991174;
}
@@ -879,7 +879,8 @@ void func_80991FD8(EnWf* this) {
if (this->skelAnime.curFrame > 15.0f) {
phi_f0 = 15.0f;
}
- Animation_Change(&this->skelAnime, &gWolfosSlashingAnim, -0.5f, this->skelAnime.curFrame - 1.0f, phi_f0, 3, 0.0f);
+ Animation_Change(&this->skelAnime, &gWolfosSlashingAnim, -0.5f, this->skelAnime.curFrame - 1.0f, phi_f0,
+ ANIMMODE_ONCE_INTERP, 0.0f);
this->collider1.base.atFlags &= ~AT_ON;
this->actionFunc = func_80992068;
}
@@ -1021,7 +1022,7 @@ void func_809924EC(EnWf* this, PlayState* play) {
void func_809926D0(EnWf* this) {
this->collider2.base.acFlags &= ~AC_ON;
Animation_Change(&this->skelAnime, &gWolfosBackflippingAnim, -1.0f,
- Animation_GetLastFrame(&gWolfosBackflippingAnim.common), 0.0f, 2, -3.0f);
+ Animation_GetLastFrame(&gWolfosBackflippingAnim.common), 0.0f, ANIMMODE_ONCE, -3.0f);
this->unk_2A0 = 0;
this->actor.speedXZ = 6.5f;
this->actor.velocity.y = 15.0f;
@@ -1053,7 +1054,7 @@ void func_8099282C(EnWf* this) {
this->unk_2A0 = 10;
this->actor.speedXZ = 0.0f;
Animation_Change(&this->skelAnime, &gWolfosBlockingAnim, -1.0f, Animation_GetLastFrame(&gWolfosBlockingAnim.common),
- 0.0f, 2, -2.0f);
+ 0.0f, ANIMMODE_ONCE, -2.0f);
this->actionFunc = func_809928CC;
}
diff --git a/src/overlays/actors/ovl_En_Wiz/z_en_wiz.c b/src/overlays/actors/ovl_En_Wiz/z_en_wiz.c
index 0000cb3a3a..82cc5f2e27 100644
--- a/src/overlays/actors/ovl_En_Wiz/z_en_wiz.c
+++ b/src/overlays/actors/ovl_En_Wiz/z_en_wiz.c
@@ -77,7 +77,7 @@ static ColliderJntSphElementInit D_80A48B50[10] = {
// static ColliderJntSphInit sJntSphInit = {
static ColliderJntSphInit D_80A48CB8 = {
{ COLTYPE_HIT2, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_NONE, OC2_TYPE_1, COLSHAPE_JNTSPH, },
- 10, D_80A48B50, // sJntSphElementsInit,
+ ARRAY_COUNT(sJntSphElementsInit), D_80A48B50, // sJntSphElementsInit,
};
// static ColliderCylinderInit sCylinderInit = {
diff --git a/src/overlays/actors/ovl_En_Zob/z_en_zob.c b/src/overlays/actors/ovl_En_Zob/z_en_zob.c
index ca2c62e22e..851dd6a909 100644
--- a/src/overlays/actors/ovl_En_Zob/z_en_zob.c
+++ b/src/overlays/actors/ovl_En_Zob/z_en_zob.c
@@ -96,7 +96,7 @@ void EnZob_Init(Actor* thisx, PlayState* play) {
this->unk_304 = 0;
this->actor.terminalVelocity = -4.0f;
this->actor.gravity = -4.0f;
- func_80B9F7E4(this, 6, 2);
+ func_80B9F7E4(this, 6, ANIMMODE_ONCE);
this->actionFunc = func_80BA0728;
this->actor.textId = 0;
@@ -130,7 +130,7 @@ void EnZob_Init(Actor* thisx, PlayState* play) {
this->actionFunc = func_80BA0CF4;
this->unk_2F4 |= 0x20;
this->unk_312 = -1;
- func_80B9F7E4(this, 0, 2);
+ func_80B9F7E4(this, 0, ANIMMODE_ONCE);
this->unk_304 = 5;
break;
@@ -161,9 +161,9 @@ void func_80B9F86C(EnZob* this) {
case 0:
if (Rand_ZeroFloat(1.0f) > 0.7f) {
if (this->unk_302 == 6) {
- func_80B9F7E4(this, 7, 2);
+ func_80B9F7E4(this, 7, ANIMMODE_ONCE);
} else {
- func_80B9F7E4(this, 6, 2);
+ func_80B9F7E4(this, 6, ANIMMODE_ONCE);
}
} else {
func_80B9F7E4(this, this->unk_302, 2);
@@ -171,32 +171,32 @@ void func_80B9F86C(EnZob* this) {
break;
case 1:
- func_80B9F7E4(this, 3, 0);
+ func_80B9F7E4(this, 3, ANIMMODE_LOOP);
break;
case 2:
- func_80B9F7E4(this, 4, 0);
+ func_80B9F7E4(this, 4, ANIMMODE_LOOP);
break;
case 3:
- func_80B9F7E4(this, 5, 0);
+ func_80B9F7E4(this, 5, ANIMMODE_LOOP);
break;
case 4:
if (this->unk_302 == 3) {
- func_80B9F7E4(this, 0, 0);
+ func_80B9F7E4(this, 0, ANIMMODE_LOOP);
} else {
- func_80B9F7E4(this, 3, 2);
+ func_80B9F7E4(this, 3, ANIMMODE_ONCE);
}
break;
case 5:
if (Rand_ZeroFloat(1.0f) < 0.8f) {
- func_80B9F7E4(this, this->unk_302, 2);
+ func_80B9F7E4(this, this->unk_302, ANIMMODE_ONCE);
} else if (this->unk_302 == 0) {
- func_80B9F7E4(this, 1, 2);
+ func_80B9F7E4(this, 1, ANIMMODE_ONCE);
} else {
- func_80B9F7E4(this, 0, 2);
+ func_80B9F7E4(this, 0, ANIMMODE_ONCE);
}
break;
}
@@ -217,36 +217,36 @@ void func_80B9FA3C(EnZob* this, PlayState* play) {
textId = 0x11F8;
}
this->unk_304 = 3;
- func_80B9F7E4(this, 5, 0);
+ func_80B9F7E4(this, 5, ANIMMODE_LOOP);
} else if (this->unk_2F4 & 0x10) {
textId = 0x1210;
this->unk_304 = 3;
- func_80B9F7E4(this, 5, 2);
+ func_80B9F7E4(this, 5, ANIMMODE_ONCE);
} else if (gSaveContext.save.weekEventReg[31] & 8) {
textId = 0x1205;
this->unk_304 = 1;
- func_80B9F7E4(this, 3, 0);
+ func_80B9F7E4(this, 3, ANIMMODE_LOOP);
} else if (this->unk_2F4 & 8) {
textId = 0x1215;
this->unk_304 = 3;
- func_80B9F7E4(this, 5, 2);
+ func_80B9F7E4(this, 5, ANIMMODE_ONCE);
} else if (this->unk_2F4 & 2) {
textId = 0x1203;
this->unk_304 = 1;
- func_80B9F7E4(this, 2, 2);
+ func_80B9F7E4(this, 2, ANIMMODE_ONCE);
} else if (gSaveContext.save.weekEventReg[30] & 8) {
textId = 0x11FA;
this->unk_304 = 1;
- func_80B9F7E4(this, 2, 2);
+ func_80B9F7E4(this, 2, ANIMMODE_ONCE);
} else if (!(gSaveContext.save.weekEventReg[30] & 4)) {
gSaveContext.save.weekEventReg[30] |= 4;
textId = 0x11FB;
this->unk_304 = 1;
- func_80B9F7E4(this, 2, 2);
+ func_80B9F7E4(this, 2, ANIMMODE_ONCE);
} else {
textId = 0x1201;
this->unk_304 = 3;
- func_80B9F7E4(this, 4, 2);
+ func_80B9F7E4(this, 4, ANIMMODE_ONCE);
}
Message_StartTextbox(play, textId, &this->actor);
@@ -273,7 +273,7 @@ void func_80B9FCA0(EnZob* this, PlayState* play) {
this->unk_2F4 &= ~1;
this->actionFunc = func_80BA0728;
this->unk_304 = 0;
- func_80B9F7E4(this, 6, 2);
+ func_80B9F7E4(this, 6, ANIMMODE_ONCE);
func_800B8718(&this->actor, &play->state);
}
@@ -292,11 +292,11 @@ void func_80B9FD24(EnZob* this, PlayState* play) {
this->unk_310 = action;
switch (action) {
case 1:
- func_80B9F7E4(this, 8, 0);
+ func_80B9F7E4(this, 8, ANIMMODE_LOOP);
break;
case 2:
- func_80B9F7E4(this, 7, 0);
+ func_80B9F7E4(this, 7, ANIMMODE_LOOP);
break;
}
}
@@ -323,7 +323,7 @@ void func_80B9FE5C(EnZob* this, PlayState* play) {
play->msgCtx.unk11F10 = 0;
this->actionFunc = func_80B9FE1C;
this->unk_304 = 3;
- func_80B9F7E4(this, 5, 2);
+ func_80B9F7E4(this, 5, ANIMMODE_ONCE);
func_80B9FC70(this, 0);
}
}
@@ -342,14 +342,14 @@ void func_80B9FF80(EnZob* this, PlayState* play) {
if (play->msgCtx.ocarinaMode == 3) {
this->actionFunc = func_80B9FF20;
this->unk_304 = 6;
- func_80B9F7E4(this, 1, 0);
+ func_80B9F7E4(this, 1, ANIMMODE_LOOP);
func_80152434(play, 0x3E);
func_80B9FC70(this, 1);
} else if (Message_GetState(&play->msgCtx) == 11) {
play->msgCtx.unk11F10 = 0;
this->actionFunc = func_80B9FE1C;
this->unk_304 = 3;
- func_80B9F7E4(this, 5, 2);
+ func_80B9F7E4(this, 5, ANIMMODE_ONCE);
func_80B9FC70(this, 0);
}
}
@@ -374,7 +374,7 @@ void func_80BA00BC(EnZob* this, PlayState* play) {
func_8019F208();
func_80151938(play, 0x1209);
this->unk_304 = 1;
- func_80B9F7E4(this, 2, 2);
+ func_80B9F7E4(this, 2, ANIMMODE_ONCE);
break;
case 0:
@@ -397,7 +397,7 @@ void func_80BA00BC(EnZob* this, PlayState* play) {
case 0x120C:
play->msgCtx.unk11F10 = 0;
this->actionFunc = func_80B9FD24;
- func_80B9F7E4(this, 8, 0);
+ func_80B9F7E4(this, 8, ANIMMODE_LOOP);
func_80B9FC70(this, 3);
break;
@@ -407,7 +407,7 @@ void func_80BA00BC(EnZob* this, PlayState* play) {
case 0x1217:
func_80151938(play, play->msgCtx.currentTextId + 1);
this->unk_304 = 3;
- func_80B9F7E4(this, 4, 2);
+ func_80B9F7E4(this, 4, ANIMMODE_ONCE);
break;
case 0x1218:
@@ -428,7 +428,7 @@ void func_80BA00BC(EnZob* this, PlayState* play) {
case 0x1209:
func_80152434(play, 0x3D);
this->unk_304 = 4;
- func_80B9F7E4(this, 0, 0);
+ func_80B9F7E4(this, 0, ANIMMODE_LOOP);
this->actionFunc = func_80BA005C;
func_80B9FC70(this, 1);
break;
@@ -441,7 +441,7 @@ void func_80BA00BC(EnZob* this, PlayState* play) {
void func_80BA0318(EnZob* this, PlayState* play) {
func_80152434(play, 0x3D);
this->unk_304 = 4;
- func_80B9F7E4(this, 0, 0);
+ func_80B9F7E4(this, 0, ANIMMODE_LOOP);
this->actionFunc = func_80BA005C;
func_80B9FC70(this, 1);
}
@@ -458,7 +458,7 @@ void func_80BA0374(EnZob* this, PlayState* play) {
case 0:
func_8019F208();
func_80151938(play, 0x1207);
- func_80B9F7E4(this, 2, 2);
+ func_80B9F7E4(this, 2, ANIMMODE_ONCE);
break;
case 1:
@@ -481,7 +481,7 @@ void func_80BA0374(EnZob* this, PlayState* play) {
func_801477B4(play);
this->actionFunc = func_80BA0728;
this->unk_304 = 0;
- func_80B9F7E4(this, 6, 2);
+ func_80B9F7E4(this, 6, ANIMMODE_ONCE);
this->unk_2F4 &= ~1;
break;
@@ -495,13 +495,13 @@ void func_80BA0374(EnZob* this, PlayState* play) {
case 0x11FD:
this->unk_304 = 3;
- func_80B9F7E4(this, 4, 2);
+ func_80B9F7E4(this, 4, ANIMMODE_ONCE);
func_80151938(play, play->msgCtx.currentTextId + 1);
break;
case 0x11FE:
this->unk_304 = 1;
- func_80B9F7E4(this, 3, 0);
+ func_80B9F7E4(this, 3, ANIMMODE_LOOP);
func_80151938(play, play->msgCtx.currentTextId + 1);
break;
@@ -516,7 +516,7 @@ void func_80BA0374(EnZob* this, PlayState* play) {
func_801477B4(play);
this->actionFunc = func_80BA0728;
this->unk_304 = 0;
- func_80B9F7E4(this, 6, 2);
+ func_80B9F7E4(this, 6, ANIMMODE_ONCE);
this->unk_2F4 &= ~1;
this->unk_2F4 |= 2;
break;
@@ -539,7 +539,7 @@ void func_80BA0610(EnZob* this, PlayState* play) {
this->actor.flags &= ~ACTOR_FLAG_10000;
Message_StartTextbox(play, 0x120D, &this->actor);
this->unk_304 = 3;
- func_80B9F7E4(this, 5, 2);
+ func_80B9F7E4(this, 5, ANIMMODE_ONCE);
func_80B9FC70(this, 0);
this->actionFunc = func_80BA00BC;
} else {
@@ -571,7 +571,7 @@ void func_80BA0728(EnZob* this, PlayState* play) {
}
this->actionFunc = func_80BA00BC;
this->unk_304 = 1;
- func_80B9F7E4(this, 2, 2);
+ func_80B9F7E4(this, 2, ANIMMODE_ONCE);
this->unk_30E = 0;
this->unk_2F4 |= 1;
} else if (Actor_ProcessTalkRequest(&this->actor, &play->state)) {
@@ -598,21 +598,21 @@ void func_80BA08E8(EnZob* this, PlayState* play) {
if (gSaveContext.save.weekEventReg[79] & 1) {
textId = 0x1257;
this->unk_304 = 3;
- func_80B9F7E4(this, 4, 2);
+ func_80B9F7E4(this, 4, ANIMMODE_ONCE);
} else if (gSaveContext.save.weekEventReg[78] & 0x40) {
textId = 0x1256;
this->unk_304 = 1;
- func_80B9F7E4(this, 2, 2);
+ func_80B9F7E4(this, 2, ANIMMODE_ONCE);
} else {
textId = 0x1255;
gSaveContext.save.weekEventReg[78] |= 0x40;
this->unk_304 = 1;
- func_80B9F7E4(this, 2, 2);
+ func_80B9F7E4(this, 2, ANIMMODE_ONCE);
}
} else {
textId = 0x1254;
this->unk_304 = 3;
- func_80B9F7E4(this, 5, 2);
+ func_80B9F7E4(this, 5, ANIMMODE_ONCE);
}
Message_StartTextbox(play, textId, &this->actor);
@@ -635,12 +635,12 @@ void func_80BA0A04(EnZob* this, PlayState* play) {
func_801477B4(play);
this->actionFunc = func_80BA0AD8;
this->unk_304 = 0;
- func_80B9F7E4(this, 6, 2);
+ func_80B9F7E4(this, 6, ANIMMODE_ONCE);
}
} else {
this->actionFunc = func_80BA0AD8;
this->unk_304 = 0;
- func_80B9F7E4(this, 6, 2);
+ func_80B9F7E4(this, 6, ANIMMODE_ONCE);
}
}
@@ -665,7 +665,7 @@ void func_80BA0BB4(EnZob* this, PlayState* play) {
func_80B9F86C(this);
if (gSaveContext.save.weekEventReg[79] & 1) {
this->actionFunc = func_80BA09E0;
- func_80B9F7E4(this, 0, 2);
+ func_80B9F7E4(this, 0, ANIMMODE_ONCE);
this->unk_304 = 5;
}
}
diff --git a/src/overlays/actors/ovl_En_Zog/z_en_zog.c b/src/overlays/actors/ovl_En_Zog/z_en_zog.c
index 4ad1108897..2fa9e89064 100644
--- a/src/overlays/actors/ovl_En_Zog/z_en_zog.c
+++ b/src/overlays/actors/ovl_En_Zog/z_en_zog.c
@@ -429,7 +429,7 @@ s32 func_80B93EA0(EnZog* this, PlayState* play) {
break;
case 17:
- Animation_Change(&this->skelAnime, *D_80B958DC, 0.0f, 0.0f, 0.0f, 0, 0.0f);
+ Animation_Change(&this->skelAnime, *D_80B958DC, 0.0f, 0.0f, 0.0f, ANIMMODE_LOOP, 0.0f);
break;
}
break;
@@ -503,37 +503,37 @@ s32 func_80B93EA0(EnZog* this, PlayState* play) {
switch (this->unk_306) {
case 1:
- func_80B939C0(this, 7, 0);
+ func_80B939C0(this, 7, ANIMMODE_LOOP);
this->unk_31C = 2;
this->unk_31E = 0;
break;
case 2:
- func_80B939C0(this, 11, 2);
+ func_80B939C0(this, 11, ANIMMODE_ONCE);
this->unk_31C = 1;
this->unk_31E = 0;
break;
case 3:
- func_80B939C0(this, 15, 2);
+ func_80B939C0(this, 15, ANIMMODE_ONCE);
this->unk_31C = 0;
this->unk_31E = 1;
break;
case 4:
- func_80B939C0(this, 13, 2);
+ func_80B939C0(this, 13, ANIMMODE_ONCE);
this->unk_31C = 2;
this->unk_31E = 1;
break;
case 5:
- func_80B939C0(this, 16, 2);
+ func_80B939C0(this, 16, ANIMMODE_ONCE);
this->unk_31C = 2;
this->unk_31E = 1;
break;
case 6:
- func_80B939C0(this, 8, 2);
+ func_80B939C0(this, 8, ANIMMODE_ONCE);
this->unk_31C = 1;
this->unk_31E = 0;
break;
@@ -546,14 +546,14 @@ s32 func_80B93EA0(EnZog* this, PlayState* play) {
case 9:
this->unk_322 = 0;
this->unk_30A |= 8;
- func_80B939C0(this, 18, 0);
+ func_80B939C0(this, 18, ANIMMODE_LOOP);
this->unk_31C = 0;
this->unk_31E = 0;
this->unk_30A &= ~2;
break;
case 10:
- func_80B939C0(this, 14, 0);
+ func_80B939C0(this, 14, ANIMMODE_LOOP);
this->unk_31C = 0;
this->unk_30A |= 2;
this->unk_31E = 1;
diff --git a/src/overlays/actors/ovl_En_Zoraegg/z_en_zoraegg.c b/src/overlays/actors/ovl_En_Zoraegg/z_en_zoraegg.c
index 29490e9645..234cf43e68 100644
--- a/src/overlays/actors/ovl_En_Zoraegg/z_en_zoraegg.c
+++ b/src/overlays/actors/ovl_En_Zoraegg/z_en_zoraegg.c
@@ -472,7 +472,7 @@ void func_80B326F4(EnZoraegg* this, PlayState* play) {
if (Cutscene_CheckActorAction(play, this->actorActionCmd) &&
(play->csCtx.actorActions[Cutscene_GetActorActionIndex(play, this->actorActionCmd)]->action == 3)) {
Animation_Change(&this->skelAnime, &object_zoraegg_Anim_004D20, 1.0f, 0.0f,
- Animation_GetLastFrame(&object_zoraegg_Anim_004D20), 2, 5.0f);
+ Animation_GetLastFrame(&object_zoraegg_Anim_004D20), ANIMMODE_ONCE, 5.0f);
this->unk_1E8 = 0;
this->actionFunc = func_80B32644;
gSaveContext.save.weekEventReg[19] |= 0x40;
@@ -493,7 +493,7 @@ void func_80B32820(EnZoraegg* this, PlayState* play) {
if (this->unk_1E8 >= 2) {
this->actionFunc = func_80B326F4;
Animation_Change(&this->skelAnime, &object_zoraegg_Anim_005098, 1.0f, 0.0f,
- Animation_GetLastFrame(&object_zoraegg_Anim_005098), 0, 10.0f);
+ Animation_GetLastFrame(&object_zoraegg_Anim_005098), ANIMMODE_LOOP, 10.0f);
this->unk_1E8 = 0;
SkelAnime_Update(&this->skelAnime);
return;
diff --git a/src/overlays/actors/ovl_En_Zos/z_en_zos.c b/src/overlays/actors/ovl_En_Zos/z_en_zos.c
index ffb3dee88c..89cc1ee140 100644
--- a/src/overlays/actors/ovl_En_Zos/z_en_zos.c
+++ b/src/overlays/actors/ovl_En_Zos/z_en_zos.c
@@ -80,7 +80,7 @@ void EnZos_Init(Actor* thisx, PlayState* play) {
this->unk_2B6 = 0;
this->actor.terminalVelocity = -4.0f;
this->actor.gravity = -4.0f;
- func_80BBAE84(this, 0, 2);
+ func_80BBAE84(this, 0, ANIMMODE_ONCE);
switch (ENZOS_GET_F(&this->actor)) {
case ENZOS_F_1:
@@ -93,12 +93,12 @@ void EnZos_Init(Actor* thisx, PlayState* play) {
} else {
this->actionFunc = func_80BBC14C;
}
- func_80BBAE84(this, 0, 2);
+ func_80BBAE84(this, 0, ANIMMODE_ONCE);
break;
case ENZOS_F_2:
this->actionFunc = func_80BBC37C;
- func_80BBAE84(this, 7, 2);
+ func_80BBAE84(this, 7, ANIMMODE_ONCE);
this->unk_2BC = -1;
this->unk_2B6 |= 0x40;
break;
@@ -153,19 +153,19 @@ s32 func_80BBAFFC(EnZos* this, PlayState* play) {
if (SkelAnime_Update(&this->skelAnime)) {
switch ((s16)Rand_ZeroFloat(4.0f)) {
case 0:
- func_80BBAE84(this, 7, 2);
+ func_80BBAE84(this, 7, ANIMMODE_ONCE);
break;
case 1:
- func_80BBAE84(this, 8, 2);
+ func_80BBAE84(this, 8, ANIMMODE_ONCE);
break;
case 2:
- func_80BBAE84(this, 11, 2);
+ func_80BBAE84(this, 11, ANIMMODE_ONCE);
break;
default:
- func_80BBAE84(this, 12, 2);
+ func_80BBAE84(this, 12, ANIMMODE_ONCE);
break;
}
return true;
@@ -176,9 +176,9 @@ s32 func_80BBAFFC(EnZos* this, PlayState* play) {
void func_80BBB0D4(EnZos* this, PlayState* play) {
if (SkelAnime_Update(&this->skelAnime)) {
if (Rand_ZeroFloat(1.0f) < 0.9f) {
- func_80BBAE84(this, 0, 2);
+ func_80BBAE84(this, 0, ANIMMODE_ONCE);
} else {
- func_80BBAE84(this, 1, 2);
+ func_80BBAE84(this, 1, ANIMMODE_ONCE);
}
SkelAnime_Update(&this->skelAnime);
}
@@ -190,31 +190,31 @@ void func_80BBB15C(EnZos* this, PlayState* play) {
if (gSaveContext.save.playerForm == PLAYER_FORM_ZORA) {
if (this->unk_2B6 & 8) {
textId = 0x1235;
- func_80BBAE84(this, 6, 0);
+ func_80BBAE84(this, 6, ANIMMODE_LOOP);
this->unk_2B6 |= 2;
} else if (this->unk_2B6 & 4) {
textId = 0x123E;
- func_80BBAE84(this, 6, 0);
+ func_80BBAE84(this, 6, ANIMMODE_LOOP);
this->unk_2B6 |= 2;
} else if (gSaveContext.save.weekEventReg[40] & 0x20) {
textId = 0x1236;
- func_80BBAE84(this, 6, 0);
+ func_80BBAE84(this, 6, ANIMMODE_LOOP);
this->unk_2B6 |= 0x80;
} else {
textId = 0x1231;
- func_80BBAE84(this, 6, 0);
+ func_80BBAE84(this, 6, ANIMMODE_LOOP);
this->unk_2B6 |= 0x80;
}
} else {
this->unk_2B6 &= ~2;
if (gSaveContext.save.weekEventReg[39] & 0x10) {
textId = 0x1243;
- func_80BBAE84(this, 6, 0);
+ func_80BBAE84(this, 6, ANIMMODE_LOOP);
this->unk_2B6 |= 0x80;
} else {
textId = 0x1244;
gSaveContext.save.weekEventReg[39] |= 0x10;
- func_80BBAE84(this, 4, 0);
+ func_80BBAE84(this, 4, ANIMMODE_LOOP);
this->unk_2B6 |= 0x10;
}
}
@@ -261,11 +261,11 @@ void func_80BBB414(EnZos* this, PlayState* play) {
switch (action) {
case 1:
- func_80BBAE84(this, 1, 0);
+ func_80BBAE84(this, 1, ANIMMODE_LOOP);
break;
case 2:
- func_80BBAE84(this, 10, 0);
+ func_80BBAE84(this, 10, ANIMMODE_LOOP);
break;
}
}
@@ -315,12 +315,12 @@ void func_80BBB574(EnZos* this, PlayState* play) {
case 0x124C:
play->msgCtx.unk11F10 = 0;
this->actionFunc = func_80BBB4CC;
- func_80BBAE84(this, 10, 0);
+ func_80BBAE84(this, 10, ANIMMODE_LOOP);
break;
case 0x124D:
this->unk_2B6 &= ~0x10;
- func_80BBAE84(this, 6, 0);
+ func_80BBAE84(this, 6, ANIMMODE_LOOP);
func_80151938(play, 0x124E);
break;
@@ -346,7 +346,7 @@ void func_80BBB718(EnZos* this, PlayState* play) {
if (sp24 == 25) {
player->actor.textId = 0x1232;
- func_80BBAE84(this, 5, 0);
+ func_80BBAE84(this, 5, ANIMMODE_LOOP);
this->unk_2B6 |= 8;
gSaveContext.save.weekEventReg[40] |= 0x20;
} else if (gSaveContext.save.weekEventReg[39] & 8) {
@@ -354,7 +354,7 @@ void func_80BBB718(EnZos* this, PlayState* play) {
} else {
player->actor.textId = 0x1237;
gSaveContext.save.weekEventReg[39] |= 8;
- func_80BBAE84(this, 4, 0);
+ func_80BBAE84(this, 4, ANIMMODE_LOOP);
this->unk_2B6 |= 4;
}
this->actionFunc = func_80BBB8AC;
@@ -364,7 +364,7 @@ void func_80BBB718(EnZos* this, PlayState* play) {
} else {
func_80151938(play, 0x1237);
gSaveContext.save.weekEventReg[39] |= 8;
- func_80BBAE84(this, 4, 0);
+ func_80BBAE84(this, 4, ANIMMODE_LOOP);
this->unk_2B6 |= 4;
}
this->actionFunc = func_80BBB8AC;
@@ -382,7 +382,7 @@ void func_80BBB8AC(EnZos* this, PlayState* play) {
Math_SmoothStepToS(&this->actor.shape.rot.y, this->actor.yawTowardsPlayer, 2, 0x1000, 0x200);
this->actor.world.rot.y = this->actor.shape.rot.y;
if ((this->unk_2B6 & 0x80) && (this->actor.yawTowardsPlayer == this->actor.shape.rot.y)) {
- func_80BBAE84(this, 3, 0);
+ func_80BBAE84(this, 3, ANIMMODE_LOOP);
}
}
@@ -402,7 +402,7 @@ void func_80BBB8AC(EnZos* this, PlayState* play) {
case 0x1244:
this->unk_2B6 &= ~0x10;
- func_80BBAE84(this, 6, 0);
+ func_80BBAE84(this, 6, ANIMMODE_LOOP);
func_80151938(play, play->msgCtx.currentTextId + 1);
break;
@@ -412,18 +412,18 @@ void func_80BBB8AC(EnZos* this, PlayState* play) {
case 0x1239:
case 0x1246:
- func_80BBAE84(this, 6, 0);
+ func_80BBAE84(this, 6, ANIMMODE_LOOP);
func_80151938(play, play->msgCtx.currentTextId + 1);
break;
case 0x1233:
- func_80BBAE84(this, 5, 0);
+ func_80BBAE84(this, 5, ANIMMODE_LOOP);
func_80151938(play, play->msgCtx.currentTextId + 1);
break;
case 0x1245:
case 0x1248:
- func_80BBAE84(this, 3, 0);
+ func_80BBAE84(this, 3, ANIMMODE_LOOP);
func_80151938(play, play->msgCtx.currentTextId + 1);
break;
@@ -434,7 +434,7 @@ void func_80BBB8AC(EnZos* this, PlayState* play) {
case 0x1243:
case 0x1249:
- func_80BBAE84(this, 2, 0);
+ func_80BBAE84(this, 2, ANIMMODE_LOOP);
func_801477B4(play);
this->actionFunc = func_80BBBDE0;
this->unk_2B6 |= 1;
@@ -443,7 +443,7 @@ void func_80BBB8AC(EnZos* this, PlayState* play) {
case 0x1234:
case 0x123D:
case 0x1242:
- func_80BBAE84(this, 2, 0);
+ func_80BBAE84(this, 2, ANIMMODE_LOOP);
Actor_ProcessTalkRequest(&this->actor, &play->state);
func_801477B4(play);
this->actionFunc = func_80BBBDE0;
@@ -451,7 +451,7 @@ void func_80BBB8AC(EnZos* this, PlayState* play) {
break;
case 0x1236:
- func_80BBAE84(this, 2, 0);
+ func_80BBAE84(this, 2, ANIMMODE_LOOP);
func_801477B4(play);
this->actionFunc = func_80BBBDE0;
this->unk_2B6 |= 1;
@@ -473,17 +473,17 @@ void func_80BBBB84(EnZos* this, PlayState* play) {
if (gSaveContext.save.playerForm == PLAYER_FORM_ZORA) {
Message_StartTextbox(play, 0x1248, &this->actor);
this->actionFunc = func_80BBB8AC;
- func_80BBAE84(this, 6, 0);
+ func_80BBAE84(this, 6, ANIMMODE_LOOP);
this->unk_2B6 |= 2;
} else if (gSaveContext.save.weekEventReg[41] & 0x10) {
Message_StartTextbox(play, 0x124A, &this->actor);
this->actionFunc = func_80BBB8AC;
- func_80BBAE84(this, 6, 0);
+ func_80BBAE84(this, 6, ANIMMODE_LOOP);
} else {
gSaveContext.save.weekEventReg[41] |= 0x10;
Message_StartTextbox(play, 0x124B, &this->actor);
this->actionFunc = func_80BBB574;
- func_80BBAE84(this, 9, 2);
+ func_80BBAE84(this, 9, ANIMMODE_ONCE);
this->unk_2B6 |= 0x10;
}
} else {
@@ -494,7 +494,7 @@ void func_80BBBB84(EnZos* this, PlayState* play) {
void func_80BBBCBC(EnZos* this, PlayState* play) {
if (Actor_ProcessTalkRequest(&this->actor, &play->state)) {
this->actor.flags &= ~ACTOR_FLAG_10000;
- func_80BBAE84(this, 5, 0);
+ func_80BBAE84(this, 5, ANIMMODE_LOOP);
Message_StartTextbox(play, 0x124D, &this->actor);
this->actionFunc = func_80BBB574;
} else {
@@ -519,7 +519,7 @@ void func_80BBBDE0(EnZos* this, PlayState* play) {
Math_SmoothStepToS(&this->actor.shape.rot.y, this->actor.home.rot.y, 2, 0x1000, 0x200);
this->actor.world.rot.y = thisx->shape.rot.y;
if (this->actor.home.rot.y == thisx->shape.rot.y) {
- func_80BBAE84(this, 0, 2);
+ func_80BBAE84(this, 0, ANIMMODE_ONCE);
this->unk_2B6 &= ~1;
}
}
@@ -567,10 +567,10 @@ void func_80BBBFBC(EnZos* this, PlayState* play) {
textId = 0x1259;
gSaveContext.save.weekEventReg[78] |= 0x80;
}
- func_80BBAE84(this, 5, 0);
+ func_80BBAE84(this, 5, ANIMMODE_LOOP);
} else {
textId = 0x1258;
- func_80BBAE84(this, 6, 0);
+ func_80BBAE84(this, 6, ANIMMODE_LOOP);
}
Message_StartTextbox(play, textId, &this->actor);
}
@@ -583,7 +583,7 @@ void func_80BBC070(EnZos* this, PlayState* play) {
switch (Message_GetState(&play->msgCtx)) {
case 5:
if (Message_ShouldAdvance(play)) {
- func_80BBAE84(this, 2, 0);
+ func_80BBAE84(this, 2, ANIMMODE_LOOP);
func_801477B4(play);
this->actionFunc = func_80BBC14C;
this->unk_2B6 |= 1;
@@ -591,7 +591,7 @@ void func_80BBC070(EnZos* this, PlayState* play) {
break;
case 2:
- func_80BBAE84(this, 2, 0);
+ func_80BBAE84(this, 2, ANIMMODE_LOOP);
this->actionFunc = func_80BBC14C;
this->unk_2B6 |= 1;
break;
@@ -605,7 +605,7 @@ void func_80BBC14C(EnZos* this, PlayState* play) {
Math_SmoothStepToS(&this->actor.shape.rot.y, this->actor.home.rot.y, 2, 0x1000, 0x200);
this->actor.world.rot.y = thisx->shape.rot.y;
if (this->actor.home.rot.y == this->actor.shape.rot.y) {
- func_80BBAE84(this, 0, 2);
+ func_80BBAE84(this, 0, ANIMMODE_ONCE);
this->unk_2B6 &= ~1;
}
}
@@ -628,7 +628,7 @@ void func_80BBC24C(EnZos* this, PlayState* play) {
func_80BBB0D4(this, play);
if (gSaveContext.save.weekEventReg[79] & 1) {
this->actionFunc = func_80BBC22C;
- func_80BBAE84(this, 7, 2);
+ func_80BBAE84(this, 7, ANIMMODE_ONCE);
}
}
diff --git a/src/overlays/actors/ovl_En_Zot/z_en_zot.c b/src/overlays/actors/ovl_En_Zot/z_en_zot.c
index b7fdcc8b52..7185457722 100644
--- a/src/overlays/actors/ovl_En_Zot/z_en_zot.c
+++ b/src/overlays/actors/ovl_En_Zot/z_en_zot.c
@@ -138,25 +138,25 @@ void EnZot_Init(Actor* thisx, PlayState* play2) {
} else {
this->path = NULL;
}
- func_80B96BEC(this, 5, 0);
+ func_80B96BEC(this, 5, ANIMMODE_LOOP);
break;
case 6:
this->actionFunc = func_80B98998;
- func_80B96BEC(this, 2, 0);
+ func_80B96BEC(this, 2, ANIMMODE_LOOP);
this->actor.colChkInfo.cylRadius = 0;
this->actor.shape.yOffset = -1400.0f;
break;
case 7:
this->actionFunc = func_80B98998;
- func_80B96BEC(this, 0, 0);
+ func_80B96BEC(this, 0, ANIMMODE_LOOP);
break;
case 8:
this->actor.flags |= ACTOR_FLAG_2000000;
this->actionFunc = func_80B98CA8;
- func_80B96BEC(this, 5, 0);
+ func_80B96BEC(this, 5, ANIMMODE_LOOP);
break;
case 9:
@@ -165,7 +165,7 @@ void EnZot_Init(Actor* thisx, PlayState* play2) {
case 10:
this->actionFunc = func_80B992C0;
- func_80B96BEC(this, 1, 0);
+ func_80B96BEC(this, 1, ANIMMODE_LOOP);
if (ENZOT_GET_FC00(&this->actor) != 0x3F) {
this->path = &play->setupPathList[ENZOT_GET_FC00(&this->actor)];
} else {
@@ -181,7 +181,7 @@ void EnZot_Init(Actor* thisx, PlayState* play2) {
case 16:
case 17:
this->actionFunc = func_80B98998;
- func_80B96BEC(this, 2, 0);
+ func_80B96BEC(this, 2, ANIMMODE_LOOP);
this->actor.colChkInfo.cylRadius = 0;
this->actor.shape.yOffset = -1400.0f;
if (!(gSaveContext.save.weekEventReg[55] & 0x80)) {
@@ -197,15 +197,15 @@ void EnZot_Init(Actor* thisx, PlayState* play2) {
break;
case 19:
- func_80B96BEC(this, 7, 0);
+ func_80B96BEC(this, 7, ANIMMODE_LOOP);
break;
case 20:
- func_80B96BEC(this, 8, 2);
+ func_80B96BEC(this, 8, ANIMMODE_ONCE);
break;
case 21:
- func_80B96BEC(this, 9, 2);
+ func_80B96BEC(this, 9, ANIMMODE_ONCE);
break;
case 22:
@@ -650,7 +650,7 @@ void func_80B9787C(EnZot* this, PlayState* play) {
void func_80B979DC(EnZot* this, PlayState* play) {
if (func_80B96E5C(this)) {
this->actionFunc = func_80B97B5C;
- func_80B96BEC(this, 0, 0);
+ func_80B96BEC(this, 0, ANIMMODE_LOOP);
this->actor.speedXZ = 0.0f;
} else {
this->actor.speedXZ = 1.5f;
@@ -679,7 +679,7 @@ void func_80B97A44(EnZot* this, PlayState* play) {
if (!(this->unk_2F2 & 2)) {
this->unk_2F2 |= 2;
this->actionFunc = func_80B979DC;
- func_80B96BEC(this, 1, 0);
+ func_80B96BEC(this, 1, ANIMMODE_LOOP);
} else {
this->actionFunc = func_80B97B5C;
}
@@ -737,7 +737,7 @@ void func_80B97D6C(EnZot* this, PlayState* play) {
if (func_80B96E5C(this)) {
this->actionFunc = func_80B97CC8;
this->actor.speedXZ = 0.0f;
- func_80B96BEC(this, 0, 0);
+ func_80B96BEC(this, 0, ANIMMODE_LOOP);
} else {
this->actor.speedXZ = 8.0f;
}
@@ -750,7 +750,7 @@ void func_80B97D6C(EnZot* this, PlayState* play) {
void func_80B97E0C(EnZot* this, PlayState* play) {
if (this->unk_2F2 & 0x40) {
this->actionFunc = func_80B97D6C;
- func_80B96BEC(this, 3, 0);
+ func_80B96BEC(this, 3, ANIMMODE_LOOP);
}
}
@@ -758,7 +758,7 @@ void func_80B97E4C(EnZot* this, PlayState* play) {
if (1) {}
if (this->unk_2F2 & 0x40) {
- func_80B96BEC(this, 0, 0);
+ func_80B96BEC(this, 0, ANIMMODE_LOOP);
}
if (!(this->unk_2F2 & 4)) {
@@ -770,7 +770,7 @@ void func_80B97E4C(EnZot* this, PlayState* play) {
switch (play->msgCtx.currentTextId) {
case 0x128C:
this->unk_2F2 &= ~4;
- func_80B96BEC(this, 6, 2);
+ func_80B96BEC(this, 6, ANIMMODE_ONCE);
func_80151938(play, play->msgCtx.currentTextId + 1);
break;
@@ -784,7 +784,7 @@ void func_80B97E4C(EnZot* this, PlayState* play) {
func_801477B4(play);
this->actionFunc = func_80B97D6C;
this->unk_2F2 |= 4;
- func_80B96BEC(this, 3, 0);
+ func_80B96BEC(this, 3, ANIMMODE_LOOP);
gSaveContext.save.weekEventReg[38] |= 8;
break;
@@ -806,7 +806,7 @@ void func_80B97FD0(EnZot* this, PlayState* play) {
if ((this->actor.xzDistToPlayer < 120.0f) && (gSaveContext.save.playerForm == PLAYER_FORM_ZORA)) {
this->unk_2F2 |= 4;
this->actionFunc = func_80B97E0C;
- func_80B96BEC(this, 6, 2);
+ func_80B96BEC(this, 6, ANIMMODE_ONCE);
}
} else if (Player_IsFacingActor(&this->actor, 0x3000, play) && (this->actor.xzDistToPlayer < 100.0f)) {
func_800B8614(&this->actor, play, 120.0f);
@@ -822,7 +822,7 @@ void func_80B980FC(EnZot* this, PlayState* play) {
} else {
this->actor.speedXZ = 8.0f;
if (this->unk_2F0 != 3) {
- func_80B96BEC(this, 3, 0);
+ func_80B96BEC(this, 3, ANIMMODE_LOOP);
}
}
}
@@ -1283,7 +1283,7 @@ void func_80B991E4(EnZot* this, PlayState* play) {
} else {
func_801477B4(play);
this->actionFunc = func_80B992C0;
- func_80B96BEC(this, 1, 0);
+ func_80B96BEC(this, 1, ANIMMODE_LOOP);
}
}
}
@@ -1293,7 +1293,7 @@ void func_80B992C0(EnZot* this, PlayState* play) {
this->actionFunc = func_80B991E4;
func_80B99160(this, play);
this->actor.speedXZ = 0.0f;
- func_80B96BEC(this, 0, 0);
+ func_80B96BEC(this, 0, ANIMMODE_LOOP);
} else {
if (Player_IsFacingActor(&this->actor, 0x3000, play) && (this->actor.xzDistToPlayer < 100.0f)) {
func_800B8614(&this->actor, play, 120.0f);
diff --git a/src/overlays/actors/ovl_En_Zov/z_en_zov.c b/src/overlays/actors/ovl_En_Zov/z_en_zov.c
index 407b5562ac..597279f279 100644
--- a/src/overlays/actors/ovl_En_Zov/z_en_zov.c
+++ b/src/overlays/actors/ovl_En_Zov/z_en_zov.c
@@ -106,7 +106,7 @@ void EnZov_Init(Actor* thisx, PlayState* play) {
switch (ENZOV_GET_F(&this->actor)) {
case ENZOV_F_1:
this->actionFunc = func_80BD1F1C;
- func_80BD1570(this, 9, 0);
+ func_80BD1570(this, 9, ANIMMODE_LOOP);
if (!(gSaveContext.save.weekEventReg[55] & 0x80)) {
Actor_MarkForDeath(&this->actor);
return;
@@ -150,7 +150,7 @@ void func_80BD1440(EnZov* this, s16 arg1) {
void func_80BD1470(EnZov* this, s16 index, u8 mode, f32 transitionRate) {
f32 frame;
- if (((index != this->unk_322) || mode) && (index >= 0) && (index < ARRAY_COUNT(D_80BD270C))) {
+ if (((index != this->unk_322) || (mode != ANIMMODE_LOOP)) && (index >= 0) && (index < ARRAY_COUNT(D_80BD270C))) {
switch (index) {
case 6:
frame = 30.0f;
@@ -190,25 +190,25 @@ void func_80BD160C(EnZov* this, PlayState* play) {
if (gSaveContext.save.playerForm != PLAYER_FORM_ZORA) {
textId = 0x1024;
if ((this->unk_322 == 0) || (this->unk_322 == 4)) {
- func_80BD1570(this, 4, 2);
+ func_80BD1570(this, 4, ANIMMODE_ONCE);
} else {
- func_80BD1570(this, 6, 2);
+ func_80BD1570(this, 6, ANIMMODE_ONCE);
}
} else if (this->unk_320 & 4) {
textId = 0x1023;
} else {
textId = 0x1022;
this->unk_320 |= 4;
- func_80BD1570(this, 3, 2);
+ func_80BD1570(this, 3, ANIMMODE_ONCE);
}
} else if (gSaveContext.save.playerForm == PLAYER_FORM_ZORA) {
- func_80BD1570(this, 2, 2);
+ func_80BD1570(this, 2, ANIMMODE_ONCE);
this->actionFunc = func_80BD19FC;
this->unk_324 = 10;
func_80BD1440(this, 0);
} else {
textId = 0x1020;
- func_80BD1570(this, 5, 2);
+ func_80BD1570(this, 5, ANIMMODE_ONCE);
}
this->unk_320 |= 1;
@@ -222,32 +222,32 @@ void func_80BD1764(EnZov* this) {
switch (this->unk_322) {
case 1:
case 6:
- func_80BD1570(this, 6, 2);
+ func_80BD1570(this, 6, ANIMMODE_ONCE);
break;
case 3:
case 7:
- func_80BD1570(this, 7, 2);
+ func_80BD1570(this, 7, ANIMMODE_ONCE);
break;
case 4:
- func_80BD1570(this, 0, 0);
+ func_80BD1570(this, 0, ANIMMODE_LOOP);
break;
case 8:
- func_80BD1570(this, 9, 0);
+ func_80BD1570(this, 9, ANIMMODE_LOOP);
break;
case 10:
- func_80BD1570(this, 11, 0);
+ func_80BD1570(this, 11, ANIMMODE_LOOP);
break;
case 12:
- func_80BD1570(this, 13, 0);
+ func_80BD1570(this, 13, ANIMMODE_LOOP);
break;
default:
- func_80BD1570(this, 0, 0);
+ func_80BD1570(this, 0, ANIMMODE_LOOP);
this->unk_320 &= ~1;
break;
}
@@ -269,7 +269,7 @@ void func_80BD187C(EnZov* this, PlayState* play) {
case 0x1023:
if ((this->unk_322 != 6) && (this->unk_322 != 1)) {
- func_80BD1570(this, 1, 2);
+ func_80BD1570(this, 1, ANIMMODE_ONCE);
}
func_801477B4(play);
this->actionFunc = func_80BD1C84;
@@ -277,7 +277,7 @@ void func_80BD187C(EnZov* this, PlayState* play) {
case 0x1024:
if (this->unk_322 != 6) {
- func_80BD1570(this, 0, 0);
+ func_80BD1570(this, 0, ANIMMODE_LOOP);
}
func_801477B4(play);
this->actionFunc = func_80BD1C84;
@@ -285,7 +285,7 @@ void func_80BD187C(EnZov* this, PlayState* play) {
default:
this->unk_320 &= ~1;
- func_80BD1570(this, 0, 0);
+ func_80BD1570(this, 0, ANIMMODE_LOOP);
func_801477B4(play);
this->actionFunc = func_80BD1C84;
break;
@@ -297,7 +297,7 @@ void func_80BD187C(EnZov* this, PlayState* play) {
func_801477B4(play);
this->actionFunc = func_80BD1C84;
this->unk_320 &= ~1;
- func_80BD1570(this, 0, 0);
+ func_80BD1570(this, 0, ANIMMODE_LOOP);
break;
}
}
@@ -335,20 +335,20 @@ s32 func_80BD1AE0(EnZov* this, PlayState* play) {
this->unk_326 = action;
switch (this->unk_326) {
case 1:
- func_80BD1570(this, 0, 0);
+ func_80BD1570(this, 0, ANIMMODE_LOOP);
break;
case 2:
- func_80BD1570(this, 8, 2);
+ func_80BD1570(this, 8, ANIMMODE_ONCE);
this->unk_320 |= 0x10;
break;
case 3:
- func_80BD1470(this, 10, 2, 0.0f);
+ func_80BD1470(this, 10, ANIMMODE_ONCE, 0.0f);
break;
case 4:
- func_80BD1570(this, 12, 2);
+ func_80BD1570(this, 12, ANIMMODE_ONCE);
break;
}
}
@@ -360,7 +360,7 @@ s32 func_80BD1AE0(EnZov* this, PlayState* play) {
void func_80BD1BF0(EnZov* this, PlayState* play) {
if (!func_80BD1AE0(this, play)) {
- func_80BD1570(this, 0, 0);
+ func_80BD1570(this, 0, ANIMMODE_LOOP);
this->actionFunc = func_80BD1C84;
}
}
diff --git a/src/overlays/actors/ovl_En_Zow/z_en_zow.c b/src/overlays/actors/ovl_En_Zow/z_en_zow.c
index fa90b6a7f4..65965ad71d 100644
--- a/src/overlays/actors/ovl_En_Zow/z_en_zow.c
+++ b/src/overlays/actors/ovl_En_Zow/z_en_zow.c
@@ -439,9 +439,9 @@ void func_80BDD490(EnZow* this, PlayState* play) {
this->actor.velocity.y = 0.0f;
if (this->actor.xzDistToPlayer > 440.0f) {
this->actionFunc = func_80BDD350;
- func_80BDD04C(this, 2, 2);
+ func_80BDD04C(this, 2, ANIMMODE_ONCE);
} else if (this->unk_2CA & 2) {
- func_80BDD04C(this, 0, 0);
+ func_80BDD04C(this, 0, ANIMMODE_LOOP);
}
if ((play->gameplayFrames & 7) == 0) {
@@ -513,7 +513,7 @@ void func_80BDD6BC(EnZow* this, PlayState* play) {
if (this->actor.depthInWater < 54.0f) {
Actor_PlaySfxAtPos(&this->actor, NA_SE_EV_OUT_OF_WATER);
func_80BDCDA8(this, this->unk_2D0);
- func_80BDD04C(this, 1, 2);
+ func_80BDD04C(this, 1, ANIMMODE_ONCE);
this->actor.flags |= ACTOR_FLAG_1;
this->actor.velocity.y = 0.0f;
this->actionFunc = func_80BDD634;
diff --git a/src/overlays/actors/ovl_Mir_Ray/z_mir_ray.c b/src/overlays/actors/ovl_Mir_Ray/z_mir_ray.c
index fa7bf1adbe..779ddf0551 100644
--- a/src/overlays/actors/ovl_Mir_Ray/z_mir_ray.c
+++ b/src/overlays/actors/ovl_Mir_Ray/z_mir_ray.c
@@ -98,7 +98,7 @@ static ColliderJntSphInit sJntSphInit = {
OC2_NONE,
COLSHAPE_JNTSPH,
},
- 1,
+ ARRAY_COUNT(sJntSphElementsInit),
sJntSphElementsInit,
};
diff --git a/src/overlays/actors/ovl_Mir_Ray2/z_mir_ray2.c b/src/overlays/actors/ovl_Mir_Ray2/z_mir_ray2.c
index 3361e3a1fb..6acbc26896 100644
--- a/src/overlays/actors/ovl_Mir_Ray2/z_mir_ray2.c
+++ b/src/overlays/actors/ovl_Mir_Ray2/z_mir_ray2.c
@@ -39,7 +39,7 @@ static ColliderJntSphElementInit D_80AF4350[1] = {
// static ColliderJntSphInit sJntSphInit = {
static ColliderJntSphInit D_80AF4374 = {
{ COLTYPE_NONE, AT_ON | AT_TYPE_OTHER, AC_NONE, OC1_NONE, OC2_NONE, COLSHAPE_JNTSPH, },
- 1, D_80AF4350, // sJntSphElementsInit,
+ ARRAY_COUNT(sJntSphElementsInit), D_80AF4350, // sJntSphElementsInit,
};
#endif
diff --git a/src/overlays/actors/ovl_Obj_Comb/z_obj_comb.c b/src/overlays/actors/ovl_Obj_Comb/z_obj_comb.c
index faec752ca4..2ce8f6ef36 100644
--- a/src/overlays/actors/ovl_Obj_Comb/z_obj_comb.c
+++ b/src/overlays/actors/ovl_Obj_Comb/z_obj_comb.c
@@ -57,7 +57,7 @@ static ColliderJntSphInit sJntSphInit = {
OC2_TYPE_2,
COLSHAPE_JNTSPH,
},
- 1,
+ ARRAY_COUNT(sJntSphElementsInit),
sJntSphElementsInit,
};
diff --git a/src/overlays/actors/ovl_Obj_Dora/z_obj_dora.c b/src/overlays/actors/ovl_Obj_Dora/z_obj_dora.c
index af2908ecfc..c8b9926c5d 100644
--- a/src/overlays/actors/ovl_Obj_Dora/z_obj_dora.c
+++ b/src/overlays/actors/ovl_Obj_Dora/z_obj_dora.c
@@ -125,7 +125,7 @@ static ColliderTrisInit sTrisInit = {
OC2_TYPE_1,
COLSHAPE_TRIS,
},
- 6,
+ ARRAY_COUNT(sTrisElementsInit),
sTrisElementsInit,
};
diff --git a/src/overlays/actors/ovl_Obj_Etcetera/z_obj_etcetera.c b/src/overlays/actors/ovl_Obj_Etcetera/z_obj_etcetera.c
index ff5a6365ba..f8a7d38d7e 100644
--- a/src/overlays/actors/ovl_Obj_Etcetera/z_obj_etcetera.c
+++ b/src/overlays/actors/ovl_Obj_Etcetera/z_obj_etcetera.c
@@ -126,7 +126,7 @@ void ObjEtcetera_DoNormalOscillation(ObjEtcetera* this, PlayState* play) {
void ObjEtcetera_StartRustleAnimation(ObjEtcetera* this) {
Animation_Change(&this->skelAnime, &gDekuFlowerRustleAnim, 1.0f, 0.0f,
- Animation_GetLastFrame(&gDekuFlowerRustleAnim), 2, 0.0f);
+ Animation_GetLastFrame(&gDekuFlowerRustleAnim), ANIMMODE_ONCE, 0.0f);
this->dyna.actor.draw = ObjEtcetera_DrawAnimated;
this->actionFunc = ObjEtcetera_PlayRustleAnimation;
}
@@ -138,7 +138,7 @@ void ObjEtcetera_Idle(ObjEtcetera* this, PlayState* play) {
if ((player->stateFlags3 & 0x200) && (this->dyna.actor.xzDistToPlayer < 20.0f)) {
// Player is launching out of the Deku Flower
Animation_Change(&this->skelAnime, &gDekuFlowerBounceAnim, 1.0f, 0.0f,
- Animation_GetLastFrame(&gDekuFlowerBounceAnim), 2, 0.0f);
+ Animation_GetLastFrame(&gDekuFlowerBounceAnim), ANIMMODE_ONCE, 0.0f);
this->dyna.actor.draw = ObjEtcetera_DrawAnimated;
this->actionFunc = ObjEtcetera_DoBounceOscillation;
Actor_SetScale(&this->dyna.actor, 0.01f);
@@ -300,7 +300,7 @@ void ObjEtcetera_Setup(ObjEtcetera* this, PlayState* play) {
case DEKU_FLOWER_TYPE_PINK_WITH_INITIAL_BOUNCE:
case DEKU_FLOWER_TYPE_GOLD_WITH_INITIAL_BOUNCE:
Animation_Change(&this->skelAnime, &gDekuFlowerBounceAnim, 1.0f, 0.0f,
- Animation_GetLastFrame(&gDekuFlowerBounceAnim), 2, 0.0f);
+ Animation_GetLastFrame(&gDekuFlowerBounceAnim), ANIMMODE_ONCE, 0.0f);
this->dyna.actor.draw = ObjEtcetera_DrawAnimated;
this->actionFunc = ObjEtcetera_DoBounceOscillation;
Actor_SetScale(&this->dyna.actor, 0.0f);
diff --git a/src/overlays/actors/ovl_Obj_Flowerpot/z_obj_flowerpot.c b/src/overlays/actors/ovl_Obj_Flowerpot/z_obj_flowerpot.c
index 53f7589c83..96e653bdf4 100644
--- a/src/overlays/actors/ovl_Obj_Flowerpot/z_obj_flowerpot.c
+++ b/src/overlays/actors/ovl_Obj_Flowerpot/z_obj_flowerpot.c
@@ -77,7 +77,7 @@ static ColliderJntSphInit sJntSphInit = {
OC2_TYPE_2,
COLSHAPE_JNTSPH,
},
- 2,
+ ARRAY_COUNT(sJntSphElementsInit),
sJntSphElementsInit,
};
diff --git a/src/overlays/actors/ovl_Obj_Jg_Gakki/z_obj_jg_gakki.c b/src/overlays/actors/ovl_Obj_Jg_Gakki/z_obj_jg_gakki.c
index 64a6b8b111..497d9a219a 100644
--- a/src/overlays/actors/ovl_Obj_Jg_Gakki/z_obj_jg_gakki.c
+++ b/src/overlays/actors/ovl_Obj_Jg_Gakki/z_obj_jg_gakki.c
@@ -38,9 +38,10 @@ void ObjJgGakki_Init(Actor* thisx, PlayState* play2) {
if (((play->sceneNum == SCENE_SPOT00) && (gSaveContext.sceneSetupIndex == 7)) &&
(play->csCtx.currentCsIndex == 0)) {
- Animation_Change(&this->skelAnime, &gGoronElderDrumTakeOutAnim, 1.0f, frameCount, frameCount, 2, 0.0f);
+ Animation_Change(&this->skelAnime, &gGoronElderDrumTakeOutAnim, 1.0f, frameCount, frameCount, ANIMMODE_ONCE,
+ 0.0f);
} else if ((play->sceneNum == SCENE_17SETUGEN) || (play->sceneNum == SCENE_10YUKIYAMANOMURA)) {
- Animation_Change(&this->skelAnime, &gGoronElderDrumTakeOutAnim, 1.0f, 0.0f, frameCount, 2, 0.0f);
+ Animation_Change(&this->skelAnime, &gGoronElderDrumTakeOutAnim, 1.0f, 0.0f, frameCount, ANIMMODE_ONCE, 0.0f);
} else {
Actor_MarkForDeath(&this->actor);
}
diff --git a/src/overlays/actors/ovl_Obj_Kendo_Kanban/z_obj_kendo_kanban.c b/src/overlays/actors/ovl_Obj_Kendo_Kanban/z_obj_kendo_kanban.c
index 24584c1d48..e14214502c 100644
--- a/src/overlays/actors/ovl_Obj_Kendo_Kanban/z_obj_kendo_kanban.c
+++ b/src/overlays/actors/ovl_Obj_Kendo_Kanban/z_obj_kendo_kanban.c
@@ -94,7 +94,7 @@ static ColliderTrisInit sTrisInit = {
OC2_TYPE_1,
COLSHAPE_TRIS,
},
- 2,
+ ARRAY_COUNT(sTrisElementsInit),
sTrisElementsInit,
};
diff --git a/src/overlays/actors/ovl_Obj_Lightswitch/z_obj_lightswitch.c b/src/overlays/actors/ovl_Obj_Lightswitch/z_obj_lightswitch.c
index 550857c520..b6fd674ef1 100644
--- a/src/overlays/actors/ovl_Obj_Lightswitch/z_obj_lightswitch.c
+++ b/src/overlays/actors/ovl_Obj_Lightswitch/z_obj_lightswitch.c
@@ -62,7 +62,7 @@ static ColliderJntSphInit sJntSphInit = {
OC2_TYPE_2,
COLSHAPE_JNTSPH,
},
- 1,
+ ARRAY_COUNT(sJntSphElementsInit),
sJntSphElementsInit,
};
diff --git a/src/overlays/actors/ovl_Obj_Mine/z_obj_mine.c b/src/overlays/actors/ovl_Obj_Mine/z_obj_mine.c
index deaf30f957..429333546c 100644
--- a/src/overlays/actors/ovl_Obj_Mine/z_obj_mine.c
+++ b/src/overlays/actors/ovl_Obj_Mine/z_obj_mine.c
@@ -39,7 +39,7 @@ static ColliderJntSphElementInit D_80A84570[1] = {
// static ColliderJntSphInit sJntSphInit = {
static ColliderJntSphInit D_80A84594 = {
{ COLTYPE_METAL, AT_NONE, AC_ON | AC_TYPE_PLAYER, OC1_ON | OC1_TYPE_PLAYER | OC1_TYPE_1, OC2_TYPE_1, COLSHAPE_JNTSPH, },
- 1, D_80A84570, // sJntSphElementsInit,
+ ARRAY_COUNT(sJntSphElementsInit), D_80A84570, // sJntSphElementsInit,
};
// static InitChainEntry sInitChain[] = {
diff --git a/src/overlays/actors/ovl_Obj_Snowball/z_obj_snowball.c b/src/overlays/actors/ovl_Obj_Snowball/z_obj_snowball.c
index c69dd7ff86..72f4526822 100644
--- a/src/overlays/actors/ovl_Obj_Snowball/z_obj_snowball.c
+++ b/src/overlays/actors/ovl_Obj_Snowball/z_obj_snowball.c
@@ -68,7 +68,7 @@ static ColliderJntSphInit sJntSphInit = {
OC2_TYPE_2,
COLSHAPE_JNTSPH,
},
- 1,
+ ARRAY_COUNT(sJntSphElementsInit),
sJntSphElementsInit,
};
diff --git a/src/overlays/actors/ovl_Obj_Snowball2/z_obj_snowball2.c b/src/overlays/actors/ovl_Obj_Snowball2/z_obj_snowball2.c
index 72c96d25e6..937a61d79f 100644
--- a/src/overlays/actors/ovl_Obj_Snowball2/z_obj_snowball2.c
+++ b/src/overlays/actors/ovl_Obj_Snowball2/z_obj_snowball2.c
@@ -61,7 +61,7 @@ static ColliderJntSphInit sJntSphInit = {
OC2_TYPE_2,
COLSHAPE_JNTSPH,
},
- 1,
+ ARRAY_COUNT(sJntSphElementsInit),
sJntSphElementsInit,
};
diff --git a/src/overlays/actors/ovl_Obj_Spidertent/z_obj_spidertent.c b/src/overlays/actors/ovl_Obj_Spidertent/z_obj_spidertent.c
index 7001451580..f7b1ea0154 100644
--- a/src/overlays/actors/ovl_Obj_Spidertent/z_obj_spidertent.c
+++ b/src/overlays/actors/ovl_Obj_Spidertent/z_obj_spidertent.c
@@ -125,7 +125,7 @@ static ColliderTrisInit sTrisInit1 = {
OC2_NONE,
COLSHAPE_TRIS,
},
- 6,
+ ARRAY_COUNT(sTrisElementsInit1),
sTrisElementsInit1,
};
@@ -219,7 +219,7 @@ static ColliderTrisInit sTrisInit2 = {
OC2_NONE,
COLSHAPE_TRIS,
},
- 6,
+ ARRAY_COUNT(sTrisElementsInit2),
sTrisElementsInit2,
};
diff --git a/src/overlays/actors/ovl_Obj_Spinyroll/z_obj_spinyroll.c b/src/overlays/actors/ovl_Obj_Spinyroll/z_obj_spinyroll.c
index 9446e88e3b..3a1cae3721 100644
--- a/src/overlays/actors/ovl_Obj_Spinyroll/z_obj_spinyroll.c
+++ b/src/overlays/actors/ovl_Obj_Spinyroll/z_obj_spinyroll.c
@@ -118,7 +118,7 @@ static ColliderTrisInit sTrisInit = {
OC2_NONE,
COLSHAPE_TRIS,
},
- 6,
+ ARRAY_COUNT(sTrisElementsInit),
sTrisElementsInit,
};
diff --git a/src/overlays/actors/ovl_Obj_Switch/z_obj_switch.c b/src/overlays/actors/ovl_Obj_Switch/z_obj_switch.c
index befeba0066..6fb70dcf92 100644
--- a/src/overlays/actors/ovl_Obj_Switch/z_obj_switch.c
+++ b/src/overlays/actors/ovl_Obj_Switch/z_obj_switch.c
@@ -411,7 +411,7 @@ void ObjSwitch_Init(Actor* thisx, PlayState* play) {
}
}
if (type == OBJSWITCH_TYPE_CRYSTAL) {
- sCrystalSwitchAnimatedMat = Lib_SegmentedToVirtual(&gCrystalSwitchAnimatedMat);
+ sCrystalSwitchAnimatedMat = Lib_SegmentedToVirtual(&gCrystalSwitchTexAnim);
}
if (OBJ_SWITCH_IS_FROZEN(&this->dyna.actor)) {
ObjSwitch_EyeSwitchFrozenInit(this);