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"
|
||||
{
|
||||
"SteamAppId" "886"
|
||||
"SteamAppId" "630"
|
||||
"ToolsAppId" "211"
|
||||
|
||||
"SearchPaths"
|
||||
|
|
|
@ -1,3 +1,3 @@
|
|||
PatchVersion=7.1.2.8
|
||||
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 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
|
||||
{
|
||||
"editorversion" "400"
|
||||
"editorbuild" "4956"
|
||||
"mapversion" "3768"
|
||||
"editorbuild" "4961"
|
||||
"mapversion" "3762"
|
||||
"formatversion" "100"
|
||||
"prefab" "0"
|
||||
}
|
||||
|
@ -80,7 +80,7 @@ viewsettings
|
|||
world
|
||||
{
|
||||
"id" "394754"
|
||||
"mapversion" "3768"
|
||||
"mapversion" "3762"
|
||||
"classname" "worldspawn"
|
||||
"detailmaterial" "detail/detailsprites"
|
||||
"detailvbsp" "detail.vbsp"
|
||||
|
@ -36201,6 +36201,35 @@ 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"
|
||||
"classname" "info_overlay"
|
||||
|
@ -36327,7 +36356,7 @@ entity
|
|||
"EndV" "0"
|
||||
"fademindist" "-1"
|
||||
"material" "overlays/dirt01a"
|
||||
"sides" "154891 154885"
|
||||
"sides" "153759"
|
||||
"StartU" "0"
|
||||
"StartV" "1"
|
||||
"uv0" "-30.5847 -60.853 0"
|
||||
|
@ -52505,6 +52534,101 @@ 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"
|
||||
"classname" "info_node"
|
||||
|
@ -52771,6 +52895,100 @@ 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"
|
||||
"classname" "prop_physics"
|
||||
|
@ -52830,6 +53048,10 @@ entity
|
|||
"shadowcastdist" "0"
|
||||
"skin" "0"
|
||||
"spawnflags" "32769"
|
||||
connections
|
||||
{
|
||||
"OnBreak" "CrateRandomTriggerEnable0-1"
|
||||
}
|
||||
"origin" "-6552 -7048 946"
|
||||
editor
|
||||
{
|
||||
|
@ -53238,6 +53460,7 @@ entity
|
|||
connections
|
||||
{
|
||||
"OnComputerHackCompleted" "Tech_reqDisableTechMarineReq0-1"
|
||||
"OnComputerDataDownloaded" "AfterHackSpawnTriggerEnable0-1"
|
||||
"OnComputerHackStarted" "breakdoor_spawnStartSpawning5-1"
|
||||
"OnComputerDataDownloaded" "CeilingBlackBoxOpen0-1"
|
||||
"OnComputerHackStarted" "dock_holdout_spawn_01StartSpawning5-1"
|
||||
|
@ -54859,6 +55082,7 @@ entity
|
|||
"StartDisabled" "0"
|
||||
connections
|
||||
{
|
||||
"OnTrigger" "tankroom_end_04StartSpawning0-1"
|
||||
"OnTrigger" "tankroom_end_01_spawnStartSpawning0-1"
|
||||
}
|
||||
solid
|
||||
|
@ -74529,6 +74753,7 @@ entity
|
|||
"StartDisabled" "0"
|
||||
connections
|
||||
{
|
||||
"OnTrigger" "AmbientMusicPlaySound0-1"
|
||||
"OnTrigger" "tankroom_end_02_spawnStartSpawning0-1"
|
||||
}
|
||||
solid
|
||||
|
@ -74734,6 +74959,101 @@ 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"
|
||||
"classname" "info_node"
|
||||
|
@ -74750,6 +75070,101 @@ 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"
|
||||
"classname" "asw_drone"
|
||||
|
@ -77952,6 +78367,7 @@ entity
|
|||
"OnCase01" "supply_spawn_01StartSpawning0-1"
|
||||
"OnCase02" "supply_spawn_02StartSpawning0-1"
|
||||
"OnCase03" "supply_spawn_03StartSpawning0-1"
|
||||
"OnCase04" "0-1"
|
||||
}
|
||||
"origin" "-7832 -792 840.967"
|
||||
editor
|
||||
|
@ -78054,6 +78470,8 @@ entity
|
|||
{
|
||||
"id" "540455"
|
||||
"classname" "func_precipitation"
|
||||
"maxSpeed" "35"
|
||||
"minSpeed" "25"
|
||||
"preciptype" "7"
|
||||
"renderamt" "75"
|
||||
"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
|
||||
{
|
||||
entity
|
||||
|
@ -82494,6 +82969,7 @@ entity
|
|||
{
|
||||
"id" "2638426"
|
||||
"classname" "trigger_asw_button_area"
|
||||
"completemessage" "Access Granted"
|
||||
"hacklevel" "6"
|
||||
"locked" "1"
|
||||
"numwires" "2"
|
||||
|
@ -82510,6 +82986,7 @@ entity
|
|||
connections
|
||||
{
|
||||
"OnButtonActivated" "AutoInstance1-LandingBayDoor2EnableAutoOpen0-1"
|
||||
"OnButtonHackCompleted" "Start_button_leftUnlock01"
|
||||
"OnButtonHackCompleted" "AutoInstance1-doorpanel2Skin20.1-1"
|
||||
"OnButtonHackCompleted" "AutoInstance1-Start_button_rightUnlock0-1"
|
||||
"OnButtonHackCompleted" "AutoInstance1-doorpanel1Skin20.1-1"
|
||||
|
@ -82684,6 +83161,7 @@ entity
|
|||
"StartDisabled" "0"
|
||||
connections
|
||||
{
|
||||
"OnTrigger" "hallway_spawn_01StartSpawning0-1"
|
||||
"OnTrigger" "commander_choreo_m1_ob3Start2-1"
|
||||
}
|
||||
solid
|
||||
|
@ -82774,6 +83252,7 @@ entity
|
|||
{
|
||||
"id" "2638314"
|
||||
"classname" "trigger_asw_button_area"
|
||||
"completemessage" "Access Granted"
|
||||
"hacklevel" "6"
|
||||
"locked" "1"
|
||||
"numwires" "2"
|
||||
|
@ -82790,6 +83269,7 @@ entity
|
|||
connections
|
||||
{
|
||||
"OnButtonActivated" "AutoInstance1-LandingBayDoor1EnableAutoOpen0-1"
|
||||
"OnButtonHackCompleted" "Start_button_leftUnlock01"
|
||||
"OnButtonHackCompleted" "AutoInstance1-doorpanel1Skin20.1-1"
|
||||
"OnButtonHackCompleted" "AutoInstance1-Start_button_right1Unlock0-1"
|
||||
"OnButtonHackCompleted" "AutoInstance1-Start_button_right1Disable0.1-1"
|
||||
|
@ -108754,6 +109234,7 @@ entity
|
|||
"screenspacefade" "0"
|
||||
"skin" "0"
|
||||
"solid" "6"
|
||||
"spawnflags" "264"
|
||||
"origin" "-6988.75 -5985.92 1055.72"
|
||||
editor
|
||||
{
|
||||
|
@ -109804,7 +110285,7 @@ entity
|
|||
"EndV" "0"
|
||||
"fademindist" "-1"
|
||||
"material" "overlays/stain_01"
|
||||
"sides" "80300 80271"
|
||||
"sides" "69581"
|
||||
"StartU" "0"
|
||||
"StartV" "1"
|
||||
"uv0" "-188 -28.0922 0"
|
||||
|
@ -110111,6 +110592,35 @@ 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"
|
||||
"classname" "info_overlay"
|
||||
|
@ -110152,7 +110662,7 @@ entity
|
|||
"EndV" "0"
|
||||
"fademindist" "-1"
|
||||
"material" "overlays/stains_05c"
|
||||
"sides" "80703"
|
||||
"sides" "72447 72502"
|
||||
"StartU" "0"
|
||||
"StartV" "1"
|
||||
"uv0" "-126.321 -126.006 0"
|
||||
|
@ -146275,7 +146785,7 @@ entity
|
|||
"EndV" "0"
|
||||
"fademindist" "-1"
|
||||
"material" "overlays/stains_05c"
|
||||
"sides" "127530 127554 127542"
|
||||
"sides" ""
|
||||
"StartU" "0"
|
||||
"StartV" "1"
|
||||
"uv0" "-102.126 -104.984 0"
|
||||
|
@ -148941,6 +149451,8 @@ entity
|
|||
{
|
||||
"id" "2278966"
|
||||
"classname" "func_precipitation"
|
||||
"maxSpeed" "35"
|
||||
"minSpeed" "25"
|
||||
"preciptype" "7"
|
||||
"renderamt" "75"
|
||||
"rendercolor" "100 100 100"
|
||||
|
@ -159395,6 +159907,35 @@ 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"
|
||||
"classname" "info_overlay"
|
||||
|
@ -161752,6 +162293,7 @@ entity
|
|||
"lightworld" "1"
|
||||
"nearz" "4.0"
|
||||
"shadowquality" "1"
|
||||
"simpleprojection" "0"
|
||||
"spawnflags" "1"
|
||||
"texturename" "effects/flashlight001"
|
||||
"origin" "-7400 -928 1027.73"
|
||||
|
@ -166258,6 +166800,8 @@ entity
|
|||
{
|
||||
"id" "3085728"
|
||||
"classname" "func_precipitation"
|
||||
"maxSpeed" "35"
|
||||
"minSpeed" "25"
|
||||
"preciptype" "7"
|
||||
"renderamt" "10"
|
||||
"rendercolor" "100 100 100"
|
||||
|
@ -167150,6 +167694,7 @@ entity
|
|||
"lightworld" "1"
|
||||
"nearz" "4.0"
|
||||
"shadowquality" "1"
|
||||
"simpleprojection" "0"
|
||||
"spawnflags" "1"
|
||||
"texturename" "effects/flashlight001"
|
||||
"origin" "-6318 1072 982.022"
|
||||
|
@ -170219,6 +170764,10 @@ entity
|
|||
"shadowcastdist" "0"
|
||||
"skin" "0"
|
||||
"spawnflags" "32769"
|
||||
connections
|
||||
{
|
||||
"OnBreak" "CrateRandomTriggerEnable0-1"
|
||||
}
|
||||
"origin" "-6552 -6960 946"
|
||||
editor
|
||||
{
|
||||
|
@ -171091,6 +171640,101 @@ 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"
|
||||
"classname" "asw_holo_sentry"
|
||||
|
@ -171100,6 +171744,9 @@ entity
|
|||
connections
|
||||
{
|
||||
"OnSentryPlaced" "sentry_placementDisable0-1"
|
||||
"OnSentryPlaced" "relay_turret_placedTrigger0-1"
|
||||
"OnSentryPlaced" "relay_no_turret_messageEnable0-1"
|
||||
"OnSentryPlaced" "relay_turret_messageDisable0-1"
|
||||
}
|
||||
"origin" "-6592 768 880"
|
||||
editor
|
||||
|
@ -174019,6 +174666,7 @@ entity
|
|||
"lightworld" "1"
|
||||
"nearz" "4.0"
|
||||
"shadowquality" "1"
|
||||
"simpleprojection" "0"
|
||||
"spawnflags" "1"
|
||||
"texturename" "effects/flashlight001"
|
||||
"origin" "-4608.89 628.121 1008.58"
|
||||
|
@ -176491,6 +177139,28 @@ 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"
|
||||
"classname" "path_track"
|
||||
|
@ -176501,7 +177171,7 @@ entity
|
|||
"targetname" "path_2"
|
||||
connections
|
||||
{
|
||||
"OnPass" "train_shipSetSpeed800-1"
|
||||
"OnPass" "combinegunshipSetMaxSpeed800-1"
|
||||
}
|
||||
"origin" "-4224 -9104 1600"
|
||||
editor
|
||||
|
@ -179172,31 +179842,13 @@ entity
|
|||
"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
|
||||
{
|
||||
"activecamera" "0"
|
||||
camera
|
||||
{
|
||||
"position" "[-4575.48 -9135.1 972.828]"
|
||||
"look" "[-4608.69 -9001.92 742.564]"
|
||||
"position" "[-7199.93 -2176.95 1467.34]"
|
||||
"look" "[-7349.58 -2145.12 1247.21]"
|
||||
}
|
||||
}
|
||||
cordons
|
||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -2,7 +2,7 @@ versioninfo
|
|||
{
|
||||
"editorversion" "400"
|
||||
"editorbuild" "4956"
|
||||
"mapversion" "3283"
|
||||
"mapversion" "3284"
|
||||
"formatversion" "100"
|
||||
"prefab" "0"
|
||||
}
|
||||
|
@ -80,15 +80,15 @@ viewsettings
|
|||
world
|
||||
{
|
||||
"id" "182379"
|
||||
"mapversion" "3283"
|
||||
"mapversion" "3284"
|
||||
"classname" "worldspawn"
|
||||
"detailmaterial" "detail/detailsprites"
|
||||
"detailvbsp" "detail.vbsp"
|
||||
"maxpropscreenwidth" "-1"
|
||||
"minpropscreenwidth" "0"
|
||||
"skyname" "sky_day02_07_hdr"
|
||||
"speedruntime" "185"
|
||||
"speedruntimesp" "185"
|
||||
"speedruntime" "150"
|
||||
"speedruntimesp" "150"
|
||||
solid
|
||||
{
|
||||
"id" "376"
|
||||
|
@ -86307,8 +86307,8 @@ entity
|
|||
{
|
||||
"id" "530362"
|
||||
"classname" "asw_gamerules"
|
||||
"speedruntime" "185"
|
||||
"speedruntimesp" "185"
|
||||
"speedruntime" "150"
|
||||
"speedruntimesp" "150"
|
||||
"origin" "0 0 0"
|
||||
editor
|
||||
{
|
||||
|
@ -117853,32 +117853,6 @@ 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"
|
||||
"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
|
||||
{
|
||||
"editorversion" "400"
|
||||
"editorbuild" "4956"
|
||||
"mapversion" "1254"
|
||||
"editorbuild" "4961"
|
||||
"mapversion" "1255"
|
||||
"formatversion" "100"
|
||||
"prefab" "0"
|
||||
}
|
||||
|
@ -32,7 +32,7 @@ viewsettings
|
|||
world
|
||||
{
|
||||
"id" "8147"
|
||||
"mapversion" "1254"
|
||||
"mapversion" "1255"
|
||||
"classname" "worldspawn"
|
||||
"detailmaterial" "detail/detailsprites"
|
||||
"detailvbsp" "detail.vbsp"
|
||||
|
@ -51295,6 +51295,82 @@ world
|
|||
"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
|
||||
{
|
||||
"id" "82010"
|
||||
|
@ -271916,8 +271992,8 @@ cameras
|
|||
"activecamera" "0"
|
||||
camera
|
||||
{
|
||||
"position" "[86.99 -2826.5 -468.697]"
|
||||
"look" "[86.99 3379.34 -468.697]"
|
||||
"position" "[340.584 -3163.69 -372.589]"
|
||||
"look" "[-1762.81 2259.29 -2535.76]"
|
||||
}
|
||||
}
|
||||
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
|
||||
{
|
||||
"editorversion" "400"
|
||||
"editorbuild" "4955"
|
||||
"mapversion" "2088"
|
||||
"editorbuild" "4957"
|
||||
"mapversion" "2089"
|
||||
"formatversion" "100"
|
||||
"prefab" "0"
|
||||
}
|
||||
|
@ -50,7 +50,7 @@ viewsettings
|
|||
world
|
||||
{
|
||||
"id" "394754"
|
||||
"mapversion" "2088"
|
||||
"mapversion" "2089"
|
||||
"classname" "worldspawn"
|
||||
"detailmaterial" "detail/detailsprites"
|
||||
"detailvbsp" "detail.vbsp"
|
||||
|
@ -10896,8 +10896,8 @@ entity
|
|||
{
|
||||
"id" "1841164"
|
||||
"classname" "asw_debrief_info"
|
||||
"DebriefText1" "#asw_landingbay_db1"
|
||||
"DebriefText2" "#asw_landingbay_db2"
|
||||
"DebriefText1" "#asw_cargo_db1"
|
||||
"DebriefText2" "#asw_cargo_db2"
|
||||
"origin" "-1887 7020 1042"
|
||||
editor
|
||||
{
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
versioninfo
|
||||
{
|
||||
"editorversion" "400"
|
||||
"editorbuild" "4956"
|
||||
"mapversion" "3601"
|
||||
"editorbuild" "4961"
|
||||
"mapversion" "3602"
|
||||
"formatversion" "100"
|
||||
"prefab" "0"
|
||||
}
|
||||
|
@ -50,7 +50,7 @@ viewsettings
|
|||
world
|
||||
{
|
||||
"id" "394754"
|
||||
"mapversion" "3601"
|
||||
"mapversion" "3602"
|
||||
"classname" "worldspawn"
|
||||
"detailmaterial" "detail/detailsprites"
|
||||
"detailvbsp" "detail.vbsp"
|
||||
|
@ -83794,6 +83794,7 @@ entity
|
|||
connections
|
||||
{
|
||||
"OnTrigger" "ins_ranger2_spawnStartSpawning0-1"
|
||||
"OnTrigger" "ramp_room_spawn_01StartSpawning1-1"
|
||||
}
|
||||
solid
|
||||
{
|
||||
|
@ -85364,8 +85365,8 @@ cameras
|
|||
"activecamera" "0"
|
||||
camera
|
||||
{
|
||||
"position" "[-5815.91 794.565 1596.64]"
|
||||
"look" "[-2039.13 -3284.06 -1358.97]"
|
||||
"position" "[-5439.43 4433.65 1516.29]"
|
||||
"look" "[-6158.24 5678.66 -4613]"
|
||||
}
|
||||
}
|
||||
cordons
|
||||
|
|
|
@ -708,6 +708,9 @@ public:
|
|||
// returns true if we are of type C_ClientRagdoll
|
||||
virtual bool IsClientRagdoll() const { return true; }
|
||||
|
||||
protected:
|
||||
bool m_bReleaseRagdoll;
|
||||
|
||||
private:
|
||||
int m_iCurrentFriction;
|
||||
int m_iMinFriction;
|
||||
|
@ -716,7 +719,6 @@ private:
|
|||
float m_flFrictionTime;
|
||||
|
||||
int m_iFrictionAnimState;
|
||||
bool m_bReleaseRagdoll;
|
||||
|
||||
bool m_bFadingOut;
|
||||
|
||||
|
|
|
@ -585,6 +585,11 @@ static int SoundscapeCompletion( const char *partial, char commands[ COMMAND_COM
|
|||
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 )
|
||||
{
|
||||
FOR_EACH_VALID_SPLITSCREEN_PLAYER( hh )
|
||||
|
|
|
@ -945,9 +945,14 @@ static ConCommand startcamin( "+camin", CAM_InDown );
|
|||
static ConCommand endcamin( "-camin", CAM_InUp );
|
||||
static ConCommand startcamout( "+camout", CAM_OutDown );
|
||||
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_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." );
|
||||
#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 camortho( "camortho", Cmd_CAM_ToOrthographic, "Switch to orthographic camera.", FCVAR_CHEAT );
|
||||
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() );
|
||||
}
|
||||
|
||||
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 )
|
||||
{
|
||||
if ( nLobbySlot < 0 || nLobbySlot >= NUM_BRIEFING_LOBBY_SLOTS || !IsLobbySlotOccupied( nLobbySlot ) )
|
||||
|
|
|
@ -32,6 +32,7 @@ public:
|
|||
virtual void StartMission();
|
||||
virtual bool IsLobbySlotOccupied( int nLobbySlot );
|
||||
virtual bool IsLobbySlotLocal( int nLobbySlot );
|
||||
virtual bool IsLobbySlotBot( int nLobbySlot );
|
||||
virtual wchar_t* GetMarineOrPlayerName( int nLobbySlot );
|
||||
virtual wchar_t* GetMarineName( int nLobbySlot ); // always returns the marine's profile name
|
||||
virtual const char* GetPlayerNameForMarineProfile( int nProfileIndex );
|
||||
|
|
|
@ -21,7 +21,7 @@ CASW_Client_Entities::CASW_Client_Entities()
|
|||
|
||||
void CASW_Client_Entities::LevelInitPostEntity()
|
||||
{
|
||||
C_ASW_Camera_Volume::RecreateAll();
|
||||
//C_ASW_Camera_Volume::RecreateAll();
|
||||
C_ASW_Snow_Volume::RecreateAll();
|
||||
//C_Sprite::RecreateAll();
|
||||
C_ASW_Scanner_Noise::RecreateAll();
|
||||
|
@ -29,7 +29,7 @@ void CASW_Client_Entities::LevelInitPostEntity()
|
|||
|
||||
void CASW_Client_Entities::LevelShutdownPreEntity()
|
||||
{
|
||||
C_ASW_Camera_Volume::DestroyAll();
|
||||
//C_ASW_Camera_Volume::DestroyAll();
|
||||
C_ASW_Snow_Volume::DestroyAll();
|
||||
//C_Sprite::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)
|
||||
{
|
||||
VPROF_BUDGET( "CASWInput::TurnTowardMouse", VPROF_BUDGETGROUP_ASW_CLIENT );
|
||||
|
||||
if ( !engine->IsActiveApp() )
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
float mx, my;
|
||||
|
||||
C_ASW_Player *pPlayer = C_ASW_Player::GetLocalASWPlayer();
|
||||
|
@ -945,6 +951,11 @@ void CASWInput::TurnTowardMouse(QAngle& viewangles, CUserCmd *cmd)
|
|||
int iScreenWidth, iScreenHeight;
|
||||
engine->GetScreenSize( iScreenWidth, iScreenHeight );
|
||||
|
||||
if ( iScreenWidth <= 0 || iScreenHeight <= 0 )
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
int 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)
|
||||
|
|
|
@ -37,6 +37,8 @@ C_ASW_Ammo_Drop::C_ASW_Ammo_Drop() :
|
|||
m_iAmmoUnitsRemaining = DEFAULT_AMMO_DROP_UNITS;
|
||||
|
||||
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 ( pUser->CanPickupPrimaryAmmo() )
|
||||
if ( !m_bEnoughAmmo )
|
||||
{
|
||||
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 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;
|
||||
}
|
||||
|
|
|
@ -51,6 +51,7 @@ public:
|
|||
|
||||
private:
|
||||
C_ASW_Ammo_Drop( const C_ASW_Ammo_Drop & ); // not defined, not accessible
|
||||
bool m_bEnoughAmmo;
|
||||
};
|
||||
|
||||
extern CUtlVector<C_ASW_Ammo_Drop*> g_AmmoDrops;
|
||||
|
|
|
@ -16,7 +16,7 @@ BEGIN_DATADESC( C_ASW_ClientRagdoll )
|
|||
DEFINE_FIELD( m_iSourceEntityIndex, FIELD_INTEGER ),
|
||||
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" );
|
||||
extern ConVar asw_breakable_aliens;
|
||||
extern ConVar asw_alien_debug_death_style;
|
||||
|
@ -174,6 +174,13 @@ void C_ASW_ClientRagdoll::BreakRagdoll()
|
|||
//ConVar test_hurl( "test_hurl", "0.25" );
|
||||
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();
|
||||
|
||||
// OLD STUFF
|
||||
|
|
|
@ -750,17 +750,9 @@ void reset_steam_stats_f()
|
|||
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()
|
||||
{
|
||||
|
|
|
@ -28,7 +28,35 @@ bool C_ASW_Door_Area::GetUseAction(ASWUseAction &action, C_ASW_Marine *pUser)
|
|||
{
|
||||
C_ASW_Door* pDoor = GetASWDoor();
|
||||
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
|
||||
// add sealed icon with bar showing seal percent
|
||||
|
@ -46,23 +74,13 @@ bool C_ASW_Door_Area::GetUseAction(ASWUseAction &action, C_ASW_Marine *pUser)
|
|||
action.UseIconRed = 255;
|
||||
action.UseIconGreen = 255;
|
||||
action.UseIconBlue = 255;
|
||||
action.bShowUseKey = false;
|
||||
action.bShowUseKey = bHasWelder;
|
||||
action.iInventorySlot = -1;
|
||||
|
||||
return true;
|
||||
}
|
||||
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 ( pDoor->GetSealAmount() >= 1.0f )
|
||||
|
@ -80,7 +98,7 @@ bool C_ASW_Door_Area::GetUseAction(ASWUseAction &action, C_ASW_Marine *pUser)
|
|||
action.UseIconRed = 255;
|
||||
action.UseIconGreen = 255;
|
||||
action.UseIconBlue = 255;
|
||||
action.bShowUseKey = false;
|
||||
action.bShowUseKey = true;
|
||||
action.iInventorySlot = -1;
|
||||
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_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_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" );
|
||||
|
|
|
@ -45,7 +45,6 @@
|
|||
// memdbgon must be the last include file in a .cpp file!!!
|
||||
#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_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");
|
||||
|
@ -105,44 +104,43 @@ PRECACHE( MATERIAL, "vgui/swarm/hacking/rightconnect" )
|
|||
PRECACHE( MATERIAL, "vgui/swarm/hacking/swarmdoorhackopen" )
|
||||
PRECACHE( MATERIAL, "vgui/swarm/hacking/fastmarker" )
|
||||
PRECACHE( MATERIAL, "vgui/swarm/hud/tickboxticked" )
|
||||
PRECACHE( MATERIAL, "vgui/swarm/hud/clipsicon" )
|
||||
PRECACHE( MATERIAL, "vgui/swarm/hud/horizdoorhealthbar" )
|
||||
PRECACHE( MATERIAL, "vgui/swarm/hud/horizdoorhealthbarr" )
|
||||
PRECACHE( MATERIAL, "vgui/swarm/hud/horizdoorhealthbari" )
|
||||
PRECACHE( MATERIAL, "vgui/swarm/hud/doorhealth" )
|
||||
PRECACHE( MATERIAL, "vgui/swarm/hud/doorweld" )
|
||||
|
||||
PRECACHE( MATERIAL, "vgui/swarm/briefing/statshots" )
|
||||
PRECACHE( MATERIAL, "vgui/swarm/briefing/statdamage" )
|
||||
//PRECACHE( MATERIAL, "vgui/swarm/briefing/statshots" )
|
||||
//PRECACHE( MATERIAL, "vgui/swarm/briefing/statdamage" )
|
||||
PRECACHE( MATERIAL, "vgui/swarm/briefing/skillparticle" )
|
||||
PRECACHE( MATERIAL, "vgui/icon_button_arrow_right" )
|
||||
|
||||
PRECACHE( MATERIAL, "vgui/swarm/briefing/statkilled" )
|
||||
PRECACHE( MATERIAL, "vgui/swarm/briefing/stattime" )
|
||||
PRECACHE( MATERIAL, "vgui/swarm/briefing/stataccuracy" )
|
||||
PRECACHE( MATERIAL, "vgui/swarm/briefing/statfriendly" )
|
||||
PRECACHE( MATERIAL, "vgui/swarm/briefing/statshots2" )
|
||||
PRECACHE( MATERIAL, "vgui/swarm/briefing/statskillpoints" )
|
||||
PRECACHE( MATERIAL, "vgui/swarm/briefing/statburned" )
|
||||
PRECACHE( MATERIAL, "vgui/swarm/briefing/statheal" )
|
||||
PRECACHE( MATERIAL, "vgui/swarm/briefing/stathack" )
|
||||
//PRECACHE( MATERIAL, "vgui/swarm/briefing/statkilled" )
|
||||
//PRECACHE( MATERIAL, "vgui/swarm/briefing/stattime" )
|
||||
//PRECACHE( MATERIAL, "vgui/swarm/briefing/stataccuracy" )
|
||||
//PRECACHE( MATERIAL, "vgui/swarm/briefing/statfriendly" )
|
||||
//PRECACHE( MATERIAL, "vgui/swarm/briefing/statshots2" )
|
||||
//PRECACHE( MATERIAL, "vgui/swarm/briefing/statskillpoints" )
|
||||
//PRECACHE( MATERIAL, "vgui/swarm/briefing/statburned" )
|
||||
//PRECACHE( MATERIAL, "vgui/swarm/briefing/statheal" )
|
||||
//PRECACHE( MATERIAL, "vgui/swarm/briefing/stathack" )
|
||||
PRECACHE( MATERIAL, "vgui/swarm/briefing/topleftbracket" )
|
||||
PRECACHE( MATERIAL, "vgui/swarm/briefing/toprightbracket" )
|
||||
PRECACHE( MATERIAL, "vgui/swarm/briefing/bottomleftbracket" )
|
||||
PRECACHE( MATERIAL, "vgui/swarm/briefing/bottomrightbracket" )
|
||||
PRECACHE( MATERIAL, "vgui/swarm/briefing/shadedbutton" )
|
||||
PRECACHE( MATERIAL, "vgui/swarm/briefing/shadedbutton_over" )
|
||||
PRECACHE( MATERIAL, "vgui/swarm/ObjectiveIcons/OIconBloodhound" )
|
||||
PRECACHE( MATERIAL, "vgui/swarm/ObjectiveIcons/OIconCargoForklift" )
|
||||
PRECACHE( MATERIAL, "vgui/swarm/ObjectiveIcons/OIconDroneSide" )
|
||||
PRECACHE( MATERIAL, "vgui/swarm/ObjectiveIcons/OIconDroneTop" )
|
||||
PRECACHE( MATERIAL, "vgui/swarm/ObjectiveIcons/OIconEgg" )
|
||||
PRECACHE( MATERIAL, "vgui/swarm/ObjectiveIcons/OIconParasiteSide" )
|
||||
PRECACHE( MATERIAL, "vgui/swarm/ObjectiveIcons/OIconParasiteTop" )
|
||||
PRECACHE( MATERIAL, "vgui/swarm/ObjectiveIcons/OIconPlanet" )
|
||||
PRECACHE( MATERIAL, "vgui/swarm/ObjectiveIcons/OIconSolarSystem" )
|
||||
PRECACHE( MATERIAL, "vgui/swarm/ObjectiveIcons/OIconStarchart" )
|
||||
PRECACHE( MATERIAL, "vgui/swarm/ObjectiveIcons/OIconTerminal" )
|
||||
//PRECACHE( MATERIAL, "vgui/swarm/ObjectiveIcons/OIconBloodhound" )
|
||||
//PRECACHE( MATERIAL, "vgui/swarm/ObjectiveIcons/OIconCargoForklift" )
|
||||
//PRECACHE( MATERIAL, "vgui/swarm/ObjectiveIcons/OIconDroneSide" )
|
||||
//PRECACHE( MATERIAL, "vgui/swarm/ObjectiveIcons/OIconDroneTop" )
|
||||
//PRECACHE( MATERIAL, "vgui/swarm/ObjectiveIcons/OIconEgg" )
|
||||
//PRECACHE( MATERIAL, "vgui/swarm/ObjectiveIcons/OIconParasiteSide" )
|
||||
//PRECACHE( MATERIAL, "vgui/swarm/ObjectiveIcons/OIconParasiteTop" )
|
||||
//PRECACHE( MATERIAL, "vgui/swarm/ObjectiveIcons/OIconPlanet" )
|
||||
//PRECACHE( MATERIAL, "vgui/swarm/ObjectiveIcons/OIconSolarSystem" )
|
||||
//PRECACHE( MATERIAL, "vgui/swarm/ObjectiveIcons/OIconStarchart" )
|
||||
//PRECACHE( MATERIAL, "vgui/swarm/ObjectiveIcons/OIconTerminal" )
|
||||
PRECACHE( MATERIAL, "vgui/swarm/SkillButtons/Accuracy" )
|
||||
PRECACHE( MATERIAL, "vgui/swarm/SkillButtons/Agility" )
|
||||
PRECACHE( MATERIAL, "vgui/swarm/SkillButtons/Autogun" )
|
||||
|
|
|
@ -95,6 +95,9 @@
|
|||
#include "asw_weapon_sniper_rifle.h"
|
||||
#include "asw_melee_system.h"
|
||||
#include "c_asw_jukebox.h"
|
||||
#include "missionchooser/iasw_mission_chooser.h"
|
||||
#include "missionchooser/iasw_random_missions.h"
|
||||
|
||||
#if defined( CASW_Player )
|
||||
#undef CASW_Player
|
||||
#endif
|
||||
|
@ -340,6 +343,8 @@ C_ASW_Player::C_ASW_Player() :
|
|||
m_flPendingSteamStatsStart = 0.0f;
|
||||
m_hUseKeyDownEnt = NULL;
|
||||
m_flUseKeyDownTime = 0.0f;
|
||||
m_roomDetailsCheckTimer.Invalidate();
|
||||
m_szSoundscape[0] = 0;
|
||||
for ( int i = 0; i < ASW_NUM_XP_TYPES; i++ )
|
||||
{
|
||||
m_iEarnedXP[ i ] = 0;
|
||||
|
@ -1236,6 +1241,87 @@ void C_ASW_Player::ClientThink()
|
|||
C_ASW_Snow_Volume::UpdateSnow(this);
|
||||
|
||||
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()
|
||||
|
|
|
@ -201,6 +201,8 @@ public:
|
|||
void StopStimSound();
|
||||
|
||||
virtual CBaseEntity *GetSoundscapeListener();
|
||||
|
||||
void UpdateRoomDetails();
|
||||
|
||||
// hacking
|
||||
virtual void SelectHackOption(int iHackOption);
|
||||
|
@ -256,6 +258,10 @@ private:
|
|||
// Marine avoidance.
|
||||
void AvoidMarines( CUserCmd *pCmd );
|
||||
|
||||
// setting soundscape per room in randomly generated maps
|
||||
char m_szSoundscape[64];
|
||||
CountdownTimer m_roomDetailsCheckTimer;
|
||||
|
||||
CHandle<C_EnvAmbientLight> m_hAmbientLight;
|
||||
|
||||
public:
|
||||
|
|
|
@ -69,7 +69,6 @@ extern ConVar mat_object_motion_blur_enable;
|
|||
|
||||
// asw
|
||||
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_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." );
|
||||
|
@ -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 )
|
||||
{
|
||||
// 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
|
||||
m_CCFailedHandle = g_pColorCorrectionMgr->AddColorCorrection( FAILED_CC_LOOKUP_FILENAME );
|
||||
if ( m_CCFailedHandle != INVALID_CLIENT_CCHANDLE )
|
||||
|
@ -778,6 +820,27 @@ void ClientModeASW::LevelInit( const char *newmap )
|
|||
{
|
||||
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 )
|
||||
|
@ -988,6 +1051,15 @@ int ClientModeASW::KeyInput( int down, ButtonCode_t keynum, const char *pszCurre
|
|||
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);
|
||||
|
|
|
@ -79,6 +79,8 @@ public:
|
|||
|
||||
bool m_bTechFailure;
|
||||
|
||||
bool IsOfficialMap() { return m_bOfficialMap; }
|
||||
|
||||
private:
|
||||
IGameUI *m_pGameUI;
|
||||
|
||||
|
@ -98,6 +100,8 @@ private:
|
|||
|
||||
ClientCCHandle_t m_CCInfestedHandle;
|
||||
float m_fInfestedCCWeight;
|
||||
|
||||
bool m_bOfficialMap;
|
||||
};
|
||||
|
||||
extern IClientMode *GetClientModeNormal();
|
||||
|
|
|
@ -44,7 +44,7 @@ CUtlVector< IBaseModFrameListener * > CBaseModFrame::m_FrameListeners;
|
|||
|
||||
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,
|
||||
|
|
|
@ -408,14 +408,7 @@ void BaseModHybridButton::PaintButtonEx()
|
|||
break;
|
||||
case Focus:
|
||||
// active item
|
||||
if ( m_nStyle == BUTTON_RED || m_nStyle == BUTTON_REDMAIN )
|
||||
{
|
||||
col.SetColor( 255, 255, 255, 255 );
|
||||
}
|
||||
else
|
||||
{
|
||||
col.SetColor( 255, 255, 255, 255 );
|
||||
}
|
||||
col.SetColor( 255, 255, 255, 255 );
|
||||
bDrawGlow = true;
|
||||
bAnimateGlow = true;
|
||||
if ( m_nStyle == BUTTON_SIMPLE ||
|
||||
|
@ -789,6 +782,11 @@ void BaseModHybridButton::ApplySettings( KeyValues * inResourceData )
|
|||
m_hTextFont = scheme->GetFont( "DefaultMedium", 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
|
||||
{
|
||||
m_nStyle = BUTTON_SIMPLE;
|
||||
|
|
|
@ -47,6 +47,7 @@ public:
|
|||
BUTTON_MAINMENUSMALL, // smaller item strictly on the main or ingame menu
|
||||
BUTTON_ALIENSWARMMENUBUTTON,
|
||||
BUTTON_ALIENSWARMMENUBUTTONSMALL,
|
||||
BUTTON_ALIENSWARMDEFAULT,
|
||||
};
|
||||
|
||||
enum EnableCondition
|
||||
|
|
|
@ -10,7 +10,9 @@ struct ASWUseAction
|
|||
ASWUseAction()
|
||||
{
|
||||
iUseIconTexture = -1;
|
||||
szCommand[0] = 0;
|
||||
wszText[0] = 0;
|
||||
wszHoldButtonText[0] = 0;
|
||||
UseTarget = NULL;
|
||||
fProgress = -1;
|
||||
UseIconRed = 255;
|
||||
|
@ -43,6 +45,7 @@ struct ASWUseAction
|
|||
TextBlue == other.TextBlue &&
|
||||
bTextGlow == other.bTextGlow &&
|
||||
iInventorySlot == other.iInventorySlot &&
|
||||
!V_strcmp( szCommand, other.szCommand ) &&
|
||||
!wcscoll( wszText, other.wszText ) &&
|
||||
!wcscoll( wszHoldButtonText, other.wszHoldButtonText ) &&
|
||||
bWideIcon == other.bWideIcon
|
||||
|
@ -65,6 +68,7 @@ struct ASWUseAction
|
|||
TextBlue == other.TextBlue &&
|
||||
bTextGlow == other.bTextGlow &&
|
||||
iInventorySlot == other.iInventorySlot &&
|
||||
!V_strcmp( szCommand, other.szCommand ) &&
|
||||
!wcscoll( wszText, other.wszText ) &&
|
||||
!wcscoll( wszHoldButtonText, other.wszHoldButtonText ) &&
|
||||
bWideIcon == other.bWideIcon
|
||||
|
@ -72,6 +76,7 @@ struct ASWUseAction
|
|||
}
|
||||
|
||||
int iUseIconTexture;
|
||||
char szCommand[64];
|
||||
wchar_t wszText[MAX_USE_ACTION_TEXT];
|
||||
wchar_t wszHoldButtonText[MAX_USE_ACTION_TEXT];
|
||||
EHANDLE UseTarget;
|
||||
|
|
|
@ -21,6 +21,7 @@ public:
|
|||
virtual void StartMission() = 0;
|
||||
virtual bool IsLobbySlotOccupied( 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* GetMarineName( int nLobbySlot ) = 0; // always returns the marine's profile name
|
||||
virtual const char* GetPlayerNameForMarineProfile( int nProfileIndex ) = 0;
|
||||
|
|
|
@ -182,4 +182,4 @@ void CC_ASW_TileGen( const CCommand &args )
|
|||
pFrame->MoveToCenterOfScreen();
|
||||
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_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_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" );
|
||||
|
||||
#define ASW_MAX_MARINE_NAMES 8
|
||||
|
@ -833,7 +833,7 @@ void CASWHud3DMarineNames::PaintMarineLabel( int iMyMarineNum, C_ASW_Marine * RE
|
|||
return;
|
||||
|
||||
// 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 );
|
||||
nCursorY += nHealthBarHeight + nLineSpacing;
|
||||
|
|
|
@ -133,7 +133,7 @@ void CASWHudCrosshair::Paint( void )
|
|||
if ( !crosshair.GetInt() )
|
||||
return;
|
||||
|
||||
if ( engine->IsDrawingLoadingImage() || engine->IsPaused() )
|
||||
if ( engine->IsDrawingLoadingImage() || engine->IsPaused() || !engine->IsActiveApp() )
|
||||
return;
|
||||
|
||||
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;
|
||||
ConVar asw_turret_cursor_blend("asw_turret_cursor_blend", "5.0f");
|
||||
|
||||
void CASWHudCrosshair::PaintTurretTextures()
|
||||
{
|
||||
// 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 )
|
||||
{
|
||||
if ( !engine->IsActiveApp() )
|
||||
{
|
||||
m_pAmmoProgress->SetVisible( false );
|
||||
m_pFastReloadBar->SetVisible( false );
|
||||
return;
|
||||
}
|
||||
|
||||
C_ASW_Player* pPlayer = C_ASW_Player::GetLocalASWPlayer();
|
||||
if ( !pPlayer )
|
||||
return;
|
||||
|
|
|
@ -322,6 +322,7 @@ void CASW_HUD_Use_Icon::SetCurrentToQueuedAction()
|
|||
{
|
||||
// can make the queued our current and fade in
|
||||
m_CurrentAction = m_QueuedAction;
|
||||
FindUseKeyBind();
|
||||
|
||||
PositionIcon();
|
||||
|
||||
|
@ -441,6 +442,7 @@ void CASW_HUD_Use_Icon::SetUseAction(ASWUseAction &action)
|
|||
{
|
||||
//m_CurrentAction.fProgress = action.fProgress;
|
||||
m_CurrentAction = action;
|
||||
FindUseKeyBind();
|
||||
return;
|
||||
}
|
||||
|
||||
|
@ -465,12 +467,19 @@ void CASW_HUD_Use_Icon::FindUseKeyBind()
|
|||
{
|
||||
char szOldKey[12];
|
||||
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);
|
||||
if ( Q_stricmp( m_szUseKeyText, szOldKey) )
|
||||
{
|
||||
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_pAmmoIcon[i] = new vgui::ImagePanel( this, "AmmoIcon" );
|
||||
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;
|
||||
}
|
||||
// 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)
|
||||
{
|
||||
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)
|
||||
{
|
||||
// close it all down
|
||||
|
|
|
@ -35,7 +35,8 @@ BriefingImagePanel::BriefingImagePanel(Panel *parent, const char *name) : ImageP
|
|||
// else
|
||||
// SetImage("swarm/BriefingPlant");
|
||||
|
||||
SetImage( "lobby/swarm_background01" );
|
||||
// set to something small as this image is hidden
|
||||
SetImage( "swarm/missionpics/addonmissionpic" );
|
||||
|
||||
SetShouldScaleImage(true);
|
||||
SetPos(0,0);
|
||||
|
|
|
@ -72,13 +72,9 @@ CampaignPanel::CampaignPanel(Panel *parent, const char *name) : vgui::EditablePa
|
|||
m_pBracket = new ObjectiveMapMarkPanel(this, "CampaignBracket");
|
||||
m_pBracket->SetMouseInputEnabled(false);
|
||||
|
||||
int i = random->RandomInt(0, 1);
|
||||
switch (i)
|
||||
{
|
||||
case 0: m_pBackDrop->SetImage("swarm/BriefingPlant"); break;
|
||||
default:
|
||||
case 1: m_pBackDrop->SetImage("swarm/BriefingReactor"); break;
|
||||
}
|
||||
// now just setting to a small temp material because this isn't shown
|
||||
m_pBackDrop->SetImage("swarm/Briefing/ShadedButton");
|
||||
|
||||
m_pGalacticMap->SetImage("swarm/Campaign/Jacob_GalacticMap");
|
||||
m_pGalaxyLines->SetImage("swarm/Campaign/GalaxyLines");
|
||||
m_pSurfaceMap->SetImage("swarm/Campaign/JacobCampaignMap");
|
||||
|
|
|
@ -1,5 +1,7 @@
|
|||
#include "cbase.h"
|
||||
#include "CreditsPanel.h"
|
||||
#include "asw_gamerules.h"
|
||||
#include "asw_campaign_info.h"
|
||||
#include <vgui_controls/AnimationController.h>
|
||||
#include <vgui_controls/ImagePanel.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_iCurMessage = 0;
|
||||
m_Font = vgui::INVALID_FONT;
|
||||
m_bShowCreditsLogo = true;
|
||||
|
||||
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);
|
||||
}
|
||||
|
||||
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->LoadFromFile( filesystem, "scripts/asw_credits.txt", NULL );
|
||||
pCreditsText->LoadFromFile( filesystem, szCreditsPath, "GAME" );
|
||||
|
||||
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()
|
||||
|
@ -41,10 +67,10 @@ CreditsPanel::~CreditsPanel()
|
|||
void CreditsPanel::PerformLayout()
|
||||
{
|
||||
int w = GetParent()->GetWide();
|
||||
int h = GetParent()->GetTall() - 20;
|
||||
SetBounds(0, 20, w, h );
|
||||
float LogoWidth = w * 0.6f;
|
||||
m_pLogo->SetBounds( ( w - LogoWidth ) * 0.5f, 0, LogoWidth, LogoWidth * 0.5f);
|
||||
int h = GetParent()->GetTall() - (GetParent()->GetTall()*0.11f);
|
||||
SetBounds(0, h * 0.09f, w, h );
|
||||
float LogoWidth = w * 0.7f;
|
||||
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);
|
||||
}
|
||||
|
@ -54,7 +80,8 @@ void CreditsPanel::ApplySchemeSettings(vgui::IScheme *pScheme)
|
|||
BaseClass::ApplySchemeSettings(pScheme);
|
||||
|
||||
m_Font = pScheme->GetFont( "Default", IsProportional() );
|
||||
vgui::GetAnimationController()->RunAnimationCommand(m_pLogo, "Alpha", 255, 0, 2.0f, vgui::AnimationController::INTERPOLATOR_LINEAR);
|
||||
if ( m_bShowCreditsLogo )
|
||||
vgui::GetAnimationController()->RunAnimationCommand(m_pLogo, "Alpha", 255, 0, 2.0f, vgui::AnimationController::INTERPOLATOR_LINEAR);
|
||||
|
||||
for (int i=0;i<ASW_LABEL_POOL_SIZE;i++)
|
||||
{
|
||||
|
|
|
@ -38,6 +38,7 @@ public:
|
|||
float m_fNextMessage;
|
||||
int m_iCurMessage;
|
||||
vgui::HFont m_Font;
|
||||
bool m_bShowCreditsLogo;
|
||||
};
|
||||
|
||||
#endif // _INCLUDED_MEDAL_PANEL_H
|
|
@ -17,6 +17,7 @@
|
|||
#include "igameevents.h"
|
||||
#include "asw_medal_store.h"
|
||||
#include "nb_island.h"
|
||||
#include "clientmode_asw.h"
|
||||
|
||||
// memdbgon must be the last include file in a .cpp file!!!
|
||||
#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->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_pszWeaponUnlockClass = NULL;
|
||||
m_flOldBarMin = -1;
|
||||
|
@ -142,6 +146,12 @@ void CExperienceReport::PerformLayout()
|
|||
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_top = first_line_y - YRES( 38 );
|
||||
int island_tall = ( y + YRES( 15 ) + island_border ) - island_top;
|
||||
|
@ -175,7 +185,13 @@ void CExperienceReport::OnThink()
|
|||
m_pCheatsUsedLabel->SetVisible( bShowCheatsLabel );
|
||||
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
|
||||
float flBarMin = m_pExperienceBar[ 0 ]->m_pExperienceBar->GetBarMin();
|
||||
bool bCapped = ( (int) m_pExperienceBar[ 0 ]->m_pExperienceBar->m_fCurrent ) == ASW_XP_CAP;
|
||||
|
|
|
@ -52,6 +52,7 @@ public:
|
|||
vgui::Label *m_pEarnedXPNumber;
|
||||
|
||||
vgui::Label *m_pCheatsUsedLabel;
|
||||
vgui::Label *m_pUnofficialMapLabel;
|
||||
|
||||
// == MANAGED_MEMBER_POINTERS_START: Do not edit by hand ==
|
||||
WeaponUnlockPanel *m_pWeaponUnlockPanel;
|
||||
|
|
|
@ -84,6 +84,8 @@ void ExperienceStatLine::ApplySchemeSettings( vgui::IScheme *pScheme )
|
|||
|
||||
LoadControlSettings( "resource/UI/ExperienceStatLine.res" );
|
||||
|
||||
// no longer used / icons don't exist anymore
|
||||
/*
|
||||
switch( m_XPType )
|
||||
{
|
||||
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_HACKING: m_pIcon->SetImage( "swarm/Briefing/stathack" ); break;
|
||||
}
|
||||
*/
|
||||
|
||||
UpdateVisibility( ToASW_Player( m_hPlayer.Get() ) );
|
||||
}
|
||||
|
|
|
@ -37,7 +37,9 @@
|
|||
|
||||
using namespace vgui;
|
||||
|
||||
#ifdef _DEBUG
|
||||
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_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" );
|
||||
|
@ -100,14 +102,12 @@ MissionCompletePanel::MissionCompletePanel(Panel *parent, const char *name, bool
|
|||
m_PropertySheet->SetPos(0,0);
|
||||
m_PropertySheet->SetSize(ScreenWidth(), ScreenHeight());
|
||||
m_PropertySheet->SetVisible(true);
|
||||
if ( asw_unlock_all_weapons.GetInt() < 2 )
|
||||
{
|
||||
m_PropertySheet->SetShowTabs( false );
|
||||
}
|
||||
m_PropertySheet->SetShowTabs( false );
|
||||
|
||||
pParent = m_PropertySheet;
|
||||
|
||||
// stats
|
||||
if ( asw_unlock_all_weapons.GetInt() >= 2 || ASWGameRules()->IsTutorialMap() )
|
||||
if ( ASWGameRules()->IsTutorialMap() )
|
||||
{
|
||||
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
|
||||
m_PropertySheet->SetTabWidth(ScreenWidth()/5.0f);
|
||||
|
||||
if ( asw_unlock_all_weapons.GetInt() < 2 && !ASWGameRules()->IsTutorialMap() )
|
||||
if ( !ASWGameRules()->IsTutorialMap() )
|
||||
{
|
||||
Msg( "Adding experience report\n" );
|
||||
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 );
|
||||
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 );
|
||||
}
|
||||
|
@ -416,25 +416,24 @@ void MissionCompletePanel::UpdateVisibleButtons()
|
|||
m_pReadyCheckImage->SetVisible( false );
|
||||
if ( ASWGameRules()->GetMissionSuccess() )
|
||||
{
|
||||
if ( m_bCreditsSeen )
|
||||
if ( ASWGameRules()->IsCampaignGame() && ASWGameRules()->CampaignMissionsLeft() <= 1 )
|
||||
{
|
||||
m_pContinueButton->SetVisible( false );
|
||||
m_pRestartButton->SetVisible( true );
|
||||
}
|
||||
else
|
||||
{
|
||||
if ( ASWGameRules()->IsCampaignGame() && ASWGameRules()->CampaignMissionsLeft() <= 1 )
|
||||
if ( !m_bCreditsSeen )
|
||||
{
|
||||
m_pContinueButton->SetText( "#asw_button_credits" );
|
||||
}
|
||||
else
|
||||
{
|
||||
m_pContinueButton->SetText( "#asw_button_continue" );
|
||||
m_pContinueButton->SetText( "#asw_button_new_campaign" );
|
||||
}
|
||||
|
||||
m_pContinueButton->SetVisible( true );
|
||||
m_pRestartButton->SetVisible( false );
|
||||
}
|
||||
else
|
||||
{
|
||||
m_pContinueButton->SetText( "#asw_button_continue" );
|
||||
}
|
||||
|
||||
m_pContinueButton->SetVisible( true );
|
||||
m_pRestartButton->SetVisible( false );
|
||||
}
|
||||
else
|
||||
{
|
||||
|
@ -444,9 +443,17 @@ void MissionCompletePanel::UpdateVisibleButtons()
|
|||
}
|
||||
else
|
||||
{
|
||||
if ( !m_bCreditsSeen && ASWGameRules()->GetMissionSuccess() && ASWGameRules()->IsCampaignGame() && ASWGameRules()->CampaignMissionsLeft() <= 1 )
|
||||
if ( ASWGameRules()->GetMissionSuccess() && ASWGameRules()->IsCampaignGame() && ASWGameRules()->CampaignMissionsLeft() <= 1 )
|
||||
{
|
||||
m_pContinueButton->SetText( "#asw_button_credits" );
|
||||
if ( !m_bCreditsSeen )
|
||||
{
|
||||
m_pContinueButton->SetText( "#asw_button_credits" );
|
||||
}
|
||||
else
|
||||
{
|
||||
m_pContinueButton->SetText( "#asw_button_new_campaign" );
|
||||
}
|
||||
|
||||
m_pContinueButton->SetVisible( true );
|
||||
m_pReadyButton->SetVisible( false );
|
||||
m_pReadyCheckImage->SetVisible( false );
|
||||
|
@ -478,10 +485,7 @@ void MissionCompletePanel::ApplySchemeSettings( vgui::IScheme *scheme )
|
|||
{
|
||||
BaseClass::ApplySchemeSettings( scheme );
|
||||
|
||||
if ( asw_unlock_all_weapons.GetInt() < 2 )
|
||||
{
|
||||
LoadControlSettings( "resource/UI/MissionCompletePanel.res" );
|
||||
}
|
||||
LoadControlSettings( "resource/UI/MissionCompletePanel.res" );
|
||||
|
||||
if ( !m_bSetAlpha )
|
||||
{
|
||||
|
@ -553,17 +557,25 @@ void MissionCompletePanel::OnCommand(const char* command)
|
|||
}
|
||||
else if ( !Q_stricmp( command, "Continue" ) )
|
||||
{
|
||||
if ( !m_bCreditsSeen && ASWGameRules()->GetMissionSuccess() && ASWGameRules()->IsCampaignGame() && ASWGameRules()->CampaignMissionsLeft() <= 1 )
|
||||
if ( ASWGameRules()->GetMissionSuccess() && ASWGameRules()->IsCampaignGame() && ASWGameRules()->CampaignMissionsLeft() <= 1 )
|
||||
{
|
||||
C_ASW_Player *pPlayer = C_ASW_Player::GetLocalASWPlayer();
|
||||
if ( pPlayer )
|
||||
if ( !m_bCreditsSeen )
|
||||
{
|
||||
m_pStatsPanel->m_pDebrief->m_pPara[0]->SetVisible( false );
|
||||
m_pStatsPanel->m_pDebrief->m_pPara[1]->SetVisible( false );
|
||||
m_pStatsPanel->m_pDebrief->m_pPara[2]->SetVisible( false );
|
||||
pPlayer->LaunchCredits( m_pStatsPanel->m_pDebrief->m_pBackground->m_pBackgroundInner );
|
||||
m_bCreditsSeen = true;
|
||||
UpdateVisibleButtons();
|
||||
C_ASW_Player *pPlayer = C_ASW_Player::GetLocalASWPlayer();
|
||||
if ( pPlayer )
|
||||
{
|
||||
m_pStatsPanel->m_pDebrief->m_pPara[0]->SetVisible( false );
|
||||
m_pStatsPanel->m_pDebrief->m_pPara[1]->SetVisible( false );
|
||||
m_pStatsPanel->m_pDebrief->m_pPara[2]->SetVisible( false );
|
||||
pPlayer->LaunchCredits( m_pStatsPanel->m_pDebrief->m_pBackground->m_pBackgroundInner );
|
||||
m_bCreditsSeen = true;
|
||||
UpdateVisibleButtons();
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
// Vote on a new mission
|
||||
engine->ClientCmd("asw_vote_chooser 0 notrans");
|
||||
}
|
||||
}
|
||||
else if ( bLeader )
|
||||
|
|
|
@ -29,13 +29,15 @@ MissionCompleteStatsLine::MissionCompleteStatsLine(Panel *parent, const char *na
|
|||
m_pBarIcons[i] = new vgui::ImagePanel(this, "BarIcon");
|
||||
m_pBarIcons[i]->SetShouldScaleImage(true);
|
||||
}
|
||||
m_pBarIcons[0]->SetImage("swarm/Briefing/statkilled");
|
||||
m_pBarIcons[1]->SetImage("swarm/Briefing/stataccuracy");
|
||||
m_pBarIcons[2]->SetImage("swarm/Briefing/statfriendly");
|
||||
m_pBarIcons[3]->SetImage("swarm/Briefing/statdamage");
|
||||
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");
|
||||
|
||||
// not used and the icons no longer exist
|
||||
//m_pBarIcons[0]->SetImage("swarm/Briefing/statkilled");
|
||||
//m_pBarIcons[1]->SetImage("swarm/Briefing/stataccuracy");
|
||||
//m_pBarIcons[2]->SetImage("swarm/Briefing/statfriendly");
|
||||
//m_pBarIcons[3]->SetImage("swarm/Briefing/statdamage");
|
||||
//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
|
||||
//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" );
|
||||
|
||||
// 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 )
|
||||
{
|
||||
|
|
|
@ -16,16 +16,21 @@
|
|||
#include "nb_main_panel.h"
|
||||
#include "vgui_avatarimage.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!!!
|
||||
#include "tier0/memdbgon.h"
|
||||
|
||||
using namespace BaseModUI;
|
||||
|
||||
CNB_Lobby_Row::CNB_Lobby_Row( vgui::Panel *parent, const char *name ) : BaseClass( parent, name )
|
||||
{
|
||||
// == MANAGED_MEMBER_CREATION_START: Do not edit by hand ==
|
||||
m_pAvatarBackground = new vgui::Panel( this, "AvatarBackground" );
|
||||
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_pXPBar = new StatsBar( this, "XPBar" );
|
||||
m_pClassLabel = new vgui::Label( this, "ClassLabel", "" );
|
||||
|
@ -161,7 +166,7 @@ void CNB_Lobby_Row::UpdateDetails()
|
|||
m_pXPBar->SetVisible( false );
|
||||
m_pLevelLabel->SetVisible( false );
|
||||
m_pPromotionIcon->SetVisible( false );
|
||||
m_pNameLabel->SetVisible( false );
|
||||
m_pNameDropdown->SetVisible( false );
|
||||
m_pAvatarImage->SetVisible( false );
|
||||
m_pClassLabel->SetVisible( false );
|
||||
return;
|
||||
|
@ -179,8 +184,12 @@ void CNB_Lobby_Row::UpdateDetails()
|
|||
lightblue.b = 192;
|
||||
lightblue.a = 255;
|
||||
|
||||
m_pNameLabel->SetText( Briefing()->GetMarineOrPlayerName( m_nLobbySlot ) );
|
||||
m_pNameLabel->SetVisible( true );
|
||||
BaseModHybridButton *pButton = m_pNameDropdown->GetButton();
|
||||
if ( pButton )
|
||||
{
|
||||
pButton->SetText( Briefing()->GetMarineOrPlayerName( m_nLobbySlot ) );
|
||||
}
|
||||
m_pNameDropdown->SetVisible( true );
|
||||
|
||||
#if !defined(NO_STEAM)
|
||||
CSteamID steamID = Briefing()->GetCommanderSteamID( m_nLobbySlot );
|
||||
|
@ -265,9 +274,9 @@ void CNB_Lobby_Row::UpdateDetails()
|
|||
m_pAvatarImage->GetPos( nAvatarX, nAvatarY );
|
||||
|
||||
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
|
||||
{
|
||||
|
@ -389,6 +398,8 @@ void CNB_Lobby_Row::CheckTooltip( CNB_Lobby_Tooltip *pTooltip )
|
|||
}
|
||||
}
|
||||
|
||||
extern ConVar developer;
|
||||
|
||||
void CNB_Lobby_Row::OnCommand( const char *command )
|
||||
{
|
||||
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 );
|
||||
}
|
||||
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 ==
|
||||
class CBitmapButton;
|
||||
class CNB_Lobby_Tooltip;
|
||||
namespace BaseModUI
|
||||
{
|
||||
class DropDownMenu;
|
||||
}
|
||||
|
||||
class CNB_Lobby_Row : public vgui::EditablePanel
|
||||
{
|
||||
|
@ -30,6 +34,7 @@ public:
|
|||
virtual void PerformLayout();
|
||||
virtual void OnThink();
|
||||
virtual void OnCommand( const char *command );
|
||||
void OpenPlayerFlyout();
|
||||
|
||||
virtual void UpdateDetails();
|
||||
virtual void CheckTooltip( CNB_Lobby_Tooltip *pTooltip );
|
||||
|
@ -48,7 +53,7 @@ public:
|
|||
vgui::Panel *m_pAvatarBackground;
|
||||
CAvatarImagePanel *m_pAvatarImage;
|
||||
vgui::ImagePanel *m_pClassImage;
|
||||
vgui::Label *m_pNameLabel;
|
||||
BaseModUI::DropDownMenu *m_pNameDropdown;
|
||||
vgui::Label *m_pLevelLabel;
|
||||
StatsBar *m_pXPBar;
|
||||
vgui::Label *m_pClassLabel;
|
||||
|
|
|
@ -41,6 +41,7 @@ void CNB_Lobby_Row_Small::ApplySchemeSettings( vgui::IScheme *pScheme )
|
|||
m_szLastWeaponImage[i][0] = 0;
|
||||
}
|
||||
m_szLastPortraitImage[ 0 ] = 0;
|
||||
m_lastSteamID.Set( 0, k_EUniverseInvalid, k_EAccountTypeInvalid );
|
||||
}
|
||||
|
||||
void CNB_Lobby_Row_Small::PerformLayout()
|
||||
|
|
|
@ -147,9 +147,6 @@ void CNB_Main_Panel::PerformLayout()
|
|||
BaseClass::PerformLayout();
|
||||
}
|
||||
|
||||
// TODO: Remove this before ship
|
||||
ConVar asw_force_allow_promotion( "asw_force_allow_promotion", "0" );
|
||||
|
||||
void CNB_Main_Panel::OnThink()
|
||||
{
|
||||
BaseClass::OnThink();
|
||||
|
@ -161,14 +158,8 @@ void CNB_Main_Panel::OnThink()
|
|||
m_pChatButton->SetVisible( gpGlobals->maxClients > 1 );
|
||||
m_pVoteButton->SetVisible( gpGlobals->maxClients > 1 );
|
||||
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();
|
||||
|
|
|
@ -65,6 +65,7 @@ public:
|
|||
CBitmapButton *m_pVoteButton;
|
||||
|
||||
bool m_bLocalLeader;
|
||||
uint64 m_FlyoutSteamID;
|
||||
|
||||
void ProcessSkillSpendQueue();
|
||||
void OnFinishedSpendingSkillPoints();
|
||||
|
|
|
@ -192,8 +192,8 @@ void CNB_Mission_Panel::OnThink()
|
|||
}
|
||||
}
|
||||
|
||||
m_drpDifficulty->SetVisible( gpGlobals->maxClients > 1 );
|
||||
m_pDifficultyDescription->SetVisible( gpGlobals->maxClients > 1 );
|
||||
// only show insane in multiplayer
|
||||
m_drpDifficulty->SetFlyoutItemEnabled( "BtnImpossible", gpGlobals->maxClients > 1 );
|
||||
|
||||
if ( ASWGameRules()->IsCampaignGame() && ASWGameRules()->GetCampaignSave() && ASWGameRules()->GetGameState() != ASW_GS_INGAME )
|
||||
{
|
||||
|
|
|
@ -98,7 +98,14 @@ void CNB_Vote_Panel::UpdateVotePanelStatus()
|
|||
{
|
||||
if ( GetClientModeASW() && GetClientModeASW()->m_bTechFailure )
|
||||
{
|
||||
m_VotePanelStatus = VPS_TECH_FAIL;
|
||||
if ( ASWGameRules()->GetGameState() == ASW_GS_INGAME )
|
||||
{
|
||||
m_VotePanelStatus = VPS_TECH_FAIL;
|
||||
}
|
||||
else
|
||||
{
|
||||
m_VotePanelStatus = VPS_NONE;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
|
|
|
@ -57,6 +57,8 @@ void ObjectiveIcons::OnThink()
|
|||
{
|
||||
BaseClass::OnThink();
|
||||
|
||||
// this is no longer being used
|
||||
/*
|
||||
if (m_bHaveQueued)
|
||||
{
|
||||
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);
|
||||
|
||||
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)
|
||||
|
|
|
@ -781,8 +781,11 @@ void CRadialMenu::OnCommand( const char *command )
|
|||
}
|
||||
else
|
||||
{
|
||||
StartFade();
|
||||
SendCommand( command );
|
||||
if ( !m_fading )
|
||||
{
|
||||
StartFade();
|
||||
SendCommand( command );
|
||||
}
|
||||
}
|
||||
|
||||
BaseClass::OnCommand( command );
|
||||
|
|
|
@ -174,7 +174,7 @@ void StatsReport::OnThink()
|
|||
C_ASW_Player *pPlayer = pMR->GetCommander();
|
||||
if ( pPlayer )
|
||||
{
|
||||
if ( ASWGameResource()->IsPlayerReady( pPlayer ) )
|
||||
if ( !pMR->IsInhabited() || ASWGameResource()->IsPlayerReady( pPlayer ) )
|
||||
{
|
||||
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_pIcon = new vgui::ImagePanel(this, "Icon");
|
||||
m_pIcon->SetShouldScaleImage(true);
|
||||
m_pIcon->SetImage("swarm/Briefing/stathack");
|
||||
m_pIcon->SetImage("swarm/EquipIcons/Locked");
|
||||
m_bLeader = false;
|
||||
m_hFont = vgui::INVALID_FONT;
|
||||
|
||||
|
|
|
@ -40,6 +40,7 @@ m_nTilesY( 1 )
|
|||
m_TemplateName[0] = '\0';
|
||||
m_Description[0] = '\0';
|
||||
m_Soundscape[0] = '\0';
|
||||
m_nTileType = ASW_TILETYPE_UNKNOWN;
|
||||
}
|
||||
|
||||
CRoomTemplate::~CRoomTemplate()
|
||||
|
|
|
@ -796,7 +796,7 @@ const Vector& VMFExporter::GetCurrentRoomOffset()
|
|||
return s_vecCurrentRoomOffset;
|
||||
}
|
||||
|
||||
#define UNIQUE_KEYS_FILE "unique_keys.txt"
|
||||
#define UNIQUE_KEYS_FILE "tilegen/unique_keys.txt"
|
||||
void VMFExporter::LoadUniqueKeyList()
|
||||
{
|
||||
m_UniqueKeys.RemoveAll();
|
||||
|
@ -804,7 +804,7 @@ void VMFExporter::LoadUniqueKeyList()
|
|||
|
||||
// Open the manifest file, and read the particles specified inside it
|
||||
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() )
|
||||
{
|
||||
|
|
|
@ -560,6 +560,8 @@ void CASW_Map_Builder::ScheduleMapBuild(const char* pszMap, const float fTime)
|
|||
m_bStartedGeneration = false;
|
||||
m_iBuildStage = STAGE_MAP_BUILD_SCHEDULED;
|
||||
m_flProgress = 0.0f;
|
||||
|
||||
Q_snprintf( m_szStatusMessage, sizeof( m_szStatusMessage ), "Generating map..." );
|
||||
}
|
||||
|
||||
// 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_nLevelGenerationRetryCount = 0;
|
||||
m_flProgress = 0.0f;
|
||||
|
||||
Q_snprintf( m_szStatusMessage, sizeof( m_szStatusMessage ), "Generating map..." );
|
||||
}
|
||||
|
||||
// Builds a map from a .layout file
|
||||
|
|
|
@ -145,10 +145,10 @@ InitReturnVal_t CASW_Mission_Chooser::Init()
|
|||
Q_AppendSlash( g_gamedir, sizeof( g_gamedir ) );
|
||||
|
||||
char tilegendir[MAX_PATH];
|
||||
Q_snprintf( tilegendir, sizeof(tilegendir), "%s\\tilegen", g_gamedir );
|
||||
g_pFullFileSystem->AddSearchPath( tilegendir, "TILEGEN" );
|
||||
Q_snprintf( tilegendir, sizeof(tilegendir), "%stilegen", g_gamedir );
|
||||
//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" );
|
||||
|
||||
|
|
|
@ -178,7 +178,7 @@ void CASW_Mission_Chooser_Source_Local::BuildMapList()
|
|||
|
||||
// Search the directory structure.
|
||||
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 );
|
||||
// think will continue the search
|
||||
}
|
||||
|
|
|
@ -33,22 +33,29 @@ vgui::Panel* CASW_Random_Missions::CreateTileGenFrame( vgui::Panel *parent )
|
|||
void CASW_Random_Missions::LevelInitPostEntity( const char *pszMapName )
|
||||
{
|
||||
delete m_pCurrentMapLayout;
|
||||
|
||||
CLevelTheme::LoadLevelThemes();
|
||||
|
||||
|
||||
// try to load the layout for this map
|
||||
char filename[128];
|
||||
|
||||
Q_snprintf( filename, sizeof( filename ), "maps/%s", pszMapName );
|
||||
Q_SetExtension( filename, "layout", sizeof( filename ) );
|
||||
|
||||
|
||||
char fullpath[MAX_PATH];
|
||||
g_pFullFileSystem->RelativePathToFullPath( filename, "MOD", fullpath, sizeof( fullpath ) );
|
||||
g_pFullFileSystem->RelativePathToFullPath( filename, "GAME", fullpath, sizeof( fullpath ) );
|
||||
|
||||
m_pCurrentMapLayout = new CMapLayout();
|
||||
if ( !m_pCurrentMapLayout->LoadMapLayout( filename ) )
|
||||
if ( g_pFullFileSystem->FileExists( filename ) )
|
||||
{
|
||||
CLevelTheme::LoadLevelThemes();
|
||||
|
||||
m_pCurrentMapLayout = new CMapLayout();
|
||||
if ( !m_pCurrentMapLayout->LoadMapLayout( filename ) )
|
||||
{
|
||||
delete m_pCurrentMapLayout;
|
||||
m_pCurrentMapLayout = NULL;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
delete m_pCurrentMapLayout;
|
||||
m_pCurrentMapLayout = NULL;
|
||||
}
|
||||
|
||||
|
|
|
@ -229,7 +229,7 @@ BaseClass( pParent, pName ),
|
|||
m_pRulePreprocessor( pRulePreprocessor )
|
||||
{
|
||||
m_pRulePanelList = new PanelListPanel( this, "RulePanelListPanel" );
|
||||
LoadControlSettings( "RulePicker.res" );
|
||||
LoadControlSettings( "tilegen/RulePicker.res", "GAME" );
|
||||
SetDeleteSelfOnClose( true );
|
||||
MoveToCenterOfScreen();
|
||||
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_pProgressBar = new vgui::ProgressBar( this, "ProgressBar" );
|
||||
m_pErrorTextBox = new vgui::RichText( this, "ErrorTextBox" );
|
||||
LoadControlSettings( "TileCheck.res", "TILEGEN" );
|
||||
LoadControlSettings( "tilegen/TileCheck.res", "GAME" );
|
||||
|
||||
SetMinimumSize( 384, 420 );
|
||||
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue