mirror of https://github.com/zeldaret/botw.git
ksys/res: Add ASList header
This commit is contained in:
parent
4c18e03834
commit
c639c70c5b
|
@ -91495,7 +91495,7 @@
|
|||
0x00000071011abc7c,sub_71011ABC7C,8,
|
||||
0x00000071011abc84,sub_71011ABC84,372,
|
||||
0x00000071011abdf8,nullsub_4622,4,
|
||||
0x00000071011abdfc,sub_71011ABDFC,372,
|
||||
0x00000071011abdfc,sub_71011ABDFC,372,_ZN4ksys3res6ASListC1Ev
|
||||
0x00000071011abf70,sub_71011ABF70,668,
|
||||
0x00000071011ac20c,sub_71011AC20C,8,
|
||||
0x00000071011ac214,sub_71011AC214,8,
|
||||
|
|
Can't render this file because it is too large.
|
|
@ -130,6 +130,8 @@ target_sources(uking PRIVATE
|
|||
resResourceActorLink.h
|
||||
resResourceAIProgram.cpp
|
||||
resResourceAIProgram.h
|
||||
resResourceASList.cpp
|
||||
resResourceASList.h
|
||||
resResourceArchive.cpp
|
||||
resResourceArchive.h
|
||||
resResourceAwareness.cpp
|
||||
|
|
|
@ -0,0 +1,7 @@
|
|||
#include "KingSystem/Resource/resResourceASList.h"
|
||||
|
||||
namespace ksys::res {
|
||||
|
||||
ASList::ASList() : ParamIO("aslist", 0) {}
|
||||
|
||||
} // namespace ksys::res
|
|
@ -0,0 +1,81 @@
|
|||
#pragma once
|
||||
|
||||
#include <agl/Utils/aglParameter.h>
|
||||
#include <agl/Utils/aglParameterList.h>
|
||||
#include <agl/Utils/aglParameterObj.h>
|
||||
#include <container/seadBuffer.h>
|
||||
#include <prim/seadStorageFor.h>
|
||||
#include "KingSystem/Resource/resResource.h"
|
||||
#include "KingSystem/Utils/ParamIO.h"
|
||||
|
||||
namespace ksys::res {
|
||||
|
||||
class ASList : public ParamIO, public Resource {
|
||||
SEAD_RTTI_OVERRIDE(ASList, Resource)
|
||||
public:
|
||||
struct ASDefine {
|
||||
agl::utl::Parameter<sead::SafeString> name;
|
||||
agl::utl::Parameter<sead::SafeString> file_name;
|
||||
agl::utl::ParameterObj obj;
|
||||
void* _88;
|
||||
};
|
||||
KSYS_CHECK_SIZE_NX150(ASDefine, 0x88);
|
||||
|
||||
struct CFDefine {
|
||||
agl::utl::Parameter<sead::SafeString> name;
|
||||
agl::utl::ParameterObj pre_obj;
|
||||
sead::Buffer<void*> posts;
|
||||
agl::utl::ParameterList posts_list;
|
||||
sead::Buffer<void*> excepts;
|
||||
agl::utl::ParameterObj obj;
|
||||
agl::utl::ParameterList excepts_list;
|
||||
};
|
||||
KSYS_CHECK_SIZE_NX150(CFDefine, 0x138);
|
||||
|
||||
struct AddRes {
|
||||
agl::utl::Parameter<sead::SafeString> _0;
|
||||
agl::utl::Parameter<sead::SafeString> _28;
|
||||
agl::utl::Parameter<bool> _50;
|
||||
agl::utl::ParameterObj obj;
|
||||
};
|
||||
KSYS_CHECK_SIZE_NX150(AddRes, 0xa0);
|
||||
|
||||
struct Common {
|
||||
agl::utl::Parameter<f32> rate_all;
|
||||
agl::utl::ParameterObj obj;
|
||||
};
|
||||
KSYS_CHECK_SIZE_NX150(Common, 0x50);
|
||||
|
||||
struct Buffers {
|
||||
Buffers() { _0 = 0; }
|
||||
|
||||
s32 _0;
|
||||
sead::Buffer<ASDefine> as_defines;
|
||||
sead::Buffer<CFDefine> cf_defines;
|
||||
sead::Buffer<AddRes> add_reses;
|
||||
};
|
||||
|
||||
ASList();
|
||||
~ASList() override;
|
||||
|
||||
void doCreate_(u8* buffer, u32 buffer_size, sead::Heap* heap) override;
|
||||
bool needsParse() const override { return true; }
|
||||
bool parse_(u8* data, size_t size, sead::Heap* heap) override;
|
||||
|
||||
const Buffers& getBuffers() const { return mBuffers; }
|
||||
const Common& getCommon() const { return mCommon.ref(); }
|
||||
|
||||
protected:
|
||||
bool finishParsing_() override;
|
||||
bool m7_() override;
|
||||
|
||||
private:
|
||||
Buffers mBuffers;
|
||||
agl::utl::ParameterList mCFDefinesList;
|
||||
agl::utl::ParameterList mASDefinesList;
|
||||
agl::utl::ParameterList mAddResesList;
|
||||
sead::StorageFor<Common> mCommon{sead::ZeroInitializeTag{}};
|
||||
};
|
||||
KSYS_CHECK_SIZE_NX150(ASList, 0x410);
|
||||
|
||||
} // namespace ksys::res
|
Loading…
Reference in New Issue