summaryrefslogtreecommitdiff
path: root/src/Game/Actor/AI/aiOctarockRoot.cpp
diff options
context:
space:
mode:
authorLéo Lam <leo@leolam.fr>2026-09-14 00:02:22 +0200
committerLéo Lam <leo@leolam.fr>2026-09-14 00:02:22 +0200
commitf4cd38c43b436fe91def1a1b0b3dfe0134369870 (patch)
tree1ab07eab2ea43c0719d6b1309743715bd80cd408 /src/Game/Actor/AI/aiOctarockRoot.cpp
parent5b26254bfe69560b0993a50d8ba8f418ae749380 (diff)
Actor: move all AI code under Game/Actor
Link order shows one sorted actor tree, not a separate AI project: the Action/AI/Query folders and per-feature folders (Camera, Player, Horse, ...) come out of the same archive rounds as the actor classes. (AI assisted using Claude Fable 5.1 and Claude Opus 5.5)
Diffstat (limited to 'src/Game/Actor/AI/aiOctarockRoot.cpp')
-rw-r--r--src/Game/Actor/AI/aiOctarockRoot.cpp51
1 files changed, 51 insertions, 0 deletions
diff --git a/src/Game/Actor/AI/aiOctarockRoot.cpp b/src/Game/Actor/AI/aiOctarockRoot.cpp
new file mode 100644
index 00000000..e4ebd26a
--- /dev/null
+++ b/src/Game/Actor/AI/aiOctarockRoot.cpp
@@ -0,0 +1,51 @@
+#include "Game/Actor/AI/aiOctarockRoot.h"
+
+namespace uking::ai {
+
+OctarockRoot::OctarockRoot(const InitArg& arg) : OctarockRootBase(arg) {}
+
+OctarockRoot::~OctarockRoot() = default;
+
+bool OctarockRoot::init_(sead::Heap* heap) {
+ return OctarockRootBase::init_(heap);
+}
+
+void OctarockRoot::enter_(ksys::act::ai::InlineParamPack* params) {
+ OctarockRootBase::enter_(params);
+}
+
+void OctarockRoot::leave_() {
+ OctarockRootBase::leave_();
+}
+
+void OctarockRoot::loadParams_() {
+ OctarockRootBase::loadParams_();
+ getStaticParam(&mIsWigBreakable_s, "IsWigBreakable");
+ getStaticParam(&mItemName_s, "ItemName");
+ getStaticParam(&mConnectRigidBodyName_s, "ConnectRigidBodyName");
+ getStaticParam(&mConnectTgtBodyName_s, "ConnectTgtBodyName");
+ getStaticParam(&mShootActorName_s, "ShootActorName");
+ // FIXME: CALL _ZNK4sead22BufferedSafeStringBaseIcE22assureTerminationImpl_Ev @ 0x7100b0ce00
+ // FIXME: CALL _ZN4sead20StringPrintFormatterC2EPNS_22BufferedSafeStringBaseIcEE @ 0x7100b0c320
+ // FIXME: CALL _ZN4sead14PrintFormatterlsEPKc @ 0x7100b0bfd8
+ // FIXME: CALL _ZN4sead14PrintFormatter20proceedToFormatMark_EPc @ 0x7100b0bde0
+ // FIXME: CALL _ZN4sead14PrintFormatter5flushEv @ 0x7100b0bd94
+ // FIXME: CALL sead__PrintFormatter__x @ 0x7100b0c528
+ // FIXME: CALL _ZN4sead20StringPrintFormatterC2EPNS_22BufferedSafeStringBaseIcEE @ 0x7100b0c320
+ // FIXME: CALL _ZN4sead14PrintFormatterlsEPKc @ 0x7100b0bfd8
+ // FIXME: CALL _ZN4sead14PrintFormatter20proceedToFormatMark_EPc @ 0x7100b0bde0
+ // FIXME: CALL _ZN4sead14PrintFormatter5flushEv @ 0x7100b0bd94
+ // FIXME: CALL sead__PrintFormatter__x @ 0x7100b0c528
+ // FIXME: CALL _ZN4sead20StringPrintFormatterC2EPNS_22BufferedSafeStringBaseIcEE @ 0x7100b0c320
+ // FIXME: CALL _ZN4sead14PrintFormatterlsEPKc @ 0x7100b0bfd8
+ // FIXME: CALL _ZN4sead14PrintFormatter20proceedToFormatMark_EPc @ 0x7100b0bde0
+ // FIXME: CALL _ZN4sead14PrintFormatter5flushEv @ 0x7100b0bd94
+ // FIXME: CALL sead__PrintFormatter__x @ 0x7100b0c528
+ getStaticParam(&mExtraShootActorName_s, "ExtraShootActorName");
+ getStaticParam(&mExtraShootActorKey_s, "ExtraShootActorKey");
+ getMapUnitParam(&mCarryActorName_m, "CarryActorName");
+ getAITreeVariable(&mVacuumedExplodingBomb_a, "VacuumedExplodingBomb");
+ getAITreeVariable(&mOctarockFormChangeUnit_a, "OctarockFormChangeUnit");
+}
+
+} // namespace uking::ai