local ClassInfo = {} ClassInfo[ "scene_manager" ] = { ['save'] = false } ClassInfo[ "predicted_viewmodel" ] = { ['save'] = false } ClassInfo[ "player" ] = { ['save'] = false } ClassInfo[ "physgun_beam" ] = { ['save'] = false } ClassInfo[ "worldspawn" ] = { ['save'] = false } ClassInfo[ "player_manager" ] = { ['save'] = false } ClassInfo[ "bodyque" ] = { ['save'] = false } ClassInfo[ "info_player_start" ] = { ['save'] = false } ClassInfo[ "ai_hint" ] = { ['save'] = false } ClassInfo[ "ai_network" ] = { ['save'] = false } ClassInfo[ "light" ] = { ['save'] = false } ClassInfo[ "ai_network" ] = { ['save'] = false } ClassInfo[ "env_tonemap_controller" ] = { ['save'] = false } ClassInfo[ "path_corner" ] = { ['save'] = false } ClassInfo[ "point_spotlight" ] = { ['save'] = false } ClassInfo[ "func_brush" ] = { ['save'] = false } ClassInfo[ "water_lod_control" ] = { ['save'] = false } ClassInfo[ "spotlight_end" ] = { ['save'] = false } ClassInfo[ "beam" ] = { ['save'] = false } ClassInfo[ "lua_run" ] = { ['save'] = false } ClassInfo[ "trigger_multiple" ] = { ['save'] = false } ClassInfo[ "func_button" ] = { ['save'] = false } ClassInfo[ "soundent" ] = { ['save'] = false } ClassInfo[ "sky_camera" ] = { ['save'] = false } ClassInfo[ "env_fog_controller" ] = { ['save'] = false } ClassInfo[ "env_sun" ] = { ['save'] = false } ClassInfo[ "phys_constraintsystem" ] = { ['save'] = false } ClassInfo[ "keyframe_rope" ] = { ['save'] = false } ClassInfo[ "logic_auto" ] = { ['save'] = false } ClassInfo[ "physics_npc_solver" ] = { ['save'] = false } ClassInfo[ "env_sun" ] = { ['save'] = false } ClassInfo[ "env_wind" ] = { ['save'] = false } ClassInfo[ "env_fog_controller" ] = { ['save'] = false } ClassInfo[ "infodecal" ] = { ['save'] = false } ClassInfo[ "info_projecteddecal" ] = { ['save'] = false } ClassInfo[ "info_node" ] = { ['save'] = false } ClassInfo[ "info_map_parameters" ] = { ['save'] = false } ClassInfo[ "info_ladder" ] = { ['save'] = false } ClassInfo[ "path_corner" ] = { ['save'] = false } ClassInfo[ "point_viewcontrol" ] = { ['save'] = false } ClassInfo[ "scene_manager" ] = { ['save'] = false } ClassInfo[ "shadow_control" ] = { ['save'] = false } ClassInfo[ "sky_camera" ] = { ['save'] = false } ClassInfo[ "soundent" ] = { ['save'] = false } function gmsave.ShouldSaveEntity( ent, t ) local info = ClassInfo[ t.classname ] -- -- Filtered out - we don't want to save these entity types! -- if ( info && info.save == false ) then return false end -- -- Should we save the parent entity? -- If not, don't save this! -- local parent = ent:GetParent() if ( IsValid( parent ) ) then if ( !gmsave.ShouldSaveEntity( parent, parent:GetSaveTable() ) ) then return false end end -- -- If this is a weapon, and it has a valid owner.. don't save it! -- if ( ent:IsWeapon() && IsValid( ent:GetOwner() ) ) then return false end -- -- Default action is to save.. -- return true end