diff --git a/src/ui/game/ScriptEvents.cpp b/src/ui/game/ScriptEvents.cpp index f58cce5..7139e84 100644 --- a/src/ui/game/ScriptEvents.cpp +++ b/src/ui/game/ScriptEvents.cpp @@ -173,7 +173,23 @@ int32_t Script_UnitPVPName(lua_State* L) { } int32_t Script_UnitXP(lua_State* L) { - WHOA_UNIMPLEMENTED(0); + if (!lua_isstring(L, 1)) { + luaL_error(L, "Usage: UnitXP(\"unit\")"); + return 0; + } + + auto name = lua_tostring(L, 1); + auto unit = Script_GetUnitFromName(name); + + float xp = 0.0f; + + if (unit && unit->IsA(TYPE_PLAYER)) { + xp = static_cast(unit)->GetActiveXP(); + } + + lua_pushnumber(L, xp); + + return 1; } int32_t Script_UnitXPMax(lua_State* L) {