mirror of https://github.com/zeldaret/botw.git
uking: Implement GameDataAddInt action
This commit is contained in:
parent
8301cb80a6
commit
f621d136c0
|
|
@ -9825,7 +9825,7 @@
|
|||
0x0000007100170b64,_ZN5uking6action14GameDataAddIntD1Ev,20,_ZN5uking6action14GameDataAddIntD1Ev
|
||||
0x0000007100170b78,_ZN5uking6action14GameDataAddIntD0Ev,52,_ZN5uking6action14GameDataAddIntD0Ev
|
||||
0x0000007100170bac,_ZN5uking6action14GameDataAddInt5init_EPN4sead4HeapE,8,_ZN5uking6action14GameDataAddInt5init_EPN4sead4HeapE
|
||||
0x0000007100170bb4,_ZN5uking6action14GameDataAddInt8oneShot_Ev,184,
|
||||
0x0000007100170bb4,_ZN5uking6action14GameDataAddInt8oneShot_Ev,184,_ZN5uking6action14GameDataAddInt8oneShot_Ev
|
||||
0x0000007100170c6c,_ZN5uking6action14GameDataAddInt11loadParams_Ev,208,_ZN5uking6action14GameDataAddInt11loadParams_Ev
|
||||
0x0000007100170d3c,_ZNK5uking6action14GameDataAddInt27checkDerivedRuntimeTypeInfoEPKN4sead15RuntimeTypeInfo9InterfaceE,288,_ZNK5uking6action14GameDataAddInt27checkDerivedRuntimeTypeInfoEPKN4sead15RuntimeTypeInfo9InterfaceE
|
||||
0x0000007100170e5c,_ZNK5uking6action14GameDataAddInt18getRuntimeTypeInfoEv,92,_ZNK5uking6action14GameDataAddInt18getRuntimeTypeInfoEv
|
||||
|
|
@ -76035,7 +76035,7 @@
|
|||
0x0000007100dd2184,sub_7100DD2184,172,
|
||||
0x0000007100dd2230,sub_7100DD2230,164,
|
||||
0x0000007100dd22d4,sub_7100DD22D4,184,
|
||||
0x0000007100dd238c,GameDataMgr::setIntByKey,164,
|
||||
0x0000007100dd238c,GameDataMgr::setIntByKey,164,_ZN4ksys3gdt7Manager6setS32EiRKN4sead14SafeStringBaseIcEE
|
||||
0x0000007100dd2430,GameDataMgr::setFloatByKey,172,_ZN4ksys3gdt7Manager6setF32EfRKN4sead14SafeStringBaseIcEE
|
||||
0x0000007100dd24dc,GameDataMgr::setString32ByKey,164,
|
||||
0x0000007100dd2580,GameDataMgr::setString64ByKey,164,
|
||||
|
|
|
|||
|
Can't render this file because it is too large.
|
|
|
@ -1,4 +1,5 @@
|
|||
#include "Game/AI/Action/actionGameDataAddInt.h"
|
||||
#include "KingSystem/GameData/gdtManager.h"
|
||||
|
||||
namespace uking::action {
|
||||
|
||||
|
|
@ -10,6 +11,25 @@ bool GameDataAddInt::init_(sead::Heap* heap) {
|
|||
return ksys::act::ai::Action::init_(heap);
|
||||
}
|
||||
|
||||
bool GameDataAddInt::oneShot_() {
|
||||
auto* gdm = ksys::gdt::Manager::instance();
|
||||
if (!gdm) {
|
||||
setFailed();
|
||||
mFlags.set(Flag::_4);
|
||||
return false;
|
||||
}
|
||||
|
||||
s32 src = 0;
|
||||
s32 dst = 0;
|
||||
if (gdm->getParam().get().getS32(&src, mGameDataIntSrcName_d)) {
|
||||
if (gdm->getParam().get().getS32(&dst, mGameDataIntDstName_d))
|
||||
src += dst;
|
||||
gdm->setS32(src, mGameDataIntToName_d);
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
void GameDataAddInt::loadParams_() {
|
||||
getDynamicParam(&mGameDataIntSrcName_d, "GameDataIntSrcName");
|
||||
getDynamicParam(&mGameDataIntDstName_d, "GameDataIntDstName");
|
||||
|
|
|
|||
|
|
@ -10,6 +10,7 @@ public:
|
|||
explicit GameDataAddInt(const InitArg& arg);
|
||||
~GameDataAddInt() override;
|
||||
|
||||
bool oneShot_() override;
|
||||
bool init_(sead::Heap* heap) override;
|
||||
void loadParams_() override;
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue