func_vehicle
Jump to navigation
Jump to search

Note:The vehicle will not survive map transitions if the func_vehicle and func_vehiclecontrols are made using bmodels which are part of the map's BSP. If this is an issue, save them as separate BSPs and use zhlt_usemodel to load them via cyclers.
Confirm:Shouldn't globalname fix this?


![]() |
---|
CFuncVehicle |
![]() trains.h |
func_vehicle
is a brush entity available in Counter-Strike,
Sven Co-op, and
Half-Life.
An entity that behaves like func_tracktrain coupled with func_traincontrols; however, it moves freely along the world and changes angles according to collision much like a real vehicle, albeit more primitive. This entity uses a unique brush entity to control it, called func_vehiclecontrols.
It was added to Half-Life after the 25th Anniversary Update.
An accurate VScript implementation is also available for
Team Fortress 2 (using the 25th anniversary code as reference).


Keyvalues
- First stop target (target) <targetname>
- Use this if you building the brush geometry for the vehicle in a different location than where it will spawn (for lighting purposes). The vehicle and controls should have origin brushes.
- Sound (sounds) <choices>
Choices:
- <blank>: None
- 1: Vehicle 1
- 2: Vehicle 2
- 3: Vehicle 3
- 4: Vehicle 4
- 5: Vehicle 6
- 6: Vehicle 7
- Length of the vehicle (length) <integer>
- Default is 256.
- Width of the vehicle (width) <integer>
- Default is 128.
- Height above track (height) <integer>
- Default is 4.
- Initial speed (startspeed) <integer>
- Speed (units per second) (speed) <integer>
Warning:"Things go wrong" if speed is 2000 or greater, according to the FGD.
- Damage on crush (dmg) <integer>
- Volume (10=loudest) (volume) <integer 0–10>
- Default is 10.
- Bank angle on turns (bank) <string>
- Name (targetname) <string>
- The targetname that other entities refer to this entity by.
- Pitch Yaw Roll (Y Z X) (angles) <angle>
- This entity's orientation in the world. Pitch is rotation around the Y axis, yaw is the rotation around the Z axis, roll is the rotation around the X axis.
- Render FX (renderfx) <choices>
- Render FX mode to use, for special effects.
Value Description 0 Normal 1 Slow Pulse 2 Fast Pulse 3 Slow Wide Pulse 4 Fast Wide Pulse 5 Slow Fade Away 6 Fast Fade Away 7 Slow Become Solid 8 Fast Become Solid 9 Slow Strobe 10 Fast Strobe 11 Faster Strobe 12 Slow Flicker 13 Fast Flicker 14 Constant Glow 15 Distort 16 Hologram (Distort + fade)
- Render Mode (rendermode) <choices>
- Render Mode to use.
Value Description 0 Normal 1 Color 2 Texture 3 Glow 4 Solid 5 Additive
- Render Amount (0-255) (renderamt) <integer>
- Controls transparency when using another render mode then normal. 0 is completely invisible, and 255 is opaque. If render mode is solid, then all values except 0 are opaque.
- Render Color (R G B) (rendercolor) <color255>
- Color to use by the specified render mode.
Also used on brush entities to control the speed of scrolling textures; see func_conveyor for more information.
- Minimum light level (_minlight) <normal>
|
![]()
|
Flags
- No Pitch (X-rot) : [1]
- No User Control : [2]
- Passable : [8]
FGD entry
@SolidClass base(Targetname, RenderFields, Angles) = func_vehicle : "Drivable Vehicles. A right, not a privilege."
[
spawnflags(flags) =
[
1 : "No Pitch (X-rot)" : 0
2 : "No User Control" : 0
8 : "Passable" : 0
]
target(target_destination) : "First stop target"
sounds(choices) : "Sound" : 1 =
[
0: "None"
1: "Car 1"
2: "Car 2"
3: "Truck 1"
4: "Truck 2"
5: "Boat 1"
6: "Boat 2"
]
length(integer) : "Length of the vehicle" : 256
width(integer) : "Width of the vehicle" : 128
height(integer) : "Height above track" : 16
startspeed(integer) : "Initial speed" : 0
speed(integer) : "Speed (units per second)" : 64
acceleration(integer) : "Acceleration (1-10)" : 5
dmg(integer) : "Damage on crush" : 0
volume(integer) : "Volume (10 = loudest)" : 10
bank(string) : "Bank angle on turns" : "0"
_minlight(string) : "Minimum light level"
]
@SolidClass = func_vehiclecontrols : "Vehicle Controls"
[
target(target_destination) : "Vehicle Name"
]
|