|
|
@@ -292,27 +292,112 @@ int lua_Image_static_create(lua_State* state)
|
|
|
{
|
|
|
case 1:
|
|
|
{
|
|
|
- if ((lua_type(state, 1) == LUA_TSTRING || lua_type(state, 1) == LUA_TNIL))
|
|
|
+ do
|
|
|
{
|
|
|
- // Get parameter 1 off the stack.
|
|
|
- const char* param1 = gameplay::ScriptUtil::getString(1, false);
|
|
|
-
|
|
|
- void* returnPtr = (void*)Image::create(param1);
|
|
|
- if (returnPtr)
|
|
|
+ if ((lua_type(state, 1) == LUA_TSTRING || lua_type(state, 1) == LUA_TNIL))
|
|
|
{
|
|
|
- gameplay::ScriptUtil::LuaObject* object = (gameplay::ScriptUtil::LuaObject*)lua_newuserdata(state, sizeof(gameplay::ScriptUtil::LuaObject));
|
|
|
- object->instance = returnPtr;
|
|
|
- object->owns = true;
|
|
|
- luaL_getmetatable(state, "Image");
|
|
|
- lua_setmetatable(state, -2);
|
|
|
+ // Get parameter 1 off the stack.
|
|
|
+ const char* param1 = gameplay::ScriptUtil::getString(1, false);
|
|
|
+
|
|
|
+ void* returnPtr = (void*)Image::create(param1);
|
|
|
+ if (returnPtr)
|
|
|
+ {
|
|
|
+ gameplay::ScriptUtil::LuaObject* object = (gameplay::ScriptUtil::LuaObject*)lua_newuserdata(state, sizeof(gameplay::ScriptUtil::LuaObject));
|
|
|
+ object->instance = returnPtr;
|
|
|
+ object->owns = true;
|
|
|
+ luaL_getmetatable(state, "Image");
|
|
|
+ lua_setmetatable(state, -2);
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ lua_pushnil(state);
|
|
|
+ }
|
|
|
+
|
|
|
+ return 1;
|
|
|
}
|
|
|
- else
|
|
|
+ } while (0);
|
|
|
+
|
|
|
+ lua_pushstring(state, "lua_Image_static_create - Failed to match the given parameters to a valid function signature.");
|
|
|
+ lua_error(state);
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ case 3:
|
|
|
+ {
|
|
|
+ do
|
|
|
+ {
|
|
|
+ if (lua_type(state, 1) == LUA_TNUMBER &&
|
|
|
+ lua_type(state, 2) == LUA_TNUMBER &&
|
|
|
+ (lua_type(state, 3) == LUA_TSTRING || lua_type(state, 3) == LUA_TNIL))
|
|
|
{
|
|
|
- lua_pushnil(state);
|
|
|
+ // Get parameter 1 off the stack.
|
|
|
+ unsigned int param1 = (unsigned int)luaL_checkunsigned(state, 1);
|
|
|
+
|
|
|
+ // Get parameter 2 off the stack.
|
|
|
+ unsigned int param2 = (unsigned int)luaL_checkunsigned(state, 2);
|
|
|
+
|
|
|
+ // Get parameter 3 off the stack.
|
|
|
+ Image::Format param3 = (Image::Format)lua_enumFromString_ImageFormat(luaL_checkstring(state, 3));
|
|
|
+
|
|
|
+ void* returnPtr = (void*)Image::create(param1, param2, param3);
|
|
|
+ if (returnPtr)
|
|
|
+ {
|
|
|
+ gameplay::ScriptUtil::LuaObject* object = (gameplay::ScriptUtil::LuaObject*)lua_newuserdata(state, sizeof(gameplay::ScriptUtil::LuaObject));
|
|
|
+ object->instance = returnPtr;
|
|
|
+ object->owns = true;
|
|
|
+ luaL_getmetatable(state, "Image");
|
|
|
+ lua_setmetatable(state, -2);
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ lua_pushnil(state);
|
|
|
+ }
|
|
|
+
|
|
|
+ return 1;
|
|
|
}
|
|
|
+ } while (0);
|
|
|
|
|
|
- return 1;
|
|
|
- }
|
|
|
+ lua_pushstring(state, "lua_Image_static_create - Failed to match the given parameters to a valid function signature.");
|
|
|
+ lua_error(state);
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ case 4:
|
|
|
+ {
|
|
|
+ do
|
|
|
+ {
|
|
|
+ if (lua_type(state, 1) == LUA_TNUMBER &&
|
|
|
+ lua_type(state, 2) == LUA_TNUMBER &&
|
|
|
+ (lua_type(state, 3) == LUA_TSTRING || lua_type(state, 3) == LUA_TNIL) &&
|
|
|
+ (lua_type(state, 4) == LUA_TTABLE || lua_type(state, 4) == LUA_TLIGHTUSERDATA))
|
|
|
+ {
|
|
|
+ // Get parameter 1 off the stack.
|
|
|
+ unsigned int param1 = (unsigned int)luaL_checkunsigned(state, 1);
|
|
|
+
|
|
|
+ // Get parameter 2 off the stack.
|
|
|
+ unsigned int param2 = (unsigned int)luaL_checkunsigned(state, 2);
|
|
|
+
|
|
|
+ // Get parameter 3 off the stack.
|
|
|
+ Image::Format param3 = (Image::Format)lua_enumFromString_ImageFormat(luaL_checkstring(state, 3));
|
|
|
+
|
|
|
+ // Get parameter 4 off the stack.
|
|
|
+ gameplay::ScriptUtil::LuaArray<unsigned char> param4 = gameplay::ScriptUtil::getUnsignedCharPointer(4);
|
|
|
+
|
|
|
+ void* returnPtr = (void*)Image::create(param1, param2, param3, param4);
|
|
|
+ if (returnPtr)
|
|
|
+ {
|
|
|
+ gameplay::ScriptUtil::LuaObject* object = (gameplay::ScriptUtil::LuaObject*)lua_newuserdata(state, sizeof(gameplay::ScriptUtil::LuaObject));
|
|
|
+ object->instance = returnPtr;
|
|
|
+ object->owns = true;
|
|
|
+ luaL_getmetatable(state, "Image");
|
|
|
+ lua_setmetatable(state, -2);
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ lua_pushnil(state);
|
|
|
+ }
|
|
|
+
|
|
|
+ return 1;
|
|
|
+ }
|
|
|
+ } while (0);
|
|
|
|
|
|
lua_pushstring(state, "lua_Image_static_create - Failed to match the given parameters to a valid function signature.");
|
|
|
lua_error(state);
|
|
|
@@ -320,7 +405,7 @@ int lua_Image_static_create(lua_State* state)
|
|
|
}
|
|
|
default:
|
|
|
{
|
|
|
- lua_pushstring(state, "Invalid number of parameters (expected 1).");
|
|
|
+ lua_pushstring(state, "Invalid number of parameters (expected 1, 3 or 4).");
|
|
|
lua_error(state);
|
|
|
break;
|
|
|
}
|