From 94999b181278fed67390dfd81616fc7ef28b340e Mon Sep 17 00:00:00 2001 From: Soda Can Date: Tue, 10 Mar 2026 15:04:38 +1100 Subject: [PATCH] edited sdk to add new function: GetPlayerX, GetPlayerY, GetPlayerZ and GetPlayerPos Call GetPlayerPos like this and get output PlayerPos pos = SDK::GetPlayerPos(); SDK::Log(L"X: " + std::to_wstring(pos.x)); SDK::Log(L"Y: " + std::to_wstring(pos.y)); SDK::Log(L"Z: " + std::to_wstring(pos.z)); Call GetPlayerX or Y or Z like this and get output double x = SDK::GetPlayerX(); double y = SDK::GetPlayerY(); double z = SDK::GetPlayerZ(); --- .gitignore | 3 +++ Minecraft.Client/SDK.cpp | 27 +++++++++++++++++++++++++++ Minecraft.Client/SDK.h | 10 ++++++++++ 3 files changed, 40 insertions(+) diff --git a/.gitignore b/.gitignore index 31ca979b..34d77f6a 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,6 @@ +# Visual Studio directory +.vs/ + # Visual Studio databases *.VC.db diff --git a/Minecraft.Client/SDK.cpp b/Minecraft.Client/SDK.cpp index 1b520547..77fd64ec 100644 --- a/Minecraft.Client/SDK.cpp +++ b/Minecraft.Client/SDK.cpp @@ -85,6 +85,33 @@ MultiplayerLocalPlayer* SDK::GetLocalPlayer() { return mc->localplayers[currentIdx].get(); } + + +// ============================================================================ +// Player Pos +// ============================================================================ + +double SDK::GetPlayerX(int index) { + MultiplayerLocalPlayer* p = GetLocalPlayer(index); + return p ? p->x : 0.0; +} + +double SDK::GetPlayerY(int index) { + MultiplayerLocalPlayer* p = GetLocalPlayer(index); + return p ? p->y : 0.0; +} + +double SDK::GetPlayerZ(int index) { + MultiplayerLocalPlayer* p = GetLocalPlayer(index); + return p ? p->z : 0.0; +} + +PlayerPos SDK::GetPlayerPos(int index) { + MultiplayerLocalPlayer* p = GetLocalPlayer(index); + if (!p) return { 0.0, 0.0, 0.0 }; + return { p->x, p->y, p->z }; +} + // ============================================================================ // Messaging // ============================================================================ diff --git a/Minecraft.Client/SDK.h b/Minecraft.Client/SDK.h index fe9c640f..dd3585e7 100644 --- a/Minecraft.Client/SDK.h +++ b/Minecraft.Client/SDK.h @@ -12,6 +12,10 @@ class PlayerList; class ServerPlayer; class MultiplayerLocalPlayer; +struct PlayerPos { + double x, y, z; +}; + namespace SDK { // Logging MODAPI void Log(const std::wstring& message); @@ -32,6 +36,12 @@ namespace SDK { MODAPI MultiplayerLocalPlayer* GetLocalPlayer(int index); MODAPI MultiplayerLocalPlayer* GetLocalPlayer(); + // Player Pos + MODAPI double GetPlayerX(int index = 0); + MODAPI double GetPlayerY(int index = 0); + MODAPI double GetPlayerZ(int index = 0); + MODAPI PlayerPos GetPlayerPos(int index = 0); + // Messaging MODAPI void BroadcastMessage(const std::wstring& message); MODAPI void SendMessageToPlayer(const std::wstring& playerName, const std::wstring& message);