Link Kabuto.cpp
Some checks failed
Build / Build (GPVE01) (push) Failing after 1s
Build / Build (GPVE01_D17) (push) Failing after 1s
Build / Build (legacy) (GPVE01) (push) Failing after 1s
Build / Build (legacy) (GPVE01_D17) (push) Failing after 1s

This commit is contained in:
HeartPiece 2024-09-16 13:17:57 +10:00
parent 9ebead5740
commit 10b248351b
6 changed files with 48 additions and 1561 deletions

File diff suppressed because it is too large Load Diff

View File

@ -1539,7 +1539,7 @@ config.libs = [
Object(NonMatching, "plugProjectNishimuraU/KabutoState.cpp"),
Object(Matching, "plugProjectNishimuraU/KabutoAnimator.cpp"),
Object(Matching, "plugProjectNishimuraU/KabutoMgr.cpp"),
Object(NonMatching, "plugProjectNishimuraU/Kabuto.cpp"),
Object(Matching, "plugProjectNishimuraU/Kabuto.cpp"),
Object(NonMatching, "plugProjectNishimuraU/KumaKochappyState.cpp"),
Object(Matching, "plugProjectNishimuraU/KumaKochappyAnimator.cpp"),
Object(Matching, "plugProjectNishimuraU/KumaKochappyMgr.cpp"),

View File

@ -92,7 +92,7 @@
| File | Size (bytes) | File | Size (bytes) |
| ---- | ---- | ---- | ---- |
| <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectKonoU/khFinalResult.cpp">khFinalResult.cpp</a> | 60103 | <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectKonoU/khDayEndResult.cpp">khDayEndResult.cpp</a> | 81751 |
| <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectKonoU/khWorldMap.cpp">khWorldMap.cpp</a> | 149430 | | |
| <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectKonoU/khWorldMap.cpp">khWorldMap.cpp</a> | 149432 | | |
### <section id="plugProjectMorimuraU">plugProjectMorimuraU</section>
| File | Size (bytes) | File | Size (bytes) |
@ -112,30 +112,29 @@
| <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/TyreShadow.cpp">TyreShadow.cpp</a> | 7271 | <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/nslibmath.cpp">nslibmath.cpp</a> | 7593 |
| <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/UmimushiShadow.cpp">UmimushiShadow.cpp</a> | 7675 | <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/SnakeJointMgr.cpp">SnakeJointMgr.cpp</a> | 7850 |
| <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/KumaChappy.cpp">KumaChappy.cpp</a> | 10290 | <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/SnakeWholeShadow.cpp">SnakeWholeShadow.cpp</a> | 11928 |
| <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/SnakeCrowShadow.cpp">SnakeCrowShadow.cpp</a> | 12091 | <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/Kabuto.cpp">Kabuto.cpp</a> | 12136 |
| <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/BabyState.cpp">BabyState.cpp</a> | 12837 | <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/Kogane.cpp">Kogane.cpp</a> | 14498 |
| <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/RandMapMgr.cpp">RandMapMgr.cpp</a> | 15237 | <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/Rock.cpp">Rock.cpp</a> | 17638 |
| <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/Ujia.cpp">Ujia.cpp</a> | 18104 | <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/JointShadowBase.cpp">JointShadowBase.cpp</a> | 18414 |
| <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/Ujib.cpp">Ujib.cpp</a> | 18626 | <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/ElecBug.cpp">ElecBug.cpp</a> | 18636 |
| <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/ImomushiState.cpp">ImomushiState.cpp</a> | 19604 | <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/Imomushi.cpp">Imomushi.cpp</a> | 20110 |
| <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/UjiaState.cpp">UjiaState.cpp</a> | 20343 | <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/Armor.cpp">Armor.cpp</a> | 20970 |
| <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/ElecHiba.cpp">ElecHiba.cpp</a> | 21756 | <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/QueenState.cpp">QueenState.cpp</a> | 22553 |
| <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/MiniHoudai.cpp">MiniHoudai.cpp</a> | 22737 | <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/UjibState.cpp">UjibState.cpp</a> | 25546 |
| <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/Tobi.cpp">Tobi.cpp</a> | 25548 | <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/BigTreasureShadow.cpp">BigTreasureShadow.cpp</a> | 25799 |
| <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/ArmorState.cpp">ArmorState.cpp</a> | 26549 | <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/TobiState.cpp">TobiState.cpp</a> | 27052 |
| <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/SaraiState.cpp">SaraiState.cpp</a> | 27370 | <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/MarState.cpp">MarState.cpp</a> | 28356 |
| <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/FrogState.cpp">FrogState.cpp</a> | 30811 | <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/SnakeCrowState.cpp">SnakeCrowState.cpp</a> | 32065 |
| <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/HanachirashiState.cpp">HanachirashiState.cpp</a> | 32837 | <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/KabutoState.cpp">KabutoState.cpp</a> | 32923 |
| <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/TankState.cpp">TankState.cpp</a> | 33069 | <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/playCamera.cpp">playCamera.cpp</a> | 33865 |
| <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/BombSaraiState.cpp">BombSaraiState.cpp</a> | 36432 | <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/DangoMushi.cpp">DangoMushi.cpp</a> | 36921 |
| <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/RandMapScore.cpp">RandMapScore.cpp</a> | 37057 | <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/Hanachirashi.cpp">Hanachirashi.cpp</a> | 39550 |
| <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/SnakeCrow.cpp">SnakeCrow.cpp</a> | 39754 | <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/Mar.cpp">Mar.cpp</a> | 41685 |
| <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/DangoMushiState.cpp">DangoMushiState.cpp</a> | 42130 | <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/HoudaiShotGun.cpp">HoudaiShotGun.cpp</a> | 44137 |
| <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/OniKurage.cpp">OniKurage.cpp</a> | 45364 | <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/SnakeWhole.cpp">SnakeWhole.cpp</a> | 49311 |
| <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/MiniHoudaiShotGun.cpp">MiniHoudaiShotGun.cpp</a> | 49861 | <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/KumaKochappyState.cpp">KumaKochappyState.cpp</a> | 50172 |
| <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/MiniHoudaiState.cpp">MiniHoudaiState.cpp</a> | 52248 | <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/RandMapUnit.cpp">RandMapUnit.cpp</a> | 62255 |
| <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/RandEnemyUnit.cpp">RandEnemyUnit.cpp</a> | 75806 | <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/BigTreasureAttack.cpp">BigTreasureAttack.cpp</a> | 77444 |
| <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/KumaChappyState.cpp">KumaChappyState.cpp</a> | 89900 | | |
| <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/SnakeCrowShadow.cpp">SnakeCrowShadow.cpp</a> | 12091 | <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/BabyState.cpp">BabyState.cpp</a> | 12837 |
| <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/Kogane.cpp">Kogane.cpp</a> | 14498 | <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/RandMapMgr.cpp">RandMapMgr.cpp</a> | 15237 |
| <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/Rock.cpp">Rock.cpp</a> | 17638 | <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/Ujia.cpp">Ujia.cpp</a> | 18104 |
| <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/JointShadowBase.cpp">JointShadowBase.cpp</a> | 18414 | <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/Ujib.cpp">Ujib.cpp</a> | 18626 |
| <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/ElecBug.cpp">ElecBug.cpp</a> | 18636 | <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/ImomushiState.cpp">ImomushiState.cpp</a> | 19604 |
| <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/Imomushi.cpp">Imomushi.cpp</a> | 20110 | <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/UjiaState.cpp">UjiaState.cpp</a> | 20343 |
| <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/Armor.cpp">Armor.cpp</a> | 20970 | <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/ElecHiba.cpp">ElecHiba.cpp</a> | 21756 |
| <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/QueenState.cpp">QueenState.cpp</a> | 22553 | <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/MiniHoudai.cpp">MiniHoudai.cpp</a> | 22737 |
| <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/UjibState.cpp">UjibState.cpp</a> | 25546 | <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/Tobi.cpp">Tobi.cpp</a> | 25548 |
| <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/BigTreasureShadow.cpp">BigTreasureShadow.cpp</a> | 25799 | <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/ArmorState.cpp">ArmorState.cpp</a> | 26549 |
| <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/TobiState.cpp">TobiState.cpp</a> | 27052 | <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/SaraiState.cpp">SaraiState.cpp</a> | 27370 |
| <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/MarState.cpp">MarState.cpp</a> | 28356 | <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/FrogState.cpp">FrogState.cpp</a> | 30811 |
| <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/SnakeCrowState.cpp">SnakeCrowState.cpp</a> | 32065 | <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/HanachirashiState.cpp">HanachirashiState.cpp</a> | 32837 |
| <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/KabutoState.cpp">KabutoState.cpp</a> | 32923 | <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/TankState.cpp">TankState.cpp</a> | 33069 |
| <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/playCamera.cpp">playCamera.cpp</a> | 33865 | <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/BombSaraiState.cpp">BombSaraiState.cpp</a> | 36432 |
| <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/DangoMushi.cpp">DangoMushi.cpp</a> | 36921 | <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/RandMapScore.cpp">RandMapScore.cpp</a> | 37057 |
| <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/Hanachirashi.cpp">Hanachirashi.cpp</a> | 39550 | <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/SnakeCrow.cpp">SnakeCrow.cpp</a> | 39754 |
| <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/Mar.cpp">Mar.cpp</a> | 41685 | <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/DangoMushiState.cpp">DangoMushiState.cpp</a> | 42130 |
| <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/HoudaiShotGun.cpp">HoudaiShotGun.cpp</a> | 44137 | <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/OniKurage.cpp">OniKurage.cpp</a> | 45364 |
| <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/SnakeWhole.cpp">SnakeWhole.cpp</a> | 49311 | <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/MiniHoudaiShotGun.cpp">MiniHoudaiShotGun.cpp</a> | 49861 |
| <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/KumaKochappyState.cpp">KumaKochappyState.cpp</a> | 50172 | <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/MiniHoudaiState.cpp">MiniHoudaiState.cpp</a> | 52248 |
| <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/RandMapUnit.cpp">RandMapUnit.cpp</a> | 62255 | <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/RandEnemyUnit.cpp">RandEnemyUnit.cpp</a> | 75806 |
| <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/BigTreasureAttack.cpp">BigTreasureAttack.cpp</a> | 77444 | <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectNishimuraU/KumaChappyState.cpp">KumaChappyState.cpp</a> | 89900 |
### <section id="plugProjectOgawaU">plugProjectOgawaU</section>
| File | Size (bytes) | File | Size (bytes) |

View File

@ -49,9 +49,7 @@ struct Obj : public EnemyBase {
//////////////// VTABLE
virtual void onInit(CreatureInitArg* settings); // _30
virtual void doDirectDraw(Graphics& gfx); // _50
virtual bool isUnderground() { return mIsUnderground; } // _D0 (weak)
virtual void getShadowParam(ShadowParam& settings); // _134
virtual ~Obj() { } // _1BC (weak)
virtual void setInitialSetting(EnemyInitialParamBase* params); // _1C4
virtual void doUpdate(); // _1CC
virtual void doDebugDraw(Graphics& gfx); // _1EC
@ -62,21 +60,23 @@ struct Obj : public EnemyBase {
{
return EnemyTypeID::EnemyID_Kabuto;
}
virtual void doStartStoneState(); // _2A4
virtual void doFinishStoneState(); // _2A8
virtual void startCarcassMotion(); // _2C4
virtual f32 getDownSmokeScale() { return 0.9f; } // _2EC (weak)
virtual void doStartMovie(); // _2F0
virtual void doEndMovie(); // _2F4
virtual void setFSM(FSM* fsm); // _2F8
virtual void createEffect() { } // _2FC (weak)
virtual void setupEffect() { } // _300 (weak)
virtual void startRotateEffect() { } // _304 (weak)
virtual void finishRotateEffect() { } // _308 (weak)
virtual void startWaitEffect() { } // _30C (weak)
virtual void finishWaitEffect() { } // _310 (weak)
virtual void effectDrawOn() { } // _314 (weak)
virtual void effectDrawOff() { } // _318 (weak)
virtual void doStartStoneState(); // _2A4
virtual void doFinishStoneState(); // _2A8
virtual void startCarcassMotion(); // _2C4
virtual void doStartMovie(); // _2F0
virtual void doEndMovie(); // _2F4
virtual void setFSM(FSM* fsm); // _2F8
virtual void createEffect() { } // _2FC (weak)
virtual void setupEffect() { } // _300 (weak)
virtual void startRotateEffect() { } // _304 (weak)
virtual void finishRotateEffect() { } // _308 (weak)
virtual void startWaitEffect() { } // _30C (weak)
virtual void finishWaitEffect() { } // _310 (weak)
virtual void effectDrawOn() { } // _314 (weak)
virtual void effectDrawOff() { } // _318 (weak)
virtual ~Obj() { } // _1BC (weak)
virtual bool isUnderground() { return mIsUnderground; } // _D0 (weak)
virtual f32 getDownSmokeScale() { return 0.9f; } // _2EC (weak)
//////////////// VTABLE END
void setRandTarget();

View File

@ -206,19 +206,17 @@ Creature* Obj::getSearchedTarget()
*/
bool Obj::isAttackableTarget()
{
Vector3f angles(-sinf(mFaceDir), 0.0f, cosf(mFaceDir));
Vector3f dir(sinf(mFaceDir), 0.0f, cosf(mFaceDir));
Vector3f orthoDir(-dir.z, 0.0f, dir.x);
f32 scale = 0.5f * C_GENERALPARMS.mSightRadius();
Vector3f pos(angles.x * scale + mPosition.x, angles.y * scale + mPosition.y, angles.z * scale + mPosition.z);
Vector3f pos(dir.x * scale + mPosition.x, dir.y * scale + mPosition.y, dir.z * scale + mPosition.z);
Sys::Sphere sphere(pos, 0.75f * C_GENERALPARMS.mSightRadius());
CellIteratorArg iterArg(sphere);
iterArg.mOptimise = true;
CellIterator iter(iterArg);
// this is probably wrong but an extra vector3 needs to exist
Vector3f inv(angles.x, 0.0f, -angles.z);
CI_LOOP(iter)
{
Creature* creature = static_cast<Creature*>(*iter);
@ -231,8 +229,8 @@ bool Obj::isAttackableTarget()
Vector3f diff = creature->getPosition();
diff -= mPosition;
if (absVal(diff.y) < C_GENERALPARMS.mFov() && absVal(inv.dot(diff)) < 15.0f) {
f32 dist = angles.dot(diff);
if (absVal(diff.y) < C_GENERALPARMS.mFov() && absVal(orthoDir.dot(diff)) < 15.0f) {
f32 dist = dir.dot(diff);
if (dist > 15.0f && dist < C_GENERALPARMS.mSightRadius()) {
return true;
}
@ -242,208 +240,6 @@ bool Obj::isAttackableTarget()
}
return false;
/*
stwu r1, -0xf0(r1)
mflr r0
stw r0, 0xf4(r1)
stfd f31, 0xe0(r1)
psq_st f31, 232(r1), 0, qr0
stfd f30, 0xd0(r1)
psq_st f30, 216(r1), 0, qr0
stfd f29, 0xc0(r1)
psq_st f29, 200(r1), 0, qr0
stw r31, 0xbc(r1)
stw r30, 0xb8(r1)
stw r29, 0xb4(r1)
mr r31, r3
lfs f0, lbl_8051CDCC@sda21(r2)
lfs f3, 0x1fc(r3)
fmr f1, f3
fcmpo cr0, f3, f0
bge lbl_802E4998
fneg f1, f3
lbl_802E4998:
lfs f2, lbl_8051CE24@sda21(r2)
lis r3, sincosTable___5JMath@ha
lfs f0, lbl_8051CDCC@sda21(r2)
addi r4, r3, sincosTable___5JMath@l
fmuls f1, f1, f2
fcmpo cr0, f3, f0
fctiwz f0, f1
stfd f0, 0x90(r1)
lwz r0, 0x94(r1)
rlwinm r0, r0, 3, 0x12, 0x1c
add r3, r4, r0
lfs f30, 4(r3)
bge lbl_802E49F0
lfs f0, lbl_8051CE28@sda21(r2)
fmuls f0, f3, f0
fctiwz f0, f0
stfd f0, 0x98(r1)
lwz r0, 0x9c(r1)
rlwinm r0, r0, 3, 0x12, 0x1c
lfsx f0, r4, r0
fneg f29, f0
b lbl_802E4A08
lbl_802E49F0:
fmuls f0, f3, f2
fctiwz f0, f0
stfd f0, 0xa0(r1)
lwz r0, 0xa4(r1)
rlwinm r0, r0, 3, 0x12, 0x1c
lfsx f29, r4, r0
lbl_802E4A08:
lwz r4, 0xc0(r31)
fneg f31, f30
lfs f0, lbl_8051CE38@sda21(r2)
addi r3, r1, 0x24
lfs f2, 0x3d4(r4)
addi r4, r1, 0x14
lfs f1, lbl_8051CE3C@sda21(r2)
fmuls f5, f0, f2
lfs f3, 0x194(r31)
lfs f0, 0x18c(r31)
fmuls f4, f1, f2
lfs f1, 0x190(r31)
lfs f2, lbl_8051CDCC@sda21(r2)
fmadds f3, f30, f5, f3
stfs f4, 0x20(r1)
fmadds f1, f2, f5, f1
fmadds f0, f29, f5, f0
stfs f3, 0x1c(r1)
stfs f0, 0x14(r1)
stfs f1, 0x18(r1)
bl __ct__Q24Game15CellIteratorArgFRQ23Sys6Sphere
li r0, 1
addi r3, r1, 0x44
stb r0, 0x40(r1)
addi r4, r1, 0x24
bl __ct__Q24Game12CellIteratorFRQ24Game15CellIteratorArg
addi r3, r1, 0x44
bl first__Q24Game12CellIteratorFv
b lbl_802E4BC0
lbl_802E4A7C:
addi r3, r1, 0x44
bl __ml__Q24Game12CellIteratorFv
lwz r12, 0(r3)
mr r30, r3
lwz r12, 0xa8(r12)
mtctr r12
bctrl
clrlwi. r0, r3, 0x18
beq lbl_802E4BB8
mr r3, r30
lwz r12, 0(r30)
lwz r12, 0x1c(r12)
mtctr r12
bctrl
clrlwi. r0, r3, 0x18
mr r29, r3
bne lbl_802E4AFC
mr r3, r30
lwz r12, 0(r30)
lwz r12, 0x18(r12)
mtctr r12
bctrl
clrlwi. r0, r3, 0x18
beq lbl_802E4AFC
mr r3, r30
lwz r12, 0(r30)
lwz r12, 0x1c0(r12)
mtctr r12
bctrl
clrlwi. r0, r3, 0x18
beq lbl_802E4AFC
li r29, 1
lbl_802E4AFC:
clrlwi. r0, r29, 0x18
beq lbl_802E4BB8
mr r4, r30
addi r3, r1, 8
lwz r12, 0(r30)
lwz r12, 8(r12)
mtctr r12
bctrl
lfs f3, 0xc(r1)
lfs f0, 0x190(r31)
lfs f2, 8(r1)
lfs f1, 0x18c(r31)
fsubs f3, f3, f0
lfs f0, lbl_8051CDCC@sda21(r2)
lfs f4, 0x10(r1)
fsubs f2, f2, f1
lfs f1, 0x194(r31)
fcmpo cr0, f3, f0
lwz r3, 0xc0(r31)
fsubs f4, f4, f1
ble lbl_802E4B58
fmr f1, f3
b lbl_802E4B5C
lbl_802E4B58:
fneg f1, f3
lbl_802E4B5C:
lfs f0, 0x3fc(r3)
fcmpo cr0, f1, f0
bge lbl_802E4BB8
lfs f1, lbl_8051CDCC@sda21(r2)
fmuls f3, f1, f3
fmadds f0, f31, f2, f3
fmadds f0, f29, f4, f0
fcmpo cr0, f0, f1
ble lbl_802E4B84
b lbl_802E4B88
lbl_802E4B84:
fneg f0, f0
lbl_802E4B88:
lfs f1, lbl_8051CE40@sda21(r2)
fcmpo cr0, f0, f1
bge lbl_802E4BB8
fmadds f0, f29, f2, f3
fmadds f2, f30, f4, f0
fcmpo cr0, f2, f1
ble lbl_802E4BB8
lfs f0, 0x3d4(r3)
fcmpo cr0, f2, f0
bge lbl_802E4BB8
li r3, 1
b lbl_802E4BD4
lbl_802E4BB8:
addi r3, r1, 0x44
bl next__Q24Game12CellIteratorFv
lbl_802E4BC0:
addi r3, r1, 0x44
bl isDone__Q24Game12CellIteratorFv
clrlwi. r0, r3, 0x18
beq lbl_802E4A7C
li r3, 0
lbl_802E4BD4:
psq_l f31, 232(r1), 0, qr0
lfd f31, 0xe0(r1)
psq_l f30, 216(r1), 0, qr0
lfd f30, 0xd0(r1)
psq_l f29, 200(r1), 0, qr0
lfd f29, 0xc0(r1)
lwz r31, 0xbc(r1)
lwz r30, 0xb8(r1)
lwz r0, 0xf4(r1)
lwz r29, 0xb4(r1)
mtlr r0
addi r1, r1, 0xf0
blr
*/
}
/**

View File

@ -196,7 +196,7 @@ NISHIMURA_FILES:=\
$(BUILD_DIR)/asm/plugProjectNishimuraU/KabutoState.o\
$(BUILD_DIR)/src/plugProjectNishimuraU/KabutoAnimator.o\
$(BUILD_DIR)/src/plugProjectNishimuraU/KabutoMgr.o\
$(BUILD_DIR)/asm/plugProjectNishimuraU/Kabuto.o\
$(BUILD_DIR)/src/plugProjectNishimuraU/Kabuto.o\
$(BUILD_DIR)/asm/plugProjectNishimuraU/KumaKochappyState.o\
$(BUILD_DIR)/src/plugProjectNishimuraU/KumaKochappyAnimator.o\
$(BUILD_DIR)/src/plugProjectNishimuraU/KumaKochappyMgr.o\