void convert_arg(lua_State* L, luacpp::LuaValueList& out, object* objp)
{
	LuaValue val;
	ade_set_object_with_breed(L, OBJ_INDEX(objp));
	convert::popValue(L, val);

	out.push_back(val);
}
Example #2
0
void script_state::SetHookObjects(int num, ...)
{
	va_list vl;
	va_start(vl, num);
	if (this->OpenHookVarTable())
	{
		int amt_ldx = lua_gettop(LuaState);
		for (int i = 0; i < num; i++)
		{
			char *name = va_arg(vl, char*);
			object *objp = va_arg(vl, object*);

			ade_set_object_with_breed(LuaState, OBJ_INDEX(objp));
			int data_ldx = lua_gettop(LuaState);

			lua_pushstring(LuaState, name);
			lua_pushvalue(LuaState, data_ldx);
			lua_rawset(LuaState, amt_ldx);

			lua_pop(LuaState, 1);	//data_ldx
		}
		this->CloseHookVarTable();
	}