mirror of https://github.com/zeldaret/botw.git
uking: Implement GameDataAddVec3 action
This commit is contained in:
parent
f621d136c0
commit
cb33d236a3
|
@ -9833,7 +9833,7 @@
|
|||
0x0000007100170f08,_ZN5uking6action15GameDataAddVec3D1Ev,20,_ZN5uking6action15GameDataAddVec3D1Ev
|
||||
0x0000007100170f1c,_ZN5uking6action15GameDataAddVec3D0Ev,52,_ZN5uking6action15GameDataAddVec3D0Ev
|
||||
0x0000007100170f50,_ZN5uking6action15GameDataAddVec35init_EPN4sead4HeapE,8,_ZN5uking6action15GameDataAddVec35init_EPN4sead4HeapE
|
||||
0x0000007100170f58,_ZN5uking6action15GameDataAddVec38oneShot_Ev,252,
|
||||
0x0000007100170f58,_ZN5uking6action15GameDataAddVec38oneShot_Ev,252,_ZN5uking6action15GameDataAddVec38oneShot_Ev
|
||||
0x0000007100171054,_ZN5uking6action15GameDataAddVec311loadParams_Ev,208,_ZN5uking6action15GameDataAddVec311loadParams_Ev
|
||||
0x0000007100171124,_ZNK5uking6action15GameDataAddVec327checkDerivedRuntimeTypeInfoEPKN4sead15RuntimeTypeInfo9InterfaceE,288,_ZNK5uking6action15GameDataAddVec327checkDerivedRuntimeTypeInfoEPKN4sead15RuntimeTypeInfo9InterfaceE
|
||||
0x0000007100171244,_ZNK5uking6action15GameDataAddVec318getRuntimeTypeInfoEv,92,_ZNK5uking6action15GameDataAddVec318getRuntimeTypeInfoEv
|
||||
|
@ -76039,7 +76039,7 @@
|
|||
0x0000007100dd2430,GameDataMgr::setFloatByKey,172,_ZN4ksys3gdt7Manager6setF32EfRKN4sead14SafeStringBaseIcEE
|
||||
0x0000007100dd24dc,GameDataMgr::setString32ByKey,164,
|
||||
0x0000007100dd2580,GameDataMgr::setString64ByKey,164,
|
||||
0x0000007100dd2624,GameDataMgr::setVec3ByKey,164,
|
||||
0x0000007100dd2624,GameDataMgr::setVec3ByKey,164,_ZN4ksys3gdt7Manager8setVec3fERKN4sead7Vector3IfEERKNS2_14SafeStringBaseIcEE
|
||||
0x0000007100dd26c8,GameDataMgr::setBoolInArrayByKey,184,
|
||||
0x0000007100dd2780,GameDataMgr::__auto3,184,
|
||||
0x0000007100dd2838,sub_7100DD2838,184,
|
||||
|
|
Can't render this file because it is too large.
|
|
@ -1,4 +1,5 @@
|
|||
#include "Game/AI/Action/actionGameDataAddVec3.h"
|
||||
#include "KingSystem/GameData/gdtManager.h"
|
||||
|
||||
namespace uking::action {
|
||||
|
||||
|
@ -10,6 +11,28 @@ bool GameDataAddVec3::init_(sead::Heap* heap) {
|
|||
return ksys::act::ai::Action::init_(heap);
|
||||
}
|
||||
|
||||
bool GameDataAddVec3::oneShot_() {
|
||||
auto* gdm = ksys::gdt::Manager::instance();
|
||||
if (!gdm) {
|
||||
setFailed();
|
||||
mFlags.set(Flag::_4);
|
||||
return false;
|
||||
}
|
||||
|
||||
auto src = sead::Vector3f::zero;
|
||||
auto dst = sead::Vector3f::zero;
|
||||
if (gdm->getParam().get().getVec3f(&src, mGameDataVec3fSrcName_d)) {
|
||||
if (gdm->getParam().get().getVec3f(&dst, mGameDataVec3fDstName_d)) {
|
||||
src.x = src.x + dst.x;
|
||||
src.y = src.y + dst.y;
|
||||
src.z = src.z + dst.z;
|
||||
}
|
||||
gdm->setVec3f(src, mGameDataVec3fToName_d);
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
void GameDataAddVec3::loadParams_() {
|
||||
getDynamicParam(&mGameDataVec3fSrcName_d, "GameDataVec3fSrcName");
|
||||
getDynamicParam(&mGameDataVec3fDstName_d, "GameDataVec3fDstName");
|
||||
|
|
|
@ -11,6 +11,7 @@ public:
|
|||
~GameDataAddVec3() override;
|
||||
|
||||
bool init_(sead::Heap* heap) override;
|
||||
bool oneShot_() override;
|
||||
void loadParams_() override;
|
||||
|
||||
protected:
|
||||
|
|
Loading…
Reference in New Issue