diff options
Diffstat (limited to 'Northstar.CustomServers')
31 files changed, 15814 insertions, 89 deletions
diff --git a/Northstar.CustomServers/keyvalues/playlists_v2.txt b/Northstar.CustomServers/keyvalues/playlists_v2.txt new file mode 100644 index 00000000..c49fb0e9 --- /dev/null +++ b/Northstar.CustomServers/keyvalues/playlists_v2.txt @@ -0,0 +1,13 @@ +playlists +{ + Gamemodes + { + defaults + { + vars + { + player_force_respawn 5 + } + } + } +} diff --git a/Northstar.CustomServers/mod.json b/Northstar.CustomServers/mod.json index 93fc8932..d3740a12 100644 --- a/Northstar.CustomServers/mod.json +++ b/Northstar.CustomServers/mod.json @@ -1,26 +1,17 @@ { "Name": "Northstar.CustomServers", "Description": "Attempts to recreate the behaviour of vanilla Titanfall 2 servers, as well as changing some scripts to allow better support for mods", - "Version": "1.14.0", + "Version": "1.19.0", "LoadPriority": 0, "ConVars": [ { - "Name": "ns_lobby_type", - "DefaultValue": "0" - }, - { - "Name": "ns_is_modded_server", - "DefaultValue": "1", - "Flags": 8192 - }, - { "Name": "ns_should_return_to_lobby", "DefaultValue": "1" }, { "Name": "ns_allow_spectators", "DefaultValue": "0", - "Flags": 8192 + "Flags": "REPLICATED" }, { "Name": "ns_private_match_last_mode", @@ -57,6 +48,11 @@ { "Name": "ns_use_phase_fix", "DefaultValue": "1" + }, + { + "Name": "ns_progression_enabled", + "DefaultValue": "0", + "Flags": "ARCHIVE_PLAYERPROFILE" } ], "Scripts": [ @@ -155,6 +151,19 @@ "After": "AiTurretSentry_Init" } }, + { + "Path": "sh_progression.nut", + "RunOn": "UI || SERVER || CLIENT", + "ServerCallback": { + "Before": "Progression_Init" + }, + "ClientCallback": { + "Before": "Progression_Init" + }, + "UICallback": { + "Before": "Progression_Init" + } + }, { "Path": "gamemodes/_gamemode_fd_events.nut", diff --git a/Northstar.CustomServers/mod/cfg/autoexec_ns_server.cfg b/Northstar.CustomServers/mod/cfg/autoexec_ns_server.cfg index d92ca3ec..bd422783 100644 --- a/Northstar.CustomServers/mod/cfg/autoexec_ns_server.cfg +++ b/Northstar.CustomServers/mod/cfg/autoexec_ns_server.cfg @@ -6,7 +6,6 @@ ns_report_sp_server_to_masterserver 0 // whether this server should report itsel ns_auth_allow_insecure 0 // keep this to 0 unless you want to allow people to join without masterserver auth/persistence ns_erase_auth_info 1 // keep this to 1 unless you're testing and crashing alot, so you don't have to go through the northstar lobby to reauth -ns_player_auth_port 8081 // this can be whatever, make sure it's portforwarded over tcp ns_masterserver_hostname "https://northstar.tf" // masterserver hostname everything_unlocked 1 // unlock everything @@ -22,4 +21,7 @@ sv_updaterate_mp 20 // default updaterate: 20 tick sv_minupdaterate 20 // unsure if this actually works, but if it does, should set minimum client updaterate sv_max_snapshots_multiplayer 300 // this needs to be updaterate * 15, or clients will dc in killreplay net_data_block_enabled 0 // not really sure on this, have heard datablock could have security issues? doesn't seem to have any adverse effects being disabled -host_skip_client_dll_crc 1 // allow people to run modded client dlls, this is mainly so people running pilot visor colour mods can keep those, since they use a client.dll edit
\ No newline at end of file +host_skip_client_dll_crc 1 // allow people to run modded client dlls, this is mainly so people running pilot visor colour mods can keep those, since they use a client.dll edit + +announcementVersion 1 +announcement #PROGRESSION_ANNOUNCEMENT_BODY
\ No newline at end of file diff --git a/Northstar.CustomServers/mod/maps/mp_complex3_script.ent b/Northstar.CustomServers/mod/maps/mp_complex3_script.ent new file mode 100644 index 00000000..df26fd80 --- /dev/null +++ b/Northstar.CustomServers/mod/maps/mp_complex3_script.ent @@ -0,0 +1,13234 @@ +ENTITIES01 +{ +"spawnflags" "0" +"scale" "1" +"angles" "0 -12.363 0" +"origin" "-3966.17 -2563 748" +"targetname" "info_player_start_7" +"classname" "info_player_start" +} +{ +"model" "models/communication/terminal_com_station_tall.mdl" +"hardpointName" "random" +"hardpointFrontlineYaw" "0" +"hardpointFrontlineOverride" "0" +"gamemode_at" "0" +"origin" "-6248 -1288 520" +"link_to_guid_0" "3148974f" +"link_guid" "e2596db6" +"hardpointGroup" "p" +"gamemode_tday" "1" +"gamemode_sur" "0" +"gamemode_lh" "0" +"gamemode_cp" "0" +"classname" "info_hardpoint" +} +{ +"model" "models/communication/terminal_com_station_tall.mdl" +"hardpointName" "random" +"hardpointFrontlineYaw" "0" +"hardpointFrontlineOverride" "0" +"gamemode_at" "0" +"origin" "-3688 -2288 720" +"link_to_guid_0" "5bdcb1bf" +"link_guid" "9ef44891" +"hardpointGroup" "p" +"gamemode_tday" "1" +"gamemode_sur" "0" +"gamemode_lh" "0" +"gamemode_cp" "0" +"classname" "info_hardpoint" +} +{ +"model" "models/communication/terminal_com_station_tall.mdl" +"hardpointName" "random" +"hardpointFrontlineYaw" "0" +"hardpointFrontlineOverride" "0" +"gamemode_at" "0" +"origin" "-896 -2880 520" +"link_to_guid_0" "a6716741" +"link_guid" "f137536f" +"hardpointGroup" "p" +"gamemode_tday" "1" +"gamemode_sur" "0" +"gamemode_lh" "0" +"gamemode_cp" "0" +"classname" "info_hardpoint" +} +{ +"model" "models/communication/terminal_com_station_tall.mdl" +"hardpointName" "random" +"hardpointFrontlineYaw" "0" +"hardpointFrontlineOverride" "0" +"gamemode_at" "0" +"origin" "-3624 -4216 640" +"link_to_guid_0" "c9c2695" +"link_guid" "24221b55" +"hardpointGroup" "p" +"gamemode_tday" "1" +"gamemode_sur" "0" +"gamemode_lh" "0" +"gamemode_cp" "0" +"classname" "info_hardpoint" +} +{ +"model" "models/communication/terminal_com_station_tall.mdl" +"hardpointName" "random" +"hardpointFrontlineYaw" "0" +"hardpointFrontlineOverride" "0" +"gamemode_at" "0" +"origin" "-3752 -96 560" +"link_to_guid_0" "17679895" +"link_guid" "bf771060" +"hardpointGroup" "p" +"gamemode_tday" "1" +"gamemode_sur" "0" +"gamemode_lh" "0" +"gamemode_cp" "0" +"classname" "info_hardpoint" +} +{ +"skin" "0" +"shadowcastdist" "0" +"rendermode" "0" +"renderfx" "0" +"rendercolor" "255 255 255" +"renderamt" "255" +"pressuredelay" "0" +"physicsmode" "0" +"physdamagescale" "0.1" +"PerformanceMode" "0" +"nodamageforces" "0" +"minhealthdmg" "0" +"mingpulevel" "0" +"mincpulevel" "0" +"maxgpulevel" "0" +"maxcpulevel" "0" +"massScale" "0" +"inertiaScale" "1.0" +"ExplodeRadius" "0" +"ExplodeDamage" "0" +"drawinfastreflection" "0" +"disableX360" "0" +"disableshadows" "0" +"disablereceiveshadows" "0" +"Damagetype" "0" +"damagetoenablemotion" "0" +"allowfunnel" "1" +"scale" "1" +"angles" "0 69.653 0" +"origin" "-8484.94 -2690.44 603.359" +"targetname" "prop_static_83" +"spawnflags" "4" +"solid" "6" +"model" "models/containers/gas_tank.mdl" +"luxelsize" "16" +"lightingMethod" "0" +"forcetoenablemotion" "10" +"fadedist" "1500" +"classname" "prop_physics" +} +{ +"skin" "0" +"shadowcastdist" "0" +"rendermode" "0" +"renderfx" "0" +"rendercolor" "255 255 255" +"renderamt" "255" +"pressuredelay" "0" +"physicsmode" "0" +"physdamagescale" "0.1" +"PerformanceMode" "0" +"nodamageforces" "0" +"minhealthdmg" "0" +"mingpulevel" "0" +"mincpulevel" "0" +"maxgpulevel" "0" +"maxcpulevel" "0" +"massScale" "0" +"inertiaScale" "1.0" +"ExplodeRadius" "0" +"ExplodeDamage" "0" +"drawinfastreflection" "0" +"disableX360" "0" +"disableshadows" "0" +"disablereceiveshadows" "0" +"Damagetype" "0" +"damagetoenablemotion" "0" +"allowfunnel" "1" +"scale" "1" +"angles" "0 74.349 0" +"origin" "-8474.32 -2693.28 603.359" +"targetname" "prop_static_83" +"spawnflags" "4" +"solid" "6" +"model" "models/containers/gas_tank.mdl" +"luxelsize" "16" +"lightingMethod" "0" +"forcetoenablemotion" "10" +"fadedist" "1500" +"classname" "prop_physics" +} +{ +"skin" "0" +"shadowcastdist" "0" +"rendermode" "0" +"renderfx" "0" +"rendercolor" "255 255 255" +"renderamt" "255" +"pressuredelay" "0" +"physicsmode" "0" +"physdamagescale" "0.1" +"PerformanceMode" "0" +"nodamageforces" "0" +"minhealthdmg" "0" +"mingpulevel" "0" +"mincpulevel" "0" +"maxgpulevel" "0" +"maxcpulevel" "0" +"massScale" "0" +"inertiaScale" "1.0" +"ExplodeRadius" "0" +"ExplodeDamage" "0" +"drawinfastreflection" "0" +"disableX360" "0" +"disableshadows" "0" +"disablereceiveshadows" "0" +"Damagetype" "0" +"damagetoenablemotion" "0" +"allowfunnel" "1" +"scale" "1" +"angles" "0 -15 0" +"origin" "-8442.56 -2694.55 627.36" +"targetname" "func_model_240" +"spawnflags" "4" +"model" "models/hardware/paint_spraycan_closed.mdl" +"forcetoenablemotion" "5" +"fadedist" "1000" +"classname" "prop_physics" +} +{ +"skin" "0" +"shadowcastdist" "0" +"rendermode" "0" +"renderfx" "0" +"rendercolor" "255 255 255" +"renderamt" "255" +"pressuredelay" "0" +"physicsmode" "0" +"physdamagescale" "0.1" +"PerformanceMode" "0" +"nodamageforces" "0" +"minhealthdmg" "0" +"mingpulevel" "0" +"mincpulevel" "0" +"maxgpulevel" "0" +"maxcpulevel" "0" +"massScale" "0" +"inertiaScale" "1.0" +"ExplodeRadius" "0" +"ExplodeDamage" "0" +"drawinfastreflection" "0" +"disableX360" "0" +"disableshadows" "0" +"disablereceiveshadows" "0" +"Damagetype" "0" +"damagetoenablemotion" "0" +"allowfunnel" "1" +"scale" "1" +"angles" "0 35.353 0" +"origin" "-8428.26 -2695.27 627.36" +"targetname" "func_model_240" +"spawnflags" "4" +"model" "models/hardware/paint_spraycan_closed.mdl" +"forcetoenablemotion" "5" +"fadedist" "1000" +"classname" "prop_physics" +} +{ +"skin" "0" +"shadowcastdist" "0" +"rendermode" "0" +"renderfx" "0" +"rendercolor" "255 255 255" +"renderamt" "255" +"pressuredelay" "0" +"physicsmode" "0" +"physdamagescale" "0.1" +"PerformanceMode" "0" +"nodamageforces" "0" +"minhealthdmg" "0" +"mingpulevel" "0" +"mincpulevel" "0" +"maxgpulevel" "0" +"maxcpulevel" "0" +"massScale" "0" +"inertiaScale" "1.0" +"ExplodeRadius" "0" +"ExplodeDamage" "0" +"drawinfastreflection" "0" +"disableX360" "0" +"disableshadows" "0" +"disablereceiveshadows" "0" +"Damagetype" "0" +"damagetoenablemotion" "0" +"allowfunnel" "1" +"scale" "1" +"angles" "0 140.285 0" +"origin" "-8435.99 -2693.2 627.36" +"targetname" "func_model_240" +"spawnflags" "4" +"model" "models/hardware/paint_spraycan_closed.mdl" +"forcetoenablemotion" "5" +"fadedist" "1000" +"classname" "prop_physics" +} +{ +"skin" "0" +"shadowcastdist" "0" +"rendermode" "0" +"renderfx" "0" +"rendercolor" "255 255 255" +"renderamt" "255" +"pressuredelay" "0" +"physicsmode" "0" +"physdamagescale" "0.1" +"PerformanceMode" "0" +"nodamageforces" "0" +"minhealthdmg" "0" +"mingpulevel" "0" +"mincpulevel" "0" +"maxgpulevel" "0" +"maxcpulevel" "0" +"massScale" "0" +"inertiaScale" "1.0" +"ExplodeRadius" "0" +"ExplodeDamage" "0" +"drawinfastreflection" "0" +"disableX360" "0" +"disableshadows" "0" +"disablereceiveshadows" "0" +"Damagetype" "0" +"damagetoenablemotion" "0" +"allowfunnel" "1" +"scale" "1" +"angles" "0 162.106 0" +"origin" "-8448.62 -2693.96 585.359" +"targetname" "func_model_224" +"spawnflags" "4" +"model" "models/hardware/paint_container_plastic.mdl" +"forcetoenablemotion" "10" +"fadedist" "1500" +"classname" "prop_physics" +} +{ +"skin" "0" +"shadowcastdist" "0" +"rendermode" "0" +"renderfx" "0" +"rendercolor" "255 255 255" +"renderamt" "255" +"pressuredelay" "0" +"physicsmode" "0" +"physdamagescale" "0.1" +"PerformanceMode" "0" +"nodamageforces" "0" +"minhealthdmg" "0" +"mingpulevel" "0" +"mincpulevel" "0" +"maxgpulevel" "0" +"maxcpulevel" "0" +"massScale" "0" +"inertiaScale" "1.0" +"ExplodeRadius" "0" +"ExplodeDamage" "0" +"drawinfastreflection" "0" +"disableX360" "0" +"disableshadows" "0" +"disablereceiveshadows" "0" +"Damagetype" "0" +"damagetoenablemotion" "0" +"allowfunnel" "1" +"scale" "1" +"angles" "0 -95.139 0" +"origin" "-8445.15 -2704.21 585.359" +"targetname" "func_model_224" +"spawnflags" "4" +"model" "models/hardware/paint_container_plastic.mdl" +"forcetoenablemotion" "10" +"fadedist" "1500" +"classname" "prop_physics" +} +{ +"skin" "0" +"shadowcastdist" "0" +"rendermode" "0" +"renderfx" "0" +"rendercolor" "255 255 255" +"renderamt" "255" +"pressuredelay" "0" +"physicsmode" "0" +"physdamagescale" "0.1" +"PerformanceMode" "0" +"nodamageforces" "0" +"minhealthdmg" "0" +"mingpulevel" "0" +"mincpulevel" "0" +"maxgpulevel" "0" +"maxcpulevel" "0" +"massScale" "0" +"inertiaScale" "1.0" +"ExplodeRadius" "0" +"ExplodeDamage" "0" +"drawinfastreflection" "0" +"disableX360" "0" +"disableshadows" "0" +"disablereceiveshadows" "0" +"Damagetype" "0" +"damagetoenablemotion" "0" +"allowfunnel" "1" +"scale" "1" +"angles" "0 -15 0" +"origin" "-8432.59 -2707.57 585.359" +"targetname" "func_model_224" +"spawnflags" "4" +"model" "models/hardware/paint_container_plastic.mdl" +"forcetoenablemotion" "10" +"fadedist" "1500" +"classname" "prop_physics" +} +{ +"skin" "0" +"shadowcastdist" "0" +"rendermode" "0" +"renderfx" "0" +"rendercolor" "255 255 255" +"renderamt" "255" +"pressuredelay" "0" +"physicsmode" "0" +"physdamagescale" "0.1" +"PerformanceMode" "0" +"nodamageforces" "0" +"minhealthdmg" "0" +"mingpulevel" "0" +"mincpulevel" "0" +"maxgpulevel" "0" +"maxcpulevel" "0" +"massScale" "0" +"inertiaScale" "1.0" +"ExplodeRadius" "0" +"ExplodeDamage" "0" +"drawinfastreflection" "0" +"disableX360" "0" +"disableshadows" "0" +"disablereceiveshadows" "0" +"Damagetype" "0" +"damagetoenablemotion" "0" +"allowfunnel" "1" +"scale" "1" +"angles" "0 -13.747 0" +"origin" "-8477.69 -2690.31 651.359" +"targetname" "func_model_225" +"spawnflags" "4" +"model" "models/containers/styrofoam_box_short_dirty.mdl" +"forcetoenablemotion" "10" +"fadedist" "1500" +"classname" "prop_physics" +} +{ +"spawnflags" "1" +"skin" "0" +"shadowcastdist" "0" +"rendermode" "0" +"renderfx" "0" +"rendercolor" "255 255 255" +"renderamt" "255" +"pressuredelay" "0" +"physicsmode" "0" +"physdamagescale" "0.1" +"PerformanceMode" "0" +"nodamageforces" "0" +"minhealthdmg" "0" +"mingpulevel" "0" +"mincpulevel" "0" +"maxgpulevel" "0" +"maxcpulevel" "0" +"massScale" "0" +"inertiaScale" "1.0" +"ExplodeRadius" "0" +"ExplodeDamage" "0" +"drawinfastreflection" "0" +"disableX360" "0" +"disableshadows" "0" +"disablereceiveshadows" "0" +"Damagetype" "0" +"damagetoenablemotion" "0" +"allowfunnel" "1" +"scale" "1" +"angles" "0 -15 0" +"origin" "-8472.39 -2693.8 585.359" +"targetname" "func_model_242" +"model" "models/containers/styrofoam_box_dirty.mdl" +"forcetoenablemotion" "10" +"fadedist" "1500" +"classname" "prop_physics" +} +{ +"skin" "0" +"shadowcastdist" "0" +"rendermode" "0" +"renderfx" "0" +"rendercolor" "255 255 255" +"renderamt" "255" +"pressuredelay" "0" +"physicsmode" "0" +"physdamagescale" "0.1" +"PerformanceMode" "0" +"nodamageforces" "0" +"minhealthdmg" "0" +"mingpulevel" "0" +"mincpulevel" "0" +"maxgpulevel" "0" +"maxcpulevel" "0" +"massScale" "0" +"inertiaScale" "1.0" +"ExplodeRadius" "0" +"ExplodeDamage" "0" +"drawinfastreflection" "0" +"disableX360" "0" +"disableshadows" "0" +"disablereceiveshadows" "0" +"Damagetype" "0" +"damagetoenablemotion" "0" +"allowfunnel" "1" +"scale" "1" +"angles" "0 -30.172 0" +"origin" "-8446.78 -2698.6 651.359" +"targetname" "func_model_225" +"spawnflags" "4" +"model" "models/containers/styrofoam_box_short_dirty.mdl" +"forcetoenablemotion" "10" +"fadedist" "1500" +"classname" "prop_physics" +} +{ +"skin" "0" +"shadowcastdist" "0" +"rendermode" "0" +"renderfx" "0" +"rendercolor" "255 255 255" +"renderamt" "255" +"pressuredelay" "0" +"physicsmode" "0" +"physdamagescale" "0.1" +"PerformanceMode" "0" +"nodamageforces" "0" +"minhealthdmg" "0" +"mingpulevel" "0" +"mincpulevel" "0" +"maxgpulevel" "0" +"maxcpulevel" "0" +"massScale" "0" +"inertiaScale" "1.0" +"ExplodeRadius" "0" +"ExplodeDamage" "0" +"drawinfastreflection" "0" +"disableX360" "0" +"disableshadows" "0" +"disablereceiveshadows" "0" +"Damagetype" "0" +"damagetoenablemotion" "0" +"allowfunnel" "1" +"scale" "1" +"angles" "0 -15 0" +"origin" "-8461.88 -2689.37 627.36" +"targetname" "func_model_240" +"spawnflags" "4" +"model" "models/hardware/paint_spraycan_closed.mdl" +"forcetoenablemotion" "5" +"fadedist" "1000" +"classname" "prop_physics" +} +{ +"skin" "0" +"shadowcastdist" "0" +"rendermode" "0" +"renderfx" "0" +"rendercolor" "255 255 255" +"renderamt" "255" +"pressuredelay" "0" +"physicsmode" "0" +"physdamagescale" "0.1" +"PerformanceMode" "0" +"nodamageforces" "0" +"minhealthdmg" "0" +"mingpulevel" "0" +"mincpulevel" "0" +"maxgpulevel" "0" +"maxcpulevel" "0" +"massScale" "0" +"inertiaScale" "1.0" +"ExplodeRadius" "0" +"ExplodeDamage" "0" +"drawinfastreflection" "0" +"disableX360" "0" +"disableshadows" "0" +"disablereceiveshadows" "0" +"Damagetype" "0" +"damagetoenablemotion" "0" +"allowfunnel" "1" +"scale" "1" +"angles" "0 35.353 0" +"origin" "-8447.58 -2690.1 627.36" +"targetname" "func_model_240" +"spawnflags" "4" +"model" "models/hardware/paint_spraycan_closed.mdl" +"forcetoenablemotion" "5" +"fadedist" "1000" +"classname" "prop_physics" +} +{ +"skin" "0" +"shadowcastdist" "0" +"rendermode" "0" +"renderfx" "0" +"rendercolor" "255 255 255" +"renderamt" "255" +"pressuredelay" "0" +"physicsmode" "0" +"physdamagescale" "0.1" +"PerformanceMode" "0" +"nodamageforces" "0" +"minhealthdmg" "0" +"mingpulevel" "0" +"mincpulevel" "0" +"maxgpulevel" "0" +"maxcpulevel" "0" +"massScale" "0" +"inertiaScale" "1.0" +"ExplodeRadius" "0" +"ExplodeDamage" "0" +"drawinfastreflection" "0" +"disableX360" "0" +"disableshadows" "0" +"disablereceiveshadows" "0" +"Damagetype" "0" +"damagetoenablemotion" "0" +"allowfunnel" "1" +"scale" "1" +"angles" "0 140.285 0" +"origin" "-8455.31 -2688.02 627.36" +"targetname" "func_model_240" +"spawnflags" "4" +"model" "models/hardware/paint_spraycan_closed.mdl" +"forcetoenablemotion" "5" +"fadedist" "1000" +"classname" "prop_physics" +} +{ +"skin" "0" +"shadowcastdist" "0" +"rendermode" "0" +"renderfx" "0" +"rendercolor" "255 255 255" +"renderamt" "255" +"pressuredelay" "0" +"physicsmode" "0" +"physdamagescale" "0.1" +"PerformanceMode" "0" +"nodamageforces" "0" +"minhealthdmg" "0" +"mingpulevel" "0" +"mincpulevel" "0" +"maxgpulevel" "0" +"maxcpulevel" "0" +"massScale" "0" +"inertiaScale" "1.0" +"ExplodeRadius" "0" +"ExplodeDamage" "0" +"drawinfastreflection" "0" +"disableX360" "0" +"disableshadows" "0" +"disablereceiveshadows" "0" +"Damagetype" "0" +"damagetoenablemotion" "0" +"allowfunnel" "1" +"scale" "1" +"angles" "0 -15 0" +"origin" "-8485.06 -2683.16 627.36" +"targetname" "func_model_240" +"spawnflags" "4" +"model" "models/hardware/paint_spraycan_closed.mdl" +"forcetoenablemotion" "5" +"fadedist" "1000" +"classname" "prop_physics" +} +{ +"skin" "0" +"shadowcastdist" "0" +"rendermode" "0" +"renderfx" "0" +"rendercolor" "255 255 255" +"renderamt" "255" +"pressuredelay" "0" +"physicsmode" "0" +"physdamagescale" "0.1" +"PerformanceMode" "0" +"nodamageforces" "0" +"minhealthdmg" "0" +"mingpulevel" "0" +"mincpulevel" "0" +"maxgpulevel" "0" +"maxcpulevel" "0" +"massScale" "0" +"inertiaScale" "1.0" +"ExplodeRadius" "0" +"ExplodeDamage" "0" +"drawinfastreflection" "0" +"disableX360" "0" +"disableshadows" "0" +"disablereceiveshadows" "0" +"Damagetype" "0" +"damagetoenablemotion" "0" +"allowfunnel" "1" +"scale" "1" +"angles" "0 35.353 0" +"origin" "-8470.76 -2683.88 627.36" +"targetname" "func_model_240" +"spawnflags" "4" +"model" "models/hardware/paint_spraycan_closed.mdl" +"forcetoenablemotion" "5" +"fadedist" "1000" +"classname" "prop_physics" +} +{ +"skin" "0" +"shadowcastdist" "0" +"rendermode" "0" +"renderfx" "0" +"rendercolor" "255 255 255" +"renderamt" "255" +"pressuredelay" "0" +"physicsmode" "0" +"physdamagescale" "0.1" +"PerformanceMode" "0" +"nodamageforces" "0" +"minhealthdmg" "0" +"mingpulevel" "0" +"mincpulevel" "0" +"maxgpulevel" "0" +"maxcpulevel" "0" +"massScale" "0" +"inertiaScale" "1.0" +"ExplodeRadius" "0" +"ExplodeDamage" "0" +"drawinfastreflection" "0" +"disableX360" "0" +"disableshadows" "0" +"disablereceiveshadows" "0" +"Damagetype" "0" +"damagetoenablemotion" "0" +"allowfunnel" "1" +"scale" "1" +"angles" "0 140.285 0" +"origin" "-8478.49 -2681.81 627.36" +"targetname" "func_model_240" +"spawnflags" "4" +"model" "models/hardware/paint_spraycan_closed.mdl" +"forcetoenablemotion" "5" +"fadedist" "1000" +"classname" "prop_physics" +} +{ +"skin" "0" +"shadowcastdist" "0" +"rendermode" "0" +"renderfx" "0" +"rendercolor" "255 255 255" +"renderamt" "255" +"pressuredelay" "0" +"physicsmode" "0" +"physdamagescale" "0.1" +"PerformanceMode" "0" +"nodamageforces" "0" +"minhealthdmg" "0" +"mingpulevel" "0" +"mincpulevel" "0" +"maxgpulevel" "0" +"maxcpulevel" "0" +"massScale" "0" +"inertiaScale" "1.0" +"ExplodeRadius" "0" +"ExplodeDamage" "0" +"drawinfastreflection" "0" +"disableX360" "0" +"disableshadows" "0" +"disablereceiveshadows" "0" +"Damagetype" "0" +"damagetoenablemotion" "0" +"allowfunnel" "1" +"scale" "1" +"angles" "0 -15 0" +"origin" "-8434.97 -2704.86 627.36" +"targetname" "func_model_240" +"spawnflags" "4" +"model" "models/hardware/paint_spraycan_closed.mdl" +"forcetoenablemotion" "5" +"fadedist" "1000" +"classname" "prop_physics" +} +{ +"skin" "0" +"shadowcastdist" "0" +"rendermode" "0" +"renderfx" "0" +"rendercolor" "255 255 255" +"renderamt" "255" +"pressuredelay" "0" +"physicsmode" "0" +"physdamagescale" "0.1" +"PerformanceMode" "0" +"nodamageforces" "0" +"minhealthdmg" "0" +"mingpulevel" "0" +"mincpulevel" "0" +"maxgpulevel" "0" +"maxcpulevel" "0" +"massScale" "0" +"inertiaScale" "1.0" +"ExplodeRadius" "0" +"ExplodeDamage" "0" +"drawinfastreflection" "0" +"disableX360" "0" +"disableshadows" "0" +"disablereceiveshadows" "0" +"Damagetype" "0" +"damagetoenablemotion" "0" +"allowfunnel" "1" +"scale" "1" +"angles" "0 -15 0" +"origin" "-8465.88 -2696.58 627.36" +"targetname" "func_model_240" +"spawnflags" "4" +"model" "models/hardware/paint_spraycan_closed.mdl" +"forcetoenablemotion" "5" +"fadedist" "1000" +"classname" "prop_physics" +} +{ +"skin" "0" +"shadowcastdist" "0" +"rendermode" "0" +"renderfx" "0" +"rendercolor" "255 255 255" +"renderamt" "255" +"pressuredelay" "0" +"physicsmode" "0" +"physdamagescale" "0.1" +"PerformanceMode" "0" +"nodamageforces" "0" +"minhealthdmg" "0" +"mingpulevel" "0" +"mincpulevel" "0" +"maxgpulevel" "0" +"maxcpulevel" "0" +"massScale" "0" +"inertiaScale" "1.0" +"ExplodeRadius" "0" +"ExplodeDamage" "0" +"drawinfastreflection" "0" +"disableX360" "0" +"disableshadows" "0" +"disablereceiveshadows" "0" +"Damagetype" "0" +"damagetoenablemotion" "0" +"allowfunnel" "1" +"scale" "1" +"angles" "0 140.285 0" +"origin" "-8455.45 -2696.27 627.36" +"targetname" "func_model_240" +"spawnflags" "4" +"model" "models/hardware/paint_spraycan_closed.mdl" +"forcetoenablemotion" "5" +"fadedist" "1000" +"classname" "prop_physics" +} +{ +"skin" "0" +"shadowcastdist" "0" +"rendermode" "0" +"renderfx" "0" +"rendercolor" "255 255 255" +"renderamt" "255" +"pressuredelay" "0" +"physicsmode" "0" +"physdamagescale" "0.1" +"PerformanceMode" "0" +"nodamageforces" "0" +"minhealthdmg" "0" +"mingpulevel" "0" +"mincpulevel" "0" +"maxgpulevel" "0" +"maxcpulevel" "0" +"massScale" "0" +"inertiaScale" "1.0" +"ExplodeRadius" "0" +"ExplodeDamage" "0" +"drawinfastreflection" "0" +"disableX360" "0" +"disableshadows" "0" +"disablereceiveshadows" "0" +"Damagetype" "0" +"damagetoenablemotion" "0" +"allowfunnel" "1" +"scale" "1" +"angles" "0 35.353 0" +"origin" "-8472.83 -2691.61 627.359" +"targetname" "func_model_240" +"spawnflags" "4" +"model" "models/hardware/paint_spraycan_closed.mdl" +"forcetoenablemotion" "5" +"fadedist" "1000" +"classname" "prop_physics" +} +{ +"skin" "0" +"shadowcastdist" "0" +"rendermode" "0" +"renderfx" "0" +"rendercolor" "255 255 255" +"renderamt" "255" +"pressuredelay" "0" +"physicsmode" "0" +"physdamagescale" "0.1" +"PerformanceMode" "0" +"nodamageforces" "0" +"minhealthdmg" "0" +"mingpulevel" "0" +"mincpulevel" "0" +"maxgpulevel" "0" +"maxcpulevel" "0" +"massScale" "0" +"inertiaScale" "1.0" +"ExplodeRadius" "0" +"ExplodeDamage" "0" +"drawinfastreflection" "0" +"disableX360" "0" +"disableshadows" "0" +"disablereceiveshadows" "0" +"Damagetype" "0" +"damagetoenablemotion" "0" +"allowfunnel" "1" +"scale" "1" +"angles" "0 -13.747 0" +"origin" "-8439.05 -2700.67 603.359" +"targetname" "func_model_225" +"spawnflags" "4" +"model" "models/containers/styrofoam_box_short_dirty.mdl" +"forcetoenablemotion" "10" +"fadedist" "1500" +"classname" "prop_physics" +} +{ +"skin" "0" +"shadowcastdist" "0" +"rendermode" "0" +"renderfx" "0" +"rendercolor" "255 255 255" +"renderamt" "255" +"pressuredelay" "0" +"physicsmode" "0" +"physdamagescale" "0.1" +"PerformanceMode" "0" +"nodamageforces" "0" +"minhealthdmg" "0" +"mingpulevel" "0" +"mincpulevel" "0" +"maxgpulevel" "0" +"maxcpulevel" "0" +"massScale" "0" +"inertiaScale" "1.0" +"ExplodeRadius" "0" +"ExplodeDamage" "0" +"drawinfastreflection" "0" +"disableX360" "0" +"disableshadows" "0" +"disablereceiveshadows" "0" +"Damagetype" "0" +"damagetoenablemotion" "0" +"allowfunnel" "1" +"scale" "1" +"angles" "-2.2039e-006 140.285 1.12504e-006" +"origin" "-8454.93 -2694.34 603.639" +"targetname" "func_model_240" +"spawnflags" "4" +"model" "models/hardware/paint_spraycan_closed.mdl" +"forcetoenablemotion" "5" +"fadedist" "1000" +"classname" "prop_physics" +} +{ +"skin" "0" +"shadowcastdist" "0" +"rendermode" "0" +"renderfx" "0" +"rendercolor" "255 255 255" +"renderamt" "255" +"pressuredelay" "0" +"physicsmode" "0" +"physdamagescale" "0.1" +"PerformanceMode" "0" +"nodamageforces" "0" +"minhealthdmg" "0" +"mingpulevel" "0" +"mincpulevel" "0" +"maxgpulevel" "0" +"maxcpulevel" "0" +"massScale" "0" +"inertiaScale" "1.0" +"ExplodeRadius" "0" +"ExplodeDamage" "0" +"drawinfastreflection" "0" +"disableX360" "0" +"disableshadows" "0" +"disablereceiveshadows" "0" +"Damagetype" "0" +"damagetoenablemotion" "0" +"allowfunnel" "1" +"scale" "1" +"angles" "2.4724e-006 -15 0" +"origin" "-8452.22 -2691.96 603.639" +"targetname" "func_model_240" +"spawnflags" "4" +"model" "models/hardware/paint_spraycan_closed.mdl" +"forcetoenablemotion" "5" +"fadedist" "1000" +"classname" "prop_physics" +} +{ +"skin" "0" +"shadowcastdist" "0" +"rendermode" "0" +"renderfx" "0" +"rendercolor" "255 255 255" +"renderamt" "255" +"pressuredelay" "0" +"physicsmode" "0" +"physdamagescale" "0.1" +"PerformanceMode" "0" +"nodamageforces" "0" +"minhealthdmg" "0" +"mingpulevel" "0" +"mincpulevel" "0" +"maxgpulevel" "0" +"maxcpulevel" "0" +"massScale" "0" +"inertiaScale" "1.0" +"ExplodeRadius" "0" +"ExplodeDamage" "0" +"drawinfastreflection" "0" +"disableX360" "0" +"disableshadows" "0" +"disablereceiveshadows" "0" +"Damagetype" "0" +"damagetoenablemotion" "0" +"allowfunnel" "1" +"scale" "1" +"angles" "0 89.4372 0" +"origin" "-8463.43 -2695.17 603.359" +"targetname" "prop_static_83" +"spawnflags" "4" +"solid" "6" +"model" "models/containers/gas_tank.mdl" +"luxelsize" "16" +"lightingMethod" "0" +"forcetoenablemotion" "10" +"fadedist" "1500" +"classname" "prop_physics" +} +{ +"spawnflags" "1" +"skin" "0" +"shadowcastdist" "0" +"rendermode" "0" +"renderfx" "0" +"rendercolor" "255 255 255" +"renderamt" "255" +"pressuredelay" "0" +"physicsmode" "0" +"physdamagescale" "0.1" +"PerformanceMode" "0" +"nodamageforces" "0" +"minhealthdmg" "0" +"mingpulevel" "0" +"mincpulevel" "0" +"maxgpulevel" "0" +"maxcpulevel" "0" +"massScale" "0" +"inertiaScale" "1.0" +"ExplodeRadius" "0" +"ExplodeDamage" "0" +"drawinfastreflection" "0" +"disableX360" "0" +"disableshadows" "0" +"disablereceiveshadows" "0" +"Damagetype" "0" +"damagetoenablemotion" "0" +"allowfunnel" "1" +"scale" "1" +"angles" "0 119.849 0" +"origin" "-8397.44 -2748.86 585.86" +"targetname" "func_model_287" +"model" "models/containers/crate_blue_plastic.mdl" +"forcetoenablemotion" "10" +"fadedist" "1500" +"classname" "prop_physics" +} +{ +"spawnflags" "1" +"skin" "0" +"shadowcastdist" "0" +"rendermode" "0" +"renderfx" "0" +"rendercolor" "255 255 255" +"renderamt" "255" +"pressuredelay" "0" +"physicsmode" "0" +"physdamagescale" "0.1" +"PerformanceMode" "0" +"nodamageforces" "0" +"minhealthdmg" "0" +"mingpulevel" "0" +"mincpulevel" "0" +"maxgpulevel" "0" +"maxcpulevel" "0" +"massScale" "0" +"inertiaScale" "1.0" +"ExplodeRadius" "0" +"ExplodeDamage" "0" +"drawinfastreflection" "0" +"disableX360" "0" +"disableshadows" "0" +"disablereceiveshadows" "0" +"Damagetype" "0" +"damagetoenablemotion" "0" +"allowfunnel" "1" +"scale" "1" +"angles" "0 -60.1509 0" +"origin" "-8380.52 -2778.35 585.86" +"targetname" "func_model_287" +"model" "models/containers/crate_blue_plastic.mdl" +"forcetoenablemotion" "10" +"fadedist" "1500" +"classname" "prop_physics" +} +{ +"skin" "0" +"shadowcastdist" "0" +"rendermode" "0" +"renderfx" "0" +"rendercolor" "255 255 255" +"renderamt" "255" +"pressuredelay" "0" +"physicsmode" "0" +"physdamagescale" "0.1" +"PerformanceMode" "0" +"nodamageforces" "0" +"minhealthdmg" "0" +"mingpulevel" "0" +"mincpulevel" "0" +"maxgpulevel" "0" +"maxcpulevel" "0" +"massScale" "0" +"inertiaScale" "1.0" +"ExplodeRadius" "0" +"ExplodeDamage" "0" +"drawinfastreflection" "0" +"disableX360" "0" +"disableshadows" "0" +"disablereceiveshadows" "0" +"Damagetype" "0" +"damagetoenablemotion" "0" +"allowfunnel" "1" +"scale" "1" +"angles" "0 116.955 0" +"origin" "-8384.52 -2763.35 628.36" +"targetname" "func_model_224" +"spawnflags" "4" +"model" "models/hardware/paint_container_plastic.mdl" +"forcetoenablemotion" "10" +"fadedist" "1500" +"classname" "prop_physics" +} +{ +"skin" "0" +"shadowcastdist" "0" +"rendermode" "0" +"renderfx" "0" +"rendercolor" "255 255 255" +"renderamt" "255" +"pressuredelay" "0" +"physicsmode" "0" +"physdamagescale" "0.1" +"PerformanceMode" "0" +"nodamageforces" "0" +"minhealthdmg" "0" +"mingpulevel" "0" +"mincpulevel" "0" +"maxgpulevel" "0" +"maxcpulevel" "0" +"massScale" "0" +"inertiaScale" "1.0" +"ExplodeRadius" "0" +"ExplodeDamage" "0" +"drawinfastreflection" "0" +"disableX360" "0" +"disableshadows" "0" +"disablereceiveshadows" "0" +"Damagetype" "0" +"damagetoenablemotion" "0" +"allowfunnel" "1" +"scale" "1" +"angles" "0 -151.236 0" +"origin" "-8370.71 -2785.4 628.36" +"targetname" "func_model_224" +"spawnflags" "4" +"model" "models/hardware/paint_container_plastic.mdl" +"forcetoenablemotion" "10" +"fadedist" "1500" +"classname" "prop_physics" +} +{ +"skin" "0" +"shadowcastdist" "0" +"rendermode" "0" +"renderfx" "0" +"rendercolor" "255 255 255" +"renderamt" "255" +"pressuredelay" "0" +"physicsmode" "0" +"physdamagescale" "0.1" +"PerformanceMode" "0" +"nodamageforces" "0" +"minhealthdmg" "0" +"mingpulevel" "0" +"mincpulevel" "0" +"maxgpulevel" "0" +"maxcpulevel" "0" +"massScale" "0" +"inertiaScale" "1.0" +"ExplodeRadius" "0" +"ExplodeDamage" "0" +"drawinfastreflection" "0" +"disableX360" "0" +"disableshadows" "0" +"disablereceiveshadows" "0" +"Damagetype" "0" +"damagetoenablemotion" "0" +"allowfunnel" "1" +"scale" "1" +"angles" "0 -151.236 0" +"origin" "-8384.12 -2778.11 628.36" +"targetname" "func_model_224" +"spawnflags" "4" +"model" "models/hardware/paint_container_plastic.mdl" +"forcetoenablemotion" "10" +"fadedist" "1500" +"classname" "prop_physics" +} +{ +"skin" "0" +"shadowcastdist" "0" +"rendermode" "0" +"renderfx" "0" +"rendercolor" "255 255 255" +"renderamt" "255" +"pressuredelay" "0" +"physicsmode" "0" +"physdamagescale" "0.1" +"PerformanceMode" "0" +"nodamageforces" "0" +"minhealthdmg" "0" +"mingpulevel" "0" +"mincpulevel" "0" +"maxgpulevel" "0" +"maxcpulevel" "0" +"massScale" "0" +"inertiaScale" "1.0" +"ExplodeRadius" "0" +"ExplodeDamage" "0" +"drawinfastreflection" "0" +"disableX360" "0" +"disableshadows" "0" +"disablereceiveshadows" "0" +"Damagetype" "0" +"damagetoenablemotion" "0" +"allowfunnel" "1" +"scale" "1" +"angles" "0 120.523 0" +"origin" "-8397.78 -2735.22 652.36" +"targetname" "func_model_224" +"spawnflags" "4" +"model" "models/hardware/paint_container_plastic.mdl" +"forcetoenablemotion" "10" +"fadedist" "1500" +"classname" "prop_physics" +} +{ +"skin" "0" +"shadowcastdist" "0" +"rendermode" "0" +"renderfx" "0" +"rendercolor" "255 255 255" +"renderamt" "255" +"pressuredelay" "0" +"physicsmode" "0" +"physdamagescale" "0.1" +"PerformanceMode" "0" +"nodamageforces" "0" +"minhealthdmg" "0" +"mingpulevel" "0" +"mincpulevel" "0" +"maxgpulevel" "0" +"maxcpulevel" "0" +"massScale" "0" +"inertiaScale" "1.0" +"ExplodeRadius" "0" +"ExplodeDamage" "0" +"drawinfastreflection" "0" +"disableX360" "0" +"disableshadows" "0" +"disablereceiveshadows" "0" +"Damagetype" "0" +"damagetoenablemotion" "0" +"allowfunnel" "1" +"scale" "1" +"angles" "0 121.152 0" +"origin" "-8408.19 -2741.19 652.36" +"targetname" "func_model_224" +"spawnflags" "4" +"model" "models/hardware/paint_container_plastic.mdl" +"forcetoenablemotion" "10" +"fadedist" "1500" +"classname" "prop_physics" +} +{ +"skin" "0" +"shadowcastdist" "0" +"rendermode" "0" +"renderfx" "0" +"rendercolor" "255 255 255" +"renderamt" "255" +"pressuredelay" "0" +"physicsmode" "0" +"physdamagescale" "0.1" +"PerformanceMode" "0" +"nodamageforces" "0" +"minhealthdmg" "0" +"mingpulevel" "0" +"mincpulevel" "0" +"maxgpulevel" "0" +"maxcpulevel" "0" +"massScale" "0" +"inertiaScale" "1.0" +"ExplodeRadius" "0" +"ExplodeDamage" "0" +"drawinfastreflection" "0" +"disableX360" "0" +"disableshadows" "0" +"disablereceiveshadows" "0" +"Damagetype" "0" +"damagetoenablemotion" "0" +"allowfunnel" "1" +"scale" "1" +"angles" "0 121.152 0" +"origin" "-8401.72 -2752.46 652.36" +"targetname" "func_model_224" +"spawnflags" "4" +"model" "models/hardware/paint_container_plastic.mdl" +"forcetoenablemotion" "10" +"fadedist" "1500" +"classname" "prop_physics" +} +{ +"skin" "0" +"shadowcastdist" "0" +"rendermode" "0" +"renderfx" "0" +"rendercolor" "255 255 255" +"renderamt" "255" +"pressuredelay" "0" +"physicsmode" "0" +"physdamagescale" "0.1" +"PerformanceMode" "0" +"nodamageforces" "0" +"minhealthdmg" "0" +"mingpulevel" "0" +"mincpulevel" "0" +"maxgpulevel" "0" +"maxcpulevel" "0" +"massScale" "0" +"inertiaScale" "1.0" +"ExplodeRadius" "0" +"ExplodeDamage" "0" +"drawinfastreflection" "0" +"disableX360" "0" +"disableshadows" "0" +"disablereceiveshadows" "0" +"Damagetype" "0" +"damagetoenablemotion" "0" +"allowfunnel" "1" +"scale" "1" +"angles" "0 120.523 0" +"origin" "-8391.31 -2746.49 652.36" +"targetname" "func_model_224" +"spawnflags" "4" +"model" "models/hardware/paint_container_plastic.mdl" +"forcetoenablemotion" "10" +"fadedist" "1500" +"classname" "prop_physics" +} +{ +"skin" "0" +"shadowcastdist" "0" +"rendermode" "0" +"renderfx" "0" +"rendercolor" "255 255 255" +"renderamt" "255" +"pressuredelay" "0" +"physicsmode" "0" +"physdamagescale" "0.1" +"PerformanceMode" "0" +"nodamageforces" "0" +"minhealthdmg" "0" +"mingpulevel" "0" +"mincpulevel" "0" +"maxgpulevel" "0" +"maxcpulevel" "0" +"massScale" "0" +"inertiaScale" "1.0" +"ExplodeRadius" "0" +"ExplodeDamage" "0" +"drawinfastreflection" "0" +"disableX360" "0" +"disableshadows" "0" +"disablereceiveshadows" "0" +"Damagetype" "0" +"damagetoenablemotion" "0" +"allowfunnel" "1" +"scale" "1" +"angles" "0 120.523 0" +"origin" "-8384.34 -2758.63 652.36" +"targetname" "func_model_224" +"spawnflags" "4" +"model" "models/hardware/paint_container_plastic.mdl" +"forcetoenablemotion" "10" +"fadedist" "1500" +"classname" "prop_physics" +} +{ +"skin" "0" +"shadowcastdist" "0" +"rendermode" "0" +"renderfx" "0" +"rendercolor" "255 255 255" +"renderamt" "255" +"pressuredelay" "0" +"physicsmode" "0" +"physdamagescale" "0.1" +"PerformanceMode" "0" +"nodamageforces" "0" +"minhealthdmg" "0" +"mingpulevel" "0" +"mincpulevel" "0" +"maxgpulevel" "0" +"maxcpulevel" "0" +"massScale" "0" +"inertiaScale" "1.0" +"ExplodeRadius" "0" +"ExplodeDamage" "0" +"drawinfastreflection" "0" +"disableX360" "0" +"disableshadows" "0" +"disablereceiveshadows" "0" +"Damagetype" "0" +"damagetoenablemotion" "0" +"allowfunnel" "1" +"scale" "1" +"angles" "0 94.0521 0" +"origin" "-8381.52 -2776.61 652.36" +"targetname" "func_model_224" +"spawnflags" "4" +"model" "models/hardware/paint_container_plastic.mdl" +"forcetoenablemotion" "10" +"fadedist" "1500" +"classname" "prop_physics" +} +{ +"spawnflags" "1" +"skin" "0" +"shadowcastdist" "0" +"rendermode" "0" +"renderfx" "0" +"rendercolor" "255 255 255" +"renderamt" "255" +"pressuredelay" "0" +"physicsmode" "0" +"physdamagescale" "0.1" +"PerformanceMode" "0" +"nodamageforces" "0" +"minhealthdmg" "0" +"mingpulevel" "0" +"mincpulevel" "0" +"maxgpulevel" "0" +"maxcpulevel" "0" +"massScale" "0" +"inertiaScale" "1.0" +"forcetoenablemotion" "0" +"fadedist" "-1" +"ExplodeRadius" "0" +"ExplodeDamage" "0" +"drawinfastreflection" "0" +"disableX360" "0" +"disableshadows" "0" +"disablereceiveshadows" "0" +"Damagetype" "0" +"damagetoenablemotion" "0" +"allowfunnel" "1" +"scale" "1" +"angles" "0 -19.5849 0" +"origin" "-8398.65 -2766.85 580.86" +"targetname" "func_model_297" +"model" "models/containers/styrofoam_lid_dirty.mdl" +"classname" "prop_physics" +} +{ +"skin" "0" +"shadowcastdist" "0" +"rendermode" "0" +"renderfx" "0" +"rendercolor" "255 255 255" +"renderamt" "255" +"pressuredelay" "0" +"physicsmode" "0" +"physdamagescale" "0.1" +"PerformanceMode" "0" +"nodamageforces" "0" +"minhealthdmg" "0" +"mingpulevel" "0" +"mincpulevel" "0" +"maxgpulevel" "0" +"maxcpulevel" "0" +"massScale" "0" +"inertiaScale" "1.0" +"ExplodeRadius" "0" +"ExplodeDamage" "0" +"drawinfastreflection" "0" +"disableX360" "0" +"disableshadows" "0" +"disablereceiveshadows" "0" +"Damagetype" "0" +"damagetoenablemotion" "0" +"allowfunnel" "1" +"scale" "1" +"angles" "0 119.849 0" +"origin" "-8382.2 -2776.43 604.36" +"targetname" "prop_static_3" +"spawnflags" "4" +"solid" "6" +"model" "models/containers/box_mini_plastic.mdl" +"luxelsize" "16" +"lightingMethod" "0" +"forcetoenablemotion" "10" +"fadedist" "1200" +"classname" "prop_physics" +} +{ +"skin" "0" +"shadowcastdist" "0" +"rendermode" "0" +"renderfx" "0" +"rendercolor" "255 255 255" +"renderamt" "255" +"pressuredelay" "0" +"physicsmode" "0" +"physdamagescale" "0.1" +"PerformanceMode" "0" +"nodamageforces" "0" +"minhealthdmg" "0" +"mingpulevel" "0" +"mincpulevel" "0" +"maxgpulevel" "0" +"maxcpulevel" "0" +"massScale" "0" +"inertiaScale" "1.0" +"ExplodeRadius" "0" +"ExplodeDamage" "0" +"drawinfastreflection" "0" +"disableX360" "0" +"disableshadows" "0" +"disablereceiveshadows" "0" +"Damagetype" "0" +"damagetoenablemotion" "0" +"allowfunnel" "1" +"scale" "1" +"angles" "-0.6507 -21.8879 -90" +"origin" "-8346.46 -2848.61 607.86" +"targetname" "prop_static_83" +"spawnflags" "4" +"solid" "6" +"model" "models/containers/gas_tank.mdl" +"luxelsize" "16" +"lightingMethod" "0" +"forcetoenablemotion" "10" +"fadedist" "1500" +"classname" "prop_physics" +} +{ +"skin" "0" +"shadowcastdist" "0" +"rendermode" "0" +"renderfx" "0" +"rendercolor" "255 255 255" +"renderamt" "255" +"pressuredelay" "0" +"physicsmode" "0" +"physdamagescale" "0.1" +"PerformanceMode" "0" +"nodamageforces" "0" +"minhealthdmg" "0" +"mingpulevel" "0" +"mincpulevel" "0" +"maxgpulevel" "0" +"maxcpulevel" "0" +"massScale" "0" +"inertiaScale" "1.0" +"ExplodeRadius" "0" +"ExplodeDamage" "0" +"drawinfastreflection" "0" +"disableX360" "0" +"disableshadows" "0" +"disablereceiveshadows" "0" +"Damagetype" "0" +"damagetoenablemotion" "0" +"allowfunnel" "1" +"scale" "1" +"angles" "0 -150.802 0" +"origin" "-8357.11 -2814.72 604.36" +"targetname" "prop_static_83" +"spawnflags" "4" +"solid" "6" +"model" "models/containers/gas_tank.mdl" +"luxelsize" "16" +"lightingMethod" "0" +"forcetoenablemotion" "10" +"fadedist" "1500" +"classname" "prop_physics" +} +{ +"skin" "0" +"shadowcastdist" "0" +"rendermode" "0" +"renderfx" "0" +"rendercolor" "255 255 255" +"renderamt" "255" +"pressuredelay" "0" +"physicsmode" "0" +"physdamagescale" "0.1" +"PerformanceMode" "0" +"nodamageforces" "0" +"minhealthdmg" "0" +"mingpulevel" "0" +"mincpulevel" "0" +"maxgpulevel" "0" +"maxcpulevel" "0" +"massScale" "0" +"inertiaScale" "1.0" +"ExplodeRadius" "0" +"ExplodeDamage" "0" +"drawinfastreflection" "0" +"disableX360" "0" +"disableshadows" "0" +"disablereceiveshadows" "0" +"Damagetype" "0" +"damagetoenablemotion" "0" +"allowfunnel" "1" +"scale" "1" +"angles" "0 -155.498 0" +"origin" "-8351.13 -2825.12 604.36" +"targetname" "prop_static_83" +"spawnflags" "4" +"solid" "6" +"model" "models/containers/gas_tank.mdl" +"luxelsize" "16" +"lightingMethod" "0" +"forcetoenablemotion" "10" +"fadedist" "1500" +"classname" "prop_physics" +} +{ +"skin" "0" +"shadowcastdist" "0" +"rendermode" "0" +"renderfx" "0" +"rendercolor" "255 255 255" +"renderamt" "255" +"pressuredelay" "0" +"physicsmode" "0" +"physdamagescale" "0.1" +"PerformanceMode" "0" +"nodamageforces" "0" +"minhealthdmg" "0" +"mingpulevel" "0" +"mincpulevel" "0" +"maxgpulevel" "0" +"maxcpulevel" "0" +"massScale" "0" +"inertiaScale" "1.0" +"ExplodeRadius" "0" +"ExplodeDamage" "0" +"drawinfastreflection" "0" +"disableX360" "0" +"disableshadows" "0" +"disablereceiveshadows" "0" +"Damagetype" "0" +"damagetoenablemotion" "0" +"allowfunnel" "1" +"scale" "1" +"angles" "0 31.4211 0" +"origin" "-8336.32 -2856.97 604.36" +"targetname" "prop_static_83" +"spawnflags" "4" +"solid" "6" +"model" "models/containers/gas_tank.mdl" +"luxelsize" "16" +"lightingMethod" "0" +"forcetoenablemotion" "10" +"fadedist" "1500" +"classname" "prop_physics" +} +{ +"spawnflags" "1" +"skin" "0" +"shadowcastdist" "0" +"rendermode" "0" +"renderfx" "0" +"rendercolor" "255 255 255" +"renderamt" "255" +"pressuredelay" "0" +"physicsmode" "0" +"physdamagescale" "0.1" +"PerformanceMode" "0" +"nodamageforces" "0" +"minhealthdmg" "0" +"mingpulevel" "0" +"mincpulevel" "0" +"maxgpulevel" "0" +"maxcpulevel" "0" +"massScale" "0" +"inertiaScale" "1.0" +"ExplodeRadius" "0" +"ExplodeDamage" "0" +"drawinfastreflection" "0" +"disableX360" "0" +"disableshadows" "0" +"disablereceiveshadows" "0" +"Damagetype" "0" +"damagetoenablemotion" "0" +"allowfunnel" "1" +"scale" "0.8" +"angles" "0 119.849 180" +"origin" "-8357.91 -2816.33 662.235" +"targetname" "func_model_287" +"model" "models/containers/crate_blue_plastic.mdl" +"forcetoenablemotion" "10" +"fadedist" "1500" +"classname" "prop_physics" +} +{ +"skin" "0" +"shadowcastdist" "0" +"rendermode" "0" +"renderfx" "0" +"rendercolor" "255 255 255" +"renderamt" "255" +"pressuredelay" "0" +"physicsmode" "0" +"physdamagescale" "0.1" +"PerformanceMode" "0" +"nodamageforces" "0" +"minhealthdmg" "0" +"mingpulevel" "0" +"mincpulevel" "0" +"maxgpulevel" "0" +"maxcpulevel" "0" +"massScale" "0" +"inertiaScale" "1.0" +"ExplodeRadius" "0" +"ExplodeDamage" "0" +"drawinfastreflection" "0" +"disableX360" "0" +"disableshadows" "0" +"disablereceiveshadows" "0" +"Damagetype" "0" +"damagetoenablemotion" "0" +"allowfunnel" "1" +"scale" "1" +"angles" "0 122.844 0" +"origin" "-8359.79 -2822.08 627.36" +"targetname" "func_model_225" +"spawnflags" "4" +"model" "models/containers/styrofoam_box_short_dirty.mdl" +"forcetoenablemotion" "10" +"fadedist" "1500" +"classname" "prop_physics" +} +{ +"spawnflags" "1" +"skin" "0" +"shadowcastdist" "0" +"rendermode" "0" +"renderfx" "0" +"rendercolor" "255 255 255" +"renderamt" "255" +"pressuredelay" "0" +"physicsmode" "0" +"physdamagescale" "0.1" +"PerformanceMode" "0" +"nodamageforces" "0" +"minhealthdmg" "0" +"mingpulevel" "0" +"mincpulevel" "0" +"maxgpulevel" "0" +"maxcpulevel" "0" +"massScale" "0" +"inertiaScale" "1.0" +"forcetoenablemotion" "0" +"ExplodeRadius" "0" +"ExplodeDamage" "0" +"drawinfastreflection" "0" +"disableX360" "0" +"disableshadows" "0" +"disablereceiveshadows" "0" +"Damagetype" "0" +"damagetoenablemotion" "0" +"allowfunnel" "1" +"scale" "1" +"angles" "0 130.405 0" +"origin" "-8357.34 -2822.34 586.36" +"targetname" "prop_static_3" +"solid" "6" +"model" "models/hardware/paint_container_metal.mdl" +"luxelsize" "16" +"lightingMethod" "0" +"fadedist" "1000" +"classname" "prop_physics" +} +{ +"spawnflags" "1" +"skin" "0" +"shadowcastdist" "0" +"rendermode" "0" +"renderfx" "0" +"rendercolor" "255 255 255" +"renderamt" "255" +"pressuredelay" "0" +"physicsmode" "0" +"physdamagescale" "0.1" +"PerformanceMode" "0" +"nodamageforces" "0" +"minhealthdmg" "0" +"mingpulevel" "0" +"mincpulevel" "0" +"maxgpulevel" "0" +"maxcpulevel" "0" +"massScale" "0" +"inertiaScale" "1.0" +"forcetoenablemotion" "0" +"ExplodeRadius" "0" +"ExplodeDamage" "0" +"drawinfastreflection" "0" +"disableX360" "0" +"disableshadows" "0" +"disablereceiveshadows" "0" +"Damagetype" "0" +"damagetoenablemotion" "0" +"allowfunnel" "1" +"scale" "1" +"angles" "0 -83.9714 0" +"origin" "-8336.39 -2847.8 586.36" +"targetname" "prop_static_3" +"solid" "6" +"model" "models/hardware/paint_container_metal.mdl" +"luxelsize" "16" +"lightingMethod" "0" +"fadedist" "1000" +"classname" "prop_physics" +} +{ +"spawnflags" "1" +"skin" "0" +"shadowcastdist" "0" +"rendermode" "0" +"renderfx" "0" +"rendercolor" "255 255 255" +"renderamt" "255" +"pressuredelay" "0" +"physicsmode" "0" +"physdamagescale" "0.1" +"PerformanceMode" "0" +"nodamageforces" "0" +"minhealthdmg" "0" +"mingpulevel" "0" +"mincpulevel" "0" +"maxgpulevel" "0" +"maxcpulevel" "0" +"massScale" "0" +"inertiaScale" "1.0" +"forcetoenablemotion" "0" +"ExplodeRadius" "0" +"ExplodeDamage" "0" +"drawinfastreflection" "0" +"disableX360" "0" +"disableshadows" "0" +"disablereceiveshadows" "0" +"Damagetype" "0" +"damagetoenablemotion" "0" +"allowfunnel" "1" +"scale" "1" +"angles" "0 -150.151 0" +"origin" "-8361.71 -2808.71 586.36" +"targetname" "prop_static_3" +"solid" "6" +"model" "models/hardware/paint_container_metal.mdl" +"luxelsize" "16" +"lightingMethod" "0" +"fadedist" "1000" +"classname" "prop_physics" +} +{ +"skin" "0" +"shadowcastdist" "0" +"rendermode" "0" +"renderfx" "0" +"rendercolor" "255 255 255" +"renderamt" "255" +"pressuredelay" "0" +"physicsmode" "0" +"physdamagescale" "0.1" +"PerformanceMode" "0" +"nodamageforces" "0" +"minhealthdmg" "0" +"mingpulevel" "0" +"mincpulevel" "0" +"maxgpulevel" "0" +"maxcpulevel" "0" +"massScale" "0" +"inertiaScale" "1.0" +"ExplodeRadius" "0" +"ExplodeDamage" "0" +"drawinfastreflection" "0" +"disableX360" "0" +"disableshadows" "0" +"disablereceiveshadows" "0" +"Damagetype" "0" +"damagetoenablemotion" "0" +"allowfunnel" "1" +"scale" "1" +"angles" "0 -69.2394 0" +"origin" "-8342.32 -2848.36 627.36" +"targetname" "func_model_225" +"spawnflags" "4" +"model" "models/containers/styrofoam_box_short_dirty.mdl" +"forcetoenablemotion" "10" +"fadedist" "1500" +"classname" "prop_physics" +} +{ +"skin" "0" +"shadowcastdist" "0" +"rendermode" "0" +"renderfx" "0" +"rendercolor" "255 255 255" +"renderamt" "255" +"pressuredelay" "0" +"physicsmode" "0" +"physdamagescale" "0.1" +"PerformanceMode" "0" +"nodamageforces" "0" +"minhealthdmg" "0" +"mingpulevel" "0" +"mincpulevel" "0" +"maxgpulevel" "0" +"maxcpulevel" "0" +"massScale" "0" +"inertiaScale" "1.0" +"ExplodeRadius" "0" +"ExplodeDamage" "0" +"drawinfastreflection" "0" +"disableX360" "0" +"disableshadows" "0" +"disablereceiveshadows" "0" +"Damagetype" "0" +"damagetoenablemotion" "0" +"allowfunnel" "1" +"scale" "1" +"angles" "0 28.2831 0" +"origin" "-8322.86 -2875.99 586.36" +"targetname" "func_model_895" +"spawnflags" "4" +"model" "models/containers/crate_orange_plastic.mdl" +"forcetoenablemotion" "10" +"fadedist" "1000" +"classname" "prop_physics" +} +{ +"skin" "0" +"shadowcastdist" "0" +"rendermode" "0" +"renderfx" "0" +"rendercolor" "255 255 255" +"renderamt" "255" +"pressuredelay" "0" +"physicsmode" "0" +"physdamagescale" "0.1" +"PerformanceMode" "0" +"nodamageforces" "0" +"minhealthdmg" "0" +"mingpulevel" "0" +"mincpulevel" "0" +"maxgpulevel" "0" +"maxcpulevel" "0" +"massScale" "0" +"inertiaScale" "1.0" +"ExplodeRadius" "0" +"ExplodeDamage" "0" +"drawinfastreflection" "0" +"disableX360" "0" +"disableshadows" "0" +"disablereceiveshadows" "0" +"Damagetype" "0" +"damagetoenablemotion" "0" +"allowfunnel" "1" +"scale" "1" +"angles" "0 -61.7169 0" +"origin" "-8313.16 -2888.88 586.36" +"targetname" "func_model_895" +"spawnflags" "4" +"model" "models/containers/crate_orange_plastic.mdl" +"forcetoenablemotion" "10" +"fadedist" "1000" +"classname" "prop_physics" +} +{ +"skin" "0" +"shadowcastdist" "0" +"rendermode" "0" +"renderfx" "0" +"rendercolor" "255 255 255" +"renderamt" "255" +"pressuredelay" "0" +"physicsmode" "0" +"physdamagescale" "0.1" +"PerformanceMode" "0" +"nodamageforces" "0" +"minhealthdmg" "0" +"mingpulevel" "0" +"mincpulevel" "0" +"maxgpulevel" "0" +"maxcpulevel" "0" +"massScale" "0" +"inertiaScale" "1.0" +"ExplodeRadius" "0" +"ExplodeDamage" "0" +"drawinfastreflection" "0" +"disableX360" "0" +"disableshadows" "0" +"disablereceiveshadows" "0" +"Damagetype" "0" +"damagetoenablemotion" "0" +"allowfunnel" "1" +"scale" "1" +"angles" "0 -151.717 0" +"origin" "-8304.44 -2908.08 586.36" +"targetname" "func_model_895" +"spawnflags" "4" +"model" "models/containers/crate_orange_plastic.mdl" +"forcetoenablemotion" "10" +"fadedist" "1000" +"classname" "prop_physics" +} +{ +"skin" "0" +"shadowcastdist" "0" +"rendermode" "0" +"renderfx" "0" +"rendercolor" "255 255 255" +"renderamt" "255" +"pressuredelay" "0" +"physicsmode" "0" +"physdamagescale" "0.1" +"PerformanceMode" "0" +"nodamageforces" "0" +"minhealthdmg" "0" +"mingpulevel" "0" +"mincpulevel" "0" +"maxgpulevel" "0" +"maxcpulevel" "0" +"massScale" "0" +"inertiaScale" "1.0" +"ExplodeRadius" "0" +"ExplodeDamage" "0" +"drawinfastreflection" "0" +"disableX360" "0" +"disableshadows" "0" +"disablereceiveshadows" "0" +"Damagetype" "0" +"damagetoenablemotion" "0" +"allowfunnel" "1" +"scale" "1" +"angles" "0 -137.524 0" +"origin" "-8296.97 -2921.09 586.36" +"targetname" "func_model_895" +"spawnflags" "4" +"model" "models/containers/crate_orange_plastic.mdl" +"forcetoenablemotion" "10" +"fadedist" "1000" +"classname" "prop_physics" +} +{ +"skin" "0" +"shadowcastdist" "0" +"rendermode" "0" +"renderfx" "0" +"rendercolor" "255 255 255" +"renderamt" "255" +"pressuredelay" "0" +"physicsmode" "0" +"physdamagescale" "0.1" +"PerformanceMode" "0" +"nodamageforces" "0" +"minhealthdmg" "0" +"mingpulevel" "0" +"mincpulevel" "0" +"maxgpulevel" "0" +"maxcpulevel" "0" +"massScale" "0" +"inertiaScale" "1.0" +"ExplodeRadius" "0" +"ExplodeDamage" "0" +"drawinfastreflection" "0" +"disableX360" "0" +"disableshadows" "0" +"disablereceiveshadows" "0" +"Damagetype" "0" +"damagetoenablemotion" "0" +"allowfunnel" "1" +"scale" "1" +"angles" "0 31.9871 0" +"origin" "-8321.86 -2877.73 604.36" +"targetname" "func_model_895" +"spawnflags" "4" +"model" "models/containers/crate_orange_plastic.mdl" +"forcetoenablemotion" "10" +"fadedist" "1000" +"classname" "prop_physics" +} +{ +"skin" "0" +"shadowcastdist" "0" +"rendermode" "0" +"renderfx" "0" +"rendercolor" "255 255 255" +"renderamt" "255" +"pressuredelay" "0" +"physicsmode" "0" +"physdamagescale" "0.1" +"PerformanceMode" "0" +"nodamageforces" "0" +"minhealthdmg" "0" +"mingpulevel" "0" +"mincpulevel" "0" +"maxgpulevel" "0" +"maxcpulevel" "0" +"massScale" "0" +"inertiaScale" "1.0" +"ExplodeRadius" "0" +"ExplodeDamage" "0" +"drawinfastreflection" "0" +"disableX360" "0" +"disableshadows" "0" +"disablereceiveshadows" "0" +"Damagetype" "0" +"damagetoenablemotion" "0" +"allowfunnel" "1" +"scale" "1" +"angles" "0 27.1071 0" +"origin" "-8314.89 -2889.87 604.36" +"targetname" "func_model_895" +"spawnflags" "4" +"model" "models/containers/crate_orange_plastic.mdl" +"forcetoenablemotion" "10" +"fadedist" "1000" +"classname" "prop_physics" +} +{ +"skin" "0" +"shadowcastdist" "0" +"rendermode" "0" +"renderfx" "0" +"rendercolor" "255 255 255" +"renderamt" "255" +"pressuredelay" "0" +"physicsmode" "0" +"physdamagescale" "0.1" +"PerformanceMode" "0" +"nodamageforces" "0" +"minhealthdmg" "0" +"mingpulevel" "0" +"mincpulevel" "0" +"maxgpulevel" "0" +"maxcpulevel" "0" +"massScale" "0" +"inertiaScale" "1.0" +"ExplodeRadius" "0" +"ExplodeDamage" "0" +"drawinfastreflection" "0" +"disableX360" "0" +"disableshadows" "0" +"disablereceiveshadows" "0" +"Damagetype" "0" +"damagetoenablemotion" "0" +"allowfunnel" "1" +"scale" "1" +"angles" "0 -80.9149 0" +"origin" "-8303.94 -2908.95 604.36" +"targetname" "func_model_895" +"spawnflags" "4" +"model" "models/containers/crate_orange_plastic.mdl" +"forcetoenablemotion" "10" +"fadedist" "1000" +"classname" "prop_physics" +} +{ +"skin" "0" +"shadowcastdist" "0" +"rendermode" "0" +"renderfx" "0" +"rendercolor" "255 255 255" +"renderamt" "255" +"pressuredelay" "0" +"physicsmode" "0" +"physdamagescale" "0.1" +"PerformanceMode" "0" +"nodamageforces" "0" +"minhealthdmg" "0" +"mingpulevel" "0" +"mincpulevel" "0" +"maxgpulevel" "0" +"maxcpulevel" "0" +"massScale" "0" +"inertiaScale" "1.0" +"ExplodeRadius" "0" +"ExplodeDamage" "0" +"drawinfastreflection" "0" +"disableX360" "0" +"disableshadows" "0" +"disablereceiveshadows" "0" +"Damagetype" "0" +"damagetoenablemotion" "0" +"allowfunnel" "1" +"scale" "1" +"angles" "0 114.489 0" +"origin" "-8317.92 -2884.58 652.36" +"targetname" "func_model_225" +"spawnflags" "4" +"model" "models/containers/styrofoam_box_short_dirty.mdl" +"forcetoenablemotion" "10" +"fadedist" "1500" +"classname" "prop_physics" +} +{ +"skin" "0" +"shadowcastdist" "0" +"rendermode" "0" +"renderfx" "0" +"rendercolor" "255 255 255" +"renderamt" "255" +"pressuredelay" "0" +"physicsmode" "0" +"physdamagescale" "0.1" +"PerformanceMode" "0" +"nodamageforces" "0" +"minhealthdmg" "0" +"mingpulevel" "0" +"mincpulevel" "0" +"maxgpulevel" "0" +"maxcpulevel" "0" +"massScale" "0" +"inertiaScale" "1.0" +"ExplodeRadius" "0" +"ExplodeDamage" "0" +"drawinfastreflection" "0" +"disableX360" "0" +"disableshadows" "0" +"disablereceiveshadows" "0" +"Damagetype" "0" +"damagetoenablemotion" "0" +"allowfunnel" "1" +"scale" "1" +"angles" "0 -59.5809 0" +"origin" "-8297.61 -2917.99 628.36" +"targetname" "func_model_225" +"spawnflags" "4" +"model" "models/containers/styrofoam_box_short_dirty.mdl" +"forcetoenablemotion" "10" +"fadedist" "1500" +"classname" "prop_physics" +} +{ +"skin" "0" +"shadowcastdist" "0" +"rendermode" "0" +"renderfx" "0" +"rendercolor" "255 255 255" +"renderamt" "255" +"pressuredelay" "0" +"physicsmode" "0" +"physdamagescale" "0.1" +"PerformanceMode" "0" +"nodamageforces" "0" +"minhealthdmg" "0" +"mingpulevel" "0" +"mincpulevel" "0" +"maxgpulevel" "0" +"maxcpulevel" "0" +"massScale" "0" +"inertiaScale" "1.0" +"ExplodeRadius" "0" +"ExplodeDamage" "0" +"drawinfastreflection" "0" +"disableX360" "0" +"disableshadows" "0" +"disablereceiveshadows" "0" +"Damagetype" "0" +"damagetoenablemotion" "0" +"allowfunnel" "1" +"scale" "1" +"angles" "0 20.8021 0" +"origin" "-8300.88 -2922.38 604.36" +"targetname" "func_model_240" +"spawnflags" "4" +"model" "models/hardware/paint_spraycan_closed.mdl" +"forcetoenablemotion" "5" +"fadedist" "1000" +"classname" "prop_physics" +} +{ +"skin" "0" +"shadowcastdist" "0" +"rendermode" "0" +"renderfx" "0" +"rendercolor" "255 255 255" +"renderamt" "255" +"pressuredelay" "0" +"physicsmode" "0" +"physdamagescale" "0.1" +"PerformanceMode" "0" +"nodamageforces" "0" +"minhealthdmg" "0" +"mingpulevel" "0" +"mincpulevel" "0" +"maxgpulevel" "0" +"maxcpulevel" "0" +"massScale" "0" +"inertiaScale" "1.0" +"ExplodeRadius" "0" +"ExplodeDamage" "0" +"drawinfastreflection" "0" +"disableX360" "0" +"disableshadows" "0" +"disablereceiveshadows" "0" +"Damagetype" "0" +"damagetoenablemotion" "0" +"allowfunnel" "1" +"scale" "1" +"angles" "0 -82.5729 0" +"origin" "-8294.08 -2926.26 604.36" +"targetname" "func_model_240" +"spawnflags" "4" +"model" "models/hardware/paint_spraycan_closed.mdl" +"forcetoenablemotion" "5" +"fadedist" "1000" +"classname" "prop_physics" +} +{ +"skin" "0" +"shadowcastdist" "0" +"rendermode" "0" +"renderfx" "0" +"rendercolor" "255 255 255" +"renderamt" "255" +"pressuredelay" "0" +"physicsmode" "0" +"physdamagescale" "0.1" +"PerformanceMode" "0" +"nodamageforces" "0" +"minhealthdmg" "0" +"mingpulevel" "0" +"mincpulevel" "0" +"maxgpulevel" "0" +"maxcpulevel" "0" +"massScale" "0" +"inertiaScale" "1.0" +"ExplodeRadius" "0" +"ExplodeDamage" "0" +"drawinfastreflection" "0" +"disableX360" "0" +"disableshadows" "0" +"disablereceiveshadows" "0" +"Damagetype" "0" +"damagetoenablemotion" "0" +"allowfunnel" "1" +"scale" "1" +"angles" "0 -99.5309 0" +"origin" "-8315.2 -2901.47 604.36" +"targetname" "func_model_240" +"spawnflags" "4" +"model" "models/hardware/paint_spraycan_closed.mdl" +"forcetoenablemotion" "5" +"fadedist" "1000" +"classname" "prop_physics" +} +{ +"spawnflags" "1" +"skin" "0" +"shadowcastdist" "0" +"rendermode" "0" +"renderfx" "0" +"rendercolor" "255 255 255" +"renderamt" "255" +"pressuredelay" "0" +"physicsmode" "0" +"physdamagescale" "0.1" +"PerformanceMode" "0" +"nodamageforces" "0" +"minhealthdmg" "0" +"mingpulevel" "0" +"mincpulevel" "0" +"maxgpulevel" "0" +"maxcpulevel" "0" +"massScale" "0" +"inertiaScale" "1.0" +"forcetoenablemotion" "0" +"fadedist" "-1" +"ExplodeRadius" "0" +"ExplodeDamage" "0" +"drawinfastreflection" "0" +"disableX360" "0" +"disableshadows" "0" +"disablereceiveshadows" "0" +"Damagetype" "0" +"damagetoenablemotion" "0" +"allowfunnel" "1" +"scale" "1" +"angles" "0 119.849 0" +"origin" "-8302.32 -2913.79 652.36" +"targetname" "func_model_218" +"model" "models/containers/styrofoam_box_long_dirty.mdl" +"classname" "prop_physics" +} +{ +"spawnflags" "1" +"skin" "0" +"shadowcastdist" "0" +"rendermode" "0" +"renderfx" "0" +"rendercolor" "255 255 255" +"renderamt" "255" +"pressuredelay" "0" +"physicsmode" "0" +"physdamagescale" "0.1" +"PerformanceMode" "0" +"nodamageforces" "0" +"minhealthdmg" "0" +"mingpulevel" "0" +"mincpulevel" "0" +"maxgpulevel" "0" +"maxcpulevel" "0" +"massScale" "0" +"inertiaScale" "1.0" +"forcetoenablemotion" "0" +"fadedist" "-1" +"ExplodeRadius" "0" +"ExplodeDamage" "0" +"drawinfastreflection" "0" +"disableX360" "0" +"disableshadows" "0" +"disablereceiveshadows" "0" +"Damagetype" "0" +"damagetoenablemotion" "0" +"allowfunnel" "1" +"scale" "1" +"angles" "4.26799e-006 -145.253 6.43766e-008" +"origin" "-4448.12 -4514.19 666.181" +"targetname" "func_static_1428" +"model" "models/containers/can_blue_soda.mdl" +"classname" "prop_physics" +} +{ +"spawnflags" "1" +"skin" "0" +"shadowcastdist" "0" +"rendermode" "0" +"renderfx" "0" +"rendercolor" "255 255 255" +"renderamt" "255" +"pressuredelay" "0" +"physicsmode" "0" +"physdamagescale" "0.1" +"PerformanceMode" "0" +"nodamageforces" "0" +"minhealthdmg" "0" +"mingpulevel" "0" +"mincpulevel" "0" +"maxgpulevel" "0" +"maxcpulevel" "0" +"massScale" "0" +"inertiaScale" "1.0" +"forcetoenablemotion" "0" +"fadedist" "-1" +"ExplodeRadius" "0" +"ExplodeDamage" "0" +"drawinfastreflection" "0" +"disableX360" "0" +"disableshadows" "0" +"disablereceiveshadows" "0" +"Damagetype" "0" +"damagetoenablemotion" "0" +"allowfunnel" "1" +"scale" "1" +"angles" "4.26799e-006 64.3103 6.43766e-008" +"origin" "-6668.7 -636.537 545.181" +"targetname" "func_static_1428" +"model" "models/containers/can_blue_soda.mdl" +"classname" "prop_physics" +} +{ +"spawnflags" "1" +"skin" "0" +"shadowcastdist" "0" +"rendermode" "0" +"renderfx" "0" +"rendercolor" "255 255 255" +"renderamt" "255" +"pressuredelay" "0" +"physicsmode" "0" +"physdamagescale" "0.1" +"PerformanceMode" "0" +"nodamageforces" "0" +"minhealthdmg" "0" +"mingpulevel" "0" +"mincpulevel" "0" +"maxgpulevel" "0" +"maxcpulevel" "0" +"massScale" "0" +"inertiaScale" "1.0" +"forcetoenablemotion" "0" +"fadedist" "-1" +"ExplodeRadius" "0" +"ExplodeDamage" "0" +"drawinfastreflection" "0" +"disableX360" "0" +"disableshadows" "0" +"disablereceiveshadows" "0" +"Damagetype" "0" +"damagetoenablemotion" "0" +"allowfunnel" "1" +"scale" "1" +"angles" "-2.53273e-006 -107.57 -1.67088e-006" +"origin" "-6664.16 -937.235 545.181" +"targetname" "func_static_1428" +"model" "models/containers/can_blue_soda.mdl" +"classname" "prop_physics" +} +{ +"spawnflags" "1" +"skin" "0" +"shadowcastdist" "0" +"rendermode" "0" +"renderfx" "0" +"rendercolor" "255 255 255" +"renderamt" "255" +"pressuredelay" "0" +"physicsmode" "0" +"physdamagescale" "0.1" +"PerformanceMode" "0" +"nodamageforces" "0" +"minhealthdmg" "0" +"mingpulevel" "0" +"mincpulevel" "0" +"maxgpulevel" "0" +"maxcpulevel" "0" +"massScale" "0" +"inertiaScale" "1.0" +"forcetoenablemotion" "0" +"fadedist" "-1" +"ExplodeRadius" "0" +"ExplodeDamage" "0" +"drawinfastreflection" "0" +"disableX360" "0" +"disableshadows" "0" +"disablereceiveshadows" "0" +"Damagetype" "0" +"damagetoenablemotion" "0" +"allowfunnel" "1" +"scale" "1" +"angles" "4.26799e-006 32.1242 6.43766e-008" +"origin" "-5892.35 775.76 872.583" +"targetname" "func_static_1428" +"model" "models/containers/can_blue_soda.mdl" +"classname" "prop_physics" +} +{ +"spawnflags" "1" +"skin" "0" +"shadowcastdist" "0" +"rendermode" "0" +"renderfx" "0" +"rendercolor" "255 255 255" +"renderamt" "255" +"pressuredelay" "0" +"physicsmode" "0" +"physdamagescale" "0.1" +"PerformanceMode" "0" +"nodamageforces" "0" +"minhealthdmg" "0" +"mingpulevel" "0" +"mincpulevel" "0" +"maxgpulevel" "0" +"maxcpulevel" "0" +"massScale" "0" +"inertiaScale" "1.0" +"forcetoenablemotion" "0" +"fadedist" "-1" +"ExplodeRadius" "0" +"ExplodeDamage" "0" +"drawinfastreflection" "0" +"disableX360" "0" +"disableshadows" "0" +"disablereceiveshadows" "0" +"Damagetype" "0" +"damagetoenablemotion" "0" +"allowfunnel" "1" +"scale" "1" +"angles" "4.26799e-006 32.1242 6.43766e-008" +"origin" "-5615.16 -881.698 600.583" +"targetname" "func_static_1428" +"model" "models/containers/can_blue_soda.mdl" +"classname" "prop_physics" +} +{ +"spawnflags" "1" +"skin" "0" +"shadowcastdist" "0" +"rendermode" "0" +"renderfx" "0" +"rendercolor" "255 255 255" +"renderamt" "255" +"pressuredelay" "0" +"physicsmode" "0" +"physdamagescale" "0.1" +"PerformanceMode" "0" +"nodamageforces" "0" +"minhealthdmg" "0" +"mingpulevel" "0" +"mincpulevel" "0" +"maxgpulevel" "0" +"maxcpulevel" "0" +"massScale" "0" +"inertiaScale" "1.0" +"forcetoenablemotion" "0" +"fadedist" "-1" +"ExplodeRadius" "0" +"ExplodeDamage" "0" +"drawinfastreflection" "0" +"disableX360" "0" +"disableshadows" "0" +"disablereceiveshadows" "0" +"Damagetype" "0" +"damagetoenablemotion" "0" +"allowfunnel" "1" +"scale" "1" +"angles" "0 32.8045 2.59711e-006" +"origin" "-8307.97 -1570.87 872.582" +"targetname" "func_static_1428" +"model" "models/containers/can_blue_soda.mdl" +"classname" "prop_physics" +} +{ +"spawnflags" "1" +"skin" "0" +"shadowcastdist" "0" +"rendermode" "0" +"renderfx" "0" +"rendercolor" "255 255 255" +"renderamt" "255" +"pressuredelay" "0" +"physdamagescale" "0.1" +"PerformanceMode" "0" +"nodamageforces" "0" +"minhealthdmg" "0" +"mingpulevel" "0" +"mincpulevel" "0" +"maxgpulevel" "0" +"maxcpulevel" "0" +"massScale" "0" +"inertiaScale" "1.0" +"fadedist" "-1" +"ExplodeRadius" "0" +"ExplodeDamage" "0" +"drawinfastreflection" "0" +"disableX360" "0" +"disableshadows" "0" +"disablereceiveshadows" "0" +"Damagetype" "0" +"damagetoenablemotion" "0" +"allowfunnel" "1" +"scale" "1" +"angles" "0 149.842 0" +"origin" "-8655.45 -2144.56 586" +"targetname" "func_static_1" +"physicsmode" "1" +"model" "models/containers/barrel.mdl" +"forcetoenablemotion" "0" +"classname" "prop_physics" +} +{ +"spawnflags" "1" +"skin" "0" +"shadowcastdist" "0" +"rendermode" "0" +"renderfx" "0" +"rendercolor" "255 255 255" +"renderamt" "255" +"pressuredelay" "0" +"physdamagescale" "0.1" +"PerformanceMode" "0" +"nodamageforces" "0" +"minhealthdmg" "0" +"mingpulevel" "0" +"mincpulevel" "0" +"maxgpulevel" "0" +"maxcpulevel" "0" +"massScale" "0" +"inertiaScale" "1.0" +"fadedist" "-1" +"ExplodeRadius" "0" +"ExplodeDamage" "0" +"drawinfastreflection" "0" +"disableX360" "0" +"disableshadows" "0" +"disablereceiveshadows" "0" +"Damagetype" "0" +"damagetoenablemotion" "0" +"allowfunnel" "1" +"scale" "1" +"angles" "0 -135 0" +"origin" "-8631.4 -2171.43 586" +"targetname" "func_static_1" +"physicsmode" "1" +"model" "models/containers/barrel.mdl" +"forcetoenablemotion" "0" +"classname" "prop_physics" +} +{ +"spawnflags" "1" +"skin" "0" +"shadowcastdist" "0" +"rendermode" "0" +"renderfx" "0" +"rendercolor" "255 255 255" +"renderamt" "255" +"pressuredelay" "0" +"physdamagescale" "0.1" +"PerformanceMode" "0" +"nodamageforces" "0" +"minhealthdmg" "0" +"mingpulevel" "0" +"mincpulevel" "0" +"maxgpulevel" "0" +"maxcpulevel" "0" +"massScale" "0" +"inertiaScale" "1.0" +"fadedist" "-1" +"ExplodeRadius" "0" +"ExplodeDamage" "0" +"drawinfastreflection" "0" +"disableX360" "0" +"disableshadows" "0" +"disablereceiveshadows" "0" +"Damagetype" "0" +"damagetoenablemotion" "0" +"allowfunnel" "1" +"scale" "1" +"angles" "0 -78.0148 0" +"origin" "-8600.29 -2114.86 586" +"targetname" "func_static_1" +"physicsmode" "1" +"model" "models/containers/barrel.mdl" +"forcetoenablemotion" "0" +"classname" "prop_physics" +} +{ +"spawnflags" "1" +"skin" "0" +"shadowcastdist" "0" +"rendermode" "0" +"renderfx" "0" +"rendercolor" "255 255 255" +"renderamt" "255" +"pressuredelay" "0" +"physicsmode" "0" +"physdamagescale" "0.1" +"PerformanceMode" "0" +"nodamageforces" "0" +"minhealthdmg" "0" +"mingpulevel" "0" +"mincpulevel" "0" +"maxgpulevel" "0" +"maxcpulevel" "0" +"massScale" "0" +"inertiaScale" "1.0" +"fadedist" "-1" +"ExplodeRadius" "0" +"ExplodeDamage" "0" +"drawinfastreflection" "0" +"disableX360" "0" +"disableshadows" "0" +"disablereceiveshadows" "0" +"Damagetype" "0" +"damagetoenablemotion" "0" +"allowfunnel" "1" +"scale" "1" +"angles" "0 -135 0" +"origin" "-8638.48 -2161.53 656" +"targetname" "func_static_1" +"solid" "6" +"model" "models/containers/box_large_plastic.mdl" +"forcetoenablemotion" "1" +"classname" "prop_physics" +} +{ +"spawnflags" "1" +"skin" "0" +"shadowcastdist" "0" +"rendermode" "0" +"renderfx" "0" +"rendercolor" "255 255 255" +"renderamt" "255" +"pressuredelay" "0" +"physicsmode" "0" +"physdamagescale" "0.1" +"PerformanceMode" "0" +"nodamageforces" "0" +"minhealthdmg" "0" +"mingpulevel" "0" +"mincpulevel" "0" +"maxgpulevel" "0" +"maxcpulevel" "0" +"massScale" "0" +"inertiaScale" "1.0" +"fadedist" "-1" +"ExplodeRadius" "0" +"ExplodeDamage" "0" +"drawinfastreflection" "0" +"disableX360" "0" +"disableshadows" "0" +"disablereceiveshadows" "0" +"Damagetype" "0" +"damagetoenablemotion" "0" +"allowfunnel" "1" +"scale" "1" +"angles" "0 -135 0" +"origin" "-8596.76 -2119.81 656" +"targetname" "func_static_1" +"solid" "6" +"model" "models/containers/box_large_plastic.mdl" +"forcetoenablemotion" "1" +"classname" "prop_physics" +} +{ +"spawnflags" "1" +"skin" "0" +"shadowcastdist" "0" +"rendermode" "0" +"renderfx" "0" +"rendercolor" "255 255 255" +"renderamt" "255" +"pressuredelay" "0" +"physicsmode" "0" +"physdamagescale" "0.1" +"PerformanceMode" "0" +"nodamageforces" "0" +"minhealthdmg" "0" +"mingpulevel" "0" +"mincpulevel" "0" +"maxgpulevel" "0" +"maxcpulevel" "0" +"massScale" "0" +"inertiaScale" "1.0" +"fadedist" "-1" +"ExplodeRadius" "0" +"ExplodeDamage" "0" +"drawinfastreflection" "0" +"disableX360" "0" +"disableshadows" "0" +"disablereceiveshadows" "0" +"Damagetype" "0" +"damagetoenablemotion" "0" +"allowfunnel" "1" +"scale" "1" +"angles" "0 -45 0" +"origin" "-8516.15 -2300.83 586" +"targetname" "func_static_1" +"solid" "6" +"model" "models/containers/box_large_plastic.mdl" +"forcetoenablemotion" "1" +"classname" "prop_physics" +} +{ +"spawnflags" "1" +"skin" "0" +"shadowcastdist" "0" +"rendermode" "0" +"renderfx" "0" +"rendercolor" "255 255 255" +"renderamt" "255" +"pressuredelay" "0" +"physicsmode" "0" +"physdamagescale" "0.1" +"PerformanceMode" "0" +"nodamageforces" "0" +"minhealthdmg" "0" +"mingpulevel" "0" +"mincpulevel" "0" +"maxgpulevel" "0" +"maxcpulevel" "0" +"massScale" "0" +"inertiaScale" "1.0" +"fadedist" "-1" +"ExplodeRadius" "0" +"ExplodeDamage" "0" +"drawinfastreflection" "0" +"disableX360" "0" +"disableshadows" "0" +"disablereceiveshadows" "0" +"Damagetype" "0" +"damagetoenablemotion" "0" +"allowfunnel" "1" +"scale" "1" +"angles" "0 -45 0" +"origin" "-8570.59 -2246.38 586" +"targetname" "func_static_1" +"solid" "6" +"model" "models/containers/box_large_plastic.mdl" +"forcetoenablemotion" "1" +"classname" "prop_physics" +} +{ +"spawnflags" "1" +"skin" "0" +"shadowcastdist" "0" +"rendermode" "0" +"renderfx" "0" +"rendercolor" "255 255 255" +"renderamt" "255" +"pressuredelay" "0" +"physicsmode" "0" +"physdamagescale" "0.1" +"PerformanceMode" "0" +"nodamageforces" "0" +"minhealthdmg" "0" +"mingpulevel" "0" +"mincpulevel" "0" +"maxgpulevel" "0" +"maxcpulevel" "0" +"massScale" "0" +"inertiaScale" "1.0" +"fadedist" "-1" +"ExplodeRadius" "0" +"ExplodeDamage" "0" +"drawinfastreflection" "0" +"disableX360" "0" +"disableshadows" "0" +"disablereceiveshadows" "0" +"Damagetype" "0" +"damagetoenablemotion" "0" +"allowfunnel" "1" +"scale" "1" +"angles" "0 -45 0" +"origin" "-8594.63 -2222.34 586" +"targetname" "func_static_1" +"solid" "6" +"model" "models/containers/box_large_plastic.mdl" +"forcetoenablemotion" "1" +"classname" "prop_physics" +} +{ +"spawnflags" "1" +"skin" "0" +"shadowcastdist" "0" +"rendermode" "0" +"renderfx" "0" +"rendercolor" "255 255 255" +"renderamt" "255" +"pressuredelay" "0" +"physicsmode" "0" +"physdamagescale" "0.1" +"PerformanceMode" "0" +"nodamageforces" "0" +"minhealthdmg" "0" +"mingpulevel" "0" +"mincpulevel" "0" +"maxgpulevel" "0" +"maxcpulevel" "0" +"massScale" "0" +"inertiaScale" "1.0" +"forcetoenablemotion" "0" +"fadedist" "-1" +"ExplodeRadius" "0" +"ExplodeDamage" "0" +"drawinfastreflection" "0" +"disableX360" "0" +"disableshadows" "0" +"disablereceiveshadows" "0" +"Damagetype" "0" +"damagetoenablemotion" "0" +"allowfunnel" "1" +"scale" "1" +"angles" "1.40406e-006 59.3433 -2.16305e-006" +"origin" "-7348.92 -477.003 596.582" +"targetname" "func_static_1428" +"model" "models/containers/can_blue_soda.mdl" +"classname" "prop_physics" +} +{ +"skin" "0" +"shadowcastdist" "0" +"rendermode" "0" +"renderfx" "0" +"rendercolor" "255 255 255" +"renderamt" "255" +"pressuredelay" "0" +"physicsmode" "0" +"physdamagescale" "0.1" +"PerformanceMode" "0" +"nodamageforces" "0" +"minhealthdmg" "0" +"mingpulevel" "0" +"mincpulevel" "0" +"maxgpulevel" "0" +"maxcpulevel" "0" +"massScale" "0" +"inertiaScale" "1.0" +"forcetoenablemotion" "0" +"fadedist" "-1" +"ExplodeRadius" "0" +"ExplodeDamage" "0" +"drawinfastreflection" "0" +"disableX360" "0" +"disableshadows" "0" +"disablereceiveshadows" "0" +"Damagetype" "0" +"damagetoenablemotion" "0" +"allowfunnel" "1" +"scale" "0.98919" +"angles" "89.9558 0 -36.2377" +"origin" "-7993.88 -1240.76 576.988" +"targetname" "prop_physics_1" +"spawnflags" "4" +"model" "models/containers/can_red_soda.mdl" +"collide_titan" "0" +"collide_sight" "0" +"collide_human" "0" +"collide_bullet" "0" +"collide_ai" "0" +"classname" "prop_physics" +} +{ +"spawnflags" "1" +"skin" "0" +"shadowcastdist" "0" +"rendermode" "0" +"renderfx" "0" +"rendercolor" "255 255 255" +"renderamt" "255" +"pressuredelay" "0" +"physicsmode" "0" +"physdamagescale" "0.1" +"PerformanceMode" "0" +"nodamageforces" "0" +"minhealthdmg" "0" +"mingpulevel" "0" +"mincpulevel" "0" +"maxgpulevel" "0" +"maxcpulevel" "0" +"massScale" "0" +"inertiaScale" "1.0" +"forcetoenablemotion" "0" +"fadedist" "-1" +"ExplodeRadius" "0" +"ExplodeDamage" "0" +"drawinfastreflection" "0" +"disableX360" "0" +"disableshadows" "0" +"disablereceiveshadows" "0" +"Damagetype" "0" +"damagetoenablemotion" "0" +"allowfunnel" "1" +"scale" "0.98919" +"angles" "89.9558 0 -126.238" +"origin" "-7996 -1194.28 577.489" +"targetname" "func_static_1428" +"model" "models/containers/can_blue_soda.mdl" +"classname" "prop_physics" +} +{ +"skin" "0" +"shadowcastdist" "0" +"rendermode" "0" +"renderfx" "0" +"rendercolor" "255 255 255" +"renderamt" "255" +"pressuredelay" "0" +"physicsmode" "0" +"physdamagescale" "0.1" +"PerformanceMode" "0" +"nodamageforces" "0" +"minhealthdmg" "0" +"mingpulevel" "0" +"mincpulevel" "0" +"maxgpulevel" "0" +"maxcpulevel" "0" +"massScale" "0" +"inertiaScale" "1.0" +"forcetoenablemotion" "0" +"fadedist" "-1" +"ExplodeRadius" "0" +"ExplodeDamage" "0" +"drawinfastreflection" "0" +"disableX360" "0" +"disableshadows" "0" +"disablereceiveshadows" "0" +"Damagetype" "0" +"damagetoenablemotion" "0" +"allowfunnel" "1" +"scale" "0.876748" +"angles" "89.9558 0 -134.246" +"origin" "-7463.83 -1274.32 588.877" +"targetname" "prop_physics_1" +"spawnflags" "4" +"model" "models/containers/can_red_soda.mdl" +"collide_titan" "0" +"collide_sight" "0" +"collide_human" "0" +"collide_bullet" "0" +"collide_ai" "0" +"classname" "prop_physics" +} +{ +"spawnflags" "1" +"skin" "0" +"shadowcastdist" "0" +"rendermode" "0" +"renderfx" "0" +"rendercolor" "255 255 255" +"renderamt" "255" +"pressuredelay" "0" +"physicsmode" "0" +"physdamagescale" "0.1" +"PerformanceMode" "0" +"nodamageforces" "0" +"minhealthdmg" "0" +"mingpulevel" "0" +"mincpulevel" "0" +"maxgpulevel" "0" +"maxcpulevel" "0" +"massScale" "0" +"inertiaScale" "1.0" +"forcetoenablemotion" "0" +"fadedist" "-1" +"ExplodeRadius" "0" +"ExplodeDamage" "0" +"drawinfastreflection" "0" +"disableX360" "0" +"disableshadows" "0" +"disablereceiveshadows" "0" +"Damagetype" "0" +"damagetoenablemotion" "0" +"allowfunnel" "1" +"scale" "0.876748" +"angles" "89.9558 0 135.754" +"origin" "-7504.36 -1281.92 589.321" +"targetname" "func_static_1428" +"model" "models/containers/can_blue_soda.mdl" +"classname" "prop_physics" +} +{ +"skin" "0" +"shadowcastdist" "0" +"rendermode" "0" +"renderfx" "0" +"rendercolor" "255 255 255" +"renderamt" "255" +"pressuredelay" "0" +"physicsmode" "0" +"physdamagescale" "0.1" +"PerformanceMode" "0" +"nodamageforces" "0" +"minhealthdmg" "0" +"mingpulevel" "0" +"mincpulevel" "0" +"maxgpulevel" "0" +"maxcpulevel" "0" +"massScale" "0" +"inertiaScale" "1.0" +"forcetoenablemotion" "0" +"fadedist" "-1" +"ExplodeRadius" "0" +"ExplodeDamage" "0" +"drawinfastreflection" "0" +"disableX360" "0" +"disableshadows" "0" +"disablereceiveshadows" "0" +"Damagetype" "0" +"damagetoenablemotion" "0" +"allowfunnel" "1" +"scale" "1.19801" +"angles" "89.9558 0 -128.72" +"origin" "-6799.69 -346.635 581.197" +"targetname" "prop_physics_1" +"spawnflags" "4" +"model" "models/containers/can_red_soda.mdl" +"collide_titan" "0" +"collide_sight" "0" +"collide_human" "0" +"collide_bullet" "0" +"collide_ai" "0" +"classname" "prop_physics" +} +{ +"spawnflags" "1" +"skin" "0" +"shadowcastdist" "0" +"rendermode" "0" +"renderfx" "0" +"rendercolor" "255 255 255" +"renderamt" "255" +"pressuredelay" "0" +"physicsmode" "0" +"physdamagescale" "0.1" +"PerformanceMode" "0" +"nodamageforces" "0" +"minhealthdmg" "0" +"mingpulevel" "0" +"mincpulevel" "0" +"maxgpulevel" "0" +"maxcpulevel" "0" +"massScale" "0" +"inertiaScale" "1.0" +"forcetoenablemotion" "0" +"fadedist" "-1" +"ExplodeRadius" "0" +"ExplodeDamage" "0" +"drawinfastreflection" "0" +"disableX360" "0" +"disableshadows" "0" +"disablereceiveshadows" "0" +"Damagetype" "0" +"damagetoenablemotion" "0" +"allowfunnel" "1" +"scale" "1.19801" +"angles" "89.9558 0 141.28" +"origin" "-6855.82 -351.639 581.804" +"targetname" "func_static_1428" +"model" "models/containers/can_blue_soda.mdl" +"classname" "prop_physics" +} +{ +"skin" "0" +"shadowcastdist" "0" +"rendermode" "0" +"renderfx" "0" +"rendercolor" "255 255 255" +"renderamt" "255" +"pressuredelay" "0" +"physicsmode" "0" +"physdamagescale" "0.1" +"PerformanceMode" "0" +"nodamageforces" "0" +"minhealthdmg" "0" +"mingpulevel" "0" +"mincpulevel" "0" +"maxgpulevel" "0" +"maxcpulevel" "0" +"massScale" "0" +"inertiaScale" "1.0" +"forcetoenablemotion" "0" +"fadedist" "-1" +"ExplodeRadius" "0" +"ExplodeDamage" "0" +"drawinfastreflection" "0" +"disableX360" "0" +"disableshadows" "0" +"disablereceiveshadows" "0" +"Damagetype" "0" +"damagetoenablemotion" "0" +"allowfunnel" "1" +"scale" "0.892666" +"angles" "89.9558 0 94.2158" +"origin" "-7214.96 -435.646 576.893" +"targetname" "prop_physics_1" +"spawnflags" "4" +"model" "models/containers/can_red_soda.mdl" +"collide_titan" "0" +"collide_sight" "0" +"collide_human" "0" +"collide_bullet" "0" +"collide_ai" "0" +"classname" "prop_physics" +} +{ +"spawnflags" "1" +"skin" "0" +"shadowcastdist" "0" +"rendermode" "0" +"renderfx" "0" +"rendercolor" "255 255 255" +"renderamt" "255" +"pressuredelay" "0" +"physicsmode" "0" +"physdamagescale" "0.1" +"PerformanceMode" "0" +"nodamageforces" "0" +"minhealthdmg" "0" +"mingpulevel" "0" +"mincpulevel" "0" +"maxgpulevel" "0" +"maxcpulevel" "0" +"massScale" "0" +"inertiaScale" "1.0" +"forcetoenablemotion" "0" +"fadedist" "-1" +"ExplodeRadius" "0" +"ExplodeDamage" "0" +"drawinfastreflection" "0" +"disableX360" "0" +"disableshadows" "0" +"disablereceiveshadows" "0" +"Damagetype" "0" +"damagetoenablemotion" "0" +"allowfunnel" "1" +"scale" "0.892666" +"angles" "89.9558 0 4.2156" +"origin" "-7181.8 -461.404 577.346" +"targetname" "func_static_1428" +"model" "models/containers/can_blue_soda.mdl" +"classname" "prop_physics" +} +{ +"skin" "0" +"shadowcastdist" "0" +"rendermode" "0" +"renderfx" "0" +"rendercolor" "255 255 255" +"renderamt" "255" +"pressuredelay" "0" +"physicsmode" "0" +"physdamagescale" "0.1" +"PerformanceMode" "0" +"nodamageforces" "0" +"minhealthdmg" "0" +"mingpulevel" "0" +"mincpulevel" "0" +"maxgpulevel" "0" +"maxcpulevel" "0" +"massScale" "0" +"inertiaScale" "1.0" +"forcetoenablemotion" "0" +"fadedist" "-1" +"ExplodeRadius" "0" +"ExplodeDamage" "0" +"drawinfastreflection" "0" +"disableX360" "0" +"disableshadows" "0" +"disablereceiveshadows" "0" +"Damagetype" "0" +"damagetoenablemotion" "0" +"allowfunnel" "1" +"scale" "1" +"angles" "89.9558 0 -70.039" +"origin" "-6909.78 -873.816 524.998" +"targetname" "prop_physics_1" +"spawnflags" "4" +"model" "models/containers/can_red_soda.mdl" +"collide_titan" "0" +"collide_sight" "0" +"collide_human" "0" +"collide_bullet" "0" +"collide_ai" "0" +"classname" "prop_physics" +} +{ +"spawnflags" "1" +"skin" "0" +"shadowcastdist" "0" +"rendermode" "0" +"renderfx" "0" +"rendercolor" "255 255 255" +"renderamt" "255" +"pressuredelay" "0" +"physicsmode" "0" +"physdamagescale" "0.1" +"PerformanceMode" "0" +"nodamageforces" "0" +"minhealthdmg" "0" +"mingpulevel" "0" +"mincpulevel" "0" +"maxgpulevel" "0" +"maxcpulevel" "0" +"massScale" "0" +"inertiaScale" "1.0" +"forcetoenablemotion" "0" +"fadedist" "-1" +"ExplodeRadius" "0" +"ExplodeDamage" "0" +"drawinfastreflection" "0" +"disableX360" "0" +"disableshadows" "0" +"disablereceiveshadows" "0" +"Damagetype" "0" +"damagetoenablemotion" "0" +"allowfunnel" "1" +"scale" "1" +"angles" "89.9558 0 -160.039" +"origin" "-6937.7 -835.964 525.505" +"targetname" "func_static_1428" +"model" "models/containers/can_blue_soda.mdl" +"classname" "prop_physics" +} +{ +"editorclass" "trigger_fw_territory" +"origin" "-6879.19 -581.853 796" +"wait" "0" +"triggerNearbyRadius" "0" +"triggerFilterTeamOther" "1" +"triggerFilterTeamNeutral" "0" +"triggerFilterTeamMilitia" "1" +"triggerFilterTeamIMC" "1" +"triggerFilterTeamBeast" "0" +"triggerFilterPlayer" "all" +"triggerFilterPhaseShift" "any" +"triggerFilterNpcOwnedByPlayer" "any" +"triggerFilterNpcFlip" "0" +"triggerFilterNpc" "all" +"triggerFilterNonCharacter" "1" +"StartDisabled" "0" +"spawnflags" "64" +"triggerFilterUseNew" "1" +"link_guid" "25060c9d8d9" +"classname" "trigger_multiple" +"*trigger_brush_0_plane_0" "-1 -0 -0 -223.44238" +"*trigger_brush_0_plane_1" "1 0 0 2033.6353" +"*trigger_brush_0_plane_2" "0 -1 0 -114.55118" +"*trigger_brush_0_plane_3" "0 1 0 2275.4695" +"*trigger_brush_0_plane_4" "0 0 -1 296" +"*trigger_brush_0_plane_5" "0 0 1 296" +"*trigger_brush_0_plane_6" "0.70710683 0.70710671 0 2026.9972" +"*trigger_brush_0_plane_7" "0.99972111 -0.023614977 0 2013.3975" +"*trigger_brush_0_plane_8" "-0.70710683 -0.70710677 -0 -1506.9976" +"*trigger_brush_0_plane_9" "-0.70710701 0.70710653 0 1191.0017" +"*trigger_brush_0_plane_10" "0.70710689 0.70710677 0 2026.9973" +"*trigger_brush_0_plane_11" "0.99972117 -0.023614977 0 2013.3977" +"*trigger_brush_0_plane_12" "-0.70710683 -0.70710683 0 -1506.9976" +"*trigger_brush_0_plane_13" "-0.70710707 0.70710659 0 1191.0018" +"*trigger_brush_0_plane_14" "0.92833394 0.37174723 0 2197.5474" +"*trigger_brush_0_plane_15" "0.37174726 -0.92833406 0 643.34802" +"*trigger_brush_1_plane_0" "-1 -0 -0 -591.1377" +"*trigger_brush_1_plane_1" "1 0 0 2361.7329" +"*trigger_brush_1_plane_2" "-0 -1 -0 -889.54016" +"*trigger_brush_1_plane_3" "0 1 0 2660.1355" +"*trigger_brush_1_plane_4" "0 0 -1 296" +"*trigger_brush_1_plane_5" "0 0 1 296" +"*trigger_brush_1_plane_6" "-0.70710683 -0.70710671 -0 -2026.9973" +"*trigger_brush_1_plane_7" "0.70710683 -0.70710671 0 768.99762" +"*trigger_brush_1_plane_8" "0.70710677 0.70710677 0 2570.9971" +"*trigger_brush_1_plane_9" "-0.70710677 0.70710677 0 1191.0024" +"*trigger_brush_1_plane_10" "0.70710689 -0.70710671 0 768.99786" +"*trigger_brush_1_plane_11" "0.70710683 0.70710683 0 2570.9976" +"*trigger_brush_1_plane_12" "-0.70710665 0.70710689 0 1191.0029" +"*trigger_brush_2_plane_0" "-1 -0 -0 1043.6934" +"*trigger_brush_2_plane_1" "1 -0 -0 -446.89502" +"*trigger_brush_2_plane_2" "0 -1 0 2660.1357" +"*trigger_brush_2_plane_3" "0 1 0 -2094.4504" +"*trigger_brush_2_plane_4" "0 0 -1 296" +"*trigger_brush_2_plane_5" "0 0 1 296" +"*trigger_brush_2_plane_6" "-0.26079348 -0.96539462 -0 2684.6282" +"*trigger_brush_2_plane_7" "0.9750666 0.22191244 -0 -1026.0696" +"*trigger_brush_2_plane_8" "0.35897923 0.93334556 0 -2293.9731" +"*trigger_brush_2_plane_9" "-0.97132921 0.23773833 0 419.68182" +"*trigger_brush_2_plane_10" "-0.26079351 -0.96539462 -0 2684.6282" +"*trigger_brush_2_plane_11" "0.9750666 0.22191243 0 -1026.0696" +"*trigger_brush_2_plane_12" "-0.97132933 0.23773836 0 419.68188" +"*trigger_brush_2_plane_13" "-0.86105388 -0.50851375 0 2169.4092" +"*trigger_brush_2_plane_14" "0.69279945 -0.72113037 -0 1608.696" +"*trigger_brush_2_plane_15" "0.75594574 0.65463442 0 -1881.3237" +"*trigger_brush_2_plane_16" "-0.46336862 0.88616568 0 -1418.2866" +"*trigger_brush_3_plane_0" "-1 0 0 2361.7397" +"*trigger_brush_3_plane_1" "1 0 0 1920.4985" +"*trigger_brush_3_plane_2" "0 -1 0 2250.0139" +"*trigger_brush_3_plane_3" "0 1 0 1907.7739" +"*trigger_brush_3_plane_4" "0 0 -1 296" +"*trigger_brush_3_plane_5" "0 0 1 296" +"*trigger_brush_3_plane_6" "-0.35897923 -0.93334556 -0 2293.9731" +"*trigger_brush_3_plane_7" "0.70710677 0.70710677 -0 1506.9974" +"*trigger_brush_3_plane_8" "0.70710677 -0.70710683 0 1208.9976" +"*trigger_brush_3_plane_9" "-0.70710689 -0.70710665 0 2149.0024" +"*trigger_brush_3_plane_10" "-0.70710683 0.70710677 0 1191.0022" +"*trigger_brush_3_plane_11" "0.70710683 0.70710683 0 1506.9976" +"*trigger_brush_3_plane_12" "0.70710671 -0.70710683 0 1208.9976" +"*trigger_brush_3_plane_13" "-0.70710695 -0.70710671 0 2149.0027" +"*trigger_brush_3_plane_14" "-0.70710689 0.70710677 0 1191.0023" +"*trigger_brush_3_plane_15" "0.2075914 -0.97821563 0 2088.8511" +"*trigger_bounds_mins" "-2361.7397 -2660.1357 -296" +"*trigger_bounds_maxs" "2361.7329 2660.1355 296" +} +{ +"model" "*1" +"triangle_collision" "1" +"editorclass" "func_brush_navmesh_separator" +"origin" "-7273.76 -262.241 830" +"startDisconnected" "0" +"link_guid" "250c09f3be6" +"classname" "func_brush" +} +{ +"editorclass" "info_fw_team_tower" +"teamnumber" "3" +"spawnflags" "0" +"model" "models/props/generator_coop/generator_coop_medium.mdl" +"scale" "1" +"angles" "0 45.1013 0" +"origin" "-7274.49 -264.029 640" +"radius" "1" +"link_to_guid_1" "250c09f3be6" +"link_to_guid_0" "25060c9d8d9" +"link_guid" "250f840be54" +"classname" "info_target" +} +{ +"spawnflags" "0" +"scale" "1" +"angles" "16.3574 55.7916 -1.02973e-015" +"origin" "-9592.83 -5363.1 1083.69" +"targetname" "spec_cam2" +"target" "escape_node2" +"classname" "info_target" +} +{ +"spawnflags" "0" +"scale" "1" +"angles" "0 32.194 0" +"origin" "-9424.58 -4026.32 688" +"targetname" "escape_node2" +"classname" "info_target" +} +{ +"spawnflags" "0" +"scale" "1" +"angles" "0 90 0" +"origin" "-640 1856 704" +"targetname" "escape_node3" +"classname" "info_target" +} +{ +"spawnflags" "0" +"scale" "1" +"angles" "0.0015841 -78.187 0.31054" +"origin" "-1510.63 2845.77 1260.03" +"targetname" "spec_cam3" +"target" "escape_node3" +"classname" "info_target" +} +{ +"spawnflags" "0" +"scale" "1" +"angles" "0 129.018 0" +"origin" "-1449.94 395.183 680" +"targetname" "escape_node1" +"classname" "info_target" +} +{ +"spawnflags" "0" +"scale" "1" +"angles" "0 -50.606 0" +"origin" "-2105.68 1100.57 1024" +"targetname" "spec_cam1" +"target" "escape_node1" +"classname" "info_target" +} +{ +"origin" "-8108 -3596 784" +"triggerNearbyRadius" "0" +"triggerFilterTeamOther" "0" +"triggerFilterTeamNeutral" "0" +"triggerFilterTeamMilitia" "1" +"triggerFilterTeamIMC" "1" +"triggerFilterTeamBeast" "0" +"triggerFilterPlayer" "all" +"triggerFilterPhaseShift" "nonphaseshift" +"triggerFilterNpcOwnedByPlayer" "any" +"triggerFilterNpcFlip" "0" +"triggerFilterNpc" "all" +"triggerFilterNonCharacter" "0" +"StartDisabled" "0" +"spawnflags" "3" +"triggerFilterUseNew" "1" +"targetname" "trigger_hardpoint_A1" +"classname" "trigger_capture_point" +"*trigger_brush_0_plane_0" "-1 0 0 948" +"*trigger_brush_0_plane_1" "1 0 0 948" +"*trigger_brush_0_plane_2" "0 -1 0 764" +"*trigger_brush_0_plane_3" "0 1 0 764" +"*trigger_brush_0_plane_4" "-0 0 -1 304" +"*trigger_brush_0_plane_5" "-0 -0 1 304" +"*trigger_brush_0_plane_6" "-0.86514002 -0.50153041 -0 757.96295" +"*trigger_brush_0_plane_7" "0.95562351 -0.29459071 0 817.55389" +"*trigger_brush_0_plane_8" "0.26159054 0.96517897 0 537.5415" +"*trigger_brush_0_plane_9" "-0.25997347 -0.96561575 -0 576.54688" +"*trigger_brush_0_plane_10" "-0.96106929 0.27630743 0 945.35583" +"*trigger_brush_0_plane_11" "-0.86513996 -0.50153041 0 757.96295" +"*trigger_brush_0_plane_12" "-0.2599735 -0.96561587 -0 576.54694" +"*trigger_brush_0_plane_13" "-0.96106935 0.27630743 0 945.3559" +"*trigger_brush_0_plane_14" "0.48327103 -0.87547076 0 968.48773" +"*trigger_brush_0_plane_15" "0.87587523 0.48253766 0 975.091" +"*trigger_brush_0_plane_16" "-0.49087024 0.87123269 0 1040.6466" +"*trigger_bounds_mins" "-948 -764 -304" +"*trigger_bounds_maxs" "948 763.99994 304" +} +{ +"origin" "-1056 184 832" +"triggerNearbyRadius" "0" +"triggerFilterTeamOther" "0" +"triggerFilterTeamNeutral" "0" +"triggerFilterTeamMilitia" "1" +"triggerFilterTeamIMC" "1" +"triggerFilterTeamBeast" "0" +"triggerFilterPlayer" "all" +"triggerFilterPhaseShift" "nonphaseshift" +"triggerFilterNpcOwnedByPlayer" "any" +"triggerFilterNpcFlip" "0" +"triggerFilterNpc" "all" +"triggerFilterNonCharacter" "0" +"StartDisabled" "0" +"spawnflags" "3" +"triggerFilterUseNew" "1" +"targetname" "trigger_hardpoint_C1" +"classname" "trigger_capture_point" +"*trigger_brush_0_plane_0" "-1 -0 -0 704" +"*trigger_brush_0_plane_1" "1 -0 -0 704" +"*trigger_brush_0_plane_2" "-0 -1 -0 824" +"*trigger_brush_0_plane_3" "0 1 0 824" +"*trigger_brush_0_plane_4" "0 0 -1 384" +"*trigger_brush_0_plane_5" "0 0 1 384" +"*trigger_brush_0_plane_6" "-0.70710677 0.70710677 0 1080.4592" +"*trigger_brush_0_plane_7" "-0.70710677 -0.70710677 0 1080.4592" +"*trigger_brush_0_plane_8" "0.70710677 -0.70710677 0 1080.4592" +"*trigger_brush_0_plane_9" "0.70710677 0.70710677 0 1080.4592" +"*trigger_bounds_mins" "-704 -824 -384" +"*trigger_bounds_maxs" "704 824 384" +} +{ +"origin" "-4552 -1864 768" +"triggerNearbyRadius" "0" +"triggerFilterTeamOther" "0" +"triggerFilterTeamNeutral" "0" +"triggerFilterTeamMilitia" "1" +"triggerFilterTeamIMC" "1" +"triggerFilterTeamBeast" "0" +"triggerFilterPlayer" "all" +"triggerFilterPhaseShift" "nonphaseshift" +"triggerFilterNpcOwnedByPlayer" "any" +"triggerFilterNpcFlip" "0" +"triggerFilterNpc" "all" +"triggerFilterNonCharacter" "0" +"StartDisabled" "0" +"spawnflags" "3" +"triggerFilterUseNew" "1" +"targetname" "trigger_hardpoint_B1" +"classname" "trigger_capture_point" +"*trigger_brush_0_plane_0" "-1 -0 -0 376" +"*trigger_brush_0_plane_1" "1 0 0 376" +"*trigger_brush_0_plane_2" "-0 -1 -0 520" +"*trigger_brush_0_plane_3" "0 1 0 520" +"*trigger_brush_0_plane_4" "-0 0 -1 96" +"*trigger_brush_0_plane_5" "-0 -0 1 96" +"*trigger_brush_0_plane_6" "0 -0.0033803894 -0.99999428 94.241646" +"*trigger_brush_0_plane_7" "-0.70710677 0.70710677 0 633.56763" +"*trigger_brush_0_plane_8" "-0.70710677 -0.70710677 -0 633.56763" +"*trigger_brush_0_plane_9" "0.70710677 -0.70710677 0 633.56763" +"*trigger_brush_0_plane_10" "0.70710677 0.70710677 0 633.56763" +"*trigger_bounds_mins" "-376 -520 -96" +"*trigger_bounds_maxs" "376 520 96" +} +{ +"editorclass" "info_bomb_mode_pilot_defuse_point" +"spawnflags" "0" +"origin" "-6258.77 -506.916 588" +"teamnumber" "3" +"classname" "info_target" +} +{ +"editorclass" "info_bomb_mode_pilot_defuse_point" +"spawnflags" "0" +"origin" "-16 -2528 528" +"teamnumber" "2" +"classname" "info_target" +} +{ +"editorclass" "info_bomb_mode_bomb" +"spawnflags" "0" +"origin" "-3733.81 -73.9383 553.108" +"classname" "info_target" +} +{ +"editorclass" "info_bomb_mode_bomb" +"spawnflags" "0" +"origin" "-4263.48 -4642.26 652.991" +"classname" "info_target" +} +{ +"editorclass" "info_bomb_mode_base" +"spawnflags" "0" +"origin" "-759.944 -2094.34 519.999" +"teamnumber" "2" +"classname" "info_target" +} +{ +"editorclass" "info_bomb_mode_base" +"spawnflags" "0" +"origin" "-6937.51 -1231.18 523.996" +"teamnumber" "3" +"classname" "info_target" +} +{ +"scale" "1" +"angles" "0 90 0" +"origin" "-11520 10880 10536" +"script_name" "menu_camera_target" +"classname" "info_target_clientside" +} +{ +"scale" "1" +"angles" "0 -90 0" +"origin" "-11520 11136 10496" +"script_name" "menu_scene_ref" +"classname" "info_target_clientside" +} +{ +"model" "models/communication/terminal_com_station_tall.mdl" +"hardpointName" "random" +"hardpointFrontlineYaw" "0" +"hardpointFrontlineOverride" "0" +"gamemode_tday" "0" +"origin" "-6576 -6864 -104" +"targetname" "at_hardpoint_blackbox" +"link_to_guid_0" "27528a1afab" +"link_guid" "2758215f435" +"hardpointGroup" "p" +"gamemode_sur" "0" +"gamemode_lh" "0" +"gamemode_cp" "0" +"gamemode_at" "1" +"classname" "info_hardpoint" +} +{ +"origin" "-6576 -6864 -40" +"wait" "1" +"triggerNearbyRadius" "0" +"triggerFilterTeamOther" "0" +"triggerFilterTeamNeutral" "0" +"triggerFilterTeamMilitia" "1" +"triggerFilterTeamIMC" "1" +"triggerFilterTeamBeast" "0" +"triggerFilterPlayer" "all" +"triggerFilterPhaseShift" "any" +"triggerFilterNpcOwnedByPlayer" "any" +"triggerFilterNpcFlip" "0" +"triggerFilterNpc" "none" +"triggerFilterNonCharacter" "0" +"StartDisabled" "0" +"spawnflags" "4097" +"mobility_3_hard" "1" +"mobility_2_normal" "1" +"mobility_1_easy" "1" +"triggerFilterUseNew" "1" +"link_guid" "27528a1afab" +"classname" "trigger_multiple" +"*trigger_brush_0_plane_0" "-1 0 0 128" +"*trigger_brush_0_plane_1" "1 -0 -0 128" +"*trigger_brush_0_plane_2" "-0 -1 -0 128" +"*trigger_brush_0_plane_3" "0 1 0 128" +"*trigger_brush_0_plane_4" "0 0 -1 128" +"*trigger_brush_0_plane_5" "-0 -0 1 128" +"*trigger_brush_0_plane_6" "-0.70710677 0.70710677 0 181.01933" +"*trigger_brush_0_plane_7" "-0.70710677 -0.70710677 0 181.01933" +"*trigger_brush_0_plane_8" "0.70710677 -0.70710677 0 181.01933" +"*trigger_brush_0_plane_9" "0.70710677 0.70710677 0 181.01933" +"*trigger_bounds_mins" "-128 -128 -128" +"*trigger_bounds_maxs" "128 128 128" +} +{ +"model" "models/communication/terminal_com_station_tall.mdl" +"hardpointName" "random" +"hardpointFrontlineYaw" "0" +"hardpointFrontlineOverride" "0" +"gamemode_tday" "0" +"origin" "-6256 -6864 -104" +"targetname" "at_hardpoint_blackbox1" +"link_to_guid_0" "2759b6c10ad" +"link_guid" "275ca0c34a7" +"hardpointGroup" "p" +"gamemode_sur" "0" +"gamemode_lh" "0" +"gamemode_cp" "0" +"gamemode_at" "1" +"classname" "info_hardpoint" +} +{ +"origin" "-6256 -6864 -40" +"wait" "1" +"triggerNearbyRadius" "0" +"triggerFilterTeamOther" "0" +"triggerFilterTeamNeutral" "0" +"triggerFilterTeamMilitia" "1" +"triggerFilterTeamIMC" "1" +"triggerFilterTeamBeast" "0" +"triggerFilterPlayer" "all" +"triggerFilterPhaseShift" "any" +"triggerFilterNpcOwnedByPlayer" "any" +"triggerFilterNpcFlip" "0" +"triggerFilterNpc" "none" +"triggerFilterNonCharacter" "0" +"StartDisabled" "0" +"spawnflags" "4097" +"mobility_3_hard" "1" +"mobility_2_normal" "1" +"mobility_1_easy" "1" +"triggerFilterUseNew" "1" +"link_guid" "2759b6c10ad" +"classname" "trigger_multiple" +"*trigger_brush_0_plane_0" "-1 0 0 128" +"*trigger_brush_0_plane_1" "1 -0 -0 128" +"*trigger_brush_0_plane_2" "-0 -1 -0 128" +"*trigger_brush_0_plane_3" "0 1 0 128" +"*trigger_brush_0_plane_4" "0 0 -1 128" +"*trigger_brush_0_plane_5" "-0 -0 1 128" +"*trigger_brush_0_plane_6" "-0.70710677 0.70710677 0 181.01933" +"*trigger_brush_0_plane_7" "-0.70710677 -0.70710677 0 181.01933" +"*trigger_brush_0_plane_8" "0.70710677 -0.70710677 0 181.01933" +"*trigger_brush_0_plane_9" "0.70710677 0.70710677 0 181.01933" +"*trigger_bounds_mins" "-128 -128 -128" +"*trigger_bounds_maxs" "128 128 128" +} +{ +"origin" "-6256 -7184 -40" +"wait" "1" +"triggerNearbyRadius" "0" +"triggerFilterTeamOther" "0" +"triggerFilterTeamNeutral" "0" +"triggerFilterTeamMilitia" "1" +"triggerFilterTeamIMC" "1" +"triggerFilterTeamBeast" "0" +"triggerFilterPlayer" "all" +"triggerFilterPhaseShift" "any" +"triggerFilterNpcOwnedByPlayer" "any" +"triggerFilterNpcFlip" "0" +"triggerFilterNpc" "none" +"triggerFilterNonCharacter" "0" +"StartDisabled" "0" +"spawnflags" "4097" +"mobility_3_hard" "1" +"mobility_2_normal" "1" +"mobility_1_easy" "1" +"triggerFilterUseNew" "1" +"link_guid" "275da28a532" +"classname" "trigger_multiple" +"*trigger_brush_0_plane_0" "-1 0 0 128" +"*trigger_brush_0_plane_1" "1 -0 -0 128" +"*trigger_brush_0_plane_2" "-0 -1 -0 128" +"*trigger_brush_0_plane_3" "0 1 0 128" +"*trigger_brush_0_plane_4" "0 0 -1 128" +"*trigger_brush_0_plane_5" "-0 -0 1 128" +"*trigger_brush_0_plane_6" "-0.70710677 0.70710677 0 181.01933" +"*trigger_brush_0_plane_7" "-0.70710677 -0.70710677 0 181.01933" +"*trigger_brush_0_plane_8" "0.70710677 -0.70710677 0 181.01933" +"*trigger_brush_0_plane_9" "0.70710677 0.70710677 0 181.01933" +"*trigger_bounds_mins" "-128 -128 -128" +"*trigger_bounds_maxs" "128 128 128" +} +{ +"model" "models/communication/terminal_com_station_tall.mdl" +"hardpointName" "random" +"hardpointFrontlineYaw" "0" +"hardpointFrontlineOverride" "0" +"gamemode_tday" "0" +"origin" "-6256 -7184 -104" +"targetname" "at_hardpoint_blackbox2" +"link_to_guid_0" "275da28a532" +"link_guid" "275edb69c4d" +"hardpointGroup" "p" +"gamemode_sur" "0" +"gamemode_lh" "0" +"gamemode_cp" "0" +"gamemode_at" "1" +"classname" "info_hardpoint" +} +{ +"model" "models/communication/terminal_com_station_tall.mdl" +"hardpointName" "random" +"hardpointFrontlineYaw" "0" +"hardpointFrontlineOverride" "0" +"gamemode_tday" "0" +"origin" "-6576 -7184 -104" +"targetname" "at_hardpoint_blackbox3" +"link_to_guid_0" "275cd46eda5" +"link_guid" "2751884002b" +"hardpointGroup" "p" +"gamemode_sur" "0" +"gamemode_lh" "0" +"gamemode_cp" "0" +"gamemode_at" "1" +"classname" "info_hardpoint" +} +{ +"origin" "-6576 -7184 -40" +"wait" "1" +"triggerNearbyRadius" "0" +"triggerFilterTeamOther" "0" +"triggerFilterTeamNeutral" "0" +"triggerFilterTeamMilitia" "1" +"triggerFilterTeamIMC" "1" +"triggerFilterTeamBeast" "0" +"triggerFilterPlayer" "all" +"triggerFilterPhaseShift" "any" +"triggerFilterNpcOwnedByPlayer" "any" +"triggerFilterNpcFlip" "0" +"triggerFilterNpc" "none" +"triggerFilterNonCharacter" "0" +"StartDisabled" "0" +"spawnflags" "4097" +"mobility_3_hard" "1" +"mobility_2_normal" "1" +"mobility_1_easy" "1" +"triggerFilterUseNew" "1" +"link_guid" "275cd46eda5" +"classname" "trigger_multiple" +"*trigger_brush_0_plane_0" "-1 0 0 128" +"*trigger_brush_0_plane_1" "1 -0 -0 128" +"*trigger_brush_0_plane_2" "-0 -1 -0 128" +"*trigger_brush_0_plane_3" "0 1 0 128" +"*trigger_brush_0_plane_4" "0 0 -1 128" +"*trigger_brush_0_plane_5" "-0 -0 1 128" +"*trigger_brush_0_plane_6" "-0.70710677 0.70710677 0 181.01933" +"*trigger_brush_0_plane_7" "-0.70710677 -0.70710677 0 181.01933" +"*trigger_brush_0_plane_8" "0.70710677 -0.70710677 0 181.01933" +"*trigger_brush_0_plane_9" "0.70710677 0.70710677 0 181.01933" +"*trigger_bounds_mins" "-128 -128 -128" +"*trigger_bounds_maxs" "128 128 128" +} +{ +"origin" "-5840 -6864 -40" +"wait" "1" +"triggerNearbyRadius" "0" +"triggerFilterTeamOther" "0" +"triggerFilterTeamNeutral" "0" +"triggerFilterTeamMilitia" "1" +"triggerFilterTeamIMC" "1" +"triggerFilterTeamBeast" "0" +"triggerFilterPlayer" "all" +"triggerFilterPhaseShift" "any" +"triggerFilterNpcOwnedByPlayer" "any" +"triggerFilterNpcFlip" "0" +"triggerFilterNpc" "none" +"triggerFilterNonCharacter" "0" +"StartDisabled" "0" +"spawnflags" "4097" +"mobility_3_hard" "1" +"mobility_2_normal" "1" +"mobility_1_easy" "1" +"triggerFilterUseNew" "1" +"link_guid" "275e36af485" +"classname" "trigger_multiple" +"*trigger_brush_0_plane_0" "-1 -0 -0 192" +"*trigger_brush_0_plane_1" "1 -0 0 192" +"*trigger_brush_0_plane_2" "-0 -1 -0 192" +"*trigger_brush_0_plane_3" "0 1 0 192" +"*trigger_brush_0_plane_4" "0 0 -1 128" +"*trigger_brush_0_plane_5" "-0 -0 1 128" +"*trigger_brush_0_plane_6" "-0.70710677 0.70710677 0 271.52899" +"*trigger_brush_0_plane_7" "-0.70710677 -0.70710677 -0 271.52899" +"*trigger_brush_0_plane_8" "0.70710677 -0.70710677 0 271.52899" +"*trigger_brush_0_plane_9" "0.70710677 0.70710677 0 271.52899" +"*trigger_bounds_mins" "-192 -192 -128" +"*trigger_bounds_maxs" "192 192 128" +} +{ +"model" "models/communication/terminal_com_station_tall.mdl" +"hardpointName" "random" +"hardpointFrontlineYaw" "0" +"hardpointFrontlineOverride" "0" +"gamemode_tday" "0" +"origin" "-5840 -6864 -104" +"targetname" "at_hardpoint_blackbox4" +"link_to_guid_0" "275e36af485" +"link_guid" "275fa2f4f04" +"hardpointGroup" "s" +"gamemode_sur" "0" +"gamemode_lh" "0" +"gamemode_cp" "0" +"gamemode_at" "1" +"classname" "info_hardpoint" +} +{ +"model" "models/communication/terminal_com_station_tall.mdl" +"hardpointName" "random" +"hardpointFrontlineYaw" "0" +"hardpointFrontlineOverride" "0" +"gamemode_tday" "0" +"origin" "-5392 -6864 -104" +"targetname" "at_hardpoint_blackbox5" +"link_to_guid_0" "275ddde673b" +"link_guid" "2753df97a78" +"hardpointGroup" "s" +"gamemode_sur" "0" +"gamemode_lh" "0" +"gamemode_cp" "0" +"gamemode_at" "1" +"classname" "info_hardpoint" +} +{ +"origin" "-5392 -6864 -40" +"wait" "1" +"triggerNearbyRadius" "0" +"triggerFilterTeamOther" "0" +"triggerFilterTeamNeutral" "0" +"triggerFilterTeamMilitia" "1" +"triggerFilterTeamIMC" "1" +"triggerFilterTeamBeast" "0" +"triggerFilterPlayer" "all" +"triggerFilterPhaseShift" "any" +"triggerFilterNpcOwnedByPlayer" "any" +"triggerFilterNpcFlip" "0" +"triggerFilterNpc" "none" +"triggerFilterNonCharacter" "0" +"StartDisabled" "0" +"spawnflags" "4097" +"mobility_3_hard" "1" +"mobility_2_normal" "1" +"mobility_1_easy" "1" +"triggerFilterUseNew" "1" +"link_guid" "275ddde673b" +"classname" "trigger_multiple" +"*trigger_brush_0_plane_0" "-1 -0 -0 192" +"*trigger_brush_0_plane_1" "1 -0 0 192" +"*trigger_brush_0_plane_2" "-0 -1 -0 192" +"*trigger_brush_0_plane_3" "0 1 0 192" +"*trigger_brush_0_plane_4" "0 0 -1 128" +"*trigger_brush_0_plane_5" "-0 -0 1 128" +"*trigger_brush_0_plane_6" "-0.70710677 0.70710677 0 271.52899" +"*trigger_brush_0_plane_7" "-0.70710677 -0.70710677 -0 271.52899" +"*trigger_brush_0_plane_8" "0.70710677 -0.70710677 0 271.52899" +"*trigger_brush_0_plane_9" "0.70710677 0.70710677 0 271.52899" +"*trigger_bounds_mins" "-192 -192 -128" +"*trigger_bounds_maxs" "192 192 128" +} +{ +"origin" "-5392 -7312 -40" +"wait" "1" +"triggerNearbyRadius" "0" +"triggerFilterTeamOther" "0" +"triggerFilterTeamNeutral" "0" +"triggerFilterTeamMilitia" "1" +"triggerFilterTeamIMC" "1" +"triggerFilterTeamBeast" "0" +"triggerFilterPlayer" "all" +"triggerFilterPhaseShift" "any" +"triggerFilterNpcOwnedByPlayer" "any" +"triggerFilterNpcFlip" "0" +"triggerFilterNpc" "none" +"triggerFilterNonCharacter" "0" +"StartDisabled" "0" +"spawnflags" "4097" +"mobility_3_hard" "1" +"mobility_2_normal" "1" +"mobility_1_easy" "1" +"triggerFilterUseNew" "1" +"link_guid" "275ac23c51f" +"classname" "trigger_multiple" +"*trigger_brush_0_plane_0" "-1 -0 -0 192" +"*trigger_brush_0_plane_1" "1 -0 0 192" +"*trigger_brush_0_plane_2" "-0 -1 -0 192" +"*trigger_brush_0_plane_3" "0 1 0 192" +"*trigger_brush_0_plane_4" "0 0 -1 128" +"*trigger_brush_0_plane_5" "-0 -0 1 128" +"*trigger_brush_0_plane_6" "-0.70710677 0.70710677 0 271.52899" +"*trigger_brush_0_plane_7" "-0.70710677 -0.70710677 -0 271.52899" +"*trigger_brush_0_plane_8" "0.70710677 -0.70710677 0 271.52899" +"*trigger_brush_0_plane_9" "0.70710677 0.70710677 0 271.52899" +"*trigger_bounds_mins" "-192 -192 -128" +"*trigger_bounds_maxs" "192 192 128" +} +{ +"model" "models/communication/terminal_com_station_tall.mdl" +"hardpointName" "random" +"hardpointFrontlineYaw" "0" +"hardpointFrontlineOverride" "0" +"gamemode_tday" "0" +"origin" "-5392 -7312 -104" +"targetname" "at_hardpoint_blackbox6" +"link_to_guid_0" "275ac23c51f" +"link_guid" "275cbcacf82" +"hardpointGroup" "s" +"gamemode_sur" "0" +"gamemode_lh" "0" +"gamemode_cp" "0" +"gamemode_at" "1" +"classname" "info_hardpoint" +} +{ +"model" "models/communication/terminal_com_station_tall.mdl" +"hardpointName" "random" +"hardpointFrontlineYaw" "0" +"hardpointFrontlineOverride" "0" +"gamemode_tday" "0" +"origin" "-5840 -7312 -104" +"targetname" "at_hardpoint_blackbox7" +"link_to_guid_0" "2759e570221" +"link_guid" "27590ba1b72" +"hardpointGroup" "s" +"gamemode_sur" "0" +"gamemode_lh" "0" +"gamemode_cp" "0" +"gamemode_at" "1" +"classname" "info_hardpoint" +} +{ +"origin" "-5840 -7312 -40" +"wait" "1" +"triggerNearbyRadius" "0" +"triggerFilterTeamOther" "0" +"triggerFilterTeamNeutral" "0" +"triggerFilterTeamMilitia" "1" +"triggerFilterTeamIMC" "1" +"triggerFilterTeamBeast" "0" +"triggerFilterPlayer" "all" +"triggerFilterPhaseShift" "any" +"triggerFilterNpcOwnedByPlayer" "any" +"triggerFilterNpcFlip" "0" +"triggerFilterNpc" "none" +"triggerFilterNonCharacter" "0" +"StartDisabled" "0" +"spawnflags" "4097" +"mobility_3_hard" "1" +"mobility_2_normal" "1" +"mobility_1_easy" "1" +"triggerFilterUseNew" "1" +"link_guid" "2759e570221" +"classname" "trigger_multiple" +"*trigger_brush_0_plane_0" "-1 -0 -0 192" +"*trigger_brush_0_plane_1" "1 -0 0 192" +"*trigger_brush_0_plane_2" "-0 -1 -0 192" +"*trigger_brush_0_plane_3" "0 1 0 192" +"*trigger_brush_0_plane_4" "0 0 -1 128" +"*trigger_brush_0_plane_5" "-0 -0 1 128" +"*trigger_brush_0_plane_6" "-0.70710677 0.70710677 0 271.52899" +"*trigger_brush_0_plane_7" "-0.70710677 -0.70710677 -0 271.52899" +"*trigger_brush_0_plane_8" "0.70710677 -0.70710677 0 271.52899" +"*trigger_brush_0_plane_9" "0.70710677 0.70710677 0 271.52899" +"*trigger_bounds_mins" "-192 -192 -128" +"*trigger_bounds_maxs" "192 192 128" +} +{ +"origin" "-5009.8 -4210.14 671.526" +"triggerNearbyRadius" "0" +"triggerFilterTeamOther" "1" +"triggerFilterTeamNeutral" "1" +"triggerFilterTeamMilitia" "1" +"triggerFilterTeamIMC" "1" +"triggerFilterTeamBeast" "1" +"triggerFilterPlayer" "all" +"triggerFilterPhaseShift" "any" +"triggerFilterNpcOwnedByPlayer" "any" +"triggerFilterNpcFlip" "0" +"triggerFilterNpc" "all" +"triggerFilterNonCharacter" "0" +"StartDisabled" "0" +"spawnflags" "4099" +"nodmgforce" "1" +"mobility_3_hard" "1" +"mobility_1_easy" "1" +"damagemodel" "0" +"damagecap" "20" +"triggerFilterUseNew" "1" +"mobility_2_normal" "0" +"damageSourceName" "burn" +"damage" "10" +"classname" "trigger_hurt" +"*trigger_brush_0_plane_0" "-1 0 0 21.77832" +"*trigger_brush_0_plane_1" "1 0 0 21.771973" +"*trigger_brush_0_plane_2" "0 -1 0 20.042969" +"*trigger_brush_0_plane_3" "0 1 0 20.052246" +"*trigger_brush_0_plane_4" "0.00016665296 6.251569e-005 -1 18.119028" +"*trigger_brush_0_plane_5" "-0.00016378085 -5.835561e-005 1 18.118982" +"*trigger_brush_0_plane_6" "0.17627637 -0.98434073 -4.0189021e-005 19.384438" +"*trigger_brush_0_plane_7" "0.98433661 0.17629911 0.00015777189 20.173597" +"*trigger_brush_0_plane_8" "-0.17627142 0.98434162 2.4551438e-005 19.05201" +"*trigger_brush_0_plane_9" "-0.98956627 0.14407825 -0.00013696289 20.649738" +"*trigger_brush_0_plane_10" "0.82067442 -0.57139605 9.4199539e-005 21.93189" +"*trigger_brush_0_plane_11" "-0.57138246 -0.8206839 -0.0001399785 17.561274" +"*trigger_brush_0_plane_12" "-0.82069337 0.57136887 -0.00010190317 20.345854" +"*trigger_brush_0_plane_13" "0.57139683 0.82067388 0.00014767883 18.677172" +"*trigger_brush_0_plane_14" "0.17627637 -0.98434073 0 19.385166" +"*trigger_brush_0_plane_15" "0.17627141 -0.98434162 0 19.383736" +"*trigger_brush_0_plane_16" "0.98433489 0.17630903 0 20.170713" +"*trigger_brush_0_plane_17" "0.98433667 0.17629911 -0 20.176456" +"*trigger_brush_0_plane_18" "-0.17626645 0.98434252 0 19.052406" +"*trigger_brush_0_plane_19" "-0.17627141 0.98434162 0 19.051565" +"*trigger_brush_0_plane_20" "-0.98956412 0.14409372 0 20.647114" +"*trigger_brush_0_plane_21" "-0.98956639 0.14407825 0 20.652224" +"*trigger_brush_0_plane_22" "0.8206687 -0.57140434 0 21.930241" +"*trigger_brush_0_plane_23" "0.82067454 -0.57139611 0 21.933601" +"*trigger_brush_0_plane_24" "-0.57138246 -0.82068402 -0 17.563808" +"*trigger_brush_0_plane_25" "-0.82070088 0.57135814 0 20.343922" +"*trigger_brush_0_plane_26" "-0.82069343 0.57136881 0 20.3477" +"*trigger_brush_0_plane_27" "0.57139134 0.82067776 -0 18.679781" +"*trigger_brush_0_plane_28" "0.57140237 0.82067001 0 18.674438" +"*trigger_brush_0_plane_29" "-0.91751391 -0.39770368 -0.00016278407 22.460146" +"*trigger_bounds_mins" "-21.77832 -20.042969 -18.123047" +"*trigger_bounds_maxs" "21.771973 20.052345 18.12262" +} +{ +"origin" "-4979.47 -4239.79 669.121" +"triggerNearbyRadius" "0" +"triggerFilterTeamOther" "1" +"triggerFilterTeamNeutral" "1" +"triggerFilterTeamMilitia" "1" +"triggerFilterTeamIMC" "1" +"triggerFilterTeamBeast" "1" +"triggerFilterPlayer" "all" +"triggerFilterPhaseShift" "any" +"triggerFilterNpcOwnedByPlayer" "any" +"triggerFilterNpcFlip" "0" +"triggerFilterNpc" "all" +"triggerFilterNonCharacter" "0" +"StartDisabled" "0" +"spawnflags" "4099" +"nodmgforce" "1" +"mobility_3_hard" "1" +"mobility_1_easy" "1" +"damagemodel" "0" +"damagecap" "20" +"triggerFilterUseNew" "1" +"mobility_2_normal" "0" +"damageSourceName" "burn" +"damage" "10" +"classname" "trigger_hurt" +"*trigger_brush_0_plane_0" "-1 0 0 22.675781" +"*trigger_brush_0_plane_1" "1 0 0 22.670898" +"*trigger_brush_0_plane_2" "0 -1 0 21.022461" +"*trigger_brush_0_plane_3" "0 1 0 21.017578" +"*trigger_brush_0_plane_4" "0 0 -1 19.994141" +"*trigger_brush_0_plane_5" "0 0 1 19.994568" +"*trigger_brush_0_plane_6" "-0.79023558 0.61255193 -0.017547544 19.368935" +"*trigger_brush_0_plane_7" "-0.61217505 -0.7877965 0.067958973 19.915857" +"*trigger_brush_0_plane_8" "0.79024911 -0.61253446 0.017546039 19.839951" +"*trigger_brush_0_plane_9" "0.83065367 0.55366367 -0.058915287 21.821468" +"*trigger_brush_0_plane_10" "0.0277991 0.064444266 0.99753404 18.568161" +"*trigger_brush_0_plane_11" "-0.12590383 0.99019819 -0.060462583 18.096422" +"*trigger_brush_0_plane_12" "0.9916538 0.12390357 -0.035645492 21.509848" +"*trigger_brush_0_plane_13" "-0.027795117 -0.064435109 -0.99753475 18.398573" +"*trigger_brush_0_plane_14" "0.12591469 -0.99019766 0.060449135 18.870047" +"*trigger_brush_0_plane_15" "-0.99164891 -0.12394232 0.035647802 21.617529" +"*trigger_brush_0_plane_16" "-0.11031668 0 -0.99389642 20.323952" +"*trigger_brush_0_plane_17" "0 0.085939594 0.99630034 19.237625" +"*trigger_brush_0_plane_18" "-0.78962427 0.61359054 0 19.692518" +"*trigger_brush_0_plane_19" "-0.99961174 0 0.027862126 22.167356" +"*trigger_brush_0_plane_20" "0 0.028639561 0.99958974 19.452505" +"*trigger_brush_0_plane_21" "-0.02220404 0 0.99975342 20.130083" +"*trigger_brush_0_plane_22" "0 -0.99792051 0.064456455 19.89064" +"*trigger_brush_0_plane_23" "-0.61264962 -0.79035473 0 21.120331" +"*trigger_brush_0_plane_24" "0 -0.085925035 -0.99630165 19.084589" +"*trigger_brush_0_plane_25" "0.78964102 -0.61356914 0 20.160496" +"*trigger_brush_0_plane_26" "0.11033292 0 0.9938947 20.542135" +"*trigger_brush_0_plane_27" "0.99961174 0 -0.027862221 22.156351" +"*trigger_brush_0_plane_28" "0 -0.045882083 -0.99894691 19.118061" +"*trigger_brush_0_plane_29" "0.068414442 0 -0.99765694 20.797762" +"*trigger_brush_0_plane_30" "0.83084786 0.5564996 0 22.878237" +"*trigger_brush_0_plane_31" "0 0.99791962 -0.064470463 19.885517" +"*trigger_brush_0_plane_32" "-0 0.060945805 0.99814111 19.166637" +"*trigger_brush_0_plane_33" "-0.1239908 0.99228328 0 19.186661" +"*trigger_brush_0_plane_34" "0.99201429 0.12612571 -0 22.159206" +"*trigger_brush_0_plane_35" "0.035918012 -0 0.99935478 19.754478" +"*trigger_brush_0_plane_36" "-0.035910171 0 -0.99935496 19.534838" +"*trigger_brush_0_plane_37" "0 -0.060938403 -0.99814153 18.994009" +"*trigger_brush_0_plane_38" "-0.99200934 -0.12616478 -0 22.260799" +"*trigger_brush_0_plane_39" "0.12399895 -0.99228233 0 19.948387" +"*trigger_brush_0_plane_40" "0.41424116 0.90745842 -0.070168488 23.463116" +"*trigger_bounds_mins" "-22.675793 -21.022488 -19.994152" +"*trigger_bounds_maxs" "22.67091 21.017591 19.994577" +} +{ +"origin" "-6630.51 -3874.89 545.789" +"triggerNearbyRadius" "0" +"triggerFilterTeamOther" "1" +"triggerFilterTeamNeutral" "1" +"triggerFilterTeamMilitia" "1" +"triggerFilterTeamIMC" "1" +"triggerFilterTeamBeast" "1" +"triggerFilterPlayer" "all" +"triggerFilterPhaseShift" "any" +"triggerFilterNpcOwnedByPlayer" "any" +"triggerFilterNpcFlip" "0" +"triggerFilterNpc" "all" +"triggerFilterNonCharacter" "0" +"StartDisabled" "0" +"spawnflags" "4099" +"nodmgforce" "1" +"mobility_3_hard" "1" +"mobility_1_easy" "1" +"damagemodel" "0" +"damagecap" "20" +"triggerFilterUseNew" "1" +"mobility_2_normal" "0" +"damageSourceName" "burn" +"damage" "10" +"classname" "trigger_hurt" +"*trigger_brush_0_plane_0" "-1 0 0 23.161621" +"*trigger_brush_0_plane_1" "1 0 0 23.152832" +"*trigger_brush_0_plane_2" "0 -1 0 18.999268" +"*trigger_brush_0_plane_3" "0 1 0 18.994873" +"*trigger_brush_0_plane_4" "0 0 -1 20.728516" +"*trigger_brush_0_plane_5" "0 0 1 20.728699" +"*trigger_brush_0_plane_6" "0.072347663 -0.99576795 -0.056674022 18.008764" +"*trigger_brush_0_plane_7" "0.97601706 0.082389019 -0.20150122 19.375139" +"*trigger_brush_0_plane_8" "-0.07234402 0.99576789 0.05668062 17.779463" +"*trigger_brush_0_plane_9" "-0.94880831 0.23674069 0.20908532 18.678394" +"*trigger_brush_0_plane_10" "0.20531863 -0.040751129 0.97784638 17.118582" +"*trigger_brush_0_plane_11" "-0.63899124 -0.76236641 0.10240906 15.904586" +"*trigger_brush_0_plane_12" "-0.74129868 0.64586955 0.1825617 18.554268" +"*trigger_brush_0_plane_13" "-0.20530531 0.040738355 -0.97784972 16.622938" +"*trigger_brush_0_plane_14" "0.63898653 0.76237053 -0.10240788 17.836845" +"*trigger_brush_0_plane_15" "0.74129188 -0.6458807 -0.18254977 20.810663" +"*trigger_brush_0_plane_16" "-0.20217523 -0 -0.97934932 17.345173" +"*trigger_brush_0_plane_17" "0 -0.99913335 -0.041623548 18.290937" +"*trigger_brush_0_plane_18" "0.084106304 -0.99645674 0 18.969072" +"*trigger_brush_0_plane_19" "0.97865915 0 -0.20549038 20.138351" +"*trigger_brush_0_plane_20" "0.99737042 0.072472855 0 22.431414" +"*trigger_brush_0_plane_21" "0 0.05682518 -0.99838412 20.255196" +"*trigger_brush_0_plane_22" "-0.084103674 0.99645692 0 18.711605" +"*trigger_brush_0_plane_23" "0 0.99913311 0.041630547 18.28121" +"*trigger_brush_0_plane_24" "0.20219001 -0 0.97934633 17.831245" +"*trigger_brush_0_plane_25" "-0.97865975 0 0.20548709 20.146931" +"*trigger_brush_0_plane_26" "-0.9707675 0.24002215 0 21.741335" +"*trigger_brush_0_plane_27" "0 -0.27201349 0.96229345 21.163248" +"*trigger_brush_0_plane_28" "-0 0.13312577 0.99109912 21.450081" +"*trigger_brush_0_plane_29" "0.15823317 0 0.98740178 18.252949" +"*trigger_brush_0_plane_30" "0.23913115 0 0.97098726 18.046215" +"*trigger_brush_0_plane_31" "0.65689623 0.75398088 -0 19.52286" +"*trigger_brush_0_plane_32" "0.7663759 -0.6423924 0 23.598701" +"*trigger_brush_0_plane_33" "-0.23910885 -0 -0.97099274 17.447922" +"*trigger_brush_0_plane_34" "-0.65690094 -0.75397676 0 17.549532" +"*trigger_brush_0_plane_35" "-0.76638836 0.64237756 0 21.289915" +"*trigger_brush_0_plane_36" "-0 -0.13313271 -0.99109828 21.574442" +"*trigger_brush_0_plane_37" "-0.15824135 0 -0.98740047 17.899864" +"*trigger_brush_0_plane_38" "0 0.27198976 -0.96230012 21.282295" +"*trigger_brush_0_plane_39" "-0.93328655 -0.30895549 0.18309207 20.327454" +"*trigger_bounds_mins" "-23.161669 -18.999268 -20.728502" +"*trigger_bounds_maxs" "23.152775 18.994848 20.728708" +} +{ +"origin" "-6752.38 -3850.29 591.335" +"triggerNearbyRadius" "0" +"triggerFilterTeamOther" "1" +"triggerFilterTeamNeutral" "1" +"triggerFilterTeamMilitia" "1" +"triggerFilterTeamIMC" "1" +"triggerFilterTeamBeast" "1" +"triggerFilterPlayer" "all" +"triggerFilterPhaseShift" "any" +"triggerFilterNpcOwnedByPlayer" "any" +"triggerFilterNpcFlip" "0" +"triggerFilterNpc" "all" +"triggerFilterNonCharacter" "0" +"StartDisabled" "0" +"spawnflags" "4099" +"nodmgforce" "1" +"mobility_3_hard" "1" +"mobility_1_easy" "1" +"damagemodel" "0" +"damagecap" "20" +"triggerFilterUseNew" "1" +"mobility_2_normal" "0" +"damageSourceName" "burn" +"damage" "10" +"classname" "trigger_hurt" +"*trigger_brush_0_plane_0" "-1 0 0 29.717285" +"*trigger_brush_0_plane_1" "1 0 0 29.714844" +"*trigger_brush_0_plane_2" "0 -1 0 27.994873" +"*trigger_brush_0_plane_3" "0 1 0 27.990967" +"*trigger_brush_0_plane_4" "0 0 -1 28.347107" +"*trigger_brush_0_plane_5" "0 0 1 28.34668" +"*trigger_brush_0_plane_6" "-0.35651442 0.88672775 0.29429817 22.655819" +"*trigger_brush_0_plane_7" "-0.90868795 -0.40231937 0.11146893 22.658901" +"*trigger_brush_0_plane_8" "0.35651633 -0.88672686 -0.29429838 22.658344" +"*trigger_brush_0_plane_9" "0.97479039 0.10128918 -0.19880684 25.473263" +"*trigger_brush_0_plane_10" "0.21724674 -0.22769055 0.9491896 21.361078" +"*trigger_brush_0_plane_11" "0.39044589 0.91150326 0.129282 21.358908" +"*trigger_brush_0_plane_12" "0.89463139 -0.34251106 -0.28691611 24.921045" +"*trigger_brush_0_plane_13" "-0.21725486 0.22769006 -0.94918787 21.361015" +"*trigger_brush_0_plane_14" "-0.3904449 -0.9115029 -0.1292876 21.363583" +"*trigger_brush_0_plane_15" "-0.89462113 0.3425425 0.2869105 24.921858" +"*trigger_brush_0_plane_16" "-0.40486702 0.9143756 0 27.965538" +"*trigger_brush_0_plane_17" "0 0.97241479 0.23325837 23.848343" +"*trigger_brush_0_plane_18" "0.12175279 -0 0.99256045 26.3246" +"*trigger_brush_0_plane_19" "-0.92782265 -0.37302157 0 24.995735" +"*trigger_brush_0_plane_20" "-0.97479403 0 0.22310717 25.834534" +"*trigger_brush_0_plane_21" "0 -0.31499946 0.94909179 26.044333" +"*trigger_brush_0_plane_22" "-0.12176256 -0 -0.99255919 26.325142" +"*trigger_brush_0_plane_23" "0 -0.97241485 -0.23325837 23.8522" +"*trigger_brush_0_plane_24" "0.40485916 -0.91437912 0 27.967974" +"*trigger_brush_0_plane_25" "0.97479415 0 -0.22310589 25.83219" +"*trigger_brush_0_plane_26" "0.99862283 0.052462563 0 29.311333" +"*trigger_brush_0_plane_27" "0 0.2442729 -0.96970654 26.390877" +"*trigger_brush_0_plane_28" "-0.35755318 -0.93389279 0 24.051094" +"*trigger_brush_0_plane_29" "0 -0.14042859 0.99009079 26.638908" +"*trigger_brush_0_plane_30" "0.30539426 0 0.95222604 25.900644" +"*trigger_brush_0_plane_31" "0.91922188 -0.39373985 0 30.03582" +"*trigger_brush_0_plane_32" "0.35755575 0.93389171 -0 24.04635" +"*trigger_brush_0_plane_33" "0 0.14043257 -0.99009031 26.638762" +"*trigger_brush_0_plane_34" "-0.3053968 0 -0.95222515 25.901608" +"*trigger_brush_0_plane_35" "-0.91921216 0.39376283 0 30.036396" +"*trigger_brush_0_plane_36" "0.80246222 0.59530187 -0.040865496 27.527145" +"*trigger_bounds_mins" "-29.717148 -27.994802 -28.347107" +"*trigger_bounds_maxs" "29.714777 27.990847 28.34668" +} +{ +"origin" "-6863.43 -3565.73 649.505" +"triggerNearbyRadius" "0" +"triggerFilterTeamOther" "1" +"triggerFilterTeamNeutral" "1" +"triggerFilterTeamMilitia" "1" +"triggerFilterTeamIMC" "1" +"triggerFilterTeamBeast" "1" +"triggerFilterPlayer" "all" +"triggerFilterPhaseShift" "any" +"triggerFilterNpcOwnedByPlayer" "any" +"triggerFilterNpcFlip" "0" +"triggerFilterNpc" "all" +"triggerFilterNonCharacter" "0" +"StartDisabled" "0" +"spawnflags" "4099" +"nodmgforce" "1" +"mobility_3_hard" "1" +"mobility_1_easy" "1" +"damagemodel" "0" +"damagecap" "20" +"triggerFilterUseNew" "1" +"mobility_2_normal" "0" +"damageSourceName" "burn" +"damage" "10" +"classname" "trigger_hurt" +"*trigger_brush_0_plane_0" "-1 0 0 22.392578" +"*trigger_brush_0_plane_1" "1 0 0 22.38623" +"*trigger_brush_0_plane_2" "0 -1 0 23.695801" +"*trigger_brush_0_plane_3" "0 1 0 23.701904" +"*trigger_brush_0_plane_4" "0 0 -1 22.756958" +"*trigger_brush_0_plane_5" "0 0 1 22.756592" +"*trigger_brush_0_plane_6" "-0.79363966 0.59335631 0.13440391 19.363192" +"*trigger_brush_0_plane_7" "-0.60828322 -0.76986647 -0.19312474 19.924692" +"*trigger_brush_0_plane_8" "0.79365343 -0.59333885 -0.13439952 19.84547" +"*trigger_brush_0_plane_9" "0.82803267 0.54273474 0.14071582 21.814674" +"*trigger_brush_0_plane_10" "-0.011122293 -0.23502477 0.97192574 18.448565" +"*trigger_brush_0_plane_11" "-0.13108115 0.96393937 0.23160015 18.086199" +"*trigger_brush_0_plane_12" "0.99130905 0.12482663 0.041529257 21.507544" +"*trigger_brush_0_plane_13" "0.011131484 0.23503047 -0.97192425 18.517982" +"*trigger_brush_0_plane_14" "0.13107763 -0.96394128 -0.23159409 18.880201" +"*trigger_brush_0_plane_15" "-0.99130905 -0.12482665 -0.04152919 21.619696" +"*trigger_brush_0_plane_16" "-0.78463531 0.61995769 0 21.717289" +"*trigger_brush_0_plane_17" "-0.3026042 0 0.9531163 24.282679" +"*trigger_brush_0_plane_18" "0 0.22091037 -0.97529411 18.879345" +"*trigger_brush_0_plane_19" "-0.16696684 -0 -0.98596251 23.528826" +"*trigger_brush_0_plane_20" "-0.59878683 -0.80090845 -0 23.1381" +"*trigger_brush_0_plane_21" "-0 -0.97198671 -0.23503631 19.936106" +"*trigger_brush_0_plane_22" "0.78464919 -0.61994004 0 22.185463" +"*trigger_brush_0_plane_23" "0.30263686 0 -0.95310599 24.525101" +"*trigger_brush_0_plane_24" "0.31883568 -0 0.94781005 25.59812" +"*trigger_brush_0_plane_25" "-0 0.97198439 0.23504555 19.941891" +"*trigger_brush_0_plane_26" "0.82108754 0.57080221 -0 24.242928" +"*trigger_brush_0_plane_27" "-0.99087983 -0.13474874 0 22.387548" +"*trigger_brush_0_plane_28" "-0.041856475 0 0.99912369 22.207701" +"*trigger_brush_0_plane_29" "0.12492958 -0.99216563 0 22.642241" +"*trigger_brush_0_plane_30" "-0.12493286 0.99216515 0 21.886036" +"*trigger_brush_0_plane_31" "0.99087977 0.13474873 -0 22.278454" +"*trigger_brush_0_plane_32" "0.04186533 0 -0.99912328 22.463369" +"*trigger_brush_0_plane_33" "0.40965781 0.88560075 0.21884184 23.453144" +"*trigger_bounds_mins" "-22.392578 -23.695826 -22.756931" +"*trigger_bounds_maxs" "22.38623 23.701887 22.756578" +} +{ +"origin" "-5083.35 -3813.92 658.865" +"triggerNearbyRadius" "0" +"triggerFilterTeamOther" "1" +"triggerFilterTeamNeutral" "1" +"triggerFilterTeamMilitia" "1" +"triggerFilterTeamIMC" "1" +"triggerFilterTeamBeast" "1" +"triggerFilterPlayer" "all" +"triggerFilterPhaseShift" "any" +"triggerFilterNpcOwnedByPlayer" "any" +"triggerFilterNpcFlip" "0" +"triggerFilterNpc" "all" +"triggerFilterNonCharacter" "0" +"StartDisabled" "0" +"spawnflags" "4099" +"nodmgforce" "1" +"mobility_3_hard" "1" +"mobility_1_easy" "1" +"damagemodel" "0" +"damagecap" "20" +"triggerFilterUseNew" "1" +"mobility_2_normal" "0" +"damageSourceName" "burn" +"damage" "10" +"classname" "trigger_hurt" +"*trigger_brush_0_plane_0" "-1 0 0 22.353027" +"*trigger_brush_0_plane_1" "1 0 0 22.356445" +"*trigger_brush_0_plane_2" "0 -1 0 20.129639" +"*trigger_brush_0_plane_3" "0 1 0 20.134277" +"*trigger_brush_0_plane_4" "0 0 -1 20.002502" +"*trigger_brush_0_plane_5" "0 0 1 20.002197" +"*trigger_brush_0_plane_6" "0.092027478 -0.99034268 -0.10369346 18.011898" +"*trigger_brush_0_plane_7" "0.98560303 0.075766191 0.15114939 19.300398" +"*trigger_brush_0_plane_8" "-0.092014894 0.99034363 0.10369541 17.776217" +"*trigger_brush_0_plane_9" "-0.96412814 0.24129748 -0.11060037 18.7479" +"*trigger_brush_0_plane_10" "-0.14183062 -0.11611505 0.98305714 16.76276" +"*trigger_brush_0_plane_11" "-0.63186896 -0.75383621 -0.18020141 15.959561" +"*trigger_brush_0_plane_12" "-0.76200849 0.64669693 -0.03355841 18.604645" +"*trigger_brush_0_plane_13" "0.14184251 0.11611181 -0.98305583 16.9785" +"*trigger_brush_0_plane_14" "0.63186169 0.75384116 0.18020649 17.781702" +"*trigger_brush_0_plane_15" "0.76199979 -0.6467073 0.033555906 20.760326" +"*trigger_brush_0_plane_16" "0 -0.99309695 -0.11729673 18.357685" +"*trigger_brush_0_plane_17" "0.07664188 -0.99705875 0 19.670906" +"*trigger_brush_0_plane_18" "0.15159363 0 -0.9884429 18.960403" +"*trigger_brush_0_plane_19" "0.9897514 -0 0.14280061 20.011522" +"*trigger_brush_0_plane_20" "0 -0.10413853 0.9945628 19.340891" +"*trigger_brush_0_plane_21" "0.99570972 0.092532285 -0 21.656448" +"*trigger_brush_0_plane_22" "-0.076628812 0.9970597 0 19.459202" +"*trigger_brush_0_plane_23" "0 0.99309695 0.11729673 18.384413" +"*trigger_brush_0_plane_24" "-0.15158319 0 0.98844451 18.718756" +"*trigger_brush_0_plane_25" "-0.98975176 0 -0.14279857 20.243675" +"*trigger_brush_0_plane_26" "0 0.14999454 -0.9886868 19.526537" +"*trigger_brush_0_plane_27" "-0.97394067 0.22680272 0 20.504448" +"*trigger_brush_0_plane_28" "-0.6470865 -0.7624166 0 18.720362" +"*trigger_brush_0_plane_29" "-0.27426073 0 0.96165532 19.786783" +"*trigger_brush_0_plane_30" "-0.76640385 0.6423589 0 19.165703" +"*trigger_brush_0_plane_31" "0 0.051804371 0.99865729 20.25021" +"*trigger_brush_0_plane_32" "-0.043983713 0 0.9990322 19.274397" +"*trigger_brush_0_plane_33" "0 -0.23249318 0.97259808 20.278576" +"*trigger_brush_0_plane_34" "-0 -0.05182166 -0.99865639 20.061886" +"*trigger_brush_0_plane_35" "0.043999169 0 -0.99903154 19.21018" +"*trigger_brush_0_plane_36" "0 0.23250006 -0.97259635 20.0965" +"*trigger_brush_0_plane_37" "0.27426839 0 -0.96165317 20.379969" +"*trigger_brush_0_plane_38" "0.76639473 -0.64236981 0 21.327457" +"*trigger_brush_0_plane_39" "0.64707154 0.76242924 0 20.551546" +"*trigger_brush_0_plane_40" "-0.93809688 -0.30126056 -0.17092778 20.400368" +"*trigger_bounds_mins" "-22.353048 -20.129639 -20.002504" +"*trigger_bounds_maxs" "22.356396 20.134279 20.002209" +} +{ +"SuppressAnimSounds" "0" +"StartDisabled" "0" +"spawnflags" "0" +"solid" "6" +"skin" "0" +"SetBodyGroup" "0" +"rendermode" "0" +"renderfx" "0" +"rendercolor" "255 255 255" +"renderamt" "255" +"RandomAnimation" "0" +"pressuredelay" "0" +"PerformanceMode" "0" +"mobility_3_hard" "1" +"mobility_2_normal" "1" +"mobility_1_easy" "1" +"mingpulevel" "0" +"mincpulevel" "0" +"MinAnimTime" "5" +"maxgpulevel" "0" +"maxcpulevel" "0" +"MaxAnimTime" "10" +"HoldAnimation" "0" +"gamemode_tdm" "1" +"gamemode_sur" "1" +"gamemode_lts" "1" +"gamemode_lh" "1" +"gamemode_fd" "1" +"gamemode_ctf" "1" +"gamemode_cp" "1" +"fadedist" "-1" +"ExplodeRadius" "0" +"ExplodeDamage" "0" +"drawinfastreflection" "0" +"disableX360" "0" +"disableshadows" "0" +"disablereceiveshadows" "0" +"DisableBoneFollowers" "0" +"collide_titan" "1" +"collide_ai" "1" +"ClientSide" "0" +"scale" "1" +"angles" "0 90 0" +"origin" "-784 7760 2304" +"script_name" "rings_pristine" +"model" "models/props/timeshift_rings_animated.mdl" +"classname" "prop_dynamic" +} +{ +"spawnflags" "0" +"scale" "1" +"angles" "0 90 0" +"origin" "-1270.75 -1694.72 647.999" +"targetname" "intermission" +"classname" "info_target" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "100" +"scale" "1" +"angles" "0 -44.724 0" +"origin" "-5903.3 1066.05 724.634" +"classname" "info_node_cover_stand" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "100" +"scale" "1" +"angles" "0 -44.724 0" +"origin" "-5943.3 1026.05 724.634" +"classname" "info_node_cover_stand" +} +{ +"origin" "-1692.96 -828.384 1487" +"wait" "1" +"triggerNearbyRadius" "0" +"triggerFilterTeamMilitia" "1" +"triggerFilterTeamIMC" "1" +"triggerFilterPlayer" "all" +"triggerFilterPhaseShift" "any" +"triggerFilterNpcOwnedByPlayer" "any" +"triggerFilterNpcFlip" "0" +"triggerFilterNpc" "none" +"triggerFilterNonCharacter" "0" +"StartDisabled" "0" +"spawnflags" "4097" +"triggerFilterUseNew" "1" +"triggerFilterTeamOther" "1" +"triggerFilterTeamNeutral" "1" +"triggerFilterTeamBeast" "1" +"targetname" "trigger_nessy" +"classname" "trigger_once" +"*trigger_brush_0_plane_0" "-1 0 0 22.049438" +"*trigger_brush_0_plane_1" "1 0 0 22.049194" +"*trigger_brush_0_plane_2" "0 -1 0 22.049194" +"*trigger_brush_0_plane_3" "0 1 0 22.049255" +"*trigger_brush_0_plane_4" "6.4687615e-006 -4.0451205e-006 -1 16" +"*trigger_brush_0_plane_5" "-6.4687406e-006 4.0451073e-006 1 16" +"*trigger_brush_0_plane_6" "0.84787196 -0.53020108 8.4913063e-006 15.999903" +"*trigger_brush_0_plane_7" "-0.53020018 -0.8478725 -8.1072972e-007 16.000036" +"*trigger_brush_0_plane_8" "-0.84787196 0.53020108 -8.4913063e-006 16.000143" +"*trigger_brush_0_plane_9" "0.53020018 0.8478725 8.1072972e-007 15.99996" +"*trigger_brush_0_plane_10" "0.84787196 -0.53020108 0 15.999767" +"*trigger_brush_0_plane_11" "-0.53020018 -0.8478725 -0 16.00005" +"*trigger_brush_0_plane_12" "-0.84787196 0.53020108 0 16.000006" +"*trigger_brush_0_plane_13" "0.53020018 0.8478725 -0 15.99997" +"*trigger_brush_0_plane_14" "0.22462773 -0.97444457 5.4309844e-006 22.627359" +"*trigger_brush_0_plane_15" "0.97444463 0.22462772 6.5775362e-006 22.627329" +"*trigger_brush_0_plane_16" "-0.97444463 -0.22462772 -6.5775362e-006 22.627554" +"*trigger_brush_0_plane_17" "-0.22462773 0.97444457 -5.4309844e-006 22.627476" +"*trigger_bounds_mins" "-22.049438 -22.049194 -16.000122" +"*trigger_bounds_maxs" "22.049194 22.049255 16.000122" +} +{ +"origin" "-3680 -4240 1320" +"triggerNearbyRadius" "0" +"triggerFilterTeamOther" "1" +"triggerFilterTeamNeutral" "1" +"triggerFilterTeamMilitia" "1" +"triggerFilterTeamIMC" "1" +"triggerFilterTeamBeast" "1" +"triggerFilterPlayer" "all" +"triggerFilterPhaseShift" "any" +"triggerFilterNpcOwnedByPlayer" "any" +"triggerFilterNpcFlip" "0" +"triggerFilterNpc" "all" +"triggerFilterNonCharacter" "0" +"StartDisabled" "0" +"spawnflags" "4099" +"nodmgforce" "1" +"mobility_3_hard" "1" +"mobility_2_normal" "1" +"mobility_1_easy" "1" +"damageSourceName" "fall" +"damagemodel" "0" +"damagecap" "20" +"damage" "10000" +"triggerFilterUseNew" "1" +"classname" "trigger_hurt" +"*trigger_brush_0_plane_0" "-1 -0 -0 -256" +"*trigger_brush_0_plane_1" "1 -0 -0 1504" +"*trigger_brush_0_plane_2" "-0 -1 -0 1712" +"*trigger_brush_0_plane_3" "0 1 0 -152" +"*trigger_brush_0_plane_4" "0 -0 -1 80" +"*trigger_brush_0_plane_5" "0 0 1 80" +"*trigger_brush_0_plane_6" "-0.70710677 0.70710677 0 -288.49957" +"*trigger_brush_0_plane_7" "-0.70710677 -0.70710677 0 1029.5475" +"*trigger_brush_0_plane_8" "0.70710677 -0.70710677 0 2274.0552" +"*trigger_brush_0_plane_9" "0.70710677 0.70710677 0 956.0083" +"*trigger_brush_1_plane_0" "-1 -0 -0 2096" +"*trigger_brush_1_plane_1" "1 0 0 256" +"*trigger_brush_1_plane_2" "-0 -1 -0 1712" +"*trigger_brush_1_plane_3" "0 1 0 -1544" +"*trigger_brush_1_plane_4" "0 -0 -1 80" +"*trigger_brush_1_plane_5" "0 0 1 80" +"*trigger_brush_1_plane_6" "-0.70710677 0.70710677 0 390.323" +"*trigger_brush_1_plane_7" "-0.70710677 -0.70710677 0 2692.6626" +"*trigger_brush_1_plane_8" "0.70710677 -0.70710677 0 1391.5861" +"*trigger_brush_1_plane_9" "0.70710677 0.70710677 0 -910.75348" +"*trigger_brush_2_plane_0" "-1 0 0 -1504" +"*trigger_brush_2_plane_1" "1 -0 0 2096" +"*trigger_brush_2_plane_2" "-0 -1 -0 1712" +"*trigger_brush_2_plane_3" "-0 1 -0 624" +"*trigger_brush_2_plane_4" "0 -0 -1 80" +"*trigger_brush_2_plane_5" "0 0 1 80" +"*trigger_brush_2_plane_6" "-0.70710677 0.70710677 0 -622.25391" +"*trigger_brush_2_plane_7" "-0.70710677 -0.70710677 0 147.07825" +"*trigger_brush_2_plane_8" "0.70710677 -0.70710677 0 2692.6626" +"*trigger_brush_2_plane_9" "0.70710677 0.70710677 0 1923.3304" +"*trigger_brush_3_plane_0" "-1 -0 -0 -256" +"*trigger_brush_3_plane_1" "1 -0 -0 1504" +"*trigger_brush_3_plane_2" "0 -1 0 20" +"*trigger_brush_3_plane_3" "0 1 0 1712" +"*trigger_brush_3_plane_4" "0 -0 -1 80" +"*trigger_brush_3_plane_5" "0 0 1 80" +"*trigger_brush_3_plane_6" "-0.70710677 0.70710677 0 1029.5475" +"*trigger_brush_3_plane_7" "-0.70710677 -0.70710677 0 -166.8772" +"*trigger_brush_3_plane_8" "0.70710677 -0.70710677 0 1077.6306" +"*trigger_brush_3_plane_9" "0.70710677 0.70710677 0 2274.0552" +"*trigger_brush_4_plane_0" "-1 -0 -0 -256" +"*trigger_brush_4_plane_1" "1 -0 -0 1504" +"*trigger_brush_4_plane_2" "-0 -1 -0 152" +"*trigger_brush_4_plane_3" "-0 1 -0 -20" +"*trigger_brush_4_plane_4" "0 -0 -1 80" +"*trigger_brush_4_plane_5" "0 0 1 80" +"*trigger_brush_4_plane_6" "-0.7288481 0.68467546 0 -290.65579" +"*trigger_brush_4_plane_7" "0.70710677 -0.70710677 -0 1170.9688" +"*trigger_brush_4_plane_8" "0.70710677 0.70710677 -0 1049.3464" +"*trigger_brush_4_plane_9" "-0.91778958 -0.39706707 0 -174.59995" +"*trigger_brush_4_plane_10" "-0.3970671 0.91778958 0 -169.24129" +"*trigger_bounds_mins" "-2096 -1712 -80" +"*trigger_bounds_maxs" "2096 1712 80" +} +{ +"editorclass" "trigger_mp_spawn_zone" +"origin" "-8259.93 -3898.29 768" +"link_to_guid_0" "8d5c25db" +"link_guid" "20bff3cf" +"triggerFilterUseNew" "1" +"classname" "trigger_multiple" +"*trigger_brush_0_plane_0" "-1 0 0 1676.9395" +"*trigger_brush_0_plane_1" "1 0 0 1676.9297" +"*trigger_brush_0_plane_2" "0 -1 0 1431.5415" +"*trigger_brush_0_plane_3" "0 1 0 1431.54" +"*trigger_brush_0_plane_4" "0 0 -1 384" +"*trigger_brush_0_plane_5" "0 0 1 384" +"*trigger_brush_0_plane_6" "0.86856514 -0.49557504 0 1230.6445" +"*trigger_brush_0_plane_7" "0.32101053 0.94707561 -0 969.97974" +"*trigger_brush_0_plane_8" "-0.97844875 0.20648976 0 1471.5179" +"*trigger_brush_0_plane_9" "-0.25945646 -0.96575481 -0 1226.8235" +"*trigger_brush_0_plane_10" "0.8685652 -0.4955751 0 1230.6445" +"*trigger_brush_0_plane_11" "0.32101053 0.94707572 -0 969.97986" +"*trigger_brush_0_plane_12" "-0.97844887 0.20648979 0 1471.5182" +"*trigger_brush_0_plane_13" "0.38473445 -0.92302728 0 1552.2231" +"*trigger_brush_0_plane_14" "0.93492395 0.35484812 0 1729.538" +"*trigger_brush_0_plane_15" "-0.49514958 0.86880779 0 1838.814" +"*trigger_brush_0_plane_16" "-0.85243279 -0.5228368 0 1858.1025" +"*trigger_bounds_mins" "-1676.9395 -1431.5415 -384" +"*trigger_bounds_maxs" "1676.9297 1431.54 384" +} +{ +"editorclass" "trigger_mp_spawn_zone" +"origin" "-1096 -1064 836" +"link_to_guid_0" "7a915f75" +"link_guid" "376be52c" +"triggerFilterUseNew" "1" +"classname" "trigger_multiple" +"*trigger_brush_0_plane_0" "-1 0 -0 792" +"*trigger_brush_0_plane_1" "1 0 0 792" +"*trigger_brush_0_plane_2" "-0 -1 -0 728" +"*trigger_brush_0_plane_3" "0 1 0 728" +"*trigger_brush_0_plane_4" "-0 0 -1 316" +"*trigger_brush_0_plane_5" "0 0 1 316" +"*trigger_brush_0_plane_6" "-0.70710677 0.70710677 0 1074.8022" +"*trigger_brush_0_plane_7" "-0.70710677 -0.70710677 -0 1074.8022" +"*trigger_brush_0_plane_8" "0.70710677 -0.70710677 0 1074.8022" +"*trigger_brush_0_plane_9" "0.70710677 0.70710677 0 1074.8022" +"*trigger_bounds_mins" "-792 -728 -316" +"*trigger_bounds_maxs" "792 728 316" +} +{ +"editorclass" "trigger_mp_spawn_zone" +"origin" "-3344 -32 832" +"link_guid" "c73b1ba0" +"triggerFilterUseNew" "1" +"classname" "trigger_multiple" +"*trigger_brush_0_plane_0" "-1 0 0 -528" +"*trigger_brush_0_plane_1" "1 -0 0 1456" +"*trigger_brush_0_plane_2" "-0 -1 -0 1120" +"*trigger_brush_0_plane_3" "0 1 0 96" +"*trigger_brush_0_plane_4" "-0 0 -1 320" +"*trigger_brush_0_plane_5" "0 0 1 320" +"*trigger_brush_0_plane_6" "0.61887223 0.7854917 0 402.17172" +"*trigger_brush_0_plane_7" "0.61887223 0.78549176 -0 402.17175" +"*trigger_brush_0_plane_8" "-0.43653622 0.89968669 0 -144.1212" +"*trigger_brush_0_plane_9" "-0.70710677 -0.70710677 0 418.60721" +"*trigger_brush_0_plane_10" "0.70710677 -0.70710677 0 1821.5071" +"*trigger_brush_0_plane_11" "0.89968669 0.43653628 0 1032.6772" +"*trigger_brush_1_plane_0" "-1 0 -0 1456" +"*trigger_brush_1_plane_1" "1 -0 -0 528" +"*trigger_brush_1_plane_2" "-0 -1 -0 1120" +"*trigger_brush_1_plane_3" "-0 1 0 1120" +"*trigger_brush_1_plane_4" "-0 0 -1 320" +"*trigger_brush_1_plane_5" "0 0 1 320" +"*trigger_brush_1_plane_6" "-0.70710677 0.70710677 0 1323.7039" +"*trigger_brush_1_plane_7" "-0.70710683 0.70710683 0 1323.7039" +"*trigger_brush_1_plane_8" "-0.70710677 -0.70710677 -0 1821.5071" +"*trigger_brush_1_plane_9" "0.70710677 -0.70710677 -0 1165.312" +"*trigger_brush_1_plane_10" "0.70710677 0.70710677 0 1165.312" +"*trigger_bounds_mins" "-1456 -1120 -320" +"*trigger_bounds_maxs" "1456 1120 320" +} +{ +"editorclass" "trigger_mp_spawn_zone" +"origin" "-7140.16 -1396.14 772" +"link_guid" "e620fcf0" +"triggerFilterUseNew" "1" +"classname" "trigger_multiple" +"*trigger_brush_0_plane_0" "-1 0 0 2224.2539" +"*trigger_brush_0_plane_1" "1 0 0 2224.2637" +"*trigger_brush_0_plane_2" "0 -1 0 2217.8926" +"*trigger_brush_0_plane_3" "0 1 0 2217.8877" +"*trigger_brush_0_plane_4" "0 -0 -1 380" +"*trigger_brush_0_plane_5" "0 0 1 380" +"*trigger_brush_0_plane_6" "0.72732341 -0.68629485 0 1703.6879" +"*trigger_brush_0_plane_7" "0.68394107 0.72953725 -0 1429.9221" +"*trigger_brush_0_plane_8" "-0.70123887 -0.71292639 -0 1406.1461" +"*trigger_brush_0_plane_9" "-0.71656835 0.69751686 0 1744.0974" +"*trigger_brush_0_plane_10" "0.72732347 -0.68629491 0 1703.688" +"*trigger_brush_0_plane_11" "0.68394113 0.72953725 -0 1429.9222" +"*trigger_brush_0_plane_12" "-0.71656841 0.69751692 0 1744.0975" +"*trigger_bounds_mins" "-2224.2539 -2217.8926 -380" +"*trigger_bounds_maxs" "2224.2637 2217.8877 380" +} +{ +"editorclass" "trigger_mp_spawn_zone" +"origin" "-1312 -3120 836" +"link_to_guid_0" "e620fcf0" +"link_guid" "8d5c25db" +"triggerFilterUseNew" "1" +"classname" "trigger_multiple" +"*trigger_brush_0_plane_0" "-1 -0 -0 1712" +"*trigger_brush_0_plane_1" "1 0 -0 1712" +"*trigger_brush_0_plane_2" "-0 -1 -0 1328" +"*trigger_brush_0_plane_3" "0 1 0 1328" +"*trigger_brush_0_plane_4" "-0 0 -1 316" +"*trigger_brush_0_plane_5" "0 0 1 316" +"*trigger_brush_0_plane_6" "-0.70710677 0.70710677 0 2149.6045" +"*trigger_brush_0_plane_7" "-0.70710677 -0.70710677 0 2149.6045" +"*trigger_brush_0_plane_8" "0.70710677 -0.70710677 0 2149.6045" +"*trigger_brush_0_plane_9" "0.70710677 0.70710677 0 2149.6045" +"*trigger_bounds_mins" "-1712 -1328 -316" +"*trigger_bounds_maxs" "1712 1328 316" +} +{ +"editorclass" "trigger_mp_spawn_zone" +"origin" "-5934.88 798.942 772" +"link_guid" "7a915f75" +"triggerFilterUseNew" "1" +"classname" "trigger_multiple" +"*trigger_brush_0_plane_0" "-1 0 0 1485.8599" +"*trigger_brush_0_plane_1" "1 0 0 1485.8623" +"*trigger_brush_0_plane_2" "0 -1 0 1490.5747" +"*trigger_brush_0_plane_3" "0 1 0 1490.5756" +"*trigger_brush_0_plane_4" "0 -0 -1 380" +"*trigger_brush_0_plane_5" "0 0 1 380" +"*trigger_brush_0_plane_6" "-0.68394113 -0.72953719 -0 989.97607" +"*trigger_brush_0_plane_7" "0.70748007 0.70673329 0 1003.9444" +"*trigger_brush_0_plane_8" "0.72732341 -0.68629485 0 1126.6088" +"*trigger_brush_0_plane_9" "-0.71656853 0.69751674 0 1089.8322" +"*trigger_brush_0_plane_10" "-0.68394113 -0.72953725 -0 989.97614" +"*trigger_brush_0_plane_11" "0.72732347 -0.68629491 0 1126.6089" +"*trigger_bounds_mins" "-1485.8599 -1490.5747 -380" +"*trigger_bounds_maxs" "1485.8622 1490.5756 380" +} +{ +"editorclass" "trigger_mp_spawn_zone" +"origin" "-4848 -4232 836" +"link_to_guid_0" "c73b1ba0" +"link_guid" "891ea354" +"triggerFilterUseNew" "1" +"classname" "trigger_multiple" +"*trigger_brush_0_plane_0" "-1 0 -0 1824" +"*trigger_brush_0_plane_1" "1 0 0 1824" +"*trigger_brush_0_plane_2" "0 -1 0 1240" +"*trigger_brush_0_plane_3" "0 1 0 1240" +"*trigger_brush_0_plane_4" "-0 0 -1 316" +"*trigger_brush_0_plane_5" "0 0 1 316" +"*trigger_brush_0_plane_6" "0.70710677 0.70710677 -0 1861.105" +"*trigger_brush_0_plane_7" "0.70710683 0.70710683 0 1861.1052" +"*trigger_brush_0_plane_8" "-0.70710677 0.70710677 0 2166.5752" +"*trigger_brush_0_plane_9" "-0.70710677 -0.70710677 0 2166.5752" +"*trigger_brush_0_plane_10" "0.70710677 -0.70710677 0 2166.5752" +"*trigger_bounds_mins" "-1824 -1240 -316" +"*trigger_bounds_maxs" "1824 1240 316" +} +{ +"spawnflags" "0" +"scale" "1" +"angles" "-5 69 3.06941e-016" +"origin" "-2120 -2960 -6692" +"targetname" "spacenode" +"collide_titan" "0" +"classname" "info_target" +} +{ +"origin" "-1504 160 -516" +"triggerNearbyRadius" "0" +"triggerFilterTeamOther" "1" +"triggerFilterTeamNeutral" "1" +"triggerFilterTeamMilitia" "1" +"triggerFilterTeamIMC" "1" +"triggerFilterTeamBeast" "1" +"triggerFilterPlayer" "all" +"triggerFilterPhaseShift" "any" +"triggerFilterNpcOwnedByPlayer" "any" +"triggerFilterNpcFlip" "0" +"triggerFilterNpc" "all" +"triggerFilterNonCharacter" "0" +"StartDisabled" "0" +"spawnflags" "4099" +"nodmgforce" "1" +"mobility_3_hard" "1" +"mobility_2_normal" "1" +"mobility_1_easy" "1" +"damageSourceName" "fall" +"damagemodel" "0" +"damage" "10000" +"triggerFilterUseNew" "1" +"targetname" "trigger_hurt_1" +"damagecap" "90000" +"classname" "trigger_hurt" +"*trigger_brush_0_plane_0" "-1 0 0 13184" +"*trigger_brush_0_plane_1" "1 0 0 13184" +"*trigger_brush_0_plane_2" "-0 -1 -0 15648" +"*trigger_brush_0_plane_3" "0 1 0 15648" +"*trigger_brush_0_plane_4" "0 0 -1 764" +"*trigger_brush_0_plane_5" "0 0 1 764" +"*trigger_brush_0_plane_6" "-0.70710677 0.70710677 0 20387.303" +"*trigger_brush_0_plane_7" "-0.70710677 -0.70710677 0 20387.303" +"*trigger_brush_0_plane_8" "0.70710677 -0.70710677 0 20387.303" +"*trigger_brush_0_plane_9" "0.70710677 0.70710677 0 20387.303" +"*trigger_bounds_mins" "-13184 -15648 -764" +"*trigger_bounds_maxs" "13184 15648 764" +} +{ +"editorclass" "info_attrition_camp" +"origin" "-716 728 560" +"radius" "2000" +"phase_9" "0" +"phase_8" "0" +"phase_7" "0" +"phase_6" "0" +"phase_5" "0" +"phase_4" "0" +"phase_3" "1" +"phase_2" "1" +"phase_1" "0" +"height" "500" +"gamemode_fw" "0" +"classname" "info_target" +} +{ +"editorclass" "info_attrition_camp" +"origin" "-8544 -3920 580.002" +"radius" "1700" +"phase_9" "0" +"phase_8" "0" +"phase_7" "0" +"phase_6" "0" +"phase_5" "0" +"phase_4" "0" +"phase_3" "1" +"phase_2" "1" +"phase_1" "0" +"height" "500" +"gamemode_fw" "0" +"classname" "info_target" +} +{ +"editorclass" "info_attrition_camp" +"origin" "-3888 -2308 725.73" +"radius" "1800" +"phase_9" "0" +"phase_8" "0" +"phase_7" "0" +"phase_6" "0" +"phase_5" "0" +"phase_4" "0" +"phase_3" "1" +"phase_2" "0" +"phase_1" "1" +"height" "500" +"gamemode_fw" "0" +"classname" "info_target" +} +{ +"editorclass" "info_attrition_bank" +"radius" "256" +"model" "models/Robots/mobile_hardpoint/mobile_hardpoint.mdl" +"height" "256" +"scale" "1" +"angles" "-2.44662 -0.1162 -6.31668" +"origin" "-3728.92 -249.347 570.834" +"classname" "info_target" +} +{ +"editorclass" "info_attrition_bank" +"radius" "256" +"model" "models/Robots/mobile_hardpoint/mobile_hardpoint.mdl" +"height" "256" +"scale" "1" +"angles" "-0.0219147 45 -0.000732113" +"origin" "-4634.46 -4318.01 643.997" +"classname" "info_target" +} +{ +"editorclass" "script_power_up_other" +"model" "models/communication/flag_base_red.mdl" +"scale" "1" +"angles" "3.31448 90.4263 0.0792013" +"origin" "-3792.41 -260.96 570.401" +"powerUpType" "mp_loot_titan_build_credit" +"classname" "script_ref" +} +{ +"editorclass" "script_power_up_other" +"model" "models/communication/flag_base_red.mdl" +"scale" "1" +"angles" "-5.19204e-005 90.4217 5.11617e-005" +"origin" "-4133.64 -4605.58 644.989" +"powerUpType" "mp_loot_titan_build_credit" +"classname" "script_ref" +} +{ +"editorclass" "script_power_up_other" +"model" "models/communication/flag_base_red.mdl" +"scale" "1" +"angles" "0.0002205 90.4217 -0.000274384" +"origin" "-9398.19 -4025.82 578.673" +"powerUpType" "mp_loot_titan_build_credit" +"classname" "script_ref" +} +{ +"editorclass" "script_power_up_other" +"model" "models/communication/flag_base_red.mdl" +"scale" "1" +"angles" "0.00735007 136.844 -0.00725995" +"origin" "-1248.99 839.02 752.045" +"powerUpType" "mp_loot_titan_build_credit" +"classname" "script_ref" +} +{ +"hardpointFrontlineYaw" "0" +"hardpointFrontlineOverride" "0" +"gamemode_tday" "0" +"gamemode_sur" "1" +"gamemode_lh" "1" +"gamemode_cp" "1" +"gamemode_at" "0" +"scale" "1" +"angles" "0 167.628 0" +"origin" "-8154.63 -3522 580.361" +"link_guid" "dfc2c4f3" +"triggerTarget" "trigger_hardpoint_A1" +"targetname" "info_hardpoint_1" +"target" "assault_hardpoint_far_A*" +"nearTarget" "assault_hardpoint_near_A*" +"model" "models/Robots/mobile_hardpoint/mobile_hardpoint.mdl" +"hardpointName" "titangarage" +"hardpointGroup" "A" +"classname" "info_hardpoint" +} +{ +"hardpointFrontlineYaw" "0" +"hardpointFrontlineOverride" "0" +"gamemode_tday" "0" +"gamemode_sur" "1" +"gamemode_lh" "1" +"gamemode_cp" "1" +"gamemode_at" "0" +"scale" "1" +"angles" "0 -138.254 0" +"origin" "-4333.02 -2155.06 695.002" +"link_guid" "7749b115" +"triggerTarget" "trigger_hardpoint_B1" +"targetname" "info_hardpoint_3" +"target" "assault_hardpoint_far_B*" +"nearTarget" "assault_hardpoint_near_B*" +"model" "models/Robots/mobile_hardpoint/mobile_hardpoint.mdl" +"hardpointName" "dogwhistle" +"hardpointGroup" "B" +"classname" "info_hardpoint" +} +{ +"hardpointFrontlineYaw" "0" +"hardpointFrontlineOverride" "0" +"gamemode_tday" "0" +"gamemode_sur" "1" +"gamemode_lh" "1" +"gamemode_cp" "1" +"gamemode_at" "0" +"scale" "1" +"angles" "0 -114.836 0" +"origin" "-1390.34 2.709 520.001" +"link_guid" "2a84a088" +"triggerTarget" "trigger_hardpoint_C1" +"targetname" "info_hardpoint_2" +"target" "assault_hardpoint_far_C*" +"nearTarget" "assault_hardpoint_near_C*" +"model" "models/Robots/mobile_hardpoint/mobile_hardpoint.mdl" +"hardpointName" "market" +"hardpointGroup" "C" +"classname" "info_hardpoint" +} +{ +"editorclass" "info_bomb_mode_bomb" +"spawnflags" "0" +"origin" "-4470.68 -2688.15 724.001" +"classname" "info_target" +} +{ +"editorclass" "script_power_up_other" +"model" "models/communication/flag_base_red.mdl" +"scale" "1" +"angles" "0 90 2.53193e-006" +"origin" "-4612.01 -2544.57 716.025" +"powerUpType" "mp_loot_titan_build_credit" +"classname" "script_ref" +} +{ +"editorclass" "info_lts_bomb_site" +"teamnumber" "2" +"spawnflags" "0" +"model" "models/props/generator_coop/generator_coop_medium.mdl" +"origin" "-3798.73 -258.059 587.091" +"bombSiteLocation" "0" +"classname" "info_target" +} +{ +"editorclass" "info_lts_bomb_site" +"teamnumber" "2" +"spawnflags" "0" +"model" "models/props/generator_coop/generator_coop_medium.mdl" +"origin" "-2614.51 -3454.96 644" +"bombSiteLocation" "1" +"classname" "info_target" +} +{ +"origin" "-6248 -1288 616" +"wait" "1" +"triggerNearbyRadius" "0" +"triggerFilterTeamOther" "0" +"triggerFilterTeamNeutral" "0" +"triggerFilterTeamMilitia" "1" +"triggerFilterTeamIMC" "1" +"triggerFilterTeamBeast" "0" +"triggerFilterPlayer" "all" +"triggerFilterPhaseShift" "any" +"triggerFilterNpcOwnedByPlayer" "any" +"triggerFilterNpcFlip" "0" +"triggerFilterNpc" "none" +"triggerFilterNonCharacter" "0" +"StartDisabled" "0" +"spawnflags" "4097" +"mobility_3_hard" "1" +"mobility_2_normal" "1" +"mobility_1_easy" "1" +"link_guid" "3148974f" +"triggerFilterUseNew" "1" +"classname" "trigger_multiple" +"*trigger_brush_0_plane_0" "-1 0 0 316.78223" +"*trigger_brush_0_plane_1" "1 0 0 316.78223" +"*trigger_brush_0_plane_2" "0 -1 0 316.78247" +"*trigger_brush_0_plane_3" "0 1 0 316.78241" +"*trigger_brush_0_plane_4" "-0 0 -1 96" +"*trigger_brush_0_plane_5" "-0 -0 1 96" +"*trigger_brush_0_plane_6" "-0.7049914 -0.70921588 -0 224.00005" +"*trigger_brush_0_plane_7" "-0.70921636 0.70499092 0 223.99983" +"*trigger_brush_0_plane_8" "0.70499128 0.70921594 0 224" +"*trigger_brush_0_plane_9" "0.70921642 -0.7049908 0 223.99986" +"*trigger_brush_0_plane_10" "-0.70921636 0.70499086 0 223.99983" +"*trigger_brush_0_plane_11" "0.70921648 -0.70499086 0 223.99988" +"*trigger_bounds_mins" "-316.78223 -316.78247 -96" +"*trigger_bounds_maxs" "316.78223 316.78241 96" +} +{ +"origin" "-3688 -2288 816" +"wait" "1" +"triggerNearbyRadius" "0" +"triggerFilterTeamOther" "0" +"triggerFilterTeamNeutral" "0" +"triggerFilterTeamMilitia" "1" +"triggerFilterTeamIMC" "1" +"triggerFilterTeamBeast" "0" +"triggerFilterPlayer" "all" +"triggerFilterPhaseShift" "any" +"triggerFilterNpcOwnedByPlayer" "any" +"triggerFilterNpcFlip" "0" +"triggerFilterNpc" "none" +"triggerFilterNonCharacter" "0" +"StartDisabled" "0" +"spawnflags" "4097" +"mobility_3_hard" "1" +"mobility_2_normal" "1" +"mobility_1_easy" "1" +"link_guid" "5bdcb1bf" +"triggerFilterUseNew" "1" +"classname" "trigger_multiple" +"*trigger_brush_0_plane_0" "-1 0 0 316.78223" +"*trigger_brush_0_plane_1" "1 0 0 316.78223" +"*trigger_brush_0_plane_2" "0 -1 0 316.78247" +"*trigger_brush_0_plane_3" "0 1 0 316.78241" +"*trigger_brush_0_plane_4" "-0 0 -1 96" +"*trigger_brush_0_plane_5" "-0 -0 1 96" +"*trigger_brush_0_plane_6" "-0.7049908 -0.70921642 -0 224.00003" +"*trigger_brush_0_plane_7" "-0.70921642 0.7049908 0 224.00003" +"*trigger_brush_0_plane_8" "0.7049908 0.70921642 0 224.00003" +"*trigger_brush_0_plane_9" "0.70921642 -0.7049908 0 223.99986" +"*trigger_brush_0_plane_10" "-0.70499086 -0.70921648 -0 224.00005" +"*trigger_brush_0_plane_11" "-0.70921648 0.70499086 0 224.00005" +"*trigger_brush_0_plane_12" "0.70499086 0.70921648 -0 224.00005" +"*trigger_brush_0_plane_13" "0.70921648 -0.70499086 0 223.99988" +"*trigger_bounds_mins" "-316.78247 -316.78235 -96" +"*trigger_bounds_maxs" "316.78235 316.78247 96" +} +{ +"origin" "-896 -2880 616" +"wait" "1" +"triggerNearbyRadius" "0" +"triggerFilterTeamOther" "0" +"triggerFilterTeamNeutral" "0" +"triggerFilterTeamMilitia" "1" +"triggerFilterTeamIMC" "1" +"triggerFilterTeamBeast" "0" +"triggerFilterPlayer" "all" +"triggerFilterPhaseShift" "any" +"triggerFilterNpcOwnedByPlayer" "any" +"triggerFilterNpcFlip" "0" +"triggerFilterNpc" "none" +"triggerFilterNonCharacter" "0" +"StartDisabled" "0" +"spawnflags" "4097" +"mobility_3_hard" "1" +"mobility_2_normal" "1" +"mobility_1_easy" "1" +"link_guid" "a6716741" +"triggerFilterUseNew" "1" +"classname" "trigger_multiple" +"*trigger_brush_0_plane_0" "-1 0 0 225.83789" +"*trigger_brush_0_plane_1" "1 0 0 225.83783" +"*trigger_brush_0_plane_2" "0 -1 0 225.83789" +"*trigger_brush_0_plane_3" "0 1 0 225.83789" +"*trigger_brush_0_plane_4" "-0 0 -1 96" +"*trigger_brush_0_plane_5" "-0 -0 1 96" +"*trigger_brush_0_plane_6" "-0.99996608 -0.0082386546 -0 224.00003" +"*trigger_brush_0_plane_7" "-0.0082386546 0.99996608 0 224.00005" +"*trigger_brush_0_plane_8" "0.99996608 0.0082385186 0 224" +"*trigger_brush_0_plane_9" "0.0082386564 -0.99996608 0 224.00003" +"*trigger_brush_0_plane_10" "-0.99996614 -0.0082386555 0 224.00005" +"*trigger_brush_0_plane_11" "-0.0082386555 0.99996614 0 224.00005" +"*trigger_brush_0_plane_12" "0.99996614 0.0082385195 0 224.00002" +"*trigger_brush_0_plane_13" "0.0082386564 -0.99996614 0 224.00006" +"*trigger_brush_0_plane_14" "-0.71290839 0.70125717 0 316.78387" +"*trigger_brush_0_plane_15" "-0.70125717 -0.71290839 0 316.78387" +"*trigger_brush_0_plane_16" "0.70125723 0.71290833 0 316.78387" +"*trigger_brush_0_plane_17" "0.71290827 -0.70125717 0 316.78381" +"*trigger_bounds_mins" "-225.83789 -225.83789 -96" +"*trigger_bounds_maxs" "225.83783 225.83789 96" +} +{ +"origin" "-3624 -4216 736" +"wait" "1" +"triggerNearbyRadius" "0" +"triggerFilterTeamOther" "0" +"triggerFilterTeamNeutral" "0" +"triggerFilterTeamMilitia" "1" +"triggerFilterTeamIMC" "1" +"triggerFilterTeamBeast" "0" +"triggerFilterPlayer" "all" +"triggerFilterPhaseShift" "any" +"triggerFilterNpcOwnedByPlayer" "any" +"triggerFilterNpcFlip" "0" +"triggerFilterNpc" "none" +"triggerFilterNonCharacter" "0" +"StartDisabled" "0" +"spawnflags" "4097" +"mobility_3_hard" "1" +"mobility_2_normal" "1" +"mobility_1_easy" "1" +"link_guid" "c9c2695" +"triggerFilterUseNew" "1" +"classname" "trigger_multiple" +"*trigger_brush_0_plane_0" "-1 0 0 316.78223" +"*trigger_brush_0_plane_1" "1 0 0 316.78223" +"*trigger_brush_0_plane_2" "0 -1 0 316.78247" +"*trigger_brush_0_plane_3" "0 1 0 316.78241" +"*trigger_brush_0_plane_4" "-0 0 -1 96" +"*trigger_brush_0_plane_5" "-0 -0 1 96" +"*trigger_brush_0_plane_6" "-0.70880991 -0.70539957 -0 223.99986" +"*trigger_brush_0_plane_7" "-0.70539927 0.70881015 0 224.00011" +"*trigger_brush_0_plane_8" "0.70881015 0.70539927 0 223.99994" +"*trigger_brush_0_plane_9" "0.70539904 -0.70881045 0 224.00003" +"*trigger_brush_0_plane_10" "0.70881021 0.70539927 0 223.99997" +"*trigger_bounds_mins" "-316.78296 -316.78271 -96" +"*trigger_bounds_maxs" "316.78296 316.78296 96" +} +{ +"origin" "-3752 -96 656" +"wait" "1" +"triggerNearbyRadius" "0" +"triggerFilterTeamOther" "0" +"triggerFilterTeamNeutral" "0" +"triggerFilterTeamMilitia" "1" +"triggerFilterTeamIMC" "1" +"triggerFilterTeamBeast" "0" +"triggerFilterPlayer" "all" +"triggerFilterPhaseShift" "any" +"triggerFilterNpcOwnedByPlayer" "any" +"triggerFilterNpcFlip" "0" +"triggerFilterNpc" "none" +"triggerFilterNonCharacter" "0" +"StartDisabled" "0" +"spawnflags" "4097" +"mobility_3_hard" "1" +"mobility_2_normal" "1" +"mobility_1_easy" "1" +"link_guid" "17679895" +"triggerFilterUseNew" "1" +"classname" "trigger_multiple" +"*trigger_brush_0_plane_0" "-1 0 0 316.78223" +"*trigger_brush_0_plane_1" "1 0 0 316.78223" +"*trigger_brush_0_plane_2" "0 -1 0 316.78247" +"*trigger_brush_0_plane_3" "0 1 0 316.78241" +"*trigger_brush_0_plane_4" "-0 0 -1 96" +"*trigger_brush_0_plane_5" "-0 -0 1 96" +"*trigger_brush_0_plane_6" "-0.70880991 -0.70539957 -0 223.99986" +"*trigger_brush_0_plane_7" "-0.70539945 0.70880997 0 224.00002" +"*trigger_brush_0_plane_8" "0.70880991 0.70539957 0 224" +"*trigger_brush_0_plane_9" "0.70539951 -0.70880997 0 224.00003" +"*trigger_brush_0_plane_10" "-0.70539945 0.70881003 0 224.00003" +"*trigger_brush_0_plane_11" "0.70539945 -0.70880997 0 224.00003" +"*trigger_bounds_mins" "-316.78284 -316.78284 -96" +"*trigger_bounds_maxs" "316.78296 316.7829 96" +} +{ +"spawnflags" "0" +"origin" "-3824 -72 640" +"classname" "info_node" +} +{ +"spawnflags" "0" +"origin" "-3824 88 624" +"classname" "info_node" +} +{ +"spawnflags" "0" +"origin" "-3664 -72 656" +"classname" "info_node" +} +{ +"spawnflags" "0" +"origin" "-3824 -248 624" +"classname" "info_node" +} +{ +"spawnflags" "0" +"origin" "-4000 -72 736" +"classname" "info_node" +} +{ +"spawnflags" "0" +"origin" "-4610.47 -4408.71 676.989" +"classname" "info_node" +} +{ +"spawnflags" "0" +"origin" "-4522.47 -4504.71 676.989" +"classname" "info_node" +} +{ +"spawnflags" "0" +"origin" "-4306.47 -4712.71 676.989" +"classname" "info_node" +} +{ +"spawnflags" "0" +"origin" "-4138.47 -4712.71 676.989" +"classname" "info_node" +} +{ +"spawnflags" "0" +"origin" "-3930.47 -4680.71 676.989" +"classname" "info_node" +} +{ +"spawnflags" "0" +"origin" "-3754.47 -4520.71 676.989" +"classname" "info_node" +} +{ +"spawnflags" "0" +"origin" "-3418.47 -4184.71 676.989" +"classname" "info_node" +} +{ +"editorclass" "info_fw_turret_site" +"spawnflags" "0" +"model" "models/communication/flag_base_red.mdl" +"scale" "1" +"angles" "0 135 0" +"origin" "-6522 -1025 533" +"link_to_guid_1" "cd6e529e" +"link_to_guid_0" "1e132096" +"link_guid" "1e3bbebe" +"turretId" "7" +"teamnumber" "3" +"classname" "info_target" +} +{ +"editorclass" "info_fw_turret_site" +"spawnflags" "0" +"model" "models/communication/flag_base_red.mdl" +"scale" "1" +"angles" "-0.0980319 -171.596 -0.00220506" +"origin" "-6239.68 -4216.72 521.118" +"link_to_guid_1" "ee670072" +"link_to_guid_0" "4b6be066" +"link_guid" "237cf48f" +"turretId" "0" +"teamnumber" "4" +"classname" "info_target" +} +{ +"editorclass" "info_fw_turret_site" +"teamnumber" "4" +"spawnflags" "0" +"model" "models/communication/flag_base_red.mdl" +"scale" "1" +"angles" "0 90 0" +"origin" "-3818.28 -319.059 613.368" +"link_to_guid_1" "c86bd441" +"link_to_guid_0" "6668019f" +"link_guid" "c9f7aad1" +"turretId" "2" +"classname" "info_target" +} +{ +"editorclass" "info_fw_turret_site" +"teamnumber" "4" +"spawnflags" "0" +"model" "models/communication/flag_base_red.mdl" +"scale" "1" +"angles" "0 90 -8.60438e-006" +"origin" "-4384 -2680 756" +"link_to_guid_1" "3b7f5395" +"link_to_guid_0" "2365c1c9" +"link_guid" "394a1d3c" +"turretId" "1" +"classname" "info_target" +} +{ +"editorclass" "info_fw_team_tower" +"spawnflags" "0" +"model" "models/props/generator_coop/generator_coop_medium.mdl" +"scale" "1" +"angles" "-2.48038e-006 90 0" +"origin" "-454.381 -2886.73 520.827" +"link_to_guid_1" "63693a5c" +"link_to_guid_0" "128fc74f" +"link_guid" "a2589c18" +"teamnumber" "2" +"radius" "1" +"classname" "info_target" +} +{ +"editorclass" "info_fw_turret_site" +"spawnflags" "0" +"model" "models/communication/flag_base_red.mdl" +"scale" "1" +"angles" "3.35337e-006 90 0" +"origin" "-760 -3872 521" +"link_to_guid_1" "feb9084e" +"link_to_guid_0" "bcd0f203" +"link_guid" "868d19d2" +"turretId" "3" +"teamnumber" "2" +"classname" "info_target" +} +{ +"editorclass" "info_fw_camp" +"spawnflags" "0" +"model" "models/vehicle/escape_pod/escape_pod.mdl" +"height" "256" +"origin" "-1248 448 656" +"link_to_guid_8" "ffdb91c1" +"link_to_guid_7" "fc571b81" +"link_to_guid_6" "f983fcd0" +"link_to_guid_5" "de85a29e" +"link_to_guid_4" "ccdc3db0" +"link_to_guid_3" "bdc38ac8" +"link_to_guid_2" "563b6eff" +"link_to_guid_1" "4359bf3d" +"link_to_guid_0" "2f988812" +"link_guid" "a9394e76" +"radius" "900" +"classname" "info_target" +} +{ +"editorclass" "info_fw_camp" +"spawnflags" "0" +"model" "models/vehicle/escape_pod/escape_pod.mdl" +"height" "256" +"origin" "-4368 -2136 700" +"link_to_guid_11" "f57064db" +"link_to_guid_10" "df5a7c37" +"link_to_guid_9" "a1a2ede5" +"link_to_guid_8" "9c0be084" +"link_to_guid_7" "7c9125e7" +"link_to_guid_6" "436573d6" +"link_to_guid_5" "36aeef28" +"link_to_guid_4" "2639b847" +"link_to_guid_3" "234799c3" +"link_to_guid_2" "1b61f1e1" +"link_to_guid_1" "194727c5" +"link_to_guid_0" "5496c0f" +"link_guid" "df7be002" +"radius" "800" +"classname" "info_target" +} +{ +"editorclass" "info_fw_camp" +"spawnflags" "0" +"model" "models/vehicle/escape_pod/escape_pod.mdl" +"height" "256" +"origin" "-8064 -3544 667.01" +"link_to_guid_8" "d982b5e0" +"link_to_guid_7" "d57a2bb3" +"link_to_guid_6" "d284dc2c" +"link_to_guid_5" "a7db3193" +"link_to_guid_4" "9503c7f8" +"link_to_guid_3" "88df464c" +"link_to_guid_2" "3adb10c9" +"link_to_guid_1" "388cbaa5" +"link_to_guid_0" "2266d6e2" +"link_guid" "539c61dc" +"radius" "900" +"classname" "info_target" +} +{ +"editorclass" "info_fw_turret_site" +"spawnflags" "0" +"model" "models/communication/flag_base_red.mdl" +"scale" "1" +"angles" "0 65.8114 0" +"origin" "-7869.5 -1013.15 681" +"link_to_guid_1" "9b60b1b0" +"link_to_guid_0" "7491589" +"link_guid" "7070a0e2" +"turretId" "6" +"teamnumber" "3" +"classname" "info_target" +} +{ +"editorclass" "info_fw_turret_site" +"spawnflags" "0" +"model" "models/communication/flag_base_red.mdl" +"scale" "1" +"angles" "0 135 0" +"origin" "-6649 362 585" +"link_to_guid_1" "9b6a7479" +"link_to_guid_0" "6c2dd43f" +"link_guid" "ef8ee88b" +"turretId" "8" +"teamnumber" "3" +"classname" "info_target" +} +{ +"editorclass" "info_fw_turret_site" +"spawnflags" "0" +"model" "models/communication/flag_base_red.mdl" +"scale" "1" +"angles" "0.603044 90 -1.33634" +"origin" "-949.577 -2882.28 533.149" +"link_to_guid_1" "ce6e0c03" +"link_to_guid_0" "436209f5" +"link_guid" "f4757f6f" +"turretId" "4" +"teamnumber" "2" +"classname" "info_target" +} +{ +"editorclass" "info_fw_turret_site" +"spawnflags" "0" +"model" "models/communication/flag_base_red.mdl" +"scale" "1" +"angles" "-1.1511e-005 90 -5.58721e-005" +"origin" "-957.242 -1445.11 520.999" +"link_to_guid_1" "3566e2c0" +"link_to_guid_0" "263c3de7" +"link_guid" "6c185b79" +"turretId" "5" +"teamnumber" "2" +"classname" "info_target" +} +{ +"editorclass" "info_fw_battery_port" +"spawnflags" "0" +"model" "models/props/battery_port/battery_port_animated.mdl" +"scale" "1" +"angles" "3.10056e-006 90 -1.52373e-006" +"origin" "-4384 -2534 725.88" +"link_guid" "3b7f5395" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 90 0" +"origin" "-4422 -2642 716" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 90 0" +"origin" "-4422 -2718 716" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 90 0" +"origin" "-4346 -2642 716" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 90 0" +"origin" "-4346 -2718 716" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 90 0" +"origin" "-4384 -2534 716" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 90 0" +"origin" "-4422 -2718 726" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 90 0" +"origin" "-4422 -2642 726" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 90 0" +"origin" "-4346 -2642 726" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 90 0" +"origin" "-4346 -2718 726" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 90 0" +"origin" "-4346 -2718 736" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 90 0" +"origin" "-4346 -2642 736" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 90 0" +"origin" "-4422 -2718 736" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 90 0" +"origin" "-4422 -2642 736" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 90 0" +"origin" "-4346 -2642 746" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 90 0" +"origin" "-4422 -2718 746" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 90 0" +"origin" "-4346 -2718 746" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 90 0" +"origin" "-4422 -2642 746" +"classname" "script_ref" +} +{ +"model" "*2" +"triangle_collision" "1" +"editorclass" "func_brush_navmesh_separator" +"origin" "-4384 -2626 886" +"link_guid" "2365c1c9" +"startDisconnected" "0" +"classname" "func_brush" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 90 0" +"origin" "-3726 -65 530" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 90 0" +"origin" "-3780 -281 564" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 90 0" +"origin" "-3780 -357 564" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 90 0" +"origin" "-3856 -357 564" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 90 0" +"origin" "-3856 -281 564" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_battery_port" +"spawnflags" "0" +"model" "models/props/battery_port/battery_port_animated.mdl" +"scale" "1" +"angles" "3.10056e-006 90 -1.52373e-006" +"origin" "-3726 -65 549.88" +"link_guid" "6668019f" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 90 0" +"origin" "-3726 -65 540" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 90 0" +"origin" "-3856 -357 574" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 90 0" +"origin" "-3780 -357 574" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 90 0" +"origin" "-3780 -281 574" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 90 0" +"origin" "-3856 -281 574" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 90 0" +"origin" "-3780 -357 584" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 90 0" +"origin" "-3856 -357 584" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 90 0" +"origin" "-3780 -281 584" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 90 0" +"origin" "-3856 -281 584" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 90 0" +"origin" "-3780 -281 594" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 90 0" +"origin" "-3856 -281 594" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 90 0" +"origin" "-3856 -357 594" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 90 0" +"origin" "-3780 -357 594" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 90 0" +"origin" "-3856 -281 604" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 90 0" +"origin" "-3780 -281 604" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 90 0" +"origin" "-3856 -357 604" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 90 0" +"origin" "-3780 -357 604" +"classname" "script_ref" +} +{ +"model" "*3" +"triangle_collision" "1" +"editorclass" "func_brush_navmesh_separator" +"origin" "-3790.5 -210 722" +"link_guid" "c86bd441" +"startDisconnected" "0" +"classname" "func_brush" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 97.0737 0" +"origin" "-6197.48 -4250.06 512" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 97.0737 0" +"origin" "-6282.25 -4183.92 512" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_battery_port" +"spawnflags" "0" +"model" "models/props/battery_port/battery_port_animated.mdl" +"scale" "1" +"angles" "3.10056e-006 45.0117 -1.52373e-006" +"origin" "-6081.35 -4053.12 545.88" +"link_guid" "ee670072" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 97.0737 0" +"origin" "-6272.91 -4259.4 512" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 45.0117 0" +"origin" "-6081.35 -4053.12 536" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 97.0737 0" +"origin" "-6206.85 -4174.57 512" +"classname" "script_ref" +} +{ +"model" "*4" +"triangle_collision" "1" +"editorclass" "func_brush_navmesh_separator" +"origin" "-6177.5 -4151 678" +"link_guid" "4b6be066" +"startDisconnected" "0" +"classname" "func_brush" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 45.0117 0" +"origin" "-6081.35 -4053.12 526" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 90 0" +"origin" "-722 -3834 512" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 90 0" +"origin" "-798 -3834 512" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 90 0" +"origin" "-722 -3910 512" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 90 0" +"origin" "-608 -3870 512" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 90 0" +"origin" "-798 -3910 512" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_battery_port" +"spawnflags" "0" +"model" "models/props/battery_port/battery_port_animated.mdl" +"scale" "1" +"angles" "3.10056e-006 90 -1.52373e-006" +"origin" "-608 -3870 521.88" +"link_guid" "feb9084e" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 90 0" +"origin" "-912 -2920 522" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 90 0" +"origin" "-912 -2844 522" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 90 0" +"origin" "-988 -2844 522" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 90 0" +"origin" "-988 -2920 522" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 90 0" +"origin" "-834 -2880 512" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_battery_port" +"spawnflags" "0" +"model" "models/props/battery_port/battery_port_animated.mdl" +"scale" "1" +"angles" "3.10056e-006 90 -1.52373e-006" +"origin" "-834 -2880 521.88" +"link_guid" "ce6e0c03" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 90 0" +"origin" "-919 -1623 512" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 90 0" +"origin" "-995 -1483 512" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_battery_port" +"spawnflags" "0" +"model" "models/props/battery_port/battery_port_animated.mdl" +"scale" "1" +"angles" "3.10056e-006 90 -1.52373e-006" +"origin" "-919 -1623 521.88" +"link_guid" "263c3de7" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 90 0" +"origin" "-995 -1407 512" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 90 0" +"origin" "-919 -1407 512" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 90 0" +"origin" "-919 -1483 512" +"classname" "script_ref" +} +{ +"model" "*5" +"triangle_collision" "1" +"editorclass" "func_brush_navmesh_separator" +"origin" "-702.5 -3872 686" +"link_guid" "bcd0f203" +"startDisconnected" "0" +"classname" "func_brush" +} +{ +"model" "*6" +"triangle_collision" "1" +"editorclass" "func_brush_navmesh_separator" +"origin" "-911.5 -2880 686" +"link_guid" "436209f5" +"startDisconnected" "0" +"classname" "func_brush" +} +{ +"model" "*7" +"triangle_collision" "1" +"editorclass" "func_brush_navmesh_separator" +"origin" "-955.5 -1515 686" +"link_guid" "3566e2c0" +"startDisconnected" "0" +"classname" "func_brush" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 45 0" +"origin" "-6702.86 362.291 576" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 45 0" +"origin" "-6649.12 416.031 576" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_battery_port" +"spawnflags" "0" +"model" "models/props/battery_port/battery_port_animated.mdl" +"scale" "1" +"angles" "3.10056e-006 45 -1.52373e-006" +"origin" "-6766.12 247.122 585.88" +"link_guid" "6c2dd43f" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 45 0" +"origin" "-6649.11 308.55 576" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 45 0" +"origin" "-6595.37 362.29 576" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 45 0" +"origin" "-6766.12 247.122 576" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 45 0" +"origin" "-6468.37 -1024.71 524" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_battery_port" +"spawnflags" "0" +"model" "models/props/battery_port/battery_port_animated.mdl" +"scale" "1" +"angles" "3.10056e-006 45 -1.52373e-006" +"origin" "-6799.12 -875.88 533.88" +"link_guid" "cd6e529e" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 45 0" +"origin" "-6522.11 -1078.45 524" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 45 0" +"origin" "-6522.12 -970.969 524" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 45 0" +"origin" "-6799.12 -875.88 524" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 45 0" +"origin" "-6575.86 -1024.71 524" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 45 0" +"origin" "-6522.11 -1078.45 514" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 45 0" +"origin" "-6575.86 -1024.71 514" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 66.0615 0" +"origin" "-7819.05 -993.456 632" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 66.0615 0" +"origin" "-7888.55 -962.627 632" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 11.1616 0" +"origin" "-7927.69 -782.723 576" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 66.0615 0" +"origin" "-7919.35 -1032.1 632" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 66.0615 0" +"origin" "-7849.92 -1062.91 632" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_battery_port" +"spawnflags" "0" +"model" "models/props/battery_port/battery_port_animated.mdl" +"scale" "1" +"angles" "3.10056e-006 11.1616 -1.52373e-006" +"origin" "-7927.69 -782.723 585.88" +"link_guid" "7491589" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 66.0615 0" +"origin" "-7819.05 -993.456 642" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 66.0615 0" +"origin" "-7849.92 -1062.91 642" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 66.0615 0" +"origin" "-7919.35 -1032.1 642" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 66.0615 0" +"origin" "-7888.55 -962.627 642" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 66.0615 0" +"origin" "-7819.05 -993.456 652" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 66.0615 0" +"origin" "-7919.35 -1032.1 652" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 66.0615 0" +"origin" "-7849.92 -1062.91 652" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 66.0615 0" +"origin" "-7888.55 -962.627 652" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 66.0615 0" +"origin" "-7849.92 -1062.91 662" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 66.0615 0" +"origin" "-7888.55 -962.627 662" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 66.0615 0" +"origin" "-7919.35 -1032.1 662" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 66.0615 0" +"origin" "-7819.05 -993.456 662" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 66.0615 0" +"origin" "-7819.05 -993.456 672" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 66.0615 0" +"origin" "-7919.35 -1032.1 672" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 66.0615 0" +"origin" "-7888.55 -962.627 672" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 66.0615 0" +"origin" "-7849.92 -1062.91 672" +"classname" "script_ref" +} +{ +"model" "*8" +"triangle_collision" "1" +"editorclass" "func_brush_navmesh_separator" +"origin" "-6680.75 331.983 750" +"link_guid" "9b6a7479" +"startDisconnected" "0" +"classname" "func_brush" +} +{ +"model" "*9" +"triangle_collision" "1" +"editorclass" "func_brush_navmesh_separator" +"origin" "-6633.75 -977.05 686" +"link_guid" "1e132096" +"startDisconnected" "0" +"classname" "func_brush" +} +{ +"model" "*10" +"triangle_collision" "1" +"editorclass" "func_brush_navmesh_separator" +"origin" "-7869.28 -925.873 774" +"link_guid" "9b60b1b0" +"startDisconnected" "0" +"classname" "func_brush" +} +{ +"model" "*11" +"triangle_collision" "1" +"editorclass" "func_brush_navmesh_separator" +"origin" "-452 -2886 732" +"link_guid" "63693a5c" +"startDisconnected" "0" +"classname" "func_brush" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 90 0" +"origin" "-912 -2920 512" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 90 0" +"origin" "-988 -2920 512" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 90 0" +"origin" "-988 -2844 512" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 90 0" +"origin" "-912 -2844 512" +"classname" "script_ref" +} +{ +"editorclass" "info_fw_foundation_plate" +"spawnflags" "0" +"model" "models/industrial/grate_mod.mdl" +"scale" "1" +"angles" "0 45 0" +"origin" "-6468.37 -1024.71 514" +"classname" "script_ref" +} +{ +"editorclass" "trigger_fw_territory" +"origin" "-728 -2828 885" +"wait" "0" +"triggerNearbyRadius" "0" +"triggerFilterTeamOther" "1" +"triggerFilterTeamNeutral" "0" +"triggerFilterTeamMilitia" "1" +"triggerFilterTeamIMC" "1" +"triggerFilterTeamBeast" "0" +"triggerFilterPlayer" "all" +"triggerFilterPhaseShift" "any" +"triggerFilterNpcOwnedByPlayer" "any" +"triggerFilterNpcFlip" "0" +"triggerFilterNpc" "all" +"triggerFilterNonCharacter" "1" +"StartDisabled" "0" +"spawnflags" "64" +"link_guid" "128fc74f" +"triggerFilterUseNew" "1" +"classname" "trigger_multiple" +"*trigger_brush_0_plane_0" "-1 -0 -0 904" +"*trigger_brush_0_plane_1" "1 0 0 1336" +"*trigger_brush_0_plane_2" "-0 -1 -0 1588" +"*trigger_brush_0_plane_3" "-0 1 0 996" +"*trigger_brush_0_plane_4" "0 0 -1 395" +"*trigger_brush_0_plane_5" "0 0 1 395" +"*trigger_brush_0_plane_6" "-0.70710677 0.70710677 0 1343.5029" +"*trigger_brush_0_plane_7" "-0.70710677 -0.70710677 -0 1762.1101" +"*trigger_brush_0_plane_8" "0.70710677 -0.70710677 0 2067.5801" +"*trigger_brush_0_plane_9" "0.70710677 0.70710677 0 1648.9729" +"*trigger_brush_1_plane_0" "-1 -0 -0 1336" +"*trigger_brush_1_plane_1" "1 0 0 1336" +"*trigger_brush_1_plane_2" "0 -1 -0 -996" +"*trigger_brush_1_plane_3" "-0 1 -0 1588" +"*trigger_brush_1_plane_4" "0 0 -1 395" +"*trigger_brush_1_plane_5" "0 0 1 395" +"*trigger_brush_1_plane_6" "-0.70710677 0.70710677 -0 2067.5801" +"*trigger_brush_1_plane_7" "-0.70710677 -0.70710677 -0 240.41632" +"*trigger_brush_1_plane_8" "0.70710677 -0.70710677 0 240.41632" +"*trigger_brush_1_plane_9" "0.70710677 0.70710677 0 2067.5801" +"*trigger_bounds_mins" "-1336 -1588 -395" +"*trigger_bounds_maxs" "1336 1588 395" +} +{ +"model" "*12" +"triangle_collision" "1" +"editorclass" "func_brush_fw_territory_border" +"origin" "-1051 -2171 728" +"VisibilityFlags" "2" +"useNonLocalWorldLights" "0" +"startdisabled" "0" +"solidity" "1" +"solidbsp" "0" +"gamemode_tdm" "0" +"gamemode_lh" "0" +"gamemode_fw" "1" +"gamemode_ffa" "0" +"gamemode_ctf" "0" +"gamemode_cp" "0" +"gamemode_at" "0" +"drawinfastreflection" "0" +"disableshadows" "0" +"bakedSunFraction" "-1.0" +"teamnumber" "2" +"classname" "func_brush" +} +{ +"model" "*13" +"triangle_collision" "1" +"editorclass" "func_brush_fw_territory_border" +"origin" "-6613 -1533.5 674" +"useNonLocalWorldLights" "0" +"teamnumber" "3" +"startdisabled" "0" +"solidity" "1" +"solidbsp" "0" +"gamemode_tdm" "0" +"gamemode_lh" "0" +"gamemode_fw" "1" +"gamemode_ffa" "0" +"gamemode_ctf" "0" +"gamemode_cp" "0" +"gamemode_at" "0" +"drawinfastreflection" "0" +"disableshadows" "0" +"bakedSunFraction" "-1.0" +"VisibilityFlags" "4" +"classname" "func_brush" +} +{ +"model" "*14" +"triangle_collision" "1" +"editorclass" "func_brush_fw_territory_border" +"origin" "-1051 -2170.5 728" +"useNonLocalWorldLights" "0" +"startdisabled" "0" +"solidity" "1" +"solidbsp" "0" +"gamemode_tdm" "0" +"gamemode_lh" "0" +"gamemode_fw" "1" +"gamemode_ffa" "0" +"gamemode_ctf" "0" +"gamemode_cp" "0" +"gamemode_at" "0" +"drawinfastreflection" "0" +"disableshadows" "0" +"bakedSunFraction" "-1.0" +"teamnumber" "2" +"VisibilityFlags" "4" +"classname" "func_brush" +} +{ +"model" "*15" +"triangle_collision" "1" +"editorclass" "func_brush_fw_territory_border" +"origin" "-6614 -1533.5 674" +"VisibilityFlags" "2" +"useNonLocalWorldLights" "0" +"teamnumber" "3" +"startdisabled" "0" +"solidity" "1" +"solidbsp" "0" +"gamemode_tdm" "0" +"gamemode_lh" "0" +"gamemode_fw" "1" +"gamemode_ffa" "0" +"gamemode_ctf" "0" +"gamemode_cp" "0" +"gamemode_at" "0" +"drawinfastreflection" "0" +"disableshadows" "0" +"bakedSunFraction" "-1.0" +"classname" "func_brush" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 -70.647 0" +"origin" "-1398.96 873.896 574.188" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "100" +"scale" "1" +"angles" "0 0 0" +"origin" "-4448 -1480 720" +"classname" "info_node_cover_stand" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "100" +"scale" "1" +"angles" "0 0 0" +"origin" "-4448 -1536 720" +"classname" "info_node_cover_stand" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "100" +"scale" "1" +"angles" "0 0 0" +"origin" "-4448 -1592 720" +"classname" "info_node_cover_stand" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "100" +"scale" "1" +"angles" "0 -90 0" +"origin" "-4600 -1568 720" +"classname" "info_node_cover_stand" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "100" +"scale" "1" +"angles" "0 -90 0" +"origin" "-4712 -1568 720" +"classname" "info_node_cover_stand" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "100" +"scale" "1" +"angles" "0 -90 0" +"origin" "-4656 -1568 720" +"classname" "info_node_cover_stand" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "100" +"scale" "1" +"angles" "0 -90 0" +"origin" "-4768 -1568 720" +"classname" "info_node_cover_stand" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 0 0" +"origin" "-4604 -1368 720" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 0 0" +"origin" "-4220 -1782 720" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 0 0" +"origin" "-4540 -1784 720" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 -90 0" +"origin" "-4792 -1724 720" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 0 0" +"origin" "-4844 -1784 720" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 0 0" +"origin" "-4844 -2152 720" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 -90 0" +"origin" "-4792 -2100 720" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 -90 0" +"origin" "-4488 -2100 720" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 180 0" +"origin" "-4436 -2152 720" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 -90 0" +"origin" "-4648 -1924 720" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 174.242 0" +"origin" "-3516.01 -2612.4 736" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 -134.404 0" +"origin" "-4005.21 -2549.17 720" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 -134.404 0" +"origin" "-3969.21 -2585.17 720" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 180 0" +"origin" "-3363.85 -2041.39 720" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 180 0" +"origin" "-3364.24 -2092.28 720" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 180 0" +"origin" "-2396.24 -2092.28 656" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 180 0" +"origin" "-2395.85 -2041.39 656" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 45 0" +"origin" "-3612.05 -2210.29 720" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 45 0" +"origin" "-3647.46 -2175.76 720" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 0 0" +"origin" "-4258 -2710 720" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 0 0" +"origin" "-4258 -2660 720" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 0 0" +"origin" "-5034 -2714 720" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 0 0" +"origin" "-5034 -2664 720" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 180 0" +"origin" "-4758 -2662 720" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 180 0" +"origin" "-4758 -2712 720" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 124.91 0" +"origin" "-5305.57 -2280.73 720" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 124.91 0" +"origin" "-5346.53 -2309.39 720" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 -55.09 0" +"origin" "-5463.47 -2054.61 720" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 -55.09 0" +"origin" "-5504.43 -2083.27 720" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 90 0" +"origin" "-4822 -2766 720" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 -90 0" +"origin" "-4970 -2610 720" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 90 0" +"origin" "-4200 -2766 720" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 137.849 0" +"origin" "-3978.23 -2674.54 720" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 135.697 0" +"origin" "-3527.69 -2204.18 720" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 -55.171 0" +"origin" "-5292.38 -1858.66 720" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 49.7768 0" +"origin" "-4953.45 -3057.54 720" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 -45.163 0" +"origin" "-6104.11 -1467.31 544" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 -45.163 0" +"origin" "-6068.72 -1432.03 544" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 -45.163 0" +"origin" "-5880.11 -1255.31 544" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 -45.163 0" +"origin" "-6282.72 -1650.03 544" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "100" +"scale" "1" +"angles" "0 45.2765 0" +"origin" "-6525.59 -1797.7 592" +"classname" "info_node_cover_stand" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "100" +"scale" "1" +"angles" "0 45.2765 0" +"origin" "-6485.59 -1837.7 592" +"classname" "info_node_cover_stand" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 44.837 0" +"origin" "-6592.69 -1784.11 592" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 44.837 0" +"origin" "-6656.69 -1716.11 592" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 -135.163 0" +"origin" "-6819.31 -1879.89 592" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 -135.163 0" +"origin" "-6675.31 -2023.89 592" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 44.837 0" +"origin" "-6616.69 -1416.11 592" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 -135.163 0" +"origin" "-7161.31 -2245.89 592" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 -135.163 0" +"origin" "-7383.31 -2023.89 592" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 44.837 0" +"origin" "-7372.69 -1516.11 592" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "100" +"scale" "1" +"angles" "0 -134.724 0" +"origin" "-5710.41 -974.3 592" +"classname" "info_node_cover_stand" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 -135.163 0" +"origin" "-5745.31 -889.89 592" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "100" +"scale" "1" +"angles" "0 -134.724 0" +"origin" "-5836.41 -898.3 592" +"classname" "info_node_cover_stand" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "100" +"scale" "1" +"angles" "0 -134.724 0" +"origin" "-6372.41 -690.3 592" +"classname" "info_node_cover_stand" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "100" +"scale" "1" +"angles" "0 -134.724 0" +"origin" "-6420.41 -650.3 592" +"classname" "info_node_cover_stand" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "100" +"scale" "1" +"angles" "0 -134.724 0" +"origin" "-6460.41 -610.3 592" +"classname" "info_node_cover_stand" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 -135.163 0" +"origin" "-6305.31 -725.89 592" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 -135.163 0" +"origin" "-6481.31 -555.89 592" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 44.837 0" +"origin" "-6090.69 -350.11 592" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 44.837 0" +"origin" "-5666.69 33.89 592" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 -135.163 0" +"origin" "-6045.31 -305.89 592" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 -20.865 0" +"origin" "-5194.72 232.223 592" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 159.135 0" +"origin" "-5075.28 189.78 592" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 0 0" +"origin" "-4882 184 592" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 0 0" +"origin" "-4882 -306 592" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 -25.868 0" +"origin" "-5272.05 6.83351 592" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 -134.691 0" +"origin" "-6613.74 55.0701 592" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 -134.691 0" +"origin" "-6895.74 339.07 592" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 -45.061 0" +"origin" "-5494.43 573.319 592" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 -25.868 0" +"origin" "-5784.05 154.834 592" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 -44.691 0" +"origin" "-7145.07 -729.74 592" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 75.477 0" +"origin" "-7936.67 -3117.23 592" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 67.9382 0" +"origin" "-8116.76 -3943.04 612.36" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 -22.062 0" +"origin" "-8131.04 -3881.24 612.36" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 74.9241 0" +"origin" "-8443.99 -4197.42 612.36" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 75.0976 0" +"origin" "-8591.52 -2940.22 596.36" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 -14.449 0" +"origin" "-8625.64 -2878.83 596.36" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 -14.902 0" +"origin" "-8646.22 -3144.48 588.36" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 -14.902 0" +"origin" "-8186.22 -3268.48 588.36" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 -14.902 0" +"origin" "-7738.22 -3388.48 588.36" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 -14.411 0" +"origin" "-7861.12 -3839.65 612.36" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 75.098 0" +"origin" "-7821.52 -3916.22 588.36" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 44.4931 0" +"origin" "-8843.46 -4036.85 588.36" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 11.4796 0" +"origin" "-9137.74 -3522.5 612.36" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 -23.152 0" +"origin" "-6910.97 -3776.88 612.36" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 24.3059 0" +"origin" "-7612.21 -4206.92 612.36" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "100" +"scale" "1" +"angles" "0 -135.244 0" +"origin" "-5389.49 -3299.08 720" +"classname" "info_node_cover_stand" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "100" +"scale" "1" +"angles" "0 -135.244 0" +"origin" "-5428.86 -3259.31 720" +"classname" "info_node_cover_stand" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "100" +"scale" "1" +"angles" "0 -134.26 0" +"origin" "-5311.26 -3375.59 720" +"classname" "info_node_cover_stand" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "100" +"scale" "1" +"angles" "0 -134.26 0" +"origin" "-5271.21 -3414.68 720" +"classname" "info_node_cover_stand" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 45.6407 0" +"origin" "-5198.86 -3069.67 720" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 -106.038 0" +"origin" "-2273.51 -2344.4 656" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 -70.647 0" +"origin" "-2784.97 -2332.36 656" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 -90 0" +"origin" "-2606.61 -1979.85 656" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 -90 0" +"origin" "-2451.72 -1980.24 656" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 -2.2529 0" +"origin" "-8502.15 -4125.32 612.36" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 -83.909 0" +"origin" "-1470.54 649.606 574.188" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 -70.647 0" +"origin" "-1646.96 681.896 574.188" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 -47.145 0" +"origin" "-1909.06 268.227 574.188" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 -89.666 0" +"origin" "-1188.89 -5.46055 534.188" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 -89.666 0" +"origin" "-1128.89 -5.4606 534.188" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 -45.361 0" +"origin" "-1702.89 389.442 574.188" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 -50.123 0" +"origin" "-1915.84 473.333 574.185" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 -89.666 0" +"origin" "-664 608 608" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 -89.666 0" +"origin" "-432 332 616" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 -89.666 0" +"origin" "-432 1192 592" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 -106.195 0" +"origin" "-640.812 -190.785 591.967" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 -73.007 0" +"origin" "-1373.04 -230.614 536.005" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 -89.666 0" +"origin" "-1300.89 -605.461 534.188" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 -106.195 0" +"origin" "-612.868 1338.66 586.157" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 -82.54 0" +"origin" "-1021.68 1162.37 574.188" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 -121.825 0" +"origin" "-1467.78 -599.512 534.188" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 -143.868 0" +"origin" "-167.517 1018.96 595.376" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "100" +"scale" "1" +"angles" "0 75.8469 0" +"origin" "-7529.91 -2887.76 592" +"classname" "info_node_cover_stand" +} +{ +"spawnflags" "0" +"nodeFOV" "360" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "102" +"origin" "-4581.92 -1857.53 755.998" +"classname" "info_node_safe_hint" +} +{ +"spawnflags" "0" +"nodeFOV" "360" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "102" +"origin" "-3202.13 -2679.22 772" +"classname" "info_node_safe_hint" +} +{ +"spawnflags" "0" +"nodeFOV" "360" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "102" +"origin" "-4996.1 848.459 640" +"classname" "info_node_safe_hint" +} +{ +"spawnflags" "0" +"nodeFOV" "360" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "102" +"origin" "3.20383 -2583.9 584" +"classname" "info_node_safe_hint" +} +{ +"spawnflags" "0" +"nodeFOV" "360" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "102" +"origin" "-4126.89 -3645.28 708.992" +"classname" "info_node_safe_hint" +} +{ +"spawnflags" "0" +"nodeFOV" "360" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "102" +"origin" "-8254.52 -4383.02 668.36" +"classname" "info_node_safe_hint" +} +{ +"spawnflags" "0" +"nodeFOV" "360" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "102" +"origin" "-8468.17 -2480.01 644.36" +"classname" "info_node_safe_hint" +} +{ +"spawnflags" "0" +"nodeFOV" "360" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "102" +"origin" "-7833.18 -1925.19 644.125" +"classname" "info_node_safe_hint" +} +{ +"spawnflags" "0" +"nodeFOV" "360" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "102" +"origin" "-8326.67 -1573.78 644" +"classname" "info_node_safe_hint" +} +{ +"spawnflags" "0" +"nodeFOV" "360" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "102" +"origin" "-5844.11 -121.301 644" +"classname" "info_node_safe_hint" +} +{ +"spawnflags" "0" +"nodeFOV" "360" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "102" +"origin" "-6128.37 -720.44 644" +"classname" "info_node_safe_hint" +} +{ +"spawnflags" "0" +"nodeFOV" "360" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "102" +"origin" "-6707.37 -1812.42 643.999" +"classname" "info_node_safe_hint" +} +{ +"spawnflags" "0" +"nodeFOV" "360" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "102" +"origin" "-5257.23 -3233.01 775.998" +"classname" "info_node_safe_hint" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 180 0" +"origin" "-707.71 -2674.11 543.997" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 180 0" +"origin" "-704 -3212 544" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "100" +"scale" "1" +"angles" "0 -178.666 0" +"origin" "-617.141 -2875.04 543.998" +"classname" "info_node_cover_stand" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 180 0" +"origin" "-460 -3100 544" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "100" +"scale" "1" +"angles" "0 -125.081 0" +"origin" "-833.472 -2284.29 543.998" +"classname" "info_node_cover_stand" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 90 0" +"origin" "-832.73 -3601.05 544" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "100" +"scale" "1" +"angles" "0 -1.40334e-014 0" +"origin" "-1399.71 -2731.27 671.999" +"classname" "info_node_cover_stand" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "100" +"scale" "1" +"angles" "0 -6.4689 0" +"origin" "-1399.62 -2638.84 671.999" +"classname" "info_node_cover_stand" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 0 0" +"origin" "-1480 -3028 672" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 0 0" +"origin" "-1720 -3100 676" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 0 0" +"origin" "-1720 -2660 676" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "100" +"scale" "1" +"angles" "0 0 0" +"origin" "-1992 -2828 676" +"classname" "info_node_cover_stand" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "100" +"scale" "1" +"angles" "0 0 0" +"origin" "-1992 -2936 676" +"classname" "info_node_cover_stand" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "100" +"scale" "1" +"angles" "0 0 0" +"origin" "-2180 -2984 676" +"classname" "info_node_cover_stand" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 0 0" +"origin" "-2016 -2576 676" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 56.2721 0" +"origin" "-1949.45 -3509.17 676" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "100" +"scale" "1" +"angles" "0 0 0" +"origin" "-2812.8 -2664.66 740" +"classname" "info_node_cover_stand" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "100" +"scale" "1" +"angles" "0 25.6162 0" +"origin" "-2812.01 -3011.4 740" +"classname" "info_node_cover_stand" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "100" +"scale" "1" +"angles" "0 -32.531 0" +"origin" "-2828.86 -3205.67 740" +"classname" "info_node_cover_stand" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "100" +"scale" "1" +"angles" "0 -6.2179 0" +"origin" "-3032 -3416.73 740" +"classname" "info_node_cover_stand" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "100" +"scale" "1" +"angles" "0 0.0768 0" +"origin" "-3104.63 -3485.69 740" +"classname" "info_node_cover_stand" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 0 0" +"origin" "-2861.49 -2863.76 740" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 180 0" +"origin" "-2704 -2396 676" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "100" +"scale" "1" +"angles" "0 -134.33 0" +"origin" "-2761.52 -3471.39 676" +"classname" "info_node_cover_stand" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "100" +"scale" "1" +"angles" "0 -134.33 0" +"origin" "-2684.26 -3546.82 676" +"classname" "info_node_cover_stand" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 -134.639 0" +"origin" "-3202.47 -3376.52 740" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 -134.859 0" +"origin" "-3200.63 -4278.03 676.992" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 -134.639 0" +"origin" "-3550.71 -3621.72 676.992" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 155.979 0" +"origin" "-3463.88 -4643.98 804.999" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 133.053 0" +"origin" "-3741.32 -4907.18 805" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 166.354 0" +"origin" "-3675.16 -4826.35 805" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 114.473 0" +"origin" "-3983 -4975.73 805" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 88.2126 0" +"origin" "-4256.72 -4967.88 805" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 46.6407 0" +"origin" "-4512.85 -4891.3 805" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 41.8151 0" +"origin" "-4563.67 -4841.39 805.001" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 42.579 0" +"origin" "-4859.07 -4548.38 805" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 -120.962 0" +"origin" "-3986.54 -3549.94 676.992" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 -113.45 0" +"origin" "-4188.01 -3705.29 676.991" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 66.5706 0" +"origin" "-4238.87 -3829.87 676.992" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 62.3857 0" +"origin" "-4364.49 -4336.36 677.088" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 44.8382 0" +"origin" "-4309.25 -4380.65 677.117" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 37.7505 0" +"origin" "-4071.07 -4137.88 676.992" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 139.865 0" +"origin" "-4222.27 -4375.36 677.088" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 167.789 0" +"origin" "-3955.13 -4117.21 677.088" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "100" +"scale" "1" +"angles" "0 80.8422 0" +"origin" "-4411.09 -4892.87 805" +"classname" "info_node_cover_stand" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "100" +"scale" "1" +"angles" "0 89.7471 0" +"origin" "-4326.31 -4894.97 805" +"classname" "info_node_cover_stand" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "100" +"scale" "1" +"angles" "0 70.1256 0" +"origin" "-3910.69 -4912.43 805" +"classname" "info_node_cover_stand" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "100" +"scale" "1" +"angles" "0 45.67 0" +"origin" "-2818.48 -3682.61 676" +"classname" "info_node_cover_stand" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "100" +"scale" "1" +"angles" "0 45.67 0" +"origin" "-2885.74 -3615.18 676" +"classname" "info_node_cover_stand" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 36.5559 0" +"origin" "-2609.52 -3780.17 676" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 31.9057 0" +"origin" "-3696.58 -3757.97 676.992" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 -23.621 0" +"origin" "-7441.27 -898.424 612.001" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 -23.621 0" +"origin" "-8041.74 -1434.98 612" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 37.0224 0" +"origin" "-7080.78 161.468 615.988" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 53.6677 0" +"origin" "-6786.92 -124.946 612" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 -33.427 0" +"origin" "-6075.92 526.058 612" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 -35.245 0" +"origin" "-6677.06 -1246.48 547.999" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 138.638 0" +"origin" "-2417.65 -1009.07 544" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 141.758 0" +"origin" "-2332.31 -564.011 544.001" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 160.837 0" +"origin" "-2624.02 -519.857 544.001" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 169.628 0" +"origin" "-2689.16 -113.007 544" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 133.483 0" +"origin" "-2829.19 -642.056 544" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 149.3 0" +"origin" "-1979.57 -1001.11 544" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 134.155 0" +"origin" "-2184.13 -999.64 544" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 149.3 0" +"origin" "-1686.79 -1189.54 551.999" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 171.47 0" +"origin" "-1357.28 -1042.66 543.999" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 -179.666 0" +"origin" "-1235.46 -715.11 534.188" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 -34.978 0" +"origin" "-2730.88 -458.32 544" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 -35.71 0" +"origin" "-2775.54 -520.54 544" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 -9.6773 0" +"origin" "-2266.83 -844.802 544" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 3.901 0" +"origin" "-2043.38 -1151.14 544" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 -64.026 0" +"origin" "-2482.02 -350.092 544" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 -30.214 0" +"origin" "-2714.15 -751.932 544" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "100" +"scale" "1" +"angles" "0 -45.244 0" +"origin" "-5714.85 -3386.19 631.998" +"classname" "info_node_cover_stand" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "100" +"scale" "1" +"angles" "0 -45.244 0" +"origin" "-5778.85 -3454.19 631.998" +"classname" "info_node_cover_stand" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 -45.162 0" +"origin" "-5143.75 -3664.94 683.684" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "100" +"scale" "1" +"angles" "0 -28.251 0" +"origin" "-5595.25 -3691.11 631.998" +"classname" "info_node_cover_stand" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 28.2911 0" +"origin" "-6336.37 -3733.64 583.999" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 43.454 0" +"origin" "-6046.74 -4089.17 567.998" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 45.5625 0" +"origin" "-6442.85 -4307.03 596.727" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 43.454 0" +"origin" "-6411.68 -3979.16 544.059" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 -135.616 0" +"origin" "-5636.21 -3055.44 743.998" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 -134.748 0" +"origin" "-5911.06 -3640.23 615.998" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 -158.587 0" +"origin" "-5575.21 -3991.75 616.151" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 -135.047 0" +"origin" "-5652.33 -3892.95 616.263" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 -109.894 0" +"origin" "-6004.29 -3569.17 615.999" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 47.6708 0" +"origin" "-6118.64 -4004.42 567.998" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 47.6708 0" +"origin" "-5953.49 -4363.76 551.998" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 166.432 0" +"origin" "-5926.31 -4057.69 583.998" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 -142.99 0" +"origin" "-6006.69 -3895.67 591.999" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "100" +"scale" "1" +"angles" "0 44.8896 0" +"origin" "-6334.8 -4509.46 596.59" +"classname" "info_node_cover_stand" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "100" +"scale" "1" +"angles" "0 169.812 0" +"origin" "-4504.9 -4068.47 676.998" +"classname" "info_node_cover_stand" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 134.202 0" +"origin" "-4950.18 -4283.5 691.021" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 141.776 0" +"origin" "-4755.07 -3956.47 706.986" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 136.692 0" +"origin" "-4788.98 -4236.91 677.36" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 142.275 0" +"origin" "-4860.91 -4054.94 689.753" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 145.937 0" +"origin" "-4658.05 -4180.44 677.005" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 135.456 0" +"origin" "-4556.96 -4489.46 676.997" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "100" +"scale" "1" +"angles" "0 141.59 0" +"origin" "-4368.02 -4659.16 677.095" +"classname" "info_node_cover_stand" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 50.3557 0" +"origin" "-3067.86 -4140.96 676.992" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 31.9057 0" +"origin" "-3220.18 -3619.63 676.991" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 128.27 0" +"origin" "-6730.49 -4096.46 596.637" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "100" +"scale" "1" +"angles" "0 144.639 0" +"origin" "-7016.04 -3992.89 615.352" +"classname" "info_node_cover_stand" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "100" +"scale" "1" +"angles" "0 144.639 0" +"origin" "-6970.05 -3936.68 613.751" +"classname" "info_node_cover_stand" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 137.753 0" +"origin" "-6828.88 -3835.72 613.356" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 127.562 0" +"origin" "-6906.02 -4206.28 621.319" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 -30.354 0" +"origin" "-7229.86 -3833.26 628.919" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 -30.354 0" +"origin" "-7189.66 -3781.25 615.588" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 1.4328 0" +"origin" "-7652.91 -3868.36 613.737" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 169.997 0" +"origin" "-3390.69 -409.783 628.126" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "100" +"scale" "1" +"angles" "0 145.444 0" +"origin" "-3539.24 -628.953 653.85" +"classname" "info_node_cover_stand" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "100" +"scale" "1" +"angles" "0 170.226 0" +"origin" "-3422.48 163.181 678.375" +"classname" "info_node_cover_stand" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 153.366 0" +"origin" "-3977.6 -507.186 620.654" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 -87.59 0" +"origin" "-4051.64 -1031.06 642.338" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 -106.967 0" +"origin" "-3654.05 -1080.95 691.825" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "100" +"scale" "1" +"angles" "0 12.1599 0" +"origin" "-4318.36 -436.306 653.563" +"classname" "info_node_cover_stand" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "100" +"scale" "1" +"angles" "0 36.0196 0" +"origin" "-4284.9 -513.31 662.829" +"classname" "info_node_cover_stand" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 -11.207 0" +"origin" "-4220.42 -156.665 650.563" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 -1.414 0" +"origin" "-4181.35 -321.315 624.302" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 -1.414 0" +"origin" "-4146.35 640.5 599.621" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 -1.414 0" +"origin" "-4251.01 554.427 604.121" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 178.584 0" +"origin" "-3355.36 -264.48 591.022" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 178.584 0" +"origin" "-3434.78 494.689 570.717" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 178.584 0" +"origin" "-3370.48 572.305 569.7" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 169.186 0" +"origin" "-3338.88 371.23 595.424" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 -87.59 0" +"origin" "-3826.48 103.86 556.936" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 -94.751 0" +"origin" "-3612.14 -8.40236 573.338" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 -100.359 0" +"origin" "-3683.58 -455.71 633.426" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 -93.066 0" +"origin" "-3761.73 -451.058 623.982" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 -94.751 0" +"origin" "-3613.3 411.581 580.228" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 -119.661 0" +"origin" "-4356.36 485.86 609.257" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 -67.568 0" +"origin" "-3133.43 306.76 585.95" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "100" +"scale" "1" +"angles" "0 -41.623 0" +"origin" "-3233.32 119.493 660.132" +"classname" "info_node_cover_stand" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 -52.608 0" +"origin" "-3168.23 169.574 666.278" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 -3.2097 0" +"origin" "-3645.72 -387.85 633.759" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 -15.827 0" +"origin" "-5718.78 266.283 612" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 149.723 0" +"origin" "-6117.19 -1016.82 548" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 134.837 0" +"origin" "-6511.07 -1400.55 548" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 149.723 0" +"origin" "-6988.63 -863.72 556" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 -121.753 0" +"origin" "-7241.91 -1372.73 556" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 -134.726 0" +"origin" "-6574.62 -1243.04 547.999" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 -59.767 0" +"origin" "-4954.64 413.425 612" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 -147.04 0" +"origin" "-5435.04 961.184 608" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 -152.864 0" +"origin" "-5958.78 512.058 612" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 -137.45 0" +"origin" "-6242.19 758.578 612" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 -116.477 0" +"origin" "-7831.51 -202.67 628" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 52.7583 0" +"origin" "-7270.91 -2360.21 612" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 -85.297 0" +"origin" "-4082.07 -369.953 635.191" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "100" +"scale" "1" +"angles" "0 36.0196 0" +"origin" "-4220.19 -580.09 662.354" +"classname" "info_node_cover_stand" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 -62.22 0" +"origin" "-4760.92 -245.885 605.061" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 -106.967 0" +"origin" "-3491.43 -947.177 682.578" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 -88.642 0" +"origin" "-3806.81 -915.8 630.794" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 -88.642 0" +"origin" "-3941.86 -835.906 621.134" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 65.2752 0" +"origin" "-4196.32 -1418.68 747.066" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 91.358 0" +"origin" "-3929.93 -1441.03 756.15" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 91.358 0" +"origin" "-3775.94 -1462.05 754.149" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 91.358 0" +"origin" "-3842.78 -1503.14 752.756" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 -45.827 0" +"origin" "-6790.89 -742.16 556" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 -45.827 0" +"origin" "-6766.08 -864.268 556" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 -45.827 0" +"origin" "-6587.41 -782.693 556.001" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 -6.8311 0" +"origin" "-7206.05 -1215.3 556.001" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 -45.827 0" +"origin" "-6327.11 -1407.17 547.996" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 -45.827 0" +"origin" "-6088.45 -1240.85 547.997" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 177.117 0" +"origin" "-6528.74 -915.604 555.999" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 134.344 0" +"origin" "-6842.1 -1983.31 612" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 -172.091 0" +"origin" "-2720.74 -3872.36 676" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 -104.654 0" +"origin" "-7818.54 -2545.53 612" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 -106.009 0" +"origin" "-7399.23 -2652.41 612" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 -104.654 0" +"origin" "-7682.55 -2236.73 612" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "100" +"scale" "1" +"angles" "0 -103.491 0" +"origin" "-7539.35 -2731.02 612.361" +"classname" "info_node_cover_stand" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 -106.182 0" +"origin" "-7556.15 -2515.44 612" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 -103.272 0" +"origin" "-7677.14 -2555.86 608" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 47.2903 0" +"origin" "-7227.17 -1653.07 620" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 68.2386 0" +"origin" "-7138.14 -1745.69 620" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 -35.745 0" +"origin" "-7295.84 -854.727 611.999" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 163.129 0" +"origin" "-1079.54 -1393.29 543.999" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 164.256 0" +"origin" "-644.283 -1287.47 551.999" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 163.129 0" +"origin" "-608.017 -1548.47 543.999" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 121.938 0" +"origin" "-1044.76 -1919.15 551.999" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "100" +"scale" "1" +"angles" "0 -96.65 0" +"origin" "-837.209 -1825.28 543.999" +"classname" "info_node_cover_stand" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "100" +"scale" "1" +"angles" "0 -96.65 0" +"origin" "-903.926 -1817.26 544" +"classname" "info_node_cover_stand" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "100" +"scale" "1" +"angles" "0 88.1533 0" +"origin" "-912.089 -1918.1 543.999" +"classname" "info_node_cover_stand" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "100" +"scale" "1" +"angles" "0 109.373 0" +"origin" "-773.872 -1925.72 543.999" +"classname" "info_node_cover_stand" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "100" +"scale" "1" +"angles" "0 -96.65 0" +"origin" "-652.95 -1876.11 544.306" +"classname" "info_node_cover_stand" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 146.327 0" +"origin" "-671.199 -1642.57 543.999" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "100" +"scale" "1" +"angles" "0 138.57 0" +"origin" "-562.81 -1962.17 545.867" +"classname" "info_node_cover_stand" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 158.674 0" +"origin" "-498.6 -2227.35 551.999" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 90.7323 0" +"origin" "-620.521 -2460.53 544" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 90.6667 0" +"origin" "-560.453 -2459.98 545.999" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 90.7323 0" +"origin" "-894.677 -2483.51 544" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 90.6667 0" +"origin" "-1112.58 -2730.83 551.999" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 90.6667 0" +"origin" "-664.477 -3024.61 544" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 -89.333 0" +"origin" "-741.66 -2149.92 544.001" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 -92.033 0" +"origin" "-1111.41 -2322.08 552" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 -44.455 0" +"origin" "-1293.77 -1707.54 551.999" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 -45.719 0" +"origin" "-1251.96 -1672.37 551.999" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "100" +"scale" "1" +"angles" "0 -44.385 0" +"origin" "-1455.92 -1275.27 551.999" +"classname" "info_node_cover_stand" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 -45.719 0" +"origin" "-1489.37 -964.045 544" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "100" +"scale" "1" +"angles" "0 -44.385 0" +"origin" "-1578.43 -999.334 544" +"classname" "info_node_cover_stand" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 -90.518 0" +"origin" "-1084.1 -953.878 546.075" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 -96.65 0" +"origin" "-732.146 -1010.05 552" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 -1.2453 0" +"origin" "-1537.71 -2839.76 676" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 3.1461 0" +"origin" "-1517.71 -2924.2 676" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 139.352 0" +"origin" "-2670.74 -602.656 543.999" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "100" +"scale" "1" +"angles" "0 149.245 0" +"origin" "-1335.03 -1348.38 551.999" +"classname" "info_node_cover_stand" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 163.141 0" +"origin" "-1032.31 -1085.11 543.999" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 74.4128 0" +"origin" "-7853.43 -3034.08 612.36" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 74.4128 0" +"origin" "-7751.29 -3071.42 612.36" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 167.629 0" +"origin" "-5558.09 239.798 608" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 166.842 0" +"origin" "-5227.33 360.85 613.635" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 135.208 0" +"origin" "-5036.83 -214.626 613.635" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 -150.455 0" +"origin" "-5086.52 870.636 608" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 -72.328 0" +"origin" "-7478.87 -1322.08 620" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "100" +"scale" "1" +"angles" "0 -49.23 0" +"origin" "-7623.01 -1502.26 620" +"classname" "info_node_cover_stand" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "100" +"scale" "1" +"angles" "0 -65.552 0" +"origin" "-7408.93 -1568.43 619.999" +"classname" "info_node_cover_stand" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "100" +"scale" "1" +"angles" "0 129.387 0" +"origin" "-7336.82 -1684.9 620.003" +"classname" "info_node_cover_stand" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "100" +"scale" "1" +"angles" "0 98.3354 0" +"origin" "-7571.35 -1622.74 620" +"classname" "info_node_cover_stand" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "100" +"scale" "1" +"angles" "0 42.8562 0" +"origin" "-7656.57 -851.33 608.001" +"classname" "info_node_cover_stand" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "100" +"scale" "1" +"angles" "0 50.9043 0" +"origin" "-7387.3 -708.065 610.848" +"classname" "info_node_cover_stand" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "100" +"scale" "1" +"angles" "0 -43.957 0" +"origin" "-7396.13 -598.89 607.999" +"classname" "info_node_cover_stand" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "100" +"scale" "1" +"angles" "0 -135.93 0" +"origin" "-7294.09 -599.115 608.001" +"classname" "info_node_cover_stand" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "100" +"scale" "1" +"angles" "0 -91.508 0" +"origin" "-7590.79 -518.696 608" +"classname" "info_node_cover_stand" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 -44.973 0" +"origin" "-8232.15 -1676.94 612" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 -44.973 0" +"origin" "-8297.91 -2135.64 612" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 -44.973 0" +"origin" "-7915.97 -2454.28 612" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 -45.665 0" +"origin" "-7837.14 -2371.42 612" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 -57.871 0" +"origin" "-7613.43 -2143.64 612" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 -44.634 0" +"origin" "-8221.14 -1858.24 612" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 -44.634 0" +"origin" "-8328.48 -1787.78 612" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 -44.634 0" +"origin" "-8105.31 -1568.36 612" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 135.07 0" +"origin" "-7298.37 -1518.83 620" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 98.8941 0" +"origin" "-7408.47 -2129.94 620" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 75.1534 0" +"origin" "-8007.74 -1160.66 608" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 44.2621 0" +"origin" "-7462.92 -338.168 608" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 62.0431 0" +"origin" "-7068.96 -645.363 611.999" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 60.7599 0" +"origin" "-7127.36 -397.457 608.001" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 60.7599 0" +"origin" "-6927.11 -247.45 607.997" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 48.9231 0" +"origin" "-7026.65 -5.52116 608.269" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 44.1453 0" +"origin" "-6898.84 -14.349 608.002" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 15.7763 0" +"origin" "-7300.53 28.8221 615.989" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 15.7763 0" +"origin" "-7312.08 -81.1711 615.989" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 -142.622 0" +"origin" "-6235.65 488.89 608" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 -142.622 0" +"origin" "-6285.76 583.541 608" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 -93.005 0" +"origin" "-7723.87 -317.694 620" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 -110.578 0" +"origin" "-7905.4 -806.484 608" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 -110.545 0" +"origin" "-8213.91 -1169.36 615.987" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 -45.24 0" +"origin" "-7779.74 -1457.22 620.001" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 -118.793 0" +"origin" "-7262.46 -2112.76 620" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 134.921 0" +"origin" "-7069.4 -2059.8 619.999" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 134.921 0" +"origin" "-6965.36 -2039.65 619.999" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 134.921 0" +"origin" "-7067.73 -2181.29 620" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 134.438 0" +"origin" "-7030.15 -1103.6 548.001" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 136.86 0" +"origin" "-6958.79 -1023.52 548.001" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 -122.915 0" +"origin" "-6945.45 -1438.47 556.001" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 -122.915 0" +"origin" "-7076.89 -1356.67 547.999" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 -27.741 0" +"origin" "-6712.3 -1092.64 548.002" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 -134.322 0" +"origin" "-5838.37 -3486.14 623.998" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 -134.322 0" +"origin" "-5496.42 -3821.66 631.422" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "100" +"scale" "1" +"angles" "0 -140.821 0" +"origin" "-5635.04 -3386.63 639.998" +"classname" "info_node_cover_stand" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "100" +"scale" "1" +"angles" "0 44.8896 0" +"origin" "-6389.73 -4358.61 596.68" +"classname" "info_node_cover_stand" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 45.8775 0" +"origin" "-6190.79 -4504.95 596.59" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 39.1821 0" +"origin" "-6138.37 -4365.84 543.997" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 49.869 0" +"origin" "-6376.99 -4116.28 544.057" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 27.2854 0" +"origin" "-6635.28 -4149.75 596.612" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 65.6465 0" +"origin" "-5782.65 -4230.55 583.998" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 26.5723 0" +"origin" "-6314.25 -3798.62 575.997" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 127.22 0" +"origin" "-3975.97 -999.631 640.261" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 92.9475 0" +"origin" "-3872.5 -954.094 635.842" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 39.1837 0" +"origin" "-3746.29 -970.234 648.015" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 46.5053 0" +"origin" "-3724.16 -1060.16 683.97" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 161.034 0" +"origin" "-4931.75 -34.5351 612" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 167.601 0" +"origin" "-4781.9 31.9081 609.512" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 -88.88 0" +"origin" "-3746.59 -1326.22 758.167" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 -88.88 0" +"origin" "-3862.17 -1403.46 755.403" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 -88.88 0" +"origin" "-4003.82 -1376.79 756.963" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 -88.88 0" +"origin" "-3818.67 -1310.57 736.729" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 -88.88 0" +"origin" "-3934.48 -1329.37 736.936" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 37.525 0" +"origin" "-3261.78 -3825.89 676.991" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 42.1465 0" +"origin" "-3004.11 -3943.44 676.99" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 29.8149 0" +"origin" "-3785.85 -3979.67 676.99" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 146.092 0" +"origin" "-7418.79 -3618.09 613.878" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 172.826 0" +"origin" "-7497.34 -3881.1 613.738" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 164.11 0" +"origin" "-7547.81 -3444.96 613.877" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 157.092 0" +"origin" "-7382.1 -3382.33 613.951" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 171.98 0" +"origin" "-7485.88 -4015.78 613.548" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 157.092 0" +"origin" "-7068.7 -3627.8 630.557" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 135.409 0" +"origin" "-7242 -3626.56 613.868" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 172.826 0" +"origin" "-8034.04 -3907.92 612.36" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 -16.281 0" +"origin" "-8775.36 -3606.64 612.36" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 -21.388 0" +"origin" "-8728.06 -3723.08 612.36" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 -16.725 0" +"origin" "-8815.03 -3338.83 612.36" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 -16.725 0" +"origin" "-8472.9 -3035.34 612.361" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 -16.725 0" +"origin" "-8565.71 -3076.37 612.361" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 -14.902 0" +"origin" "-8536.68 -3642.07 612.36" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 150.096 0" +"origin" "-6212.22 -1136.77 547.999" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 150.096 0" +"origin" "-6376.93 -1153.07 548.001" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 150.096 0" +"origin" "-6414.51 -1276.82 548.001" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 150.096 0" +"origin" "-6223.32 -1303.52 547.999" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "100" +"scale" "1" +"angles" "0 169.832 0" +"origin" "-5966.13 -1125.8 547.999" +"classname" "info_node_cover_stand" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 -38.38 0" +"origin" "-5580.96 453.289 612" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 -11.798 0" +"origin" "-5505.55 126.512 608" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 -23.195 0" +"origin" "-5691.8 369.818 608" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 179.146 0" +"origin" "-5036.52 317.736 612" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 168.352 0" +"origin" "-5023.53 106.622 611.999" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 139.991 0" +"origin" "-4948.58 -138.127 612" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 175.641 0" +"origin" "-4429.96 -6.77726 602.128" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 -174.096 0" +"origin" "-4064.05 -2378.34 745.168" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 0 0" +"origin" "-5046.06 -2380.52 745.707" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 133.798 0" +"origin" "-2495.17 -3816.94 676" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 177.129 0" +"origin" "-2066.1 -3675.86 676" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 179.93 0" +"origin" "-2192.01 -2920.02 676" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "100" +"scale" "1" +"angles" "0 88.3595 0" +"origin" "-2666.73 -3245.09 676" +"classname" "info_node_cover_stand" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "100" +"scale" "1" +"angles" "0 -99.291 0" +"origin" "-2636.56 -2930.83 676" +"classname" "info_node_cover_stand" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 -99.69 0" +"origin" "-2271.33 -2856.08 676" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "100" +"scale" "1" +"angles" "0 -99.291 0" +"origin" "-2536.56 -2538.83 676" +"classname" "info_node_cover_stand" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "100" +"scale" "1" +"angles" "0 93.3102 0" +"origin" "-2538.32 -2696.92 676" +"classname" "info_node_cover_stand" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 121.451 0" +"origin" "-2235.09 -2639.19 675.999" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "98" +"scale" "1" +"angles" "0 -4.3496 0" +"origin" "-4401.73 -4281.28 677.088" +"classname" "info_node_cover_left" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "80" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "99" +"scale" "1" +"angles" "0 -19.849 0" +"origin" "-4269.17 -4009.47 676.992" +"classname" "info_node_cover_right" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "100" +"scale" "1" +"angles" "0 12.1031 0" +"origin" "-4586.41 -4582 677.095" +"classname" "info_node_cover_stand" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "100" +"scale" "1" +"angles" "0 12.1031 0" +"origin" "-4728.61 -4679.2 805" +"classname" "info_node_cover_stand" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "100" +"scale" "1" +"angles" "0 -17.189 0" +"origin" "-4572.98 -4366.2 676.992" +"classname" "info_node_cover_stand" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "100" +"scale" "1" +"angles" "0 45.1009 0" +"origin" "-3993.2 -4718.89 676.992" +"classname" "info_node_cover_stand" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "100" +"scale" "1" +"angles" "0 45.1009 0" +"origin" "-3937.2 -4774.89 676.992" +"classname" "info_node_cover_stand" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "100" +"scale" "1" +"angles" "0 -138.479 0" +"origin" "-3158.38 -3881.2 676.992" +"classname" "info_node_cover_stand" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "100" +"scale" "1" +"angles" "0 -138.479 0" +"origin" "-3102.38 -3937.2 676.992" +"classname" "info_node_cover_stand" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 46.1752 0" +"origin" "-3862.58 -4359.17 676.991" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 -133.625 0" +"origin" "-3489.45 -4008.82 676.991" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 135.596 0" +"origin" "-3206.01 -4144.01 676.991" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 135.596 0" +"origin" "-3781.91 -4714.67 676.994" +"classname" "info_node_cover_crouch" +} +{ +"TargetNode" "-1" +"spawnflags" "0" +"nodeFOV" "120" +"MinimumState" "1" +"MaximumState" "3" +"IgnoreFacing" "2" +"hinttype" "101" +"scale" "1" +"angles" "0 135.596 0" +"origin" "-3669.82 -4608.87 676.989" +"classname" "info_node_cover_crouch" +} +{ +"editorclass" "script_power_up_other" +"model" "models/communication/flag_base_red.mdl" +"scale" "1" +"angles" "0 90 2.53193e-006" +"origin" "-5243 -3233 712" +"powerUpType" "mp_loot_titan_build_credit_lts" +"classname" "script_ref" +} +{ +"editorclass" "script_power_up_other" +"model" "models/communication/flag_base_red.mdl" +"scale" "1" +"angles" "0 90 2.53193e-006" +"origin" "-4492.01 -1536.57 692.025" +"powerUpType" "mp_loot_titan_build_credit_lts" +"classname" "script_ref" +} +{ +"origin" "-7697.6 -3277.22 2118" +"triggerNearbyRadius" "0" +"triggerFilterTeamOther" "1" +"triggerFilterTeamNeutral" "1" +"triggerFilterTeamMilitia" "1" +"triggerFilterTeamIMC" "1" +"triggerFilterTeamBeast" "1" +"triggerFilterPlayer" "all" +"triggerFilterPhaseShift" "any" +"triggerFilterNpcOwnedByPlayer" "any" +"triggerFilterNpcFlip" "0" +"triggerFilterNpc" "all" +"triggerFilterNonCharacter" "0" +"StartDisabled" "0" +"spawnflags" "4099" +"nodmgforce" "1" +"mobility_3_hard" "1" +"mobility_2_normal" "1" +"mobility_1_easy" "1" +"damageSourceName" "fall" +"damagemodel" "0" +"damagecap" "20" +"damage" "10000" +"triggerFilterUseNew" "1" +"classname" "trigger_hurt" +"*trigger_brush_0_plane_0" "-1 0 0 455.62012" +"*trigger_brush_0_plane_1" "1 0 0 455.61328" +"*trigger_brush_0_plane_2" "0 -1 0 513.23438" +"*trigger_brush_0_plane_3" "0 1 0 513.2417" +"*trigger_brush_0_plane_4" "0 -0 -1 182" +"*trigger_brush_0_plane_5" "-0 -0 1 182" +"*trigger_brush_0_plane_6" "-0.98972714 0.14296904 0 393.67426" +"*trigger_brush_0_plane_7" "0.14312822 0.98970413 0 461.63812" +"*trigger_brush_0_plane_8" "0.98972714 -0.14296904 0 393.66644" +"*trigger_brush_0_plane_9" "-0.14312822 -0.98970413 -0 461.63187" +"*trigger_brush_0_plane_10" "-0.98972714 0.14296903 0 393.67426" +"*trigger_brush_0_plane_11" "0.14312823 0.98970425 -0 461.63818" +"*trigger_brush_0_plane_12" "0.98972714 -0.14296903 0 393.66644" +"*trigger_brush_0_plane_13" "-0.14312823 -0.98970425 -0 461.6319" +"*trigger_brush_0_plane_14" "-0.59868395 0.80098528 0 604.84576" +"*trigger_brush_0_plane_15" "-0.80098528 -0.59868395 0 604.74408" +"*trigger_brush_0_plane_16" "0.80098528 0.59868395 0 604.74304" +"*trigger_brush_0_plane_17" "0.59868395 -0.80098528 0 604.83582" +"*trigger_bounds_mins" "-455.62012 -513.23438 -182" +"*trigger_bounds_maxs" "455.61328 513.2417 182" +} +{ +"origin" "-10901 -6447.86 1272" +"triggerNearbyRadius" "0" +"triggerFilterTeamOther" "1" +"triggerFilterTeamNeutral" "1" +"triggerFilterTeamMilitia" "1" +"triggerFilterTeamIMC" "1" +"triggerFilterTeamBeast" "1" +"triggerFilterPlayer" "all" +"triggerFilterPhaseShift" "any" +"triggerFilterNpcOwnedByPlayer" "any" +"triggerFilterNpcFlip" "0" +"triggerFilterNpc" "all" +"triggerFilterNonCharacter" "0" +"StartDisabled" "0" +"spawnflags" "4099" +"nodmgforce" "1" +"mobility_3_hard" "1" +"mobility_2_normal" "1" +"mobility_1_easy" "1" +"damageSourceName" "fall" +"damagemodel" "0" +"damagecap" "20" +"damage" "10000" +"triggerFilterUseNew" "1" +"classname" "trigger_hurt" +"*trigger_brush_0_plane_0" "-1 0 0 3209.627" +"*trigger_brush_0_plane_1" "1 0 0 3209.6821" +"*trigger_brush_0_plane_2" "0 -1 0 1600.1504" +"*trigger_brush_0_plane_3" "0 1 0 1600.1563" +"*trigger_brush_0_plane_4" "0 0 -1 2132" +"*trigger_brush_0_plane_5" "-0 0 1 2132" +"*trigger_brush_0_plane_6" "-0.93357444 0.35838348 0 3260.9895" +"*trigger_brush_0_plane_7" "0.35853338 0.93351692 0 461.64783" +"*trigger_brush_0_plane_8" "0.93357444 -0.35838348 0 3261.0391" +"*trigger_brush_0_plane_9" "-0.35853338 -0.93351692 -0 461.62238" +"*trigger_brush_0_plane_10" "-0.93357456 0.35838351 0 3260.99" +"*trigger_brush_0_plane_11" "0.93357456 -0.35838351 0 3261.0396" +"*trigger_brush_0_plane_12" "-0.40664804 0.91358483 0 2632.5132" +"*trigger_brush_0_plane_13" "-0.91358477 -0.40664807 0 2632.0728" +"*trigger_brush_0_plane_14" "0.91358477 0.40664807 0 2632.1255" +"*trigger_brush_0_plane_15" "0.40664804 -0.91358483 0 2632.5305" +"*trigger_bounds_mins" "-3209.627 -1600.1503 -2132" +"*trigger_bounds_maxs" "3209.6821 1600.1563 2132" +} +{ +"origin" "-12224.3 -2684.64 1302" +"triggerNearbyRadius" "0" +"triggerFilterTeamOther" "1" +"triggerFilterTeamNeutral" "1" +"triggerFilterTeamMilitia" "1" +"triggerFilterTeamIMC" "1" +"triggerFilterTeamBeast" "1" +"triggerFilterPlayer" "all" +"triggerFilterPhaseShift" "any" +"triggerFilterNpcOwnedByPlayer" "any" +"triggerFilterNpcFlip" "0" +"triggerFilterNpc" "all" +"triggerFilterNonCharacter" "0" +"StartDisabled" "0" +"spawnflags" "4099" +"nodmgforce" "1" +"mobility_3_hard" "1" +"mobility_2_normal" "1" +"mobility_1_easy" "1" +"damageSourceName" "fall" +"damagemodel" "0" +"damagecap" "20" +"damage" "10000" +"triggerFilterUseNew" "1" +"classname" "trigger_hurt" +"*trigger_brush_0_plane_0" "-1 0 0 1919.71" +"*trigger_brush_0_plane_1" "1 0 0 1919.6924" +"*trigger_brush_0_plane_2" "0 -1 0 2792.1941" +"*trigger_brush_0_plane_3" "0 1 0 2792.1877" +"*trigger_brush_0_plane_4" "0 0 -1 2162" +"*trigger_brush_0_plane_5" "0 -0 1 2162" +"*trigger_brush_0_plane_6" "0.35838318 0.93357456 0 2582.3491" +"*trigger_brush_0_plane_7" "0.93351686 -0.35853344 0 1064.5466" +"*trigger_brush_0_plane_8" "-0.3583833 -0.93357456 -0 2582.3618" +"*trigger_brush_0_plane_9" "-0.93351692 0.35853329 0 1064.5614" +"*trigger_brush_0_plane_10" "0.93351698 -0.35853344 0 1064.5468" +"*trigger_brush_0_plane_11" "-0.35838333 -0.93357462 -0 2582.3618" +"*trigger_brush_0_plane_12" "-0.93351704 0.35853329 0 1064.5614" +"*trigger_brush_0_plane_13" "0.91358483 0.40664819 0 2578.9524" +"*trigger_brush_0_plane_14" "-0.40664828 0.91358477 0 2578.5479" +"*trigger_brush_0_plane_15" "0.4066481 -0.91358483 0 2578.5464" +"*trigger_brush_0_plane_16" "-0.91358471 -0.40664825 0 2578.9709" +"*trigger_bounds_mins" "-1919.7101 -2792.1941 -2162" +"*trigger_bounds_maxs" "1919.6924 2792.1877 2162" +} +{ +"origin" "-9678.93 1486.6 1272" +"triggerNearbyRadius" "0" +"triggerFilterTeamOther" "1" +"triggerFilterTeamNeutral" "1" +"triggerFilterTeamMilitia" "1" +"triggerFilterTeamIMC" "1" +"triggerFilterTeamBeast" "1" +"triggerFilterPlayer" "all" +"triggerFilterPhaseShift" "any" +"triggerFilterNpcOwnedByPlayer" "any" +"triggerFilterNpcFlip" "0" +"triggerFilterNpc" "all" +"triggerFilterNonCharacter" "0" +"StartDisabled" "0" +"spawnflags" "4099" +"nodmgforce" "1" +"mobility_3_hard" "1" +"mobility_2_normal" "1" +"mobility_1_easy" "1" +"damageSourceName" "fall" +"damagemodel" "0" +"damagecap" "20" +"damage" "10000" +"triggerFilterUseNew" "1" +"classname" "trigger_hurt" +"*trigger_brush_0_plane_0" "-1 0 0 1984.2383" +"*trigger_brush_0_plane_1" "1 0 0 1984.2451" +"*trigger_brush_0_plane_2" "0 -1 0 2092.8115" +"*trigger_brush_0_plane_3" "0 1 0 2092.8159" +"*trigger_brush_0_plane_4" "0 0 -1 2132" +"*trigger_brush_0_plane_5" "-0 0 1 2132" +"*trigger_brush_0_plane_6" "0.66694921 0.74510318 0 2141.3713" +"*trigger_brush_0_plane_7" "0.74499589 -0.66706908 0 745.94049" +"*trigger_brush_0_plane_8" "-0.66694921 -0.74510318 -0 2141.3635" +"*trigger_brush_0_plane_9" "-0.74499589 0.66706902 0 745.93823" +"*trigger_brush_0_plane_10" "-0.66694921 -0.74510324 -0 2141.3635" +"*trigger_brush_0_plane_11" "-0.74499595 0.66706908 0 745.93829" +"*trigger_bounds_mins" "-1984.2383 -2092.8115 -2132" +"*trigger_bounds_maxs" "1984.2452 2092.8157 2132" +} +{ +"origin" "-6096.88 -6585.13 3646" +"triggerNearbyRadius" "0" +"triggerFilterTeamOther" "1" +"triggerFilterTeamNeutral" "1" +"triggerFilterTeamMilitia" "1" +"triggerFilterTeamIMC" "1" +"triggerFilterTeamBeast" "1" +"triggerFilterPlayer" "all" +"triggerFilterPhaseShift" "any" +"triggerFilterNpcOwnedByPlayer" "any" +"triggerFilterNpcFlip" "0" +"triggerFilterNpc" "all" +"triggerFilterNonCharacter" "0" +"StartDisabled" "0" +"spawnflags" "4099" +"nodmgforce" "1" +"mobility_3_hard" "1" +"mobility_2_normal" "1" +"mobility_1_easy" "1" +"damageSourceName" "fall" +"damagemodel" "0" +"damagecap" "20" +"damage" "10000" +"triggerFilterUseNew" "1" +"classname" "trigger_hurt" +"*trigger_brush_0_plane_0" "-1 0 0 186.99512" +"*trigger_brush_0_plane_1" "1 0 0 187.00488" +"*trigger_brush_0_plane_2" "0 -1 0 195.37012" +"*trigger_brush_0_plane_3" "0 1 0 195.37988" +"*trigger_brush_0_plane_4" "0 0 -1 1534" +"*trigger_brush_0_plane_5" "-0 0 1 1534" +"*trigger_brush_0_plane_6" "-0.93360478 0.35830453 0 140.7215" +"*trigger_brush_0_plane_7" "0.35880053 0.93341428 0 155.19298" +"*trigger_brush_0_plane_8" "0.93355304 -0.35843927 0 140.74951" +"*trigger_brush_0_plane_9" "-0.35841355 -0.93356293 -0 155.23872" +"*trigger_brush_0_plane_10" "-0.93360478 0.35830456 0 140.7215" +"*trigger_brush_0_plane_11" "0.9335531 -0.35843927 0 140.74953" +"*trigger_brush_0_plane_12" "-0.35841355 -0.93356299 -0 155.23874" +"*trigger_brush_0_plane_13" "-0.40655595 0.91362584 0 209.29874" +"*trigger_brush_0_plane_14" "-0.91354162 -0.40674537 0 209.26328" +"*trigger_brush_0_plane_15" "0.91365522 0.40649006 0 209.22247" +"*trigger_brush_0_plane_16" "0.40667942 -0.91357088 0 209.2924" +"*trigger_bounds_mins" "-186.99512 -195.37012 -1534" +"*trigger_bounds_maxs" "187.00488 195.37988 1534" +} +{ +"origin" "-5132.81 -6293.13 3646" +"triggerNearbyRadius" "0" +"triggerFilterTeamOther" "1" +"triggerFilterTeamNeutral" "1" +"triggerFilterTeamMilitia" "1" +"triggerFilterTeamIMC" "1" +"triggerFilterTeamBeast" "1" +"triggerFilterPlayer" "all" +"triggerFilterPhaseShift" "any" +"triggerFilterNpcOwnedByPlayer" "any" +"triggerFilterNpcFlip" "0" +"triggerFilterNpc" "all" +"triggerFilterNonCharacter" "0" +"StartDisabled" "0" +"spawnflags" "4099" +"nodmgforce" "1" +"mobility_3_hard" "1" +"mobility_2_normal" "1" +"mobility_1_easy" "1" +"damageSourceName" "fall" +"damagemodel" "0" +"damagecap" "20" +"damage" "10000" +"triggerFilterUseNew" "1" +"classname" "trigger_hurt" +"*trigger_brush_0_plane_0" "-1 0 0 96.314941" +"*trigger_brush_0_plane_1" "1 0 0 96.310059" +"*trigger_brush_0_plane_2" "0 -1 0 95.370117" +"*trigger_brush_0_plane_3" "0 1 0 95.379883" +"*trigger_brush_0_plane_4" "0 0 -1 1534" +"*trigger_brush_0_plane_5" "-0 0 1 1534" +"*trigger_brush_0_plane_6" "-0.93378407 0.35783696 0 75.044144" +"*trigger_brush_0_plane_7" "0.3588675 0.93338853 0 73.302734" +"*trigger_brush_0_plane_8" "0.93338954 -0.35886484 0 75.00016" +"*trigger_brush_0_plane_9" "-0.35842046 -0.93356025 -0 73.376137" +"*trigger_brush_0_plane_10" "0.3588675 0.93338859 -0 73.302734" +"*trigger_brush_0_plane_11" "0.9333896 -0.35886484 0 75.000168" +"*trigger_brush_0_plane_12" "-0.35842046 -0.93356031 -0 73.376129" +"*trigger_brush_0_plane_13" "-0.40675199 0.91353858 0 104.95502" +"*trigger_brush_0_plane_14" "-0.91344124 -0.40697074 0 104.91621" +"*trigger_brush_0_plane_15" "0.91376239 0.40624902 0 104.86583" +"*trigger_brush_0_plane_16" "0.40646777 -0.91366512 0 104.89292" +"*trigger_bounds_mins" "-96.314941 -95.370117 -1534" +"*trigger_bounds_maxs" "96.310059 95.379883 1534" +} +{ +"origin" "-5816.81 -7577.13 3646" +"triggerNearbyRadius" "0" +"triggerFilterTeamOther" "1" +"triggerFilterTeamNeutral" "1" +"triggerFilterTeamMilitia" "1" +"triggerFilterTeamIMC" "1" +"triggerFilterTeamBeast" "1" +"triggerFilterPlayer" "all" +"triggerFilterPhaseShift" "any" +"triggerFilterNpcOwnedByPlayer" "any" +"triggerFilterNpcFlip" "0" +"triggerFilterNpc" "all" +"triggerFilterNonCharacter" "0" +"StartDisabled" "0" +"spawnflags" "4099" +"nodmgforce" "1" +"mobility_3_hard" "1" +"mobility_2_normal" "1" +"mobility_1_easy" "1" +"damageSourceName" "fall" +"damagemodel" "0" +"damagecap" "20" +"damage" "10000" +"triggerFilterUseNew" "1" +"classname" "trigger_hurt" +"*trigger_brush_0_plane_0" "-1 0 0 96.314941" +"*trigger_brush_0_plane_1" "1 0 0 96.310059" +"*trigger_brush_0_plane_2" "0 -1 0 95.370117" +"*trigger_brush_0_plane_3" "0 1 0 95.379883" +"*trigger_brush_0_plane_4" "0 0 -1 1534" +"*trigger_brush_0_plane_5" "-0 0 1 1534" +"*trigger_brush_0_plane_6" "-0.93378407 0.35783696 0 75.044144" +"*trigger_brush_0_plane_7" "0.3588675 0.93338853 0 73.302734" +"*trigger_brush_0_plane_8" "0.93338954 -0.35886484 0 75.00016" +"*trigger_brush_0_plane_9" "-0.35842046 -0.93356025 -0 73.376137" +"*trigger_brush_0_plane_10" "0.3588675 0.93338859 -0 73.302734" +"*trigger_brush_0_plane_11" "0.9333896 -0.35886484 0 75.000168" +"*trigger_brush_0_plane_12" "-0.35842046 -0.93356031 -0 73.376129" +"*trigger_brush_0_plane_13" "-0.40675199 0.91353858 0 104.95502" +"*trigger_brush_0_plane_14" "-0.91344124 -0.40697074 0 104.91621" +"*trigger_brush_0_plane_15" "0.91376239 0.40624902 0 104.86583" +"*trigger_brush_0_plane_16" "0.40646777 -0.91366512 0 104.89292" +"*trigger_bounds_mins" "-96.314941 -95.370117 -1534" +"*trigger_bounds_maxs" "96.310059 95.379883 1534" +} +{ +"origin" "-7132.81 -7741.13 3646" +"triggerNearbyRadius" "0" +"triggerFilterTeamOther" "1" +"triggerFilterTeamNeutral" "1" +"triggerFilterTeamMilitia" "1" +"triggerFilterTeamIMC" "1" +"triggerFilterTeamBeast" "1" +"triggerFilterPlayer" "all" +"triggerFilterPhaseShift" "any" +"triggerFilterNpcOwnedByPlayer" "any" +"triggerFilterNpcFlip" "0" +"triggerFilterNpc" "all" +"triggerFilterNonCharacter" "0" +"StartDisabled" "0" +"spawnflags" "4099" +"nodmgforce" "1" +"mobility_3_hard" "1" +"mobility_2_normal" "1" +"mobility_1_easy" "1" +"damageSourceName" "fall" +"damagemodel" "0" +"damagecap" "20" +"damage" "10000" +"triggerFilterUseNew" "1" +"classname" "trigger_hurt" +"*trigger_brush_0_plane_0" "-1 0 0 96.314941" +"*trigger_brush_0_plane_1" "1 0 0 96.310059" +"*trigger_brush_0_plane_2" "0 -1 0 95.370117" +"*trigger_brush_0_plane_3" "0 1 0 95.379883" +"*trigger_brush_0_plane_4" "0 0 -1 1534" +"*trigger_brush_0_plane_5" "-0 0 1 1534" +"*trigger_brush_0_plane_6" "-0.93378407 0.35783696 0 75.044144" +"*trigger_brush_0_plane_7" "0.3588675 0.93338853 0 73.302734" +"*trigger_brush_0_plane_8" "0.93338954 -0.35886484 0 75.00016" +"*trigger_brush_0_plane_9" "-0.35842046 -0.93356025 -0 73.376137" +"*trigger_brush_0_plane_10" "0.3588675 0.93338859 -0 73.302734" +"*trigger_brush_0_plane_11" "0.9333896 -0.35886484 0 75.000168" +"*trigger_brush_0_plane_12" "-0.35842046 -0.93356031 -0 73.376129" +"*trigger_brush_0_plane_13" "-0.40675199 0.91353858 0 104.95502" +"*trigger_brush_0_plane_14" "-0.91344124 -0.40697074 0 104.91621" +"*trigger_brush_0_plane_15" "0.91376239 0.40624902 0 104.86583" +"*trigger_brush_0_plane_16" "0.40646777 -0.91366512 0 104.89292" +"*trigger_bounds_mins" "-96.314941 -95.370117 -1534" +"*trigger_bounds_maxs" "96.310059 95.379883 1534" +} + diff --git a/Northstar.CustomServers/mod/scripts/vscripts/_harvester.gnut b/Northstar.CustomServers/mod/scripts/vscripts/_harvester.gnut index da4e50f5..191c3b24 100644 --- a/Northstar.CustomServers/mod/scripts/vscripts/_harvester.gnut +++ b/Northstar.CustomServers/mod/scripts/vscripts/_harvester.gnut @@ -27,7 +27,9 @@ HarvesterStruct function SpawnHarvester( vector origin, vector angles, int healt harvester.SetShieldHealthMax( shieldHealth ) harvester.SetShieldHealth( shieldHealth ) harvester.EnableAttackableByAI( 30, 0, AI_AP_FLAG_NONE ) - SetObjectCanBeMeleed( harvester, false ) + SetCustomSmartAmmoTarget( harvester, true ) + SetObjectCanBeMeleed( harvester, true ) + SetVisibleEntitiesInConeQueriableEnabled( harvester, true ) SetTeam(harvester,team) // create dangerous area to all AI because we dont want any AI clipping into the harvester ever // radius of 90 cos thats like 7.5 metres? AI shouldnt rally need to get closer than that (except nuke titans and stalkers) diff --git a/Northstar.CustomServers/mod/scripts/vscripts/_items.nut b/Northstar.CustomServers/mod/scripts/vscripts/_items.nut index 539b72bc..a5c3e270 100644 --- a/Northstar.CustomServers/mod/scripts/vscripts/_items.nut +++ b/Northstar.CustomServers/mod/scripts/vscripts/_items.nut @@ -5698,7 +5698,13 @@ bool function IsUnlockValid( string ref, string parentRef = "" ) bool function IsSubItemLocked( entity player, string ref, string parentRef ) { - if ( DevEverythingUnlocked() ) + if ( DevEverythingUnlocked( player ) ) + return false + + if ( IsItemPurchasableEntitlement( ref, parentRef ) ) + return false + + if ( GetItemType( ref ) == eItemTypes.PRIME_TITAN || GetSubitemType( parentRef, ref ) == eItemTypes.PRIME_TITAN ) return false if ( IsItemInEntitlementUnlock( ref, parentRef ) ) @@ -5817,7 +5823,13 @@ bool function IsSubItemLocked( entity player, string ref, string parentRef ) bool function IsItemLocked( entity player, string ref ) { - if ( DevEverythingUnlocked() ) + if ( DevEverythingUnlocked( player ) ) + return false + + if ( IsItemPurchasableEntitlement( ref ) ) + return false + + if ( GetItemType( ref ) == eItemTypes.PRIME_TITAN ) return false if ( IsItemInEntitlementUnlock( ref ) ) @@ -5906,7 +5918,7 @@ bool function IsItemLockedForEntitlement( entity player, string ref, string pare bool function IsSubItemOwned( entity player, string ref, string parentRef ) { - if ( DevEverythingUnlocked() ) + if ( DevEverythingUnlocked( player ) ) return false Assert( IsValid( player ) ) @@ -5990,7 +6002,7 @@ bool function IsSubItemOwned( entity player, string ref, string parentRef ) bool function IsItemOwned( entity player, string ref ) { - if ( DevEverythingUnlocked() ) + if ( DevEverythingUnlocked( player ) ) return false Assert( IsValid( player ) ) diff --git a/Northstar.CustomServers/mod/scripts/vscripts/_menu_callbacks.gnut b/Northstar.CustomServers/mod/scripts/vscripts/_menu_callbacks.gnut index 1092bf2d..6499faa2 100644 --- a/Northstar.CustomServers/mod/scripts/vscripts/_menu_callbacks.gnut +++ b/Northstar.CustomServers/mod/scripts/vscripts/_menu_callbacks.gnut @@ -65,6 +65,8 @@ bool function ClientCommandCallback_GenUp( entity player, array<string> args ) player.GenChanged() player.XPChanged() } + + RegenPersistentLoadouts(player) return true }
\ No newline at end of file diff --git a/Northstar.CustomServers/mod/scripts/vscripts/_utility_shared.nut b/Northstar.CustomServers/mod/scripts/vscripts/_utility_shared.nut index c5887f2b..47dd9294 100644 --- a/Northstar.CustomServers/mod/scripts/vscripts/_utility_shared.nut +++ b/Northstar.CustomServers/mod/scripts/vscripts/_utility_shared.nut @@ -1601,6 +1601,9 @@ float function GetPulseFrac( rate = 1, startTime = 0 ) bool function IsPetTitan( titan ) { Assert( titan.IsTitan() ) + + if ( !titan.GetTitanSoul() ) + return false return titan.GetTitanSoul().GetBossPlayer() != null } diff --git a/Northstar.CustomServers/mod/scripts/vscripts/_xp.gnut b/Northstar.CustomServers/mod/scripts/vscripts/_xp.gnut index 6f044b7a..2b95d1a8 100644 --- a/Northstar.CustomServers/mod/scripts/vscripts/_xp.gnut +++ b/Northstar.CustomServers/mod/scripts/vscripts/_xp.gnut @@ -1,6 +1,7 @@ global function SvXP_Init global function PlayerProgressionAllowed global function HandleXPGainForScoreEvent +global function AddXP void function SvXP_Init() { @@ -29,46 +30,38 @@ bool function PlayerProgressionAllowed( entity player ) void function HandleXPGainForScoreEvent( entity player, ScoreEvent event ) { // note: obviously all xp stuff can be cheated in if people want to on customs, this is mainly just here for fun for those who want it and feature completeness - // most score events don't have this, so we'll set this to the xp value of other categories later if needed + int xpValue = ScoreEvent_GetXPValue( event ) int weaponXp = ScoreEvent_GetXPValueWeapon( event ) int titanXp = ScoreEvent_GetXPValueTitan( event ) - - if ( xpValue < weaponXp ) - xpValue = weaponXp - else if ( xpValue < titanXp ) - xpValue = titanXp + int factionXp = ScoreEvent_GetXPValueFaction( event ) entity weapon = player.GetActiveWeapon() - if ( IsValid( weapon ) && ShouldTrackXPForWeapon( weapon.GetWeaponClassName() ) ) - AddWeaponXP( player, xpValue ) + if ( IsValid( weapon ) && ShouldTrackXPForWeapon( weapon.GetWeaponClassName() ) && weaponXp != 0 ) + AddWeaponXP( player, weaponXp ) // if we specifically gain titan xp, then give titan xp no matter what, otherwise only give it when we're in a titan - if ( titanXp != 0 || player.IsTitan() ) - AddTitanXP( player, xpValue ) - - // most events don't have faction xp but almost everything should give it - int factionXp = ScoreEvent_GetXPValueFaction( event ) - if ( xpValue > factionXp ) - factionXp = xpValue - else if ( xpValue < factionXp ) - xpValue = factionXp + if ( titanXp != 0 ) + AddTitanXP( player, titanXp ) if ( factionXp != 0 ) AddFactionXP( player, factionXp ) - if ( xpValue == 0 ) - return - // global xp + if ( xpValue != 0 ) + AddXP( player, xpValue ) +} + +void function AddXP( entity player, int amount ) +{ int oldXp = player.GetPersistentVarAsInt( "xp" ) - if(oldXp<0) oldXp = 0 + if( oldXp < 0 ) oldXp = 0 int oldLevel = GetLevelForXP( oldXp ) - player.SetPersistentVar( "xp", min( oldXp + xpValue, PlayerGetMaxXPPerGen() ) ) + player.SetPersistentVar( "xp", min( oldXp + amount, PlayerGetMaxXPPerGen() ) ) player.XPChanged() // network xp change to client, gen can't change here int newXp = player.GetPersistentVarAsInt( "xp" ) int newLevel = GetLevelForXP( newXp ) if ( newLevel != oldLevel ) Remote_CallFunction_NonReplay( player, "ServerCallback_PlayerLeveledUp", player.GetPersistentVarAsInt( "gen" ), newLevel ) -}
\ No newline at end of file +} diff --git a/Northstar.CustomServers/mod/scripts/vscripts/ai/_ai_soldiers.gnut b/Northstar.CustomServers/mod/scripts/vscripts/ai/_ai_soldiers.gnut index 9717c76d..89fb7a82 100644 --- a/Northstar.CustomServers/mod/scripts/vscripts/ai/_ai_soldiers.gnut +++ b/Northstar.CustomServers/mod/scripts/vscripts/ai/_ai_soldiers.gnut @@ -60,6 +60,19 @@ function AiSoldiers_Init() level.COOP_AT_WEAPON_RATES[ "mp_weapon_smr" ] <- 0.4 level.COOP_AT_WEAPON_RATES[ "mp_weapon_mgl" ] <- 0.1 + // add stub death callback, because in _codecallbacks_common.gnut there is + // CodeCallback_OnEntityKilled which is only called when an entity is being tracked. An + // entity is set to be tracked if it has a death callback for it's class, unfortunately this + // is then relayed to clients and used for client side death callbacks. The end result of + // not having this function called is that clients become completely unaware of any grunt + // deaths. A noticeable difference here is that grunts do not play the kill confirmed audio + // except on War Games, which does register a callback for grunt deaths to make them dissolve. + // + // Whilst this may seem like a bit of a hacky solution, it is generally better than simply + // tracking all entities. If a different callback is created in the future for grunt deaths + // that is not specific to a gamemode, map, etc. then this could be removed + AddDeathCallback( "npc_soldier", void function( entity guy, var damageInfo ){} ) + PrecacheSprite( $"sprites/glow_05.vmt" ) FlagInit( "disable_npcs" ) FlagInit( "Disable_IMC" ) diff --git a/Northstar.CustomServers/mod/scripts/vscripts/burnmeter/_burnmeter.gnut b/Northstar.CustomServers/mod/scripts/vscripts/burnmeter/_burnmeter.gnut index f193643c..eb4e111c 100644 --- a/Northstar.CustomServers/mod/scripts/vscripts/burnmeter/_burnmeter.gnut +++ b/Northstar.CustomServers/mod/scripts/vscripts/burnmeter/_burnmeter.gnut @@ -266,6 +266,8 @@ void function UseBurnCardWeapon( entity weapon, entity player ) PlayerEarnMeter_SetRewardUsed( player )
thread PlayerInventory_PopInventoryItem( player )
+
+ UpdatePlayerStat( player, "misc_stats", "boostsActivated" )
}
void function UseBurnCardWeaponInCriticalSection( entity weapon, entity ownerPlayer )
diff --git a/Northstar.CustomServers/mod/scripts/vscripts/conversation/_grunt_chatter_mp.gnut b/Northstar.CustomServers/mod/scripts/vscripts/conversation/_grunt_chatter_mp.gnut index 1a70c289..4eb423fd 100644 --- a/Northstar.CustomServers/mod/scripts/vscripts/conversation/_grunt_chatter_mp.gnut +++ b/Northstar.CustomServers/mod/scripts/vscripts/conversation/_grunt_chatter_mp.gnut @@ -1,11 +1,33 @@ global function GruntChatter_MP_Init global function PlayGruntChatterMPLine +const float CHATTER_FRIENDLY_GRUNT_DOWN_DIST_MAX = 1100.0 +const float CHATTER_SQUAD_DEPLETED_FRIENDLY_NEARBY_DIST = 650.0 // if any other friendly grunt is within this dist, squad deplete chatter won't play +const float CHATTER_ENEMY_TITAN_DOWN_DIST_MAX = 1500.0 +const float CHATTER_NEARBY_GRUNT_TRACEFRAC_MIN = 0.95 // for when we need "LOS" trace + void function GruntChatter_MP_Init() { - //ShGruntChatter_MP_Init() + Assert( IsMultiplayer(), "MP Grunt chatter is restricted to Multiplayer only." ) + + AddCallback_OnPlayerKilled( GruntChatter_OnPlayerOrNPCKilled ) + AddCallback_OnNPCKilled( GruntChatter_OnPlayerOrNPCKilled ) } + + + +/*===================================================================================================================================================== + _____ _ _____ _ _ _ __ __ _ _ _ _ + / ____| | | / ____|| | | | | | | \/ | | || | (_) | | + | | __ _ __ _ _ _ __ | |_ | | | |__ __ _ | |_ | |_ ___ _ __ | \ / | _ _ | || |_ _ _ __ | | __ _ _ _ ___ _ __ + | | |_ || '__|| | | || '_ \ | __| | | | '_ \ / _` || __|| __|/ _ \| '__| | |\/| || | | || || __|| || '_ \ | | / _` || | | | / _ \| '__| + | |__| || | | |_| || | | || |_ | |____ | | | || (_| || |_ | |_| __/| | | | | || |_| || || |_ | || |_) || || (_| || |_| || __/| | + \_____||_| \__,_||_| |_| \__| \_____||_| |_| \__,_| \__| \__|\___||_| |_| |_| \__,_||_| \__||_|| .__/ |_| \__,_| \__, | \___||_| + | | __/ | + |_| |___/ +/*===================================================================================================================================================*/ + void function PlayGruntChatterMPLine( entity grunt, string conversationType ) { #if !GRUNT_CHATTER_MP_ENABLED @@ -15,4 +37,175 @@ void function PlayGruntChatterMPLine( entity grunt, string conversationType ) foreach ( entity player in GetPlayerArray() ) if ( ShouldPlayGruntChatterMPLine( conversationType, player, grunt ) ) Remote_CallFunction_Replay( player, "ServerCallback_PlayGruntChatterMP", GetConversationIndex( conversationType ), grunt.GetEncodedEHandle() ) +} + +void function GruntChatter_OnPlayerOrNPCKilled( entity deadGuy, entity attacker, var damageInfo ) +{ + if ( !IsValid( deadGuy ) || !IsValid( attacker ) ) + return + + if( IsGrunt( attacker ) && IsPilot( deadGuy ) ) + PlayGruntChatterMPLine( attacker, "bc_killenemypilot" ) + else + GruntChatter_TryEnemyTitanDown( deadGuy ) + + if ( IsGrunt( deadGuy ) ) + { + GruntChatter_TryFriendlyDown( deadGuy ) + GruntChatter_TrySquadDepleted( deadGuy ) + } +} + +void function GruntChatter_TryFriendlyDown( entity deadGuy ) +{ + entity closestGrunt = GruntChatter_FindClosestFriendlyHumanGrunt_LOS( deadGuy.GetOrigin(), deadGuy.GetTeam(), CHATTER_FRIENDLY_GRUNT_DOWN_DIST_MAX ) + if ( !closestGrunt ) + return + + if ( !GruntChatter_CanGruntChatterNow( closestGrunt ) ) + return + + PlayGruntChatterMPLine( closestGrunt, "bc_allygruntdown" ) +} + +void function GruntChatter_TrySquadDepleted( entity deadGuy ) +{ + string deadGuySquadName = expect string( deadGuy.kv.squadname ) + if ( deadGuySquadName == "" ) + return + + array<entity> squad = GetNPCArrayBySquad( deadGuySquadName ) + entity lastSquadMember + if ( squad.len() == 1 ) + lastSquadMember = squad[0] + + if ( !GruntChatter_CanGruntChatterNow( lastSquadMember ) ) + return + + if ( lastSquadMember.GetNPCState() == "idle" ) + return + + // if another grunt from another squad is nearby, don't chatter about being alone + array<entity> nearbyGrunts = GetNearbyFriendlyGrunts( lastSquadMember.GetOrigin(), lastSquadMember.GetTeam(), CHATTER_SQUAD_DEPLETED_FRIENDLY_NEARBY_DIST ) + nearbyGrunts.fastremovebyvalue( lastSquadMember ) + if ( nearbyGrunts.len() ) + return + + PlayGruntChatterMPLine( lastSquadMember, "bc_squaddeplete" ) +} + +void function GruntChatter_TryEnemyTitanDown( entity deadGuy ) +{ + if ( deadGuy.IsTitan() ) + { + entity closestGrunt = GruntChatter_FindClosestEnemyHumanGrunt_LOS( deadGuy.GetOrigin(), deadGuy.GetTeam(), CHATTER_ENEMY_TITAN_DOWN_DIST_MAX ) + if ( !closestGrunt ) + return + + PlayGruntChatterMPLine( closestGrunt, "bc_enemytitandown" ) + } +} + +entity function GruntChatter_FindClosestEnemyHumanGrunt_LOS( vector searchOrigin, int enemyTeam, float searchDist ) +{ + array<entity> humanGrunts = GetNearbyEnemyHumanGrunts( searchOrigin, enemyTeam, searchDist ) + return GruntChatter_GetClosestGrunt_LOS( humanGrunts, searchOrigin ) +} + +entity function GruntChatter_FindClosestFriendlyHumanGrunt_LOS( vector searchOrigin, int friendlyTeam, float searchDist ) +{ + array<entity> humanGrunts = GetNearbyFriendlyHumanGrunts( searchOrigin, friendlyTeam, searchDist ) + return GruntChatter_GetClosestGrunt_LOS( humanGrunts, searchOrigin ) +} + +entity function GruntChatter_GetClosestGrunt_LOS( array<entity> nearbyGrunts, vector searchOrigin ) +{ + entity closestGrunt = null + float closestDist = 10000 + + foreach ( grunt in nearbyGrunts ) + { + vector gruntOrigin = grunt.GetOrigin() + + // CanSee doesn't return true if the target is dead + if ( !GruntChatter_CanGruntTraceToLocation( grunt, searchOrigin ) ) + continue + + if ( !closestGrunt ) + { + closestGrunt = grunt + continue + } + + float distFromSearchOrigin = Distance( grunt.GetOrigin(), searchOrigin ) + + if ( closestDist > distFromSearchOrigin ) + continue + + closestGrunt = grunt + closestDist = distFromSearchOrigin + } + + return closestGrunt +} + +bool function GruntChatter_CanGruntTraceToLocation( entity grunt, vector traceEnd ) +{ + float traceFrac = TraceLineSimple( grunt.GetOrigin(), traceEnd, grunt ) + return traceFrac > CHATTER_NEARBY_GRUNT_TRACEFRAC_MIN +} + +array<entity> function GetNearbyFriendlyHumanGrunts( vector searchOrigin, int friendlyTeam, float ornull searchRange = null ) +{ + array<entity> nearbyGrunts = GetNearbyFriendlyGrunts( searchOrigin, friendlyTeam, searchRange ) + array<entity> humanGrunts = [] + foreach ( grunt in nearbyGrunts ) + { + if ( grunt.IsMechanical() ) + continue + + humanGrunts.append( grunt ) + } + + return humanGrunts +} + +array<entity> function GetNearbyEnemyHumanGrunts( vector searchOrigin, int enemyTeam, float ornull searchRange = null ) +{ + array<entity> nearbyGrunts = GetNearbyEnemyGrunts( searchOrigin, enemyTeam, searchRange ) + array<entity> humanGrunts = [] + foreach ( grunt in nearbyGrunts ) + { + if ( grunt.IsMechanical() ) + continue + + humanGrunts.append( grunt ) + } + + return humanGrunts +} + +bool function GruntChatter_CanGruntChatterNow( entity grunt ) +{ + if ( !IsAlive( grunt ) ) + return false + + if ( !GruntChatter_IsGruntTypeEligibleForChatter( grunt ) ) + return false + + if ( grunt.ContextAction_IsMeleeExecution() ) + return false + + string squadname = expect string( grunt.kv.squadname ) + // we only care about this because the grunt conversation system wants it + return squadname != "" +} + +bool function GruntChatter_IsGruntTypeEligibleForChatter( entity grunt ) +{ + if ( !IsGrunt( grunt ) ) + return false + + // mechanical grunts don't chatter + return !grunt.IsMechanical() }
\ No newline at end of file diff --git a/Northstar.CustomServers/mod/scripts/vscripts/evac/_evac.gnut b/Northstar.CustomServers/mod/scripts/vscripts/evac/_evac.gnut index f23c841d..af074689 100644 --- a/Northstar.CustomServers/mod/scripts/vscripts/evac/_evac.gnut +++ b/Northstar.CustomServers/mod/scripts/vscripts/evac/_evac.gnut @@ -422,6 +422,40 @@ void function Evac( int evacTeam, float initialWait, float arrivalTime, float wa foreach ( entity otherPlayer in GetPlayerArray() ) Remote_CallFunction_NonReplay( otherPlayer, "ServerCallback_EvacObit", player.GetEncodedEHandle() ) } + + // award player score to evacing team + int evacCount = 0 + array<entity> evacingPlayers = GetPlayerArrayOfTeam( dropship.GetTeam() ) // all players that are supposed to evac in the dropship + + // count how many players are in the dropship + foreach ( entity player in evacingPlayers ) + { + if ( !PlayerInDropship( player, dropship ) ) + continue + + evacCount++ + } + + bool allEvac = evacCount == evacingPlayers.len() + + foreach(entity player in evacingPlayers) + { + if ( !PlayerInDropship( player, dropship ) ) + continue + + AddPlayerScore( player, "HotZoneExtract" ) + UpdatePlayerStat( player, "misc_stats", "evacsSurvived" ) + + if ( allEvac ) + AddPlayerScore( player, "TeamBonusFullEvac" ) + } + + // sole survivor (but not the only one on the team) + if ( evacCount == 1 && !allEvac ) + { + // we can assume there is one player in the array because otherwise evacCount wouldn't be 1 + AddPlayerScore( evacingPlayers[0], "SoleSurvivor" ) + } } void function AddPlayerToEvacDropship( entity dropship, entity player ) @@ -442,6 +476,8 @@ void function AddPlayerToEvacDropship( entity dropship, entity player ) if ( !PlayerInDropship( player, dropship ) ) return + UpdatePlayerStat( player, "misc_stats", "evacsAttempted" ) + // need to cancel if the dropship dies dropship.EndSignal( "OnDeath", "OnDestroy" ) @@ -507,6 +543,15 @@ void function CheckIfAnyPlayerLeft( int evacTeam ) SetTeamActiveObjective( evacTeam, "EG_DropshipExtractEvacPlayersKilled" ) SetTeamActiveObjective( GetOtherTeam( evacTeam ), "EG_StopExtractEvacPlayersKilled" ) thread EvacEpilogueCompleted( null ) + + // score for killing the entire evacing team + foreach ( entity player in GetPlayerArray() ) + { + if ( player.GetTeam() == evacTeam ) + continue + + AddPlayerScore( player, "TeamBonusKilledAll") + } } ) while( true ) diff --git a/Northstar.CustomServers/mod/scripts/vscripts/faction_xp.gnut b/Northstar.CustomServers/mod/scripts/vscripts/faction_xp.gnut index 5fd7d101..6555c875 100644 --- a/Northstar.CustomServers/mod/scripts/vscripts/faction_xp.gnut +++ b/Northstar.CustomServers/mod/scripts/vscripts/faction_xp.gnut @@ -3,8 +3,11 @@ global function AddFactionXP void function AddFactionXP( entity player, int amount ) { string faction = GetFactionChoice( player ) + int oldLevel = FactionGetLevel( player, faction ) // increment xp player.SetPersistentVar( "factionXP[" + faction + "]", min( FactionGetXP( player, faction ) + amount, FactionGetMaxXP( faction ) ) ) // note: no notif for faction level up + if ( FactionGetLevel( player, faction ) != oldLevel ) + AddPlayerScore( player, "FactionLevelUp" ) }
\ No newline at end of file diff --git a/Northstar.CustomServers/mod/scripts/vscripts/gamemodes/_gamemode_at.nut b/Northstar.CustomServers/mod/scripts/vscripts/gamemodes/_gamemode_at.nut index c61cb585..93a3aa16 100644 --- a/Northstar.CustomServers/mod/scripts/vscripts/gamemodes/_gamemode_at.nut +++ b/Northstar.CustomServers/mod/scripts/vscripts/gamemodes/_gamemode_at.nut @@ -107,7 +107,6 @@ void function GamemodeAt_Init() // Set-up score callbacks ScoreEvent_SetupEarnMeterValuesForMixedModes() - AddDamageFinalCallback( "npc_titan", OnNPCTitanFinalDamaged ) AddCallback_OnPlayerKilled( AT_PlayerOrNPCKilledScoreEvent ) AddCallback_OnNPCKilled( AT_PlayerOrNPCKilledScoreEvent ) @@ -1658,9 +1657,10 @@ void function AT_HandleBossTitanSpawn( entity titan, AT_WaveOrigin campData, int titan.Minimap_AlwaysShow( TEAM_MILITIA, null ) thread BountyBossHighlightThink( titan ) - // set up titan-specific death callbacks, mark it as bounty boss for finalDamageCallbacks to work + // set up titan-specific death callbacks, mark it as bounty boss file.titanIsBountyBoss[ titan ] <- true file.bountyTitanRewards[ titan ] <- ATTRITION_SCORE_BOSS_DAMAGE + AddEntityCallback_OnPostDamaged( titan, OnBountyTitanPostDamage ) AddEntityCallback_OnKilled( titan, OnBountyTitanKilled ) titan.GetTitanSoul().soul.skipDoomState = true @@ -1684,13 +1684,7 @@ void function BountyBossHighlightThink( entity titan ) } } -void function OnNPCTitanFinalDamaged( entity titan, var damageInfo ) -{ - if ( titan in file.titanIsBountyBoss ) - OnBountyTitanDamaged( titan, damageInfo ) -} - -void function OnBountyTitanDamaged( entity titan, var damageInfo ) +void function OnBountyTitanPostDamage( entity titan, var damageInfo ) { entity attacker = DamageInfo_GetAttacker( damageInfo ) if ( !IsValid( attacker ) ) // delayed by projectile shots @@ -1703,14 +1697,6 @@ void function OnBountyTitanDamaged( entity titan, var damageInfo ) return } - // respawn FUCKED UP pilot weapon against titan's damage calculation, have to copy-paste this check from Titan_NPCTookDamage() - if ( HeavyArmorCriticalHitRequired( damageInfo ) && - CritWeaponInDamageInfo( damageInfo ) && - !IsCriticalHit( attacker, titan, DamageInfo_GetHitBox( damageInfo ), DamageInfo_GetDamage( damageInfo ), DamageInfo_GetDamageType( damageInfo ) ) && - IsValid( attacker ) && - !attacker.IsTitan() ) - return - int rewardSegment = ATTRITION_SCORE_BOSS_DAMAGE int healthSegment = titan.GetMaxHealth() / rewardSegment diff --git a/Northstar.CustomServers/mod/scripts/vscripts/item_inventory/sv_item_inventory.gnut b/Northstar.CustomServers/mod/scripts/vscripts/item_inventory/sv_item_inventory.gnut index 6f228f7c..60bad8d1 100644 --- a/Northstar.CustomServers/mod/scripts/vscripts/item_inventory/sv_item_inventory.gnut +++ b/Northstar.CustomServers/mod/scripts/vscripts/item_inventory/sv_item_inventory.gnut @@ -20,6 +20,7 @@ void function Sv_ItemInventory_Init() { AddCallback_OnClientConnected( Sv_ItemInventory_OnClientConnected ) AddCallback_OnPlayerGetsNewPilotLoadout( Sv_ItemInventory_OnPlayerGetsNewPilotLoadout ) + AddCallback_GameStateEnter( eGameState.Prematch, PrematchClearInventory ) } void function Sv_ItemInventory_OnClientConnected( entity player ) @@ -27,6 +28,14 @@ void function Sv_ItemInventory_OnClientConnected( entity player ) file.playerInventoryStacks[ player ] <- [] } +void function PrematchClearInventory() // vanilla behavior +{ + foreach( entity player in GetPlayerArray() ) + { + PlayerInventory_TakeAllInventoryItems( player ) + } +} + void function Sv_ItemInventory_OnPlayerGetsNewPilotLoadout( entity player, PilotLoadoutDef newPilotLoadout ) { array<InventoryItem> playerInventoryStack = file.playerInventoryStacks[ player ] diff --git a/Northstar.CustomServers/mod/scripts/vscripts/lobby/_lobby.gnut b/Northstar.CustomServers/mod/scripts/vscripts/lobby/_lobby.gnut index ae933b71..8b65ec93 100644 --- a/Northstar.CustomServers/mod/scripts/vscripts/lobby/_lobby.gnut +++ b/Northstar.CustomServers/mod/scripts/vscripts/lobby/_lobby.gnut @@ -14,6 +14,7 @@ void function Lobby_Init() { // non-private lobby clientcommands AddClientCommandCallback( "StartPrivateMatchSearch", ClientCommandCallback_StartPrivateMatchSearch ) + AddClientCommandCallback( "SetAnnouncementVersionSeen", ClientCommandCallback_SetAnnouncementVersionSeen ) } } @@ -37,3 +38,14 @@ bool function ClientCommandCallback_StartPrivateMatchSearch( entity player, arra return true } + +bool function ClientCommandCallback_SetAnnouncementVersionSeen( entity player, array<string> args ) +{ + if ( args.len() < 1 ) + return false + + int version = int( args[0] ) + + player.SetPersistentVar( "announcementVersionSeen", version ) + return true +} diff --git a/Northstar.CustomServers/mod/scripts/vscripts/lobby/sh_private_lobby_modes_init.gnut b/Northstar.CustomServers/mod/scripts/vscripts/lobby/sh_private_lobby_modes_init.gnut index ccccefaf..d2be2ab4 100644 --- a/Northstar.CustomServers/mod/scripts/vscripts/lobby/sh_private_lobby_modes_init.gnut +++ b/Northstar.CustomServers/mod/scripts/vscripts/lobby/sh_private_lobby_modes_init.gnut @@ -17,6 +17,7 @@ void function PrivateMatchModesInit() AddPrivateMatchModeSettingEnum( "#MODE_SETTING_CATEGORY_PILOT", "boosts_enabled", [ "#SETTING_DEFAULT", "#SETTING_DISABLED" ], "1" ) AddPrivateMatchModeSettingEnum( "#MODE_SETTING_CATEGORY_PILOT", "earn_meter_pilot_overdrive", [ "#SETTING_DISABLED", "#SETTING_ENABLED", "Only" ], "1" ) AddPrivateMatchModeSettingArbitrary( "#MODE_SETTING_CATEGORY_PILOT", "earn_meter_pilot_multiplier", "1.0" ) + AddPrivateMatchModeSettingArbitrary( "#MODE_SETTING_CATEGORY_PILOT", "player_force_respawn", "5" ) AddPrivateMatchModeSettingArbitrary( "#MODE_SETTING_CATEGORY_TITAN", "earn_meter_titan_multiplier", "1.0" ) AddPrivateMatchModeSettingEnum( "#MODE_SETTING_CATEGORY_TITAN", "aegis_upgrades", [ "#SETTING_DISABLED", "#SETTING_ENABLED" ], "0" ) diff --git a/Northstar.CustomServers/mod/scripts/vscripts/mp/_base_gametype_mp.gnut b/Northstar.CustomServers/mod/scripts/vscripts/mp/_base_gametype_mp.gnut index ec426754..bab7eaed 100644 --- a/Northstar.CustomServers/mod/scripts/vscripts/mp/_base_gametype_mp.gnut +++ b/Northstar.CustomServers/mod/scripts/vscripts/mp/_base_gametype_mp.gnut @@ -134,6 +134,15 @@ void function CodeCallback_OnClientConnectionCompleted( entity player ) Lobby_OnClientConnectionCompleted( player ) return } + else if ( !IsFDMode( GAMETYPE ) ) + { + // reset this for non-fd modes + // for some reason the postgame scoreboard uses this to + // determine if it should show the FD aegis rank one + // FD should either set this in their own mode, or add an else + // to this if statement when it releases + player.SetPersistentVar( "lastFDTitanRef", "" ) + } player.hasConnected = true @@ -274,6 +283,9 @@ void function PostDeathThread_MP( entity player, var damageInfo ) // based on ga ClearRespawnAvailable( player ) + // reset this so that we default to pilot spawn + player.SetPersistentVar( "spawnAsTitan", false ) + OnThreadEnd( function() : ( player ) { if ( !IsValid( player ) ) @@ -379,6 +391,13 @@ void function PostDeathThread_MP( entity player, var damageInfo ) // based on ga SetRespawnAvailable( player ) wait respawnDelay + + int forceRespawn = GetCurrentPlaylistVarInt( "player_force_respawn", -1 ) + + // -1 is disabled, anything over is the time we wait in seconds + // before respawning the player + if( forceRespawn >= 0 ) + thread ForceRespawnMeSignalAfterDelay( player, forceRespawn ) player.WaitSignal( "RespawnMe" ) // set in base_gametype: ClientCommand_RespawnPlayer @@ -398,6 +417,21 @@ void function PostDeathThread_MP( entity player, var damageInfo ) // based on ga } } +// idk if this is a good delay or if it matches vanilla +void function ForceRespawnMeSignalAfterDelay( entity player, int delay = 5 ) +{ + player.EndSignal( "RespawnMe" ) + player.EndSignal( "OnDestroy" ) + + if( player.IsWatchingKillReplay() ) + player.WaitSignal( "KillCamOver" ) + + wait delay + + printt( format( "Forcing player respawn for player %s (took >%d seconds to respawn)", player.GetPlayerName(), delay ) ) + player.Signal( "RespawnMe" ) +} + void function PlayerWatchesKillReplayWrapper( entity player, entity attacker, float timeSinceAttackerSpawned, float timeOfDeath, float beforeTime, table replayTracker ) { player.EndSignal( "RespawnMe" ) diff --git a/Northstar.CustomServers/mod/scripts/vscripts/mp/_changemap.nut b/Northstar.CustomServers/mod/scripts/vscripts/mp/_changemap.nut index 16a3ce92..0ababfc7 100644 --- a/Northstar.CustomServers/mod/scripts/vscripts/mp/_changemap.nut +++ b/Northstar.CustomServers/mod/scripts/vscripts/mp/_changemap.nut @@ -58,7 +58,9 @@ void function CodeCallback_MatchIsOver() #if MP void function PopulatePostgameData() { - // something's busted here because this isn't showing automatically on match end, ag + // show the postgame scoreboard summary + SetUIVar( level, "showGameSummary", true ) + foreach ( entity player in GetPlayerArray() ) { int teams = GetCurrentPlaylistVarInt( "max_teams", 2 ) diff --git a/Northstar.CustomServers/mod/scripts/vscripts/mp/_classic_mp_dropship_intro.gnut b/Northstar.CustomServers/mod/scripts/vscripts/mp/_classic_mp_dropship_intro.gnut index 0555df9b..23ae37a1 100644 --- a/Northstar.CustomServers/mod/scripts/vscripts/mp/_classic_mp_dropship_intro.gnut +++ b/Northstar.CustomServers/mod/scripts/vscripts/mp/_classic_mp_dropship_intro.gnut @@ -188,7 +188,8 @@ void function SpawnPlayerIntoDropship( entity player ) } // respawn player and holster their weapons so they aren't out - player.RespawnPlayer( null ) + if ( !IsAlive( player ) ) + player.RespawnPlayer( null ) HolsterAndDisableWeapons(player) player.DisableWeaponViewModel() @@ -255,4 +256,4 @@ void function PlayerJumpsFromDropship( entity player ) WaitFrame() TryGameModeAnnouncement( player ) -}
\ No newline at end of file +} diff --git a/Northstar.CustomServers/mod/scripts/vscripts/mp/_gamestate_mp.nut b/Northstar.CustomServers/mod/scripts/vscripts/mp/_gamestate_mp.nut index 46b39ebc..3426cec5 100644 --- a/Northstar.CustomServers/mod/scripts/vscripts/mp/_gamestate_mp.nut +++ b/Northstar.CustomServers/mod/scripts/vscripts/mp/_gamestate_mp.nut @@ -800,6 +800,8 @@ void function SetWinner( int team, string winningReason = "", string losingReaso } else SetGameState( eGameState.WinnerDetermined ) + + ScoreEvent_MatchComplete( team ) } } diff --git a/Northstar.CustomServers/mod/scripts/vscripts/mp/_score.nut b/Northstar.CustomServers/mod/scripts/vscripts/mp/_score.nut index dacd43b0..0b55e9ff 100644 --- a/Northstar.CustomServers/mod/scripts/vscripts/mp/_score.nut +++ b/Northstar.CustomServers/mod/scripts/vscripts/mp/_score.nut @@ -7,6 +7,7 @@ global function ScoreEvent_PlayerKilled global function ScoreEvent_TitanDoomed global function ScoreEvent_TitanKilled global function ScoreEvent_NPCKilled +global function ScoreEvent_MatchComplete global function ScoreEvent_SetEarnMeterValues global function ScoreEvent_SetupEarnMeterValuesForMixedModes @@ -230,7 +231,15 @@ void function ScoreEvent_NPCKilled( entity victim, entity attacker, var damageIn catch ( ex ) {} } - +void function ScoreEvent_MatchComplete( int winningTeam ) +{ + foreach( entity player in GetPlayerArray() ) + { + AddPlayerScore( player, "MatchComplete" ) + if ( player.GetTeam() == winningTeam ) + AddPlayerScore( player, "MatchVictory" ) + } +} void function ScoreEvent_SetEarnMeterValues( string eventName, float earned, float owned, float coreScale = 1.0 ) { diff --git a/Northstar.CustomServers/mod/scripts/vscripts/mp/_stats.nut b/Northstar.CustomServers/mod/scripts/vscripts/mp/_stats.nut index 0e8b58f4..208e6da1 100644 --- a/Northstar.CustomServers/mod/scripts/vscripts/mp/_stats.nut +++ b/Northstar.CustomServers/mod/scripts/vscripts/mp/_stats.nut @@ -1,3 +1,5 @@ +untyped // because entity.s + global function Stats_Init global function AddStatCallback global function Stats_SaveStatDelayed @@ -12,67 +14,1084 @@ global function PreScoreEventUpdateStats global function PostScoreEventUpdateStats global function Stats_OnPlayerDidDamage +struct { + table< string, array<string> > refs + table< string, array< void functionref( entity, float, string ) > > callbacks + + table< entity, table< string, int > > cachedIntStatChanges + table< table< string, float > > cachedFloatStatChanges + + table< entity, float > playerKills + table< entity, float > playerKillsPvp + table< entity, float > playerDeaths + table< entity, float > playerDeathsPvp + + bool isFirstStrike = true +} file + void function Stats_Init() { + AddCallback_OnPlayerKilled( OnPlayerOrNPCKilled ) + AddCallback_OnNPCKilled( OnPlayerOrNPCKilled ) + AddCallback_OnPlayerRespawned( OnPlayerRespawned ) + AddCallback_OnClientConnected( OnClientConnected ) + AddCallback_OnClientDisconnected( OnClientDisconnected ) + AddCallback_GameStateEnter( eGameState.WinnerDetermined, OnWinnerDetermined ) + thread HandleDistanceAndTimeStats_Threaded() + thread SaveStatsPeriodically_Threaded() } -void function AddStatCallback(string statCategory, string statAlias, string statSubAlias, void functionref(entity, float, string) callback, string subRef) +void function AddStatCallback( string statCategory, string statAlias, string statSubAlias, void functionref( entity, float, string ) callback, string subRef ) { + if ( !IsValidStat( statCategory, statAlias, statSubAlias ) ) + throw format( "INVALID STAT: %s : %s : %s", statCategory, statAlias, statSubAlias ) + + + string statVar = GetStatVar( statCategory, statAlias, statSubAlias ) + if ( statVar in file.refs ) + { + file.refs[ statVar ].append( subRef ) + file.callbacks[ statVar ].append( callback ) + } + else + { + file.refs[ statVar ] <- [ subRef ] + file.callbacks[ statVar ] <- [ callback ] + } } -void function Stats_SaveStatDelayed(entity player, string statCategory, string statAlias, string statSubAlias) +// a lot of this file seems to be doing caching of stats in some way +void function Stats_SaveStatDelayed( entity player, string statCategory, string statAlias, string statSubAlias, float delay = 0.1 ) { + // idk how long the delay is meant to be but whatever + wait delay + + if ( !IsValid( player ) ) + return + + Stats_SaveStat( player, statCategory, statAlias, statSubAlias ) +} + +void function Stats_SaveAllStats( entity player ) +{ + if ( player in file.cachedIntStatChanges ) + { + foreach( string key, int val in file.cachedIntStatChanges[ player ] ) + { + player.SetPersistentVar( key, player.GetPersistentVarAsInt( key ) + val ) + } + + delete file.cachedIntStatChanges[ player ] + } + // save cached float stat change + if ( player in file.cachedFloatStatChanges ) + { + foreach( string key, float val in file.cachedFloatStatChanges[ player ] ) + { + player.SetPersistentVar( key, expect float( player.GetPersistentVar( key ) ) + val ) + } + delete file.cachedFloatStatChanges[ player ] + } } -int function PlayerStat_GetCurrentInt(entity player, string statCategory, string statAlias, string statSubAlias) +void function Stats_SaveStat( entity player, string statCategory, string statAlias, string statSubAlias ) { + string stat = GetStatVar( statCategory, statAlias, statSubAlias ) + // save cached int stat change + if ( player in file.cachedIntStatChanges && stat in file.cachedIntStatChanges[ player ] ) + { + player.SetPersistentVar( stat, player.GetPersistentVarAsInt( stat ) + file.cachedIntStatChanges[ player ][ stat ] ) + delete file.cachedIntStatChanges[ player ][ stat ] + return + } + // save cached float stat change + if ( player in file.cachedFloatStatChanges && stat in file.cachedFloatStatChanges[ player ] ) + { + player.SetPersistentVar( stat, expect float( player.GetPersistentVar( stat ) ) + file.cachedFloatStatChanges[ player ][ stat ] ) + delete file.cachedFloatStatChanges[ player ][ stat ] + return + } +} + +// this gets the cached change, not the actual value +int function PlayerStat_GetCurrentInt( entity player, string statCategory, string statAlias, string statSubAlias ) +{ + string str = GetStatVar( statCategory, statAlias, statSubAlias ) + + if ( player in file.cachedIntStatChanges && str in file.cachedIntStatChanges[ player ] ) + return file.cachedIntStatChanges[ player ][ str ] return 0 } -float function PlayerStat_GetCurrentFloat(entity player, string statCategory, string statAlias, string statSubAlias) +// this gets the cached change, not the actual value +float function PlayerStat_GetCurrentFloat( entity player, string statCategory, string statAlias, string statSubAlias ) { + string str = GetStatVar( statCategory, statAlias, statSubAlias ) + + if ( player in file.cachedFloatStatChanges && str in file.cachedFloatStatChanges[ player ] ) + return file.cachedFloatStatChanges[ player ][ str ] return 0 } -void function UpdatePlayerStat(entity player, string statCategory, string subStat, int count = 0) +void function UpdatePlayerStat( entity player, string statCategory, string subStat, int count = 1, string statAlias = "" ) { + if ( !IsValid( player ) ) + return + + Stats_IncrementStat( player, statCategory, subStat, statAlias, count.tofloat() ) +} + +void function IncrementPlayerDidPilotExecutionWhileCloaked( entity player ) +{ + UpdatePlayerStat( player, "kills_stats", "pilotExecutePilotWhileCloaked" ) +} + +void function UpdateTitanDamageStat( entity attacker, float savedDamage, var damageInfo ) +{ + if ( !IsValid( attacker ) ) + return + + Stats_IncrementStat( attacker, "titan_stats", "titanDamage", GetTitanCharacterName( attacker ), savedDamage ) +} + +void function UpdateTitanWeaponDamageStat( entity attacker, float savedDamage, var damageInfo ) +{ + if ( !IsValid( attacker ) ) + return + + string weaponName = GetPersistenceRefFromDamageInfo( damageInfo ) + if ( weaponName == "" ) + return + + Stats_IncrementStat( attacker, "weapon_stats", "titanDamage", weaponName, savedDamage ) +} + +void function UpdateTitanCoreEarnedStat( entity player, entity titan, int count = 1 ) +{ + if ( !IsValid( player ) ) + return + + if ( !IsValid( titan ) ) + return + + Stats_IncrementStat( player, "titan_stats", "coresEarned", GetTitanCharacterName( titan ), count.tofloat() ) +} + +void function PreScoreEventUpdateStats( entity attacker, entity ent ) +{ + // used to track kill streaks ending i think ( that stuff gets reset during score event update ) +} + +void function PostScoreEventUpdateStats( entity attacker, entity ent ) +{ + if ( !attacker.IsPlayer() ) + return + // used to track kill streaks starting maybe + if ( attacker.s.currentKillstreak == KILLINGSPREE_KILL_REQUIREMENT ) + { + // killingSpressAs_<chassis> + if ( attacker.IsTitan() ) + Stats_IncrementStat( attacker, "kills_stats", "killingSpressAs_" + GetTitanCharacterName( attacker ), "", 1.0 ) + + entity weapon = attacker.GetActiveWeapon() + // I guess if you dont have a valid active weapon when you get awarded a killing spree + // you dont get the stat. Too bad! + if ( !IsValid( weapon ) ) + return + Stats_IncrementStat( attacker, "weapon_kill_stats", "killingSprees", weapon.GetWeaponClassName(), 1.0 ) + } +} + +void function Stats_OnPlayerDidDamage( entity victim, var damageInfo ) +{ + // try and get the player + entity attacker = DamageInfo_GetAttacker( damageInfo ) + // get the player from their titan + if ( attacker.IsTitan() && IsPetTitan( attacker ) ) + attacker = attacker.GetTitanSoul().GetBossPlayer() + + if ( !attacker.IsPlayer() ) + return + + string weaponName = GetPersistenceRefFromDamageInfo( damageInfo ) + if ( weaponName == "" ) + return + + Stats_IncrementStat( attacker, "weapon_stats", "shotsHit", weaponName, 1.0 ) + + if ( DamageInfo_GetCustomDamageType( damageInfo ) & DF_CRITICAL ) + Stats_IncrementStat( attacker, "weapon_stats", "critHits", weaponName, 1.0 ) + if ( DamageInfo_GetCustomDamageType( damageInfo ) & DF_HEADSHOT ) + Stats_IncrementStat( attacker, "weapon_stats", "headshots", weaponName, 1.0 ) +} + +void function Stats_IncrementStat( entity player, string statCategory, string statAlias, string statSubAlias, float amount ) +{ + if ( !IsValidStat( statCategory, statAlias, statSubAlias ) ) + { + printt( "invalid stat: " + statCategory + " : " + statAlias + " : " + statSubAlias ) + return + } + + string str = GetStatVar( statCategory, statAlias, statSubAlias ) + int type = GetStatVarType( statCategory, statAlias, statSubAlias ) + + // stupid exception because respawn set this up as an int in script + // but it is actually a float, so the game will crash if we don't fix it somewhere + // i dont feel like committing all of sh_stats.gnut so im doing this instead + if ( str == "mapStats[%mapname%].hoursPlayed[%gamemode%]" ) + type = ePlayerStatType.FLOAT + + // this is rather hacky + string mode = GAMETYPE + int difficulty = GetDifficultyLevel() + if ( difficulty >= 5 ) + return + + string saveVar = Stats_GetFixedSaveVar( str, GetMapName(), mode, difficulty.tostring() ) + // check if the map and mode exist in persistence + try + { + PersistenceGetEnumIndexForItemName( "gamemodes", mode ) + PersistenceGetEnumIndexForItemName( "maps", GetMapName() ) + } + catch( ex ) + { + // if we have an invalid mode or map for persistence, and it is used in the + // persistence string, we can't save the persistence so we have to just return + if ( str != saveVar ) + { + printt( ex ) + return + } + } + str = saveVar + + switch ( type ) + { + case ePlayerStatType.INT: + // populate table if needed + if ( !( player in file.cachedIntStatChanges ) ) + file.cachedIntStatChanges[ player ] <- {} + if ( !( str in file.cachedIntStatChanges[ player ] ) ) + file.cachedIntStatChanges[ player ][ str ] <- 0 + + file.cachedIntStatChanges[ player ][ str ] += amount.tointeger() + break + case ePlayerStatType.FLOAT: + // populate table if needed + if ( !( player in file.cachedFloatStatChanges ) ) + file.cachedFloatStatChanges[ player ] <- {} + if ( !( str in file.cachedFloatStatChanges[ player ] ) ) + file.cachedFloatStatChanges[ player ][ str ] <- 0.0 + + file.cachedFloatStatChanges[ player ][ str ] += amount + break + default: + throw "UNIMPLEMENTED STAT TYPE: " + type + } + + // amount here is never used + Stats_RunCallbacks( str, player, amount ) +} + +void function Stats_RunCallbacks( string statVar, entity player, float change ) +{ + if ( !( statVar in file.refs ) ) + return + + for( int i = 0; i < file.refs[ statVar ].len(); i++ ) + { + string ref = file.refs[ statVar ][ i ] + void functionref( entity, float, string ) callback = file.callbacks[ statVar ][ i ] + + callback( player, change, ref ) + } +} + +void function OnClientConnected( entity player ) +{ + Stats_IncrementStat( player, "game_stats", "game_joined", "", 1.0 ) +} + +void function OnClientDisconnected( entity player ) +{ + Stats_SaveAllStats( player ) + // maybe we can save this stuff, but idk if we can access persistence in this callback + if ( player in file.cachedIntStatChanges ) + delete file.cachedIntStatChanges[ player ] + + if ( player in file.cachedFloatStatChanges ) + delete file.cachedFloatStatChanges[ player ] +} + +void function OnPlayerOrNPCKilled( entity victim, entity attacker, var damageInfo ) +{ + if ( victim.IsPlayer() ) + thread SetLastPosForDistanceStatValid_Threaded( victim, false ) + + HandleDeathStats( victim, attacker, damageInfo ) + HandleKillStats( victim, attacker, damageInfo ) + HandleWeaponKillStats( victim, attacker, damageInfo ) + HandleTitanStats( victim, attacker, damageInfo ) +} + +void function HandleDeathStats( entity player, entity attacker, var damageInfo ) +{ + if ( !IsValid( player ) || !player.IsPlayer() ) + return + + if ( player in file.playerDeaths ) + file.playerDeaths[ player ]++ + else + file.playerDeaths[ player ] <- 1.0 + // total + Stats_IncrementStat( player, "deaths_stats", "total", "", 1.0 ) + + // these all rely on the attacker being valid + if ( IsValid( attacker ) ) + { + // totalPVP + // note: I'm not sure if owned entities count towards totalPVP + // such as auto-titans, turrets, etc. + if ( attacker.IsPlayer() || attacker.GetBossPlayer() ) + { + if ( player in file.playerDeathsPvp ) + file.playerDeathsPvp[ player ]++ + else + file.playerDeathsPvp[ player ] <- 1.0 + Stats_IncrementStat( player, "deaths_stats", "totalPVP", "", 1.0 ) + } + + // byPilots + if ( IsPilot( attacker ) ) + Stats_IncrementStat( player, "deaths_stats", "byPilots", "", 1.0 ) + + // byTitan_<chassis> + if ( attacker.IsTitan() && attacker.IsPlayer() ) + Stats_IncrementStat( player, "deaths_stats", "byTitan_" + GetTitanCharacterName( attacker ), "", 1.0 ) + + // bySpectres + if ( IsSpectre( attacker ) ) + Stats_IncrementStat( player, "deaths_stats", "bySpectres", "", 1.0 ) + + // byGrunts + if ( IsGrunt( attacker ) ) + Stats_IncrementStat( player, "deaths_stats", "byGrunts", "", 1.0 ) + + // byNPCTitans_<chassis> + if ( attacker.IsTitan() && attacker.IsNPC() ) + Stats_IncrementStat( player, "deaths_stats", "byNPCTitans_" + GetTitanCharacterName( attacker ), "", 1.0 ) + } + + // asPilot + if ( IsPilot( player ) ) + Stats_IncrementStat( player, "deaths_stats", "asPilot", "", 1.0 ) + + // asTitan_<chassis> + if ( player.IsTitan() ) + Stats_IncrementStat( player, "deaths_stats", "asTitan_" + GetTitanCharacterName( player ), "", 1.0 ) + + // suicides + if ( IsSuicide( attacker, player, DamageInfo_GetDamageSourceIdentifier( damageInfo ) ) ) + Stats_IncrementStat( player, "deaths_stats", "suicides", "", 1.0 ) + + // whileEjecting + if ( player.p.pilotEjecting ) + Stats_IncrementStat( player, "deaths_stats", "whileEjecting", "", 1.0 ) +} + +void function HandleWeaponKillStats( entity victim, entity attacker, var damageInfo ) +{ + if ( !IsValid( attacker ) ) + return + + // get the player and it's pet titan + entity player + entity playerPetTitan + if ( attacker.IsPlayer() ) + { + // the player is just the attacker + player = attacker + playerPetTitan = player.GetPetTitan() + } + else if ( attacker.IsTitan() && IsPetTitan( attacker ) ) + { + // the attacker is the player's auto titan + player = attacker.GetTitanSoul().GetBossPlayer() + playerPetTitan = attacker + } + else + { + // attacker could be something like an NPC, or worldspawn + return + } + + string damageSourceStr = GetPersistenceRefFromDamageInfo( damageInfo ) + // cant do weapon stats for no weapon + if ( damageSourceStr == "" ) + return + + // check things once, for performance + int damageSource = DamageInfo_GetDamageSourceIdentifier( damageInfo ) + bool victimIsPlayer = victim.IsPlayer() + bool victimIsNPC = victim.IsNPC() + bool victimIsPilot = IsPilot( victim ) + bool victimIsTitan = victim.IsTitan() + + // total + Stats_IncrementStat( player, "weapon_kill_stats", "total", damageSourceStr, 1.0 ) + + // pilots + if ( victimIsPilot ) + Stats_IncrementStat( player, "weapon_kill_stats", "pilots", damageSourceStr, 1.0 ) + + // ejecting_pilots + if ( victimIsPilot && victim.p.pilotEjecting ) + Stats_IncrementStat( player, "weapon_kill_stats", "ejecting_pilots", damageSourceStr, 1.0 ) + + // titansTotal + if ( victimIsTitan ) + Stats_IncrementStat( player, "weapon_kill_stats", "titansTotal", damageSourceStr, 1.0 ) + // spectres + if ( IsSpectre( victim ) ) + Stats_IncrementStat( player, "weapon_kill_stats", "spectres", damageSourceStr, 1.0 ) + + // marvins + if ( IsMarvin( victim ) ) + Stats_IncrementStat( player, "weapon_kill_stats", "marvins", damageSourceStr, 1.0 ) + + // grunts + if ( IsGrunt( victim ) ) + Stats_IncrementStat( player, "weapon_kill_stats", "grunts", damageSourceStr, 1.0 ) + + // ai + if ( victimIsNPC ) + Stats_IncrementStat( player, "weapon_kill_stats", "ai", damageSourceStr, 1.0 ) + + // titans_<chassis> + if ( victimIsPlayer && victimIsTitan ) + Stats_IncrementStat( player, "weapon_kill_stats", "titans_" + GetTitanCharacterName( victim ), damageSourceStr, 1.0 ) + + // npcTitans_<chassis> + if ( victimIsNPC && victimIsTitan ) + Stats_IncrementStat( player, "weapon_kill_stats", "npcTitans_" + GetTitanCharacterName( victim ), damageSourceStr, 1.0 ) } -void function IncrementPlayerDidPilotExecutionWhileCloaked(entity player) +void function HandleKillStats( entity victim, entity attacker, var damageInfo ) { + if ( !IsValid( attacker ) ) + return + // get the player and it's pet titan + entity player + entity playerPetTitan + if ( attacker.IsPlayer() ) + { + // the player is just the attacker + player = attacker + playerPetTitan = player.GetPetTitan() + } + else if ( attacker.IsTitan() && IsPetTitan( attacker ) ) + { + // the attacker is the player's auto titan + player = attacker.GetTitanSoul().GetBossPlayer() + playerPetTitan = attacker + } + else + { + // attacker could be something like an NPC, or worldspawn + return + } + + // check things once, for performance + int damageSource = DamageInfo_GetDamageSourceIdentifier( damageInfo ) + bool victimIsPlayer = victim.IsPlayer() + bool victimIsNPC = victim.IsNPC() + bool victimIsPilot = IsPilot( victim ) + bool victimIsTitan = victim.IsTitan() + + if ( player in file.playerKills ) + file.playerKills[ player ]++ + else + file.playerKills[ player ] <- 1.0 + // total + Stats_IncrementStat( player, "kills_stats", "total", "", 1.0 ) + + // totalPVP + if ( victimIsPlayer ) + { + if ( player in file.playerKillsPvp ) + file.playerKillsPvp[ player ]++ + else + file.playerKillsPvp[ player ] <- 1.0 + Stats_IncrementStat( player, "kills_stats", "totalPVP", "", 1.0 ) + } + + // pilots + if ( victimIsPilot ) + Stats_IncrementStat( player, "kills_stats", "pilots", "", 1.0 ) + + // spectres + if ( IsSpectre( victim ) ) + Stats_IncrementStat( player, "kills_stats", "spectres", "", 1.0 ) + + // marvins + if ( IsMarvin( victim ) ) + Stats_IncrementStat( player, "kills_stats", "marvins", "", 1.0 ) + + // grunts + if ( IsGrunt( victim ) ) + Stats_IncrementStat( player, "kills_stats", "grunts", "", 1.0 ) + + // totalTitans + if ( victimIsTitan ) + Stats_IncrementStat( player, "kills_stats", "totalTitans", "", 1.0 ) + + // totalPilots + if ( victimIsPilot ) + Stats_IncrementStat( player, "kills_stats", "totalPilots", "", 1.0 ) + + // totalNPC + if ( victimIsNPC ) + Stats_IncrementStat( player, "kills_stats", "totalNPC", "", 1.0 ) + + // totalTitansWhileDoomed + if ( victimIsTitan && attacker.IsTitan() && GetDoomedState( attacker ) ) + Stats_IncrementStat( player, "kills_stats", "totalTitansWhileDoomed", "", 1.0 ) + + // asPilot + if ( IsPilot( attacker ) ) + Stats_IncrementStat( player, "kills_stats", "asPilot", "", 1.0 ) + + // totalAssists + // assistsTotal ( weapon_kill_stats ) + // note: eww + table<int, bool> alreadyAssisted + foreach( DamageHistoryStruct attackerInfo in victim.e.recentDamageHistory ) + { + if ( !IsValid( attackerInfo.attacker ) || !attackerInfo.attacker.IsPlayer() || attackerInfo.attacker == victim ) + continue + + bool exists = attackerInfo.attacker.GetEncodedEHandle() in alreadyAssisted ? true : false + if( attackerInfo.attacker != attacker && !exists ) + { + alreadyAssisted[ attackerInfo.attacker.GetEncodedEHandle() ] <- true + Stats_IncrementStat( attackerInfo.attacker, "kills_stats", "totalAssists", "", 1.0 ) + + string source = DamageSourceIDToString( attackerInfo.damageSourceId ) + + if ( IsValidStatItemString( source ) ) + Stats_IncrementStat( attacker, "weapon_kill_stats", "assistsTotal", source, 1.0 ) + } + } + + // asTitan_<chassis> + if ( player.IsTitan() ) + Stats_IncrementStat( player, "kills_stats", "asTitan_" + GetTitanCharacterName( player ), "", 1.0 ) + + // firstStrikes + if ( file.isFirstStrike && attacker.IsPlayer() && victimIsPlayer ) + { + Stats_IncrementStat( player, "kills_stats", "firstStrikes", "", 1.0 ) + file.isFirstStrike = false + } + + // ejectingPilots + if ( victimIsPilot && victim.p.pilotEjecting ) + Stats_IncrementStat( player, "kills_stats", "ejectingPilots", "", 1.0 ) + + // whileEjecting + if ( attacker.IsPlayer() && attacker.p.pilotEjecting ) + Stats_IncrementStat( player, "kills_stats", "whileEjecting", "", 1.0 ) + + // cloakedPilots + if ( victimIsPilot && IsCloaked( victim ) ) + Stats_IncrementStat( player, "kills_stats", "cloakedPilots", "", 1.0 ) + + // whileCloaked + if ( attacker == player && IsCloaked( attacker ) ) + Stats_IncrementStat( player, "kills_stats", "whileCloaked", "", 1.0 ) + + // wallrunningPilots + if ( victimIsPilot && victim.IsWallRunning() ) + Stats_IncrementStat( player, "kills_stats", "wallrunningPilots", "", 1.0 ) + + // whileWallrunning + if ( attacker == player && attacker.IsWallRunning() ) + Stats_IncrementStat( player, "kills_stats", "whileWallrunning", "", 1.0 ) + + // wallhangingPilots + if ( victimIsPilot && victim.IsWallHanging() ) + Stats_IncrementStat( player, "kills_stats", "wallhangingPilots", "", 1.0 ) + + // whileWallhanging + if ( attacker == player && attacker.IsWallHanging() ) + Stats_IncrementStat( player, "kills_stats", "whileWallhanging", "", 1.0 ) + + // pilotExecution + if ( damageSource == eDamageSourceId.human_execution ) + Stats_IncrementStat( player, "kills_stats", "pilotExecution", "", 1.0 ) + + // pilotExecutePilot + if ( victimIsPilot && damageSource == eDamageSourceId.human_execution ) + Stats_IncrementStat( player, "kills_stats", "pilotExecutePilot", "", 1.0 ) + + // pilotKillsWithHoloPilotActive + if ( victimIsPilot && GetDecoyActiveCountForPlayer( player ) > 0 ) + Stats_IncrementStat( player, "kills_stats", "pilotKillsWithHoloPilotActive", "", 1.0 ) + + // pilotKillsWithAmpedWallActive + if ( victimIsPilot && GetAmpedWallsActiveCountForPlayer( player ) > 0 ) + Stats_IncrementStat( player, "kills_stats", "pilotKillsWithAmpedWallActive", "", 1.0 ) + + // pilotExecutePilotUsing_<execution> + if ( victimIsPilot && damageSource == eDamageSourceId.human_execution ) + Stats_IncrementStat( player, "kills_stats", "pilotExecutePilotUsing_" + player.p.lastExecutionUsed, "", 1.0 ) + + // pilotKickMelee + if ( damageSource == eDamageSourceId.human_melee ) + Stats_IncrementStat( player, "kills_stats", "pilotKickMelee", "", 1.0 ) + + // pilotKickMeleePilot + if ( victimIsPilot && damageSource == eDamageSourceId.human_melee ) + Stats_IncrementStat( player, "kills_stats", "pilotKickMeleePilot", "", 1.0 ) + + // titanMelee + if ( DamageIsTitanMelee( damageSource ) ) + Stats_IncrementStat( player, "kills_stats", "titanMelee", "", 1.0 ) + + // titanMeleePilot + if ( victimIsPilot && DamageIsTitanMelee( damageSource ) ) + Stats_IncrementStat( player, "kills_stats", "titanMeleePilot", "", 1.0 ) + + // titanStepCrush + if ( IsTitanCrushDamage( damageInfo ) ) + Stats_IncrementStat( player, "kills_stats", "titanStepCrush", "", 1.0 ) + + // titanStepCrushPilot + if ( victimIsPilot && IsTitanCrushDamage( damageInfo ) ) + Stats_IncrementStat( player, "kills_stats", "titanStepCrushPilot", "", 1.0 ) + + // titanExocution<capitalisedChassis> + // note: RESPAWN WHY? EXPLAIN + if ( damageSource == eDamageSourceId.titan_execution ) + { + string titanName = GetTitanCharacterName( player ) + titanName = titanName.slice( 0, 1 ).toupper() + titanName.slice( 1, titanName.len() ) + Stats_IncrementStat( player, "kills_stats", "titanExocution" + titanName, "", 1.0 ) + } + + // titanFallKill + if ( damageSource == eDamageSourceId.damagedef_titan_fall ) + Stats_IncrementStat( player, "kills_stats", "titanFallKill", "", 1.0 ) + + // petTitanKillsFollowMode + if ( attacker == playerPetTitan && player.GetPetTitanMode() == eNPCTitanMode.FOLLOW ) + Stats_IncrementStat( player, "kills_stats", "petTitanKillsFollowMode", "", 1.0 ) + + // petTitanKillsGuardMode + if ( attacker == playerPetTitan && player.GetPetTitanMode() == eNPCTitanMode.STAY ) + Stats_IncrementStat( player, "kills_stats", "petTitanKillsGuardMode", "", 1.0 ) + + // rodeo_total + if ( damageSource == eDamageSourceId.rodeo_battery_removal ) + Stats_IncrementStat( player, "kills_stats", "rodeo_total", "", 1.0 ) + + // pilot_headshots_total + if ( victimIsPilot && DamageInfo_GetCustomDamageType( damageInfo ) & DF_HEADSHOT ) + Stats_IncrementStat( player, "kills_stats", "pilot_headshots_total", "", 1.0 ) + + // evacShips + if ( IsEvacDropship( victim ) ) + Stats_IncrementStat( player, "kills_stats", "evacShips", "", 1.0 ) + + // nuclearCore + if ( damageSource == eDamageSourceId.damagedef_nuclear_core ) + Stats_IncrementStat( player, "kills_stats", "nuclearCore", "", 1.0 ) + + // meleeWhileCloaked + if ( IsCloaked( attacker ) && damageSource == eDamageSourceId.human_melee ) + Stats_IncrementStat( player, "kills_stats", "meleeWhileCloaked", "", 1.0 ) + + // titanKillsAsPilot + if ( victimIsTitan && IsPilot( attacker ) ) + Stats_IncrementStat( player, "kills_stats", "titanKillsAsPilot", "", 1.0 ) + + // pilotKillsWhileStimActive + if ( victimIsPilot && StatusEffect_Get( attacker, eStatusEffect.stim_visual_effect ) <= 0 ) + Stats_IncrementStat( player, "kills_stats", "pilotKillsWhileStimActive", "", 1.0 ) + + // pilotKillsAsTitan + if ( victimIsPilot && attacker.IsTitan() ) + Stats_IncrementStat( player, "kills_stats", "pilotKillsAsTitan", "", 1.0 ) + + // pilotKillsAsPilot + if ( victimIsPilot && IsPilot( attacker ) ) + Stats_IncrementStat( player, "kills_stats", "pilotKillsAsPilot", "", 1.0 ) + + // titanKillsAsTitan + if ( victimIsTitan && attacker.IsTitan() ) + Stats_IncrementStat( player, "kills_stats", "titanKillsAsTitan", "", 1.0 ) } -void function UpdateTitanDamageStat(entity attacker, float savedDamage, var damageInfo) +void function HandleTitanStats( entity victim, entity attacker, var damageInfo ) { + if ( !IsValid( attacker ) ) + return + + // get the player and it's pet titan + entity player + entity playerPetTitan + if ( attacker.IsPlayer() ) + { + // the player is just the attacker + player = attacker + playerPetTitan = player.GetPetTitan() + } + else if ( attacker.IsTitan() && IsPetTitan( attacker ) ) + { + // the attacker is the player's auto titan + player = attacker.GetTitanSoul().GetBossPlayer() + playerPetTitan = attacker + } + else + { + // attacker could be something like an NPC, or worldspawn + return + } + + int damageSource = DamageInfo_GetDamageSourceIdentifier( damageInfo ) + bool victimIsPlayer = victim.IsPlayer() + bool victimIsNPC = victim.IsNPC() + bool victimIsPilot = IsPilot( victim ) + bool victimIsTitan = victim.IsTitan() + bool titanIsPrime = IsTitanPrimeTitan( player ) + // pilots + if ( victimIsPilot && attacker.IsTitan() ) + Stats_IncrementStat( player, "titan_stats", "pilots", GetTitanCharacterName( attacker ), 1.0 ) + + // titansTotal + if ( victimIsTitan && attacker.IsTitan() ) + Stats_IncrementStat( player, "titan_stats", "titansTotal", GetTitanCharacterName( attacker ), 1.0 ) + + // pilotsAsPrime + if ( victimIsPilot && attacker.IsTitan() && titanIsPrime ) + Stats_IncrementStat( player, "titan_stats", "pilotsAsPrime", GetTitanCharacterName( attacker ), 1.0 ) + + // titansAsPrime + if ( victimIsTitan && attacker.IsTitan() && titanIsPrime ) + Stats_IncrementStat( player, "titan_stats", "titansAsPrime", GetTitanCharacterName( attacker ), 1.0 ) + + // executionsAsPrime + if ( damageSource == eDamageSourceId.titan_execution && attacker.IsTitan() && titanIsPrime ) + Stats_IncrementStat( player, "titan_stats", "executionsAsPrime", GetTitanCharacterName( attacker ), 1.0 ) } -void function UpdateTitanWeaponDamageStat(entity attacker, float savedDamage, var damageInfo) +void function OnPlayerRespawned( entity player ) { + thread SetLastPosForDistanceStatValid_Threaded( player, true ) +} + +void function OnWinnerDetermined() +{ + // award players for match completed, wins, and losses + foreach ( entity player in GetPlayerArray() ) + { + Stats_IncrementStat( player, "game_stats", "game_completed", "", 1.0 ) + + if ( player.GetTeam() == GetWinningTeam() ) + Stats_IncrementStat( player, "game_stats", "game_won", "", 1.0 ) + else + Stats_IncrementStat( player, "game_stats", "game_lost", "", 1.0 ) + } + + if ( IsValidGamemodeString( GAMETYPE ) ) + { + // award players with matches played on the mode + foreach ( entity player in GetPlayerArray() ) + { + Stats_IncrementStat( player, "game_stats", "mode_played", GAMETYPE, 1.0 ) + + if ( player.GetTeam() == GetWinningTeam() ) + Stats_IncrementStat( player, "game_stats", "mode_won", GAMETYPE, 1.0 ) + } + } + + // update player's KD + foreach ( entity player in GetPlayerArray() ) + { + // kd stats + // index 0 is most recent game + // index 9 is least recent game + float playerKills = ( player in file.playerKills ) ? file.playerKills[ player ] : 0.0 + float playerDeaths = ( player in file.playerDeaths ) ? file.playerDeaths[ player ] : 0.0 + float kdratio_match + if ( playerDeaths == 0.0 ) + kdratio_match = playerKills + else + kdratio_match = playerKills / playerDeaths + + float playerKillsPvp = ( player in file.playerKillsPvp ) ? file.playerKillsPvp[ player ] : 0.0 + float playerDeathsPvp = ( player in file.playerDeathsPvp ) ? file.playerDeathsPvp[ player ] : 0.0 + float kdratiopvp_match + if ( playerDeathsPvp == 0.0 ) + kdratiopvp_match = playerKillsPvp + else + kdratiopvp_match = playerKillsPvp / playerDeathsPvp + + float totalDeaths = player.GetPersistentVarAsInt( "deathStats.total" ).tofloat() + float totalKills = player.GetPersistentVarAsInt( "killStats.total" ).tofloat() + float totalDeathsPvp = player.GetPersistentVarAsInt( "deathStats.totalPVP" ).tofloat() + float totalKillsPvp = player.GetPersistentVarAsInt( "killStats.totalPVP" ).tofloat() + float kdratio_lifetime + if ( totalDeaths == 0.0 ) + kdratio_lifetime = totalKills + else + kdratio_lifetime = totalKills / totalDeaths + float kdratio_lifetimepvp + if ( totalDeathsPvp == 0.0 ) + kdratio_lifetimepvp = totalKillsPvp + else + kdratio_lifetimepvp = totalKillsPvp / totalDeathsPvp + + // shift stats by 1 to make room for new game data + for ( int i = NUM_GAMES_TRACK_KDRATIO - 2; i >= 0; --i ) + { + player.SetPersistentVar( format( "kdratio_match[%i]", ( i + 1 ) ), player.GetPersistentVar( format("kdratio_match[%i]", i ) ) ) + player.SetPersistentVar( format( "kdratiopvp_match[%i]", ( i + 1 ) ), player.GetPersistentVar( format( "kdratiopvp_match[%i]", i ) ) ) + } + // add new game data + player.SetPersistentVar( "kdratio_match[0]", kdratio_match ) + player.SetPersistentVar( "kdratiopvp_match[0]", kdratiopvp_match ) + player.SetPersistentVar( "kdratio_lifetime", kdratio_lifetime ) + player.SetPersistentVar( "kdratio_lifetime_pvp", kdratio_lifetimepvp ) + } + + // award mvp and top 3 in each team + if ( !IsFFAGame() ) + { + string gamemode = GameRules_GetGameMode() + int functionref( entity, entity ) compareFunc = GameMode_GetScoreCompareFunc( gamemode ) + + for( int team = 0; team < MAX_TEAMS; team++ ) + { + array<entity> players = GetPlayerArrayOfTeam( team ) + if ( compareFunc == null ) + { + printt( "gamemode doesn't have a compare func to get the top 3" ) + return + } + players.sort( compareFunc ) + int maxAwards = int( min( players.len(), 3 ) ) + for ( int i = 0; i < maxAwards; i++ ) + { + if ( i == 0 ) + Stats_IncrementStat( players[ i ], "game_stats", "mvp", "", 1.0 ) + Stats_IncrementStat( players[ i ], "game_stats", "top3OnTeam", "", 1.0 ) + } + } + + } +} +void function SetLastPosForDistanceStatValid_Threaded( entity player, bool val ) +{ + WaitFrame() + if ( !IsValid( player ) ) + return + player.p.lastPosForDistanceStatValid = val } -void function UpdateTitanCoreEarnedStat( entity player, entity titan ) +// Respawn did this through stuff found in _entitystructs.gnut (stuff like stats_wallrunTime) +// but their implementation seems kinda bad. The advantage it has over this method is not polling +// every 0.25 seconds, and using movement callbacks and stuff instead. However, since i can't find +// callbacks for things like changing weapon, i would have to poll for that *anyway* and thus, +// there is no point in doing things Respawn's way here +void function HandleDistanceAndTimeStats_Threaded() { + // just to be safe + if ( IsLobby() ) + return + + while ( GetGameState() < eGameState.Playing ) + WaitFrame() + + float lastTickTime = Time() + + while( true ) + { + // track distance stats + foreach ( entity player in GetPlayerArray() ) + { + if ( player.p.lastPosForDistanceStatValid ) + { + // not 100% sure on using Distance2D over Distance tbh + float distInches = Distance2D( player.p.lastPosForDistanceStat, player.GetOrigin() ) + float distMiles = distInches / 63360.0 + + // more generic distance stats + Stats_IncrementStat( player, "distance_stats", "total", "", distMiles ) + if ( player.IsTitan() ) + { + Stats_IncrementStat( player, "distance_stats", "asTitan_" + GetTitanCharacterName( player ), "", distMiles ) + Stats_IncrementStat( player, "distance_stats", "asTitan", "", distMiles ) + } + else + Stats_IncrementStat( player, "distance_stats", "asPilot", "", distMiles ) + + + string state = "" + // specific distance stats + if ( player.IsWallRunning() ) + state = "wallrunning" + else if ( PlayerIsRodeoingTitan( player ) ) + { + if ( player.GetTitanSoulBeingRodeoed().GetTeam() == player.GetTeam() ) + state = "onFriendlyTitan" + else + state = "onEnemyTitan" + } + else if ( player.IsZiplining() ) + state = "ziplining" + else if ( !player.IsOnGround() ) + state = "inAir" + + if ( state != "" ) + Stats_IncrementStat( player, "distance_stats", state, "", distMiles ) + } + + player.p.lastPosForDistanceStat = player.GetOrigin() + } + + float timeSeconds = Time() - lastTickTime + float timeHours = timeSeconds / 3600.0 + + // track time stats + foreach ( entity player in GetPlayerArray() ) + { + // first tick i dont count + if ( timeSeconds == 0 ) + break + + // more generic time stats + Stats_IncrementStat( player, "time_stats", "hours_total", "", timeHours ) + if ( player.IsTitan() ) + { + Stats_IncrementStat( player, "time_stats", "hours_as_titan_" + GetTitanCharacterName( player ), "", timeHours ) + Stats_IncrementStat( player, "time_stats", "hours_as_titan", "", timeHours ) + } + else + Stats_IncrementStat( player, "time_stats", "hours_as_pilot", "", timeHours ) + + string state = "" + // specific time stats + if ( !IsAlive( player ) ) + state = "hours_dead" + else if ( player.IsWallHanging() ) + state = "hours_wallhanging" + else if ( player.IsWallRunning() ) + state = "hours_wallrunning" + else if ( !player.IsOnGround() ) + state = "hours_inAir" + if ( state != "" ) + Stats_IncrementStat( player, "time_stats", state, "", timeHours ) + + // weapon time stats + entity activeWeapon = player.GetActiveWeapon() + if ( IsValid( activeWeapon ) ) + { + if ( IsValidStatItemString( activeWeapon.GetWeaponClassName() ) ) + Stats_IncrementStat( player, "weapon_stats", "hoursUsed", activeWeapon.GetWeaponClassName(), timeHours ) + + foreach( entity weapon in player.GetMainWeapons() ) + { + if ( IsValidStatItemString( weapon.GetWeaponClassName() ) ) + Stats_IncrementStat( player, "weapon_stats", "hoursEquipped", weapon.GetWeaponClassName(), timeHours ) + } + } + + // map time stats + Stats_IncrementStat( player, "game_stats", "hoursPlayed", "", timeHours ) + } + + lastTickTime = Time() + // not rly worth doing this every frame, just a couple of times per second should be fine + wait 0.25 + } +} + +// this is kinda shit +void function SaveStatsPeriodically_Threaded() +{ + while( true ) + { + foreach( entity player in GetPlayerArray() ) + Stats_SaveAllStats( player ) + wait 5 + } } -void function PreScoreEventUpdateStats(entity attacker, entity ent) +bool function IsValidGamemodeString( string mode ) { + int gameModeCount = PersistenceGetEnumCount( "gameModes" ) + for ( int modeIndex = 0; modeIndex < gameModeCount; modeIndex++ ) + { + string gameModeName = PersistenceGetEnumItemNameForIndex( "gameModes", modeIndex ) + + if ( gameModeName == mode ) + return true + } + return false } -void function PostScoreEventUpdateStats(entity attacker, entity ent) +bool function IsValidStatItemString( string item ) { + foreach( str in shGlobalMP.statsItemsList ) + { + if ( str == item ) + return true + } + return false } -void function Stats_OnPlayerDidDamage(entity player, var damageInfo) +string function GetPersistenceRefFromDamageInfo( var damageInfo ) { + string damageSourceString = DamageSourceIDToString( DamageInfo_GetDamageSourceIdentifier( damageInfo ) ) + + foreach( str in shGlobalMP.statsItemsList ) + { + if ( str == damageSourceString ) + return damageSourceString + } + return "" +} + +bool function DamageIsTitanMelee( int damageSourceId ) +{ + switch( damageSourceId ) + { + case eDamageSourceId.melee_titan_punch: + case eDamageSourceId.melee_titan_punch_ion: + case eDamageSourceId.melee_titan_punch_legion: + case eDamageSourceId.melee_titan_punch_tone: + case eDamageSourceId.melee_titan_punch_scorch: + case eDamageSourceId.melee_titan_punch_northstar: + case eDamageSourceId.melee_titan_punch_fighter: + case eDamageSourceId.melee_titan_sword: + case eDamageSourceId.melee_titan_sword_aoe: + return true + default: + return false + } + unreachable } diff --git a/Northstar.CustomServers/mod/scripts/vscripts/mp/spawn.nut b/Northstar.CustomServers/mod/scripts/vscripts/mp/spawn.nut index 5bf150c0..4956375b 100644 --- a/Northstar.CustomServers/mod/scripts/vscripts/mp/spawn.nut +++ b/Northstar.CustomServers/mod/scripts/vscripts/mp/spawn.nut @@ -261,9 +261,12 @@ bool function IsSpawnpointValid( entity spawnpoint, int team ) return false } - array<entity> projectiles = GetProjectileArrayEx( "any", TEAM_ANY, TEAM_ANY, spawnpoint.GetOrigin(), 600 ) - foreach ( entity projectile in projectiles ) - if ( projectile.GetTeam() != team ) + const minEnemyDist = 1000.0 // about 20 meters? + // in rsquirrel extend returns null unlike in vanilla squirrel + array< entity > spawnBlockers = GetPlayerArrayEx( "any", TEAM_ANY, TEAM_ANY, spawnpoint.GetOrigin(), minEnemyDist ) + spawnBlockers.extend( GetProjectileArrayEx( "any", TEAM_ANY, TEAM_ANY, spawnpoint.GetOrigin(), minEnemyDist ) ) + foreach ( entity blocker in spawnBlockers ) + if ( blocker.GetTeam() != team ) return false // los check diff --git a/Northstar.CustomServers/mod/scripts/vscripts/sh_loadouts.nut b/Northstar.CustomServers/mod/scripts/vscripts/sh_loadouts.nut index 85f5aa05..7a7498b8 100644 --- a/Northstar.CustomServers/mod/scripts/vscripts/sh_loadouts.nut +++ b/Northstar.CustomServers/mod/scripts/vscripts/sh_loadouts.nut @@ -785,7 +785,7 @@ bool function IsSettingPrimeTitanWithoutSetFile( entity player, string loadoutTy bool function SkipItemLockedCheck( entity player, string ref, string parentRef, string loadoutProperty ) //Hack: Skip entitlement related unlock checks for now. Can fail.
{
- if ( DevEverythingUnlocked() )
+ if ( DevEverythingUnlocked( player ) )
return true
//if ( IsItemInEntitlementUnlock( ref ) && IsLobby() ) //TODO: Look into restricting this to lobby only? But entitlement checks can fail randomly...
@@ -3993,7 +3993,7 @@ bool function IsValidTitanLoadoutIndex( int loadoutIndex ) bool function HasPrimeToMatchExecutionType( entity player, int itemType )
{
- if ( DevEverythingUnlocked() )
+ if ( DevEverythingUnlocked( player ) )
return true
switch( itemType )
diff --git a/Northstar.CustomServers/mod/scripts/vscripts/sh_northstar_utils.gnut b/Northstar.CustomServers/mod/scripts/vscripts/sh_northstar_utils.gnut index b26e48ca..f8597744 100644 --- a/Northstar.CustomServers/mod/scripts/vscripts/sh_northstar_utils.gnut +++ b/Northstar.CustomServers/mod/scripts/vscripts/sh_northstar_utils.gnut @@ -1,11 +1,5 @@ globalize_all_functions -// whether the server is a modded, northstar server -bool function IsNorthstarServer() -{ - return GetConVarBool( "ns_is_modded_server" ) -} - // whether the game should return to the lobby on GameRules_EndMatch() bool function ShouldReturnToLobby() { diff --git a/Northstar.CustomServers/mod/scripts/vscripts/sh_progression.nut b/Northstar.CustomServers/mod/scripts/vscripts/sh_progression.nut new file mode 100644 index 00000000..ceb5e837 --- /dev/null +++ b/Northstar.CustomServers/mod/scripts/vscripts/sh_progression.nut @@ -0,0 +1,1117 @@ +global function Progression_Init +global function ProgressionEnabledForPlayer +#if CLIENT || UI +global function Progression_SetPreference +global function Progression_GetPreference +global function UpdateCachedLoadouts_Delayed +#endif + +#if SP // literally just stub the global functions and call it a day + +void function Progression_Init() {} +bool function ProgressionEnabledForPlayer( entity player ) { return false } +#if CLIENT || UI +void function Progression_SetPreference( bool enabled ) {} +bool function Progression_GetPreference() { return false } +void function UpdateCachedLoadouts_Delayed() {} +#endif // CLIENT || UI + +#else // MP || UI basically + +// SO FOR SOME GOD DAMN REASON, PUTTING THESE INTO ONE STRUCT +// AND PUTTING THE #if STUFF AROUND THE VARS CAUSES A COMPILE +// ERROR, SO I HAVE TO DO THIS AWFULNESS + +#if SERVER +struct { + table<entity, bool> progressionEnabled +} file +#else // UI || CLIENT +struct { + bool isUpdatingCachedLoadouts = false +} file +#endif + + +void function Progression_Init() +{ + #if SERVER + AddCallback_OnClientDisconnected( OnClientDisconnected ) + AddClientCommandCallback( "ns_progression", ClientCommand_SetProgression ) + AddCallback_GameStateEnter( eGameState.Playing, OnPlaying ) + #elseif CLIENT + AddCallback_OnClientScriptInit( OnClientScriptInit ) + #endif +} + +bool function ProgressionEnabledForPlayer( entity player ) +{ + #if SERVER + if ( player in file.progressionEnabled ) + return file.progressionEnabled[player] + + return false + #else // CLIENT || UI + return GetConVarBool( "ns_progression_enabled" ) + #endif +} + +#if SERVER +void function OnPlaying() +{ + SetUIVar( level, "penalizeDisconnect", false ) // dont show the "you will lose merits thing" +} + +void function OnClientDisconnected( entity player ) +{ + // cleanup table when player leaves + if ( player in file.progressionEnabled ) + delete file.progressionEnabled[player] +} + +bool function ClientCommand_SetProgression( entity player, array<string> args ) +{ + if ( args.len() != 1 ) + return false + if ( args[0] != "0" && args[0] != "1" ) + return false + + file.progressionEnabled[player] <- args[0] == "1" + + // loadout validation when progression is turned on + if ( file.progressionEnabled[player] ) + ValidateEquippedItems( player ) + + return true +} +#endif + +#if CLIENT +void function OnClientScriptInit( entity player ) +{ + // unsure if this is needed, just being safe + if ( player != GetLocalClientPlayer() ) + return + + Progression_SetPreference( GetConVarBool( "ns_progression_enabled" ) ) + UpdateCachedLoadouts_Delayed() +} +#endif + +#if CLIENT || UI +void function Progression_SetPreference( bool enabled ) +{ + SetConVarBool( "ns_progression_enabled", enabled ) + + #if CLIENT + GetLocalClientPlayer().ClientCommand( "ns_progression " + enabled.tointeger() ) + #else // UI + ClientCommand( "ns_progression " + enabled.tointeger() ) + #endif +} + +bool function Progression_GetPreference() +{ + return GetConVarBool( "ns_progression_enabled" ) +} + +void function UpdateCachedLoadouts_Delayed() +{ + if ( file.isUpdatingCachedLoadouts ) + return + + file.isUpdatingCachedLoadouts = true + + #if UI + RunClientScript( "UpdateCachedLoadouts_Delayed" ) // keep client and UI synced + #else // CLIENT + RunUIScript( "UpdateCachedLoadouts_Delayed" ) // keep client and UI synced + #endif + + thread UpdateCachedLoadouts_Threaded() +} + +void function UpdateCachedLoadouts_Threaded() +{ + wait 1.0 // give the server time to network our new persistence + + UpdateCachedLoadouts() + + // below here is just making all the menu models update properly and such + + #if UI + uiGlobal.pilotSpawnLoadoutIndex = GetPersistentSpawnLoadoutIndex( GetUIPlayer(), "pilot" ) + uiGlobal.titanSpawnLoadoutIndex = GetPersistentSpawnLoadoutIndex( GetUIPlayer(), "titan" ) + #endif + + #if CLIENT + entity player = GetLocalClientPlayer() + ClearAllTitanPreview( player ) + ClearAllPilotPreview( player ) + UpdateTitanModel( player, GetPersistentSpawnLoadoutIndex( player, "titan" ) ) + UpdatePilotModel( player, GetPersistentSpawnLoadoutIndex( player, "pilot" ) ) + #endif + + file.isUpdatingCachedLoadouts = false +} +#endif + +#if SERVER +void function ValidateEquippedItems( entity player ) +{ + printt( "VALIDATING EQUIPPED ITEMS FOR PLAYER: " + player.GetPlayerName() ) + + // banner + CallingCard card = PlayerCallingCard_GetActive( player ) + if ( IsItemLocked( player, card.ref ) ) + { + printt( "- BANNER CARD IS LOCKED, RESETTING" ) + PlayerCallingCard_SetActiveByRef( player, "callsign_16_col" ) // copied from _persistentdata.gnut + } + + // patch + CallsignIcon icon = PlayerCallsignIcon_GetActive( player ) + if ( IsItemLocked( player, icon.ref ) ) + { + printt( "- BANNER PATCH IS LOCKED, RESETTING" ) + PlayerCallsignIcon_SetActiveByRef( player, "gc_icon_titanfall" ) // copied from _persistentdata.gnut + } + + // faction + int factionIndex = player.GetPersistentVarAsInt( "factionChoice" ) + string factionRef = PersistenceGetEnumItemNameForIndex( "faction", factionIndex ) + if ( IsItemLocked( player, factionRef ) ) + { + printt( "- FACTION IS LOCKED, RESETTING" ) + player.SetPersistentVar( "factionChoice", "faction_marauder" ) // im so sorry that i am setting you to use sarah, you don't deserve this + } + + // boost + BurnReward reward = BurnReward_GetById( player.GetPersistentVarAsInt( "burnmeterSlot" ) ) + if ( IsItemLocked( player, reward.ref ) ) + { + printt( "- BOOST IS LOCKED, RESETTING" ) + player.SetPersistentVar( "burnmeterSlot", BurnReward_GetByRef( "burnmeter_amped_weapons" ).id ) + } + + // titan loadouts + for ( int titanLoadoutIndex = 0; titanLoadoutIndex < NUM_PERSISTENT_TITAN_LOADOUTS; titanLoadoutIndex++ ) + { + printt( "- VALIDATING TITAN LOADOUT: " + titanLoadoutIndex ) + + bool isSelected = titanLoadoutIndex == player.GetPersistentVarAsInt( "titanSpawnLoadout.index" ) + TitanLoadoutDef loadout = GetTitanLoadout( player, titanLoadoutIndex ) + TitanLoadoutDef defaultLoadout = shGlobal.defaultTitanLoadouts[titanLoadoutIndex] + + printt( " - CHASSIS: " + loadout.titanClass ) + + // passive1 - "Titan Kit" (things like overcore) + if ( loadout.passive1 != defaultLoadout.passive1 && IsSubItemLocked( player, loadout.passive1, loadout.titanClass ) ) + { + printt( " - TITAN KIT EQUIPPED WHEN LOCKED, RESETTING" ) + player.SetPersistentVar( "titanLoadouts[" + titanLoadoutIndex + "].passive1", defaultLoadout.passive1 ) + } + + // passive2 - "<chassis> Kit" (things like zero point tripwire) + if ( loadout.passive2 != defaultLoadout.passive2 && IsSubItemLocked( player, loadout.passive2, loadout.titanClass ) ) + { + printt( " - CHASSIS KIT EQUIPPED WHEN LOCKED, RESETTING" ) + player.SetPersistentVar( "titanLoadouts[" + titanLoadoutIndex + "].passive2", defaultLoadout.passive2 ) + } + + // passive3 - "Titanfall Kit" (warpfall/dome shield) + if ( loadout.passive3 != defaultLoadout.passive3 && IsSubItemLocked( player, loadout.passive3, loadout.titanClass ) ) + { + printt( " - TITANFALL KIT EQUIPPED WHEN LOCKED, RESETTING" ) + player.SetPersistentVar( "titanLoadouts[" + titanLoadoutIndex + "].passive3", defaultLoadout.passive3 ) + } + + // passive4 - monarch core 1 + if ( loadout.passive4 != defaultLoadout.passive4 && IsSubItemLocked( player, loadout.passive4, loadout.titanClass ) ) + { + printt( " - MONARCH CORE 1 KIT EQUIPPED WHEN LOCKED, RESETTING" ) + player.SetPersistentVar( "titanLoadouts[" + titanLoadoutIndex + "].passive4", defaultLoadout.passive4 ) + } + + // passive5 - monarch core 2 + if ( loadout.passive5 != defaultLoadout.passive5 && IsSubItemLocked( player, loadout.passive5, loadout.titanClass ) ) + { + printt( " - MONARCH CORE 2 KIT EQUIPPED WHEN LOCKED, RESETTING" ) + player.SetPersistentVar( "titanLoadouts[" + titanLoadoutIndex + "].passive5", defaultLoadout.passive5 ) + } + + // passive6 - monarch core 3 + if ( loadout.passive6 != defaultLoadout.passive6 && IsSubItemLocked( player, loadout.passive6, loadout.titanClass ) ) + { + printt( " - MONARCH CORE 3 KIT EQUIPPED WHEN LOCKED, RESETTING" ) + player.SetPersistentVar( "titanLoadouts[" + titanLoadoutIndex + "].passive6", defaultLoadout.passive6 ) + } + + // titanExecution + if ( !IsRefValid( loadout.titanExecution ) || !IsValidTitanExecution( titanLoadoutIndex, "titanExecution", "", loadout.titanExecution ) ) + { + printt( " - TITAN EXECUTION IS INVALID FOR CHASSIS, RESETTING" ) + player.SetPersistentVar( "titanLoadouts[" + titanLoadoutIndex + "].titanExecution", defaultLoadout.titanExecution ) + } + else if ( IsItemLocked( player, loadout.titanExecution ) ) + { + printt( " - TITAN EXECUTION EQUIPPED WHEN LOCKED, RESETTING" ) + player.SetPersistentVar( "titanLoadouts[" + titanLoadoutIndex + "].titanExecution", defaultLoadout.titanExecution ) + } + else if ( GetItemData( loadout.titanExecution ).reqPrime && IsItemLocked( player, loadout.primeTitanRef ) ) + { + printt( " - PRIME TITAN EXECUTION EQUIPPED WHEN PRIME TITAN IS LOCKED, RESETTING" ) + player.SetPersistentVar( "titanLoadouts[" + titanLoadoutIndex + "].titanExecution", defaultLoadout.titanExecution ) + } + + // skinIndex + // camoIndex + if ( loadout.skinIndex == TITAN_SKIN_INDEX_CAMO ) + { + array<ItemData> camoSkins = GetAllItemsOfType( eItemTypes.CAMO_SKIN ) + if ( loadout.camoIndex >= camoSkins.len() || loadout.camoIndex < 0 ) + { + printt( " - INVALID TITAN CAMO/SKIN, RESETTING" ) + player.SetPersistentVar( "titanLoadouts[" + titanLoadoutIndex + "].skinIndex", defaultLoadout.skinIndex ) + player.SetPersistentVar( "titanLoadouts[" + titanLoadoutIndex + "].camoIndex", defaultLoadout.camoIndex ) + } + else + { + ItemData camoSkin = camoSkins[loadout.camoIndex] + if ( IsSubItemLocked( player, camoSkin.ref, loadout.titanClass ) ) + { + printt( " - TITAN CAMO/SKIN EQUIPPED WHEN LOCKED, RESETTING" ) + player.SetPersistentVar( "titanLoadouts[" + titanLoadoutIndex + "].skinIndex", defaultLoadout.skinIndex ) + player.SetPersistentVar( "titanLoadouts[" + titanLoadoutIndex + "].camoIndex", defaultLoadout.camoIndex ) + } + } + } + else if ( loadout.skinIndex == 0 ) + { + if ( loadout.camoIndex != 0 ) + { + printt( " - INVALID TITAN CAMO/SKIN, RESETTING" ) + player.SetPersistentVar( "titanLoadouts[" + titanLoadoutIndex + "].skinIndex", defaultLoadout.skinIndex ) + player.SetPersistentVar( "titanLoadouts[" + titanLoadoutIndex + "].camoIndex", defaultLoadout.camoIndex ) + } + } + else + { + string ref = GetSkinRefFromTitanClassAndPersistenceValue( loadout.titanClass, loadout.skinIndex ) + if ( ref == INVALID_REF ) + { + printt( " - INVALID TITAN WARPAINT, RESETTING" ) + player.SetPersistentVar( "titanLoadouts[" + titanLoadoutIndex + "].skinIndex", defaultLoadout.skinIndex ) + player.SetPersistentVar( "titanLoadouts[" + titanLoadoutIndex + "].camoIndex", defaultLoadout.camoIndex ) + } + else if ( IsSubItemLocked( player, ref, loadout.titanClass ) ) + { + printt( " - TITAN WARPAINT EQUIPPED WHEN LOCKED, RESETTING" ) + player.SetPersistentVar( "titanLoadouts[" + titanLoadoutIndex + "].skinIndex", defaultLoadout.skinIndex ) + player.SetPersistentVar( "titanLoadouts[" + titanLoadoutIndex + "].camoIndex", defaultLoadout.camoIndex ) + } + } + + // decalIndex + string noseArtRef = GetNoseArtRefFromTitanClassAndPersistenceValue( loadout.titanClass, loadout.decalIndex ) + if ( loadout.decalIndex != defaultLoadout.decalIndex && IsSubItemLocked( player, noseArtRef, loadout.titanClass ) ) + { + printt( " - NOSE ART EQUIPPED WHEN LOCKED, RESETTING" ) + player.SetPersistentVar( "titanLoadouts[" + titanLoadoutIndex + "].decalIndex", defaultLoadout.decalIndex ) + } + + // primarySkinIndex + // primaryCamoIndex + if ( loadout.primarySkinIndex == WEAPON_SKIN_INDEX_CAMO ) + { + array<ItemData> camoSkins = GetAllItemsOfType( eItemTypes.CAMO_SKIN ) + if ( loadout.primaryCamoIndex >= camoSkins.len() || loadout.primaryCamoIndex < 0 ) + { + printt( " - INVALID WEAPON CAMO/SKIN, RESETTING" ) + player.SetPersistentVar( "titanLoadouts[" + titanLoadoutIndex + "].primarySkinIndex", defaultLoadout.primarySkinIndex ) + player.SetPersistentVar( "titanLoadouts[" + titanLoadoutIndex + "].primaryCamoIndex", defaultLoadout.primaryCamoIndex ) + } + else + { + ItemData camoSkin = camoSkins[loadout.primaryCamoIndex] + if ( IsSubItemLocked( player, camoSkin.ref, loadout.titanClass ) ) + { + printt( " - WEAPON CAMO/SKIN EQUIPPED WHEN LOCKED, RESETTING" ) + player.SetPersistentVar( "titanLoadouts[" + titanLoadoutIndex + "].primarySkinIndex", defaultLoadout.primarySkinIndex ) + player.SetPersistentVar( "titanLoadouts[" + titanLoadoutIndex + "].primaryCamoIndex", defaultLoadout.primaryCamoIndex ) + } + } + } + else if ( loadout.primarySkinIndex == 0 && loadout.primaryCamoIndex != 0 ) + { + // titan weapons do not have skins, if we ever do add them lots of stuff will + //need a refactor outside of here so with that being said, i cannot be bothered + printt( " - INVALID WEAPON CAMO/SKIN, RESETTING" ) + player.SetPersistentVar( "titanLoadouts[" + titanLoadoutIndex + "].primarySkinIndex", defaultLoadout.primarySkinIndex ) + player.SetPersistentVar( "titanLoadouts[" + titanLoadoutIndex + "].primaryCamoIndex", defaultLoadout.primaryCamoIndex ) + } + + + // isPrime + if ( loadout.isPrime == "titan_is_prime" && IsItemLocked( player, loadout.primeTitanRef ) ) + { + printt( " - PRIME TITAN EQUIPPED WHEN LOCKED, RESETTING" ) + player.SetPersistentVar( "titanLoadouts[" + titanLoadoutIndex + "].isPrime", defaultLoadout.isPrime ) + } + + // primeSkinIndex + // primeCamoIndex + if ( loadout.primeSkinIndex == TITAN_SKIN_INDEX_CAMO ) + { + array<ItemData> camoSkins = GetAllItemsOfType( eItemTypes.CAMO_SKIN ) + if ( loadout.primeCamoIndex >= camoSkins.len() || loadout.primeCamoIndex < 0 ) + { + printt( " - INVALID TITAN CAMO/SKIN, RESETTING" ) + player.SetPersistentVar( "titanLoadouts[" + titanLoadoutIndex + "].primeSkinIndex", defaultLoadout.primeSkinIndex ) + player.SetPersistentVar( "titanLoadouts[" + titanLoadoutIndex + "].primeCamoIndex", defaultLoadout.primeCamoIndex ) + } + else + { + ItemData camoSkin = camoSkins[loadout.primeCamoIndex] + if ( IsSubItemLocked( player, camoSkin.ref, loadout.titanClass ) ) + { + printt( " - TITAN CAMO/SKIN EQUIPPED WHEN LOCKED, RESETTING" ) + player.SetPersistentVar( "titanLoadouts[" + titanLoadoutIndex + "].primeSkinIndex", defaultLoadout.primeSkinIndex ) + player.SetPersistentVar( "titanLoadouts[" + titanLoadoutIndex + "].primeCamoIndex", defaultLoadout.primeCamoIndex ) + } + } + } + else if ( loadout.primeSkinIndex == 0 ) + { + if ( loadout.primeCamoIndex != 0 ) + { + printt( " - INVALID TITAN CAMO/SKIN, RESETTING" ) + player.SetPersistentVar( "titanLoadouts[" + titanLoadoutIndex + "].primeSkinIndex", defaultLoadout.primeSkinIndex ) + player.SetPersistentVar( "titanLoadouts[" + titanLoadoutIndex + "].primeCamoIndex", defaultLoadout.primeCamoIndex ) + } + } + else + { + printt( " - INVALID PRIME TITAN SKIN, RESETTING" ) + player.SetPersistentVar( "titanLoadouts[" + titanLoadoutIndex + "].primeSkinIndex", defaultLoadout.primeSkinIndex ) + player.SetPersistentVar( "titanLoadouts[" + titanLoadoutIndex + "].primeCamoIndex", defaultLoadout.primeCamoIndex ) + } + + // primeDecalIndex + string primeNoseArtRef = GetNoseArtRefFromTitanClassAndPersistenceValue( loadout.titanClass, loadout.primeDecalIndex ) + if ( loadout.primeDecalIndex != defaultLoadout.primeDecalIndex && IsSubItemLocked( player, primeNoseArtRef, loadout.titanClass ) ) + { + printt( " - PRIME NOSE ART EQUIPPED WHEN LOCKED, RESETTING" ) + player.SetPersistentVar( "titanLoadouts[" + titanLoadoutIndex + "].primeDecalIndex", defaultLoadout.primeDecalIndex ) + } + + // showArmBadge - equipped and shouldnt be able to + if ( loadout.showArmBadge && !CanEquipArmBadge( player, loadout.titanClass ) ) + { + printt( " - ARM BADGE EQUIPPED WHEN LOCKED, RESETTING" ) + player.SetPersistentVar( "titanLoadouts[" + titanLoadoutIndex + "].showArmBadge", defaultLoadout.showArmBadge ) + } + + // equipped titan loadout - equipped titan class is locked + if ( isSelected && IsItemLocked( player, loadout.titanClass ) ) + { + printt( " - SELECTED TITAN CLASS IS LOCKED, RESETTING" ) + player.SetPersistentVar( "titanSpawnLoadout.index", 0 ) + Remote_CallFunction_NonReplay( player, "ServerCallback_UpdateTitanModel", 0 ) + } + } + + Remote_CallFunction_NonReplay( player, "ServerCallback_UpdateTitanModel", player.GetPersistentVarAsInt( "titanSpawnLoadout.index" ) ) + + // pilot loadouts + for ( int pilotLoadoutIndex = 0; pilotLoadoutIndex < NUM_PERSISTENT_PILOT_LOADOUTS; pilotLoadoutIndex++ ) + { + printt( "- VALIDATING PILOT LOADOUT: " + pilotLoadoutIndex ) + + bool isSelected = pilotLoadoutIndex == player.GetPersistentVarAsInt( "pilotSpawnLoadout.index" ) + PilotLoadoutDef loadout = GetPilotLoadout( player, pilotLoadoutIndex ) + PilotLoadoutDef defaultLoadout = shGlobal.defaultPilotLoadouts[pilotLoadoutIndex] + + // note: for readability, I have added {} around the different items, + // so that you can collapse them in visual studio code (and other good IDEs) + + // tactical + { + if ( !IsRefValid( loadout.suit ) ) + { + printt( " - TACTICAL IS INVALID, RESETTING" ) + player.SetPersistentVar( "pilotLoadouts[" + pilotLoadoutIndex + "].suit", defaultLoadout.suit ) + } + else if ( IsItemLocked( player, loadout.suit ) ) + { + printt( " - TACTICAL IS LOCKED, RESETTING" ) + player.SetPersistentVar( "pilotLoadouts[" + pilotLoadoutIndex + "].suit", defaultLoadout.suit ) + } + } + + // ordnance + { + if ( !IsRefValid( loadout.ordnance ) ) + { + printt( " - ORDNANCE IS INVALID, RESETTING" ) + player.SetPersistentVar( "pilotLoadouts[" + pilotLoadoutIndex + "].ordnance", defaultLoadout.ordnance ) + } + else if ( IsItemLocked( player, loadout.ordnance ) ) + { + printt( " - ORDNANCE IS LOCKED, RESETTING" ) + player.SetPersistentVar( "pilotLoadouts[" + pilotLoadoutIndex + "].ordnance", defaultLoadout.ordnance ) + } + } + + // race ( gender ) + { + if ( !IsRefValid( loadout.race ) ) + { + printt( " - GENDER IS INVALID, RESETTING" ) + player.SetPersistentVar( "pilotLoadouts[" + pilotLoadoutIndex + "].race", defaultLoadout.race ) + } + else if ( IsItemLocked( player, loadout.race ) ) + { + printt( " - GENDER IS LOCKED, RESETTING" ) + player.SetPersistentVar( "pilotLoadouts[" + pilotLoadoutIndex + "].race", defaultLoadout.race ) + } + } + + // camoIndex + // skinIndex + { + if ( loadout.skinIndex == PILOT_SKIN_INDEX_CAMO ) + { + array<ItemData> camoSkins = GetAllItemsOfType( eItemTypes.CAMO_SKIN_PILOT ) + if ( loadout.camoIndex >= camoSkins.len() || loadout.camoIndex < 0 ) + { + printt( " - INVALID PILOT CAMO/SKIN, RESETTING" ) + player.SetPersistentVar( "pilotLoadouts[" + pilotLoadoutIndex + "].skinIndex", defaultLoadout.skinIndex ) + player.SetPersistentVar( "pilotLoadouts[" + pilotLoadoutIndex + "].camoIndex", defaultLoadout.camoIndex ) + } + else + { + ItemData camoSkin = camoSkins[loadout.camoIndex] + if ( IsItemLocked( player, camoSkin.ref ) ) + { + printt( " - PILOT CAMO/SKIN EQUIPPED WHEN LOCKED, RESETTING" ) + player.SetPersistentVar( "pilotLoadouts[" + pilotLoadoutIndex + "].skinIndex", defaultLoadout.skinIndex ) + player.SetPersistentVar( "pilotLoadouts[" + pilotLoadoutIndex + "].camoIndex", defaultLoadout.camoIndex ) + } + } + } + else if ( loadout.skinIndex == 0 ) + { + if ( loadout.camoIndex != 0 ) + { + printt( " - INVALID PILOT CAMO/SKIN, RESETTING" ) + player.SetPersistentVar( "pilotLoadouts[" + pilotLoadoutIndex + "].skinIndex", defaultLoadout.skinIndex ) + player.SetPersistentVar( "pilotLoadouts[" + pilotLoadoutIndex + "].camoIndex", defaultLoadout.camoIndex ) + } + } + else + { + // pilots can't have skins other than 0 and 1 right? + printt( " - INVALID PILOT SKIN, RESETTING" ) + player.SetPersistentVar( "pilotLoadouts[" + pilotLoadoutIndex + "].skinIndex", defaultLoadout.skinIndex ) + player.SetPersistentVar( "pilotLoadouts[" + pilotLoadoutIndex + "].camoIndex", defaultLoadout.camoIndex ) + } + } + + // primary weapon + { + if ( !IsRefValid( loadout.primary ) || GetItemType( loadout.primary ) != eItemTypes.PILOT_PRIMARY ) + { + printt( " - PRIMARY WEAPON IS LOCKED, RESETTING" ) + player.SetPersistentVar( "pilotLoadouts[" + pilotLoadoutIndex + "].primary", defaultLoadout.primary ) + } + else if ( IsItemLocked( player, loadout.primary ) ) + { + printt( " - PRIMARY WEAPON IS LOCKED, RESETTING" ) + player.SetPersistentVar( "pilotLoadouts[" + pilotLoadoutIndex + "].primary", defaultLoadout.primary ) + } + } + + // primary weapon mods + { + // mod1 + if ( loadout.primaryMod1 == "" ) + { + // do nothing + } + else if ( !HasSubitem( loadout.primary, loadout.primaryMod1 ) ) + { + printt( " - PRIMARY WEAPON MOD 1 IS INVALID, RESETTING" ) + player.SetPersistentVar( "pilotLoadouts[" + pilotLoadoutIndex + "].primaryMod1", defaultLoadout.primaryMod1 ) + } + else if ( IsSubItemLocked( player, loadout.primaryMod1, loadout.primary ) ) + { + printt( " - PRIMARY WEAPON MOD 1 IS LOCKED, RESETTING" ) + player.SetPersistentVar( "pilotLoadouts[" + pilotLoadoutIndex + "].primaryMod1", defaultLoadout.primaryMod1 ) + } + // mod2 + if ( loadout.primaryMod2 == "" ) + { + // do nothing + } + else if ( IsSubItemLocked( player, "primarymod2", loadout.primary ) ) + { + printt( " - PRIMARY WEAPON MOD 2 SLOT IS LOCKED, RESETTING" ) + player.SetPersistentVar( "pilotLoadouts[" + pilotLoadoutIndex + "].primaryMod2", defaultLoadout.primaryMod2 ) + } + else if ( !HasSubitem( loadout.primary, loadout.primaryMod2 ) ) + { + printt( " - PRIMARY WEAPON MOD 2 IS INVALID, RESETTING" ) + player.SetPersistentVar( "pilotLoadouts[" + pilotLoadoutIndex + "].primaryMod2", defaultLoadout.primaryMod2 ) + } + else if ( IsSubItemLocked( player, loadout.primaryMod2, loadout.primary ) ) + { + printt( " - PRIMARY WEAPON MOD 2 IS LOCKED, RESETTING" ) + player.SetPersistentVar( "pilotLoadouts[" + pilotLoadoutIndex + "].primaryMod2", defaultLoadout.primaryMod2 ) + } + else if ( loadout.primaryMod2 == loadout.primaryMod1 && loadout.primaryMod2 != "" ) + { + printt( " - PRIMARY WEAPON MOD 2 IS DUPLICATE, RESETTING" ) + player.SetPersistentVar( "pilotLoadouts[" + pilotLoadoutIndex + "].primaryMod2", defaultLoadout.primaryMod2 ) + } + else if ( loadout.primaryAttachment == "threat_scope" ) + { + printt( " - PRIMARY WEAPON MOD 2 IS SET WITH THREAT SCOPE, RESETTING" ) + player.SetPersistentVar( "pilotLoadouts[" + pilotLoadoutIndex + "].primaryMod2", defaultLoadout.primaryMod2 ) + } + // attachment + if ( loadout.primaryAttachment == "" ) + { + // do nothing + } + else if ( !HasSubitem( loadout.primary, loadout.primaryAttachment ) ) + { + printt( " - PRIMARY WEAPON ATTACHMENT IS INVALID, RESETTING" ) + player.SetPersistentVar( "pilotLoadouts[" + pilotLoadoutIndex + "].primaryAttachment", defaultLoadout.primaryAttachment ) + } + else if ( IsSubItemLocked( player, loadout.primaryAttachment, loadout.primary ) ) + { + printt( " - PRIMARY WEAPON ATTACHMENT IS LOCKED, RESETTING" ) + player.SetPersistentVar( "pilotLoadouts[" + pilotLoadoutIndex + "].primaryAttachment", defaultLoadout.primaryAttachment ) + } + // mod3 (pro screen) + if ( loadout.primaryMod3 == "" ) + { + // do nothing + } + else if ( loadout.primaryMod3 == "pro_screen" ) + { + // fuck you and your three mod slot stuff + printt( " - PRIMARY WEAPON PRO SCREEN IS INVALID, RESETTING" ) + player.SetPersistentVar( "pilotLoadouts[" + pilotLoadoutIndex + "].primaryMod3", defaultLoadout.primaryMod3 ) + } + else if ( IsSubItemLocked( player, loadout.primaryMod3, loadout.primary ) ) + { + printt( " - PRIMARY WEAPON PRO SCREEN IS LOCKED, RESETTING" ) + player.SetPersistentVar( "pilotLoadouts[" + pilotLoadoutIndex + "].primaryMod3", defaultLoadout.primaryMod3 ) + } + } + + // primary weapon camoIndex + // primary weapon skinIndex + { + if ( loadout.primarySkinIndex == WEAPON_SKIN_INDEX_CAMO ) + { + array<ItemData> camoSkins = GetAllItemsOfType( eItemTypes.CAMO_SKIN ) + if ( loadout.primaryCamoIndex >= camoSkins.len() || loadout.primaryCamoIndex < 0 ) + { + printt( " - INVALID PRIMARY WEAPON CAMO/SKIN, RESETTING" ) + player.SetPersistentVar( "pilotLoadouts[" + pilotLoadoutIndex + "].primarySkinIndex", defaultLoadout.primarySkinIndex ) + player.SetPersistentVar( "pilotLoadouts[" + pilotLoadoutIndex + "].primaryCamoIndex", defaultLoadout.primaryCamoIndex ) + } + else + { + ItemData camoSkin = camoSkins[loadout.primaryCamoIndex] + if ( IsSubItemLocked( player, camoSkin.ref, loadout.primary ) ) + { + printt( " - PRIMARY WEAPON CAMO/SKIN EQUIPPED WHEN LOCKED, RESETTING" ) + player.SetPersistentVar( "pilotLoadouts[" + pilotLoadoutIndex + "].primarySkinIndex", defaultLoadout.primarySkinIndex ) + player.SetPersistentVar( "pilotLoadouts[" + pilotLoadoutIndex + "].primaryCamoIndex", defaultLoadout.primaryCamoIndex ) + } + } + } + else if ( loadout.primarySkinIndex == 0 ) + { + if ( loadout.primaryCamoIndex != 0 ) + { + printt( " - INVALID PRIMARY WEAPON CAMO/SKIN, RESETTING" ) + player.SetPersistentVar( "pilotLoadouts[" + pilotLoadoutIndex + "].primarySkinIndex", defaultLoadout.primarySkinIndex ) + player.SetPersistentVar( "pilotLoadouts[" + pilotLoadoutIndex + "].primaryCamoIndex", defaultLoadout.primaryCamoIndex ) + } + } + else + { + string warpaintRef = GetWeaponWarpaintRefByIndex( loadout.primarySkinIndex, loadout.primary ) + if ( warpaintRef == INVALID_REF || IsSubItemLocked( player, warpaintRef, loadout.primary ) ) + { + printt( " - PRIMARY WEAPON SKIN LOCKED/INVALID, RESETTING" ) + player.SetPersistentVar( "pilotLoadouts[" + pilotLoadoutIndex + "].primarySkinIndex", defaultLoadout.primarySkinIndex ) + player.SetPersistentVar( "pilotLoadouts[" + pilotLoadoutIndex + "].primaryCamoIndex", defaultLoadout.primaryCamoIndex ) + } + } + } + + // secondary weapon + { + if ( !IsRefValid( loadout.secondary ) || GetItemType( loadout.secondary ) != eItemTypes.PILOT_SECONDARY ) + { + printt( " - SECONDARY WEAPON IS LOCKED, RESETTING" ) + string ref = defaultLoadout.secondary + if ( loadout.secondary == ref ) // item dupes swap + { + ref = defaultLoadout.weapon3 + } + else if ( ItemsInSameMenuCategory( loadout.secondary, ref ) ) // category dupes assign value to other slot and swap + { + ref = defaultLoadout.weapon3 + } + player.SetPersistentVar( "pilotLoadouts[" + pilotLoadoutIndex + "].secondary", ref ) + } + else if ( IsItemLocked( player, loadout.secondary ) ) + { + printt( " - SECONDARY WEAPON IS LOCKED, RESETTING" ) + string ref = defaultLoadout.secondary + if ( loadout.weapon3 == ref ) // item dupes swap + { + ref = defaultLoadout.weapon3 + } + else if ( ItemsInSameMenuCategory( loadout.weapon3, ref ) ) // category dupes assign value to other slot and swap + { + ref = defaultLoadout.weapon3 + } + + player.SetPersistentVar( "pilotLoadouts[" + pilotLoadoutIndex + "].secondary", ref ) + } + } + + // secondary weapon mods + { + // mod1 + if ( loadout.secondaryMod1 == "" ) + { + // do nothing + } + else if ( !HasSubitem( loadout.secondary, loadout.secondaryMod1 ) ) + { + printt( " - SECONDARY WEAPON MOD 1 IS INVALID, RESETTING" ) + player.SetPersistentVar( "pilotLoadouts[" + pilotLoadoutIndex + "].secondaryMod1", defaultLoadout.secondaryMod1 ) + } + else if ( IsSubItemLocked( player, loadout.secondaryMod1, loadout.secondary ) ) + { + printt( " - SECONDARY WEAPON MOD 1 IS LOCKED, RESETTING" ) + player.SetPersistentVar( "pilotLoadouts[" + pilotLoadoutIndex + "].secondaryMod1", defaultLoadout.secondaryMod1 ) + } + // mod2 + if ( loadout.secondaryMod2 == "" ) + { + // do nothing + } + else if ( IsSubItemLocked( player, "secondarymod2", loadout.secondary ) ) + { + printt( " - SECONDARY WEAPON MOD 2 SLOT IS LOCKED, RESETTING" ) + player.SetPersistentVar( "pilotLoadouts[" + pilotLoadoutIndex + "].secondaryMod2", defaultLoadout.secondaryMod2 ) + } + else if ( !HasSubitem( loadout.secondary, loadout.secondaryMod2 ) ) + { + printt( " - SECONDARY WEAPON MOD 2 IS INVALID, RESETTING" ) + player.SetPersistentVar( "pilotLoadouts[" + pilotLoadoutIndex + "].secondaryMod2", defaultLoadout.secondaryMod2 ) + } + else if ( IsSubItemLocked( player, loadout.secondaryMod2, loadout.secondary ) ) + { + printt( " - SECONDARY WEAPON MOD 2 IS LOCKED, RESETTING" ) + player.SetPersistentVar( "pilotLoadouts[" + pilotLoadoutIndex + "].secondaryMod2", defaultLoadout.secondaryMod2 ) + } + else if ( loadout.secondaryMod2 == loadout.secondaryMod1 && loadout.secondaryMod2 != "" ) + { + printt( " - SECONDARY WEAPON MOD 2 IS DUPLICATE, RESETTING" ) + player.SetPersistentVar( "pilotLoadouts[" + pilotLoadoutIndex + "].secondaryMod2", defaultLoadout.secondaryMod2 ) + } + // mod3 (pro screen) + if ( loadout.secondaryMod3 == "" ) + { + // do nothing + } + else if ( loadout.secondaryMod3 == "pro_screen" ) + { + // fuck you and your three mod slot stuff + printt( " - SECONDARY WEAPON PRO SCREEN IS INVALID, RESETTING" ) + player.SetPersistentVar( "pilotLoadouts[" + pilotLoadoutIndex + "].secondaryMod3", defaultLoadout.secondaryMod3 ) + } + else if ( IsSubItemLocked( player, "secondarymod3", loadout.secondary ) ) + { + printt( " - SECONDARY WEAPON PRO SCREEN IS LOCKED, RESETTING" ) + player.SetPersistentVar( "pilotLoadouts[" + pilotLoadoutIndex + "].secondaryMod3", defaultLoadout.secondaryMod3 ) + } + } + + // secondary weapon camoIndex + // secondary weapon skinIndex + { + if ( loadout.secondarySkinIndex == WEAPON_SKIN_INDEX_CAMO ) + { + array<ItemData> camoSkins = GetAllItemsOfType( eItemTypes.CAMO_SKIN ) + if ( loadout.secondaryCamoIndex >= camoSkins.len() || loadout.secondaryCamoIndex < 0 ) + { + printt( " - INVALID SECONDARY WEAPON CAMO/SKIN, RESETTING" ) + player.SetPersistentVar( "pilotLoadouts[" + pilotLoadoutIndex + "].secondarySkinIndex", defaultLoadout.secondarySkinIndex ) + player.SetPersistentVar( "pilotLoadouts[" + pilotLoadoutIndex + "].secondaryCamoIndex", defaultLoadout.secondaryCamoIndex ) + } + else + { + ItemData camoSkin = camoSkins[loadout.secondaryCamoIndex] + if ( IsSubItemLocked( player, camoSkin.ref, loadout.secondary ) ) + { + printt( " - SECONDARY WEAPON CAMO/SKIN EQUIPPED WHEN LOCKED, RESETTING" ) + player.SetPersistentVar( "pilotLoadouts[" + pilotLoadoutIndex + "].secondarySkinIndex", defaultLoadout.secondarySkinIndex ) + player.SetPersistentVar( "pilotLoadouts[" + pilotLoadoutIndex + "].secondaryCamoIndex", defaultLoadout.secondaryCamoIndex ) + } + } + } + else if ( loadout.secondarySkinIndex == 0 ) + { + if ( loadout.secondaryCamoIndex != 0 ) + { + printt( " - INVALID SECONDARY WEAPON CAMO/SKIN, RESETTING" ) + player.SetPersistentVar( "pilotLoadouts[" + pilotLoadoutIndex + "].secondarySkinIndex", defaultLoadout.secondarySkinIndex ) + player.SetPersistentVar( "pilotLoadouts[" + pilotLoadoutIndex + "].secondaryCamoIndex", defaultLoadout.secondaryCamoIndex ) + } + } + else + { + string warpaintRef = GetWeaponWarpaintRefByIndex( loadout.secondarySkinIndex, loadout.secondary ) + if ( warpaintRef == INVALID_REF || IsSubItemLocked( player, warpaintRef, loadout.secondary ) ) + { + printt( " - SECONDARY WEAPON SKIN LOCKED/INVALID, RESETTING" ) + player.SetPersistentVar( "pilotLoadouts[" + pilotLoadoutIndex + "].secondarySkinIndex", defaultLoadout.secondarySkinIndex ) + player.SetPersistentVar( "pilotLoadouts[" + pilotLoadoutIndex + "].secondaryCamoIndex", defaultLoadout.secondaryCamoIndex ) + } + } + } + + // weapon3 + // note: these are always eItemTypes.PILOT_SECONDARY + { + if ( !IsRefValid( loadout.weapon3 ) || GetItemType( loadout.weapon3 ) != eItemTypes.PILOT_SECONDARY ) + { + printt( " - WEAPON3 WEAPON IS LOCKED, RESETTING" ) + string ref = defaultLoadout.weapon3 + if ( loadout.weapon3 == ref ) // item dupes swap + { + ref = defaultLoadout.secondary + } + else if ( ItemsInSameMenuCategory( loadout.weapon3, ref ) ) // category dupes assign value to other slot and swap + { + ref = defaultLoadout.secondary + } + player.SetPersistentVar( "pilotLoadouts[" + pilotLoadoutIndex + "].weapon3", ref ) + } + else if ( IsItemLocked( player, loadout.weapon3 ) ) + { + printt( " - TERTIARY WEAPON IS LOCKED, RESETTING" ) + string ref = defaultLoadout.weapon3 + if ( loadout.secondary == ref ) // item dupes swap + { + ref = defaultLoadout.secondary + } + else if ( ItemsInSameMenuCategory( loadout.secondary, ref ) ) // category dupes assign value to other slot and swap + { + ref = defaultLoadout.secondary + } + player.SetPersistentVar( "pilotLoadouts[" + pilotLoadoutIndex + "].weapon3", ref ) + } + } + + // weapon3 mods + { + // mod1 + if ( loadout.weapon3Mod1 == "" ) + { + // do nothing + } + else if ( !HasSubitem( loadout.weapon3, loadout.weapon3Mod1 ) ) + { + printt( " - WEAPON3 MOD 1 IS INVALID, RESETTING" ) + player.SetPersistentVar( "pilotLoadouts[" + pilotLoadoutIndex + "].weapon3Mod1", defaultLoadout.weapon3Mod1 ) + } + else if ( IsSubItemLocked( player, loadout.weapon3Mod1, loadout.weapon3 ) ) + { + printt( " - WEAPON3 MOD 1 IS LOCKED, RESETTING" ) + player.SetPersistentVar( "pilotLoadouts[" + pilotLoadoutIndex + "].weapon3Mod1", defaultLoadout.weapon3Mod1 ) + } + // mod2 + if ( loadout.weapon3Mod2 == "" ) + { + // do nothing + } + else if ( IsSubItemLocked( player, "secondarymod2", loadout.weapon3 ) ) + { + printt( " - WEAPON3 MOD 2 SLOT IS LOCKED, RESETTING" ) + player.SetPersistentVar( "pilotLoadouts[" + pilotLoadoutIndex + "].weapon3Mod2", defaultLoadout.weapon3Mod2 ) + } + else if ( !HasSubitem( loadout.weapon3, loadout.weapon3Mod2 ) ) + { + printt( " - WEAPON3 MOD 2 IS INVALID, RESETTING" ) + player.SetPersistentVar( "pilotLoadouts[" + pilotLoadoutIndex + "].weapon3Mod2", defaultLoadout.weapon3Mod2 ) + } + else if ( IsSubItemLocked( player, loadout.weapon3Mod2, loadout.weapon3 ) ) + { + printt( " - WEAPON3 MOD 2 IS LOCKED, RESETTING" ) + player.SetPersistentVar( "pilotLoadouts[" + pilotLoadoutIndex + "].weapon3Mod2", defaultLoadout.weapon3Mod2 ) + } + else if ( loadout.weapon3Mod2 == loadout.weapon3Mod1 && loadout.weapon3Mod2 != "" ) + { + printt( " - WEAPON3 MOD 2 IS DUPLICATE, RESETTING" ) + player.SetPersistentVar( "pilotLoadouts[" + pilotLoadoutIndex + "].weapon3Mod2", defaultLoadout.weapon3Mod2 ) + } + // mod3 (pro screen) + if ( loadout.weapon3Mod3 == "" ) + { + // do nothing + } + else if ( loadout.weapon3Mod3 != "pro_screen" ) + { + // fuck you and your three mod slot stuff + printt( " - WEAPON3 PRO SCREEN IS INVALID, RESETTING" ) + player.SetPersistentVar( "pilotLoadouts[" + pilotLoadoutIndex + "].weapon3Mod3", defaultLoadout.weapon3Mod3 ) + } + else if ( IsSubItemLocked( player, "secondarymod3", loadout.weapon3 ) ) + { + printt( " - WEAPON3 PRO SCREEN IS LOCKED, RESETTING" ) + player.SetPersistentVar( "pilotLoadouts[" + pilotLoadoutIndex + "].weapon3Mod3", defaultLoadout.weapon3Mod3 ) + } + } + + // weapon3 camoIndex + // weapon3 skinIndex + { + if ( loadout.weapon3SkinIndex == WEAPON_SKIN_INDEX_CAMO ) + { + array<ItemData> camoSkins = GetAllItemsOfType( eItemTypes.CAMO_SKIN ) + if ( loadout.weapon3CamoIndex >= camoSkins.len() || loadout.weapon3CamoIndex < 0 ) + { + printt( " - INVALID TERTIARY WEAPON CAMO/SKIN, RESETTING" ) + player.SetPersistentVar( "pilotLoadouts[" + pilotLoadoutIndex + "].weapon3SkinIndex", defaultLoadout.weapon3SkinIndex ) + player.SetPersistentVar( "pilotLoadouts[" + pilotLoadoutIndex + "].weapon3CamoIndex", defaultLoadout.weapon3CamoIndex ) + } + else + { + ItemData camoSkin = camoSkins[loadout.weapon3CamoIndex] + if ( IsSubItemLocked( player, camoSkin.ref, loadout.weapon3 ) ) + { + printt( " - TERTIARY WEAPON CAMO/SKIN EQUIPPED WHEN LOCKED, RESETTING" ) + player.SetPersistentVar( "pilotLoadouts[" + pilotLoadoutIndex + "].weapon3SkinIndex", defaultLoadout.weapon3SkinIndex ) + player.SetPersistentVar( "pilotLoadouts[" + pilotLoadoutIndex + "].weapon3CamoIndex", defaultLoadout.weapon3CamoIndex ) + } + } + } + else if ( loadout.weapon3SkinIndex == 0 ) + { + if ( loadout.weapon3CamoIndex != 0 ) + { + printt( " - INVALID TERTIARY WEAPON CAMO/SKIN, RESETTING" ) + player.SetPersistentVar( "pilotLoadouts[" + pilotLoadoutIndex + "].weapon3SkinIndex", defaultLoadout.weapon3SkinIndex ) + player.SetPersistentVar( "pilotLoadouts[" + pilotLoadoutIndex + "].weapon3CamoIndex", defaultLoadout.weapon3CamoIndex ) + } + } + else + { + string warpaintRef = GetWeaponWarpaintRefByIndex( loadout.weapon3SkinIndex, loadout.weapon3 ) + if ( warpaintRef == INVALID_REF || IsSubItemLocked( player, warpaintRef, loadout.weapon3 ) ) + { + printt( " - TERTIARY WEAPON SKIN LOCKED/INVALID, RESETTING" ) + player.SetPersistentVar( "pilotLoadouts[" + pilotLoadoutIndex + "].weapon3SkinIndex", defaultLoadout.weapon3SkinIndex ) + player.SetPersistentVar( "pilotLoadouts[" + pilotLoadoutIndex + "].weapon3CamoIndex", defaultLoadout.weapon3CamoIndex ) + } + } + } + + // kit 1 + { + if ( !IsRefValid( loadout.passive1 ) || GetItemType( loadout.passive1 ) != eItemTypes.PILOT_PASSIVE1 ) + { + printt( " - KIT 1 IS INVALID, RESETTING" ) + player.SetPersistentVar( "pilotLoadouts[" + pilotLoadoutIndex + "].passive1", defaultLoadout.passive1 ) + } + else if ( IsItemLocked( player, loadout.passive1 ) ) + { + printt( " - KIT 1 IS LOCKED, RESETTING" ) + player.SetPersistentVar( "pilotLoadouts[" + pilotLoadoutIndex + "].passive1", defaultLoadout.passive1 ) + } + } + + // kit 2 + { + if ( !IsRefValid( loadout.passive2 ) || GetItemType( loadout.passive2 ) != eItemTypes.PILOT_PASSIVE2 ) + { + printt( " - KIT 2 IS INVALID, RESETTING" ) + player.SetPersistentVar( "pilotLoadouts[" + pilotLoadoutIndex + "].passive2", defaultLoadout.passive2 ) + } + else if ( IsItemLocked( player, loadout.passive2 ) ) + { + printt( " - KIT 2 IS LOCKED, RESETTING" ) + player.SetPersistentVar( "pilotLoadouts[" + pilotLoadoutIndex + "].passive2", defaultLoadout.passive2 ) + } + } + + // execution + // note: not sure why defaultLoadout has this set to "", but neck snap should be default + { + if ( !IsRefValid( loadout.execution ) || GetItemType( loadout.execution ) != eItemTypes.PILOT_EXECUTION ) + { + printt( " - EXECUTION IS INVALID, RESETTING" ) + player.SetPersistentVar( "pilotLoadouts[" + pilotLoadoutIndex + "].execution", "execution_neck_snap" ) + } + else if ( IsItemLocked( player, loadout.execution ) ) + { + printt( " - EXECUTION IS LOCKED, RESETTING" ) + player.SetPersistentVar( "pilotLoadouts[" + pilotLoadoutIndex + "].execution", "execution_neck_snap" ) + } + } + + // equipped pilot loadout + { + if ( isSelected && IsItemLocked( player, "pilot_loadout_" + ( pilotLoadoutIndex + 1 ) ) ) + { + printt( " - SELECTED PILOT LOADOUT IS LOCKED, RESETTING" ) + player.SetPersistentVar( "pilotSpawnLoadout.index", 0 ) + Remote_CallFunction_NonReplay( player, "ServerCallback_UpdatePilotModel", 0 ) + } + } + } + + Remote_CallFunction_NonReplay( player, "ServerCallback_UpdatePilotModel", player.GetPersistentVarAsInt( "pilotSpawnLoadout.index" ) ) + + printt( "ITEM VALIDATION COMPLETE FOR PLAYER: " + player.GetPlayerName() ) +} + +// basically just PopulateTitanLoadoutFromPersistentData but without validation, we are doing the validation in a better way +// that doesnt just kick the player and reset the entire loadout, since we want to only reset parts of the loadout that we need +TitanLoadoutDef function GetTitanLoadout( entity player, int loadoutIndex ) +{ + TitanLoadoutDef loadout + + loadout.name = GetPersistentLoadoutValue( player, "titan", loadoutIndex, "name" ) + loadout.titanClass = GetPersistentLoadoutValue( player, "titan", loadoutIndex, "titanClass" ) + loadout.primaryMod = GetPersistentLoadoutValue( player, "titan", loadoutIndex, "primaryMod" ) + loadout.special = GetPersistentLoadoutValue( player, "titan", loadoutIndex, "special" ) + loadout.antirodeo = GetPersistentLoadoutValue( player, "titan", loadoutIndex, "antirodeo" ) + loadout.passive1 = GetPersistentLoadoutValue( player, "titan", loadoutIndex, "passive1" ) + loadout.passive2 = GetPersistentLoadoutValue( player, "titan", loadoutIndex, "passive2" ) + loadout.passive3 = GetPersistentLoadoutValue( player, "titan", loadoutIndex, "passive3" ) + loadout.passive4 = GetPersistentLoadoutValue( player, "titan", loadoutIndex, "passive4" ) + loadout.passive5 = GetPersistentLoadoutValue( player, "titan", loadoutIndex, "passive5" ) + loadout.passive6 = GetPersistentLoadoutValue( player, "titan", loadoutIndex, "passive6" ) + loadout.camoIndex = GetPersistentLoadoutValueInt( player, "titan", loadoutIndex, "camoIndex" ) + loadout.skinIndex = GetPersistentLoadoutValueInt( player, "titan", loadoutIndex, "skinIndex" ) //Important: Skin index needs to be gotten after camoIndex for loadout validation purposes + loadout.decalIndex = GetPersistentLoadoutValueInt( player, "titan", loadoutIndex, "decalIndex" ) + loadout.primaryCamoIndex = GetPersistentLoadoutValueInt( player, "titan", loadoutIndex, "primaryCamoIndex" ) + loadout.primarySkinIndex = GetPersistentLoadoutValueInt( player, "titan", loadoutIndex, "primarySkinIndex" ) //Important: Skin index needs to be gotten after camoIndex for loadout validation purposes + loadout.titanExecution = GetPersistentLoadoutValue( player, "titan", loadoutIndex, "titanExecution" ) + loadout.showArmBadge = GetPersistentLoadoutValueInt( player, "titan", loadoutIndex, "showArmBadge" ) + + //Prime Titan related vars + loadout.isPrime = GetPersistentLoadoutValue( player, "titan", loadoutIndex, "isPrime" ) + loadout.primeCamoIndex = GetPersistentLoadoutValueInt( player, "titan", loadoutIndex, "primeCamoIndex" ) + loadout.primeSkinIndex = GetPersistentLoadoutValueInt( player, "titan", loadoutIndex, "primeSkinIndex" ) //Important: Skin index needs to be gotten after camoIndex for loadout validation purposes + loadout.primeDecalIndex = GetPersistentLoadoutValueInt( player, "titan", loadoutIndex, "primeDecalIndex" ) + + UpdateDerivedTitanLoadoutData( loadout ) + OverwriteLoadoutWithDefaultsForSetFile( loadout ) + + return loadout +} + +// basically just PopulatePilotLoadoutFromPersistentData but without validation, we are doing the validation in a better way +// that doesnt just kick the player and reset the entire loadout, since we want to only reset parts of the loadout that we need +PilotLoadoutDef function GetPilotLoadout( entity player, int loadoutIndex ) +{ + PilotLoadoutDef loadout + + loadout.name = GetPersistentLoadoutValue( player, "pilot", loadoutIndex, "name" ) + loadout.suit = GetPersistentLoadoutValue( player, "pilot", loadoutIndex, "suit" ) + loadout.race = GetPersistentLoadoutValue( player, "pilot", loadoutIndex, "race" ) + loadout.execution = GetPersistentLoadoutValue( player, "pilot", loadoutIndex, "execution" ) + loadout.primary = GetPersistentLoadoutValue( player, "pilot", loadoutIndex, "primary" ) + loadout.primaryAttachment = GetPersistentLoadoutValue( player, "pilot", loadoutIndex, "primaryAttachment" ) + loadout.primaryMod1 = GetPersistentLoadoutValue( player, "pilot", loadoutIndex, "primaryMod1" ) + loadout.primaryMod2 = GetPersistentLoadoutValue( player, "pilot", loadoutIndex, "primaryMod2" ) + loadout.primaryMod3 = GetPersistentLoadoutValue( player, "pilot", loadoutIndex, "primaryMod3" ) + loadout.secondary = GetPersistentLoadoutValue( player, "pilot", loadoutIndex, "secondary" ) + loadout.secondaryMod1 = GetPersistentLoadoutValue( player, "pilot", loadoutIndex, "secondaryMod1" ) + loadout.secondaryMod2 = GetPersistentLoadoutValue( player, "pilot", loadoutIndex, "secondaryMod2" ) + loadout.secondaryMod3 = GetPersistentLoadoutValue( player, "pilot", loadoutIndex, "secondaryMod3" ) + loadout.weapon3 = GetPersistentLoadoutValue( player, "pilot", loadoutIndex, "weapon3" ) + loadout.weapon3Mod1 = GetPersistentLoadoutValue( player, "pilot", loadoutIndex, "weapon3Mod1" ) + loadout.weapon3Mod2 = GetPersistentLoadoutValue( player, "pilot", loadoutIndex, "weapon3Mod2" ) + loadout.weapon3Mod3 = GetPersistentLoadoutValue( player, "pilot", loadoutIndex, "weapon3Mod3" ) + loadout.ordnance = GetPersistentLoadoutValue( player, "pilot", loadoutIndex, "ordnance" ) + loadout.passive1 = GetPersistentLoadoutValue( player, "pilot", loadoutIndex, "passive1" ) + loadout.passive2 = GetPersistentLoadoutValue( player, "pilot", loadoutIndex, "passive2" ) + loadout.camoIndex = GetPersistentLoadoutValueInt( player, "pilot", loadoutIndex, "camoIndex" ) + loadout.skinIndex = GetPersistentLoadoutValueInt( player, "pilot", loadoutIndex, "skinIndex" ) //Important: Skin index needs to be gotten after camoIndex for loadout validation purposes + loadout.primaryCamoIndex = GetPersistentLoadoutValueInt( player, "pilot", loadoutIndex, "primaryCamoIndex" ) + loadout.primarySkinIndex = GetPersistentLoadoutValueInt( player, "pilot", loadoutIndex, "primarySkinIndex" ) //Important: Skin index needs to be gotten after camoIndex for loadout validation purposes + loadout.secondaryCamoIndex = GetPersistentLoadoutValueInt( player, "pilot", loadoutIndex, "secondaryCamoIndex" ) + loadout.secondarySkinIndex = GetPersistentLoadoutValueInt( player, "pilot", loadoutIndex, "secondarySkinIndex" ) //Important: Skin index needs to be gotten after camoIndex for loadout validation purposes + loadout.weapon3CamoIndex = GetPersistentLoadoutValueInt( player, "pilot", loadoutIndex, "weapon3CamoIndex" ) + loadout.weapon3SkinIndex = GetPersistentLoadoutValueInt( player, "pilot", loadoutIndex, "weapon3SkinIndex" ) //Important: Skin index needs to be gotten after camoIndex for loadout validation purposes + + UpdateDerivedPilotLoadoutData( loadout ) + + return loadout +} + +bool function CanEquipArmBadge( entity player, string titanClass ) +{ + string skinRef + switch ( titanClass ) + { + case "ion": + skinRef = "ion_skin_fd" + break + case "scorch": + skinRef = "scorch_skin_fd" + break + case "northstar": + skinRef = "northstar_skin_fd" + break + case "ronin": + skinRef = "ronin_skin_fd" + break + case "tone": + skinRef = "tone_skin_fd" + break + case "legion": + skinRef = "legion_skin_fd" + break + case "vanguard": + skinRef = "monarch_skin_fd" + break + } + + return !IsSubItemLocked( player, skinRef, titanClass ) +} + +string function GetWeaponWarpaintRefByIndex( int skinIndex, string parentRef ) +{ + ItemData parentItem = GetItemData( parentRef ) + foreach ( subItem in parentItem.subitems ) + { + if ( GetSubitemType( parentRef, subItem.ref ) != eItemTypes.WEAPON_SKIN ) + continue + if ( subItem.i.skinIndex != skinIndex ) + continue + + return subItem.ref + } + + return INVALID_REF +} +#endif // SERVER + +#endif // MP diff --git a/Northstar.CustomServers/mod/scripts/vscripts/sh_utility_all.gnut b/Northstar.CustomServers/mod/scripts/vscripts/sh_utility_all.gnut index 7f356a18..9e762985 100644 --- a/Northstar.CustomServers/mod/scripts/vscripts/sh_utility_all.gnut +++ b/Northstar.CustomServers/mod/scripts/vscripts/sh_utility_all.gnut @@ -362,7 +362,7 @@ string function StringReplace( string baseString, string searchString, string re source = part1 + replaceString + part2 loopedOnce = true - findResult = source.find( searchString ) + findResult = source.find( searchString, findResult + replaceString.len() ) } return baseString @@ -386,8 +386,12 @@ float function RoundToNearestMultiplier( float value, float multiplier ) return value } -function DevEverythingUnlocked() +function DevEverythingUnlocked( entity player = null ) { + // check if player has opted into progression or not + if ( player != null && ProgressionEnabledForPlayer( player ) ) + return false + return EverythingUnlockedConVarEnabled() } diff --git a/Northstar.CustomServers/mod/scripts/vscripts/titan_xp.gnut b/Northstar.CustomServers/mod/scripts/vscripts/titan_xp.gnut index 4bfeb4f8..0436a393 100644 --- a/Northstar.CustomServers/mod/scripts/vscripts/titan_xp.gnut +++ b/Northstar.CustomServers/mod/scripts/vscripts/titan_xp.gnut @@ -10,5 +10,8 @@ void function AddTitanXP( entity player, int amount ) // level up notif if ( TitanGetLevel( player, titan ) != oldLevel ) + { Remote_CallFunction_NonReplay( player, "ServerCallback_TitanLeveledUp", shTitanXP.titanClasses.find( titan ), TitanGetGen( player, titan ), TitanGetLevel( player, titan ) ) + AddPlayerScore( player, "TitanLevelUp" ) + } }
\ No newline at end of file diff --git a/Northstar.CustomServers/mod/scripts/vscripts/weapon_xp.gnut b/Northstar.CustomServers/mod/scripts/vscripts/weapon_xp.gnut index 8e100257..4e25e301 100644 --- a/Northstar.CustomServers/mod/scripts/vscripts/weapon_xp.gnut +++ b/Northstar.CustomServers/mod/scripts/vscripts/weapon_xp.gnut @@ -12,8 +12,11 @@ void function AddWeaponXP( entity player, int amount ) // level up notif if ( WeaponGetLevel( player, weaponClassname ) != oldLevel ) + { Remote_CallFunction_NonReplay( player, "ServerCallback_WeaponLeveledUp", shWeaponXP.weaponClassNames.find( weaponClassname ), WeaponGetGen( player, weaponClassname ), WeaponGetLevel( player, weaponClassname ) ) - + AddPlayerScore( player, "WeaponLevelUp" ) + } + // proscreen if ( player == activeWeapon.GetProScreenOwner() ) { |