summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorLéo Lam <leo@leolam.fr>2020-11-14 12:31:34 +0100
committerLéo Lam <leo@leolam.fr>2020-11-14 14:19:43 +0100
commitdcdb1fa70e946bc4349b0dd01df7ad274aece2b0 (patch)
tree18b561ea30b3233e53e835550796322646e9567e /src
parentc59f8d3dcecc74ce3b7893a757bd3edb7f5ee604 (diff)
ksys/res: Add AS header
Diffstat (limited to 'src')
-rw-r--r--src/KingSystem/Resource/CMakeLists.txt2
-rw-r--r--src/KingSystem/Resource/resResourceAS.cpp1
-rw-r--r--src/KingSystem/Resource/resResourceAS.h42
3 files changed, 45 insertions, 0 deletions
diff --git a/src/KingSystem/Resource/CMakeLists.txt b/src/KingSystem/Resource/CMakeLists.txt
index 64a2c516..20742356 100644
--- a/src/KingSystem/Resource/CMakeLists.txt
+++ b/src/KingSystem/Resource/CMakeLists.txt
@@ -130,6 +130,8 @@ target_sources(uking PRIVATE
resResourceActorLink.h
resResourceAIProgram.cpp
resResourceAIProgram.h
+ resResourceAS.cpp
+ resResourceAS.h
resResourceASList.cpp
resResourceASList.h
resResourceAttClientList.cpp
diff --git a/src/KingSystem/Resource/resResourceAS.cpp b/src/KingSystem/Resource/resResourceAS.cpp
new file mode 100644
index 00000000..e4d0dbdc
--- /dev/null
+++ b/src/KingSystem/Resource/resResourceAS.cpp
@@ -0,0 +1 @@
+#include "KingSystem/Resource/resResourceAS.h"
diff --git a/src/KingSystem/Resource/resResourceAS.h b/src/KingSystem/Resource/resResourceAS.h
new file mode 100644
index 00000000..76f2af2d
--- /dev/null
+++ b/src/KingSystem/Resource/resResourceAS.h
@@ -0,0 +1,42 @@
+#pragma once
+
+#include <agl/Utils/aglParameter.h>
+#include <agl/Utils/aglParameterList.h>
+#include <agl/Utils/aglParameterObj.h>
+#include <container/seadBuffer.h>
+#include "KingSystem/Resource/resResource.h"
+#include "KingSystem/Utils/ParamIO.h"
+#include "KingSystem/Utils/Types.h"
+
+namespace ksys::res {
+
+class AS : public ParamIO, public Resource {
+ SEAD_RTTI_OVERRIDE(AS, Resource)
+public:
+ struct Element {};
+
+ AS();
+
+ void doCreate_(u8*, u32, sead::Heap*) override {}
+ bool needsParse() const override { return true; }
+ bool parse_(u8* data, size_t size, sead::Heap* heap) override;
+ void finalize_() override;
+
+private:
+ sead::Buffer<Element*> mElements;
+ agl::utl::ParameterList mElementsList;
+
+ agl::utl::ParameterObj mCommonParams;
+ agl::utl::Parameter<f32> mRandomRateMin;
+ agl::utl::Parameter<f32> mRandomRateMax;
+ agl::utl::Parameter<bool> mForbidPartialDemoAS;
+ agl::utl::Parameter<bool> mUseIK;
+ u8 _3b8{};
+ u8 _3b9{};
+ u8 _3ba{};
+ u8 _3bb{};
+ sead::Heap* mHeap{};
+};
+KSYS_CHECK_SIZE_NX150(AS, 0x3c8);
+
+} // namespace ksys::res