#pragma once #include #include #include #include "KingSystem/Resource/resResource.h" #include "KingSystem/Utils/ParamIO.h" namespace ksys::res { class LifeCondition : public ParamIO, public Resource { SEAD_RTTI_OVERRIDE(LifeCondition, Resource) public: LifeCondition() : ParamIO("lifecondition", 0) {} ~LifeCondition() override = default; bool needsParse() const override { return true; } bool ParamIO_m0(char* data) override { return true; } private: void doCreate_(u8*, u32, sead::Heap*) override {} void parseArray(const agl::utl::ResParameterObj* data, agl::utl::IParameterObj* obj, sead::Buffer>* buffer, const sead::SafeString& key, const sead::SafeString& desc, sead::Heap* heap); bool parse_(u8* data, size_t size, sead::Heap* heap) override; agl::utl::ParameterObj mInvalidWeathersObj; agl::utl::ParameterObj mInvalidTimesObj; agl::utl::ParameterObj mDisplayDistanceObj; agl::utl::ParameterObj mDeleteWeathersObj; agl::utl::ParameterObj mDeleteTimesObj; agl::utl::ParameterObj mBoundingYObj; agl::utl::ParameterObj mYLimitAlgorithmObj; sead::Buffer> mInvalidWeathersBuffer; sead::Buffer> mInvalidTimesBuffer; agl::utl::Parameter mDisplayDistance; agl::utl::Parameter mBoundingY; agl::utl::Parameter mYLimitAlgorithm; sead::Buffer> mDeleteWeathersBuffer; sead::Buffer> mDeleteTimesBuffer; }; } // namespace ksys::res