From c874ffc6b6ddd7b21cfac79c822596af3e65f965 Mon Sep 17 00:00:00 2001 From: Kelsi Date: Mon, 23 Mar 2026 03:37:18 -0700 Subject: [PATCH] feat: add player commands (helm/cloak toggle, PvP, minimap ping, /played) ShowHelm() / ShowCloak() toggle helm/cloak visibility. TogglePVP() toggles PvP flag. Minimap_Ping(x, y) sends a minimap ping to the group. RequestTimePlayed() requests /played data from server. All backed by existing GameHandler methods. --- src/addons/lua_engine.cpp | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/src/addons/lua_engine.cpp b/src/addons/lua_engine.cpp index 0e5a08c2..5f5ca517 100644 --- a/src/addons/lua_engine.cpp +++ b/src/addons/lua_engine.cpp @@ -5182,6 +5182,34 @@ void LuaEngine::registerCoreAPI() { if (gh) gh->requestPvpLog(); return 0; }}, + // --- Player Commands --- + {"ShowHelm", [](lua_State* L) -> int { + auto* gh = getGameHandler(L); + if (gh) gh->toggleHelm(); // Toggles helm visibility + return 0; + }}, + {"ShowCloak", [](lua_State* L) -> int { + auto* gh = getGameHandler(L); + if (gh) gh->toggleCloak(); + return 0; + }}, + {"TogglePVP", [](lua_State* L) -> int { + auto* gh = getGameHandler(L); + if (gh) gh->togglePvp(); + return 0; + }}, + {"Minimap_Ping", [](lua_State* L) -> int { + auto* gh = getGameHandler(L); + float x = static_cast(luaL_optnumber(L, 1, 0)); + float y = static_cast(luaL_optnumber(L, 2, 0)); + if (gh) gh->sendMinimapPing(x, y); + return 0; + }}, + {"RequestTimePlayed", [](lua_State* L) -> int { + auto* gh = getGameHandler(L); + if (gh) gh->requestPlayedTime(); + return 0; + }}, // --- Chat Channels --- {"JoinChannelByName", [](lua_State* L) -> int { auto* gh = getGameHandler(L);