summaryrefslogtreecommitdiff
path: root/src/KingSystem/ActorSystem/Profiles/actWeaponBase.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/KingSystem/ActorSystem/Profiles/actWeaponBase.cpp')
-rw-r--r--src/KingSystem/ActorSystem/Profiles/actWeaponBase.cpp23
1 files changed, 23 insertions, 0 deletions
diff --git a/src/KingSystem/ActorSystem/Profiles/actWeaponBase.cpp b/src/KingSystem/ActorSystem/Profiles/actWeaponBase.cpp
new file mode 100644
index 00000000..d206224e
--- /dev/null
+++ b/src/KingSystem/ActorSystem/Profiles/actWeaponBase.cpp
@@ -0,0 +1,23 @@
+#include "KingSystem/ActorSystem/Profiles/actWeaponBase.h"
+#include "KingSystem/ActorSystem/actActorCreator.h"
+#include "KingSystem/ActorSystem/actInstParamPack.h"
+
+namespace ksys::act {
+
+void WeaponBase::requestCreateWeaponActor(const char* actor, const sead::Matrix34f& matrix,
+ f32 scale, sead::Heap* heap,
+ ksys::act::BaseProcHandle* handle, s32 life,
+ ksys::act::InstParamPack* params_in, s32 task_lane_id) {
+ ksys::act::InstParamPack params;
+ if (params_in) {
+ params = *params_in;
+ }
+
+ ksys::act::ActorCreator::addScale(params, scale);
+ params->add(life, "Life");
+ params->addMatrix(matrix);
+ ksys::act::ActorCreator::instance()->requestCreateActor(actor, heap, handle, &params, nullptr,
+ task_lane_id);
+}
+
+} // namespace ksys::act