summaryrefslogtreecommitdiff
path: root/src/Game/AI/Query/queryComparePlayerOriginalHeart.cpp
diff options
context:
space:
mode:
authortheo3 <arisstephenson2@gmail.com>2021-07-01 19:28:09 -0700
committertheo3 <arisstephenson2@gmail.com>2021-07-01 21:05:10 -0700
commit60dd80779a92120c74e7bda9e1ccf2695e2c7c19 (patch)
tree4d76dc03072740a41634893a9062d6a7e4626f68 /src/Game/AI/Query/queryComparePlayerOriginalHeart.cpp
parent112c1f987d3831df97f46c0f9e4ae977fba59484 (diff)
match some ai::Query
Diffstat (limited to 'src/Game/AI/Query/queryComparePlayerOriginalHeart.cpp')
-rw-r--r--src/Game/AI/Query/queryComparePlayerOriginalHeart.cpp16
1 files changed, 14 insertions, 2 deletions
diff --git a/src/Game/AI/Query/queryComparePlayerOriginalHeart.cpp b/src/Game/AI/Query/queryComparePlayerOriginalHeart.cpp
index 8c0422dd..a107699a 100644
--- a/src/Game/AI/Query/queryComparePlayerOriginalHeart.cpp
+++ b/src/Game/AI/Query/queryComparePlayerOriginalHeart.cpp
@@ -1,5 +1,6 @@
#include "Game/AI/Query/queryComparePlayerOriginalHeart.h"
#include <evfl/Query.h>
+#include "KingSystem/ActorSystem/actPlayerInfo.h"
namespace uking::query {
@@ -8,9 +9,20 @@ ComparePlayerOriginalHeart::ComparePlayerOriginalHeart(const InitArg& arg)
ComparePlayerOriginalHeart::~ComparePlayerOriginalHeart() = default;
-// FIXME: implement
int ComparePlayerOriginalHeart::doQuery() {
- return -1;
+ using PlayerInfo = ksys::act::PlayerInfo;
+
+ if (PlayerInfo::instance() == nullptr)
+ return 0;
+
+ s32 life = PlayerInfo::instance()->getLife();
+ s32 hearts = PlayerInfo::instance()->getMaxHearts();
+ s32 compare;
+ if (life <= hearts)
+ compare = life;
+ else
+ compare = hearts;
+ return compare >= *mThreshold;
}
void ComparePlayerOriginalHeart::loadParams(const evfl::QueryArg& arg) {