This commit is contained in:
parent
26456f3286
commit
c6bd83c428
Binary file not shown.
BIN
bin/bspzip.exe
BIN
bin/bspzip.exe
Binary file not shown.
Binary file not shown.
BIN
bin/glview.exe
BIN
bin/glview.exe
Binary file not shown.
BIN
bin/hammer.exe
BIN
bin/hammer.exe
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
bin/hlmv.exe
BIN
bin/hlmv.exe
Binary file not shown.
BIN
bin/mksheet.exe
BIN
bin/mksheet.exe
Binary file not shown.
Binary file not shown.
|
@ -10,7 +10,7 @@
|
||||||
|
|
||||||
"FileSystem"
|
"FileSystem"
|
||||||
{
|
{
|
||||||
"SteamAppId" "886"
|
"SteamAppId" "630"
|
||||||
"ToolsAppId" "211"
|
"ToolsAppId" "211"
|
||||||
|
|
||||||
"SearchPaths"
|
"SearchPaths"
|
||||||
|
|
|
@ -1,3 +1,3 @@
|
||||||
PatchVersion=7.1.2.8
|
PatchVersion=7.1.2.8
|
||||||
ProductName=swarm
|
ProductName=swarm
|
||||||
appID=886
|
appID=630
|
Binary file not shown.
Binary file not shown.
|
@ -6414,3 +6414,31 @@
|
||||||
input StartMusic(void) : "Start a random music track from the user's playlist."
|
input StartMusic(void) : "Start a random music track from the user's playlist."
|
||||||
input StopMusic(void) : "Stop the currently playing music."
|
input StopMusic(void) : "Stop the currently playing music."
|
||||||
]
|
]
|
||||||
|
|
||||||
|
@PointClass base(Targetname) iconsprite("editor/info_target.vmt") = asw_director_control :
|
||||||
|
"Alien Swarm Director Control"
|
||||||
|
[
|
||||||
|
targetname(target_source) : "Name" : "@director" : "The name that other entities refer to this entity by."
|
||||||
|
wanderers(choices) : "Wandering Aliens" : 0 : "Whether to spawn random drones around the players." =
|
||||||
|
[
|
||||||
|
0 : "No"
|
||||||
|
1 : "Yes"
|
||||||
|
]
|
||||||
|
hordes(choices) : "Hordes" : 1 : "Whether to spawn large groups of drones periodically." =
|
||||||
|
[
|
||||||
|
0 : "No"
|
||||||
|
1 : "Yes"
|
||||||
|
]
|
||||||
|
controlspawners(choices) : "Control Spawners" : 0 : "If enabled, asw_spawners will only work when the director is in an active spawning state." =
|
||||||
|
[
|
||||||
|
0 : "No"
|
||||||
|
1 : "Yes"
|
||||||
|
]
|
||||||
|
input EnableHordes(void) : "Enable random horde spawning."
|
||||||
|
input DisableHordes(void) : "Disable random horde spawning."
|
||||||
|
input EnableWanderers(void) : "Enable random wandering aliens."
|
||||||
|
input DisableWanderers(void) : "Disable random wandering aliens."
|
||||||
|
input StartFinale(void) : "Enables wanderers, hordes and sends director into crazy spawning mode."
|
||||||
|
|
||||||
|
output OnEscapeRoomStart(void) : "Fired when marine enters the escape room with all objectives (except for escape) complete. NOTE: If you rely on this output, you must ship the .layout file along with your map."
|
||||||
|
]
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
bin/vbsp.exe
BIN
bin/vbsp.exe
Binary file not shown.
BIN
bin/vbspinfo.exe
BIN
bin/vbspinfo.exe
Binary file not shown.
BIN
bin/vpk.exe
BIN
bin/vpk.exe
Binary file not shown.
BIN
bin/vrad_dll.dll
BIN
bin/vrad_dll.dll
Binary file not shown.
BIN
bin/vtex.exe
BIN
bin/vtex.exe
Binary file not shown.
BIN
bin/vtf2tga.exe
BIN
bin/vtf2tga.exe
Binary file not shown.
BIN
bin/vvis_dll.dll
BIN
bin/vvis_dll.dll
Binary file not shown.
|
@ -1,8 +1,8 @@
|
||||||
versioninfo
|
versioninfo
|
||||||
{
|
{
|
||||||
"editorversion" "400"
|
"editorversion" "400"
|
||||||
"editorbuild" "4956"
|
"editorbuild" "4961"
|
||||||
"mapversion" "3768"
|
"mapversion" "3762"
|
||||||
"formatversion" "100"
|
"formatversion" "100"
|
||||||
"prefab" "0"
|
"prefab" "0"
|
||||||
}
|
}
|
||||||
|
@ -80,7 +80,7 @@ viewsettings
|
||||||
world
|
world
|
||||||
{
|
{
|
||||||
"id" "394754"
|
"id" "394754"
|
||||||
"mapversion" "3768"
|
"mapversion" "3762"
|
||||||
"classname" "worldspawn"
|
"classname" "worldspawn"
|
||||||
"detailmaterial" "detail/detailsprites"
|
"detailmaterial" "detail/detailsprites"
|
||||||
"detailvbsp" "detail.vbsp"
|
"detailvbsp" "detail.vbsp"
|
||||||
|
@ -36201,6 +36201,35 @@ entity
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
entity
|
entity
|
||||||
|
{
|
||||||
|
"id" "3088711"
|
||||||
|
"classname" "info_overlay"
|
||||||
|
"angles" "0 0 0"
|
||||||
|
"BasisNormal" "0 -0.384615 0.923077"
|
||||||
|
"BasisOrigin" "-6520 408 846.949"
|
||||||
|
"BasisU" "1 0 0"
|
||||||
|
"BasisV" "-0 0.923077 0.384615"
|
||||||
|
"EndU" "1"
|
||||||
|
"EndV" "0"
|
||||||
|
"fademindist" "-1"
|
||||||
|
"material" "overlays/stains_05c"
|
||||||
|
"sides" ""
|
||||||
|
"StartU" "0"
|
||||||
|
"StartV" "1"
|
||||||
|
"uv0" "-94.9868 -119.754 0"
|
||||||
|
"uv1" "-94.9868 119.754 0"
|
||||||
|
"uv2" "94.9868 119.754 0"
|
||||||
|
"uv3" "94.9868 -119.754 0"
|
||||||
|
"origin" "-6520 408 846.949"
|
||||||
|
editor
|
||||||
|
{
|
||||||
|
"color" "80 150 225"
|
||||||
|
"visgroupshown" "1"
|
||||||
|
"visgroupautoshown" "1"
|
||||||
|
"logicalpos" "[0 8500]"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
entity
|
||||||
{
|
{
|
||||||
"id" "3088675"
|
"id" "3088675"
|
||||||
"classname" "info_overlay"
|
"classname" "info_overlay"
|
||||||
|
@ -36327,7 +36356,7 @@ entity
|
||||||
"EndV" "0"
|
"EndV" "0"
|
||||||
"fademindist" "-1"
|
"fademindist" "-1"
|
||||||
"material" "overlays/dirt01a"
|
"material" "overlays/dirt01a"
|
||||||
"sides" "154891 154885"
|
"sides" "153759"
|
||||||
"StartU" "0"
|
"StartU" "0"
|
||||||
"StartV" "1"
|
"StartV" "1"
|
||||||
"uv0" "-30.5847 -60.853 0"
|
"uv0" "-30.5847 -60.853 0"
|
||||||
|
@ -52505,6 +52534,101 @@ entity
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
entity
|
entity
|
||||||
|
{
|
||||||
|
"id" "158996"
|
||||||
|
"classname" "trigger_once"
|
||||||
|
"origin" "-6816 -4952 929"
|
||||||
|
"spawnflags" "16"
|
||||||
|
"StartDisabled" "0"
|
||||||
|
connections
|
||||||
|
{
|
||||||
|
"OnStartTouch" "Storage_room_spawnerStartSpawning0-1"
|
||||||
|
}
|
||||||
|
solid
|
||||||
|
{
|
||||||
|
"id" "158992"
|
||||||
|
side
|
||||||
|
{
|
||||||
|
"id" "7716"
|
||||||
|
"plane" "(-6928 -5040 989) (-6928 -4864 989) (-6704 -4864 989)"
|
||||||
|
"material" "TOOLS/TOOLSTRIGGER"
|
||||||
|
"uaxis" "[1 0 0 60] 0.25"
|
||||||
|
"vaxis" "[0 -1 0 -60] 0.25"
|
||||||
|
"rotation" "0"
|
||||||
|
"lightmapscale" "16"
|
||||||
|
"smoothing_groups" "0"
|
||||||
|
}
|
||||||
|
side
|
||||||
|
{
|
||||||
|
"id" "7717"
|
||||||
|
"plane" "(-6928 -4864 869) (-6928 -5040 869) (-6704 -5040 869)"
|
||||||
|
"material" "TOOLS/TOOLSTRIGGER"
|
||||||
|
"uaxis" "[1 0 0 60] 0.25"
|
||||||
|
"vaxis" "[0 -1 0 -60] 0.25"
|
||||||
|
"rotation" "0"
|
||||||
|
"lightmapscale" "16"
|
||||||
|
"smoothing_groups" "0"
|
||||||
|
}
|
||||||
|
side
|
||||||
|
{
|
||||||
|
"id" "7718"
|
||||||
|
"plane" "(-6928 -5040 869) (-6928 -4864 869) (-6928 -4864 989)"
|
||||||
|
"material" "TOOLS/TOOLSTRIGGER"
|
||||||
|
"uaxis" "[0 1 0 60] 0.25"
|
||||||
|
"vaxis" "[0 0 -1 0] 0.25"
|
||||||
|
"rotation" "0"
|
||||||
|
"lightmapscale" "16"
|
||||||
|
"smoothing_groups" "0"
|
||||||
|
}
|
||||||
|
side
|
||||||
|
{
|
||||||
|
"id" "7719"
|
||||||
|
"plane" "(-6704 -4864 869) (-6704 -5040 869) (-6704 -5040 989)"
|
||||||
|
"material" "TOOLS/TOOLSTRIGGER"
|
||||||
|
"uaxis" "[0 1 0 60] 0.25"
|
||||||
|
"vaxis" "[0 0 -1 0] 0.25"
|
||||||
|
"rotation" "0"
|
||||||
|
"lightmapscale" "16"
|
||||||
|
"smoothing_groups" "0"
|
||||||
|
}
|
||||||
|
side
|
||||||
|
{
|
||||||
|
"id" "7720"
|
||||||
|
"plane" "(-6928 -4864 869) (-6704 -4864 869) (-6704 -4864 989)"
|
||||||
|
"material" "TOOLS/TOOLSTRIGGER"
|
||||||
|
"uaxis" "[1 0 0 60] 0.25"
|
||||||
|
"vaxis" "[0 0 -1 0] 0.25"
|
||||||
|
"rotation" "0"
|
||||||
|
"lightmapscale" "16"
|
||||||
|
"smoothing_groups" "0"
|
||||||
|
}
|
||||||
|
side
|
||||||
|
{
|
||||||
|
"id" "7721"
|
||||||
|
"plane" "(-6704 -5040 869) (-6928 -5040 869) (-6928 -5040 989)"
|
||||||
|
"material" "TOOLS/TOOLSTRIGGER"
|
||||||
|
"uaxis" "[1 0 0 60] 0.25"
|
||||||
|
"vaxis" "[0 0 -1 0] 0.25"
|
||||||
|
"rotation" "0"
|
||||||
|
"lightmapscale" "16"
|
||||||
|
"smoothing_groups" "0"
|
||||||
|
}
|
||||||
|
editor
|
||||||
|
{
|
||||||
|
"color" "220 30 220"
|
||||||
|
"visgroupshown" "1"
|
||||||
|
"visgroupautoshown" "1"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
editor
|
||||||
|
{
|
||||||
|
"color" "220 30 220"
|
||||||
|
"visgroupshown" "1"
|
||||||
|
"visgroupautoshown" "1"
|
||||||
|
"logicalpos" "[14000 -10268]"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
entity
|
||||||
{
|
{
|
||||||
"id" "172289"
|
"id" "172289"
|
||||||
"classname" "info_node"
|
"classname" "info_node"
|
||||||
|
@ -52771,6 +52895,100 @@ entity
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
entity
|
entity
|
||||||
|
{
|
||||||
|
"id" "195808"
|
||||||
|
"classname" "trigger_asw_door_area"
|
||||||
|
"origin" "-7355 -4258 1029.95"
|
||||||
|
"playersrequired" "1"
|
||||||
|
"spawnflags" "2"
|
||||||
|
"StartDisabled" "0"
|
||||||
|
"usetargetname" "LandingBayDoor4"
|
||||||
|
"wait" "1"
|
||||||
|
solid
|
||||||
|
{
|
||||||
|
"id" "195809"
|
||||||
|
side
|
||||||
|
{
|
||||||
|
"id" "9625"
|
||||||
|
"plane" "(-7455 -4390 1108.45) (-7455 -4126 1108.45) (-7255 -4126 1108.45)"
|
||||||
|
"material" "TOOLS/TOOLSTRIGGER"
|
||||||
|
"uaxis" "[1 0 0 28] 0.25"
|
||||||
|
"vaxis" "[0 -1 0 -56] 0.25"
|
||||||
|
"rotation" "0"
|
||||||
|
"lightmapscale" "16"
|
||||||
|
"smoothing_groups" "0"
|
||||||
|
}
|
||||||
|
side
|
||||||
|
{
|
||||||
|
"id" "9626"
|
||||||
|
"plane" "(-7455 -4126 951.451) (-7455 -4390 951.451) (-7255 -4390 951.451)"
|
||||||
|
"material" "TOOLS/TOOLSTRIGGER"
|
||||||
|
"uaxis" "[1 0 0 28] 0.25"
|
||||||
|
"vaxis" "[0 -1 0 -56] 0.25"
|
||||||
|
"rotation" "0"
|
||||||
|
"lightmapscale" "16"
|
||||||
|
"smoothing_groups" "0"
|
||||||
|
}
|
||||||
|
side
|
||||||
|
{
|
||||||
|
"id" "9627"
|
||||||
|
"plane" "(-7455 -4390 951.451) (-7455 -4126 951.451) (-7455 -4126 1108.45)"
|
||||||
|
"material" "TOOLS/TOOLSTRIGGER"
|
||||||
|
"uaxis" "[0 1 0 56] 0.25"
|
||||||
|
"vaxis" "[0 0 -1 -8.96094] 0.25"
|
||||||
|
"rotation" "0"
|
||||||
|
"lightmapscale" "16"
|
||||||
|
"smoothing_groups" "0"
|
||||||
|
}
|
||||||
|
side
|
||||||
|
{
|
||||||
|
"id" "9628"
|
||||||
|
"plane" "(-7255 -4126 951.451) (-7255 -4390 951.451) (-7255 -4390 1108.45)"
|
||||||
|
"material" "TOOLS/TOOLSTRIGGER"
|
||||||
|
"uaxis" "[0 1 0 56] 0.25"
|
||||||
|
"vaxis" "[0 0 -1 -8.96094] 0.25"
|
||||||
|
"rotation" "0"
|
||||||
|
"lightmapscale" "16"
|
||||||
|
"smoothing_groups" "0"
|
||||||
|
}
|
||||||
|
side
|
||||||
|
{
|
||||||
|
"id" "9629"
|
||||||
|
"plane" "(-7455 -4126 951.451) (-7255 -4126 951.451) (-7255 -4126 1108.45)"
|
||||||
|
"material" "TOOLS/TOOLSTRIGGER"
|
||||||
|
"uaxis" "[1 0 0 28] 0.25"
|
||||||
|
"vaxis" "[0 0 -1 -8.96094] 0.25"
|
||||||
|
"rotation" "0"
|
||||||
|
"lightmapscale" "16"
|
||||||
|
"smoothing_groups" "0"
|
||||||
|
}
|
||||||
|
side
|
||||||
|
{
|
||||||
|
"id" "9630"
|
||||||
|
"plane" "(-7255 -4390 951.451) (-7455 -4390 951.451) (-7455 -4390 1108.45)"
|
||||||
|
"material" "TOOLS/TOOLSTRIGGER"
|
||||||
|
"uaxis" "[1 0 0 28] 0.25"
|
||||||
|
"vaxis" "[0 0 -1 -8.96094] 0.25"
|
||||||
|
"rotation" "0"
|
||||||
|
"lightmapscale" "16"
|
||||||
|
"smoothing_groups" "0"
|
||||||
|
}
|
||||||
|
editor
|
||||||
|
{
|
||||||
|
"color" "220 30 220"
|
||||||
|
"visgroupshown" "1"
|
||||||
|
"visgroupautoshown" "1"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
editor
|
||||||
|
{
|
||||||
|
"color" "220 30 220"
|
||||||
|
"visgroupshown" "1"
|
||||||
|
"visgroupautoshown" "1"
|
||||||
|
"logicalpos" "[14500 15000]"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
entity
|
||||||
{
|
{
|
||||||
"id" "225289"
|
"id" "225289"
|
||||||
"classname" "prop_physics"
|
"classname" "prop_physics"
|
||||||
|
@ -52830,6 +53048,10 @@ entity
|
||||||
"shadowcastdist" "0"
|
"shadowcastdist" "0"
|
||||||
"skin" "0"
|
"skin" "0"
|
||||||
"spawnflags" "32769"
|
"spawnflags" "32769"
|
||||||
|
connections
|
||||||
|
{
|
||||||
|
"OnBreak" "CrateRandomTriggerEnable0-1"
|
||||||
|
}
|
||||||
"origin" "-6552 -7048 946"
|
"origin" "-6552 -7048 946"
|
||||||
editor
|
editor
|
||||||
{
|
{
|
||||||
|
@ -53238,6 +53460,7 @@ entity
|
||||||
connections
|
connections
|
||||||
{
|
{
|
||||||
"OnComputerHackCompleted" "Tech_reqDisableTechMarineReq0-1"
|
"OnComputerHackCompleted" "Tech_reqDisableTechMarineReq0-1"
|
||||||
|
"OnComputerDataDownloaded" "AfterHackSpawnTriggerEnable0-1"
|
||||||
"OnComputerHackStarted" "breakdoor_spawnStartSpawning5-1"
|
"OnComputerHackStarted" "breakdoor_spawnStartSpawning5-1"
|
||||||
"OnComputerDataDownloaded" "CeilingBlackBoxOpen0-1"
|
"OnComputerDataDownloaded" "CeilingBlackBoxOpen0-1"
|
||||||
"OnComputerHackStarted" "dock_holdout_spawn_01StartSpawning5-1"
|
"OnComputerHackStarted" "dock_holdout_spawn_01StartSpawning5-1"
|
||||||
|
@ -54859,6 +55082,7 @@ entity
|
||||||
"StartDisabled" "0"
|
"StartDisabled" "0"
|
||||||
connections
|
connections
|
||||||
{
|
{
|
||||||
|
"OnTrigger" "tankroom_end_04StartSpawning0-1"
|
||||||
"OnTrigger" "tankroom_end_01_spawnStartSpawning0-1"
|
"OnTrigger" "tankroom_end_01_spawnStartSpawning0-1"
|
||||||
}
|
}
|
||||||
solid
|
solid
|
||||||
|
@ -74529,6 +74753,7 @@ entity
|
||||||
"StartDisabled" "0"
|
"StartDisabled" "0"
|
||||||
connections
|
connections
|
||||||
{
|
{
|
||||||
|
"OnTrigger" "AmbientMusicPlaySound0-1"
|
||||||
"OnTrigger" "tankroom_end_02_spawnStartSpawning0-1"
|
"OnTrigger" "tankroom_end_02_spawnStartSpawning0-1"
|
||||||
}
|
}
|
||||||
solid
|
solid
|
||||||
|
@ -74734,6 +74959,101 @@ entity
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
entity
|
entity
|
||||||
|
{
|
||||||
|
"id" "388368"
|
||||||
|
"classname" "trigger_once"
|
||||||
|
"origin" "-6765.5 -3163 948"
|
||||||
|
"spawnflags" "16"
|
||||||
|
"StartDisabled" "0"
|
||||||
|
connections
|
||||||
|
{
|
||||||
|
"OnTrigger" "storage_room_spawn_2_behindStartSpawning0-1"
|
||||||
|
}
|
||||||
|
solid
|
||||||
|
{
|
||||||
|
"id" "388369"
|
||||||
|
side
|
||||||
|
{
|
||||||
|
"id" "13337"
|
||||||
|
"plane" "(-6996 -3220 1027) (-6996 -3106 1027) (-6535 -3106 1027)"
|
||||||
|
"material" "TOOLS/TOOLSTRIGGER"
|
||||||
|
"uaxis" "[1 0 0 56] 0.25"
|
||||||
|
"vaxis" "[0 -1 0 -28] 0.25"
|
||||||
|
"rotation" "0"
|
||||||
|
"lightmapscale" "16"
|
||||||
|
"smoothing_groups" "0"
|
||||||
|
}
|
||||||
|
side
|
||||||
|
{
|
||||||
|
"id" "13336"
|
||||||
|
"plane" "(-6996 -3106 869) (-6996 -3220 869) (-6535 -3220 869)"
|
||||||
|
"material" "TOOLS/TOOLSTRIGGER"
|
||||||
|
"uaxis" "[1 0 0 56] 0.25"
|
||||||
|
"vaxis" "[0 -1 0 -28] 0.25"
|
||||||
|
"rotation" "0"
|
||||||
|
"lightmapscale" "16"
|
||||||
|
"smoothing_groups" "0"
|
||||||
|
}
|
||||||
|
side
|
||||||
|
{
|
||||||
|
"id" "13335"
|
||||||
|
"plane" "(-6996 -3220 869) (-6996 -3106 869) (-6996 -3106 1027)"
|
||||||
|
"material" "TOOLS/TOOLSTRIGGER"
|
||||||
|
"uaxis" "[0 1 0 28] 0.25"
|
||||||
|
"vaxis" "[0 0 -1 0] 0.25"
|
||||||
|
"rotation" "0"
|
||||||
|
"lightmapscale" "16"
|
||||||
|
"smoothing_groups" "0"
|
||||||
|
}
|
||||||
|
side
|
||||||
|
{
|
||||||
|
"id" "13334"
|
||||||
|
"plane" "(-6535 -3106 869) (-6535 -3220 869) (-6535 -3220 1027)"
|
||||||
|
"material" "TOOLS/TOOLSTRIGGER"
|
||||||
|
"uaxis" "[0 1 0 28] 0.25"
|
||||||
|
"vaxis" "[0 0 -1 0] 0.25"
|
||||||
|
"rotation" "0"
|
||||||
|
"lightmapscale" "16"
|
||||||
|
"smoothing_groups" "0"
|
||||||
|
}
|
||||||
|
side
|
||||||
|
{
|
||||||
|
"id" "13333"
|
||||||
|
"plane" "(-6996 -3106 869) (-6535 -3106 869) (-6535 -3106 1027)"
|
||||||
|
"material" "TOOLS/TOOLSTRIGGER"
|
||||||
|
"uaxis" "[1 0 0 56] 0.25"
|
||||||
|
"vaxis" "[0 0 -1 0] 0.25"
|
||||||
|
"rotation" "0"
|
||||||
|
"lightmapscale" "16"
|
||||||
|
"smoothing_groups" "0"
|
||||||
|
}
|
||||||
|
side
|
||||||
|
{
|
||||||
|
"id" "13332"
|
||||||
|
"plane" "(-6535 -3220 869) (-6996 -3220 869) (-6996 -3220 1027)"
|
||||||
|
"material" "TOOLS/TOOLSTRIGGER"
|
||||||
|
"uaxis" "[1 0 0 56] 0.25"
|
||||||
|
"vaxis" "[0 0 -1 0] 0.25"
|
||||||
|
"rotation" "0"
|
||||||
|
"lightmapscale" "16"
|
||||||
|
"smoothing_groups" "0"
|
||||||
|
}
|
||||||
|
editor
|
||||||
|
{
|
||||||
|
"color" "220 30 220"
|
||||||
|
"visgroupshown" "1"
|
||||||
|
"visgroupautoshown" "1"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
editor
|
||||||
|
{
|
||||||
|
"color" "220 30 220"
|
||||||
|
"visgroupshown" "1"
|
||||||
|
"visgroupautoshown" "1"
|
||||||
|
"logicalpos" "[16000 -15268]"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
entity
|
||||||
{
|
{
|
||||||
"id" "394925"
|
"id" "394925"
|
||||||
"classname" "info_node"
|
"classname" "info_node"
|
||||||
|
@ -74750,6 +75070,101 @@ entity
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
entity
|
entity
|
||||||
|
{
|
||||||
|
"id" "401337"
|
||||||
|
"classname" "trigger_once"
|
||||||
|
"origin" "-7532.5 -3616 964.5"
|
||||||
|
"spawnflags" "16"
|
||||||
|
"StartDisabled" "0"
|
||||||
|
connections
|
||||||
|
{
|
||||||
|
"OnTrigger" "Spawn05StartSpawning0-1"
|
||||||
|
}
|
||||||
|
solid
|
||||||
|
{
|
||||||
|
"id" "401338"
|
||||||
|
side
|
||||||
|
{
|
||||||
|
"id" "13349"
|
||||||
|
"plane" "(-7545 -3692 1060) (-7545 -3540 1060) (-7520 -3540 1060)"
|
||||||
|
"material" "TOOLS/TOOLSTRIGGER"
|
||||||
|
"uaxis" "[1 0 0 56] 0.25"
|
||||||
|
"vaxis" "[0 -1 0 -24] 0.25"
|
||||||
|
"rotation" "0"
|
||||||
|
"lightmapscale" "16"
|
||||||
|
"smoothing_groups" "0"
|
||||||
|
}
|
||||||
|
side
|
||||||
|
{
|
||||||
|
"id" "13348"
|
||||||
|
"plane" "(-7545 -3540 869) (-7545 -3692 869) (-7520 -3692 869)"
|
||||||
|
"material" "TOOLS/TOOLSTRIGGER"
|
||||||
|
"uaxis" "[1 0 0 56] 0.25"
|
||||||
|
"vaxis" "[0 -1 0 -24] 0.25"
|
||||||
|
"rotation" "0"
|
||||||
|
"lightmapscale" "16"
|
||||||
|
"smoothing_groups" "0"
|
||||||
|
}
|
||||||
|
side
|
||||||
|
{
|
||||||
|
"id" "13347"
|
||||||
|
"plane" "(-7545 -3692 869) (-7545 -3540 869) (-7545 -3540 1060)"
|
||||||
|
"material" "TOOLS/TOOLSTRIGGER"
|
||||||
|
"uaxis" "[0 1 0 24] 0.25"
|
||||||
|
"vaxis" "[0 0 -1 0] 0.25"
|
||||||
|
"rotation" "0"
|
||||||
|
"lightmapscale" "16"
|
||||||
|
"smoothing_groups" "0"
|
||||||
|
}
|
||||||
|
side
|
||||||
|
{
|
||||||
|
"id" "13346"
|
||||||
|
"plane" "(-7520 -3540 869) (-7520 -3692 869) (-7520 -3692 1060)"
|
||||||
|
"material" "TOOLS/TOOLSTRIGGER"
|
||||||
|
"uaxis" "[0 1 0 24] 0.25"
|
||||||
|
"vaxis" "[0 0 -1 0] 0.25"
|
||||||
|
"rotation" "0"
|
||||||
|
"lightmapscale" "16"
|
||||||
|
"smoothing_groups" "0"
|
||||||
|
}
|
||||||
|
side
|
||||||
|
{
|
||||||
|
"id" "13345"
|
||||||
|
"plane" "(-7545 -3540 869) (-7520 -3540 869) (-7520 -3540 1060)"
|
||||||
|
"material" "TOOLS/TOOLSTRIGGER"
|
||||||
|
"uaxis" "[1 0 0 56] 0.25"
|
||||||
|
"vaxis" "[0 0 -1 0] 0.25"
|
||||||
|
"rotation" "0"
|
||||||
|
"lightmapscale" "16"
|
||||||
|
"smoothing_groups" "0"
|
||||||
|
}
|
||||||
|
side
|
||||||
|
{
|
||||||
|
"id" "13344"
|
||||||
|
"plane" "(-7520 -3692 869) (-7545 -3692 869) (-7545 -3692 1060)"
|
||||||
|
"material" "TOOLS/TOOLSTRIGGER"
|
||||||
|
"uaxis" "[1 0 0 56] 0.25"
|
||||||
|
"vaxis" "[0 0 -1 0] 0.25"
|
||||||
|
"rotation" "0"
|
||||||
|
"lightmapscale" "16"
|
||||||
|
"smoothing_groups" "0"
|
||||||
|
}
|
||||||
|
editor
|
||||||
|
{
|
||||||
|
"color" "220 30 220"
|
||||||
|
"visgroupshown" "1"
|
||||||
|
"visgroupautoshown" "1"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
editor
|
||||||
|
{
|
||||||
|
"color" "220 30 220"
|
||||||
|
"visgroupshown" "1"
|
||||||
|
"visgroupautoshown" "1"
|
||||||
|
"logicalpos" "[16000 14500]"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
entity
|
||||||
{
|
{
|
||||||
"id" "401394"
|
"id" "401394"
|
||||||
"classname" "asw_drone"
|
"classname" "asw_drone"
|
||||||
|
@ -77952,6 +78367,7 @@ entity
|
||||||
"OnCase01" "supply_spawn_01StartSpawning0-1"
|
"OnCase01" "supply_spawn_01StartSpawning0-1"
|
||||||
"OnCase02" "supply_spawn_02StartSpawning0-1"
|
"OnCase02" "supply_spawn_02StartSpawning0-1"
|
||||||
"OnCase03" "supply_spawn_03StartSpawning0-1"
|
"OnCase03" "supply_spawn_03StartSpawning0-1"
|
||||||
|
"OnCase04" "0-1"
|
||||||
}
|
}
|
||||||
"origin" "-7832 -792 840.967"
|
"origin" "-7832 -792 840.967"
|
||||||
editor
|
editor
|
||||||
|
@ -78054,6 +78470,8 @@ entity
|
||||||
{
|
{
|
||||||
"id" "540455"
|
"id" "540455"
|
||||||
"classname" "func_precipitation"
|
"classname" "func_precipitation"
|
||||||
|
"maxSpeed" "35"
|
||||||
|
"minSpeed" "25"
|
||||||
"preciptype" "7"
|
"preciptype" "7"
|
||||||
"renderamt" "75"
|
"renderamt" "75"
|
||||||
"rendercolor" "100 100 100"
|
"rendercolor" "100 100 100"
|
||||||
|
@ -80257,6 +80675,63 @@ hidden
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
entity
|
||||||
|
{
|
||||||
|
"id" "783477"
|
||||||
|
"classname" "info_overlay"
|
||||||
|
"angles" "0 270 0"
|
||||||
|
"BasisNormal" "0 0 1"
|
||||||
|
"BasisOrigin" "-7894 -690 832"
|
||||||
|
"BasisU" "-4.37114e-008 -1 0"
|
||||||
|
"BasisV" "1 -4.37114e-008 0"
|
||||||
|
"EndU" "1"
|
||||||
|
"EndV" "0"
|
||||||
|
"fademindist" "-1"
|
||||||
|
"material" "swarm/decals/supplyroomdecal"
|
||||||
|
"sides" ""
|
||||||
|
"StartU" "0"
|
||||||
|
"StartV" "1"
|
||||||
|
"uv0" "-33.5213 -47.2689 0"
|
||||||
|
"uv1" "-33.5213 47.2689 0"
|
||||||
|
"uv2" "33.5213 47.2689 0"
|
||||||
|
"uv3" "33.5213 -47.2689 0"
|
||||||
|
"origin" "-7894 -690 832"
|
||||||
|
editor
|
||||||
|
{
|
||||||
|
"color" "80 150 225"
|
||||||
|
"visgroupshown" "1"
|
||||||
|
"visgroupautoshown" "1"
|
||||||
|
"logicalpos" "[0 0]"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
entity
|
||||||
|
{
|
||||||
|
"id" "783607"
|
||||||
|
"classname" "info_overlay"
|
||||||
|
"angles" "0 180 0"
|
||||||
|
"BasisNormal" "0 0 1"
|
||||||
|
"BasisOrigin" "-7895.5 -705 832"
|
||||||
|
"BasisU" "-1 8.74228e-008 0"
|
||||||
|
"BasisV" "-8.74228e-008 -1 0"
|
||||||
|
"EndU" "1"
|
||||||
|
"EndV" "0"
|
||||||
|
"fademindist" "-1"
|
||||||
|
"material" "swarm/decals/arrowrightdecal"
|
||||||
|
"StartU" "0"
|
||||||
|
"StartV" "1"
|
||||||
|
"uv0" "-64.5001 -12.1344 0"
|
||||||
|
"uv1" "-64.5001 12.1344 0"
|
||||||
|
"uv2" "64.5001 12.1344 0"
|
||||||
|
"uv3" "64.5001 -12.1344 0"
|
||||||
|
"origin" "-7895.5 -705 832"
|
||||||
|
editor
|
||||||
|
{
|
||||||
|
"color" "80 150 225"
|
||||||
|
"visgroupshown" "1"
|
||||||
|
"visgroupautoshown" "1"
|
||||||
|
"logicalpos" "[0 0]"
|
||||||
|
}
|
||||||
|
}
|
||||||
hidden
|
hidden
|
||||||
{
|
{
|
||||||
entity
|
entity
|
||||||
|
@ -82494,6 +82969,7 @@ entity
|
||||||
{
|
{
|
||||||
"id" "2638426"
|
"id" "2638426"
|
||||||
"classname" "trigger_asw_button_area"
|
"classname" "trigger_asw_button_area"
|
||||||
|
"completemessage" "Access Granted"
|
||||||
"hacklevel" "6"
|
"hacklevel" "6"
|
||||||
"locked" "1"
|
"locked" "1"
|
||||||
"numwires" "2"
|
"numwires" "2"
|
||||||
|
@ -82510,6 +82986,7 @@ entity
|
||||||
connections
|
connections
|
||||||
{
|
{
|
||||||
"OnButtonActivated" "AutoInstance1-LandingBayDoor2EnableAutoOpen0-1"
|
"OnButtonActivated" "AutoInstance1-LandingBayDoor2EnableAutoOpen0-1"
|
||||||
|
"OnButtonHackCompleted" "Start_button_leftUnlock01"
|
||||||
"OnButtonHackCompleted" "AutoInstance1-doorpanel2Skin20.1-1"
|
"OnButtonHackCompleted" "AutoInstance1-doorpanel2Skin20.1-1"
|
||||||
"OnButtonHackCompleted" "AutoInstance1-Start_button_rightUnlock0-1"
|
"OnButtonHackCompleted" "AutoInstance1-Start_button_rightUnlock0-1"
|
||||||
"OnButtonHackCompleted" "AutoInstance1-doorpanel1Skin20.1-1"
|
"OnButtonHackCompleted" "AutoInstance1-doorpanel1Skin20.1-1"
|
||||||
|
@ -82684,6 +83161,7 @@ entity
|
||||||
"StartDisabled" "0"
|
"StartDisabled" "0"
|
||||||
connections
|
connections
|
||||||
{
|
{
|
||||||
|
"OnTrigger" "hallway_spawn_01StartSpawning0-1"
|
||||||
"OnTrigger" "commander_choreo_m1_ob3Start2-1"
|
"OnTrigger" "commander_choreo_m1_ob3Start2-1"
|
||||||
}
|
}
|
||||||
solid
|
solid
|
||||||
|
@ -82774,6 +83252,7 @@ entity
|
||||||
{
|
{
|
||||||
"id" "2638314"
|
"id" "2638314"
|
||||||
"classname" "trigger_asw_button_area"
|
"classname" "trigger_asw_button_area"
|
||||||
|
"completemessage" "Access Granted"
|
||||||
"hacklevel" "6"
|
"hacklevel" "6"
|
||||||
"locked" "1"
|
"locked" "1"
|
||||||
"numwires" "2"
|
"numwires" "2"
|
||||||
|
@ -82790,6 +83269,7 @@ entity
|
||||||
connections
|
connections
|
||||||
{
|
{
|
||||||
"OnButtonActivated" "AutoInstance1-LandingBayDoor1EnableAutoOpen0-1"
|
"OnButtonActivated" "AutoInstance1-LandingBayDoor1EnableAutoOpen0-1"
|
||||||
|
"OnButtonHackCompleted" "Start_button_leftUnlock01"
|
||||||
"OnButtonHackCompleted" "AutoInstance1-doorpanel1Skin20.1-1"
|
"OnButtonHackCompleted" "AutoInstance1-doorpanel1Skin20.1-1"
|
||||||
"OnButtonHackCompleted" "AutoInstance1-Start_button_right1Unlock0-1"
|
"OnButtonHackCompleted" "AutoInstance1-Start_button_right1Unlock0-1"
|
||||||
"OnButtonHackCompleted" "AutoInstance1-Start_button_right1Disable0.1-1"
|
"OnButtonHackCompleted" "AutoInstance1-Start_button_right1Disable0.1-1"
|
||||||
|
@ -108754,6 +109234,7 @@ entity
|
||||||
"screenspacefade" "0"
|
"screenspacefade" "0"
|
||||||
"skin" "0"
|
"skin" "0"
|
||||||
"solid" "6"
|
"solid" "6"
|
||||||
|
"spawnflags" "264"
|
||||||
"origin" "-6988.75 -5985.92 1055.72"
|
"origin" "-6988.75 -5985.92 1055.72"
|
||||||
editor
|
editor
|
||||||
{
|
{
|
||||||
|
@ -109804,7 +110285,7 @@ entity
|
||||||
"EndV" "0"
|
"EndV" "0"
|
||||||
"fademindist" "-1"
|
"fademindist" "-1"
|
||||||
"material" "overlays/stain_01"
|
"material" "overlays/stain_01"
|
||||||
"sides" "80300 80271"
|
"sides" "69581"
|
||||||
"StartU" "0"
|
"StartU" "0"
|
||||||
"StartV" "1"
|
"StartV" "1"
|
||||||
"uv0" "-188 -28.0922 0"
|
"uv0" "-188 -28.0922 0"
|
||||||
|
@ -110111,6 +110592,35 @@ entity
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
entity
|
entity
|
||||||
|
{
|
||||||
|
"id" "2095747"
|
||||||
|
"classname" "info_overlay"
|
||||||
|
"angles" "0 330 0"
|
||||||
|
"BasisNormal" "-0.5 -0.866025 0"
|
||||||
|
"BasisOrigin" "-5964.31 -8779.15 1121.98"
|
||||||
|
"BasisU" "0.866025 -0.5 0"
|
||||||
|
"BasisV" "0 0 1"
|
||||||
|
"EndU" "2"
|
||||||
|
"EndV" "0"
|
||||||
|
"fademindist" "-1"
|
||||||
|
"material" "overlays/stain_01"
|
||||||
|
"sides" "71332"
|
||||||
|
"StartU" "0"
|
||||||
|
"StartV" "1"
|
||||||
|
"uv0" "-128 -40 0"
|
||||||
|
"uv1" "-128 40 0"
|
||||||
|
"uv2" "128 40 0"
|
||||||
|
"uv3" "128 -40 0"
|
||||||
|
"origin" "-5964.31 -8779.15 1121.98"
|
||||||
|
editor
|
||||||
|
{
|
||||||
|
"color" "80 150 225"
|
||||||
|
"visgroupshown" "1"
|
||||||
|
"visgroupautoshown" "1"
|
||||||
|
"logicalpos" "[0 4000]"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
entity
|
||||||
{
|
{
|
||||||
"id" "2095831"
|
"id" "2095831"
|
||||||
"classname" "info_overlay"
|
"classname" "info_overlay"
|
||||||
|
@ -110152,7 +110662,7 @@ entity
|
||||||
"EndV" "0"
|
"EndV" "0"
|
||||||
"fademindist" "-1"
|
"fademindist" "-1"
|
||||||
"material" "overlays/stains_05c"
|
"material" "overlays/stains_05c"
|
||||||
"sides" "80703"
|
"sides" "72447 72502"
|
||||||
"StartU" "0"
|
"StartU" "0"
|
||||||
"StartV" "1"
|
"StartV" "1"
|
||||||
"uv0" "-126.321 -126.006 0"
|
"uv0" "-126.321 -126.006 0"
|
||||||
|
@ -146275,7 +146785,7 @@ entity
|
||||||
"EndV" "0"
|
"EndV" "0"
|
||||||
"fademindist" "-1"
|
"fademindist" "-1"
|
||||||
"material" "overlays/stains_05c"
|
"material" "overlays/stains_05c"
|
||||||
"sides" "127530 127554 127542"
|
"sides" ""
|
||||||
"StartU" "0"
|
"StartU" "0"
|
||||||
"StartV" "1"
|
"StartV" "1"
|
||||||
"uv0" "-102.126 -104.984 0"
|
"uv0" "-102.126 -104.984 0"
|
||||||
|
@ -148941,6 +149451,8 @@ entity
|
||||||
{
|
{
|
||||||
"id" "2278966"
|
"id" "2278966"
|
||||||
"classname" "func_precipitation"
|
"classname" "func_precipitation"
|
||||||
|
"maxSpeed" "35"
|
||||||
|
"minSpeed" "25"
|
||||||
"preciptype" "7"
|
"preciptype" "7"
|
||||||
"renderamt" "75"
|
"renderamt" "75"
|
||||||
"rendercolor" "100 100 100"
|
"rendercolor" "100 100 100"
|
||||||
|
@ -159395,6 +159907,35 @@ entity
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
entity
|
entity
|
||||||
|
{
|
||||||
|
"id" "2463370"
|
||||||
|
"classname" "info_overlay"
|
||||||
|
"angles" "0 0 0"
|
||||||
|
"BasisNormal" "0 0 1"
|
||||||
|
"BasisOrigin" "-6944 952 832"
|
||||||
|
"BasisU" "1 0 0"
|
||||||
|
"BasisV" "0 1 0"
|
||||||
|
"EndU" "1"
|
||||||
|
"EndV" "0"
|
||||||
|
"fademindist" "-1"
|
||||||
|
"material" "overlays/stains_05c"
|
||||||
|
"sides" ""
|
||||||
|
"StartU" "0"
|
||||||
|
"StartV" "1"
|
||||||
|
"uv0" "-164.286 -159.488 0"
|
||||||
|
"uv1" "-164.286 159.488 0"
|
||||||
|
"uv2" "164.286 159.488 0"
|
||||||
|
"uv3" "164.286 -159.488 0"
|
||||||
|
"origin" "-6944 952 832"
|
||||||
|
editor
|
||||||
|
{
|
||||||
|
"color" "80 150 225"
|
||||||
|
"visgroupshown" "1"
|
||||||
|
"visgroupautoshown" "1"
|
||||||
|
"logicalpos" "[0 2500]"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
entity
|
||||||
{
|
{
|
||||||
"id" "2463400"
|
"id" "2463400"
|
||||||
"classname" "info_overlay"
|
"classname" "info_overlay"
|
||||||
|
@ -161752,6 +162293,7 @@ entity
|
||||||
"lightworld" "1"
|
"lightworld" "1"
|
||||||
"nearz" "4.0"
|
"nearz" "4.0"
|
||||||
"shadowquality" "1"
|
"shadowquality" "1"
|
||||||
|
"simpleprojection" "0"
|
||||||
"spawnflags" "1"
|
"spawnflags" "1"
|
||||||
"texturename" "effects/flashlight001"
|
"texturename" "effects/flashlight001"
|
||||||
"origin" "-7400 -928 1027.73"
|
"origin" "-7400 -928 1027.73"
|
||||||
|
@ -166258,6 +166800,8 @@ entity
|
||||||
{
|
{
|
||||||
"id" "3085728"
|
"id" "3085728"
|
||||||
"classname" "func_precipitation"
|
"classname" "func_precipitation"
|
||||||
|
"maxSpeed" "35"
|
||||||
|
"minSpeed" "25"
|
||||||
"preciptype" "7"
|
"preciptype" "7"
|
||||||
"renderamt" "10"
|
"renderamt" "10"
|
||||||
"rendercolor" "100 100 100"
|
"rendercolor" "100 100 100"
|
||||||
|
@ -167150,6 +167694,7 @@ entity
|
||||||
"lightworld" "1"
|
"lightworld" "1"
|
||||||
"nearz" "4.0"
|
"nearz" "4.0"
|
||||||
"shadowquality" "1"
|
"shadowquality" "1"
|
||||||
|
"simpleprojection" "0"
|
||||||
"spawnflags" "1"
|
"spawnflags" "1"
|
||||||
"texturename" "effects/flashlight001"
|
"texturename" "effects/flashlight001"
|
||||||
"origin" "-6318 1072 982.022"
|
"origin" "-6318 1072 982.022"
|
||||||
|
@ -170219,6 +170764,10 @@ entity
|
||||||
"shadowcastdist" "0"
|
"shadowcastdist" "0"
|
||||||
"skin" "0"
|
"skin" "0"
|
||||||
"spawnflags" "32769"
|
"spawnflags" "32769"
|
||||||
|
connections
|
||||||
|
{
|
||||||
|
"OnBreak" "CrateRandomTriggerEnable0-1"
|
||||||
|
}
|
||||||
"origin" "-6552 -6960 946"
|
"origin" "-6552 -6960 946"
|
||||||
editor
|
editor
|
||||||
{
|
{
|
||||||
|
@ -171091,6 +171640,101 @@ entity
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
entity
|
entity
|
||||||
|
{
|
||||||
|
"id" "3174864"
|
||||||
|
"classname" "trigger_once"
|
||||||
|
"origin" "-7072 -2496 951"
|
||||||
|
"spawnflags" "16"
|
||||||
|
"StartDisabled" "0"
|
||||||
|
connections
|
||||||
|
{
|
||||||
|
"OnTrigger" "storage_room_spawn_3StartSpawning0-1"
|
||||||
|
}
|
||||||
|
solid
|
||||||
|
{
|
||||||
|
"id" "3174865"
|
||||||
|
side
|
||||||
|
{
|
||||||
|
"id" "156287"
|
||||||
|
"plane" "(-7104 -2848 1030) (-7104 -2144 1030) (-7040 -2144 1030)"
|
||||||
|
"material" "TOOLS/TOOLSTRIGGER"
|
||||||
|
"uaxis" "[1 0 0 -56] 0.25"
|
||||||
|
"vaxis" "[0 -1 0 4] 0.25"
|
||||||
|
"rotation" "0"
|
||||||
|
"lightmapscale" "16"
|
||||||
|
"smoothing_groups" "0"
|
||||||
|
}
|
||||||
|
side
|
||||||
|
{
|
||||||
|
"id" "156286"
|
||||||
|
"plane" "(-7104 -2144 872) (-7104 -2848 872) (-7040 -2848 872)"
|
||||||
|
"material" "TOOLS/TOOLSTRIGGER"
|
||||||
|
"uaxis" "[1 0 0 -56] 0.25"
|
||||||
|
"vaxis" "[0 -1 0 4] 0.25"
|
||||||
|
"rotation" "0"
|
||||||
|
"lightmapscale" "16"
|
||||||
|
"smoothing_groups" "0"
|
||||||
|
}
|
||||||
|
side
|
||||||
|
{
|
||||||
|
"id" "156285"
|
||||||
|
"plane" "(-7104 -2848 872) (-7104 -2144 872) (-7104 -2144 1030)"
|
||||||
|
"material" "TOOLS/TOOLSTRIGGER"
|
||||||
|
"uaxis" "[0 1 0 -4] 0.25"
|
||||||
|
"vaxis" "[0 0 -1 12] 0.25"
|
||||||
|
"rotation" "0"
|
||||||
|
"lightmapscale" "16"
|
||||||
|
"smoothing_groups" "0"
|
||||||
|
}
|
||||||
|
side
|
||||||
|
{
|
||||||
|
"id" "156284"
|
||||||
|
"plane" "(-7040 -2144 872) (-7040 -2848 872) (-7040 -2848 1030)"
|
||||||
|
"material" "TOOLS/TOOLSTRIGGER"
|
||||||
|
"uaxis" "[0 1 0 -4] 0.25"
|
||||||
|
"vaxis" "[0 0 -1 12] 0.25"
|
||||||
|
"rotation" "0"
|
||||||
|
"lightmapscale" "16"
|
||||||
|
"smoothing_groups" "0"
|
||||||
|
}
|
||||||
|
side
|
||||||
|
{
|
||||||
|
"id" "156283"
|
||||||
|
"plane" "(-7104 -2144 872) (-7040 -2144 872) (-7040 -2144 1030)"
|
||||||
|
"material" "TOOLS/TOOLSTRIGGER"
|
||||||
|
"uaxis" "[1 0 0 -56] 0.25"
|
||||||
|
"vaxis" "[0 0 -1 12] 0.25"
|
||||||
|
"rotation" "0"
|
||||||
|
"lightmapscale" "16"
|
||||||
|
"smoothing_groups" "0"
|
||||||
|
}
|
||||||
|
side
|
||||||
|
{
|
||||||
|
"id" "156282"
|
||||||
|
"plane" "(-7040 -2848 872) (-7104 -2848 872) (-7104 -2848 1030)"
|
||||||
|
"material" "TOOLS/TOOLSTRIGGER"
|
||||||
|
"uaxis" "[1 0 0 -56] 0.25"
|
||||||
|
"vaxis" "[0 0 -1 12] 0.25"
|
||||||
|
"rotation" "0"
|
||||||
|
"lightmapscale" "16"
|
||||||
|
"smoothing_groups" "0"
|
||||||
|
}
|
||||||
|
editor
|
||||||
|
{
|
||||||
|
"color" "220 30 220"
|
||||||
|
"visgroupshown" "1"
|
||||||
|
"visgroupautoshown" "1"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
editor
|
||||||
|
{
|
||||||
|
"color" "220 30 220"
|
||||||
|
"visgroupshown" "1"
|
||||||
|
"visgroupautoshown" "1"
|
||||||
|
"logicalpos" "[16000 15500]"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
entity
|
||||||
{
|
{
|
||||||
"id" "3174898"
|
"id" "3174898"
|
||||||
"classname" "asw_holo_sentry"
|
"classname" "asw_holo_sentry"
|
||||||
|
@ -171100,6 +171744,9 @@ entity
|
||||||
connections
|
connections
|
||||||
{
|
{
|
||||||
"OnSentryPlaced" "sentry_placementDisable0-1"
|
"OnSentryPlaced" "sentry_placementDisable0-1"
|
||||||
|
"OnSentryPlaced" "relay_turret_placedTrigger0-1"
|
||||||
|
"OnSentryPlaced" "relay_no_turret_messageEnable0-1"
|
||||||
|
"OnSentryPlaced" "relay_turret_messageDisable0-1"
|
||||||
}
|
}
|
||||||
"origin" "-6592 768 880"
|
"origin" "-6592 768 880"
|
||||||
editor
|
editor
|
||||||
|
@ -174019,6 +174666,7 @@ entity
|
||||||
"lightworld" "1"
|
"lightworld" "1"
|
||||||
"nearz" "4.0"
|
"nearz" "4.0"
|
||||||
"shadowquality" "1"
|
"shadowquality" "1"
|
||||||
|
"simpleprojection" "0"
|
||||||
"spawnflags" "1"
|
"spawnflags" "1"
|
||||||
"texturename" "effects/flashlight001"
|
"texturename" "effects/flashlight001"
|
||||||
"origin" "-4608.89 628.121 1008.58"
|
"origin" "-4608.89 628.121 1008.58"
|
||||||
|
@ -176491,6 +177139,28 @@ entity
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
entity
|
entity
|
||||||
|
{
|
||||||
|
"id" "3277278"
|
||||||
|
"classname" "path_track"
|
||||||
|
"angles" "0 90 0"
|
||||||
|
"orientationtype" "2"
|
||||||
|
"radius" "0"
|
||||||
|
"target" "path_2"
|
||||||
|
"targetname" "path_1"
|
||||||
|
connections
|
||||||
|
{
|
||||||
|
"OnPass" "combinegunshipSetMaxSpeed800-1"
|
||||||
|
}
|
||||||
|
"origin" "-4576 -9120 960"
|
||||||
|
editor
|
||||||
|
{
|
||||||
|
"color" "255 192 0"
|
||||||
|
"visgroupshown" "1"
|
||||||
|
"visgroupautoshown" "1"
|
||||||
|
"logicalpos" "[0 8000]"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
entity
|
||||||
{
|
{
|
||||||
"id" "3277281"
|
"id" "3277281"
|
||||||
"classname" "path_track"
|
"classname" "path_track"
|
||||||
|
@ -176501,7 +177171,7 @@ entity
|
||||||
"targetname" "path_2"
|
"targetname" "path_2"
|
||||||
connections
|
connections
|
||||||
{
|
{
|
||||||
"OnPass" "train_shipSetSpeed800-1"
|
"OnPass" "combinegunshipSetMaxSpeed800-1"
|
||||||
}
|
}
|
||||||
"origin" "-4224 -9104 1600"
|
"origin" "-4224 -9104 1600"
|
||||||
editor
|
editor
|
||||||
|
@ -179172,31 +179842,13 @@ entity
|
||||||
"logicalpos" "[1500 -9768]"
|
"logicalpos" "[1500 -9768]"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
entity
|
|
||||||
{
|
|
||||||
"id" "3277278"
|
|
||||||
"classname" "path_track"
|
|
||||||
"angles" "0 90 0"
|
|
||||||
"orientationtype" "2"
|
|
||||||
"radius" "0"
|
|
||||||
"target" "path_2"
|
|
||||||
"targetname" "path_1"
|
|
||||||
"origin" "-4576 -9120 960"
|
|
||||||
editor
|
|
||||||
{
|
|
||||||
"color" "255 192 0"
|
|
||||||
"visgroupshown" "1"
|
|
||||||
"visgroupautoshown" "1"
|
|
||||||
"logicalpos" "[0 8000]"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
cameras
|
cameras
|
||||||
{
|
{
|
||||||
"activecamera" "0"
|
"activecamera" "0"
|
||||||
camera
|
camera
|
||||||
{
|
{
|
||||||
"position" "[-4575.48 -9135.1 972.828]"
|
"position" "[-7199.93 -2176.95 1467.34]"
|
||||||
"look" "[-4608.69 -9001.92 742.564]"
|
"look" "[-7349.58 -2145.12 1247.21]"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
cordons
|
cordons
|
||||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -2,7 +2,7 @@ versioninfo
|
||||||
{
|
{
|
||||||
"editorversion" "400"
|
"editorversion" "400"
|
||||||
"editorbuild" "4956"
|
"editorbuild" "4956"
|
||||||
"mapversion" "3283"
|
"mapversion" "3284"
|
||||||
"formatversion" "100"
|
"formatversion" "100"
|
||||||
"prefab" "0"
|
"prefab" "0"
|
||||||
}
|
}
|
||||||
|
@ -80,15 +80,15 @@ viewsettings
|
||||||
world
|
world
|
||||||
{
|
{
|
||||||
"id" "182379"
|
"id" "182379"
|
||||||
"mapversion" "3283"
|
"mapversion" "3284"
|
||||||
"classname" "worldspawn"
|
"classname" "worldspawn"
|
||||||
"detailmaterial" "detail/detailsprites"
|
"detailmaterial" "detail/detailsprites"
|
||||||
"detailvbsp" "detail.vbsp"
|
"detailvbsp" "detail.vbsp"
|
||||||
"maxpropscreenwidth" "-1"
|
"maxpropscreenwidth" "-1"
|
||||||
"minpropscreenwidth" "0"
|
"minpropscreenwidth" "0"
|
||||||
"skyname" "sky_day02_07_hdr"
|
"skyname" "sky_day02_07_hdr"
|
||||||
"speedruntime" "185"
|
"speedruntime" "150"
|
||||||
"speedruntimesp" "185"
|
"speedruntimesp" "150"
|
||||||
solid
|
solid
|
||||||
{
|
{
|
||||||
"id" "376"
|
"id" "376"
|
||||||
|
@ -86307,8 +86307,8 @@ entity
|
||||||
{
|
{
|
||||||
"id" "530362"
|
"id" "530362"
|
||||||
"classname" "asw_gamerules"
|
"classname" "asw_gamerules"
|
||||||
"speedruntime" "185"
|
"speedruntime" "150"
|
||||||
"speedruntimesp" "185"
|
"speedruntimesp" "150"
|
||||||
"origin" "0 0 0"
|
"origin" "0 0 0"
|
||||||
editor
|
editor
|
||||||
{
|
{
|
||||||
|
@ -117853,32 +117853,6 @@ entity
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
entity
|
entity
|
||||||
{
|
|
||||||
"id" "1038974"
|
|
||||||
"classname" "prop_dynamic"
|
|
||||||
"angles" "0 0 0"
|
|
||||||
"DefaultAnim" "pre_idle"
|
|
||||||
"fademindist" "-1"
|
|
||||||
"fadescale" "1"
|
|
||||||
"MaxAnimTime" "10"
|
|
||||||
"MinAnimTime" "5"
|
|
||||||
"model" "models/props/destructable_pipe_set/destructable_bridge_props.mdl"
|
|
||||||
"renderamt" "255"
|
|
||||||
"rendercolor" "255 255 255"
|
|
||||||
"skin" "0"
|
|
||||||
"solid" "6"
|
|
||||||
"spawnflags" "0"
|
|
||||||
"targetname" "pipes_destroy"
|
|
||||||
"origin" "18 -14 -1"
|
|
||||||
editor
|
|
||||||
{
|
|
||||||
"color" "220 30 220"
|
|
||||||
"visgroupshown" "1"
|
|
||||||
"visgroupautoshown" "1"
|
|
||||||
"logicalpos" "[0 500]"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
entity
|
|
||||||
{
|
{
|
||||||
"id" "1039131"
|
"id" "1039131"
|
||||||
"classname" "ambient_generic"
|
"classname" "ambient_generic"
|
||||||
|
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
|
@ -1,8 +1,8 @@
|
||||||
versioninfo
|
versioninfo
|
||||||
{
|
{
|
||||||
"editorversion" "400"
|
"editorversion" "400"
|
||||||
"editorbuild" "4956"
|
"editorbuild" "4961"
|
||||||
"mapversion" "1254"
|
"mapversion" "1255"
|
||||||
"formatversion" "100"
|
"formatversion" "100"
|
||||||
"prefab" "0"
|
"prefab" "0"
|
||||||
}
|
}
|
||||||
|
@ -32,7 +32,7 @@ viewsettings
|
||||||
world
|
world
|
||||||
{
|
{
|
||||||
"id" "8147"
|
"id" "8147"
|
||||||
"mapversion" "1254"
|
"mapversion" "1255"
|
||||||
"classname" "worldspawn"
|
"classname" "worldspawn"
|
||||||
"detailmaterial" "detail/detailsprites"
|
"detailmaterial" "detail/detailsprites"
|
||||||
"detailvbsp" "detail.vbsp"
|
"detailvbsp" "detail.vbsp"
|
||||||
|
@ -51295,6 +51295,82 @@ world
|
||||||
"visgroupautoshown" "1"
|
"visgroupautoshown" "1"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
solid
|
||||||
|
{
|
||||||
|
"id" "1148736"
|
||||||
|
side
|
||||||
|
{
|
||||||
|
"id" "315206"
|
||||||
|
"plane" "(-66 -2816 -304) (244 -2816 -304) (244 -3060 -304)"
|
||||||
|
"material" "TOOLS/TOOLSPLAYERCLIP"
|
||||||
|
"uaxis" "[1 0 0 0] 0.25"
|
||||||
|
"vaxis" "[0 -1 0 0] 0.25"
|
||||||
|
"rotation" "0"
|
||||||
|
"lightmapscale" "16"
|
||||||
|
"smoothing_groups" "0"
|
||||||
|
}
|
||||||
|
side
|
||||||
|
{
|
||||||
|
"id" "315207"
|
||||||
|
"plane" "(-66 -3060 -624) (244 -3060 -624) (244 -2816 -624)"
|
||||||
|
"material" "TOOLS/TOOLSPLAYERCLIP"
|
||||||
|
"uaxis" "[1 0 0 0] 0.25"
|
||||||
|
"vaxis" "[0 -1 0 0] 0.25"
|
||||||
|
"rotation" "0"
|
||||||
|
"lightmapscale" "16"
|
||||||
|
"smoothing_groups" "0"
|
||||||
|
}
|
||||||
|
side
|
||||||
|
{
|
||||||
|
"id" "315208"
|
||||||
|
"plane" "(-66 -2816 -304) (-66 -3060 -304) (-66 -3060 -624)"
|
||||||
|
"material" "TOOLS/TOOLSPLAYERCLIP"
|
||||||
|
"uaxis" "[0 1 0 0] 0.25"
|
||||||
|
"vaxis" "[0 0 -1 0] 0.25"
|
||||||
|
"rotation" "0"
|
||||||
|
"lightmapscale" "16"
|
||||||
|
"smoothing_groups" "0"
|
||||||
|
}
|
||||||
|
side
|
||||||
|
{
|
||||||
|
"id" "315209"
|
||||||
|
"plane" "(244 -2816 -624) (244 -3060 -624) (244 -3060 -304)"
|
||||||
|
"material" "TOOLS/TOOLSPLAYERCLIP"
|
||||||
|
"uaxis" "[0 1 0 0] 0.25"
|
||||||
|
"vaxis" "[0 0 -1 0] 0.25"
|
||||||
|
"rotation" "0"
|
||||||
|
"lightmapscale" "16"
|
||||||
|
"smoothing_groups" "0"
|
||||||
|
}
|
||||||
|
side
|
||||||
|
{
|
||||||
|
"id" "315210"
|
||||||
|
"plane" "(244 -2816 -304) (-66 -2816 -304) (-66 -2816 -624)"
|
||||||
|
"material" "TOOLS/TOOLSPLAYERCLIP"
|
||||||
|
"uaxis" "[1 0 0 0] 0.25"
|
||||||
|
"vaxis" "[0 0 -1 0] 0.25"
|
||||||
|
"rotation" "0"
|
||||||
|
"lightmapscale" "16"
|
||||||
|
"smoothing_groups" "0"
|
||||||
|
}
|
||||||
|
side
|
||||||
|
{
|
||||||
|
"id" "315211"
|
||||||
|
"plane" "(244 -3060 -624) (-66 -3060 -624) (-66 -3060 -304)"
|
||||||
|
"material" "TOOLS/TOOLSPLAYERCLIP"
|
||||||
|
"uaxis" "[1 0 0 0] 0.25"
|
||||||
|
"vaxis" "[0 0 -1 0] 0.25"
|
||||||
|
"rotation" "0"
|
||||||
|
"lightmapscale" "16"
|
||||||
|
"smoothing_groups" "0"
|
||||||
|
}
|
||||||
|
editor
|
||||||
|
{
|
||||||
|
"color" "0 142 155"
|
||||||
|
"visgroupshown" "1"
|
||||||
|
"visgroupautoshown" "1"
|
||||||
|
}
|
||||||
|
}
|
||||||
group
|
group
|
||||||
{
|
{
|
||||||
"id" "82010"
|
"id" "82010"
|
||||||
|
@ -271916,8 +271992,8 @@ cameras
|
||||||
"activecamera" "0"
|
"activecamera" "0"
|
||||||
camera
|
camera
|
||||||
{
|
{
|
||||||
"position" "[86.99 -2826.5 -468.697]"
|
"position" "[340.584 -3163.69 -372.589]"
|
||||||
"look" "[86.99 3379.34 -468.697]"
|
"look" "[-1762.81 2259.29 -2535.76]"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
cordons
|
cordons
|
||||||
|
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
Binary file not shown.
After Width: | Height: | Size: 256 KiB |
|
@ -0,0 +1,3 @@
|
||||||
|
"nonice" "1"
|
||||||
|
"nolod" "1"
|
||||||
|
"nomip" "1"
|
|
@ -1,8 +1,8 @@
|
||||||
versioninfo
|
versioninfo
|
||||||
{
|
{
|
||||||
"editorversion" "400"
|
"editorversion" "400"
|
||||||
"editorbuild" "4955"
|
"editorbuild" "4957"
|
||||||
"mapversion" "2088"
|
"mapversion" "2089"
|
||||||
"formatversion" "100"
|
"formatversion" "100"
|
||||||
"prefab" "0"
|
"prefab" "0"
|
||||||
}
|
}
|
||||||
|
@ -50,7 +50,7 @@ viewsettings
|
||||||
world
|
world
|
||||||
{
|
{
|
||||||
"id" "394754"
|
"id" "394754"
|
||||||
"mapversion" "2088"
|
"mapversion" "2089"
|
||||||
"classname" "worldspawn"
|
"classname" "worldspawn"
|
||||||
"detailmaterial" "detail/detailsprites"
|
"detailmaterial" "detail/detailsprites"
|
||||||
"detailvbsp" "detail.vbsp"
|
"detailvbsp" "detail.vbsp"
|
||||||
|
@ -10896,8 +10896,8 @@ entity
|
||||||
{
|
{
|
||||||
"id" "1841164"
|
"id" "1841164"
|
||||||
"classname" "asw_debrief_info"
|
"classname" "asw_debrief_info"
|
||||||
"DebriefText1" "#asw_landingbay_db1"
|
"DebriefText1" "#asw_cargo_db1"
|
||||||
"DebriefText2" "#asw_landingbay_db2"
|
"DebriefText2" "#asw_cargo_db2"
|
||||||
"origin" "-1887 7020 1042"
|
"origin" "-1887 7020 1042"
|
||||||
editor
|
editor
|
||||||
{
|
{
|
||||||
|
|
|
@ -1,8 +1,8 @@
|
||||||
versioninfo
|
versioninfo
|
||||||
{
|
{
|
||||||
"editorversion" "400"
|
"editorversion" "400"
|
||||||
"editorbuild" "4956"
|
"editorbuild" "4961"
|
||||||
"mapversion" "3601"
|
"mapversion" "3602"
|
||||||
"formatversion" "100"
|
"formatversion" "100"
|
||||||
"prefab" "0"
|
"prefab" "0"
|
||||||
}
|
}
|
||||||
|
@ -50,7 +50,7 @@ viewsettings
|
||||||
world
|
world
|
||||||
{
|
{
|
||||||
"id" "394754"
|
"id" "394754"
|
||||||
"mapversion" "3601"
|
"mapversion" "3602"
|
||||||
"classname" "worldspawn"
|
"classname" "worldspawn"
|
||||||
"detailmaterial" "detail/detailsprites"
|
"detailmaterial" "detail/detailsprites"
|
||||||
"detailvbsp" "detail.vbsp"
|
"detailvbsp" "detail.vbsp"
|
||||||
|
@ -83794,6 +83794,7 @@ entity
|
||||||
connections
|
connections
|
||||||
{
|
{
|
||||||
"OnTrigger" "ins_ranger2_spawnStartSpawning0-1"
|
"OnTrigger" "ins_ranger2_spawnStartSpawning0-1"
|
||||||
|
"OnTrigger" "ramp_room_spawn_01StartSpawning1-1"
|
||||||
}
|
}
|
||||||
solid
|
solid
|
||||||
{
|
{
|
||||||
|
@ -85364,8 +85365,8 @@ cameras
|
||||||
"activecamera" "0"
|
"activecamera" "0"
|
||||||
camera
|
camera
|
||||||
{
|
{
|
||||||
"position" "[-5815.91 794.565 1596.64]"
|
"position" "[-5439.43 4433.65 1516.29]"
|
||||||
"look" "[-2039.13 -3284.06 -1358.97]"
|
"look" "[-6158.24 5678.66 -4613]"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
cordons
|
cordons
|
||||||
|
|
|
@ -708,6 +708,9 @@ public:
|
||||||
// returns true if we are of type C_ClientRagdoll
|
// returns true if we are of type C_ClientRagdoll
|
||||||
virtual bool IsClientRagdoll() const { return true; }
|
virtual bool IsClientRagdoll() const { return true; }
|
||||||
|
|
||||||
|
protected:
|
||||||
|
bool m_bReleaseRagdoll;
|
||||||
|
|
||||||
private:
|
private:
|
||||||
int m_iCurrentFriction;
|
int m_iCurrentFriction;
|
||||||
int m_iMinFriction;
|
int m_iMinFriction;
|
||||||
|
@ -716,7 +719,6 @@ private:
|
||||||
float m_flFrictionTime;
|
float m_flFrictionTime;
|
||||||
|
|
||||||
int m_iFrictionAnimState;
|
int m_iFrictionAnimState;
|
||||||
bool m_bReleaseRagdoll;
|
|
||||||
|
|
||||||
bool m_bFadingOut;
|
bool m_bFadingOut;
|
||||||
|
|
||||||
|
|
|
@ -585,6 +585,11 @@ static int SoundscapeCompletion( const char *partial, char commands[ COMMAND_COM
|
||||||
return current;
|
return current;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void ForceSoundscape( const char *pSoundscapeName, float radius )
|
||||||
|
{
|
||||||
|
GetClientSoundscapeSystem()->ForceSoundscape( pSoundscapeName, radius );
|
||||||
|
}
|
||||||
|
|
||||||
CON_COMMAND_F_COMPLETION( playsoundscape, "Forces a soundscape to play", FCVAR_CHEAT, SoundscapeCompletion )
|
CON_COMMAND_F_COMPLETION( playsoundscape, "Forces a soundscape to play", FCVAR_CHEAT, SoundscapeCompletion )
|
||||||
{
|
{
|
||||||
FOR_EACH_VALID_SPLITSCREEN_PLAYER( hh )
|
FOR_EACH_VALID_SPLITSCREEN_PLAYER( hh )
|
||||||
|
|
|
@ -945,9 +945,14 @@ static ConCommand startcamin( "+camin", CAM_InDown );
|
||||||
static ConCommand endcamin( "-camin", CAM_InUp );
|
static ConCommand endcamin( "-camin", CAM_InUp );
|
||||||
static ConCommand startcamout( "+camout", CAM_OutDown );
|
static ConCommand startcamout( "+camout", CAM_OutDown );
|
||||||
static ConCommand camout( "-camout", CAM_OutUp );
|
static ConCommand camout( "-camout", CAM_OutUp );
|
||||||
|
#ifdef INFESTED_DLL
|
||||||
|
static ConCommand thirdperson( "thirdperson", Cmd_CAM_ToThirdPerson, "Switch to thirdperson camera." );
|
||||||
|
static ConCommand firstperson( "firstperson", Cmd_CAM_ToFirstPerson, "Switch to firstperson camera.", FCVAR_CHEAT );
|
||||||
|
#else
|
||||||
static ConCommand thirdperson( "thirdperson", Cmd_CAM_ToThirdPerson, "Switch to thirdperson camera.", FCVAR_CHEAT );
|
static ConCommand thirdperson( "thirdperson", Cmd_CAM_ToThirdPerson, "Switch to thirdperson camera.", FCVAR_CHEAT );
|
||||||
static ConCommand thirdperson_mayamode( "thirdperson_mayamode", ::CAM_ToThirdPerson_MayaMode, "Switch to thirdperson Maya-like camera controls.", FCVAR_CHEAT );
|
|
||||||
static ConCommand firstperson( "firstperson", Cmd_CAM_ToFirstPerson, "Switch to firstperson camera." );
|
static ConCommand firstperson( "firstperson", Cmd_CAM_ToFirstPerson, "Switch to firstperson camera." );
|
||||||
|
#endif
|
||||||
|
static ConCommand thirdperson_mayamode( "thirdperson_mayamode", ::CAM_ToThirdPerson_MayaMode, "Switch to thirdperson Maya-like camera controls.", FCVAR_CHEAT );
|
||||||
static ConCommand thirdpersonshoulder( "thirdpersonshoulder", Cmd_CAM_ToThirdPersonShoulder, "Switch to thirdperson-shoulder camera." );
|
static ConCommand thirdpersonshoulder( "thirdpersonshoulder", Cmd_CAM_ToThirdPersonShoulder, "Switch to thirdperson-shoulder camera." );
|
||||||
static ConCommand camortho( "camortho", Cmd_CAM_ToOrthographic, "Switch to orthographic camera.", FCVAR_CHEAT );
|
static ConCommand camortho( "camortho", Cmd_CAM_ToOrthographic, "Switch to orthographic camera.", FCVAR_CHEAT );
|
||||||
static ConCommand startcammousemove( "+cammousemove",::CAM_StartMouseMove);
|
static ConCommand startcammousemove( "+cammousemove",::CAM_StartMouseMove);
|
||||||
|
|
|
@ -282,6 +282,29 @@ bool CASW_Briefing::IsLobbySlotLocal( int nLobbySlot )
|
||||||
return pMR->GetCommander() && ( pMR->GetCommander() == C_ASW_Player::GetLocalASWPlayer() );
|
return pMR->GetCommander() && ( pMR->GetCommander() == C_ASW_Player::GetLocalASWPlayer() );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool CASW_Briefing::IsLobbySlotBot( int nLobbySlot )
|
||||||
|
{
|
||||||
|
if ( nLobbySlot < 0 || nLobbySlot >= NUM_BRIEFING_LOBBY_SLOTS || !IsLobbySlotOccupied( nLobbySlot ) )
|
||||||
|
return false;
|
||||||
|
|
||||||
|
int nMarineResourceIndex = LobbySlotToMarineResourceIndex( nLobbySlot );
|
||||||
|
C_ASW_Marine_Resource *pMR = ASWGameResource() ? ASWGameResource()->GetMarineResource( nMarineResourceIndex ) : NULL;
|
||||||
|
|
||||||
|
bool bHuman = ( pMR == NULL );
|
||||||
|
|
||||||
|
if ( pMR )
|
||||||
|
{
|
||||||
|
C_ASW_Player *pPlayer = m_LobbySlotMapping[ nLobbySlot ].m_hPlayer.Get();
|
||||||
|
C_ASW_Marine_Resource *pFirstMR = pPlayer ? ASWGameResource()->GetFirstMarineResourceForPlayer( pPlayer ) : NULL;
|
||||||
|
|
||||||
|
if ( pFirstMR == pMR )
|
||||||
|
{
|
||||||
|
bHuman = true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return !bHuman;
|
||||||
|
}
|
||||||
|
|
||||||
wchar_t* CASW_Briefing::GetMarineOrPlayerName( int nLobbySlot )
|
wchar_t* CASW_Briefing::GetMarineOrPlayerName( int nLobbySlot )
|
||||||
{
|
{
|
||||||
if ( nLobbySlot < 0 || nLobbySlot >= NUM_BRIEFING_LOBBY_SLOTS || !IsLobbySlotOccupied( nLobbySlot ) )
|
if ( nLobbySlot < 0 || nLobbySlot >= NUM_BRIEFING_LOBBY_SLOTS || !IsLobbySlotOccupied( nLobbySlot ) )
|
||||||
|
|
|
@ -32,6 +32,7 @@ public:
|
||||||
virtual void StartMission();
|
virtual void StartMission();
|
||||||
virtual bool IsLobbySlotOccupied( int nLobbySlot );
|
virtual bool IsLobbySlotOccupied( int nLobbySlot );
|
||||||
virtual bool IsLobbySlotLocal( int nLobbySlot );
|
virtual bool IsLobbySlotLocal( int nLobbySlot );
|
||||||
|
virtual bool IsLobbySlotBot( int nLobbySlot );
|
||||||
virtual wchar_t* GetMarineOrPlayerName( int nLobbySlot );
|
virtual wchar_t* GetMarineOrPlayerName( int nLobbySlot );
|
||||||
virtual wchar_t* GetMarineName( int nLobbySlot ); // always returns the marine's profile name
|
virtual wchar_t* GetMarineName( int nLobbySlot ); // always returns the marine's profile name
|
||||||
virtual const char* GetPlayerNameForMarineProfile( int nProfileIndex );
|
virtual const char* GetPlayerNameForMarineProfile( int nProfileIndex );
|
||||||
|
|
|
@ -21,7 +21,7 @@ CASW_Client_Entities::CASW_Client_Entities()
|
||||||
|
|
||||||
void CASW_Client_Entities::LevelInitPostEntity()
|
void CASW_Client_Entities::LevelInitPostEntity()
|
||||||
{
|
{
|
||||||
C_ASW_Camera_Volume::RecreateAll();
|
//C_ASW_Camera_Volume::RecreateAll();
|
||||||
C_ASW_Snow_Volume::RecreateAll();
|
C_ASW_Snow_Volume::RecreateAll();
|
||||||
//C_Sprite::RecreateAll();
|
//C_Sprite::RecreateAll();
|
||||||
C_ASW_Scanner_Noise::RecreateAll();
|
C_ASW_Scanner_Noise::RecreateAll();
|
||||||
|
@ -29,7 +29,7 @@ void CASW_Client_Entities::LevelInitPostEntity()
|
||||||
|
|
||||||
void CASW_Client_Entities::LevelShutdownPreEntity()
|
void CASW_Client_Entities::LevelShutdownPreEntity()
|
||||||
{
|
{
|
||||||
C_ASW_Camera_Volume::DestroyAll();
|
//C_ASW_Camera_Volume::DestroyAll();
|
||||||
C_ASW_Snow_Volume::DestroyAll();
|
C_ASW_Snow_Volume::DestroyAll();
|
||||||
//C_Sprite::DestroyAll();
|
//C_Sprite::DestroyAll();
|
||||||
C_ASW_Scanner_Noise::DestroyAll();
|
C_ASW_Scanner_Noise::DestroyAll();
|
||||||
|
|
|
@ -935,6 +935,12 @@ void CASWInput::ComputeNewMarineFacing( C_ASW_Player *pPlayer, const Vector &Hit
|
||||||
void CASWInput::TurnTowardMouse(QAngle& viewangles, CUserCmd *cmd)
|
void CASWInput::TurnTowardMouse(QAngle& viewangles, CUserCmd *cmd)
|
||||||
{
|
{
|
||||||
VPROF_BUDGET( "CASWInput::TurnTowardMouse", VPROF_BUDGETGROUP_ASW_CLIENT );
|
VPROF_BUDGET( "CASWInput::TurnTowardMouse", VPROF_BUDGETGROUP_ASW_CLIENT );
|
||||||
|
|
||||||
|
if ( !engine->IsActiveApp() )
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
float mx, my;
|
float mx, my;
|
||||||
|
|
||||||
C_ASW_Player *pPlayer = C_ASW_Player::GetLocalASWPlayer();
|
C_ASW_Player *pPlayer = C_ASW_Player::GetLocalASWPlayer();
|
||||||
|
@ -945,6 +951,11 @@ void CASWInput::TurnTowardMouse(QAngle& viewangles, CUserCmd *cmd)
|
||||||
int iScreenWidth, iScreenHeight;
|
int iScreenWidth, iScreenHeight;
|
||||||
engine->GetScreenSize( iScreenWidth, iScreenHeight );
|
engine->GetScreenSize( iScreenWidth, iScreenHeight );
|
||||||
|
|
||||||
|
if ( iScreenWidth <= 0 || iScreenHeight <= 0 )
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
int x, y;
|
int x, y;
|
||||||
GetWindowCenter( x, y );
|
GetWindowCenter( x, y );
|
||||||
|
|
||||||
|
|
|
@ -574,7 +574,7 @@ void reset_xp_f()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static ConCommand reset_xp( "reset_xp", reset_xp_f, "Clears your experience", FCVAR_NONE );
|
static ConCommand reset_xp( "reset_xp", reset_xp_f, "Clears your experience", FCVAR_DEVELOPMENTONLY );
|
||||||
|
|
||||||
|
|
||||||
void C_ASW_Medal_Store::OnIncreaseCounts(int iAddMission, int iAddCampaign, int iAddKills, bool bOffline)
|
void C_ASW_Medal_Store::OnIncreaseCounts(int iAddMission, int iAddCampaign, int iAddKills, bool bOffline)
|
||||||
|
|
|
@ -37,6 +37,8 @@ C_ASW_Ammo_Drop::C_ASW_Ammo_Drop() :
|
||||||
m_iAmmoUnitsRemaining = DEFAULT_AMMO_DROP_UNITS;
|
m_iAmmoUnitsRemaining = DEFAULT_AMMO_DROP_UNITS;
|
||||||
|
|
||||||
g_AmmoDrops.AddToTail( this );
|
g_AmmoDrops.AddToTail( this );
|
||||||
|
|
||||||
|
m_bEnoughAmmo = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -82,7 +84,7 @@ bool C_ASW_Ammo_Drop::GetUseAction(ASWUseAction &action, C_ASW_Marine *pUser)
|
||||||
|
|
||||||
if ( !AllowedToPickup( pUser ) )
|
if ( !AllowedToPickup( pUser ) )
|
||||||
{
|
{
|
||||||
if ( pUser->CanPickupPrimaryAmmo() )
|
if ( !m_bEnoughAmmo )
|
||||||
{
|
{
|
||||||
TryLocalize( "#asw_not_enough_ammo_drop", action.wszText, sizeof( action.wszText ) );
|
TryLocalize( "#asw_not_enough_ammo_drop", action.wszText, sizeof( action.wszText ) );
|
||||||
}
|
}
|
||||||
|
@ -180,7 +182,9 @@ C_ASW_Weapon* C_ASW_Ammo_Drop::GetAmmoUseUnits( C_ASW_Marine *pMarine )
|
||||||
int iBullets = pMarine->GetAmmoCount( iAmmoType );
|
int iBullets = pMarine->GetAmmoCount( iAmmoType );
|
||||||
int iAmmoCost = CASW_Ammo_Drop_Shared::GetAmmoUnitCost( iAmmoType );
|
int iAmmoCost = CASW_Ammo_Drop_Shared::GetAmmoUnitCost( iAmmoType );
|
||||||
|
|
||||||
if ( ( iBullets < iMaxAmmoCount ) && ( m_iAmmoUnitsRemaining >= iAmmoCost ) )
|
m_bEnoughAmmo = m_iAmmoUnitsRemaining >= iAmmoCost;
|
||||||
|
|
||||||
|
if ( ( iBullets < iMaxAmmoCount ) && m_bEnoughAmmo )
|
||||||
{
|
{
|
||||||
return pWeapon;
|
return pWeapon;
|
||||||
}
|
}
|
||||||
|
|
|
@ -51,6 +51,7 @@ public:
|
||||||
|
|
||||||
private:
|
private:
|
||||||
C_ASW_Ammo_Drop( const C_ASW_Ammo_Drop & ); // not defined, not accessible
|
C_ASW_Ammo_Drop( const C_ASW_Ammo_Drop & ); // not defined, not accessible
|
||||||
|
bool m_bEnoughAmmo;
|
||||||
};
|
};
|
||||||
|
|
||||||
extern CUtlVector<C_ASW_Ammo_Drop*> g_AmmoDrops;
|
extern CUtlVector<C_ASW_Ammo_Drop*> g_AmmoDrops;
|
||||||
|
|
|
@ -16,7 +16,7 @@ BEGIN_DATADESC( C_ASW_ClientRagdoll )
|
||||||
DEFINE_FIELD( m_iSourceEntityIndex, FIELD_INTEGER ),
|
DEFINE_FIELD( m_iSourceEntityIndex, FIELD_INTEGER ),
|
||||||
END_DATADESC()
|
END_DATADESC()
|
||||||
|
|
||||||
ConVar asw_drone_ridiculous( "asw_drone_ridiculous", "0", FCVAR_NONE, "(testing) If true, hurl drone ragdolls at camera in a ridiculous fashion." );
|
ConVar asw_drone_ridiculous( "asw_drone_ridiculous", "0", FCVAR_CHEAT, "If true, hurl drone ragdolls at camera in a ridiculous fashion." );
|
||||||
ConVar asw_drone_gib_velocity( "asw_drone_gib_velocity", "1.75", FCVAR_CHEAT, "Drone gibs will inherit the velocity of the parent ragdoll scaled by this" );
|
ConVar asw_drone_gib_velocity( "asw_drone_gib_velocity", "1.75", FCVAR_CHEAT, "Drone gibs will inherit the velocity of the parent ragdoll scaled by this" );
|
||||||
extern ConVar asw_breakable_aliens;
|
extern ConVar asw_breakable_aliens;
|
||||||
extern ConVar asw_alien_debug_death_style;
|
extern ConVar asw_alien_debug_death_style;
|
||||||
|
@ -174,6 +174,13 @@ void C_ASW_ClientRagdoll::BreakRagdoll()
|
||||||
//ConVar test_hurl( "test_hurl", "0.25" );
|
//ConVar test_hurl( "test_hurl", "0.25" );
|
||||||
void C_ASW_ClientRagdoll::ClientThink( void )
|
void C_ASW_ClientRagdoll::ClientThink( void )
|
||||||
{
|
{
|
||||||
|
// if parent is going to delete us, make sure we do nothing else
|
||||||
|
if ( m_bReleaseRagdoll )
|
||||||
|
{
|
||||||
|
BaseClass::ClientThink();
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
BaseClass::ClientThink();
|
BaseClass::ClientThink();
|
||||||
|
|
||||||
// OLD STUFF
|
// OLD STUFF
|
||||||
|
|
|
@ -750,17 +750,9 @@ void reset_steam_stats_f()
|
||||||
pPlayer->RequestExperience();
|
pPlayer->RequestExperience();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
ConCommand reset_steam_stats( "reset_steam_stats", reset_steam_stats_f, "Resets steam stats (experience, etc.)", FCVAR_NONE );
|
ConCommand reset_steam_stats( "reset_steam_stats", reset_steam_stats_f, "Resets steam stats (experience, etc.)", FCVAR_DEVELOPMENTONLY );
|
||||||
|
|
||||||
|
|
||||||
void asw_award_xp_f()
|
|
||||||
{
|
|
||||||
C_ASW_Player *pPlayer = C_ASW_Player::GetLocalASWPlayer();
|
|
||||||
if ( pPlayer )
|
|
||||||
{
|
|
||||||
pPlayer->AwardExperience();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
ConCommand asw_award_xp( "asw_award_xp", asw_award_xp_f, "Awards XP on end screen", FCVAR_NONE );
|
|
||||||
|
|
||||||
void asw_show_xp_f()
|
void asw_show_xp_f()
|
||||||
{
|
{
|
||||||
|
|
|
@ -30,6 +30,34 @@ bool C_ASW_Door_Area::GetUseAction(ASWUseAction &action, C_ASW_Marine *pUser)
|
||||||
if ( !pDoor || !pUser )
|
if ( !pDoor || !pUser )
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
|
bool bHasWelder = pUser->Weapon_OwnsThisType( "asw_weapon_welder" ) != NULL;
|
||||||
|
|
||||||
|
if ( !bHasWelder )
|
||||||
|
{
|
||||||
|
CASW_Hud_Master *pHUDMaster = GET_HUDELEMENT( CASW_Hud_Master );
|
||||||
|
if ( pHUDMaster )
|
||||||
|
{
|
||||||
|
int nWelderPosition = pHUDMaster->GetHotBarSlot( "asw_weapon_welder" );
|
||||||
|
|
||||||
|
if ( nWelderPosition != -1 && pHUDMaster->OwnsHotBarSlot( pUser->GetCommander(), nWelderPosition ) )
|
||||||
|
{
|
||||||
|
bHasWelder = true;
|
||||||
|
if ( nWelderPosition >= 100 )
|
||||||
|
{
|
||||||
|
V_strncpy( action.szCommand, "+walk", sizeof( action.szCommand ) );
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
V_snprintf( action.szCommand, sizeof( action.szCommand ), "asw_squad_hotbar %i", nWelderPosition + 1 );
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
V_strncpy( action.szCommand, "+grenade1", sizeof( action.szCommand ) );
|
||||||
|
}
|
||||||
|
|
||||||
// if door is sealed
|
// if door is sealed
|
||||||
// add sealed icon with bar showing seal percent
|
// add sealed icon with bar showing seal percent
|
||||||
if ( pDoor->GetHealth() > 0 )
|
if ( pDoor->GetHealth() > 0 )
|
||||||
|
@ -46,23 +74,13 @@ bool C_ASW_Door_Area::GetUseAction(ASWUseAction &action, C_ASW_Marine *pUser)
|
||||||
action.UseIconRed = 255;
|
action.UseIconRed = 255;
|
||||||
action.UseIconGreen = 255;
|
action.UseIconGreen = 255;
|
||||||
action.UseIconBlue = 255;
|
action.UseIconBlue = 255;
|
||||||
action.bShowUseKey = false;
|
action.bShowUseKey = bHasWelder;
|
||||||
action.iInventorySlot = -1;
|
action.iInventorySlot = -1;
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
else if ( pUser->GetActiveWeapon() )
|
else if ( pUser->GetActiveWeapon() )
|
||||||
{
|
{
|
||||||
bool bHasWelder = pUser->Weapon_OwnsThisType( "asw_weapon_welder" ) != NULL;
|
|
||||||
|
|
||||||
if ( !bHasWelder )
|
|
||||||
{
|
|
||||||
CASW_Hud_Master *pHUDMaster = GET_HUDELEMENT( CASW_Hud_Master );
|
|
||||||
if ( pHUDMaster )
|
|
||||||
{
|
|
||||||
bHasWelder = ( pHUDMaster->GetHotBarSlot( "asw_weapon_welder" ) != -1 );
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if ( bHasWelder )
|
if ( bHasWelder )
|
||||||
{
|
{
|
||||||
if ( pDoor->GetSealAmount() >= 1.0f )
|
if ( pDoor->GetSealAmount() >= 1.0f )
|
||||||
|
@ -80,7 +98,7 @@ bool C_ASW_Door_Area::GetUseAction(ASWUseAction &action, C_ASW_Marine *pUser)
|
||||||
action.UseIconRed = 255;
|
action.UseIconRed = 255;
|
||||||
action.UseIconGreen = 255;
|
action.UseIconGreen = 255;
|
||||||
action.UseIconBlue = 255;
|
action.UseIconBlue = 255;
|
||||||
action.bShowUseKey = false;
|
action.bShowUseKey = true;
|
||||||
action.iInventorySlot = -1;
|
action.iInventorySlot = -1;
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
|
@ -18,7 +18,6 @@ END_PREDICTION_DATA()
|
||||||
|
|
||||||
ConVar cl_asw_drone_travel_yaw("cl_asw_drone_travel_yaw", "0", FCVAR_CHEAT, "Show the clientside estimated travel yaw for swarm drones");
|
ConVar cl_asw_drone_travel_yaw("cl_asw_drone_travel_yaw", "0", FCVAR_CHEAT, "Show the clientside estimated travel yaw for swarm drones");
|
||||||
ConVar cl_asw_drone_travel_yaw_rate("cl_asw_drone_travel_yaw_rate", "4.0f", FCVAR_CHEAT, "How fast the drones alter their move_yaw param");
|
ConVar cl_asw_drone_travel_yaw_rate("cl_asw_drone_travel_yaw_rate", "4.0f", FCVAR_CHEAT, "How fast the drones alter their move_yaw param");
|
||||||
ConVar asw_drone_layers("asw_drone_layers", "1", 0, "Apply drone animation layers");
|
|
||||||
ConVar asw_debug_drone_pose( "asw_debug_drone_pose", "0", FCVAR_NONE, "Set to drone entity index to output drone pose params" );
|
ConVar asw_debug_drone_pose( "asw_debug_drone_pose", "0", FCVAR_NONE, "Set to drone entity index to output drone pose params" );
|
||||||
ConVar asw_drone_jump_pitch_min( "asw_drone_jump_pitch_min", "-45", FCVAR_NONE, "Min pitch for drone's jumping pose parameter" );
|
ConVar asw_drone_jump_pitch_min( "asw_drone_jump_pitch_min", "-45", FCVAR_NONE, "Min pitch for drone's jumping pose parameter" );
|
||||||
ConVar asw_drone_jump_pitch_max( "asw_drone_jump_pitch_max", "45", FCVAR_NONE, "Min pitch for drone's jumping pose parameter" );
|
ConVar asw_drone_jump_pitch_max( "asw_drone_jump_pitch_max", "45", FCVAR_NONE, "Min pitch for drone's jumping pose parameter" );
|
||||||
|
|
|
@ -45,7 +45,6 @@
|
||||||
// memdbgon must be the last include file in a .cpp file!!!
|
// memdbgon must be the last include file in a .cpp file!!!
|
||||||
#include "tier0/memdbgon.h"
|
#include "tier0/memdbgon.h"
|
||||||
|
|
||||||
ConVar asw_drone_bleed_gibs("asw_drone_bleed_gibs", "1", 0, "Number of gibs drones should give off when shot");
|
|
||||||
ConVar asw_gib_bleed_time("asw_gib_bleed_time", "1.5", 0, "How long drone gibs bleed for");
|
ConVar asw_gib_bleed_time("asw_gib_bleed_time", "1.5", 0, "How long drone gibs bleed for");
|
||||||
ConVar asw_pierce_spark_scale("asw_pierce_spark_scale", "0.9", 0, "Scale applied to piercing spark effect");
|
ConVar asw_pierce_spark_scale("asw_pierce_spark_scale", "0.9", 0, "Scale applied to piercing spark effect");
|
||||||
ConVar asw_tracer_style("asw_tracer_style", "1", FCVAR_ARCHIVE, "Specify tracer style. 0=none 1=normal 2=grey line");
|
ConVar asw_tracer_style("asw_tracer_style", "1", FCVAR_ARCHIVE, "Specify tracer style. 0=none 1=normal 2=grey line");
|
||||||
|
@ -105,44 +104,43 @@ PRECACHE( MATERIAL, "vgui/swarm/hacking/rightconnect" )
|
||||||
PRECACHE( MATERIAL, "vgui/swarm/hacking/swarmdoorhackopen" )
|
PRECACHE( MATERIAL, "vgui/swarm/hacking/swarmdoorhackopen" )
|
||||||
PRECACHE( MATERIAL, "vgui/swarm/hacking/fastmarker" )
|
PRECACHE( MATERIAL, "vgui/swarm/hacking/fastmarker" )
|
||||||
PRECACHE( MATERIAL, "vgui/swarm/hud/tickboxticked" )
|
PRECACHE( MATERIAL, "vgui/swarm/hud/tickboxticked" )
|
||||||
PRECACHE( MATERIAL, "vgui/swarm/hud/clipsicon" )
|
|
||||||
PRECACHE( MATERIAL, "vgui/swarm/hud/horizdoorhealthbar" )
|
PRECACHE( MATERIAL, "vgui/swarm/hud/horizdoorhealthbar" )
|
||||||
PRECACHE( MATERIAL, "vgui/swarm/hud/horizdoorhealthbarr" )
|
PRECACHE( MATERIAL, "vgui/swarm/hud/horizdoorhealthbarr" )
|
||||||
PRECACHE( MATERIAL, "vgui/swarm/hud/horizdoorhealthbari" )
|
PRECACHE( MATERIAL, "vgui/swarm/hud/horizdoorhealthbari" )
|
||||||
PRECACHE( MATERIAL, "vgui/swarm/hud/doorhealth" )
|
PRECACHE( MATERIAL, "vgui/swarm/hud/doorhealth" )
|
||||||
PRECACHE( MATERIAL, "vgui/swarm/hud/doorweld" )
|
PRECACHE( MATERIAL, "vgui/swarm/hud/doorweld" )
|
||||||
|
|
||||||
PRECACHE( MATERIAL, "vgui/swarm/briefing/statshots" )
|
//PRECACHE( MATERIAL, "vgui/swarm/briefing/statshots" )
|
||||||
PRECACHE( MATERIAL, "vgui/swarm/briefing/statdamage" )
|
//PRECACHE( MATERIAL, "vgui/swarm/briefing/statdamage" )
|
||||||
PRECACHE( MATERIAL, "vgui/swarm/briefing/skillparticle" )
|
PRECACHE( MATERIAL, "vgui/swarm/briefing/skillparticle" )
|
||||||
PRECACHE( MATERIAL, "vgui/icon_button_arrow_right" )
|
PRECACHE( MATERIAL, "vgui/icon_button_arrow_right" )
|
||||||
|
|
||||||
PRECACHE( MATERIAL, "vgui/swarm/briefing/statkilled" )
|
//PRECACHE( MATERIAL, "vgui/swarm/briefing/statkilled" )
|
||||||
PRECACHE( MATERIAL, "vgui/swarm/briefing/stattime" )
|
//PRECACHE( MATERIAL, "vgui/swarm/briefing/stattime" )
|
||||||
PRECACHE( MATERIAL, "vgui/swarm/briefing/stataccuracy" )
|
//PRECACHE( MATERIAL, "vgui/swarm/briefing/stataccuracy" )
|
||||||
PRECACHE( MATERIAL, "vgui/swarm/briefing/statfriendly" )
|
//PRECACHE( MATERIAL, "vgui/swarm/briefing/statfriendly" )
|
||||||
PRECACHE( MATERIAL, "vgui/swarm/briefing/statshots2" )
|
//PRECACHE( MATERIAL, "vgui/swarm/briefing/statshots2" )
|
||||||
PRECACHE( MATERIAL, "vgui/swarm/briefing/statskillpoints" )
|
//PRECACHE( MATERIAL, "vgui/swarm/briefing/statskillpoints" )
|
||||||
PRECACHE( MATERIAL, "vgui/swarm/briefing/statburned" )
|
//PRECACHE( MATERIAL, "vgui/swarm/briefing/statburned" )
|
||||||
PRECACHE( MATERIAL, "vgui/swarm/briefing/statheal" )
|
//PRECACHE( MATERIAL, "vgui/swarm/briefing/statheal" )
|
||||||
PRECACHE( MATERIAL, "vgui/swarm/briefing/stathack" )
|
//PRECACHE( MATERIAL, "vgui/swarm/briefing/stathack" )
|
||||||
PRECACHE( MATERIAL, "vgui/swarm/briefing/topleftbracket" )
|
PRECACHE( MATERIAL, "vgui/swarm/briefing/topleftbracket" )
|
||||||
PRECACHE( MATERIAL, "vgui/swarm/briefing/toprightbracket" )
|
PRECACHE( MATERIAL, "vgui/swarm/briefing/toprightbracket" )
|
||||||
PRECACHE( MATERIAL, "vgui/swarm/briefing/bottomleftbracket" )
|
PRECACHE( MATERIAL, "vgui/swarm/briefing/bottomleftbracket" )
|
||||||
PRECACHE( MATERIAL, "vgui/swarm/briefing/bottomrightbracket" )
|
PRECACHE( MATERIAL, "vgui/swarm/briefing/bottomrightbracket" )
|
||||||
PRECACHE( MATERIAL, "vgui/swarm/briefing/shadedbutton" )
|
PRECACHE( MATERIAL, "vgui/swarm/briefing/shadedbutton" )
|
||||||
PRECACHE( MATERIAL, "vgui/swarm/briefing/shadedbutton_over" )
|
PRECACHE( MATERIAL, "vgui/swarm/briefing/shadedbutton_over" )
|
||||||
PRECACHE( MATERIAL, "vgui/swarm/ObjectiveIcons/OIconBloodhound" )
|
//PRECACHE( MATERIAL, "vgui/swarm/ObjectiveIcons/OIconBloodhound" )
|
||||||
PRECACHE( MATERIAL, "vgui/swarm/ObjectiveIcons/OIconCargoForklift" )
|
//PRECACHE( MATERIAL, "vgui/swarm/ObjectiveIcons/OIconCargoForklift" )
|
||||||
PRECACHE( MATERIAL, "vgui/swarm/ObjectiveIcons/OIconDroneSide" )
|
//PRECACHE( MATERIAL, "vgui/swarm/ObjectiveIcons/OIconDroneSide" )
|
||||||
PRECACHE( MATERIAL, "vgui/swarm/ObjectiveIcons/OIconDroneTop" )
|
//PRECACHE( MATERIAL, "vgui/swarm/ObjectiveIcons/OIconDroneTop" )
|
||||||
PRECACHE( MATERIAL, "vgui/swarm/ObjectiveIcons/OIconEgg" )
|
//PRECACHE( MATERIAL, "vgui/swarm/ObjectiveIcons/OIconEgg" )
|
||||||
PRECACHE( MATERIAL, "vgui/swarm/ObjectiveIcons/OIconParasiteSide" )
|
//PRECACHE( MATERIAL, "vgui/swarm/ObjectiveIcons/OIconParasiteSide" )
|
||||||
PRECACHE( MATERIAL, "vgui/swarm/ObjectiveIcons/OIconParasiteTop" )
|
//PRECACHE( MATERIAL, "vgui/swarm/ObjectiveIcons/OIconParasiteTop" )
|
||||||
PRECACHE( MATERIAL, "vgui/swarm/ObjectiveIcons/OIconPlanet" )
|
//PRECACHE( MATERIAL, "vgui/swarm/ObjectiveIcons/OIconPlanet" )
|
||||||
PRECACHE( MATERIAL, "vgui/swarm/ObjectiveIcons/OIconSolarSystem" )
|
//PRECACHE( MATERIAL, "vgui/swarm/ObjectiveIcons/OIconSolarSystem" )
|
||||||
PRECACHE( MATERIAL, "vgui/swarm/ObjectiveIcons/OIconStarchart" )
|
//PRECACHE( MATERIAL, "vgui/swarm/ObjectiveIcons/OIconStarchart" )
|
||||||
PRECACHE( MATERIAL, "vgui/swarm/ObjectiveIcons/OIconTerminal" )
|
//PRECACHE( MATERIAL, "vgui/swarm/ObjectiveIcons/OIconTerminal" )
|
||||||
PRECACHE( MATERIAL, "vgui/swarm/SkillButtons/Accuracy" )
|
PRECACHE( MATERIAL, "vgui/swarm/SkillButtons/Accuracy" )
|
||||||
PRECACHE( MATERIAL, "vgui/swarm/SkillButtons/Agility" )
|
PRECACHE( MATERIAL, "vgui/swarm/SkillButtons/Agility" )
|
||||||
PRECACHE( MATERIAL, "vgui/swarm/SkillButtons/Autogun" )
|
PRECACHE( MATERIAL, "vgui/swarm/SkillButtons/Autogun" )
|
||||||
|
|
|
@ -95,6 +95,9 @@
|
||||||
#include "asw_weapon_sniper_rifle.h"
|
#include "asw_weapon_sniper_rifle.h"
|
||||||
#include "asw_melee_system.h"
|
#include "asw_melee_system.h"
|
||||||
#include "c_asw_jukebox.h"
|
#include "c_asw_jukebox.h"
|
||||||
|
#include "missionchooser/iasw_mission_chooser.h"
|
||||||
|
#include "missionchooser/iasw_random_missions.h"
|
||||||
|
|
||||||
#if defined( CASW_Player )
|
#if defined( CASW_Player )
|
||||||
#undef CASW_Player
|
#undef CASW_Player
|
||||||
#endif
|
#endif
|
||||||
|
@ -340,6 +343,8 @@ C_ASW_Player::C_ASW_Player() :
|
||||||
m_flPendingSteamStatsStart = 0.0f;
|
m_flPendingSteamStatsStart = 0.0f;
|
||||||
m_hUseKeyDownEnt = NULL;
|
m_hUseKeyDownEnt = NULL;
|
||||||
m_flUseKeyDownTime = 0.0f;
|
m_flUseKeyDownTime = 0.0f;
|
||||||
|
m_roomDetailsCheckTimer.Invalidate();
|
||||||
|
m_szSoundscape[0] = 0;
|
||||||
for ( int i = 0; i < ASW_NUM_XP_TYPES; i++ )
|
for ( int i = 0; i < ASW_NUM_XP_TYPES; i++ )
|
||||||
{
|
{
|
||||||
m_iEarnedXP[ i ] = 0;
|
m_iEarnedXP[ i ] = 0;
|
||||||
|
@ -1236,6 +1241,87 @@ void C_ASW_Player::ClientThink()
|
||||||
C_ASW_Snow_Volume::UpdateSnow(this);
|
C_ASW_Snow_Volume::UpdateSnow(this);
|
||||||
|
|
||||||
UpdateLocalMarineGlow();
|
UpdateLocalMarineGlow();
|
||||||
|
|
||||||
|
if ( missionchooser->RandomMissions() && missionchooser->RandomMissions()->ValidMapLayout() )
|
||||||
|
{
|
||||||
|
UpdateRoomDetails();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void ForceSoundscape( const char *pSoundscapeName, float radius );
|
||||||
|
|
||||||
|
void C_ASW_Player::UpdateRoomDetails()
|
||||||
|
{
|
||||||
|
VPROF("C_ASW_Player::UpdateRoomDetails");
|
||||||
|
if ( m_roomDetailsCheckTimer.HasStarted() && !m_roomDetailsCheckTimer.IsElapsed() )
|
||||||
|
return;
|
||||||
|
|
||||||
|
m_roomDetailsCheckTimer.Start( 1.0f ); // check soundscape every second
|
||||||
|
|
||||||
|
if ( !missionchooser || !missionchooser->RandomMissions() || !ASWGameRules() || ASWGameRules()->GetGameState() != ASW_GS_INGAME )
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
C_ASW_Marine *pMarine = GetMarine();
|
||||||
|
if ( !pMarine )
|
||||||
|
{
|
||||||
|
pMarine = GetSpectatingMarine();
|
||||||
|
}
|
||||||
|
|
||||||
|
Vector vecAmbientPos = vec3_origin;
|
||||||
|
if ( pMarine )
|
||||||
|
{
|
||||||
|
vecAmbientPos = pMarine->GetAbsOrigin();
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
vecAmbientPos = GetAbsOrigin();
|
||||||
|
}
|
||||||
|
|
||||||
|
IASW_Random_Missions *pRandomMissions = missionchooser->RandomMissions();
|
||||||
|
IASW_Room_Details* pRoom = pRandomMissions->GetRoomDetails( vecAmbientPos );
|
||||||
|
|
||||||
|
if ( pRoom )
|
||||||
|
{
|
||||||
|
// update soundscape
|
||||||
|
static char szSoundscape[64];
|
||||||
|
pRoom->GetSoundscape( szSoundscape, 64 );
|
||||||
|
if ( szSoundscape[0] && Q_stricmp( szSoundscape, m_szSoundscape ) )
|
||||||
|
{
|
||||||
|
Q_strcpy( m_szSoundscape, szSoundscape );
|
||||||
|
ForceSoundscape( m_szSoundscape, 36.0f );
|
||||||
|
}
|
||||||
|
|
||||||
|
// update ambient light
|
||||||
|
if ( !m_hAmbientLight.Get() )
|
||||||
|
{
|
||||||
|
C_EnvAmbientLight *pAmbient = new C_EnvAmbientLight;
|
||||||
|
if ( pAmbient )
|
||||||
|
{
|
||||||
|
if ( pAmbient->InitializeAsClientEntity( NULL, false ) )
|
||||||
|
{
|
||||||
|
pAmbient->InitSpatialEntity();
|
||||||
|
pAmbient->SetFalloff( -1, -1 ); // make it global
|
||||||
|
pAmbient->SetColor( Vector( 1, 1, 1 ) );
|
||||||
|
pAmbient->SetCurWeight( 1.0f );
|
||||||
|
pAmbient->SetEnabled( true );
|
||||||
|
m_hAmbientLight = pAmbient;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if ( m_hAmbientLight.Get() )
|
||||||
|
{
|
||||||
|
Vector vecTargetColor = m_hAmbientLight->GetTargetColor();
|
||||||
|
Vector vecNewColor = pRoom->GetAmbientLight();
|
||||||
|
if ( vecTargetColor != vecNewColor )
|
||||||
|
{
|
||||||
|
// change to the new ambient light setting
|
||||||
|
//Msg( "player set local ambient light to %f %f %f\n", VectorExpand( vecNewColor ) );
|
||||||
|
m_hAmbientLight->SetColor( vecNewColor, 2.0f );
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void C_ASW_Player::ShowMessageLog()
|
void C_ASW_Player::ShowMessageLog()
|
||||||
|
|
|
@ -202,6 +202,8 @@ public:
|
||||||
|
|
||||||
virtual CBaseEntity *GetSoundscapeListener();
|
virtual CBaseEntity *GetSoundscapeListener();
|
||||||
|
|
||||||
|
void UpdateRoomDetails();
|
||||||
|
|
||||||
// hacking
|
// hacking
|
||||||
virtual void SelectHackOption(int iHackOption);
|
virtual void SelectHackOption(int iHackOption);
|
||||||
virtual void StopUsing(); // stop using a computer
|
virtual void StopUsing(); // stop using a computer
|
||||||
|
@ -256,6 +258,10 @@ private:
|
||||||
// Marine avoidance.
|
// Marine avoidance.
|
||||||
void AvoidMarines( CUserCmd *pCmd );
|
void AvoidMarines( CUserCmd *pCmd );
|
||||||
|
|
||||||
|
// setting soundscape per room in randomly generated maps
|
||||||
|
char m_szSoundscape[64];
|
||||||
|
CountdownTimer m_roomDetailsCheckTimer;
|
||||||
|
|
||||||
CHandle<C_EnvAmbientLight> m_hAmbientLight;
|
CHandle<C_EnvAmbientLight> m_hAmbientLight;
|
||||||
|
|
||||||
public:
|
public:
|
||||||
|
|
|
@ -69,7 +69,6 @@ extern ConVar mat_object_motion_blur_enable;
|
||||||
|
|
||||||
// asw
|
// asw
|
||||||
ConVar asw_reconnect_after_outro( "asw_reconnect_after_outro", "0", 0, "If set, client will reconnect to server after outro" );
|
ConVar asw_reconnect_after_outro( "asw_reconnect_after_outro", "0", 0, "If set, client will reconnect to server after outro" );
|
||||||
ConVar asw_cam_blend("asw_cam_blend", "1", 0, "Whether camera should blend Z and marine change movements");
|
|
||||||
ConVar asw_hear_from_marine( "asw_hear_from_marine", "0", FCVAR_NONE, "Audio hearing position is at current marine's ears" );
|
ConVar asw_hear_from_marine( "asw_hear_from_marine", "0", FCVAR_NONE, "Audio hearing position is at current marine's ears" );
|
||||||
ConVar asw_hear_pos_debug("asw_hear_pos_debug", "0", FCVAR_NONE, "Shows audio hearing position" );
|
ConVar asw_hear_pos_debug("asw_hear_pos_debug", "0", FCVAR_NONE, "Shows audio hearing position" );
|
||||||
ConVar asw_hear_height("asw_hear_height", "0", FCVAR_NONE, "If set, hearing audio position is this many units above the marine. If number is negative, then hear position is number of units below the camera." );
|
ConVar asw_hear_height("asw_hear_height", "0", FCVAR_NONE, "If set, hearing audio position is this many units above the marine. If number is negative, then hear position is number of units below the camera." );
|
||||||
|
@ -689,8 +688,51 @@ void ClientModeASW::OverrideView( CViewSetup *pSetup )
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
class MapDescription_t
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
MapDescription_t( const char *szMapName, unsigned int nFileSize, unsigned int nEntityStringLength ) :
|
||||||
|
m_szMapName( szMapName ), m_nFileSize( nFileSize ), m_nEntityStringLength( nEntityStringLength )
|
||||||
|
{
|
||||||
|
}
|
||||||
|
const char *m_szMapName;
|
||||||
|
unsigned int m_nFileSize;
|
||||||
|
unsigned int m_nEntityStringLength;
|
||||||
|
};
|
||||||
|
|
||||||
|
static MapDescription_t s_OfficialMaps[]=
|
||||||
|
{
|
||||||
|
MapDescription_t( "maps/asi-jac1-landingbay_01.bsp", 45793676, 412634 ),
|
||||||
|
MapDescription_t( "maps/asi-jac1-landingbay_02.bsp", 25773204, 324141 ),
|
||||||
|
MapDescription_t( "maps/asi-jac2-deima.bsp", 44665212, 345367 ),
|
||||||
|
MapDescription_t( "maps/asi-jac3-rydberg.bsp", 27302616, 359228 ),
|
||||||
|
MapDescription_t( "maps/asi-jac4-residential.bsp", 31244468, 455840 ),
|
||||||
|
MapDescription_t( "maps/asi-jac6-sewerjunction.bsp", 18986884, 287554 ),
|
||||||
|
MapDescription_t( "maps/asi-jac7-timorstation.bsp", 37830468, 506193 ),
|
||||||
|
};
|
||||||
|
|
||||||
void ClientModeASW::LevelInit( const char *newmap )
|
void ClientModeASW::LevelInit( const char *newmap )
|
||||||
{
|
{
|
||||||
|
// reset ambient light
|
||||||
|
static ConVarRef mat_ambient_light_r( "mat_ambient_light_r" );
|
||||||
|
static ConVarRef mat_ambient_light_g( "mat_ambient_light_g" );
|
||||||
|
static ConVarRef mat_ambient_light_b( "mat_ambient_light_b" );
|
||||||
|
|
||||||
|
if ( mat_ambient_light_r.IsValid() )
|
||||||
|
{
|
||||||
|
mat_ambient_light_r.SetValue( "0" );
|
||||||
|
}
|
||||||
|
|
||||||
|
if ( mat_ambient_light_g.IsValid() )
|
||||||
|
{
|
||||||
|
mat_ambient_light_g.SetValue( "0" );
|
||||||
|
}
|
||||||
|
|
||||||
|
if ( mat_ambient_light_b.IsValid() )
|
||||||
|
{
|
||||||
|
mat_ambient_light_b.SetValue( "0" );
|
||||||
|
}
|
||||||
|
|
||||||
// Load color correction lookup
|
// Load color correction lookup
|
||||||
m_CCFailedHandle = g_pColorCorrectionMgr->AddColorCorrection( FAILED_CC_LOOKUP_FILENAME );
|
m_CCFailedHandle = g_pColorCorrectionMgr->AddColorCorrection( FAILED_CC_LOOKUP_FILENAME );
|
||||||
if ( m_CCFailedHandle != INVALID_CLIENT_CCHANDLE )
|
if ( m_CCFailedHandle != INVALID_CLIENT_CCHANDLE )
|
||||||
|
@ -778,6 +820,27 @@ void ClientModeASW::LevelInit( const char *newmap )
|
||||||
{
|
{
|
||||||
Briefing()->ResetLastChatterTime();
|
Briefing()->ResetLastChatterTime();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const char *szMapName = engine->GetLevelName();
|
||||||
|
unsigned int nFileSize = g_pFullFileSystem->Size( szMapName, "GAME" );
|
||||||
|
|
||||||
|
unsigned int nEntityLen = Q_strlen( engine->GetMapEntitiesString() );
|
||||||
|
|
||||||
|
m_bOfficialMap = false;
|
||||||
|
for ( int i = 0; i < NELEMS( s_OfficialMaps ); i++ )
|
||||||
|
{
|
||||||
|
if ( !Q_stricmp( szMapName, s_OfficialMaps[i].m_szMapName ) )
|
||||||
|
{
|
||||||
|
m_bOfficialMap = ( ( s_OfficialMaps[i].m_nFileSize == nFileSize ) && ( s_OfficialMaps[i].m_nEntityStringLength == nEntityLen ) );
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
#ifdef _DEBUG
|
||||||
|
Msg( "map %s file size is %d\n", szMapName, nFileSize );
|
||||||
|
Msg( " entity string is %d chars long\n", nEntityLen );
|
||||||
|
Msg( "Official map = %d\n", m_bOfficialMap );
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
void ClientModeASW::LevelShutdown( void )
|
void ClientModeASW::LevelShutdown( void )
|
||||||
|
@ -988,6 +1051,15 @@ int ClientModeASW::KeyInput( int down, ButtonCode_t keynum, const char *pszCurre
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
vgui::Panel *pContainer = GetClientMode()->GetViewport()->FindChildByName("InGameBriefingContainer", true);
|
||||||
|
if (pContainer)
|
||||||
|
{
|
||||||
|
pContainer->SetVisible(false);
|
||||||
|
pContainer->MarkForDeletion();
|
||||||
|
pContainer = NULL;
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return BaseClass::KeyInput(down, keynum, pszCurrentBinding);
|
return BaseClass::KeyInput(down, keynum, pszCurrentBinding);
|
||||||
|
|
|
@ -79,6 +79,8 @@ public:
|
||||||
|
|
||||||
bool m_bTechFailure;
|
bool m_bTechFailure;
|
||||||
|
|
||||||
|
bool IsOfficialMap() { return m_bOfficialMap; }
|
||||||
|
|
||||||
private:
|
private:
|
||||||
IGameUI *m_pGameUI;
|
IGameUI *m_pGameUI;
|
||||||
|
|
||||||
|
@ -98,6 +100,8 @@ private:
|
||||||
|
|
||||||
ClientCCHandle_t m_CCInfestedHandle;
|
ClientCCHandle_t m_CCInfestedHandle;
|
||||||
float m_fInfestedCCWeight;
|
float m_fInfestedCCWeight;
|
||||||
|
|
||||||
|
bool m_bOfficialMap;
|
||||||
};
|
};
|
||||||
|
|
||||||
extern IClientMode *GetClientModeNormal();
|
extern IClientMode *GetClientModeNormal();
|
||||||
|
|
|
@ -44,7 +44,7 @@ CUtlVector< IBaseModFrameListener * > CBaseModFrame::m_FrameListeners;
|
||||||
|
|
||||||
bool CBaseModFrame::m_DrawTitleSafeBorder = false;
|
bool CBaseModFrame::m_DrawTitleSafeBorder = false;
|
||||||
|
|
||||||
ConVar ui_gameui_modal( "ui_gameui_modal", "0", FCVAR_RELEASE, "If set, the game UI pages will take modal input focus." );
|
ConVar ui_gameui_modal( "ui_gameui_modal", "1", FCVAR_RELEASE, "If set, the game UI pages will take modal input focus." );
|
||||||
|
|
||||||
//=============================================================================
|
//=============================================================================
|
||||||
CBaseModFrame::CBaseModFrame( vgui::Panel *parent, const char *panelName, bool okButtonEnabled,
|
CBaseModFrame::CBaseModFrame( vgui::Panel *parent, const char *panelName, bool okButtonEnabled,
|
||||||
|
|
|
@ -408,14 +408,7 @@ void BaseModHybridButton::PaintButtonEx()
|
||||||
break;
|
break;
|
||||||
case Focus:
|
case Focus:
|
||||||
// active item
|
// active item
|
||||||
if ( m_nStyle == BUTTON_RED || m_nStyle == BUTTON_REDMAIN )
|
|
||||||
{
|
|
||||||
col.SetColor( 255, 255, 255, 255 );
|
col.SetColor( 255, 255, 255, 255 );
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
col.SetColor( 255, 255, 255, 255 );
|
|
||||||
}
|
|
||||||
bDrawGlow = true;
|
bDrawGlow = true;
|
||||||
bAnimateGlow = true;
|
bAnimateGlow = true;
|
||||||
if ( m_nStyle == BUTTON_SIMPLE ||
|
if ( m_nStyle == BUTTON_SIMPLE ||
|
||||||
|
@ -789,6 +782,11 @@ void BaseModHybridButton::ApplySettings( KeyValues * inResourceData )
|
||||||
m_hTextFont = scheme->GetFont( "DefaultMedium", true );
|
m_hTextFont = scheme->GetFont( "DefaultMedium", true );
|
||||||
m_hTextBlurFont = scheme->GetFont( "DefaultMediumBlur", true );
|
m_hTextBlurFont = scheme->GetFont( "DefaultMediumBlur", true );
|
||||||
}
|
}
|
||||||
|
else if ( m_nStyle == BUTTON_ALIENSWARMDEFAULT )
|
||||||
|
{
|
||||||
|
m_hTextFont = scheme->GetFont( "Default", true );
|
||||||
|
m_hTextBlurFont = scheme->GetFont( "DefaultBlur", true );
|
||||||
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
m_nStyle = BUTTON_SIMPLE;
|
m_nStyle = BUTTON_SIMPLE;
|
||||||
|
|
|
@ -47,6 +47,7 @@ public:
|
||||||
BUTTON_MAINMENUSMALL, // smaller item strictly on the main or ingame menu
|
BUTTON_MAINMENUSMALL, // smaller item strictly on the main or ingame menu
|
||||||
BUTTON_ALIENSWARMMENUBUTTON,
|
BUTTON_ALIENSWARMMENUBUTTON,
|
||||||
BUTTON_ALIENSWARMMENUBUTTONSMALL,
|
BUTTON_ALIENSWARMMENUBUTTONSMALL,
|
||||||
|
BUTTON_ALIENSWARMDEFAULT,
|
||||||
};
|
};
|
||||||
|
|
||||||
enum EnableCondition
|
enum EnableCondition
|
||||||
|
|
|
@ -10,7 +10,9 @@ struct ASWUseAction
|
||||||
ASWUseAction()
|
ASWUseAction()
|
||||||
{
|
{
|
||||||
iUseIconTexture = -1;
|
iUseIconTexture = -1;
|
||||||
|
szCommand[0] = 0;
|
||||||
wszText[0] = 0;
|
wszText[0] = 0;
|
||||||
|
wszHoldButtonText[0] = 0;
|
||||||
UseTarget = NULL;
|
UseTarget = NULL;
|
||||||
fProgress = -1;
|
fProgress = -1;
|
||||||
UseIconRed = 255;
|
UseIconRed = 255;
|
||||||
|
@ -43,6 +45,7 @@ struct ASWUseAction
|
||||||
TextBlue == other.TextBlue &&
|
TextBlue == other.TextBlue &&
|
||||||
bTextGlow == other.bTextGlow &&
|
bTextGlow == other.bTextGlow &&
|
||||||
iInventorySlot == other.iInventorySlot &&
|
iInventorySlot == other.iInventorySlot &&
|
||||||
|
!V_strcmp( szCommand, other.szCommand ) &&
|
||||||
!wcscoll( wszText, other.wszText ) &&
|
!wcscoll( wszText, other.wszText ) &&
|
||||||
!wcscoll( wszHoldButtonText, other.wszHoldButtonText ) &&
|
!wcscoll( wszHoldButtonText, other.wszHoldButtonText ) &&
|
||||||
bWideIcon == other.bWideIcon
|
bWideIcon == other.bWideIcon
|
||||||
|
@ -65,6 +68,7 @@ struct ASWUseAction
|
||||||
TextBlue == other.TextBlue &&
|
TextBlue == other.TextBlue &&
|
||||||
bTextGlow == other.bTextGlow &&
|
bTextGlow == other.bTextGlow &&
|
||||||
iInventorySlot == other.iInventorySlot &&
|
iInventorySlot == other.iInventorySlot &&
|
||||||
|
!V_strcmp( szCommand, other.szCommand ) &&
|
||||||
!wcscoll( wszText, other.wszText ) &&
|
!wcscoll( wszText, other.wszText ) &&
|
||||||
!wcscoll( wszHoldButtonText, other.wszHoldButtonText ) &&
|
!wcscoll( wszHoldButtonText, other.wszHoldButtonText ) &&
|
||||||
bWideIcon == other.bWideIcon
|
bWideIcon == other.bWideIcon
|
||||||
|
@ -72,6 +76,7 @@ struct ASWUseAction
|
||||||
}
|
}
|
||||||
|
|
||||||
int iUseIconTexture;
|
int iUseIconTexture;
|
||||||
|
char szCommand[64];
|
||||||
wchar_t wszText[MAX_USE_ACTION_TEXT];
|
wchar_t wszText[MAX_USE_ACTION_TEXT];
|
||||||
wchar_t wszHoldButtonText[MAX_USE_ACTION_TEXT];
|
wchar_t wszHoldButtonText[MAX_USE_ACTION_TEXT];
|
||||||
EHANDLE UseTarget;
|
EHANDLE UseTarget;
|
||||||
|
|
|
@ -21,6 +21,7 @@ public:
|
||||||
virtual void StartMission() = 0;
|
virtual void StartMission() = 0;
|
||||||
virtual bool IsLobbySlotOccupied( int nLobbySlot ) = 0;
|
virtual bool IsLobbySlotOccupied( int nLobbySlot ) = 0;
|
||||||
virtual bool IsLobbySlotLocal( int nLobbySlot ) = 0;
|
virtual bool IsLobbySlotLocal( int nLobbySlot ) = 0;
|
||||||
|
virtual bool IsLobbySlotBot( int nLobbySlot ) = 0;
|
||||||
virtual wchar_t* GetMarineOrPlayerName( int nLobbySlot ) = 0;
|
virtual wchar_t* GetMarineOrPlayerName( int nLobbySlot ) = 0;
|
||||||
virtual wchar_t* GetMarineName( int nLobbySlot ) = 0; // always returns the marine's profile name
|
virtual wchar_t* GetMarineName( int nLobbySlot ) = 0; // always returns the marine's profile name
|
||||||
virtual const char* GetPlayerNameForMarineProfile( int nProfileIndex ) = 0;
|
virtual const char* GetPlayerNameForMarineProfile( int nProfileIndex ) = 0;
|
||||||
|
|
|
@ -182,4 +182,4 @@ void CC_ASW_TileGen( const CCommand &args )
|
||||||
pFrame->MoveToCenterOfScreen();
|
pFrame->MoveToCenterOfScreen();
|
||||||
pFrame->Activate();
|
pFrame->Activate();
|
||||||
}
|
}
|
||||||
static ConCommand asw_tilegen("asw_tilegen", CC_ASW_TileGen, 0 );
|
static ConCommand asw_tilegen("asw_tilegen", CC_ASW_TileGen, "Experimental tile based level generator.", FCVAR_CHEAT );
|
||||||
|
|
|
@ -57,7 +57,7 @@ ConVar asw_marine_edge_names("asw_marine_edge_names", "1", FCVAR_NONE, "Prevent
|
||||||
ConVar asw_world_healthbars("asw_world_healthbars", "1", FCVAR_NONE, "Shows health bars in the game world");
|
ConVar asw_world_healthbars("asw_world_healthbars", "1", FCVAR_NONE, "Shows health bars in the game world");
|
||||||
ConVar asw_world_usingbars("asw_world_usingbars", "1", FCVAR_NONE, "Shows using bars in the game world");
|
ConVar asw_world_usingbars("asw_world_usingbars", "1", FCVAR_NONE, "Shows using bars in the game world");
|
||||||
ConVar asw_marine_labels_cursor_maxdist( "asw_marine_labels_cursor_maxdist", "70", FCVAR_NONE, "Only marines within this distance of the cursor will get their health bar drawn" );
|
ConVar asw_marine_labels_cursor_maxdist( "asw_marine_labels_cursor_maxdist", "70", FCVAR_NONE, "Only marines within this distance of the cursor will get their health bar drawn" );
|
||||||
ConVar asw_active_reload_under_marine( "asw_active_reload_under_marine", "0", FCVAR_NONE, "Draw the active reload bar under the marine?" );
|
ConVar asw_fast_reload_under_marine( "asw_fast_reload_under_marine", "0", FCVAR_NONE, "Draw the active reload bar under the marine?" );
|
||||||
ConVar asw_world_healthbar_class_icon( "asw_world_healthbar_class_icon", "0", FCVAR_NONE, "Show class icon on mouse over" );
|
ConVar asw_world_healthbar_class_icon( "asw_world_healthbar_class_icon", "0", FCVAR_NONE, "Show class icon on mouse over" );
|
||||||
|
|
||||||
#define ASW_MAX_MARINE_NAMES 8
|
#define ASW_MAX_MARINE_NAMES 8
|
||||||
|
@ -833,7 +833,7 @@ void CASWHud3DMarineNames::PaintMarineLabel( int iMyMarineNum, C_ASW_Marine * RE
|
||||||
return;
|
return;
|
||||||
|
|
||||||
// draw the reload bar
|
// draw the reload bar
|
||||||
if ( bLocal && pWeapon && pWeapon->IsReloading() && asw_fast_reload_enabled.GetBool() && asw_active_reload_under_marine.GetBool() )
|
if ( bLocal && pWeapon && pWeapon->IsReloading() && asw_fast_reload_enabled.GetBool() && asw_fast_reload_under_marine.GetBool() )
|
||||||
{
|
{
|
||||||
PaintReloadBar( pWeapon, nBoxCenterX, nCursorY );
|
PaintReloadBar( pWeapon, nBoxCenterX, nCursorY );
|
||||||
nCursorY += nHealthBarHeight + nLineSpacing;
|
nCursorY += nHealthBarHeight + nLineSpacing;
|
||||||
|
|
|
@ -133,7 +133,7 @@ void CASWHudCrosshair::Paint( void )
|
||||||
if ( !crosshair.GetInt() )
|
if ( !crosshair.GetInt() )
|
||||||
return;
|
return;
|
||||||
|
|
||||||
if ( engine->IsDrawingLoadingImage() || engine->IsPaused() )
|
if ( engine->IsDrawingLoadingImage() || engine->IsPaused() || !engine->IsActiveApp() )
|
||||||
return;
|
return;
|
||||||
|
|
||||||
C_ASW_Player* pPlayer = C_ASW_Player::GetLocalASWPlayer();
|
C_ASW_Player* pPlayer = C_ASW_Player::GetLocalASWPlayer();
|
||||||
|
@ -262,7 +262,7 @@ const char* CASWHudCrosshair::GetAmmoName(int iAmmoType)
|
||||||
}
|
}
|
||||||
|
|
||||||
extern ConVar asw_weapon_max_shooting_distance;
|
extern ConVar asw_weapon_max_shooting_distance;
|
||||||
ConVar asw_turret_cursor_blend("asw_turret_cursor_blend", "5.0f");
|
|
||||||
void CASWHudCrosshair::PaintTurretTextures()
|
void CASWHudCrosshair::PaintTurretTextures()
|
||||||
{
|
{
|
||||||
// draw border in centre of screen
|
// draw border in centre of screen
|
||||||
|
@ -382,6 +382,13 @@ ConVar asw_turret_dot("asw_turret_dot", "0.9", FCVAR_CHEAT, "Dot angle above whi
|
||||||
|
|
||||||
void CASWHudCrosshair::PaintReloadProgressBar( void )
|
void CASWHudCrosshair::PaintReloadProgressBar( void )
|
||||||
{
|
{
|
||||||
|
if ( !engine->IsActiveApp() )
|
||||||
|
{
|
||||||
|
m_pAmmoProgress->SetVisible( false );
|
||||||
|
m_pFastReloadBar->SetVisible( false );
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
C_ASW_Player* pPlayer = C_ASW_Player::GetLocalASWPlayer();
|
C_ASW_Player* pPlayer = C_ASW_Player::GetLocalASWPlayer();
|
||||||
if ( !pPlayer )
|
if ( !pPlayer )
|
||||||
return;
|
return;
|
||||||
|
|
|
@ -322,6 +322,7 @@ void CASW_HUD_Use_Icon::SetCurrentToQueuedAction()
|
||||||
{
|
{
|
||||||
// can make the queued our current and fade in
|
// can make the queued our current and fade in
|
||||||
m_CurrentAction = m_QueuedAction;
|
m_CurrentAction = m_QueuedAction;
|
||||||
|
FindUseKeyBind();
|
||||||
|
|
||||||
PositionIcon();
|
PositionIcon();
|
||||||
|
|
||||||
|
@ -441,6 +442,7 @@ void CASW_HUD_Use_Icon::SetUseAction(ASWUseAction &action)
|
||||||
{
|
{
|
||||||
//m_CurrentAction.fProgress = action.fProgress;
|
//m_CurrentAction.fProgress = action.fProgress;
|
||||||
m_CurrentAction = action;
|
m_CurrentAction = action;
|
||||||
|
FindUseKeyBind();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -465,12 +467,19 @@ void CASW_HUD_Use_Icon::FindUseKeyBind()
|
||||||
{
|
{
|
||||||
char szOldKey[12];
|
char szOldKey[12];
|
||||||
Q_snprintf(szOldKey, sizeof(szOldKey), "%s", m_szUseKeyText);
|
Q_snprintf(szOldKey, sizeof(szOldKey), "%s", m_szUseKeyText);
|
||||||
Q_snprintf(m_szUseKeyText, sizeof(m_szUseKeyText), "%s", ASW_FindKeyBoundTo("+use"));
|
|
||||||
|
char *pchCommand = "+use";
|
||||||
|
if ( m_CurrentAction.szCommand[ 0 ] )
|
||||||
|
{
|
||||||
|
pchCommand = m_CurrentAction.szCommand;
|
||||||
|
}
|
||||||
|
|
||||||
|
Q_snprintf(m_szUseKeyText, sizeof(m_szUseKeyText), "%s", ASW_FindKeyBoundTo( pchCommand ));
|
||||||
Q_strupr(m_szUseKeyText);
|
Q_strupr(m_szUseKeyText);
|
||||||
if ( Q_stricmp( m_szUseKeyText, szOldKey) )
|
if ( Q_stricmp( m_szUseKeyText, szOldKey) )
|
||||||
{
|
{
|
||||||
ClearUseAction();
|
ClearUseAction();
|
||||||
m_pBindPanel->SetBind( "+use" );
|
m_pBindPanel->SetBind( pchCommand );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -31,7 +31,7 @@ CASW_VGUI_Ammo_List::CASW_VGUI_Ammo_List( vgui::Panel *pParent, const char *pEle
|
||||||
m_pAmmoCount[i]->SetContentAlignment(vgui::Label::a_northeast);
|
m_pAmmoCount[i]->SetContentAlignment(vgui::Label::a_northeast);
|
||||||
m_pAmmoIcon[i] = new vgui::ImagePanel( this, "AmmoIcon" );
|
m_pAmmoIcon[i] = new vgui::ImagePanel( this, "AmmoIcon" );
|
||||||
m_pAmmoIcon[i]->SetShouldScaleImage(true);
|
m_pAmmoIcon[i]->SetShouldScaleImage(true);
|
||||||
m_pAmmoIcon[i]->SetImage( "swarm/HUD/ClipsIcon" );
|
m_pAmmoIcon[i]->SetImage( "hud/GameUI/hud_ammo_clip_empty" );
|
||||||
m_iAmmoCount[i] = 0;
|
m_iAmmoCount[i] = 0;
|
||||||
}
|
}
|
||||||
// set names and images
|
// set names and images
|
||||||
|
|
|
@ -146,7 +146,7 @@ void CASW_VGUI_Frame::OnThink()
|
||||||
|
|
||||||
bool CASW_VGUI_Frame::MouseClick(int x, int y, bool bRightClick, bool bDown)
|
bool CASW_VGUI_Frame::MouseClick(int x, int y, bool bRightClick, bool bDown)
|
||||||
{
|
{
|
||||||
Msg("CASW_VGUI_Frame::MouseClick x=%d y=%d closeover=%d miniover=%d down=%d\n", x, y, m_pCloseImage->IsCursorOver(), m_pMiniImage->IsCursorOver(), bDown);
|
//Msg("CASW_VGUI_Frame::MouseClick x=%d y=%d closeover=%d miniover=%d down=%d\n", x, y, m_pCloseImage->IsCursorOver(), m_pMiniImage->IsCursorOver(), bDown);
|
||||||
if (m_pCloseImage->IsCursorOver() && !bDown)
|
if (m_pCloseImage->IsCursorOver() && !bDown)
|
||||||
{
|
{
|
||||||
// close it all down
|
// close it all down
|
||||||
|
|
|
@ -35,7 +35,8 @@ BriefingImagePanel::BriefingImagePanel(Panel *parent, const char *name) : ImageP
|
||||||
// else
|
// else
|
||||||
// SetImage("swarm/BriefingPlant");
|
// SetImage("swarm/BriefingPlant");
|
||||||
|
|
||||||
SetImage( "lobby/swarm_background01" );
|
// set to something small as this image is hidden
|
||||||
|
SetImage( "swarm/missionpics/addonmissionpic" );
|
||||||
|
|
||||||
SetShouldScaleImage(true);
|
SetShouldScaleImage(true);
|
||||||
SetPos(0,0);
|
SetPos(0,0);
|
||||||
|
|
|
@ -72,13 +72,9 @@ CampaignPanel::CampaignPanel(Panel *parent, const char *name) : vgui::EditablePa
|
||||||
m_pBracket = new ObjectiveMapMarkPanel(this, "CampaignBracket");
|
m_pBracket = new ObjectiveMapMarkPanel(this, "CampaignBracket");
|
||||||
m_pBracket->SetMouseInputEnabled(false);
|
m_pBracket->SetMouseInputEnabled(false);
|
||||||
|
|
||||||
int i = random->RandomInt(0, 1);
|
// now just setting to a small temp material because this isn't shown
|
||||||
switch (i)
|
m_pBackDrop->SetImage("swarm/Briefing/ShadedButton");
|
||||||
{
|
|
||||||
case 0: m_pBackDrop->SetImage("swarm/BriefingPlant"); break;
|
|
||||||
default:
|
|
||||||
case 1: m_pBackDrop->SetImage("swarm/BriefingReactor"); break;
|
|
||||||
}
|
|
||||||
m_pGalacticMap->SetImage("swarm/Campaign/Jacob_GalacticMap");
|
m_pGalacticMap->SetImage("swarm/Campaign/Jacob_GalacticMap");
|
||||||
m_pGalaxyLines->SetImage("swarm/Campaign/GalaxyLines");
|
m_pGalaxyLines->SetImage("swarm/Campaign/GalaxyLines");
|
||||||
m_pSurfaceMap->SetImage("swarm/Campaign/JacobCampaignMap");
|
m_pSurfaceMap->SetImage("swarm/Campaign/JacobCampaignMap");
|
||||||
|
|
|
@ -1,5 +1,7 @@
|
||||||
#include "cbase.h"
|
#include "cbase.h"
|
||||||
#include "CreditsPanel.h"
|
#include "CreditsPanel.h"
|
||||||
|
#include "asw_gamerules.h"
|
||||||
|
#include "asw_campaign_info.h"
|
||||||
#include <vgui_controls/AnimationController.h>
|
#include <vgui_controls/AnimationController.h>
|
||||||
#include <vgui_controls/ImagePanel.h>
|
#include <vgui_controls/ImagePanel.h>
|
||||||
#include <vgui_controls/Label.h>
|
#include <vgui_controls/Label.h>
|
||||||
|
@ -19,6 +21,7 @@ CreditsPanel::CreditsPanel(vgui::Panel *parent, const char *name) : vgui::Panel(
|
||||||
m_fNextMessage = gpGlobals->curtime + ASW_MESSAGE_INTERVAL;
|
m_fNextMessage = gpGlobals->curtime + ASW_MESSAGE_INTERVAL;
|
||||||
m_iCurMessage = 0;
|
m_iCurMessage = 0;
|
||||||
m_Font = vgui::INVALID_FONT;
|
m_Font = vgui::INVALID_FONT;
|
||||||
|
m_bShowCreditsLogo = true;
|
||||||
|
|
||||||
for (int i=0;i<ASW_LABEL_POOL_SIZE;i++)
|
for (int i=0;i<ASW_LABEL_POOL_SIZE;i++)
|
||||||
{
|
{
|
||||||
|
@ -27,10 +30,33 @@ CreditsPanel::CreditsPanel(vgui::Panel *parent, const char *name) : vgui::Panel(
|
||||||
m_LabelPool[i]->SetAlpha(0);
|
m_LabelPool[i]->SetAlpha(0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
char szCreditsPath[512];
|
||||||
|
CASW_Campaign_Info *pCampaign = ASWGameRules()->GetCampaignInfo();
|
||||||
|
if ( pCampaign )
|
||||||
|
Q_snprintf(szCreditsPath,sizeof(szCreditsPath), "%s.txt", STRING(pCampaign->m_CustomCreditsFile));
|
||||||
|
else
|
||||||
|
Q_snprintf(szCreditsPath,sizeof(szCreditsPath), "scripts/asw_credits.txt");
|
||||||
|
|
||||||
|
|
||||||
pCreditsText = new KeyValues( "Credits" );
|
pCreditsText = new KeyValues( "Credits" );
|
||||||
pCreditsText->LoadFromFile( filesystem, "scripts/asw_credits.txt", NULL );
|
pCreditsText->LoadFromFile( filesystem, szCreditsPath, "GAME" );
|
||||||
|
|
||||||
pCurrentCredit = pCreditsText->GetFirstSubKey();
|
pCurrentCredit = pCreditsText->GetFirstSubKey();
|
||||||
|
|
||||||
|
char const *keyname = pCurrentCredit->GetName();
|
||||||
|
if ( !Q_stricmp( keyname, "show_credits_logo" ) )
|
||||||
|
{
|
||||||
|
m_bShowCreditsLogo = pCurrentCredit->GetBool();
|
||||||
|
pCurrentCredit = pCurrentCredit->GetNextKey();
|
||||||
|
}
|
||||||
|
|
||||||
|
char const *keyname2 = pCurrentCredit->GetName();
|
||||||
|
if ( !Q_stricmp( keyname2, "custom_logo" ) )
|
||||||
|
{
|
||||||
|
string_t CustomLogoFile = MAKE_STRING( pCreditsText->GetString( "custom_logo", "../console/valve_logo" ) );
|
||||||
|
m_pLogo->SetImage( CustomLogoFile );
|
||||||
|
pCurrentCredit = pCurrentCredit->GetNextKey();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
CreditsPanel::~CreditsPanel()
|
CreditsPanel::~CreditsPanel()
|
||||||
|
@ -41,10 +67,10 @@ CreditsPanel::~CreditsPanel()
|
||||||
void CreditsPanel::PerformLayout()
|
void CreditsPanel::PerformLayout()
|
||||||
{
|
{
|
||||||
int w = GetParent()->GetWide();
|
int w = GetParent()->GetWide();
|
||||||
int h = GetParent()->GetTall() - 20;
|
int h = GetParent()->GetTall() - (GetParent()->GetTall()*0.11f);
|
||||||
SetBounds(0, 20, w, h );
|
SetBounds(0, h * 0.09f, w, h );
|
||||||
float LogoWidth = w * 0.6f;
|
float LogoWidth = w * 0.7f;
|
||||||
m_pLogo->SetBounds( ( w - LogoWidth ) * 0.5f, 0, LogoWidth, LogoWidth * 0.5f);
|
m_pLogo->SetBounds( ( w - LogoWidth ) * 0.5f, LogoWidth*0.065f, LogoWidth, LogoWidth * 0.25f);
|
||||||
|
|
||||||
//m_hASWLogo->SetBounds((wide - LogoWidth) * 0.5f,tall * 0.12f, LogoWidth, LogoWidth * 0.25f);
|
//m_hASWLogo->SetBounds((wide - LogoWidth) * 0.5f,tall * 0.12f, LogoWidth, LogoWidth * 0.25f);
|
||||||
}
|
}
|
||||||
|
@ -54,6 +80,7 @@ void CreditsPanel::ApplySchemeSettings(vgui::IScheme *pScheme)
|
||||||
BaseClass::ApplySchemeSettings(pScheme);
|
BaseClass::ApplySchemeSettings(pScheme);
|
||||||
|
|
||||||
m_Font = pScheme->GetFont( "Default", IsProportional() );
|
m_Font = pScheme->GetFont( "Default", IsProportional() );
|
||||||
|
if ( m_bShowCreditsLogo )
|
||||||
vgui::GetAnimationController()->RunAnimationCommand(m_pLogo, "Alpha", 255, 0, 2.0f, vgui::AnimationController::INTERPOLATOR_LINEAR);
|
vgui::GetAnimationController()->RunAnimationCommand(m_pLogo, "Alpha", 255, 0, 2.0f, vgui::AnimationController::INTERPOLATOR_LINEAR);
|
||||||
|
|
||||||
for (int i=0;i<ASW_LABEL_POOL_SIZE;i++)
|
for (int i=0;i<ASW_LABEL_POOL_SIZE;i++)
|
||||||
|
|
|
@ -38,6 +38,7 @@ public:
|
||||||
float m_fNextMessage;
|
float m_fNextMessage;
|
||||||
int m_iCurMessage;
|
int m_iCurMessage;
|
||||||
vgui::HFont m_Font;
|
vgui::HFont m_Font;
|
||||||
|
bool m_bShowCreditsLogo;
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif // _INCLUDED_MEDAL_PANEL_H
|
#endif // _INCLUDED_MEDAL_PANEL_H
|
|
@ -17,6 +17,7 @@
|
||||||
#include "igameevents.h"
|
#include "igameevents.h"
|
||||||
#include "asw_medal_store.h"
|
#include "asw_medal_store.h"
|
||||||
#include "nb_island.h"
|
#include "nb_island.h"
|
||||||
|
#include "clientmode_asw.h"
|
||||||
|
|
||||||
// memdbgon must be the last include file in a .cpp file!!!
|
// memdbgon must be the last include file in a .cpp file!!!
|
||||||
#include <tier0/memdbgon.h>
|
#include <tier0/memdbgon.h>
|
||||||
|
@ -60,6 +61,9 @@ CExperienceReport::CExperienceReport( vgui::Panel *parent, const char *name ) :
|
||||||
m_pCheatsUsedLabel = new vgui::Label( this, "CheatsUsedLabel", "#asw_cheated" );
|
m_pCheatsUsedLabel = new vgui::Label( this, "CheatsUsedLabel", "#asw_cheated" );
|
||||||
m_pCheatsUsedLabel->SetVisible( ASWGameRules() && ASWGameRules()->m_bCheated.Get() );
|
m_pCheatsUsedLabel->SetVisible( ASWGameRules() && ASWGameRules()->m_bCheated.Get() );
|
||||||
|
|
||||||
|
m_pUnofficialMapLabel = new vgui::Label( this, "UnofficialMapLabel", "#asw_unofficial_map" );
|
||||||
|
m_pUnofficialMapLabel->SetVisible( GetClientModeASW() && !GetClientModeASW()->IsOfficialMap() );
|
||||||
|
|
||||||
m_iPlayerLevel = 0;
|
m_iPlayerLevel = 0;
|
||||||
m_pszWeaponUnlockClass = NULL;
|
m_pszWeaponUnlockClass = NULL;
|
||||||
m_flOldBarMin = -1;
|
m_flOldBarMin = -1;
|
||||||
|
@ -142,6 +146,12 @@ void CExperienceReport::PerformLayout()
|
||||||
m_pCheatsUsedLabel->SetPos( x, y );
|
m_pCheatsUsedLabel->SetPos( x, y );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if ( m_pUnofficialMapLabel->IsVisible() )
|
||||||
|
{
|
||||||
|
y += m_pEarnedXPTitle->GetTall();
|
||||||
|
m_pUnofficialMapLabel->SetPos( x, y );
|
||||||
|
}
|
||||||
|
|
||||||
int island_border = YRES( 10 );
|
int island_border = YRES( 10 );
|
||||||
int island_top = first_line_y - YRES( 38 );
|
int island_top = first_line_y - YRES( 38 );
|
||||||
int island_tall = ( y + YRES( 15 ) + island_border ) - island_top;
|
int island_tall = ( y + YRES( 15 ) + island_border ) - island_top;
|
||||||
|
@ -175,6 +185,12 @@ void CExperienceReport::OnThink()
|
||||||
m_pCheatsUsedLabel->SetVisible( bShowCheatsLabel );
|
m_pCheatsUsedLabel->SetVisible( bShowCheatsLabel );
|
||||||
InvalidateLayout();
|
InvalidateLayout();
|
||||||
}
|
}
|
||||||
|
bool bShowUnofficialMapLabel = ( GetClientModeASW() && !GetClientModeASW()->IsOfficialMap() );
|
||||||
|
if ( bShowUnofficialMapLabel != m_pUnofficialMapLabel->IsVisible() )
|
||||||
|
{
|
||||||
|
m_pUnofficialMapLabel->SetVisible( bShowUnofficialMapLabel );
|
||||||
|
InvalidateLayout();
|
||||||
|
}
|
||||||
|
|
||||||
// monitor local player's experience bar to see when it loops
|
// monitor local player's experience bar to see when it loops
|
||||||
float flBarMin = m_pExperienceBar[ 0 ]->m_pExperienceBar->GetBarMin();
|
float flBarMin = m_pExperienceBar[ 0 ]->m_pExperienceBar->GetBarMin();
|
||||||
|
|
|
@ -52,6 +52,7 @@ public:
|
||||||
vgui::Label *m_pEarnedXPNumber;
|
vgui::Label *m_pEarnedXPNumber;
|
||||||
|
|
||||||
vgui::Label *m_pCheatsUsedLabel;
|
vgui::Label *m_pCheatsUsedLabel;
|
||||||
|
vgui::Label *m_pUnofficialMapLabel;
|
||||||
|
|
||||||
// == MANAGED_MEMBER_POINTERS_START: Do not edit by hand ==
|
// == MANAGED_MEMBER_POINTERS_START: Do not edit by hand ==
|
||||||
WeaponUnlockPanel *m_pWeaponUnlockPanel;
|
WeaponUnlockPanel *m_pWeaponUnlockPanel;
|
||||||
|
|
|
@ -84,6 +84,8 @@ void ExperienceStatLine::ApplySchemeSettings( vgui::IScheme *pScheme )
|
||||||
|
|
||||||
LoadControlSettings( "resource/UI/ExperienceStatLine.res" );
|
LoadControlSettings( "resource/UI/ExperienceStatLine.res" );
|
||||||
|
|
||||||
|
// no longer used / icons don't exist anymore
|
||||||
|
/*
|
||||||
switch( m_XPType )
|
switch( m_XPType )
|
||||||
{
|
{
|
||||||
case ASW_XP_MISSION: m_pIcon->SetImage( "swarm/Briefing/statshots" ); break;
|
case ASW_XP_MISSION: m_pIcon->SetImage( "swarm/Briefing/statshots" ); break;
|
||||||
|
@ -94,6 +96,7 @@ void ExperienceStatLine::ApplySchemeSettings( vgui::IScheme *pScheme )
|
||||||
case ASW_XP_HEALING: m_pIcon->SetImage( "swarm/Briefing/statheal" ); break;
|
case ASW_XP_HEALING: m_pIcon->SetImage( "swarm/Briefing/statheal" ); break;
|
||||||
case ASW_XP_HACKING: m_pIcon->SetImage( "swarm/Briefing/stathack" ); break;
|
case ASW_XP_HACKING: m_pIcon->SetImage( "swarm/Briefing/stathack" ); break;
|
||||||
}
|
}
|
||||||
|
*/
|
||||||
|
|
||||||
UpdateVisibility( ToASW_Player( m_hPlayer.Get() ) );
|
UpdateVisibility( ToASW_Player( m_hPlayer.Get() ) );
|
||||||
}
|
}
|
||||||
|
|
|
@ -37,7 +37,9 @@
|
||||||
|
|
||||||
using namespace vgui;
|
using namespace vgui;
|
||||||
|
|
||||||
|
#ifdef _DEBUG
|
||||||
extern ConVar asw_unlock_all_weapons;
|
extern ConVar asw_unlock_all_weapons;
|
||||||
|
#endif
|
||||||
ConVar asw_success_sound_delay( "asw_success_sound_delay", "0.0", FCVAR_CHEAT, "Delay before playing mission success music" );
|
ConVar asw_success_sound_delay( "asw_success_sound_delay", "0.0", FCVAR_CHEAT, "Delay before playing mission success music" );
|
||||||
ConVar asw_fail_sound_delay( "asw_fail_sound_delay", "0.0", FCVAR_CHEAT, "Delay before playing mission fail music" );
|
ConVar asw_fail_sound_delay( "asw_fail_sound_delay", "0.0", FCVAR_CHEAT, "Delay before playing mission fail music" );
|
||||||
ConVar asw_show_stats_in_singleplayer( "asw_show_stats_in_singleplayer", "0", FCVAR_NONE, "Show stats screen in singleplayer" );
|
ConVar asw_show_stats_in_singleplayer( "asw_show_stats_in_singleplayer", "0", FCVAR_NONE, "Show stats screen in singleplayer" );
|
||||||
|
@ -100,14 +102,12 @@ MissionCompletePanel::MissionCompletePanel(Panel *parent, const char *name, bool
|
||||||
m_PropertySheet->SetPos(0,0);
|
m_PropertySheet->SetPos(0,0);
|
||||||
m_PropertySheet->SetSize(ScreenWidth(), ScreenHeight());
|
m_PropertySheet->SetSize(ScreenWidth(), ScreenHeight());
|
||||||
m_PropertySheet->SetVisible(true);
|
m_PropertySheet->SetVisible(true);
|
||||||
if ( asw_unlock_all_weapons.GetInt() < 2 )
|
|
||||||
{
|
|
||||||
m_PropertySheet->SetShowTabs( false );
|
m_PropertySheet->SetShowTabs( false );
|
||||||
}
|
|
||||||
pParent = m_PropertySheet;
|
pParent = m_PropertySheet;
|
||||||
|
|
||||||
// stats
|
// stats
|
||||||
if ( asw_unlock_all_weapons.GetInt() >= 2 || ASWGameRules()->IsTutorialMap() )
|
if ( ASWGameRules()->IsTutorialMap() )
|
||||||
{
|
{
|
||||||
m_pExperienceReport = NULL;
|
m_pExperienceReport = NULL;
|
||||||
}
|
}
|
||||||
|
@ -121,7 +121,7 @@ MissionCompletePanel::MissionCompletePanel(Panel *parent, const char *name, bool
|
||||||
// if we're showing the debrief text tab, we need a property sheet to be the parent of all this stuff
|
// if we're showing the debrief text tab, we need a property sheet to be the parent of all this stuff
|
||||||
m_PropertySheet->SetTabWidth(ScreenWidth()/5.0f);
|
m_PropertySheet->SetTabWidth(ScreenWidth()/5.0f);
|
||||||
|
|
||||||
if ( asw_unlock_all_weapons.GetInt() < 2 && !ASWGameRules()->IsTutorialMap() )
|
if ( !ASWGameRules()->IsTutorialMap() )
|
||||||
{
|
{
|
||||||
Msg( "Adding experience report\n" );
|
Msg( "Adding experience report\n" );
|
||||||
m_PropertySheet->AddPageCustomButton( m_pExperienceReport, "#asw_experience_report_tab", scheme );
|
m_PropertySheet->AddPageCustomButton( m_pExperienceReport, "#asw_experience_report_tab", scheme );
|
||||||
|
@ -134,10 +134,10 @@ MissionCompletePanel::MissionCompletePanel(Panel *parent, const char *name, bool
|
||||||
m_PropertySheet->AddPageCustomButton( m_pStatsPanel, "#asw_stats_tab", scheme );
|
m_PropertySheet->AddPageCustomButton( m_pStatsPanel, "#asw_stats_tab", scheme );
|
||||||
if ( GetControllerFocus() )
|
if ( GetControllerFocus() )
|
||||||
{
|
{
|
||||||
GetControllerFocus()->AddToFocusList( m_PropertySheet->GetTab( asw_unlock_all_weapons.GetInt() < 2 && !ASWGameRules()->IsTutorialMap() ? 1 : 0 ), false );
|
GetControllerFocus()->AddToFocusList( m_PropertySheet->GetTab( !ASWGameRules()->IsTutorialMap() ? 1 : 0 ), false );
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( asw_unlock_all_weapons.GetInt() < 2 && !ASWGameRules()->IsTutorialMap() )
|
if ( !ASWGameRules()->IsTutorialMap() )
|
||||||
{
|
{
|
||||||
m_PropertySheet->SetActivePage( m_pExperienceReport );
|
m_PropertySheet->SetActivePage( m_pExperienceReport );
|
||||||
}
|
}
|
||||||
|
@ -416,16 +416,16 @@ void MissionCompletePanel::UpdateVisibleButtons()
|
||||||
m_pReadyCheckImage->SetVisible( false );
|
m_pReadyCheckImage->SetVisible( false );
|
||||||
if ( ASWGameRules()->GetMissionSuccess() )
|
if ( ASWGameRules()->GetMissionSuccess() )
|
||||||
{
|
{
|
||||||
if ( m_bCreditsSeen )
|
if ( ASWGameRules()->IsCampaignGame() && ASWGameRules()->CampaignMissionsLeft() <= 1 )
|
||||||
{
|
{
|
||||||
m_pContinueButton->SetVisible( false );
|
if ( !m_bCreditsSeen )
|
||||||
m_pRestartButton->SetVisible( true );
|
{
|
||||||
|
m_pContinueButton->SetText( "#asw_button_credits" );
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
if ( ASWGameRules()->IsCampaignGame() && ASWGameRules()->CampaignMissionsLeft() <= 1 )
|
m_pContinueButton->SetText( "#asw_button_new_campaign" );
|
||||||
{
|
}
|
||||||
m_pContinueButton->SetText( "#asw_button_credits" );
|
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
@ -435,7 +435,6 @@ void MissionCompletePanel::UpdateVisibleButtons()
|
||||||
m_pContinueButton->SetVisible( true );
|
m_pContinueButton->SetVisible( true );
|
||||||
m_pRestartButton->SetVisible( false );
|
m_pRestartButton->SetVisible( false );
|
||||||
}
|
}
|
||||||
}
|
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
m_pContinueButton->SetVisible( false );
|
m_pContinueButton->SetVisible( false );
|
||||||
|
@ -444,9 +443,17 @@ void MissionCompletePanel::UpdateVisibleButtons()
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
if ( !m_bCreditsSeen && ASWGameRules()->GetMissionSuccess() && ASWGameRules()->IsCampaignGame() && ASWGameRules()->CampaignMissionsLeft() <= 1 )
|
if ( ASWGameRules()->GetMissionSuccess() && ASWGameRules()->IsCampaignGame() && ASWGameRules()->CampaignMissionsLeft() <= 1 )
|
||||||
|
{
|
||||||
|
if ( !m_bCreditsSeen )
|
||||||
{
|
{
|
||||||
m_pContinueButton->SetText( "#asw_button_credits" );
|
m_pContinueButton->SetText( "#asw_button_credits" );
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
m_pContinueButton->SetText( "#asw_button_new_campaign" );
|
||||||
|
}
|
||||||
|
|
||||||
m_pContinueButton->SetVisible( true );
|
m_pContinueButton->SetVisible( true );
|
||||||
m_pReadyButton->SetVisible( false );
|
m_pReadyButton->SetVisible( false );
|
||||||
m_pReadyCheckImage->SetVisible( false );
|
m_pReadyCheckImage->SetVisible( false );
|
||||||
|
@ -478,10 +485,7 @@ void MissionCompletePanel::ApplySchemeSettings( vgui::IScheme *scheme )
|
||||||
{
|
{
|
||||||
BaseClass::ApplySchemeSettings( scheme );
|
BaseClass::ApplySchemeSettings( scheme );
|
||||||
|
|
||||||
if ( asw_unlock_all_weapons.GetInt() < 2 )
|
|
||||||
{
|
|
||||||
LoadControlSettings( "resource/UI/MissionCompletePanel.res" );
|
LoadControlSettings( "resource/UI/MissionCompletePanel.res" );
|
||||||
}
|
|
||||||
|
|
||||||
if ( !m_bSetAlpha )
|
if ( !m_bSetAlpha )
|
||||||
{
|
{
|
||||||
|
@ -553,7 +557,9 @@ void MissionCompletePanel::OnCommand(const char* command)
|
||||||
}
|
}
|
||||||
else if ( !Q_stricmp( command, "Continue" ) )
|
else if ( !Q_stricmp( command, "Continue" ) )
|
||||||
{
|
{
|
||||||
if ( !m_bCreditsSeen && ASWGameRules()->GetMissionSuccess() && ASWGameRules()->IsCampaignGame() && ASWGameRules()->CampaignMissionsLeft() <= 1 )
|
if ( ASWGameRules()->GetMissionSuccess() && ASWGameRules()->IsCampaignGame() && ASWGameRules()->CampaignMissionsLeft() <= 1 )
|
||||||
|
{
|
||||||
|
if ( !m_bCreditsSeen )
|
||||||
{
|
{
|
||||||
C_ASW_Player *pPlayer = C_ASW_Player::GetLocalASWPlayer();
|
C_ASW_Player *pPlayer = C_ASW_Player::GetLocalASWPlayer();
|
||||||
if ( pPlayer )
|
if ( pPlayer )
|
||||||
|
@ -566,6 +572,12 @@ void MissionCompletePanel::OnCommand(const char* command)
|
||||||
UpdateVisibleButtons();
|
UpdateVisibleButtons();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
// Vote on a new mission
|
||||||
|
engine->ClientCmd("asw_vote_chooser 0 notrans");
|
||||||
|
}
|
||||||
|
}
|
||||||
else if ( bLeader )
|
else if ( bLeader )
|
||||||
{
|
{
|
||||||
bool bAllReady = pGameResource->AreAllOtherPlayersReady( pPlayer->entindex() );
|
bool bAllReady = pGameResource->AreAllOtherPlayersReady( pPlayer->entindex() );
|
||||||
|
|
|
@ -29,13 +29,15 @@ MissionCompleteStatsLine::MissionCompleteStatsLine(Panel *parent, const char *na
|
||||||
m_pBarIcons[i] = new vgui::ImagePanel(this, "BarIcon");
|
m_pBarIcons[i] = new vgui::ImagePanel(this, "BarIcon");
|
||||||
m_pBarIcons[i]->SetShouldScaleImage(true);
|
m_pBarIcons[i]->SetShouldScaleImage(true);
|
||||||
}
|
}
|
||||||
m_pBarIcons[0]->SetImage("swarm/Briefing/statkilled");
|
|
||||||
m_pBarIcons[1]->SetImage("swarm/Briefing/stataccuracy");
|
// not used and the icons no longer exist
|
||||||
m_pBarIcons[2]->SetImage("swarm/Briefing/statfriendly");
|
//m_pBarIcons[0]->SetImage("swarm/Briefing/statkilled");
|
||||||
m_pBarIcons[3]->SetImage("swarm/Briefing/statdamage");
|
//m_pBarIcons[1]->SetImage("swarm/Briefing/stataccuracy");
|
||||||
m_pBarIcons[4]->SetImage("swarm/Briefing/statshots2");
|
//m_pBarIcons[2]->SetImage("swarm/Briefing/statfriendly");
|
||||||
m_pBarIcons[5]->SetImage("swarm/Briefing/statshots2"); // changed later when we know our marine
|
//m_pBarIcons[3]->SetImage("swarm/Briefing/statdamage");
|
||||||
m_pBarIcons[6]->SetImage("swarm/Briefing/statskillpoints");
|
//m_pBarIcons[4]->SetImage("swarm/Briefing/statshots2");
|
||||||
|
//m_pBarIcons[5]->SetImage("swarm/Briefing/statshots2"); // changed later when we know our marine
|
||||||
|
//m_pBarIcons[6]->SetImage("swarm/Briefing/statskillpoints");
|
||||||
|
|
||||||
// make the FF and damage taken bars be red
|
// make the FF and damage taken bars be red
|
||||||
//m_pStats[2]->SetColors(Color(255,255,255,255), Color(255,0,0,255), Color(64,0,0,255));
|
//m_pStats[2]->SetColors(Color(255,255,255,255), Color(255,0,0,255), Color(64,0,0,255));
|
||||||
|
|
|
@ -254,7 +254,8 @@ void CNB_Header_Footer::ApplySchemeSettings( vgui::IScheme *pScheme )
|
||||||
LoadControlSettings( "resource/ui/nb_header_footer.res" );
|
LoadControlSettings( "resource/ui/nb_header_footer.res" );
|
||||||
|
|
||||||
// TODO: Different image in widescreen to avoid stretching
|
// TODO: Different image in widescreen to avoid stretching
|
||||||
m_pBackgroundImage->SetImage( "lobby/swarm_background01" );
|
// this image is no longer used
|
||||||
|
//m_pBackgroundImage->SetImage( "lobby/swarm_background01" );
|
||||||
|
|
||||||
switch( m_nTitleStyle )
|
switch( m_nTitleStyle )
|
||||||
{
|
{
|
||||||
|
|
|
@ -16,16 +16,21 @@
|
||||||
#include "nb_main_panel.h"
|
#include "nb_main_panel.h"
|
||||||
#include "vgui_avatarimage.h"
|
#include "vgui_avatarimage.h"
|
||||||
#include "voice_status.h"
|
#include "voice_status.h"
|
||||||
|
#include "gameui/swarm/vflyoutmenu.h"
|
||||||
|
#include "gameui/swarm/vdropdownmenu.h"
|
||||||
|
#include "gameui/swarm/vhybridbutton.h"
|
||||||
|
|
||||||
// memdbgon must be the last include file in a .cpp file!!!
|
// memdbgon must be the last include file in a .cpp file!!!
|
||||||
#include "tier0/memdbgon.h"
|
#include "tier0/memdbgon.h"
|
||||||
|
|
||||||
|
using namespace BaseModUI;
|
||||||
|
|
||||||
CNB_Lobby_Row::CNB_Lobby_Row( vgui::Panel *parent, const char *name ) : BaseClass( parent, name )
|
CNB_Lobby_Row::CNB_Lobby_Row( vgui::Panel *parent, const char *name ) : BaseClass( parent, name )
|
||||||
{
|
{
|
||||||
// == MANAGED_MEMBER_CREATION_START: Do not edit by hand ==
|
// == MANAGED_MEMBER_CREATION_START: Do not edit by hand ==
|
||||||
m_pAvatarBackground = new vgui::Panel( this, "AvatarBackground" );
|
m_pAvatarBackground = new vgui::Panel( this, "AvatarBackground" );
|
||||||
m_pAvatarImage = new CAvatarImagePanel( this, "AvatarImage" );
|
m_pAvatarImage = new CAvatarImagePanel( this, "AvatarImage" );
|
||||||
m_pNameLabel = new vgui::Label( this, "NameLabel", "" );
|
m_pNameDropdown = new BaseModUI::DropDownMenu( this, "DrpNameLabel" );
|
||||||
m_pLevelLabel = new vgui::Label( this, "LevelLabel", "" );
|
m_pLevelLabel = new vgui::Label( this, "LevelLabel", "" );
|
||||||
m_pXPBar = new StatsBar( this, "XPBar" );
|
m_pXPBar = new StatsBar( this, "XPBar" );
|
||||||
m_pClassLabel = new vgui::Label( this, "ClassLabel", "" );
|
m_pClassLabel = new vgui::Label( this, "ClassLabel", "" );
|
||||||
|
@ -161,7 +166,7 @@ void CNB_Lobby_Row::UpdateDetails()
|
||||||
m_pXPBar->SetVisible( false );
|
m_pXPBar->SetVisible( false );
|
||||||
m_pLevelLabel->SetVisible( false );
|
m_pLevelLabel->SetVisible( false );
|
||||||
m_pPromotionIcon->SetVisible( false );
|
m_pPromotionIcon->SetVisible( false );
|
||||||
m_pNameLabel->SetVisible( false );
|
m_pNameDropdown->SetVisible( false );
|
||||||
m_pAvatarImage->SetVisible( false );
|
m_pAvatarImage->SetVisible( false );
|
||||||
m_pClassLabel->SetVisible( false );
|
m_pClassLabel->SetVisible( false );
|
||||||
return;
|
return;
|
||||||
|
@ -179,8 +184,12 @@ void CNB_Lobby_Row::UpdateDetails()
|
||||||
lightblue.b = 192;
|
lightblue.b = 192;
|
||||||
lightblue.a = 255;
|
lightblue.a = 255;
|
||||||
|
|
||||||
m_pNameLabel->SetText( Briefing()->GetMarineOrPlayerName( m_nLobbySlot ) );
|
BaseModHybridButton *pButton = m_pNameDropdown->GetButton();
|
||||||
m_pNameLabel->SetVisible( true );
|
if ( pButton )
|
||||||
|
{
|
||||||
|
pButton->SetText( Briefing()->GetMarineOrPlayerName( m_nLobbySlot ) );
|
||||||
|
}
|
||||||
|
m_pNameDropdown->SetVisible( true );
|
||||||
|
|
||||||
#if !defined(NO_STEAM)
|
#if !defined(NO_STEAM)
|
||||||
CSteamID steamID = Briefing()->GetCommanderSteamID( m_nLobbySlot );
|
CSteamID steamID = Briefing()->GetCommanderSteamID( m_nLobbySlot );
|
||||||
|
@ -265,9 +274,9 @@ void CNB_Lobby_Row::UpdateDetails()
|
||||||
m_pAvatarImage->GetPos( nAvatarX, nAvatarY );
|
m_pAvatarImage->GetPos( nAvatarX, nAvatarY );
|
||||||
|
|
||||||
int nNameX, nNameY;
|
int nNameX, nNameY;
|
||||||
m_pNameLabel->GetPos( nNameX, nNameY );
|
m_pNameDropdown->GetPos( nNameX, nNameY );
|
||||||
|
|
||||||
m_pNameLabel->SetPos( nAvatarX + YRES( 5 ), nNameY );
|
m_pNameDropdown->SetPos( nAvatarX + YRES( 5 ), nNameY );
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
@ -389,6 +398,8 @@ void CNB_Lobby_Row::CheckTooltip( CNB_Lobby_Tooltip *pTooltip )
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
extern ConVar developer;
|
||||||
|
|
||||||
void CNB_Lobby_Row::OnCommand( const char *command )
|
void CNB_Lobby_Row::OnCommand( const char *command )
|
||||||
{
|
{
|
||||||
CNB_Main_Panel *pMainPanel = dynamic_cast<CNB_Main_Panel*>( GetParent() );
|
CNB_Main_Panel *pMainPanel = dynamic_cast<CNB_Main_Panel*>( GetParent() );
|
||||||
|
@ -414,4 +425,70 @@ void CNB_Lobby_Row::OnCommand( const char *command )
|
||||||
{
|
{
|
||||||
pMainPanel->ChangeWeapon( m_nLobbySlot, 2 );
|
pMainPanel->ChangeWeapon( m_nLobbySlot, 2 );
|
||||||
}
|
}
|
||||||
|
else if ( !Q_stricmp( command, "PlayerFlyout" ) )
|
||||||
|
{
|
||||||
|
if ( !Briefing()->IsLobbySlotBot( m_nLobbySlot ) )
|
||||||
|
{
|
||||||
|
OpenPlayerFlyout();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else if ( !Q_stricmp( command, "#L4D360UI_SendMessage" ) )
|
||||||
|
{
|
||||||
|
char steamCmd[64];
|
||||||
|
Q_snprintf( steamCmd, sizeof( steamCmd ), "chat/%I64u", pMainPanel->m_FlyoutSteamID );
|
||||||
|
BaseModUI::CUIGameData::Get()->ExecuteOverlayCommand( steamCmd );
|
||||||
|
}
|
||||||
|
else if ( !Q_stricmp( command, "#L4D360UI_ViewSteamID" ) )
|
||||||
|
{
|
||||||
|
char steamCmd[64];
|
||||||
|
Q_snprintf( steamCmd, sizeof( steamCmd ), "steamid/%I64u", pMainPanel->m_FlyoutSteamID );
|
||||||
|
BaseModUI::CUIGameData::Get()->ExecuteOverlayCommand( steamCmd );
|
||||||
|
}
|
||||||
|
else if ( !Q_stricmp( command, "#L4D360UI_ViewSteamStats" ) )
|
||||||
|
{
|
||||||
|
#if !defined( _X360 ) && !defined( NO_STEAM )
|
||||||
|
if ( steamapicontext && steamapicontext->SteamFriends() &&
|
||||||
|
steamapicontext->SteamUtils() && steamapicontext->SteamUtils()->IsOverlayEnabled() )
|
||||||
|
{
|
||||||
|
if ( developer.GetBool() )
|
||||||
|
{
|
||||||
|
Msg( "Local player SteamID = %I64d\n", steamapicontext->SteamUser()->GetSteamID().ConvertToUint64() );
|
||||||
|
Msg( "Activating stats for SteamID = %I64d\n", Briefing()->GetCommanderSteamID( m_nLobbySlot ).ConvertToUint64() );
|
||||||
|
}
|
||||||
|
steamapicontext->SteamFriends()->ActivateGameOverlayToUser( "stats", Briefing()->GetCommanderSteamID( m_nLobbySlot ) );
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void CNB_Lobby_Row::OpenPlayerFlyout()
|
||||||
|
{
|
||||||
|
vgui::Panel *pButton = m_pNameDropdown->GetButton();
|
||||||
|
if ( !pButton )
|
||||||
|
return;
|
||||||
|
|
||||||
|
// Determine the anchor point
|
||||||
|
int x, y;
|
||||||
|
pButton->GetPos( x, y );
|
||||||
|
pButton->LocalToScreen( x, y );
|
||||||
|
|
||||||
|
BaseModUI::FlyoutMenu *pFlyout = dynamic_cast< BaseModUI::FlyoutMenu * >( GetParent()->FindChildByName( "FlmPlayerFlyout" ) );
|
||||||
|
|
||||||
|
pFlyout->OpenMenu( pButton );
|
||||||
|
pFlyout->SetPos( x + pButton->GetWide(), y );
|
||||||
|
pFlyout->SetOriginalTall( pButton->GetTall() );
|
||||||
|
|
||||||
|
CNB_Main_Panel *pMainPanel = dynamic_cast<CNB_Main_Panel*>( GetParent() );
|
||||||
|
if ( pMainPanel )
|
||||||
|
{
|
||||||
|
pMainPanel->m_FlyoutSteamID = Briefing()->GetCommanderSteamID( m_nLobbySlot ).ConvertToUint64();
|
||||||
|
}
|
||||||
|
|
||||||
|
// Disable Send Message if self
|
||||||
|
BaseModHybridButton *sendMessasge = dynamic_cast< BaseModHybridButton * >( pFlyout->FindChildByName( "BtnSendMessage" ) );
|
||||||
|
if ( sendMessasge )
|
||||||
|
{
|
||||||
|
sendMessasge->SetEnabled( !Briefing()->IsLobbySlotLocal( m_nLobbySlot ) );
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
|
@ -18,6 +18,10 @@ class CAvatarImagePanel;
|
||||||
// == MANAGED_CLASS_DECLARATIONS_END ==
|
// == MANAGED_CLASS_DECLARATIONS_END ==
|
||||||
class CBitmapButton;
|
class CBitmapButton;
|
||||||
class CNB_Lobby_Tooltip;
|
class CNB_Lobby_Tooltip;
|
||||||
|
namespace BaseModUI
|
||||||
|
{
|
||||||
|
class DropDownMenu;
|
||||||
|
}
|
||||||
|
|
||||||
class CNB_Lobby_Row : public vgui::EditablePanel
|
class CNB_Lobby_Row : public vgui::EditablePanel
|
||||||
{
|
{
|
||||||
|
@ -30,6 +34,7 @@ public:
|
||||||
virtual void PerformLayout();
|
virtual void PerformLayout();
|
||||||
virtual void OnThink();
|
virtual void OnThink();
|
||||||
virtual void OnCommand( const char *command );
|
virtual void OnCommand( const char *command );
|
||||||
|
void OpenPlayerFlyout();
|
||||||
|
|
||||||
virtual void UpdateDetails();
|
virtual void UpdateDetails();
|
||||||
virtual void CheckTooltip( CNB_Lobby_Tooltip *pTooltip );
|
virtual void CheckTooltip( CNB_Lobby_Tooltip *pTooltip );
|
||||||
|
@ -48,7 +53,7 @@ public:
|
||||||
vgui::Panel *m_pAvatarBackground;
|
vgui::Panel *m_pAvatarBackground;
|
||||||
CAvatarImagePanel *m_pAvatarImage;
|
CAvatarImagePanel *m_pAvatarImage;
|
||||||
vgui::ImagePanel *m_pClassImage;
|
vgui::ImagePanel *m_pClassImage;
|
||||||
vgui::Label *m_pNameLabel;
|
BaseModUI::DropDownMenu *m_pNameDropdown;
|
||||||
vgui::Label *m_pLevelLabel;
|
vgui::Label *m_pLevelLabel;
|
||||||
StatsBar *m_pXPBar;
|
StatsBar *m_pXPBar;
|
||||||
vgui::Label *m_pClassLabel;
|
vgui::Label *m_pClassLabel;
|
||||||
|
|
|
@ -41,6 +41,7 @@ void CNB_Lobby_Row_Small::ApplySchemeSettings( vgui::IScheme *pScheme )
|
||||||
m_szLastWeaponImage[i][0] = 0;
|
m_szLastWeaponImage[i][0] = 0;
|
||||||
}
|
}
|
||||||
m_szLastPortraitImage[ 0 ] = 0;
|
m_szLastPortraitImage[ 0 ] = 0;
|
||||||
|
m_lastSteamID.Set( 0, k_EUniverseInvalid, k_EAccountTypeInvalid );
|
||||||
}
|
}
|
||||||
|
|
||||||
void CNB_Lobby_Row_Small::PerformLayout()
|
void CNB_Lobby_Row_Small::PerformLayout()
|
||||||
|
|
|
@ -147,9 +147,6 @@ void CNB_Main_Panel::PerformLayout()
|
||||||
BaseClass::PerformLayout();
|
BaseClass::PerformLayout();
|
||||||
}
|
}
|
||||||
|
|
||||||
// TODO: Remove this before ship
|
|
||||||
ConVar asw_force_allow_promotion( "asw_force_allow_promotion", "0" );
|
|
||||||
|
|
||||||
void CNB_Main_Panel::OnThink()
|
void CNB_Main_Panel::OnThink()
|
||||||
{
|
{
|
||||||
BaseClass::OnThink();
|
BaseClass::OnThink();
|
||||||
|
@ -161,14 +158,8 @@ void CNB_Main_Panel::OnThink()
|
||||||
m_pChatButton->SetVisible( gpGlobals->maxClients > 1 );
|
m_pChatButton->SetVisible( gpGlobals->maxClients > 1 );
|
||||||
m_pVoteButton->SetVisible( gpGlobals->maxClients > 1 );
|
m_pVoteButton->SetVisible( gpGlobals->maxClients > 1 );
|
||||||
C_ASW_Player *pPlayer = C_ASW_Player::GetLocalASWPlayer();
|
C_ASW_Player *pPlayer = C_ASW_Player::GetLocalASWPlayer();
|
||||||
if ( asw_force_allow_promotion.GetBool() )
|
|
||||||
{
|
|
||||||
m_pPromotionButton->SetVisible( true );
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
m_pPromotionButton->SetVisible( pPlayer && pPlayer->GetExperience() >= ASW_XP_CAP && pPlayer->GetPromotion() < ASW_PROMOTION_CAP );
|
m_pPromotionButton->SetVisible( pPlayer && pPlayer->GetExperience() >= ASW_XP_CAP && pPlayer->GetPromotion() < ASW_PROMOTION_CAP );
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
const char *pszLeaderName = Briefing()->GetLeaderName();
|
const char *pszLeaderName = Briefing()->GetLeaderName();
|
||||||
|
|
|
@ -65,6 +65,7 @@ public:
|
||||||
CBitmapButton *m_pVoteButton;
|
CBitmapButton *m_pVoteButton;
|
||||||
|
|
||||||
bool m_bLocalLeader;
|
bool m_bLocalLeader;
|
||||||
|
uint64 m_FlyoutSteamID;
|
||||||
|
|
||||||
void ProcessSkillSpendQueue();
|
void ProcessSkillSpendQueue();
|
||||||
void OnFinishedSpendingSkillPoints();
|
void OnFinishedSpendingSkillPoints();
|
||||||
|
|
|
@ -192,8 +192,8 @@ void CNB_Mission_Panel::OnThink()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
m_drpDifficulty->SetVisible( gpGlobals->maxClients > 1 );
|
// only show insane in multiplayer
|
||||||
m_pDifficultyDescription->SetVisible( gpGlobals->maxClients > 1 );
|
m_drpDifficulty->SetFlyoutItemEnabled( "BtnImpossible", gpGlobals->maxClients > 1 );
|
||||||
|
|
||||||
if ( ASWGameRules()->IsCampaignGame() && ASWGameRules()->GetCampaignSave() && ASWGameRules()->GetGameState() != ASW_GS_INGAME )
|
if ( ASWGameRules()->IsCampaignGame() && ASWGameRules()->GetCampaignSave() && ASWGameRules()->GetGameState() != ASW_GS_INGAME )
|
||||||
{
|
{
|
||||||
|
|
|
@ -97,10 +97,17 @@ void CNB_Vote_Panel::UpdateVotePanelStatus()
|
||||||
if ( ASWGameRules()->GetRestartingMissionTime() > gpGlobals->curtime + flCorrection )
|
if ( ASWGameRules()->GetRestartingMissionTime() > gpGlobals->curtime + flCorrection )
|
||||||
{
|
{
|
||||||
if ( GetClientModeASW() && GetClientModeASW()->m_bTechFailure )
|
if ( GetClientModeASW() && GetClientModeASW()->m_bTechFailure )
|
||||||
|
{
|
||||||
|
if ( ASWGameRules()->GetGameState() == ASW_GS_INGAME )
|
||||||
{
|
{
|
||||||
m_VotePanelStatus = VPS_TECH_FAIL;
|
m_VotePanelStatus = VPS_TECH_FAIL;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
{
|
||||||
|
m_VotePanelStatus = VPS_NONE;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
{
|
{
|
||||||
m_VotePanelStatus = VPS_RESTART;
|
m_VotePanelStatus = VPS_RESTART;
|
||||||
}
|
}
|
||||||
|
|
|
@ -57,6 +57,8 @@ void ObjectiveIcons::OnThink()
|
||||||
{
|
{
|
||||||
BaseClass::OnThink();
|
BaseClass::OnThink();
|
||||||
|
|
||||||
|
// this is no longer being used
|
||||||
|
/*
|
||||||
if (m_bHaveQueued)
|
if (m_bHaveQueued)
|
||||||
{
|
{
|
||||||
if (m_pIcon[0] && m_pIcon[0]->GetAlpha() <= 0)
|
if (m_pIcon[0] && m_pIcon[0]->GetAlpha() <= 0)
|
||||||
|
@ -91,11 +93,12 @@ void ObjectiveIcons::OnThink()
|
||||||
vgui::GetAnimationController()->RunAnimationCommand(this, "alpha", 255, 0, 0.3f, vgui::AnimationController::INTERPOLATOR_LINEAR);
|
vgui::GetAnimationController()->RunAnimationCommand(this, "alpha", 255, 0, 0.3f, vgui::AnimationController::INTERPOLATOR_LINEAR);
|
||||||
|
|
||||||
CLocalPlayerFilter filter;
|
CLocalPlayerFilter filter;
|
||||||
C_BaseEntity::EmitSound( filter, -1 /*SOUND_FROM_LOCAL_PLAYER*/, "ASWInterface.MissionBoxes" );
|
C_BaseEntity::EmitSound( filter, -1, "ASWInterface.MissionBoxes" );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
*/
|
||||||
}
|
}
|
||||||
|
|
||||||
void ObjectiveIcons::ApplySchemeSettings(vgui::IScheme *pScheme)
|
void ObjectiveIcons::ApplySchemeSettings(vgui::IScheme *pScheme)
|
||||||
|
|
|
@ -780,10 +780,13 @@ void CRadialMenu::OnCommand( const char *command )
|
||||||
StartFade();
|
StartFade();
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
{
|
||||||
|
if ( !m_fading )
|
||||||
{
|
{
|
||||||
StartFade();
|
StartFade();
|
||||||
SendCommand( command );
|
SendCommand( command );
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
BaseClass::OnCommand( command );
|
BaseClass::OnCommand( command );
|
||||||
}
|
}
|
||||||
|
|
|
@ -174,7 +174,7 @@ void StatsReport::OnThink()
|
||||||
C_ASW_Player *pPlayer = pMR->GetCommander();
|
C_ASW_Player *pPlayer = pMR->GetCommander();
|
||||||
if ( pPlayer )
|
if ( pPlayer )
|
||||||
{
|
{
|
||||||
if ( ASWGameResource()->IsPlayerReady( pPlayer ) )
|
if ( !pMR->IsInhabited() || ASWGameResource()->IsPlayerReady( pPlayer ) )
|
||||||
{
|
{
|
||||||
m_pReadyCheckImages[ i ]->SetImage( "swarm/HUD/TickBoxTicked" );
|
m_pReadyCheckImages[ i ]->SetImage( "swarm/HUD/TickBoxTicked" );
|
||||||
}
|
}
|
||||||
|
|
|
@ -22,7 +22,7 @@ TechMarineFailPanel::TechMarineFailPanel(vgui::Panel *parent, const char *name)
|
||||||
m_pReasonMessage = new vgui::Label(this, "ReasonMessage", "#asw_no_live_tech");
|
m_pReasonMessage = new vgui::Label(this, "ReasonMessage", "#asw_no_live_tech");
|
||||||
m_pIcon = new vgui::ImagePanel(this, "Icon");
|
m_pIcon = new vgui::ImagePanel(this, "Icon");
|
||||||
m_pIcon->SetShouldScaleImage(true);
|
m_pIcon->SetShouldScaleImage(true);
|
||||||
m_pIcon->SetImage("swarm/Briefing/stathack");
|
m_pIcon->SetImage("swarm/EquipIcons/Locked");
|
||||||
m_bLeader = false;
|
m_bLeader = false;
|
||||||
m_hFont = vgui::INVALID_FONT;
|
m_hFont = vgui::INVALID_FONT;
|
||||||
|
|
||||||
|
|
|
@ -40,6 +40,7 @@ m_nTilesY( 1 )
|
||||||
m_TemplateName[0] = '\0';
|
m_TemplateName[0] = '\0';
|
||||||
m_Description[0] = '\0';
|
m_Description[0] = '\0';
|
||||||
m_Soundscape[0] = '\0';
|
m_Soundscape[0] = '\0';
|
||||||
|
m_nTileType = ASW_TILETYPE_UNKNOWN;
|
||||||
}
|
}
|
||||||
|
|
||||||
CRoomTemplate::~CRoomTemplate()
|
CRoomTemplate::~CRoomTemplate()
|
||||||
|
|
|
@ -796,7 +796,7 @@ const Vector& VMFExporter::GetCurrentRoomOffset()
|
||||||
return s_vecCurrentRoomOffset;
|
return s_vecCurrentRoomOffset;
|
||||||
}
|
}
|
||||||
|
|
||||||
#define UNIQUE_KEYS_FILE "unique_keys.txt"
|
#define UNIQUE_KEYS_FILE "tilegen/unique_keys.txt"
|
||||||
void VMFExporter::LoadUniqueKeyList()
|
void VMFExporter::LoadUniqueKeyList()
|
||||||
{
|
{
|
||||||
m_UniqueKeys.RemoveAll();
|
m_UniqueKeys.RemoveAll();
|
||||||
|
@ -804,7 +804,7 @@ void VMFExporter::LoadUniqueKeyList()
|
||||||
|
|
||||||
// Open the manifest file, and read the particles specified inside it
|
// Open the manifest file, and read the particles specified inside it
|
||||||
KeyValues *manifest = new KeyValues( UNIQUE_KEYS_FILE );
|
KeyValues *manifest = new KeyValues( UNIQUE_KEYS_FILE );
|
||||||
if ( manifest->LoadFromFile( g_pFullFileSystem, UNIQUE_KEYS_FILE, "TILEGEN" ) )
|
if ( manifest->LoadFromFile( g_pFullFileSystem, UNIQUE_KEYS_FILE, "GAME" ) )
|
||||||
{
|
{
|
||||||
for ( KeyValues *sub = manifest->GetFirstSubKey(); sub != NULL; sub = sub->GetNextKey() )
|
for ( KeyValues *sub = manifest->GetFirstSubKey(); sub != NULL; sub = sub->GetNextKey() )
|
||||||
{
|
{
|
||||||
|
|
|
@ -560,6 +560,8 @@ void CASW_Map_Builder::ScheduleMapBuild(const char* pszMap, const float fTime)
|
||||||
m_bStartedGeneration = false;
|
m_bStartedGeneration = false;
|
||||||
m_iBuildStage = STAGE_MAP_BUILD_SCHEDULED;
|
m_iBuildStage = STAGE_MAP_BUILD_SCHEDULED;
|
||||||
m_flProgress = 0.0f;
|
m_flProgress = 0.0f;
|
||||||
|
|
||||||
|
Q_snprintf( m_szStatusMessage, sizeof( m_szStatusMessage ), "Generating map..." );
|
||||||
}
|
}
|
||||||
|
|
||||||
// schedules a map to be randomly generated
|
// schedules a map to be randomly generated
|
||||||
|
@ -580,6 +582,8 @@ void CASW_Map_Builder::ScheduleMapGeneration( const char* pszMap, const float fT
|
||||||
m_bStartedGeneration = false;
|
m_bStartedGeneration = false;
|
||||||
m_nLevelGenerationRetryCount = 0;
|
m_nLevelGenerationRetryCount = 0;
|
||||||
m_flProgress = 0.0f;
|
m_flProgress = 0.0f;
|
||||||
|
|
||||||
|
Q_snprintf( m_szStatusMessage, sizeof( m_szStatusMessage ), "Generating map..." );
|
||||||
}
|
}
|
||||||
|
|
||||||
// Builds a map from a .layout file
|
// Builds a map from a .layout file
|
||||||
|
|
|
@ -145,10 +145,10 @@ InitReturnVal_t CASW_Mission_Chooser::Init()
|
||||||
Q_AppendSlash( g_gamedir, sizeof( g_gamedir ) );
|
Q_AppendSlash( g_gamedir, sizeof( g_gamedir ) );
|
||||||
|
|
||||||
char tilegendir[MAX_PATH];
|
char tilegendir[MAX_PATH];
|
||||||
Q_snprintf( tilegendir, sizeof(tilegendir), "%s\\tilegen", g_gamedir );
|
Q_snprintf( tilegendir, sizeof(tilegendir), "%stilegen", g_gamedir );
|
||||||
g_pFullFileSystem->AddSearchPath( tilegendir, "TILEGEN" );
|
//g_pFullFileSystem->AddSearchPath( tilegendir, "TILEGEN", PATH_ADD_TO_HEAD );
|
||||||
|
|
||||||
Q_snprintf( g_layoutsdir, sizeof(g_layoutsdir), "%s\\tilegen\\layouts", g_gamedir );
|
Q_snprintf( g_layoutsdir, sizeof(g_layoutsdir), "%stilegen\\layouts", g_gamedir );
|
||||||
|
|
||||||
g_MissionTextDatabase.LoadKeyValuesFile( "tilegen/objective_text.txt" );
|
g_MissionTextDatabase.LoadKeyValuesFile( "tilegen/objective_text.txt" );
|
||||||
|
|
||||||
|
|
|
@ -178,7 +178,7 @@ void CASW_Mission_Chooser_Source_Local::BuildMapList()
|
||||||
|
|
||||||
// Search the directory structure.
|
// Search the directory structure.
|
||||||
char mapwild[MAX_QPATH];
|
char mapwild[MAX_QPATH];
|
||||||
Q_strncpy(mapwild,"maps/ASI-*.bsp", sizeof( mapwild ) );
|
Q_strncpy(mapwild,"maps/*.bsp", sizeof( mapwild ) );
|
||||||
m_pszMapFind = Sys_FindFirst( g_hmapfind, mapwild, NULL, 0 );
|
m_pszMapFind = Sys_FindFirst( g_hmapfind, mapwild, NULL, 0 );
|
||||||
// think will continue the search
|
// think will continue the search
|
||||||
}
|
}
|
||||||
|
|
|
@ -34,8 +34,6 @@ void CASW_Random_Missions::LevelInitPostEntity( const char *pszMapName )
|
||||||
{
|
{
|
||||||
delete m_pCurrentMapLayout;
|
delete m_pCurrentMapLayout;
|
||||||
|
|
||||||
CLevelTheme::LoadLevelThemes();
|
|
||||||
|
|
||||||
// try to load the layout for this map
|
// try to load the layout for this map
|
||||||
char filename[128];
|
char filename[128];
|
||||||
|
|
||||||
|
@ -43,7 +41,11 @@ void CASW_Random_Missions::LevelInitPostEntity( const char *pszMapName )
|
||||||
Q_SetExtension( filename, "layout", sizeof( filename ) );
|
Q_SetExtension( filename, "layout", sizeof( filename ) );
|
||||||
|
|
||||||
char fullpath[MAX_PATH];
|
char fullpath[MAX_PATH];
|
||||||
g_pFullFileSystem->RelativePathToFullPath( filename, "MOD", fullpath, sizeof( fullpath ) );
|
g_pFullFileSystem->RelativePathToFullPath( filename, "GAME", fullpath, sizeof( fullpath ) );
|
||||||
|
|
||||||
|
if ( g_pFullFileSystem->FileExists( filename ) )
|
||||||
|
{
|
||||||
|
CLevelTheme::LoadLevelThemes();
|
||||||
|
|
||||||
m_pCurrentMapLayout = new CMapLayout();
|
m_pCurrentMapLayout = new CMapLayout();
|
||||||
if ( !m_pCurrentMapLayout->LoadMapLayout( filename ) )
|
if ( !m_pCurrentMapLayout->LoadMapLayout( filename ) )
|
||||||
|
@ -51,6 +53,11 @@ void CASW_Random_Missions::LevelInitPostEntity( const char *pszMapName )
|
||||||
delete m_pCurrentMapLayout;
|
delete m_pCurrentMapLayout;
|
||||||
m_pCurrentMapLayout = NULL;
|
m_pCurrentMapLayout = NULL;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
m_pCurrentMapLayout = NULL;
|
||||||
|
}
|
||||||
|
|
||||||
m_bDirtyLayoutForMinimap = true;
|
m_bDirtyLayoutForMinimap = true;
|
||||||
}
|
}
|
||||||
|
|
|
@ -229,7 +229,7 @@ BaseClass( pParent, pName ),
|
||||||
m_pRulePreprocessor( pRulePreprocessor )
|
m_pRulePreprocessor( pRulePreprocessor )
|
||||||
{
|
{
|
||||||
m_pRulePanelList = new PanelListPanel( this, "RulePanelListPanel" );
|
m_pRulePanelList = new PanelListPanel( this, "RulePanelListPanel" );
|
||||||
LoadControlSettings( "RulePicker.res" );
|
LoadControlSettings( "tilegen/RulePicker.res", "GAME" );
|
||||||
SetDeleteSelfOnClose( true );
|
SetDeleteSelfOnClose( true );
|
||||||
MoveToCenterOfScreen();
|
MoveToCenterOfScreen();
|
||||||
for ( int i = 0; i < m_pRulePreprocessor->GetRuleCount(); ++ i )
|
for ( int i = 0; i < m_pRulePreprocessor->GetRuleCount(); ++ i )
|
||||||
|
|
|
@ -249,7 +249,7 @@ CTile_Check_Frame::CTile_Check_Frame( Panel *parent, const char *name ) : BaseCl
|
||||||
m_pCheckingLabel = new vgui::Label( this, "CheckingLabel", "" );
|
m_pCheckingLabel = new vgui::Label( this, "CheckingLabel", "" );
|
||||||
m_pProgressBar = new vgui::ProgressBar( this, "ProgressBar" );
|
m_pProgressBar = new vgui::ProgressBar( this, "ProgressBar" );
|
||||||
m_pErrorTextBox = new vgui::RichText( this, "ErrorTextBox" );
|
m_pErrorTextBox = new vgui::RichText( this, "ErrorTextBox" );
|
||||||
LoadControlSettings( "TileCheck.res", "TILEGEN" );
|
LoadControlSettings( "tilegen/TileCheck.res", "GAME" );
|
||||||
|
|
||||||
SetMinimumSize( 384, 420 );
|
SetMinimumSize( 384, 420 );
|
||||||
|
|
||||||
|
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue