From ddcd4664b70b8518228fccda3e8e954545c10345 Mon Sep 17 00:00:00 2001 From: Disquse Date: Thu, 11 Jan 2024 15:37:03 +0300 Subject: [PATCH] tweak(extra-natives/five): minor tweaks in player extra natives - Use `GetPlayerInfo` method instead of raw `playerInfo` accessor. - Remove unnecessary float checks + other minor code cleanups. --- .../extra-natives-five/src/PlayerNatives.cpp | 25 ++++++++----------- 1 file changed, 11 insertions(+), 14 deletions(-) diff --git a/code/components/extra-natives-five/src/PlayerNatives.cpp b/code/components/extra-natives-five/src/PlayerNatives.cpp index 526a7846e5..e00ebe7660 100644 --- a/code/components/extra-natives-five/src/PlayerNatives.cpp +++ b/code/components/extra-natives-five/src/PlayerNatives.cpp @@ -1,11 +1,11 @@ #include -#include +#include #include #include #include - #include +#include "EntitySystem.h" static int(*netInterface_GetNumPhysicalPlayers)(); static CNetGamePlayer** (*netInterface_GetAllPhysicalPlayers)(); @@ -29,7 +29,7 @@ static void* getAndCheckPlayerInfo(fx::ScriptContext& context) return nullptr; } - return player->playerInfo(); + return player->GetPlayerInfo(); } template @@ -119,15 +119,14 @@ static HookFunction hookFunction([]() { bool result = false; - void* playerInfo = getAndCheckPlayerInfo(context); - - if (playerInfo) + if (void* playerInfo = getAndCheckPlayerInfo(context)) { float newStamina = context.GetArgument(1); - float maxStamina = *((float*)((char*)playerInfo + PlayerMaxStaminaOffset)); - if (newStamina && newStamina <= maxStamina) + float maxStamina = *(float*)((char*)playerInfo + PlayerMaxStaminaOffset); + + if (newStamina <= maxStamina) { - *((float*)((char*)playerInfo + PlayerStaminaOffset)) = newStamina; + *(float*)((char*)playerInfo + PlayerStaminaOffset) = newStamina; result = true; } } @@ -139,14 +138,12 @@ static HookFunction hookFunction([]() { bool result = false; - void* playerInfo = getAndCheckPlayerInfo(context); - - if (playerInfo) + if (void* playerInfo = getAndCheckPlayerInfo(context)) { float newMaxStamina = context.GetArgument(1); - if (newMaxStamina && newMaxStamina > 0.0) + if (newMaxStamina > 0.0) { - *((float*)((char*)playerInfo + PlayerMaxStaminaOffset)) = newMaxStamina; + *(float*)((char*)playerInfo + PlayerMaxStaminaOffset) = newMaxStamina; result = true; } }