d_a_b_girahimu - finished naming

This commit is contained in:
elijah-thomas774
2026-10-12 16:36:58 -04:00
parent 2e20536ae0
commit 6e4a4dffec
4 changed files with 87 additions and 89 deletions
@@ -71,8 +71,8 @@ finalizeState_G_SwordPiyori__14dAcGirahimu2_cFv = .text:0x00003CE0; // type:func
initializeState_Death__14dAcGirahimu2_cFv = .text:0x00003CF0; // type:function size:0xD0
executeState_Death__14dAcGirahimu2_cFv = .text:0x00003DC0; // type:function size:0x76C
finalizeState_Death__14dAcGirahimu2_cFv = .text:0x00004530; // type:function size:0x18
fn_228_4550__14dAcGirahimu2_cFii = .text:0x00004550; // type:function size:0x2A0
fn_228_47F0__14dAcGirahimu2_cFb = .text:0x000047F0; // type:function size:0x100
spawnKnifeVolley__14dAcGirahimu2_cFii = .text:0x00004550; // type:function size:0x2A0
spawnKnifeSurrond__14dAcGirahimu2_cFb = .text:0x000047F0; // type:function size:0x100
initializeState_DeathMiniGame__14dAcGirahimu2_cFv = .text:0x000048F0; // type:function size:0x98
executeState_DeathMiniGame__14dAcGirahimu2_cFv = .text:0x00004990; // type:function size:0x7C
finalizeState_DeathMiniGame__14dAcGirahimu2_cFv = .text:0x00004A10; // type:function size:0x18
@@ -86,8 +86,8 @@ fn_228_5110__14dAcGirahimu2_cFv = .text:0x00005110; // type:function size:0x2E4
fn_228_5400__14dAcGirahimu2_cFv = .text:0x00005400; // type:function size:0x340
fn_228_5740__14dAcGirahimu2_cFv = .text:0x00005740; // type:function size:0x24
fn_228_5770__14dAcGirahimu2_cFl = .text:0x00005770; // type:function size:0x720
fn_228_5E90__14dAcGirahimu2_cFv = .text:0x00005E90; // type:function size:0x28
fn_228_5EC0__14dAcGirahimu2_cFv = .text:0x00005EC0; // type:function size:0x28
isRightArmPose__14dAcGirahimu2_cFv = .text:0x00005E90; // type:function size:0x28
isLeftArmPose__14dAcGirahimu2_cFv = .text:0x00005EC0; // type:function size:0x28
vt_0x1F4__14dAcGirahimu2_cFv = .text:0x00005EF0; // type:function size:0x9C
vt_0x1F8__14dAcGirahimu2_cFv = .text:0x00005F90; // type:function size:0x324
vt_0x20C__14dAcGirahimu2_cFv = .text:0x000062C0; // type:function size:0x3C
+13 -13
View File
@@ -65,31 +65,31 @@ public:
virtual void vt_0x230() override;
virtual void vt_0x234();
void fn_228_4550(int idxStart, int idxEnd);
void fn_228_47F0(bool);
void spawnKnifeVolley(int idxStart, int idxEnd);
void spawnKnifeSurrond(bool);
void fn_228_4A30();
void fn_228_4C20();
bool fn_228_4CD0(s32 cutDir);
bool fn_228_5110();
void fn_228_5400();
void fn_228_5740();
void fn_228_5740(); // Related to setting link to be hit by sword?
bool fn_228_5770(s32 cutDir);
bool fn_228_5E90();
bool fn_228_5EC0();
bool isRightArmPose();
bool isLeftArmPose();
void fn_228_80A0();
void fn_228_80E0();
void fn_228_82C0();
private:
/* 0x220C */ u8 field_0x220C;
/* 0x2210 */ s32 field_0x2210;
/* 0x2214 */ s32 field_0x2214;
/* 0x2218 */ s32 field_0x2218;
/* 0x221C */ u8 field_0x221C;
/* 0x221D */ bool field_0x221D;
/* 0x221E */ bool field_0x221E;
/* 0x2220 */ s16 field_0x2220;
/* 0x2222 */ s16 field_0x2222;
/* 0x2210 */ s32 field_0x2210; // no clue
/* 0x2214 */ s32 mKnifeVolleyState;
/* 0x2218 */ s32 mKnifeVolleyIdx;
/* 0x221C */ u8 mConsecutiveSwordHitCount;
/* 0x221D */ bool mbPoseFreeRequest;
/* 0x221E */ bool field_0x221E; // Set, Never used
/* 0x2220 */ s16 field_0x2220; // Set, Never used
/* 0x2222 */ s16 field_0x2222; // Timer, Unused
/* 0x2224 */ dAcRef_c<dAcObjGirahimuKnife_c> mKnives[15];
};
-2
View File
@@ -31,8 +31,6 @@
#include "toBeSorted/d_emitter.h"
#include "toBeSorted/d_enemy_sword_mdl.h"
#include "toBeSorted/d_flow_mgr.h"
#include "toBeSorted/event.h"
#include "toBeSorted/event_manager.h"
class dAcObjGirahimuSwordLink_c;
+70 -70
View File
@@ -190,16 +190,16 @@ void dAcGirahimu2_c::executeState_CreateKnife() {
int rnd = cM::rndInt(100);
if (rnd >= 60) {
startSound(SE_OGhKf_GROUP_APPEAR);
field_0x2214 = 2;
fn_228_4550(0, 5);
fn_228_4550(5, 10);
fn_228_4550(10, 15);
mKnifeVolleyState = 2;
spawnKnifeVolley(0, 5);
spawnKnifeVolley(5, 10);
spawnKnifeVolley(10, 15);
} else if (rnd >= 30) {
field_0x2214 = 3;
fn_228_47F0(false);
mKnifeVolleyState = 3;
spawnKnifeSurrond(false);
} else {
field_0x2214 = 3;
fn_228_47F0(true);
mKnifeVolleyState = 3;
spawnKnifeSurrond(true);
}
}
if (mAnmChrs[ANMIDX_Body].isStop()) {
@@ -229,27 +229,27 @@ void dAcGirahimu2_c::initializeState_KnifePreAttack() {
mSubstate = 0;
field_0xD6C = 6;
if (field_0x2218 > 10) {
field_0x2218 = 0;
if (mKnifeVolleyIdx > 10) {
mKnifeVolleyIdx = 0;
}
for (int i = field_0x2218; i < field_0x2218 + 5; ++i) {
for (int i = mKnifeVolleyIdx; i < mKnifeVolleyIdx + 5; ++i) {
if (mKnives[i].isLinked() && mKnives[i].get()->isWaiting()) {
return;
}
}
field_0x2218 += 5;
if (field_0x2218 > 10) {
field_0x2218 = 0;
mKnifeVolleyIdx += 5;
if (mKnifeVolleyIdx > 10) {
mKnifeVolleyIdx = 0;
}
for (int i = field_0x2218; i < field_0x2218 + 5; ++i) {
for (int i = mKnifeVolleyIdx; i < mKnifeVolleyIdx + 5; ++i) {
if (mKnives[i].isLinked() && mKnives[i].get()->isWaiting()) {
return;
}
}
field_0x2218 += 5;
if (field_0x2218 > 10) {
field_0x2218 = 0;
mKnifeVolleyIdx += 5;
if (mKnifeVolleyIdx > 10) {
mKnifeVolleyIdx = 0;
}
mSubstate = 0;
}
@@ -280,17 +280,17 @@ void dAcGirahimu2_c::executeState_KnifePreAttack() {
switch (mSubstate) {
case 0: {
if (mAnmChrs[ANMIDX_Body].checkFrame(15.0f)) {
if (field_0x2214 == 3) {
if (mKnifeVolleyState == 3) {
for (int i = 0; i < 15; ++i) {
if (mKnives[i].isLinked()) {
mKnives[i].get()->field_0x792 = false;
}
}
} else {
if (field_0x2218 > 10) {
field_0x2218 = 0;
if (mKnifeVolleyIdx > 10) {
mKnifeVolleyIdx = 0;
}
for (int i = field_0x2218; i < field_0x2218 + 5; i++) {
for (int i = mKnifeVolleyIdx; i < mKnifeVolleyIdx + 5; i++) {
if (mKnives[i].isLinked() && mKnives[i].get()->isWaiting()) {
mKnives[i].get()->setWait();
}
@@ -310,7 +310,7 @@ void dAcGirahimu2_c::executeState_KnifePreAttack() {
setAnm("WalkBt", ANM_Walk, m3d::PLAY_MODE_2, 15.0f, 1.0f);
}
if (mAnmIDHip != ANM_Walk || mSubstateTimer <= 0) {
if (field_0x2214 == 3) {
if (mKnifeVolleyState == 3) {
for (int i = 0; i < 15; ++i) {
if (mKnives[i].isLinked() && !mKnives[i].get()->isWaiting()) {
vt_0x220();
@@ -342,7 +342,7 @@ void dAcGirahimu2_c::executeState_KnifeAttack() {
sLib::chaseAngle(mRotation.y.ref(), mAngleToPlayer, 0x500);
if (mAnmChrs[ANMIDX_Body].checkFrame(15.0f)) {
if (field_0x2214 == 3) {
if (mKnifeVolleyState == 3) {
startSound(SE_OGhKf_GROUP_SHOT);
for (int i = 0; i < 15; ++i) {
if (mKnives[i].isLinked()) {
@@ -350,23 +350,23 @@ void dAcGirahimu2_c::executeState_KnifeAttack() {
}
}
} else {
for (int i = field_0x2218; i < field_0x2218 + 5; ++i) {
for (int i = mKnifeVolleyIdx; i < mKnifeVolleyIdx + 5; ++i) {
if (mKnives[i].isLinked()) {
startSound(SE_OGhKf_SHOT);
mKnives[i].get()->fn_239_2360(true, true, 50.0f);
}
}
field_0x2218 += 5;
mKnifeVolleyIdx += 5;
}
field_0xD6C = 6;
}
if (mAnmChrs[ANMIDX_Body].isStop()) {
if (field_0x2214 == 3) {
if (mKnifeVolleyState == 3) {
vt_0x220();
return;
}
if (field_0x2218 >= 15) {
if (mKnifeVolleyIdx >= 15) {
vt_0x220();
return;
}
@@ -390,7 +390,7 @@ void dAcGirahimu2_c::initializeState_HitAction() {
setAnm("PoseFree", ANM_PoseFree, m3d::PLAY_MODE_4, 5.0f, 1.0f);
field_0xD6C = 9;
mCallback.field_0x088 = false;
field_0x221C = 0;
mConsecutiveSwordHitCount = 0;
}
void dAcGirahimu2_c::executeState_HitAction() {
mCallback.field_0x088 = false;
@@ -410,7 +410,7 @@ void dAcGirahimu2_c::finalizeState_HitAction() {
}
void dAcGirahimu2_c::initializeState_ComeOn() {
field_0x221C = 0;
mConsecutiveSwordHitCount = 0;
mSpeedTarget = 0.0f;
mSpeed = 0.0f;
clearAnms();
@@ -448,15 +448,15 @@ void dAcGirahimu2_c::initializeState_ComeOnGuard() {
f32 f0 = 1.0f;
setAnmHead("RarmU", ANM_PoseC, m3d::PLAY_MODE_4, f0, 1.0f);
setAnmBody("RarmU", ANM_PoseC, m3d::PLAY_MODE_4, f0, 1.0f);
if (!fn_228_5E90()) {
if (!isRightArmPose()) {
setAnmShoulderR("WaitBtD", ANM_WaitBtC, m3d::PLAY_MODE_4, f0, 1.0f);
} else if (!fn_228_5EC0()) {
} else if (!isLeftArmPose()) {
setAnmShoulderL("WaitBtD", ANM_WaitBtC, m3d::PLAY_MODE_4, f0, 1.0f);
}
setAnmHip("WalkBt", ANM_Walk, m3d::PLAY_MODE_4, 5.0f, 1.0f);
mMdlBody.play();
if (fn_228_5E90()) {
fn_228_5EC0();
if (isRightArmPose()) {
isLeftArmPose();
}
}
void dAcGirahimu2_c::executeState_ComeOnGuard() {
@@ -1145,7 +1145,7 @@ void dAcGirahimu2_c::finalizeState_Death() {
mSubstate = 0;
}
void dAcGirahimu2_c::fn_228_4550(int idxStart, int idxEnd) {
void dAcGirahimu2_c::spawnKnifeVolley(int idxStart, int idxEnd) {
startSound(SE_OGhKf_GROUP_APPEAR);
dAcObjGirahimuKnife_c::Pattern_e pattern;
mVec3_c knifeOffset;
@@ -1195,7 +1195,7 @@ void dAcGirahimu2_c::fn_228_4550(int idxStart, int idxEnd) {
}
}
void dAcGirahimu2_c::fn_228_47F0(bool bVertical) {
void dAcGirahimu2_c::spawnKnifeSurrond(bool bVertical) {
dAcObjGirahimuKnife_c::Pattern_e pattern = dAcObjGirahimuKnife_c::PATTERN_SURROUND_H;
dAcPy_c::GetLinkM()->startSound(SE_OGhKf_GROUP_APPEAR);
if (bVertical) {
@@ -1326,7 +1326,7 @@ bool dAcGirahimu2_c::fn_228_4CD0(s32 cutDir) {
}
void dAcGirahimu2_c::vt_0x220() {
field_0x221D = false;
mbPoseFreeRequest = false;
if (mbSpawnedSwords) {
for (int i = 0; i < 15; ++i) {
if (mKnives[i].isLinked() && mKnives[i].get()->isCircleWait()) {
@@ -1393,7 +1393,7 @@ void dAcGirahimu2_c::vt_0x220() {
}
bool dAcGirahimu2_c::fn_228_5110() {
field_0x221D = false;
mbPoseFreeRequest = false;
int rnd = cM::rndInt(100);
if (mDistanceToPlayer >= 400.0f) {
@@ -1431,7 +1431,7 @@ bool dAcGirahimu2_c::fn_228_5110() {
if (rnd >= 75 && mCurrentAttack != 2) {
mCurrentAttack = 2;
if (cM::rndInt(100) > 50) {
field_0x221D = true;
mbPoseFreeRequest = true;
changeState(StateID_ComeOn);
} else {
@@ -1457,7 +1457,7 @@ bool dAcGirahimu2_c::fn_228_5110() {
}
void dAcGirahimu2_c::fn_228_5400() {
if (field_0x221C >= 2) {
if (mConsecutiveSwordHitCount >= 2) {
mCcBody.SetR(15.0f);
} else {
mCcBody.SetR(45.0f);
@@ -1471,7 +1471,7 @@ void dAcGirahimu2_c::fn_228_5400() {
if (pCc != nullptr && pCc->GetTgAtHitType() == AT_TYPE_SWORD) {
if (pCc->GetTgAtCutDir() == CUT_DIR_STAB) {
changeState(StateID_TwoSwordAttack);
} else if (field_0x221C >= 2) {
} else if (mConsecutiveSwordHitCount >= 2) {
if (pCc == &mCcSwordR || pCc == &mCcSwordL) {
getSoundSource()->startSoundAtPosition(SE_Girahim_SWORD_HIT_SWORD, pCc->GetTgHitPos());
changeState(StateID_Counter);
@@ -1479,7 +1479,7 @@ void dAcGirahimu2_c::fn_228_5400() {
adjustSpineHitRotation(pCc);
changeState(StateID_G_SwordDamage);
}
} else if (field_0x221C == 1) {
} else if (mConsecutiveSwordHitCount == 1) {
if (pCc == &mCcSwordR || pCc == &mCcSwordL) {
getSoundSource()->startSoundAtPosition(SE_Girahim_SWORD_HIT_SWORD, pCc->GetTgHitPos());
changeState(StateID_Counter);
@@ -1487,7 +1487,7 @@ void dAcGirahimu2_c::fn_228_5400() {
getSoundSource()->startSoundAtPosition(SE_Girahim_SWORD_HIT_SWORD, pCc->GetTgHitPos());
fn_228_5770(pCc->GetTgAtCutDir());
changeState(StateID_ComeOnGuard);
field_0x221C++;
mConsecutiveSwordHitCount++;
} else {
adjustSpineHitRotation(pCc);
changeState(StateID_G_SwordDamage);
@@ -1496,7 +1496,7 @@ void dAcGirahimu2_c::fn_228_5400() {
getSoundSource()->startSoundAtPosition(SE_Girahim_SWORD_HIT_SWORD, pCc->GetTgHitPos());
fn_228_5770(pCc->GetTgAtCutDir());
changeState(StateID_ComeOnGuard);
field_0x221C++;
mConsecutiveSwordHitCount++;
} else {
adjustSpineHitRotation(pCc);
changeState(StateID_G_SwordDamage);
@@ -1506,7 +1506,7 @@ void dAcGirahimu2_c::fn_228_5400() {
void dAcGirahimu2_c::fn_228_5740() {
s32 cutDir = mPlayerAttackDir;
if (field_0x221C < 2 && cutDir != CUT_DIR_STAB) {
if (mConsecutiveSwordHitCount < 2 && cutDir != CUT_DIR_STAB) {
mCcBody.SetTgShieldType(~AT_TYPE_DAMAGE);
}
}
@@ -1519,7 +1519,7 @@ bool dAcGirahimu2_c::fn_228_5770(s32 cutDir) {
if (mAnmIDShoulderR == ANM_PoseC || mAnmIDShoulderL == ANM_PoseC) {
return false;
}
if (!fn_228_5E90()) {
if (!isRightArmPose()) {
bRightArm = true;
setAnmShoulderR("RarmU", ANM_PoseC, m3d::PLAY_MODE_4, rate, rate);
mAnmChrs[ANMIDX_ShoulderR].play();
@@ -1532,7 +1532,7 @@ bool dAcGirahimu2_c::fn_228_5770(s32 cutDir) {
if (mAnmIDShoulderR == ANM_PoseC2 || mAnmIDShoulderL == ANM_PoseC2) {
return false;
}
if (!fn_228_5E90()) {
if (!isRightArmPose()) {
bRightArm = true;
setAnmShoulderR("RarmD", ANM_PoseC2, m3d::PLAY_MODE_4, rate, rate);
mAnmChrs[ANMIDX_ShoulderR].play();
@@ -1548,7 +1548,7 @@ bool dAcGirahimu2_c::fn_228_5770(s32 cutDir) {
if (mAnmIDShoulderR == ANM_PoseR || mAnmIDShoulderL == ANM_PoseR) {
return false;
}
if (!fn_228_5E90()) {
if (!isRightArmPose()) {
bRightArm = true;
setAnmShoulderR("RarmR", ANM_PoseR, m3d::PLAY_MODE_4, rate, rate);
mAnmChrs[ANMIDX_ShoulderR].play();
@@ -1564,7 +1564,7 @@ bool dAcGirahimu2_c::fn_228_5770(s32 cutDir) {
if (mAnmIDShoulderR == ANM_PoseL || mAnmIDShoulderL == ANM_PoseL) {
return false;
}
if (!fn_228_5E90()) {
if (!isRightArmPose()) {
setAnmShoulderL("LarmL", ANM_PoseL, m3d::PLAY_MODE_4, rate, rate);
mAnmChrs[ANMIDX_ShoulderL].play();
} else {
@@ -1576,7 +1576,7 @@ bool dAcGirahimu2_c::fn_228_5770(s32 cutDir) {
if (mAnmIDShoulderR == ANM_PoseR || mAnmIDShoulderL == ANM_PoseR) {
return false;
}
if (!fn_228_5E90()) {
if (!isRightArmPose()) {
bRightArm = true;
setAnmShoulderR("RarmR", ANM_PoseR, m3d::PLAY_MODE_4, rate, rate);
mAnmChrs[ANMIDX_ShoulderR].play();
@@ -1589,7 +1589,7 @@ bool dAcGirahimu2_c::fn_228_5770(s32 cutDir) {
if (mAnmIDShoulderR == ANM_PoseL || mAnmIDShoulderL == ANM_PoseL) {
return false;
}
if (!fn_228_5E90()) {
if (!isRightArmPose()) {
setAnmShoulderL("LarmL", ANM_PoseL, m3d::PLAY_MODE_4, rate, rate);
mAnmChrs[ANMIDX_ShoulderL].play();
} else {
@@ -1604,7 +1604,7 @@ bool dAcGirahimu2_c::fn_228_5770(s32 cutDir) {
if (mAnmIDShoulderR == ANM_PoseR || mAnmIDShoulderL == ANM_PoseR) {
return false;
}
if (!fn_228_5E90()) {
if (!isRightArmPose()) {
bRightArm = true;
setAnmShoulderR("RarmR", ANM_PoseR, m3d::PLAY_MODE_4, rate, rate);
mAnmChrs[ANMIDX_ShoulderR].play();
@@ -1620,7 +1620,7 @@ bool dAcGirahimu2_c::fn_228_5770(s32 cutDir) {
if (mAnmIDShoulderR == ANM_PoseL || mAnmIDShoulderL == ANM_PoseL) {
return false;
}
if (!fn_228_5E90()) {
if (!isRightArmPose()) {
setAnmShoulderL("LarmL", ANM_PoseL, m3d::PLAY_MODE_4, rate, rate);
mAnmChrs[ANMIDX_ShoulderL].play();
} else {
@@ -1682,7 +1682,7 @@ bool dAcGirahimu2_c::fn_228_5770(s32 cutDir) {
return true;
}
bool dAcGirahimu2_c::fn_228_5E90() {
bool dAcGirahimu2_c::isRightArmPose() {
if (mAnmIDShoulderR == ANM_PoseL || mAnmIDShoulderR == ANM_PoseR || mAnmIDShoulderR == ANM_PoseC ||
mAnmIDShoulderR == ANM_PoseC2) {
return true;
@@ -1690,7 +1690,7 @@ bool dAcGirahimu2_c::fn_228_5E90() {
return false;
}
bool dAcGirahimu2_c::fn_228_5EC0() {
bool dAcGirahimu2_c::isLeftArmPose() {
if (mAnmIDShoulderL == ANM_PoseL || mAnmIDShoulderL == ANM_PoseR || mAnmIDShoulderL == ANM_PoseC ||
mAnmIDShoulderL == ANM_PoseC2) {
return true;
@@ -1716,9 +1716,9 @@ void dAcGirahimu2_c::vt_0x1F4() {
}
void dAcGirahimu2_c::vt_0x1F8() {
if (field_0x221D) {
if (mbPoseFreeRequest) {
setAnm("PoseFree", ANM_PoseFree, nullptr, m3d::PLAY_MODE_4, 5.0f, 1.0f);
field_0x221D = false;
mbPoseFreeRequest = false;
return;
}
@@ -2421,13 +2421,13 @@ void dAcGirahimu2_c::fn_228_82C0() {
case 0: {
mAng a0;
a1 = 0x8000;
if (rnd >= 60 && field_0x2214 == 2) {
if (rnd >= 60 && mKnifeVolleyState == 2) {
a0 = 0;
spacing.set(100.0f, 65.0f, 0.0f);
pattern = dAcObjGirahimuKnife_c::PATTERN_U_D;
field_0x2210 = 8;
field_0x2214 = 2;
} else if (rnd >= 30 && field_0x2214 == 1) {
mKnifeVolleyState = 2;
} else if (rnd >= 30 && mKnifeVolleyState == 1) {
if (cM::rndInt(100) >= 50) {
a0 = 0x2000;
spacing.set(100.0f, 65.0f, 0.0f);
@@ -2439,19 +2439,19 @@ void dAcGirahimu2_c::fn_228_82C0() {
pattern = dAcObjGirahimuKnife_c::PATTERN_RU_LD;
field_0x2210 = 2;
}
field_0x2214 = 1;
} else if (field_0x2214 != 0) {
mKnifeVolleyState = 1;
} else if (mKnifeVolleyState != 0) {
a0 = 0x4000;
spacing.set(100.0f, 65.0f, 0.0f);
pattern = dAcObjGirahimuKnife_c::PATTERN_R_L;
field_0x2210 = 1;
field_0x2214 = 0;
mKnifeVolleyState = 0;
} else {
a0 = 0;
spacing.set(100.0f, 65.0f, 0.0f);
pattern = dAcObjGirahimuKnife_c::PATTERN_U_D;
field_0x2210 = 8;
field_0x2214 = 2;
mKnifeVolleyState = 2;
}
startSound(SE_Girahim_MAGIC_KNIFE_APPEAR);
@@ -2485,21 +2485,21 @@ void dAcGirahimu2_c::fn_228_82C0() {
case 1: {
mAng a0, a1;
a1 = 0x4000;
if (rnd >= 50 && field_0x2214 != 2) {
if (rnd >= 50 && mKnifeVolleyState != 2) {
field_0x2210 = 9;
a0 = 0;
spacing.set(0.0f, 65.0f, 100.0f);
field_0x2214 = 2;
} else if (field_0x2214 != 1) {
mKnifeVolleyState = 2;
} else if (mKnifeVolleyState != 1) {
field_0x2210 = 6;
a0 = 0x2000;
spacing.set(0.0f, 65.0f, 100.0f);
field_0x2214 = 1;
mKnifeVolleyState = 1;
} else {
field_0x2210 = 9;
a0 = 0;
spacing.set(0.0f, 65.0f, 100.0f);
field_0x2214 = 2;
mKnifeVolleyState = 2;
}
startSound(SE_Girahim_MAGIC_KNIFE_APPEAR);
@@ -2524,7 +2524,7 @@ void dAcGirahimu2_c::fn_228_82C0() {
if (pKnife != nullptr) {
spawnPos.y += v0.y;
mKnives[i].get()->setTarget(spawnPos);
if (field_0x2214 != 1) {
if (mKnifeVolleyState != 1) {
if (i % 2 == 0) {
pKnife->setPattern(dAcObjGirahimuKnife_c::PATTERN_U_D);
} else {