summaryrefslogtreecommitdiff
path: root/src/scripting/luautil.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/scripting/luautil.cpp')
-rw-r--r--src/scripting/luautil.cpp12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/scripting/luautil.cpp b/src/scripting/luautil.cpp
index 7dd2b199..8d166469 100644
--- a/src/scripting/luautil.cpp
+++ b/src/scripting/luautil.cpp
@@ -237,6 +237,18 @@ AbilityManager::AbilityInfo *checkAbility(lua_State *s, int p)
return abilityInfo;
}
+const AttributeManager::AttributeInfo *checkAttribute(lua_State *s, int p)
+{
+ const AttributeManager::AttributeInfo *attributeInfo;
+ if (lua_isnumber(s, p))
+ attributeInfo = attributeManager->getAttributeInfo(luaL_checkint(s, p));
+ else
+ attributeInfo = attributeManager->getAttributeInfo(luaL_checkstring(s, p));
+
+ luaL_argcheck(s, attributeInfo != nullptr, p, "invalid attribute");
+ return attributeInfo;
+}
+
unsigned char checkWalkMask(lua_State *s, int p)
{
const char *stringMask = luaL_checkstring(s, p);