static int tolua_Attack_Attack_new00_local(lua_State* tolua_S) { #ifndef TOLUA_RELEASE tolua_Error tolua_err; if ( !tolua_isusertable(tolua_S,1,"Attack",0,&tolua_err) || !tolua_iscppstring(tolua_S,2,0,&tolua_err) || !tolua_iscppstring(tolua_S,3,0,&tolua_err) || !tolua_isnumber(tolua_S,4,0,&tolua_err) || !tolua_isnoobj(tolua_S,5,&tolua_err) ) goto tolua_lerror; else #endif { std::string name = ((std::string) tolua_tocppstring(tolua_S,2,0)); std::string pattern = ((std::string) tolua_tocppstring(tolua_S,3,0)); int damage = ((int) tolua_tonumber(tolua_S,4,0)); { Attack* tolua_ret = (Attack*) Mtolua_new((Attack)(name,pattern,damage)); tolua_pushusertype(tolua_S,(void*)tolua_ret,"Attack"); tolua_register_gc(tolua_S,lua_gettop(tolua_S)); } } return 1; #ifndef TOLUA_RELEASE tolua_lerror: tolua_error(tolua_S,"#ferror in function 'new'.",&tolua_err); return 0; #endif }
static int tolua_lok_ok_new00_local(lua_State* tolua_S) { #ifndef TOLUA_RELEASE tolua_Error tolua_err; if ( !tolua_isusertable(tolua_S,1,"ok",0,&tolua_err) || !tolua_isnoobj(tolua_S,2,&tolua_err) ) goto tolua_lerror; else #endif { { ok* tolua_ret = (ok*) Mtolua_new((ok)()); tolua_pushusertype(tolua_S,(void*)tolua_ret,"ok"); tolua_register_gc(tolua_S,lua_gettop(tolua_S)); } } return 1; #ifndef TOLUA_RELEASE tolua_lerror: tolua_error(tolua_S,"#ferror in function 'new'.",&tolua_err); return 0; #endif }
static int tolua_tfunction_TestClass_new00_local(lua_State* tolua_S) { #ifndef TOLUA_RELEASE tolua_Error tolua_err; if ( !tolua_isusertable(tolua_S,1,"TestClass",0,&tolua_err) || !tolua_isnumber(tolua_S,2,1,&tolua_err) || !tolua_isnumber(tolua_S,3,1,&tolua_err) || !tolua_isnumber(tolua_S,4,1,&tolua_err) || !tolua_isnoobj(tolua_S,5,&tolua_err) ) goto tolua_lerror; else #endif { float cr = ((float) tolua_tonumber(tolua_S,2,0.0f)); float cg = ((float) tolua_tonumber(tolua_S,3,0.0f)); float cb = ((float) tolua_tonumber(tolua_S,4,0.0f)); { TestClass* tolua_ret = (TestClass*) Mtolua_new((TestClass)(cr,cg,cb)); tolua_pushusertype(tolua_S,(void*)tolua_ret,"TestClass"); tolua_register_gc(tolua_S,lua_gettop(tolua_S)); } } return 1; #ifndef TOLUA_RELEASE tolua_lerror: tolua_error(tolua_S,"#ferror in function 'new'.",&tolua_err); return 0; #endif }
static int tolua_lua_cocos2dx_userext_AnimationController_new00_local(lua_State* tolua_S) { #ifndef TOLUA_RELEASE tolua_Error tolua_err; if ( !tolua_isusertable(tolua_S,1,"AnimationController",0,&tolua_err) || !tolua_isnoobj(tolua_S,2,&tolua_err) ) goto tolua_lerror; else #endif { { AnimationController* tolua_ret = (AnimationController*) Mtolua_new((AnimationController)()); tolua_pushusertype(tolua_S,(void*)tolua_ret,"AnimationController"); tolua_register_gc(tolua_S,lua_gettop(tolua_S)); } } return 1; #ifndef TOLUA_RELEASE tolua_lerror: tolua_error(tolua_S,"#ferror in function 'new'.",&tolua_err); return 0; #endif }
static int tolua_Attack_Attack_new01_local(lua_State* tolua_S) { tolua_Error tolua_err; if ( !tolua_isusertable(tolua_S,1,"Attack",0,&tolua_err) || !tolua_iscppstring(tolua_S,2,0,&tolua_err) || !tolua_isnumber(tolua_S,3,0,&tolua_err) || !tolua_isnumber(tolua_S,4,0,&tolua_err) || !tolua_isnoobj(tolua_S,5,&tolua_err) ) goto tolua_lerror; else { std::string pattern = ((std::string) tolua_tocppstring(tolua_S,2,0)); int damage = ((int) tolua_tonumber(tolua_S,3,0)); int damageBonus = ((int) tolua_tonumber(tolua_S,4,0)); { Attack* tolua_ret = (Attack*) Mtolua_new((Attack)(pattern,damage,damageBonus)); tolua_pushusertype(tolua_S,(void*)tolua_ret,"Attack"); tolua_register_gc(tolua_S,lua_gettop(tolua_S)); } } return 1; tolua_lerror: return tolua_Attack_Attack_new00_local(tolua_S); }
template<typename T> int tolua_pushurho3dpodvectorusertype(lua_State* L, const PODVector<T>& vector, const char* typeName) { lua_newtable(L); for (unsigned i = 0; i < vector.Size(); ++i) { void* tolua_obj = Mtolua_new((T)(vector[i])); tolua_pushusertype(L, tolua_obj, typeName); tolua_register_gc(L,lua_gettop(L)); lua_rawseti(L, -2, i + 1); } return 1; }
static int tolua_GUID_CGUID_new01(lua_State* tolua_S) { tolua_Error tolua_err; if ( !tolua_isusertable(tolua_S,1,"CGUID",0,&tolua_err) || !tolua_isstring(tolua_S,2,0,&tolua_err) || !tolua_isnoobj(tolua_S,3,&tolua_err) ) goto tolua_lerror; else { const char* str = ((const char*) tolua_tostring(tolua_S,2,0)); { CGUID* tolua_ret = (CGUID*) Mtolua_new((CGUID)(str)); tolua_pushusertype(tolua_S,(void*)tolua_ret,"CGUID"); } } return 1; tolua_lerror: return tolua_GUID_CGUID_new00(tolua_S); }
static int tolua_HeroControl_PH_HeroControl_getColor00(lua_State* tolua_S) { #ifndef TOLUA_RELEASE tolua_Error tolua_err; if ( !tolua_isusertype(tolua_S,1,"PH::HeroControl",0,&tolua_err) || !tolua_isnoobj(tolua_S,2,&tolua_err) ) goto tolua_lerror; else #endif { PH::HeroControl* self = (PH::HeroControl*) tolua_tousertype(tolua_S,1,0); #ifndef TOLUA_RELEASE if (!self) tolua_error(tolua_S,"invalid 'self' in function 'getColor'", NULL); #endif { PH::GemUtils::GemColor tolua_ret = (PH::GemUtils::GemColor) self->getColor(); { #ifdef __cplusplus void* tolua_obj = Mtolua_new((PH::GemUtils::GemColor)(tolua_ret)); tolua_pushusertype(tolua_S,tolua_obj,"PH::GemUtils::GemColor"); tolua_register_gc(tolua_S,lua_gettop(tolua_S)); #else void* tolua_obj = tolua_copy(tolua_S,(void*)&tolua_ret,sizeof(PH::GemUtils::GemColor)); tolua_pushusertype(tolua_S,tolua_obj,"PH::GemUtils::GemColor"); tolua_register_gc(tolua_S,lua_gettop(tolua_S)); #endif } } } return 1; #ifndef TOLUA_RELEASE tolua_lerror: tolua_error(tolua_S,"#ferror in function 'getColor'.",&tolua_err); return 0; #endif }
static int tolua_tfunction_Role_new00(lua_State* tolua_S) { #ifndef TOLUA_RELEASE tolua_Error tolua_err; if ( !tolua_isusertable(tolua_S,1,"Role",0,&tolua_err) || !tolua_isnoobj(tolua_S,2,&tolua_err) ) goto tolua_lerror; else #endif { { Role* tolua_ret = (Role*) Mtolua_new((Role)()); tolua_pushusertype(tolua_S,(void*)tolua_ret,"Role"); } } return 1; #ifndef TOLUA_RELEASE tolua_lerror: tolua_error(tolua_S,"#ferror in function 'new'.",&tolua_err); return 0; #endif }
static int tolua_lua_cocos2dx_userext_LuaValueList_new00(lua_State* tolua_S) { #ifndef TOLUA_RELEASE tolua_Error tolua_err; if ( !tolua_isusertable(tolua_S,1,"LuaValueList",0,&tolua_err) || !tolua_isnoobj(tolua_S,2,&tolua_err) ) goto tolua_lerror; else #endif { { LuaValueList* tolua_ret = (LuaValueList*) Mtolua_new((LuaValueList)()); tolua_pushusertype(tolua_S,(void*)tolua_ret,"LuaValueList"); } } return 1; #ifndef TOLUA_RELEASE tolua_lerror: tolua_error(tolua_S,"#ferror in function 'new'.",&tolua_err); return 0; #endif }
void ToluaPushVariant(lua_State* L, const Variant* variant, const char* type) { String typeName(type); switch (variant->GetType()) { case VAR_INT: if (typeName == "unsigned" || typeName == "unsigned int" || typeName == "UInt" || typeName == "uint") tolua_pushnumber(L, (lua_Number)variant->GetUInt()); else if (typeName == "StringHash") { // Make a new local copy tolua_pushusertype(L, Mtolua_new(StringHash(variant->GetStringHash())), "StringHash"); tolua_register_gc(L, lua_gettop(L)); } else tolua_pushnumber(L, (lua_Number)variant->GetInt()); break; case VAR_BOOL: tolua_pushboolean(L, (int)variant->GetBool()); break; case VAR_FLOAT: tolua_pushnumber(L, (lua_Number)variant->GetFloat()); break; case VAR_DOUBLE: tolua_pushnumber(L, (lua_Number)variant->GetDouble()); break; case VAR_VECTOR2: case VAR_VECTOR3: case VAR_VECTOR4: case VAR_QUATERNION: case VAR_COLOR: case VAR_RESOURCEREF: case VAR_RESOURCEREFLIST: case VAR_VARIANTMAP: case VAR_INTRECT: case VAR_INTVECTOR2: tolua_pushusertype(L, (void*)variant->Get<const VariantValue*>(), variant->GetTypeName().CString()); break; case VAR_STRING: tolua_pushurho3dstring(L, variant->GetString()); break; case VAR_BUFFER: if (typeName == "VectorBuffer") { tolua_pushusertype(L, Mtolua_new(VectorBuffer(variant->GetVectorBuffer())), "VectorBuffer"); tolua_register_gc(L, lua_gettop(L)); } else ToluaPushPODVector<unsigned char>(0.f, L, (void*)&variant->GetBuffer(), "unsigned char"); break; case VAR_VOIDPTR: ToluaPushRegisteredUserType(L, static_cast<void*>(variant->GetVoidPtr()), type); break; case VAR_PTR: ToluaPushRegisteredUserType(L, static_cast<void*>(variant->GetPtr()), type); break; case VAR_VARIANTVECTOR: ToluaPushVector<Variant>(L, (void*)&variant->GetVariantVector(), "Variant"); break; case VAR_STRINGVECTOR: ToluaPushVector<String>(L, (void*)&variant->GetStringVector(), "String"); break; case VAR_MATRIX3: case VAR_MATRIX3X4: case VAR_MATRIX4: tolua_pushusertype(L, variant->Get<const VariantValue*>()->ptr_, variant->GetTypeName().CString()); break; default: lua_pushnil(L); break; } }