From 315ea05ba048cd4d43e332a797fddf34c882f5e8 Mon Sep 17 00:00:00 2001 From: fallenoak Date: Thu, 5 Feb 2026 16:56:44 -0600 Subject: [PATCH] feat(ui): implement Script_UnitXPMax --- src/ui/game/ScriptEvents.cpp | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/src/ui/game/ScriptEvents.cpp b/src/ui/game/ScriptEvents.cpp index 7139e84..7aa33f2 100644 --- a/src/ui/game/ScriptEvents.cpp +++ b/src/ui/game/ScriptEvents.cpp @@ -193,7 +193,23 @@ int32_t Script_UnitXP(lua_State* L) { } int32_t Script_UnitXPMax(lua_State* L) { - WHOA_UNIMPLEMENTED(0); + if (!lua_isstring(L, 1)) { + luaL_error(L, "Usage: UnitXPMax(\"unit\")"); + return 0; + } + + auto name = lua_tostring(L, 1); + auto unit = Script_GetUnitFromName(name); + + float xpMax = 0.0f; + + if (unit && unit->IsA(TYPE_PLAYER)) { + xpMax = static_cast(unit)->GetActiveNextLevelXP(); + } + + lua_pushnumber(L, xpMax); + + return 1; } int32_t Script_UnitHealth(lua_State* L) {