Squashed commit of the following:

commit 3a3836285489e8d5d332a8929cd346301e825232
Author: HeartPiece <deancsouthwood@gmail.com>
Date:   Sat Feb 18 13:49:04 2023 +1100

    Update recommended_todo.md

commit 102c1d34323e0a6ad7ad2b793c99b0807d61216d
Author: HeartPiece <deancsouthwood@gmail.com>
Date:   Tue Feb 14 17:10:12 2023 +1100

    StateCarryEnd::exec progress

commit 78beac0a36817b0b0c37600c0763ed240b5ebc18
Author: NerduMiner <nerdyminer18@gmail.com>
Date:   Tue Feb 14 00:37:47 2023 -0500

    StateCarryEnd::exec 39%

commit 1c281cb85a5c4979e4d0e29b4d9ebc8f0f4696a6
Author: NerduMiner <nerdyminer18@gmail.com>
Date:   Mon Feb 13 22:35:59 2023 -0500

    StateCarryEnd::exec 14%

    quite goofy ahh atm
This commit is contained in:
HeartPiece 2023-02-18 13:49:36 +11:00
parent d685b61280
commit 5920fbb670
3 changed files with 41 additions and 2 deletions

View File

@ -132,7 +132,7 @@
| File | Size (bytes) | File | Size (bytes) |
| ---- | ---- | ---- | ---- |
| <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectMorimuraU/bomb.cpp">bomb.cpp</a> | 12903 | <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectMorimuraU/tamagoMushiMgr.cpp">tamagoMushiMgr.cpp</a> | 13197 |
| <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectMorimuraU/panModokiState.cpp">panModokiState.cpp</a> | 26323 | <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectMorimuraU/hurryUp2D.cpp">hurryUp2D.cpp</a> | 27085 |
| <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectMorimuraU/hurryUp2D.cpp">hurryUp2D.cpp</a> | 27085 | <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectMorimuraU/panModokiState.cpp">panModokiState.cpp</a> | 27115 |
| <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectMorimuraU/scrollList.cpp">scrollList.cpp</a> | 41187 | <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectMorimuraU/jigumoState.cpp">jigumoState.cpp</a> | 44498 |
| <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectMorimuraU/kingChappyState.cpp">kingChappyState.cpp</a> | 59593 | <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectMorimuraU/miulin.cpp">miulin.cpp</a> | 61717 |
| <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectMorimuraU/tamagoMushi.cpp">tamagoMushi.cpp</a> | 72662 | <a href="https://github.com/projectPiki/pikmin2/tree/main/src/plugProjectMorimuraU/dayEndCount.cpp">dayEndCount.cpp</a> | 74917 |

View File

@ -639,6 +639,24 @@ struct EnemyBase : public Creature, public SysShape::MotionListener, virtual pub
return angleDist;
}
inline void forceMovePosition(Vector3f offset) { mPosition += offset; }
inline f32 turnToTargetMori(Vector3f& targetPos, f32 turnFactor, f32 maxTurnSpeed)
{
Vector3f pos = getPosition();
f32 angleDist = angDist(angXZ(targetPos.x, targetPos.z, pos), getFaceDir());
f32 turnSpeed = angleDist * turnFactor;
f32 limit = PI * (DEG2RAD * maxTurnSpeed);
if (FABS(turnSpeed) > limit) {
turnSpeed = (turnSpeed > 0.0f) ? limit : -limit;
}
updateFaceDir(turnSpeed);
return angleDist;
}
inline bool checkDistAndAngle(Creature* target, f32 angle, f32 distRange, f32 angRange)
{
bool result = false;

View File

@ -962,7 +962,28 @@ void StateCarryEnd::exec(EnemyBase* enemy)
{
if (enemy->mHealth <= 0.0f) {
transit(enemy, PANMODOKI_Dead, nullptr);
return;
} else {
Vector3f enemyPos = enemy->getPosition();
Vector3f diff = enemy->mHomePosition - enemyPos;
if (FABS(diff.x) < 2.0f && FABS(diff.z) < 2.0f) {
Vector3f homePos = enemy->mHomePosition;
enemy->onSetPosition(homePos);
if (enemy->mCurAnim->mIsPlaying && enemy->mCurAnim->mType == KEYEVENT_1) {
transit(enemy, PANMODOKI_Hide, nullptr);
}
} else {
enemy->turnToTargetMori(_10, CG_PARMS(enemy)->mGeneral.mRotationalAccel.mValue,
CG_PARMS(enemy)->mGeneral.mRotationalSpeed.mValue);
diff.x *= 0.05f;
diff.y *= 0.05f;
diff.z *= 0.05f;
enemy->forceMovePosition(diff);
}
if ((enemy->mCurAnim->mIsPlaying != FALSE) && (enemy->mCurAnim->mType == KEYEVENT_END)) {
transit(enemy, PANMODOKI_Hide, nullptr);
}
}
/*
stwu r1, -0x90(r1)