mirror of https://github.com/zeldaret/botw.git
ksys/act: Start adding Behavior
This commit is contained in:
parent
632517f727
commit
ad32d1abe0
|
@ -37218,11 +37218,11 @@
|
||||||
0x0000007100615afc,AI_Behavior_AcceptLSwordDamageDCCallback::dtorDelete,96,
|
0x0000007100615afc,AI_Behavior_AcceptLSwordDamageDCCallback::dtorDelete,96,
|
||||||
0x0000007100615b5c,AI_Behavior_AcceptLSwordDamageDCCallback::rtti1,288,
|
0x0000007100615b5c,AI_Behavior_AcceptLSwordDamageDCCallback::rtti1,288,
|
||||||
0x0000007100615c7c,AI_Behavior_AcceptLSwordDamageDCCallback::rtti2,92,
|
0x0000007100615c7c,AI_Behavior_AcceptLSwordDamageDCCallback::rtti2,92,
|
||||||
0x0000007100615cd8,AI_BehaviorBase::m4,8,
|
0x0000007100615cd8,AI_BehaviorBase::m4,8,_ZN4ksys3act2ai8Behavior2m4Ev
|
||||||
0x0000007100615ce0,AI_BehaviorBase::m5,8,
|
0x0000007100615ce0,AI_BehaviorBase::m5,8,_ZN4ksys3act2ai8Behavior2m5Ev
|
||||||
0x0000007100615ce8,AI_BehaviorBase::m11_null,4,
|
0x0000007100615ce8,AI_BehaviorBase::m11_null,4,_ZN4ksys3act2ai8Behavior3m11Ev
|
||||||
0x0000007100615cec,AI_BehaviorBase::m12,8,
|
0x0000007100615cec,AI_BehaviorBase::m12,8,_ZN4ksys3act2ai8Behavior3m12Ev
|
||||||
0x0000007100615cf4,AI_BehaviorBase::m13_null,4,
|
0x0000007100615cf4,AI_BehaviorBase::m13_null,4,_ZN4ksys3act2ai8Behavior3m13Ev
|
||||||
0x0000007100615cf8,AI_Behavior_AcceptLSwordDamageDCCallback::m14,8,
|
0x0000007100615cf8,AI_Behavior_AcceptLSwordDamageDCCallback::m14,8,
|
||||||
0x0000007100615d00,sub_7100615D00,140,
|
0x0000007100615d00,sub_7100615D00,140,
|
||||||
0x0000007100615d8c,sub_7100615D8C,140,
|
0x0000007100615d8c,sub_7100615D8C,140,
|
||||||
|
@ -37254,10 +37254,10 @@
|
||||||
0x0000007100616700,sub_7100616700,64,
|
0x0000007100616700,sub_7100616700,64,
|
||||||
0x0000007100616740,AI_Behavior_AirWallCollisionSpecify::rtti1,204,
|
0x0000007100616740,AI_Behavior_AirWallCollisionSpecify::rtti1,204,
|
||||||
0x000000710061680c,AI_Behavior_AirWallCollisionSpecify::rtti2,92,
|
0x000000710061680c,AI_Behavior_AirWallCollisionSpecify::rtti2,92,
|
||||||
0x0000007100616868,AI_BehaviorBase::dtor,4,
|
0x0000007100616868,AI_BehaviorBase::dtor,4,_ZN4ksys3act2ai8BehaviorD2Ev
|
||||||
0x000000710061686c,j__ZdlPv_141,4,
|
0x000000710061686c,j__ZdlPv_141,4,
|
||||||
0x0000007100616870,AI_BehaviorBase::m6,8,
|
0x0000007100616870,AI_BehaviorBase::m6,8,_ZN4ksys3act2ai8Behavior2m6Ev
|
||||||
0x0000007100616878,AI_BehaviorBase::m9_null,4,
|
0x0000007100616878,AI_BehaviorBase::m9_null,4,_ZN4ksys3act2ai8Behavior2m9Ev
|
||||||
0x000000710061687c,sub_710061687C,48,
|
0x000000710061687c,sub_710061687C,48,
|
||||||
0x00000071006168ac,sub_71006168AC,92,
|
0x00000071006168ac,sub_71006168AC,92,
|
||||||
0x0000007100616908,sub_7100616908,8,
|
0x0000007100616908,sub_7100616908,8,
|
||||||
|
@ -37268,8 +37268,8 @@
|
||||||
0x0000007100616ac0,AI_Behavior_AirWallMaterialSpecify::rtti1,204,
|
0x0000007100616ac0,AI_Behavior_AirWallMaterialSpecify::rtti1,204,
|
||||||
0x0000007100616b8c,AI_Behavior_AirWallMaterialSpecify::rtti2,92,
|
0x0000007100616b8c,AI_Behavior_AirWallMaterialSpecify::rtti2,92,
|
||||||
0x0000007100616be8,j__ZdlPv_142,4,
|
0x0000007100616be8,j__ZdlPv_142,4,
|
||||||
0x0000007100616bec,AI_BehaviorBase::m7_null,4,
|
0x0000007100616bec,AI_BehaviorBase::m7_null,4,_ZN4ksys3act2ai8Behavior2m7Ev
|
||||||
0x0000007100616bf0,AI_BehaviorBase::m10_null,4,
|
0x0000007100616bf0,AI_BehaviorBase::m10_null,4,_ZN4ksys3act2ai8Behavior3m10Ev
|
||||||
0x0000007100616bf4,sub_7100616BF4,48,
|
0x0000007100616bf4,sub_7100616BF4,48,
|
||||||
0x0000007100616c24,sub_7100616C24,92,
|
0x0000007100616c24,sub_7100616C24,92,
|
||||||
0x0000007100616c80,AI_Behavior_AnimalAttack::ctor,84,
|
0x0000007100616c80,AI_Behavior_AnimalAttack::ctor,84,
|
||||||
|
@ -73123,7 +73123,7 @@
|
||||||
0x0000007100d24400,PlacementStruct1::postPlaceActors1,156,
|
0x0000007100d24400,PlacementStruct1::postPlaceActors1,156,
|
||||||
0x0000007100d2449c,PlacementStruct1::x_0,412,
|
0x0000007100d2449c,PlacementStruct1::x_0,412,
|
||||||
0x0000007100d24638,sinitPlacementStruct1,684,
|
0x0000007100d24638,sinitPlacementStruct1,684,
|
||||||
0x0000007100d248e4,AI_BehaviorBase::ctor,44,
|
0x0000007100d248e4,AI_BehaviorBase::ctor,44,_ZN4ksys3act2ai8BehaviorC1ERKNS2_7InitArgE
|
||||||
0x0000007100d24910,sub_7100D24910,256,
|
0x0000007100d24910,sub_7100D24910,256,
|
||||||
0x0000007100d24a10,sub_7100D24A10,176,
|
0x0000007100d24a10,sub_7100D24A10,176,
|
||||||
0x0000007100d24ac0,sub_7100D24AC0,212,
|
0x0000007100d24ac0,sub_7100D24AC0,212,
|
||||||
|
@ -73141,10 +73141,10 @@
|
||||||
0x0000007100d24dc0,sub_7100D24DC0,12,
|
0x0000007100d24dc0,sub_7100D24DC0,12,
|
||||||
0x0000007100d24dcc,sub_7100D24DCC,12,
|
0x0000007100d24dcc,sub_7100D24DCC,12,
|
||||||
0x0000007100d24dd8,sub_7100D24DD8,12,
|
0x0000007100d24dd8,sub_7100D24DD8,12,
|
||||||
0x0000007100d24de4,AI_BehaviorBase::m0,112,
|
0x0000007100d24de4,AI_BehaviorBase::m0,112,_ZNK4ksys3act2ai8Behavior27checkDerivedRuntimeTypeInfoEPKN4sead15RuntimeTypeInfo9InterfaceE
|
||||||
0x0000007100d24e54,AI_BehaviorBase::m1,92,
|
0x0000007100d24e54,AI_BehaviorBase::m1,92,_ZNK4ksys3act2ai8Behavior18getRuntimeTypeInfoEv
|
||||||
0x0000007100d24eb0,AI_BehaviorBase::dtorDelete,4,
|
0x0000007100d24eb0,AI_BehaviorBase::dtorDelete,4,_ZN4ksys3act2ai8BehaviorD0Ev
|
||||||
0x0000007100d24eb4,AI_BehaviorBase::m8_null,4,
|
0x0000007100d24eb4,AI_BehaviorBase::m8_null,4,_ZN4ksys3act2ai8Behavior2m8Ev
|
||||||
0x0000007100d24eb8,ai::Behaviors::ctor,28,
|
0x0000007100d24eb8,ai::Behaviors::ctor,28,
|
||||||
0x0000007100d24ed4,sub_7100D24ED4,4,
|
0x0000007100d24ed4,sub_7100D24ED4,4,
|
||||||
0x0000007100d24ed8,sub_7100D24ED8,200,
|
0x0000007100d24ed8,sub_7100D24ED8,200,
|
||||||
|
|
Can't render this file because it is too large.
|
|
@ -27,6 +27,8 @@ target_sources(uking PRIVATE
|
||||||
actAiActionBase.h
|
actAiActionBase.h
|
||||||
actAiAi.cpp
|
actAiAi.cpp
|
||||||
actAiAi.h
|
actAiAi.h
|
||||||
|
actAiBehavior.cpp
|
||||||
|
actAiBehavior.h
|
||||||
actAiClassDef.cpp
|
actAiClassDef.cpp
|
||||||
actAiClassDef.h
|
actAiClassDef.h
|
||||||
actAiParam.cpp
|
actAiParam.cpp
|
||||||
|
|
|
@ -0,0 +1,8 @@
|
||||||
|
#include "KingSystem/ActorSystem/actAiBehavior.h"
|
||||||
|
|
||||||
|
namespace ksys::act::ai {
|
||||||
|
|
||||||
|
Behavior::Behavior(const InitArg& arg)
|
||||||
|
: mActor(arg.actor), mDefIdx(static_cast<u16>(arg.def_idx)) {}
|
||||||
|
|
||||||
|
} // namespace ksys::act::ai
|
|
@ -0,0 +1,48 @@
|
||||||
|
#pragma once
|
||||||
|
|
||||||
|
#include <basis/seadTypes.h>
|
||||||
|
#include <prim/seadRuntimeTypeInfo.h>
|
||||||
|
#include "KingSystem/Utils/Types.h"
|
||||||
|
|
||||||
|
namespace ksys::act {
|
||||||
|
class Actor;
|
||||||
|
}
|
||||||
|
|
||||||
|
namespace ksys::act::ai {
|
||||||
|
|
||||||
|
class Behavior {
|
||||||
|
SEAD_RTTI_BASE(Behavior)
|
||||||
|
|
||||||
|
public:
|
||||||
|
struct InitArg {
|
||||||
|
Actor* actor;
|
||||||
|
/// The index of the behavior definition in the actor's AI program.
|
||||||
|
s32 def_idx;
|
||||||
|
};
|
||||||
|
KSYS_CHECK_SIZE_NX150(InitArg, 0x10);
|
||||||
|
|
||||||
|
explicit Behavior(const InitArg& arg);
|
||||||
|
virtual ~Behavior() = default;
|
||||||
|
|
||||||
|
virtual bool m4() { return false; }
|
||||||
|
virtual bool m5() { return false; }
|
||||||
|
virtual bool m6() { return true; }
|
||||||
|
virtual void m7() {}
|
||||||
|
virtual void m8() {}
|
||||||
|
virtual void m9() {}
|
||||||
|
virtual void m10() {}
|
||||||
|
virtual void m11() {}
|
||||||
|
virtual bool m12() { return true; }
|
||||||
|
virtual void m13() {}
|
||||||
|
|
||||||
|
protected:
|
||||||
|
Actor* mActor{};
|
||||||
|
u16 mDefIdx{};
|
||||||
|
u8 _12{};
|
||||||
|
u8 _13{};
|
||||||
|
void* _18{};
|
||||||
|
void* _20{};
|
||||||
|
};
|
||||||
|
KSYS_CHECK_SIZE_NX150(Behavior, 0x28);
|
||||||
|
|
||||||
|
} // namespace ksys::act::ai
|
Loading…
Reference in New Issue