// ----------------------------------------------------------------------- // Counter-Strike game definition file (.fgd) // Version 0.9.0.0 // Valve Hammer Editor >= 3.5 // Last update: September 25th, 2016 // ----------------------------------------------------------------------- // Based on FGD 0.8.0.0 by Dmitrich! // // Full compatibility with https://github.com/s1lentq/ReGameDLL_CS // ----------------------------------------------------------------------- // September 25th, 2016 - s1lent (0.9.0.0) // - Removed xen entities. // - Added iconsprite for entity game_zone_player // - Added new spawnflags for trigger_auto, trigger_once, func_door // ----------------------------------------------------------------------- // // // // // // // -------------------------------------------------------------------------------- // HISTORY CHANGELOG // -------------------------------------------------------------------------------- // February 21, 2004 - Dmitrich! (0.8.0.0) // - updated properties of info_compile_parameters (now supports all features of ZHLT 2.5.3-1.7) // - added info_texlights entity (supported by ZHLT 2.5.3-1.7) // - updated with studio() references to enable model display // in 3D view in Hammer 3.5b (entities: cycler, cycler_sprite) // - added @BaseClass = Sequence (for model animation support) // - added style parameter to func_wall (texlights on func_wall can now // pulse, flicker, and switch on and off. Works only with ZHLT 2.5.3-1.7 & above). // ----------------------------------------------------------------------- // June 15, 2003 - tommy (0.7.9.2e) // - Added flag 2 to trigger_multiple for no player activation for soccer maps. // - Style property commented out for triggers, seems to serve no purpose. // - Added light style 12 underwater weird - buggy. not really a light source. // - Added to func_pushable choice 2, breakable by player touch - buggy // ----------------------------------------------------------------------- // January 21st, 2003 - KeshTath (0.7.9.2) // - Added weapon_shieldgun to game_player_equip. // - Added weapon_galil to game_player_equip. // - Added weapon_famas to game_player_equip. // NOTE: You cannot add any of the new weapons to the armoury_entity, They did not // put in any code to allow you to add the UMP, SG550 or any of the new 1.6 weapons. //----------------------------------------------------------------------- // Oct 7th, 2002 - tommy (0.7.8.1) // added Lauries new entity properties for switchable texture lighting //------------------------------------------------------------------------------ // Aug 19th, 2002 - tommy (0.7.8enhanced) // - fixed env_blood choices // ----------------------------------------------------------------------------- // Aug 11th, 2002 - tommy (0.7.8enhanced) // - added editing sprites for: monster_cycler, cycler_wreckage, env_beam, env_blood, env_explosion // env_glow, env_fade, env_laser, env_render, env_sprite, env_smoke, gibshooter, path_track, path_corner. // -------------------------------------------------------------------------------- // Aug 2nd, 2002 - tommy (0.7.8enhanced) // - added sound choices to base trigger copied from button sound choices. // - added body choice for use with scientist.mdl to hostage entity. // - added sequence(string) to cycler_sprite to give control over model animations. // - fixed some comment errors, also modified and added more to some entitys. // -------------------------------------------------------------------------------- // April 29th, 2002 - tommy (0.7.8enhanced) // - added notes on various entitys and choices from Lauri of Spirit of HL and from Waldo's // various notes on DoD and CS fgds, as well as my own. // - Removed renderfield string codes and replaced them with "Renderfields" // baseclasses for cycler_wreckage, // - env_fog upgraded to the choices/abilities other mods use, in case CS upgrades to full fog someday. // - added property of "shade"(_diffuse_light) to light enviornment for adam foster's hack of HLRAD, so that // shadows can be given a specific color. // - added skins for "water" (-3), "slime" (-4), "lava" (-5) and "make ladder" (-16) to func_illusionary // - added spawnflags "only trigger" (1) and "pressure" (4) to func_pushable as other ways to break it. // - gave func_train ALL the same skins as func_illusionary & func_water, even though the skins work oddly for a train. // - added skins "empty" (-1) and "ladder" (-16) to func_water. note "ladder" only works with non ! textures. //----------------------------------------------------------------------- // April 7th, 2002 - fjl (0.7.8) // - Global baseclass is a single player map option. The following baseclasses and // entities listed could support it so I added it to them. // BASECLASSES: Breakable, door, Basetank and Trackchange // SOLID ENTITIES func_button, func_conveyor, func_pendulum, func_plat, // func_rot_button, func_rotating, func_tracktrain, func_train and func_wall // - Added Master(string) to Basetank baseclass. // - Removed renderfield string codes and replaced them with "Renderfields" // baseclasses for cycle, cycler_sprite & button_target. // - Added the Appearflags("Not in Deathmatch") option to these listed entities and // baseclasses that where missing that parameter. // BASECLASSES: playerclass, door // ENTITIES: func_friction, func_pendulum, func_wall, infodecal // - Gave func_breakable the ability to spawn a battery, healthkit or shotgun // shells upon breaking. This options works a bit buggy since the spawned items // will continue to respawn on its own after its been picked up. If the // func_breakable is given a name, it will have the same effect as a // MonsterMaker by spawning the object each time its triggered. // Use this option wisely or only for single player maps. // - Added missing ZHLT options to func_friction. // - Added the "Instant Crowbar" flag to func_pushable. Not that this option is // usable for this mod, but I added it so whoever does the next Half-Life FGD // update, realizes that it supports that option. // - Added missing Renderfields baseclass to func_rot_button. // - Changed func_rotate to default to a speed of 50 instead of 0. // - Added item_healthkit to game_player_equip. // - Added ammo for the M249 Para on game_player_equip. Thanks to [B.o.G]doom for // this information. // - Added some extra information to the game_player_equip entity. // - Added character limit number for the "game_text" entity on its message string. // - Added "Renderfields" baseclass to hostage_entity. This allows the option for // hostages to be transparent, distorted, flickering or any of those other effects. // - Added "Renderfields" baseclass to item_healthkit, item_longjump and item_battery. // - Fixed light_spot bug where its default color was yellow instead of white. // - Gave Light_Environment the "Initially Dark" flag. // - Added "Appearance" effects to light_environment. This allows light_environment // to have the strobe and flicker light effects just incase you want to give // players an epileptic seizure while they play your map :) // Appearance's effect will not work if light_environment is given a name. // - Added "Custom Appearance" to light_environment. This option does require the // entity to have a name for it to work. // - Added the "target" field to light_environment. Add the light_environment // entity, and in the target field, add the name of its target(another entity). // Light_environment will now emit light in that direction from all sky brushes. // This should save time from trying to figure out the annoying angles and pitches. // - Added monster_scientist entity. Works the same as hostage_entity except that // it uses the scientist model. The scientist type(luther, einstein, etc.) is // also selectable. While it is possible to change hostage_entity into the // scientist model, a specific scientist type is not selectable. // Only monster_scientist has that option, which is why I added it. // - Added the sprite color to the multisource and multi_manager entities so they // are the same as Half-Life's FGD. // - Added "Global State Master" to trigger_auto. // - Fixed bug on trigger_counter, where field options repeated themselves. // This same bug seems to be plaguing all the other FGD's. Whoever plans to // updates those other FGD files should take note of it. // - Added "Level Fade In" and "CD track to play" to WorldSpawn. These options // should only be used for single player maps. // - Changed the baseclass name, zhltlightflags to ZHLT. // - Rearranged some of the entities code so that the most common fields and // options come before the other options. It was annoying having to scroll to // the bottom just to find out what some of them trigger or what their names are. // The Name of the entity should always come first and the other important // options right after. Something in the fashion listed below, that is, if they // contain those fields. // ------------------------ // Name // Global Entity Name // Master // Target // Trigger delay // Pitch Yaw Roll (X Y Z) // Render FX // Render Mode // FX Amount(1 - 255) // FX Color (R G B) // Light Flags (ZHLT 2.2+) // Light Origin (ZHLT 2.2+) // ------------------------ // Not all of them are exactly in this order since that would require re-writing // the whole FGD file, but I did manage to rearrange them to some extent for the // following baseclasses and entities listed below. // BASECLASSES: breakable, gibshooterbase and trigger // ENTITIES: env_sprite, func_button, func_door_rotating, func_pendulum, // func_platrot, func_rot_button, func_rotating, func_tracktrain, func_vehicle, // game_counter, game_counter_set, game_player_hurt, game_player_team, // info_teleport_destination, light, momentary_rot_button, path_track, // trigger_camera, trigger_changetarget, trigger_counter, trigger_hurt entities // and xen entities // - In order to help with the rearranging of the fields(read previous sentence), I // had to create a Master Baseclass. These are the following baseclasses and // entities that I removed the Master string from their code and replaced it with // the Master baseclass. // BASECLASSES: door and trigger // ENTITIES: game_counter, game_counter_set, game_score, game_team_master, // game_text, game_zone_player, trigger_hurt, func_button, func_rot_button, // button_target and momentary_rot_button // - Added some extra information to Basetank baseclass and func_rot_button entity. // - Put line codes for trigger_gravity, func_wall, func_wall_toggle and func_water // entities in alphabetical order. // - Added some extra info to the previous update list and fixed some spelling errors. // - Updated once again, "cs_fgd_readme.txt" and "INSTALL.TxT" // ----------------------------------------------------------------------- // March 16th, 2002 - fjl (0.7.7) // - Added the "New Level Unit" Option on WorldSpawn. // - Added "weapon" baseclass. // - Added "Appearflags" baseclass. // - Added "Global" baseclass. // - Changed ZHLT _fade option to default to 1.0 instead of 0 // - Changed ZHLT _falloff option to have a choice of "default," "linear," and "square." // - Removed the zhlt_lightflags choices from the "breakable" baseclass. It didn't need it. // - Added "Opaque + Concave Fix" to zhlt_lightflags. // - Changed IS NOT LOOPED to NOT TOGGLED on ambient_generic // - Removed ZHLT from func_wall_toggle. It caused ZHLT options to repeat. // - Added a Targetname and ZHLT _fade and _falloff options to light_environment. // - Changed light_environment so it defaults to an angle of 270 and pitch of -90. // Similar to high noon sunlight. // - Added the ZHLT _fade and _falloff options for light_spot. // - Changed all light entities to start with a white brightness(255 255 255 200) // instead of the annoying yellow color(255 255 128 200). // - Added "Angular Velocity" to func_train. Angle does not reset with a new round. // Hopefully VALVe will fix this in the future. // - Changed trigger_gravity to display "Gravity (0.0-1)" instead of "Gravity (0-1)" // - Added cycler entity. // - Added cycler_wreckage. Seems its just a big smoke sprite used for machine wrecks // so I edited it to not show the targetted sprite by default. If it does show the // sprite, it will simply look like a sprite stuck inside the smoke stack. It was // best to make it invisible. If a bigger sprite is used like say 320hud1.spr there // will be a more spread out smoke stack. Bigger sprite = wider smoke stack. // - Added env_fade. // - Added env_fog in hopes to get VALVe to implement it for this mod and make it // compatible for software and direct3d modes. Currently doesn't work with // Counter-Strike version 1.3 // LIMITATIONS: // Currently (as of Half-Life 1.1.0.8), objects outside of the 100% opacity range // are still drawn and still contribute to the overall polygon count. This entity is // still quite under development. // The fog is only drawn in OpenGL mode. This means users who are viewing the level // in Software or Direct3D rendering will not see the fog. For this reason, if you // plan on releasing your map publicly, the env_fog entity should not be used as it // will put OpenGL users at a disadvantage. // - Added func_guntarget. // - Added func_recharge and func_healthcharger. Currently the dmdelay, // "Deathmatch recharge delay" does not work with CS 1.3. Hopefully // this will be fixed in the future. // - Added func_tanklaser // - Removed func_tankrocket seeing as how CS cannot support the rocket entity. // - Added all missing weapons for game_player_equip plus added item_longjump & // item_battery including all weapon ammo. Almost did a complete re-write to this // entity to make it alot easier to use. I just can't figure out nightvision goggles // and ammo for the para. If you figure it out, please contact me. I would advice // using this item to give players the longjump or the battery wisely. Those items // do not magically dissapear like all the others. They will remain even after // a round ends. Also, You can't give all weapons and items at one time. SO DON'T TRY! // - Added gibshooter entity. // - Added item_longjump, item_battery and item_healthkit entities. These respawn // like in HL deathmatch. They might be a bit buggy though. // - Added xen entities. // - Rearranged the update list so the latest additions are on top. // - Updated the "readme.txt" that comes with the zip file and renamed it to // "cs_fgd_readme.txt" so it will not over write Worldcraft's "readme.txt" file. // - Created an "install.txt" for the zip file. // - Created a single player FGD file for anyone wanting to create training maps. // It contains the level transition entities required to make such maps. Plus it // contains many other entities that have some type of use on single player maps but // are not supported for multiplayer maps. The file is named "cs-single_player.fgd" // and it MUST be used alongside this FGD file. Read that FGD file to learn more. // // Jan 26, 2001 - Tim Holt (0.7.6) // - Added "No Clients" check option to Trigger base class per suggestion/lead // from Mataleone (cs mapping forum) //----------------------------------------------------------------------- // Jan 6, 2001 - Tim Holt (0.7.5) // - Added new parameter options for game_player_equip to list all // CS items in dialog, thus removing the need to turn off SmartEdit // to configure. // - Added new sprite for trigger_auto (green box with words "Trigger Auto") //----------------------------------------------------------------------- // 01/05/2001 - Morlam (0.7.4) // - Added _fade and _falloff keys to the light_ entities. Need ZHLT 2.2+ // for these to work. // - Added light_origin key to the ZHLT Light Flags BaseClass. Again, you // need the latest version of Zoner's Tools for light_origin to work. // - Moved circus and extra from the "Class Info" tab to the "Flags" tab. // - Shortened the SmartEdit names of certain key/values in info_compile_params // so that they aren't cut off (at least, on my 800X600 screen on a 15 inch // monitor). // // 01/04/2001 - Morlam (0.7.3) // - Arranged all the point entities in alphabetical order // - Corrected a typo in hostage_entity: "Orange Suit Worker" from // "Orange Suite Worker". // - Changed func_water default WaveHeight to 0 // - Added ZHLT Light Flags to func_plat, _pendulum and _vehicle // - Under info_compile_params: // - Changed extra to choices instead of a string; default is now 0 // - Changed extra to read: "Enable Extra mode in HLRAD?" // - Added hullfile, chop, texchop, circus, and dscale keys // - Added "No Clip" flag under Run BSP in the spawnflags // - Under info_lights_rad: // - added radfile key/value, specifies custom texture light file //----------------------------------------------------------------------- // 01/01/2001 - Tim Holt (0.7.2) // - Added new dropdown to hostage entity, so you can choose hostage skin // directly by name (orange suit guy or tie guy) // - Removed commented out "master" option for game_zone_player. It was // commented out from the original HL FGD for some reason. Not sure why // or if maybe there is a problem with it? //----------------------------------------------------------------------- // 12/31/2000 - Tim Holt (0.7.1) // - Added new sprites for all the Game entities // - Added new sprite for Player Weapon Strip // - Added new sprite for Trigger_Relay // - Added new sprite for Trigger_ChangeTarget //----------------------------------------------------------------------- // Original changes by Tim Holt (0.7.0) // - Added new Trigger Changetarget sprite (green cube w/words) // - Added new Info Target sprite (bullseye) // - Added new trigger_camera sprite (Video camera) // - Added new Multi Manager sprite (box w/arrows coming out of it) // - Added new "Cycler Sprite" sprite (box w/arrow circle around it) // - Added replacement ambient_generic sprite (changed from speaker to speaker // with words "Ambient Generic" around it") // - Added replacement env_sound sprite (changed from speaker to speaker // with words "Env Sound" around it") // - Added replacement light_spot sprite (changed from lightbulb to spotlight) // - Added replacement Light Environment sprite (changed from lightbulb to sun) // - Added all the "game_*" entities // - Added info_compile_params and info_lights_rad entities. Idea is to // get someone like Zoner to implement support for them in Zoners, or // build support for them into a compile tool like Q2Beaver, HLCC, etc. // - Added env_funnel // - Added trigger_gravity // - Added player_weaponstrip // - Put Zoners RAD option (that allow solid (func_) based ents to cast // shadows) into a number of new additional items that can support it. // Use with caution, as for example a func_pushable can cast a shadow now, // but if you push it, the shadow stays behind :^) // // -------------------------------------------------------------------------------- // // --------------------------------------------------------------------------------- // Note: I have not fully tested the support of ALL the game_ entities in // CS. I DO know that some work thru experimentation. Let me know if you // find interesting things about these little known and used entities in CS. // --------------------------------------------------------------------------------- // Worldspawn @SolidClass = worldspawn : "World entity" [ message(string) : "Map Description / Title" skyname(string) : "environment map (cl_skyname)" sounds(integer) : "CD track to play" : 0 light(integer) : "Default light level" : 0 WaveHeight(string) : "Default Wave Height" : "0" MaxRange(string) : "Max viewable distance" : "4096" startdark(choices) : "Level Fade In" : 0 = [ 0 : "No" 1 : "Yes" ] newunit(choices) : "New Level Unit" : 0 = [ 0 : "No, keep current" 1 : "Yes, clear previous levels" ] ] // BaseClasses // 4 lines below added by Dmitrich! February 21, 2004 ;-) @BaseClass = Sequence [ sequence(integer) : "Animation Sequence (editor)" ] @BaseClass = Angles [ angles(string) : "Pitch Yaw Roll (X Y Z)" : "0 0 0" ] @BaseClass = Appearflags [ spawnflags(Flags) = [ 2048 : "Not in Deathmatch" : 0 ] ] @BaseClass = Master [ master(string) : "Master" ] @BaseClass = Target [ target(target_destination) : "Target" ] @BaseClass = Targetname [ targetname(target_source) : "Name" ] @BaseClass base(Target) = Targetx [ delay(string) : "Delay before trigger" : "0" killtarget(target_destination) : "KillTarget" ] @BaseClass = RenderFxChoices [ renderfx(choices) :"Render FX" : 0 = [ 0: "Normal" // Additive or Texture mode only. 1: "Slow Pulse" // Additive or Texture mode only. 2: "Fast Pulse" // Additive or Texture mode only. 3: "Slow Wide Pulse" // Additive or Texture mode only. 4: "Fast Wide Pulse" 9: "Slow Strobe" 10: "Fast Strobe" 11: "Faster Strobe" 12: "Slow Flicker" 13: "Fast Flicker" // These don't seem to do anything. Correct me if I'm wrong... // 5: "Slow Fade Away" // 6: "Fast Fade Away" // 7: "Slow Become Solid" // 8: "Fast Become Solid" // Constant Glow only affects the Glow rendermode. With this setting, Glow mode behaves // exactly like Additive mode - except that (as is usual for Glow mode) the sprite isn't // obscured by intervening sprites or models. (Hmm. Call me slow, but..... how is this useful?) 14: "Constant Glow (Sprites)" 15: "Distort (Models)" 16: "Hologram (Distort + fade)" // Strange effect. As seen, briefly, when a Gargantua dies. 17: "Dead Player" // kRenderFxDeadPlayer 18: "Explode" // kRenderFxExplode 19: "Glow Shell" // kRenderFxGlowShell 20 : "Clamp Min Scale" // kRenderFxClampMinScale 21 : "Light Multiplier" // kRenderFxLightMultiplier ] ] @BaseClass base(RenderFxChoices) = RenderFields [ rendermode(choices) : "Render Mode" : 0 = [ 0: "Normal - no light" // For BSP objects, the object will be rendered as a pure area of whatever // color is specified in FX Color. // For models and sprites, this is the same as Normal mode. 1: "Pure Color" // For BSP objects, the object will be rendered without shadows. // For models and sprites, this is the same as Normal mode, except that the Pulse // renderfx settings work. 2: "Texture - some light" // Like additive, but as the player gets further from the sprite, it gets // progressively larger and more transparent. The sprite is also not obscured by // intervening models, which can sometimes look bad. // Alphatest sprites won't use their masks in this mode. 3: "Glow (sprites only)" // For BSP objects, this only affects textures beginning with {. Blue pixels // will be transparent; non-blue pixels will be solid. // For models, this mode is the same as Normal mode. // For sprites, this mode is for displaying sprites in Indexalpha mode - i.e. // the palette positions are used as opacity settings; 0 for fully transparent, // and 255 for fully opaque, regardless of what the palette colors actually are. // The only palette colour that will be used is the last one, which sets the // colour for the whole sprite. (Needless to say, this will look odd unless the // sprite is designed to be displayed this way!) // Oddly, Alphatest sprites won't use their masks in this mode. 4: "Solid - no light" // Only bright parts of the object are visible; darker parts are just more // transparent, and black is not drawn. Useful for making lighting or hologram // effects. 5: "Additive" ] renderamt(integer) : "FX Amount (1 - 255)" : 255 rendercolor(color255) : "FX Color (R G B)" : "0 0 0" ] // LRCHLT Texture light additions // these will only work with advanced compiling tools that allow // switchable texture lighting. note that lighting used by // moveable entitys may be left behind! @BaseClass = TexLightType [ style(choices) : "Texture Light Style" : 0 = [ 0 : "Normal" -3: "Switch with TL@name" 1 : "Flicker A" 2 : "Slow, strong pulse" 3 : "Candle A" 4 : "Fast strobe" 5 : "Gentle pulse" 6 : "Flicker B" 7 : "Candle B" 8 : "Candle C" 9 : "Slow strobe" 10: "Fluorescent flicker" 11: "Slow pulse, noblack" 12: "underwater weird & buggy" ] ] @BaseClass = Global [ globalname(string) : "Global Entity Name" ] @BaseClass base(Targetname, Global, Target, RenderFields, Angles) = BaseTank [ // Mainly for use with 1009 team settings (game_team_master) master(string) : "(Team) Master" spawnflags(flags) = [ 1 : "Active" : 0 16: "Only Direct" : 0 32: "Controllable" : 0 ] yawrate(string) : "Yaw rate" : "30" yawrange(string) : "Yaw range" : "180" yawtolerance(string) : "Yaw tolerance" : "15" pitchrate(string) : "Pitch rate" : "0" pitchrange(string) : "Pitch range" : "0" pitchtolerance(string) : "Pitch tolerance" : "5" barrel(string) : "Barrel Length" : "0" barrely(string) : "Barrel Horizontal" : "0" barrelz(string) : "Barrel Vertical" : "0" spritesmoke(sprite) : "Smoke Sprite" : "" spriteflash(sprite) : "Flash Sprite" : "" spritescale(string) : "Sprite scale" : "1" rotatesound(sound) : "Rotate Sound" : "" firerate(string) : "Rate of Fire" : "1" bullet_damage(string) : "Damage Per Bullet" : "0" persistence(string) : "Firing persistence" : "1" firespread(choices) : "Bullet accuracy" : 0 = [ 0: "Perfect Shot" 1: "Small cone" 2: "Medium cone" 3: "Large cone" 4: "Extra-large cone" ] minRange(string) : "Minmum target range" : "0" maxRange(string) : "Maximum target range" : "0" _minlight(string) : "Minimum light level" ] @BaseClass base(Targetname, Global) = Breakable [ target(target_destination) : "Target on break" delay(string) : "Delay before fire" : "0" health(integer) : "Strength" : 1 material(choices) :"Material type" : 0 = [ // Gibs: models/glassgibs.mdl // Break noise: debris/bustglassX.wav // Bounce noise: debris/glassX.wav 0: "Glass" // Gibs: models/woodgibs.mdl // Break noise: debris/bustcrateX.wav // Bounce noise: debris/woodX.wav 1: "Wood" // Gibs: models/metalplategibs.mdl // Break noise: debris/bustmetalX.wav // Bounce noise: debris/metalX.wav 2: "Metal" // Gibs: models/fleshgibs.mdl // Break noise: debris/bustfleshX.wav // Bounce noise: debris/fleshX.wav 3: "Flesh" // Gibs: models/cindergibs.mdl // Break noise: debris/bustconcreteX.wav // Bounce noise: debris/concreteX.wav 4: "Cinder Block" // Gibs: models/ceilinggibs.mdl // Break noise: debris/bustceilingX.wav // Bounce noise: none 5: "Ceiling Tile" // Gibs: models/computergibs.mdl // Break noise: debris/bustmetalX.wav // Bounce noise: debris/woodX.wav // Note: Generates sparks when damaged. 6: "Computer" // Gibs: models/glassgibs.mdl // Break noise: debris/bustglassX.wav // Bounce noise: debris/glassX.wav // Note: Makes ricochet noises when damaged. 7: "Unbreakable Glass" // Gibs: models/rockgibs.mdl // Break noise: debris/bustconcreteX.wav // Bounce noise: debris/concreteX.wav 8: "Rocks" ] explosion(choices) : "Gibs Direction" : 0 = [ 0: "Random" 1: "Relative to Attack" ] gibmodel(studio) : "Gib Model" : "" spawnobject(choices) : "Spawn On Break" : 0 = [ 0: "Nothing" 1: "Battery" 2: "Healthkit" 9: "Shotgun Shells" ] explodemagnitude(integer) : "Explode Magnitude (0=none)" : 0 ] @BaseClass = BeamStartEnd [ LightningStart(target_destination) : "Start Entity" LightningEnd(target_destination) : "Ending Entity" ] @BaseClass base(Targetname, Global, Master, RenderFields, Angles, Appearflags) = Door [ target(target_destination) : "Target" // This delay only applies to the Target, not the Fire on Open/Close fields. delay(integer) : "Delay before fire" : 0 killtarget(target_destination) : "KillTarget" speed(integer) : "Speed" : 100 // The number against each sound corresponds to the wav file played. // e.g. Vacuum (4) plays "doors/doormove4.wav". movesnd(choices) : "Move Sound" : 0 = [ 0: "No Sound" 1: "Servo (Sliding)" 2: "Pneumatic (Sliding)" 3: "Pneumatic (Rolling)" 4: "Vacuum" 5: "Power Hydraulic" 6: "Large Rollers" 7: "Track Door" 8: "Snappy Metal Door" 9: "Squeaky 1" 10: "Squeaky 2" ] // The number against each sound corresponds to the wav file played. // e.g. Chunk (4) plays "doors/doorstop4.wav". stopsnd(choices) : "Stop Sound" : 0 = [ 0: "No Sound" 1: "Clang with brake" 2: "Clang reverb" 3: "Ratchet Stop" 4: "Chunk" 5: "Light airbrake" 6: "Metal Slide Stop" 7: "Metal Lock Stop" 8: "Snappy Metal Stop" ] // Setting wait to -1 also prevents the door from reversing when it comes into // contact with the player, as seen on the bunker door in Crossfire. wait(integer) : "delay before close, -1 stay open " : 4 lip(integer) : "Lip" : 0 dmg(integer) : "Damage inflicted when blocked" : 0 message(string) : "Message if triggered" netname(string) : "Fire on Close" health(integer) : "Health (shoot open)" : 0 spawnflags(flags) = [ 1 : "Starts Open" : 0 8 : "Passable" : 0 32: "Toggle" : 0 // Normally a named door, or a door with "use only" selected, won't open when touched. 256: "Use Only" : 0 1024: "Touch client only" : 0 ] locked_sound(choices) : "Locked Sound" : 0 = [ // The locked sound & sentence will be played if // The player walks into a door which has a name. // The number against each sound corresponds to the wav file played. // e.g. Buzz (10) plays "buttons/button10.wav". 0: "None" 2: "Access Denied" 8: "Small zap" 10: "Buzz" 11: "Buzz Off" 12: "Latch Locked" ] unlocked_sound(choices) : "Unlocked Sound" : 0 = [ // The unlocked sound & sentence will be played whenever a door starts to open and whenever // a button starts to push in. (They will never be played when a door starts to close, even if // "Toggle" is selected.) // // The number against each sound (except lightswitch) corresponds to the wav file played. // e.g. Buzz (10) plays "buttons/button10.wav". 0: "None" 1: "Big zap & Warmup" 3: "Access Granted" 4: "Quick Combolock" 5: "Power Deadbolt 1" 6: "Power Deadbolt 2" 7: "Plunger" 8: "Small zap" 9: "Keycard Sound" 10: "Buzz" 13: "Latch Unlocked" ] locked_sentence(choices) : "Locked Sentence" : 0 = [ // The letters correspond to the sentence group played (see sound/sentences.txt); // e.g. Blast Door (NF) will cycle through NF0, NF1 and NF3. 0: "None" 1: "Gen. Access Denied" 2: "Security Lockout" 3: "Blast Door" 4: "Fire Door" 5: "Chemical Door" 6: "Radiation Door" 7: "Gen. Containment" 8: "Maintenance Door" 9: "Broken Shut Door" ] unlocked_sentence(choices) : "Unlocked Sentence" : 0 = [ // The letters correspond to the sentence group played (see sound/sentences.txt); // e.g. Blast Door (EF) will cycle through EF0, EF1 and EF3. 0: "None" 1: "Gen. Access Granted" 2: "Security Disengaged" 3: "Blast Door" 4: "Fire Door" 5: "Chemical Door" 6: "Radiation Door" 7: "Gen. Containment" 8: "Maintenance area" ] _minlight(string) : "Minimum light level" ] @BaseClass base(Targetname, Angles) size(-16 -16 -16, 16 16 16) = gibshooterbase [ // how many pieces to create m_iGibs(integer) : "Number of Gibs" : 3 // delay (in seconds) between shots. If 0, all gibs shoot at once. delay(string) : "Delay between shots" : "0" // how fast the gibs are fired m_flVelocity(integer) : "Gib Velocity" : 200 // Course variance m_flVariance(string) : "Course Variance" : "0.15" // Time in seconds for gibs to live +/- 5% m_flGibLife(string) : "Gib Life" : "4" spawnflags(Flags) = [ 1 : "Repeatable" : 0 ] ] // Don't create a light whose name begins with "light" - a bug/feature in RAD means // that such a light won't be able to switch on and off. @BaseClass = Light [ _light(color255) : "Brightness" : "255 255 255 200" // This field will have no effect on a dynamic (i.e. named) light. style(Choices) : "Appearance (no name allowed)" : 0 = [ 0 : "Normal" 2 : "Slow, strong pulse" 5 : "Gentle pulse" 1 : "Flicker A" 6 : "Flicker B" 3 : "Candle A" 7 : "Candle B" 8 : "Candle C" 4 : "Fast strobe" 9 : "Slow strobe" 10: "Fluorescent flicker" 11: "Slow pulse, noblack" ] // This field will have no effect on a static (i.e. nameless) light. 'a' is dark, 'm' is normal brightness, 'z' is full brightness. // There's no support for a light to have a custom appearances when it's in a // state other than 'on'. See trigger_lightstyle if you need this effect. pattern(string) : "Custom Appearance" _fade(string) : "Fade (ZHLT Only)" : "1.0" _falloff(Choices) : "Falloff (ZHLT Only)" : 0 = [ 0 : "Default" 1 : "Inverse Linear" 2 : "Inverse Square" ] spawnflags(Flags) = [ 1 : "Initially dark" : 0 ] ] @BaseClass = PlatSounds [ movesnd(choices) : "Move Sound" : 0 = [ 0: "No Sound" 1: "big elev 1" // plats/bigmove1.wav 2: "big elev 2" // plats/bigmove2.wav 3: "tech elev 1" // plats/elevmove1.wav 4: "tech elev 2" // plats/elevmove2.wav 5: "tech elev 3" // plats/elevmove3.wav 6: "freight elev 1" // plats/freightmove1.wav 7: "freight elev 2" // plats/freightmove2.wav 8: "heavy elev" // plats/heavymove1.wav 9: "rack elev" // plats/rackmove1.wav 10: "rail elev" // plats/railmove1.wav 11: "squeek elev" // plats/squeekmove1.wav 12: "odd elev 1" // plats/talkmove1.wav 13: "odd elev 2" // plats/talkmove2.wav ] stopsnd(choices) : "Stop Sound" : 0 = [ 0: "No Sound" 1: "big elev stop1" // plats/bigstop1.wav 2: "big elev stop2" // plats/bigstop2.wav 3: "freight elev stop" // plats/freightstop1.wav 4: "heavy elev stop" // plats/heavystop2.wav 5: "rack stop" // plats/rackstop1.wav 6: "rail stop" // plats/railstop1.wav 7: "squeek stop" // plats/squeekstop1.wav 8: "quick stop" // plats/talkstop1.wav ] volume(string) : "Sound Volume 0.0 - 1.0" : "0.85" ] @BaseClass size(-16 -16 -36, 16 16 36) color(0 255 0) base(Angles, Appearflags) = PlayerClass [] @BaseClass base(Targetname, Global, RenderFields, PlatSounds) = Trackchange [ // height is the distance the track/train will move. By default, the track starts in its top position // and goes downward (This can be changed in the Flags section #8). height(integer) : "Travel altitude" : 0 spawnflags(flags) = [ // Auto activate and relink may not be funcional 1: "Auto Activate train" : 0 2: "Relink track" : 0 8: "Start at Bottom" : 0 16: "Rotate Only" : 0 64: "X Axis" : 0 128: "Y Axis" : 0 ] // rotation is the amount in degrees the track will turn to line up with the new track. rotation(integer) : "Spin amount" : 0 train(target_destination) : "Train to switch" // toptrack is the Name (targetname) of the last path_corner-track in the upper area, or last area, of the track. toptrack(target_destination) : "Top track" // bottomtrack is the Name (targetname) of the first path_corner-track in the lower area, or next area, of the track bottomtrack(target_destination) : "Bottom track" // speed is the speed in units per second that the track platform will move downward. // (If the #16 Rotate Only flag is set, this is just the speed of rotation). speed(integer) : "Move/Rotate speed" : 0 // // The first path_track-corner should not have a Next stop target (target). Instead, where it says Fire on // dead end (netname), enter a value equal to the Name (targetname) of the func_trackautochange. Now, when // the train reaches the path_track-corner, it will stop, then activate the func_trackautochange. // When the it gets to the bottom, the train will continue on to the next path_track-corner defined // by Bottom track (bottomtrack) in the func_trackautochange properties. // ] @BaseClass base(Targetname, Master, Target) = Trigger [ delay(string) : "Delay before trigger" : "0" killtarget(target_destination) : "Kill target" netname(target_destination) : "Target Path" // style commented out, seems to serve no purpose besides adding // to the lightdata load. // style(integer) : "Style" : 32 message(string) : "Message (set sound too)" spawnflags(flags) = [ 1: "Monsters" : 0 2: "No Players, entity only" : 0 4: "Pushables" : 0 64: "No reset on New Round" : 0 ] ] @BaseClass size(-16 -16 0, 16 16 32) color(0 0 200) base(Targetname, Appearflags, Angles) = Weapon [] @BaseClass = ZHLT [ zhlt_lightflags(choices) :"Light Flags (Zhlt 2.2+)" : 0 = [ 0: "Normal" 1: "Embedded Fix" 2: "Opaque (Blocks Light)" 3: "Opaque + Embedded Fix" 6: "Opaque + Concave Fix" ] light_origin(string) : "Light Origin (Zhlt 2.2+)" zhlt_noclip(choices) :"Noclip Object (Zhlt 2.5+)" : 0 = [ 0: "No" 1: "Yes" ] ] @PointClass base(Targetname) iconsprite("sprites/CS/ambient_generic.spr") = ambient_generic : "Universal sound Ambient" [ message(sound) : "Path/filename.wav of WAV" health(integer) : "Volume (10 = loudest)" : 10 preset(choices) :"Dynamic Presets" : 0 = [ 0: "None" 1: "Huge Machine" 2: "Big Machine" 3: "Machine" 4: "Slow Fade in" 5: "Fade in" 6: "Quick Fade in" 7: "Slow Pulse" 8: "Pulse" 9: "Quick pulse" 10: "Slow Oscillator" 11: "Oscillator" 12: "Quick Oscillator" 13: "Grunge pitch" 14: "Very low pitch" 15: "Low pitch" 16: "High pitch" 17: "Very high pitch" 18: "Screaming pitch" 19: "Oscillate spinup/down" 20: "Pulse spinup/down" 21: "Random pitch" 22: "Random pitch fast" 23: "Incremental Spinup" 24: "Alien" 25: "Bizzare" 26: "Planet X" 27: "Haunted" ] volstart(integer) : "Start Volume" : 0 fadein(integer) : "Fade in time (0-100)" : 0 fadeout(integer) : "Fade out time (0-100)" : 0 // main pitch frequency pitch(integer) : "Pitch (> 100 = higher)" : 100 // begin pitch pitchstart(integer) : "Start Pitch" : 100 // how fast to change from begin pitch to main pitch. spinup(integer) : "Spin up time (0-100)" : 0 // how fast to go back down from main pitch to nothing. spindown(integer) : "Spin down time (0-100)" : 0 // LFO = low frequency oscillator. // type of sound wave, sqr will jump back and forth between low and high pitch, tri has sharp transitions, and rnd has smooth transitions. lfotype(integer) : "LFO type 0)off 1)sqr 2)tri 3)rnd" : 0 // rate is the frequency (how often the LFO effect repeats itself). lforate(integer) : "LFO rate (0-1000)" : 0 // how much pitch change, This effect is commonly called "vibrato" in music and song. lfomodpitch(integer) : "LFO mod pitch (0-100)" : 0 // how strong a "pulse" of volume rather than a wavering pitch. lfomodvol(integer) : "LFO mod vol (0-100)" : 0 // cspinup is unknown to me. cspinup(integer) : "Incremental spinup count" : 0 spawnflags(flags) = [ 1: "Play Everywhere" : 0 // small is <~800 units range 2: "Small Radius" : 0 // Medium is the default radius, so ticking this does nothing. <~1250 units 4: "Medium Radius" : 1 // large is <~2000 units range 8: "Large Radius" : 0 16:"Start Silent":0 32:"Not Toggled":0 ] ] @BaseClass base(RenderFields) = ArmouryEntity [ item(choices) : "Item" : 0 = [ 0: "weapon_mp5navy" 1: "weapon_tmp" 2: "weapon_p90" 3: "weapon_mac10" 4: "weapon_ak47" 5: "weapon_sg552" 6: "weapon_m4a1" 7: "weapon_aug" 8: "weapon_scout" 9: "weapon_g3sg1" 10: "weapon_awp" 11: "weapon_m3" 12: "weapon_xm1014" 13: "weapon_m249" 14: "weapon_flashbang" 15: "weapon_hegrenade" 16: "item_kevlar" 17: "item_assaultsuit" 18: "weapon_smokegrenade" 19: "weapon_shield" 20: "weapon_famas" 21: "weapon_sg550" 22: "weapon_galil" 23: "weapon_ump45" 24: "weapon_glock18" 25: "weapon_usp" 26: "weapon_elite" 27: "weapon_fiveseven" 28: "weapon_p228" 29: "weapon_deagle" ] // note: count always resets to only one item after first round count(integer) : "Count" : 1 ] @PointClass base(ArmouryEntity) iconsprite("sprites/CS/armoury_entity.spr") size(-16 -16 0, 16 16 16) = armoury_entity : "Items in the armoury" [ ] // line below edited by Dmitrich! --> // was: @PointClass base(Targetname, Angles, RenderFields) size(-16 -16 0, 16 16 72) iconsprite("sprites/CS/cycler.spr") = cycler : "Monster Cycler" @PointClass base(Targetname, Angles, Sequence) size(-16 -16 0, 16 16 72) studio() = cycler : "Monster Cycler" [ model(studio) : "Model" body(integer) : "Skin" : 0 skin(integer) : "Body" : 0 ] // line below edited by Dmitrich! --> // was: @PointClass base(Targetname, Angles, RenderFields) iconsprite("sprites/CS/cycler_sprite.spr") = cycler_sprite : "Sprite Cycler" @PointClass base(Targetname, Angles, RenderFields) size(-16 -16 0, 16 16 72) studio() = cycler_sprite : "Sprite Cycler" [ model(sprite) : "Sprite name" : "" model(studio) : "Model name" : "" scale(string) : "Scale (Sprites only)" : "1.0" body(integer) : "Skin (Models only)" : 0 skin(integer) : "Body (Models only)" : 0 sequence(integer) : "Animation # sequence (Models only)" : 0 framerate(string) : "Frames per second" : "10.0" ] @PointClass sprite() base(Targetname, Angles, RenderFields) size(-4 -4 -4, 4 4 4) iconsprite("sprites/CS/cycler_wreckage.spr") = cycler_wreckage : "Wreckage" [ model(sprite) : "Sprite Name" : "sprites/dot.spr" framerate(string) : "Framerate" : "10.0" scale(string) : "Scale" : "1.0" spawnflags(flags) = [ 32: "Toggle" : 0 64: "Start ON" : 0 ] ] // Environmental effects // the beam can lead to network lag due to continous changing animation. @PointClass base(Targetname, BeamStartEnd, RenderFxChoices) size(-16 -16 -16, 16 16 16) iconsprite("sprites/CS/env_beam.spr") = env_beam : "Energy Beam Effect" [ renderamt(integer) : "Brightness (1 - 255)" : 100 rendercolor(color255) : "Beam Color (R G B)" : "0 0 0" // If you only give the beam one endpoint, then radius will specifies how // far away the other endpoint should be (randomly) placed. Radius(integer) : "Radius" : 256 life(string) : "Life (seconds 0 = infinite)" : "1" BoltWidth(integer) : "Width of beam (pixels*0.1 0-255)" : 20 NoiseAmplitude(integer) : "Amount of noise (0-255)" : 0 texture(sprite) : "Sprite Name" : "sprites/laserbeam.spr" TextureScroll(integer) : "Texture Scroll Rate (0-100)" : 35 framerate(integer) : "Frames per 10 seconds" : 0 framestart(integer) : "Starting Frame" : 0 StrikeTime(string) : "Strike again time (secs)" : "1" damage(string) : "Damage / second" : "0" spawnflags(flags) = [ // This is the default unless you specify a name. 1 : "Start On" : 0 2 : "Toggle" : 0 4 : "Random Strike" : 0 // Makes the beam form a circle, with a diameter that stretches between the two endpoints. // For some unknown reason, both endpoints must have a model. // NB: because the beam will stretch between the origins of the two entities, you'll // need to give each endpoint an origin brush. 8 : "Ring" : 0 16: "StartSparks" : 0 32: "EndSparks" : 0 64: "Decal End" : 0 // The beam fades in from nothing, like a tracer bullet. 128: "Fade Start" : 0 256: "Fade End" : 0 ] ] @PointClass base(Targetname, Angles) size(-4 -4 -4, 4 4 4) = env_beverage : "Beverage Dispenser" [ health(integer) : "Capacity" : 10 skin(choices) : "Beverage Type" : 0 = [ 0 : "Coca-Cola" 1 : "Sprite" 2 : "Diet Coke" 3 : "Orange" 4 : "Surge" 5 : "Moxie" 6 : "Random" ] ] @PointClass base(Targetname, Angles) size(-16 -16 -16, 16 16 16) color(255 0 0) iconsprite("sprites/CS/env_blood.spr") = env_blood : "Blood Effects" [ color(choices) : "Blood Color" : 0 = [ 0 : "Black/White blood with yellow decals" 1 : "Yellow blood with yellow decals" 2 : "Red blood with red decals" ] amount(string) : "Amount of blood (damage to simulate)" : "100" spawnflags(flags) = [ 1: "Random Direction" : 0 2: "Blood Stream" : 0 4: "On Player" : 0 8: "Spray decals" : 0 ] ] // Bubbles cannot drift sideways with this entity; use an env_model and // "valve/models/pipe_bubbles.mdl" instead. @SolidClass base(Targetname) = env_bubbles : "Bubble Volume" [ density(integer) : "Bubble density" : 2 frequency(integer) : "Bubble frequency" : 2 current(integer) : "Speed of Current" : 0 spawnflags(Flags) = [ 1 : "Start Off" : 0 ] ] @PointClass base(Targetname) size(-16 -16 -16, 16 16 16) iconsprite("sprites/CS/env_explosion.spr") = env_explosion : "Explosion" [ iMagnitude(Integer) : "Magnitude" : 100 spawnflags(flags) = [ 1: "No Damage" : 0 2: "Repeatable" : 0 4: "No Fireball" : 0 8: "No Smoke" : 0 16: "No Decal" : 0 32: "No Sparks" : 0 ] ] @PointClass base(Targetname) size(-16 -16 -16, 16 16 16) = env_funnel : "Large Portal Funnel" [ spawnflags(flags) = [ 1: "Reverse" : 0 ] ] @PointClass base(Targetname) iconsprite("sprites/CS/env_global.spr") color(255 255 128) = env_global : "Global State" [ globalstate(string) : "Global State to Set" triggermode(choices) : "Trigger Mode" : 0 = [ 0 : "Off" 1 : "On" 2 : "Dead" 3 : "Toggle" ] initialstate(choices) : "Initial State" : 0 = [ 0 : "Off" 1 : "On" 2 : "Dead" ] spawnflags(flags) = [ 1 : "Set Initial State" : 0 ] ] @PointClass sprite() base(Targetname, RenderFields) size(-4 -4 -4, 4 4 4) color(30 100 0) iconsprite("sprites/CS/env_glow.spr") = env_glow : "Light Glow/Haze" [ model(sprite) : "model" : "sprites/glow01.spr" scale(integer) : "Sprite Scale" : 1 ] @PointClass base(Targetname) iconsprite("sprites/CS/env_fade.spr") = env_fade : "Screen Fade" [ spawnflags(flags) = [ 1: "Fade From" : 0 2: "Modulate" : 0 4: "Activator Only" : 0 ] duration(string) : "Duration (seconds)" : "2" holdtime(string) : "Hold Fade (seconds)" : "0" renderamt(integer) : "Fade Alpha" : 255 rendercolor(color255) : "Fade Color (R G B)" : "0 0 0" ] @PointClass base(Targetname) = env_fog : "Global Fog Properties" [ density(string) : "Fog density" : "0.0005" rendercolor(color255) : "Fog Color (R G B)" : "255 255 255" ] @PointClass base(Targetname) iconsprite("sprites/CS/env_rain.spr") = env_rain : "rain Properties" [ ] @PointClass base(Targetname) = env_snow : "snow Properties" [ ] @PointClass base(Targetname) = env_lighting : "lightning Properties" [ fadein(integer) : "Fade in time" : 0 holdtime(string) : "Hold time (0 = permanent)" : "0" fadeout(integer) : "Fade out time" : 0 startdist(integer) : "lightning start position" : 0 enddist(integer) : "lighting end position" : 1000 rendercolor(color255) : "lightning Color (R G B)" : "255 255 255" spawnflags(flags) = [ 1 : "Start active" : 0 ] ] // may cause network lag due to changing animation. @PointClass base(Targetname, RenderFxChoices, Angles) size(-16 -16 -16, 16 16 16) iconsprite("sprites/CS/env_laser.spr") = env_laser : "Laser Beam Effect" [ LaserTarget(target_destination) : "Target of Laser" renderamt(integer) : "Brightness (1 - 255)" : 100 rendercolor(color255) : "Beam Color (R G B)" : "0 0 0" width(integer) : "Width of beam (pixels*0.1 0-255)" : 20 NoiseAmplitude(integer) : "Amount of noise (0-255)" : 0 texture(sprite) : "Sprite Name" : "sprites/laserbeam.spr" EndSprite(sprite) : "End Sprite" : "" TextureScroll(integer) : "Texture Scroll Rate (0-100)" : 35 framestart(integer) : "Starting Frame" : 0 damage(string) : "Damage / second" : "100" spawnflags(flags) = [ 1 : "Start On" : 0 16: "StartSparks" : 0 32: "EndSparks" : 0 64: "Decal End" : 0 ] ] @PointClass base(Targetname, Target) iconsprite("sprites/CS/env_message.spr") = env_message : "HUD Text Message" [ message(string) : "Message Name" spawnflags(flags) = [ 1: "Play Once" : 0 2: "All Clients" : 0 ] messagesound(sound) : "Sound effect" messagevolume(string) : "Volume 0-10" : "10" messageattenuation(Choices) : "Sound Radius" : 0 = [ 0 : "Small Radius" // small is <~800 units range 1 : "Medium Radius" // medium is <~1250 units range 2 : "Large Radius" // large is <~2000 units range 3 : "Play Everywhere" ] ] @PointClass base(Targetname, Target, RenderFields) size(-16 -16 -16, 16 16 16) color(100 100 0) iconsprite("sprites/CS/env_render.spr") = env_render : "Render Controls" [ spawnflags(flags) = [ 1: "No Renderfx" : 0 2: "No Renderamt" : 0 4: "No Rendermode" : 0 8: "No Rendercolor" : 0 ] ] @PointClass base(Targetname) = env_shake : "Screen Shake" [ spawnflags(flags) = [ 1: "GlobalShake" : 0 ] amplitude(string) : "Amplitude 0-16" : "4" radius(string) : "Effect radius" : "500" duration(string) : "Duration (seconds)" : "1" frequency(string) : "0.1 = jerk, 255.0 = rumble" : "2.5" ] @PointClass base(gibshooterbase, RenderFields) size(-16 -16 -16, 16 16 16) = env_shooter : "Model Shooter" [ shootmodel(studio) : "Model" : "" shootsounds(choices) :"Material Sound" : -1 = [ -1: "None" 0: "Glass" // debris/glass1-4.wav 1: "Wood" // debris/wood1-4.wav 2: "Metal" // debris/metal1-6.wav 3: "Flesh" // debris/flesh1-7.wav 4: "Concrete" // debris/concrete1-3.wav ] scale(string) : "Gib Scale" : "" skin(integer) : "Gib Skin" : 0 ] @PointClass base(Targetname) size(-4 -4 -4, 4 4 4) color(30 100 0) iconsprite("sprites/CS/env_smoker.spr") = env_smoker : "Smoke" [ health(integer) : "Strength" : 1 scale(integer) : "Smoke Scale" : 1 ] // this changes sound for the player UNTIL IT IS RESET by another env sound. make sure you reset it! @PointClass iconsprite("sprites/CS/env_sound.spr") = env_sound : "DSP Sound" [ radius(integer) : "Radius" : 128 roomtype(Choices) : "Room Type" : 0 = [ 0 : "Normal (off)" 1 : "Generic" 2 : "Metal Small" 3 : "Metal Medium" 4 : "Metal Large" 5 : "Tunnel Small" 6 : "Tunnel Medium" 7 : "Tunnel Large" 8 : "Chamber Small" 9 : "Chamber Medium" 10: "Chamber Large" 11: "Bright Small" 12: "Bright Medium" 13: "Bright Large" 14: "Water 1" 15: "Water 2" 16: "Water 3" 17: "Concrete Small" 18: "Concrete Medium" 19: "Concrete Large" 20: "Big 1" 21: "Big 2" 22: "Big 3" 23: "Cavern Small" 24: "Cavern Medium" 25: "Cavern Large" 26: "Weirdo 1" 27: "Weirdo 2" 28: "Weirdo 3" ] ] @PointClass base(Targetname, Angles) size(-16 -16 -16, 16 16 16) iconsprite("sprites/CS/env_spark.spr") = env_spark : "Spark" [ MaxDelay(string) : "Max Delay" : "0" spawnflags(flags) = [ 32: "Toggle" : 0 64: "Start ON" : 0 ] ] @PointClass sprite() base(Targetname, Angles, RenderFields) size(-4 -4 -4, 4 4 4) = env_sprite : "Still Sprite Effect" [ framerate(string) : "Framerate" : "10.0" model(sprite) : "Sprite Name" : "sprites/glow01.spr" scale(integer) : "Scale" : 1 spawnflags(flags) = [ 1: "Start on" : 0 2: "Play Once" : 0 ] ] // game entities (requires Half-Life 1.0.0.9) @PointClass base(Targetname, Master, Targetx) iconsprite("sprites/CS/game_counter.spr") = game_counter : "Fires when it hits limit" [ spawnflags(flags) = [ 1: "Remove On fire" : 0 2: "Reset On fire" : 1 4: "Fire if over limit" : 1 ] frags(integer) : "Initial Value" : 0 health(integer) : "Limit Value" : 10 ] @PointClass base(Targetname, Master, Target) iconsprite("sprites/CS/game_counter_set.spr") = game_counter_set : "Sets a game_counter" [ spawnflags(flags) = [ 1: "Remove On fire" : 0 ] frags(integer) : "New Value" : 10 ] @PointClass base(Targetname) iconsprite("sprites/CS/game_end.spr") = game_end : "End this multiplayer game" [ master(string) : "Master" ] // buggy entity, must use with weapon strip to avoid giving duplicate // weapons to a player and causing a crash. @PointClass base(Targetname) iconsprite("sprites/CS/game_player_equip.spr") = game_player_equip : "Initial player equipment" [ master(string) : "Team Master" spawnflags(flags) = [ 1: "Use Only" : 0 2: "Remove Weapons" : 0 ] weapon_knife (choices) : "Give Knife" : 0 = [ 0: "No" 1: "Yes" ] weapon_usp (choices) : "Give USP45 (45acp Calibre)" : 0 = [ 0: "No" 1: "Yes" ] weapon_glock18 (choices) : "Give Glock 18 (9mm Calibre)" : 0 = [ 0: "No" 1: "Yes" ] weapon_deagle (choices) : "Give Desert Eagle (50ae Calibre)" : 0 = [ 0: "No" 1: "Yes" ] weapon_p228 (choices) : "Give P-228 (357sig Calibre)" : 0 = [ 0: "No" 1: "Yes" ] weapon_elite (choices) : "Give Beretta Elites (9mm Calibre)" : 0 = [ 0: "No" 1: "Yes" ] weapon_fiveseven (choices) : "Give Five-Seven (57mm Calibre)" : 0 = [ 0: "No" 1: "Yes" ] weapon_m3 (choices) : "Give Benelli M3 (12 Gauge)" : 0 = [ 0: "No" 1: "Yes" ] weapon_xm1014 (choices) : "Give Benelli XM1014 (12 Gauge)" : 0 = [ 0: "No" 1: "Yes" ] weapon_mp5navy (choices) : "Give MP5/Navy (9mm Calibre)" : 0 = [ 0: "No" 1: "Yes" ] weapon_tmp (choices) : "Give TMP (9mm Calibre)" : 0 = [ 0: "No" 1: "Yes" ] weapon_p90 (choices) : "Give FN P90 (57mm Calibre)" : 0 = [ 0: "No" 1: "Yes" ] weapon_mac10 (choices) : "Give Mac-10 (45acp Calibre)" : 0 = [ 0: "No" 1: "Yes" ] weapon_ump45 (choices) : "Give UMP 45 (45acp Calibre)" : 0 = [ 0: "No" 1: "Yes" ] weapon_ak47 (choices) : "Give AK-47 (762nato Calibre)" : 0 = [ 0: "No" 1: "Yes" ] weapon_sg552 (choices) : "Give SG552 (556nato Calibre)" : 0 = [ 0: "No" 1: "Yes" ] weapon_m4a1 (choices) : "Give M4A1 (556nato Calibre)" : 0 = [ 0: "No" 1: "Yes" ] weapon_aug (choices) : "Give Aug (556nato Calibre)" : 0 = [ 0: "No" 1: "Yes" ] weapon_scout (choices) : "Give Scout (762nato Calibre)" : 0 = [ 0: "No" 1: "Yes" ] weapon_awp (choices) : "Give AWP (338magnum Calibre)" : 0 = [ 0: "No" 1: "Yes" ] weapon_g3sg1 (choices) : "Give G3/SG-1 (762nato Calibre)" : 0 = [ 0: "No" 1: "Yes" ] weapon_sg550 (choices) : "Give SG550 (556nato Calibre)" : 0 = [ 0: "No" 1: "Yes" ] weapon_m249 (choices) : "Give M249 (556natobox Calibre)" : 0 = [ 0: "No" 1: "Yes" ] weapon_famas (choices) : "CS 1.6 Famas (556nato Calibre)" : 0 = [ 0: "No" 1: "Yes" ] weapon_galil (choices) : "CS 1.6 Galil (556natobox Calibre)" : 0 = [ 0: "No" 1: "Yes" ] weapon_shield (choices) : "CS 1.6 Police Riot Shield" : 0 = [ 0: "No" 1: "Yes" ] item_kevlar (choices) : "Give Kevlar Vest" : 0 = [ 0: "No" 1: "Yes" ] item_assaultsuit (choices) : "Give Kevlar Vest+Ballistic Helmet" : 0 = [ 0: "No" 1: "Yes" ] weapon_flashbang (choices) : "Give Flash Bang" : 0 = [ 0: "No" 1: "1" 2: "2" ] weapon_hegrenade (choices) : "Give High-Explosive Grenade" : 0 = [ 0: "No" 1: "Yes" ] weapon_smokegrenade (choices) : "Give Smoke Grenade" : 0 = [ 0: "No" 1: "Yes" ] item_thighpack (choices) : "Give Defuse Kit" : 0 = [ 0: "No" 1: "Yes" ] weapon_c4 (choices) : "Give C4 Plastique Bomb" : 0 = [ 0: "No" 1: "Yes" ] ammo_9mm (choices) : "Give 9mm Parabellum Ammo" : 0 = [ 0: "No" 1: "1 Clip (30 Bullets Per Clip)" 2: "2 Clips" 3: "3 Clips" 4: "4 Clips (Fill Elites, MP5, TMP, Glock 18)" ] ammo_45acp (choices) : "Give .45 ACP Ammo" : 0 = [ 0: "No" 1: "1 Clip (12 Bullets Per Clip)" 2: "2 Clips" 3: "3 Clips" 4: "4 Clips" 5: "5 Clips" 6: "6 Clips" 7: "7 Clips" 8: "8 Clips" 9: "9 Clips (Fill UMP 45, Mac-10, USP45)" ] ammo_50ae (choices) : "Give .50 Deagle Ammo" : 0 = [ 0: "No" 1: "1 Clip (7 Bullets Per Clip)" 2: "2 Clips" 3: "3 Clips" 4: "4 Clips" 5: "5 Clips (Fill Desert Eagle)" ] ammo_57mm (choices) : "Give 5.7mm Ammo" : 0 = [ 0: "No" 1: "1 Clip (50 Bullets Per Clip)" 2: "2 Clips (Fill Five-Seven, P90)" ] ammo_357sig (choices) : "Give .357 SIG Ammo" : 0 = [ 0: "No" 1: "1 Clip (13 Bullets Per Clip)" 2: "2 Clips" 3: "3 Clips" 4: "4 Clips (Fill P-228)" ] ammo_buckshot (choices) : "Give 12 Gauge Ammo" : 0 = [ 0: "No" 1: "1 Clip (8 Shells Per Clip)" 2: "2 Clips" 3: "3 Clips" 4: "4 Clips (Fill Benelli M3, XM1014)" ] ammo_762nato (choices) : "Give 7.62mm NATO Ammo" : 0 = [ 0: "No" 1: "1 Clip (30 Bullets Per Clip)" 2: "2 Clips" 3: "3 Clips (Fill AK-47, Scout, G3/S-G1)" ] ammo_556nato (choices) : "Give 5.56mm NATO Ammo" : 0 = [ 0: "No" 1: "1 Clip (30 Bullets Per Clip)" 2: "2 Clips" 3: "3 Fill SG552, M4A1, Aug, SG550, Famas" ] ammo_556natobox (choices) : "Give 5.56mm NATO Box Ammo" : 0 = [ 0: "No" 1: "1 Clip (30 Bullets Per Clip)" 2: "2 Clips" 3: "3 Clips" 4: "4 Clips" 5: "5 Clips" 6: "6 Clips" 7: "7 Clips (Fill FN M249 Para)" ] ammo_338magnum (choices) : "Give .338 AWP Ammo" : 0 = [ 0: "No" 1: "1 Clip (10 Bullets Per Clip)" 2: "2 Clips" 3: "3 Clips (Fill AWP)" ] item_healthkit (choices) : "Give Health Kit" : 0 = [ 0: "No" 1: "1 Healthkit = 15 Health Points" 2: "2 Healthkits = 30 Health Points" 3: "3 Healthkits = 45 Health Points" 4: "4 Healthkits = 60 Health Points" 5: "5 Healthkits = 75 Health Points" 6: "6 Healthkits = 90 Health Points" 7: "7 Healthkits = 100 Health Points" ] item_battery (choices) : "Give HL HEV Battery" : 0 = [ 0: "No" 1: "1 Battery = 15 Kevlar Points" 2: "2 Batteries = 30 Kevlar Points" 3: "3 Batteries = 45 Kevlar Points" 4: "4 Batteries = 60 Kevlar Points" 5: "5 Batteries = 75 Kevlar Points" 6: "6 Batteries = 90 Kevlar Points" 7: "7 Batteries = 100 Kevlar Points" ] item_longjump (choices) : "Give HL Long Jump Module" : 0 = [ 0: "No" 1: "Yes (An Unrealistic Item)" ] ] @PointClass base(Targetname) iconsprite("sprites/CS/game_player_hurt.spr") = game_player_hurt : "Hurts player who fires" [ master(string) : "Master" dmg(string) : "Damage To Apply" : "999" spawnflags(flags) = [ 1: "Remove On fire" : 0 ] ] @PointClass base(Targetname) iconsprite("sprites/CS/game_player_team.spr") = game_player_team : "Allows player to change teams" [ master(string) : "Master" spawnflags(flags) = [ 1 : "Remove On fire" : 0 2 : "Kill Player" : 0 4 : "Gib Player" : 0 ] target(string) : "game_team_master to use" ] @PointClass base(Targetname) iconsprite("sprites/CS/game_score.spr") = game_score : "Award/Deduct Points" [ master(string) : "Master" spawnflags(flags) = [ 1: "Allow Negative" : 0 2: "Team Points" : 0 ] points(integer) : "Points to add (+/-)" : 1 ] @PointClass base(Targetname, Master, Targetx) iconsprite("sprites/CS/game_team_master.spr") = game_team_master : "Team based master/relay" [ spawnflags(flags) = [ 1: "Remove On fire" : 0 ] triggerstate(choices) : "Trigger State" : 0 = [ 0: "Off" 1: "On" 2: "Toggle" ] teamindex(choices) : "Team" : -1 = [ -1: "No Team" 1: "Terrorist" 2: "Counter-terrorist" 3: "Specator" ] ] @PointClass base(Targetname, Master, Targetx) iconsprite("sprites/CS/game_team_set.spr") = game_team_set : "Sets team of team_master" [ spawnflags(flags) = [ 1: "Remove On fire" : 0 ] ] @PointClass base(Targetname, Master, Target) iconsprite("sprites/CS/game_text.spr") = game_text : "HUD Text Message" [ spawnflags(flags) = [ 1: "All Players" : 0 ] message(string) : "Message Text (79 Char. Limit)" x(string) : "X (0 - 1.0 = left to right) (-1 centers)" : "-1" y(string) : "Y (0 - 1.0 = top to bottom) (-1 centers)" : "-1" effect(Choices) : "Text Effect" : 0 = [ 0 : "Fade In/Out" 1 : "Credits" 2 : "Scan Out" ] color(color255) : "Color1" : "100 100 100" color2(color255) : "Color2" : "240 110 0" fadein(string) : "Fade in Time (or character scan time)" : "1.5" fadeout(string) : "Fade Out Time" : "0.5" holdtime(string) : "Hold Time" : "1.2" fxtime(string) : "Scan time (scan effect only)" : "0.25" channel(choices) : "Text Channel" : 1 = [ 1 : "Channel 1" 2 : "Channel 2" 3 : "Channel 3" 4 : "Channel 4" ] ] @SolidClass base(Targetname) iconsprite("sprites/CS/game_zone_player.spr") = game_zone_player : "Player Zone brush" [ spawnflags(Flags) = [ 1 : "Ignore Dead Players" : 0 ] intarget(target_destination) : "Target for IN players" outtarget(target_destination) : "Target for OUT players" incount(target_destination) : "Counter for IN players" outcount(target_destination) : "Counter for OUT players" // master(string) : "Master" ] @PointClass base(gibshooterbase) iconsprite("sprites/CS/gibshooter.spr") = gibshooter : "Gib Shooter" [] @PointClass iconsprite("sprites/CS/hostage_entity.spr") base(PlayerClass, RenderFields) = hostage_entity : "Hostage" [ model(studio) : "Model" : "models/hostage.mdl" skin(choices) : "Skin" : 0 = [ 0: "Orange Suit Worker" 1: "Shirt & Tie" ] body(choices) : "Body type if scientist model" : 0 = [ -1: "random" 0: "default none" 1: "einstien" 2: "negro" 3: "caucasian" 4: "glasses" ] ] // Info entities @PointClass iconsprite("sprites/CS/info_bomb_target.spr") = info_bomb_target : "Bomb target point" [] // Here was Dmitrich! 21-02-2004 :-) @PointClass size(-8 -8 0, 8 8 32) = info_compile_parameters : "Compile Options" [ hlcsg(choices) : "HLCSG" : 1 = [ 1 : "Normal" 2 : "Onlyents" 0 : "Off" ] hlbsp(choices) : "HLBSP" : 1 = [ 0 : "Off" 1 : "Normal" 2 : "Leakonly" ] hlvis(choices) : "HLVIS" : 2 = [ 0 : "Off" 1 : "Fast" 2 : "Normal" 3 : "Full" ] hlrad(choices) : "HLRAD" : 1 = [ 0 : "Off" 1 : "Normal" 2 : "Extra" ] texdata(string) : "Texture Data Memory (in KB)" : "4096" estimate(choices) : "Estimate Compile Times?" : 0 = [ 0: "Yes" 1: "No" ] bounce(integer) : "Number of radiosity bounces" : 0 ambient(string) : "Ambient world light (0.0 to 1.0, R G B)" : "0 0 0" smooth(integer) : "Smoothing threshold (in degrees)" : 0 dscale(integer) : "Direct Lighting Scale" : 1 chop(integer) : "Chop Size" : 64 texchop(integer) : "Texture Light Chop Size" : 32 hullfile(string) : "Custom Hullfile" priority(choices) : "Priority Level" : 0 = [ 0 : "Normal" 1 : "High" -1 : "Low" ] wadautodetect(choices) : "Wad Auto Detect" : 0 = [ 0 : "Off" 1 : "On" ] wadconfig(string) : "Custom Wad Configuration" : "" verbose(choices) : "Verbose compile messages" : 0 = [ 0 : "Off" 1 : "On" ] noclipeconomy(choices) : "Strip Uneeded Clipnodes?" : 1 = [ 1 : "Yes" 0 : "No" ] nocliphull(choices) : "Generate clipping hulls" : 0 = [ 0 : "Yes" 1 : "No" ] noskyclip(choices) : "No Sky Clip" : 0 = [ 1 : "On" 0 : "Off" ] sparse(choices) : "Vismatrix Method" : 2 = [ 0 : "No Vismatrix" 1 : "Sparse Vismatrix" 2 : "Normal" ] circus(choices) : "Circus RAD lighting" : 0 = [ 0 : "Off" 1 : "On" ] ] @PointClass iconsprite("sprites/CS/info_hostage_rescue.spr") = info_hostage_rescue : "Hostage rescue point" [] // NOT YET SUPPORTED BY ZHLT OR ANY COMPILER FRONTEND, AS OF 01/05/2001 @PointClass = info_lights_rad : "Lights RAD Override" [ spawnflags(flags) = [ 1 : "Override?" : 1 ] ] @PointClass iconsprite("sprites/CS/info_map_parameters.spr") = info_map_parameters : "Miscellaneous mapping parameters" [ buying(choices) : "Weapon Buying" : 0 = [ 0: "Both teams can buy guns" 1: "Only CT's can buy guns" 2: "Only T's can buy guns" 3: "Neither CT's nor T's can buy guns" ] bombradius(integer) : "Bomb Radius" : 500 ] @PointClass base(Targetname) iconsprite("sprites/CS/info_target.spr") = info_null : "info_null (spotlight target)" [] @PointClass iconsprite("sprites/CS/info_player_deathmatch.spr") base(PlayerClass) = info_player_deathmatch : "Terrorist start" [] @PointClass iconsprite("sprites/CS/info_player_start.spr") base(PlayerClass) = info_player_start : "Counter-terrorist start" [] @PointClass base(Targetname) size(-4 -4 -4, 4 4 4) color(200 100 50) iconsprite("sprites/CS/info_target.spr") = info_target : "Beam Target" [] @PointClass size(-8 -8 0, 8 8 16) base(Targetname, PlayerClass) = info_teleport_destination : "Teleport destination" [] @PointClass iconsprite("sprites/CS/info_vip_start.spr") base(PlayerClass) = info_vip_start : "VIP start" [] @PointClass decal() base(Targetname, Appearflags) = infodecal : "Decal" [ texture(decal) ] // items @PointClass size(-16 -16 0, 16 16 36) base(Weapon, Targetx, RenderFields) = item_battery : "HEV battery" [ armorvalue(string) : "Kevlar Points" : "15.0" ] @PointClass size(-16 -16 0, 16 16 36) base(Weapon, Targetx, RenderFields) = item_healthkit : "Small Health Kit" [ health(string) : "Health Points" : "15.0" ] @PointClass size(-16 -16 0, 16 16 36) base(Weapon, Targetx, RenderFields) = item_longjump : "Longjump Module" [] @PointClass size(-16 -16 0, 16 16 36) base(Weapon, Targetx, RenderFields) = item_nvgs : "NightVision" [] // Light entities @PointClass iconsprite("sprites/CS/light.spr") base(Targetname, Target, Light) = light : "Invisible lightsource" [] @PointClass base(Targetname, Target, Light) iconsprite("sprites/CS/light_environment.spr") = light_environment : "Environment" [ angles(string) : "Pitch Yaw Roll (X Y Z)" : "0 270 0" pitch(integer) : "Pitch" : -90 // Shade is used only by Adam Foster's hack of HLRAD to vary the color of shade. _diffuse_light(color255) : "Shade" : "255 255 128 200" ] @PointClass base(Targetname, Target, Angles, Light) iconsprite("sprites/CS/light_spot.spr") = light_spot : "Spotlight" [ pitch(integer) : "Pitch" : -90 _cone(integer) : "Inner (bright) angle" : 30 _cone2(integer) : "Outer (fading) angle" : 45 _sky(Choices) : "Is Sky" : 0 = [ 0 : "No" 1 : "Yes" ] ] // Triggers a sequence of up to 16 entities, at various time offsets. // To specify the list of entities for it to trigger, turn off Worldcraft's "smart edit" mode // and add fields manually. The name of the field is the targetname of the entity to trigger, // and the contents of the field are the time (in seconds) to wait before triggering it. // // Beware: the seconds countdown will continue thru round ends causing some events to happen into the next round. @PointClass base(Targetname) color(255 128 0) iconsprite("sprites/CS/multi_manager.spr") = multi_manager : "MultiTarget Manager" [ spawnflags(Flags) = [ // By default, a manager will ignore all inputs while it's performing a sequence. // Tick this to allow more than one sequence to run at a time. 1 : "multithreaded" : 0 ] ] // multiple inputs to one switch, the AND gate @PointClass base(Targetname, Target) color(128 255 128) iconsprite("sprites/CS/multisource.spr") = multisource : "Multisource" [ globalstate(string) : "Global State Master" ] @PointClass base(Targetname, Angles) size(16 16 16) color(247 181 82) iconsprite("sprites/CS/path.spr") = path_corner : "Moving platform stop" [ spawnflags(Flags) = [ 1: "Wait for retrigger" : 0 2: "Teleport to next corner" : 0 4: "Fire once" : 0 ] target(target_destination) : "Next stop target" message(target_destination) : "Fire On Pass" wait(integer) : "Wait here (secs)" : 0 // if speed more than 2000 problems may result speed(integer) : "New Train Speed" : 0 yaw_speed(integer) : "New Train rot. Speed" : 0 ] @PointClass base(Targetname) size(16 16 16) iconsprite("sprites/CS/path.spr") = path_track : "Train Track Path" [ target(target_destination) : "Next stop target" spawnflags(Flags) = [ 1: "Disabled" : 0 2: "Fire once" : 0 4: "Branch Reverse" : 0 8: "Disable train" : 0 ] message(target_destination) : "Fire On Pass" altpath(target_destination) : "Branch Path" netname(target_destination) : "Fire on dead end" // if speed more than 2000 problems may result speed(integer) : "New Train Speed" : 0 ] @PointClass base(Targetname) size(-16 -16 -16, 16 16 16) iconsprite("sprites/CS/player_weaponstrip.spr") = player_weaponstrip : "Strips player's weapons" [ primary(choices) : "Ignore primary weapons" : 0 = [ 0 : "No" 1 : "Yes" ] secondary(choices) : "Ignore pistols" : 0 = [ 0 : "No" 1 : "Yes" ] knife(choices) : "Ignore knife" : 0 = [ 0 : "No" 1 : "Yes" ] grenade(choices) : "Ignore grenades" : 0 = [ 0 : "No" 1 : "Yes" ] bomb(choices) : "Ignore bomb" : 0 = [ 0 : "No" 1 : "Yes" ] items(choices) : "Ignore other items (shield, defuser, kevlar etc)" : 0 = [ 0 : "No" 1 : "Yes" ] special(string) : "Special item to strip" ] // Monsters @PointClass iconsprite("sprites/CS/hostage_entity.spr") base(PlayerClass, RenderFields) size(-16 -16 0, 16 16 72) = monster_scientist : "Scientist Hostage" [ body(Choices) : "Body" : -1 = [ -1 : "Random" 0 : "Glasses" 1 : "Einstein" 2 : "Luther" 3 : "Slick" ] ] // Trigger entities // will only trigger ONCE per MAP, will not reset or retrigger for a new round! @PointClass base(Targetx) iconsprite("sprites/CS/trigger_auto.spr") = trigger_auto : "AutoTrigger" [ spawnflags(Flags) = [ 2 : "No reset on New Round" : 0 ] globalstate(string) : "Global State to Read" triggerstate(choices) : "Trigger State" : 0 = [ 0 : "Off" 1 : "On" 2 : "Toggle" ] ] // before team selection, engine will cycle thru all camera views whether usable or not to show views of level. @PointClass base(Targetname, Targetx) iconsprite("sprites/CS/trigger_camera.spr") = trigger_camera : "Trigger Camera" [ wait(integer) : "Hold time" : 10 moveto(string) : "Path Corner" spawnflags(flags) = [ 1: "Start At Player" : 1 2: "Follow Player" : 1 4: "Freeze Player" : 0 ] // note: max speed is 2000 or things go wrong speed(string) : "Initial Speed" : "0" acceleration(string) : "Acceleration units/sec^2" : "500" deceleration(string) : "Stop Deceleration units/sec^2" : "500" ] // makes another trigger point to something different. @PointClass base(Targetname, Targetx) iconsprite("sprites/CS/trigger_changetarget.spr") = trigger_changetarget : "Trigger Change Target" [ m_iszNewTarget(string) : "New Target" ] @SolidClass base(Trigger) = trigger_counter : "Trigger counter" [ spawnflags(flags) = [ 1 : "No Message" : 0 ] count(integer) : "Count before activation" : 2 ] // gravity changes player state, will have to be reset to normal as player leaves low friction area. @SolidClass base(Trigger) = trigger_gravity : "Trigger Gravity" [ gravity(integer) : "Gravity (0.0-1)" : 1 ] @SolidClass base(Targetname, Master, Target) = trigger_hurt : "Trigger player hurt" [ delay(string) : "Delay before trigger" : "0" spawnflags(flags) = [ 1: "Target Once" : 0 2: "Start Off" : 0 16: "FireClientOnly" : 0 32: "TouchClientOnly" : 0 ] dmg(integer) : "Damage" : 10 damagetype(choices) : "Damage Type" : 0 = [ 0 : "GENERIC" 1 : "CRUSH" 2 : "BULLET" 4 : "SLASH" 8 : "BURN" 16 : "FREEZE" 32 : "FALL" 64 : "BLAST" 128 : "CLUB" 256 : "SHOCK" 512 : "SONIC" 1024 : "ENERGYBEAM" 16384: "DROWN" 32768 : "PARALYSE" 65536 : "NERVEGAS" 131072 : "POISON" 262144 : "RADIATION" 524288 : "DROWNRECOVER" 1048576 : "CHEMICAL" 2097152 : "SLOWBURN" 4194304 : "SLOWFREEZE" ] ] @SolidClass base(Trigger) = trigger_multiple : "Trigger: Activate multiple" [ wait(integer) : "Delay before reset" : 10 ] @SolidClass base(Trigger) = trigger_once : "Trigger: Activate once" [] @SolidClass base(Trigger, Angles) = trigger_push : "Trigger player push" [ spawnflags(flags) = [ 1: "Once Only" : 0 2: "Start Off" : 0 ] // speed of ~1000 needed to go up. speed(integer) : "Speed of push" : 40 ] @BaseClass base(Targetname) = BaseRandom [ target_count(integer) : "Target Count" : 4 target1(target_destination) : "Target 1" target2(target_destination) : "Target 2" target3(target_destination) : "Target 3" target4(target_destination) : "Target 4" target5(target_destination) : "Target 5" target6(target_destination) : "Target 6" target7(target_destination) : "Target 7" target8(target_destination) : "Target 8" target9(target_destination) : "Target 9" target10(target_destination) : "Target 10" target11(target_destination) : "Target 11" target12(target_destination) : "Target 12" target13(target_destination) : "Target 13" target14(target_destination) : "Target 14" target15(target_destination) : "Target 15" target16(target_destination) : "Target 16" ] @PointClass base(BaseRandom) size(-8 -8 -8, 8 8 8) iconsprite("sprites/CS/trigger_random.spr") = trigger_random : "Trigger Random" [ spawnflags(Flags) = [ 1 : "Start On (Timed only)" : 0 2 : "Trigger Once (Timed only)" : 0 4 : "Reusable (Unique only)" : 0 8 : "Timed" : 0 16 : "Unique" : 0 ] min_delay(string) : "Minimum Delay (0 = off)" : "3.0" max_delay(string) : "Maximum Delay (0 = off)" : "7.0" ] // Obsolete: use trigger_random with Timed flag @PointClass base(trigger_random) size(-8 -8 -8, 8 8 8) iconsprite("sprites/CS/trigger_random.spr") = trigger_random_time : "Trigger Random Time" [ ] // Obsolete: use trigger_ranom with Random flag // Unique Trigger Random. Randomly selects an unused trigger. @PointClass base(BaseRandom) size(-8 -8 -8, 8 8 8) iconsprite("sprites/CS/trigger_random.spr") = trigger_random_unique : "Trigger Random Unique" [ spawnflags(Flags) = [ 1 : "Re-usable" : 0 ] ] @PointClass base(Targetname, Targetx) iconsprite("sprites/CS/trigger_relay.spr") = trigger_relay : "Trigger Relay" [ spawnflags(flags) = [ 1: "Remove On fire" : 0 ] triggerstate(choices) : "Trigger State" : 0 = [ 0: "Off" 1: "On" 2: "Toggle" ] ] @SolidClass base(Trigger) = trigger_teleport : "Trigger teleport" [ spawnflags(flags) = [ 256: "Keep angles" : 0 512: "Keep velocity" : 0 1024: "Redirect velocity with yaw from destination" : 0 ] ] // Function entities @SolidClass = func_bomb_target : "Bomb target zone" [ target(target_destination) : "Target (when bomb blows)" strict_touch(choices) : "Touch mode" : 0 = [ 0: "Legacy" 1: "New one (is more strict)" ] ] @SolidClass base(Targetname) = trigger_cdaudio : "Trigger CD Audio" [ health(choices) : "Track #" : -1 = [ -1 : "Stop" 1 : "Track 1" 2 : "Track 2" 3 : "Track 3" 4 : "Track 4" 5 : "Track 5" 6 : "Track 6" 7 : "Track 7" 8 : "Track 8" 9 : "Track 9" 10 : "Track 10" 11 : "Track 11" 12 : "Track 12" 13 : "Track 13" 14 : "Track 14" 15 : "Track 15" 16 : "Track 16" 17 : "Track 17" 18 : "Track 18" 19 : "Track 19" 20 : "Track 20" 21 : "Track 21" 22 : "Track 22" 23 : "Track 23" 24 : "Track 24" 25 : "Track 25" 26 : "Track 26" 27 : "Track 27" 28 : "Track 28" 29 : "Track 29" 30 : "Track 30" ] ] @SolidClass base(Targetname) = trigger_changelevel : "Trigger Change level" [ map(string) : "New map name" landmark(string) : "Landmark name" changetarget(target_destination) : "Change Target" changedelay(string) : "Delay before change target" : "0" percent_of_players(string) : "Percentage of players needed" : 0 spawnflags(flags) = [ 2: "USE Only" : 0 ] ] @SolidClass base(Breakable, RenderFields, ZHLT, TexLightType) = func_breakable : "Breakable Object" [ spawnflags(flags) = [ 1 : "Only Trigger" : 0 2 : "Touch" : 0 4 : "Stand on Pressure is buggy" : 0 256: "Instant Crowbar" : 1 ] _minlight(string) : "Minimum light level" : "0" ] @SolidClass base(Targetname, Global, Master, Target, RenderFields, Angles, ZHLT, TexLightType) = func_button : "Button" [ speed(integer) : "Speed" : 5 netname(target_destination) : "Target Path" // Path Target overrides Targetted Object health(integer) : "Health (shootable if > 0)" : 0 lip(integer) : "Lip" : 0 // The number against each sound (except Lightswitch) corresponds to the wav file // played. e.g. Buzz (10) plays "buttons/button10.wav". sounds(choices) : "Sounds" : 0 = [ 0: "None" 1: "Big zap & Warmup" 2: "Access Denied" 3: "Access Granted" 4: "Quick Combolock" 5: "Power Deadbolt 1" 6: "Power Deadbolt 2" 7: "Plunger" 8: "Small zap" 9: "Keycard Sound" 10: "Buzz" 11: "Buzz Off" 14: "Lightswitch" ] wait(integer) : "delay before reset (-1 stay)" : 3 delay(string) : "Delay before trigger" : "0" spawnflags(flags) = [ 1: "Don't move" : 0 32: "Toggle" : 0 64: "Sparks" : 0 256:"Touch Activates": 0 ] // see baseclass door sound notes locked_sound(choices) : "Locked Sound" : 0 = [ 0: "None" 2: "Access Denied" 8: "Small zap" 10: "Buzz" 11: "Buzz Off" 12: "Latch Locked" ] unlocked_sound(choices) : "Unlocked Sound" : 0 = [ 0: "None" 1: "Big zap & Warmup" 3: "Access Granted" 4: "Quick Combolock" 5: "Power Deadbolt 1" 6: "Power Deadbolt 2" 7: "Plunger" 8: "Small zap" 9: "Keycard Sound" 10: "Buzz" 13: "Latch Unlocked" 14: "Lightswitch" ] locked_sentence(choices) : "Locked Sentence" : 0 = [ 0: "None" 1: "Gen. Access Denied" 2: "Security Lockout" 3: "Blast Door" 4: "Fire Door" 5: "Chemical Door" 6: "Radiation Door" 7: "Gen. Containment" 8: "Maintenance Door" 9: "Broken Shut Door" ] unlocked_sentence(choices) : "Unlocked Sentence" : 0 = [ 0: "None" 1: "Gen. Access Granted" 2: "Security Disengaged" 3: "Blast Door" 4: "Fire Door" 5: "Chemical Door" 6: "Radiation Door" 7: "Gen. Containment" 8: "Maintenance area" ] _minlight(string) : "Minimum light level" : "0" ] @SolidClass = func_buyzone : "Buy zone" [ team(choices) : "Team" : 0 = [ 0: "All teams (unassigned)" 1: "Terrorist" 2: "Counter-terrorist" ] ] @SolidClass base(Targetname, Global, RenderFields, Angles, ZHLT, TexLightType) = func_conveyor : "Conveyor Belt" [ spawnflags(flags) = [ 1 : "No Push" : 0 2 : "Not Solid" : 0 ] speed(string) : "Conveyor Speed" : "100" _minlight(string) : "Minimum light level" : "0" ] @SolidClass base(Door, ZHLT, TexLightType) = func_door : "Basic sliding door" [] @SolidClass base(Door, Angles, ZHLT, TexLightType) = func_door_rotating : "Rotating door" [ spawnflags(flags) = [ 2 : "Reverse Dir" : 0 16: "One-way" : 0 64: "X Axis" : 0 128: "Y Axis" : 0 ] distance(integer) : "Distance (deg)" : 90 ] // may not work in LINUX system servers. @SolidClass = func_escapezone : "Terrorist escape zone" [] // friction changes player state, will have to be reset to normal as player leaves low friction area. // 0% = No friction, 100% = Normal Friction @SolidClass base(RenderFields, ZHLT, Appearflags, TexLightType) = func_friction : "Surface with a change in friction" [ modifier(integer) : "Percentage of standard (0 - 100)" : 15 ] @SolidClass base(Targetname, Global, RenderFields, ZHLT, TexLightType) = func_guntarget : "Moving platform" [ target(target_source) : "First stop target" speed(integer) : "Speed (units per second)" : 100 message(target_source) : "Fire on damage" health(integer) : "Damage to Take" : 0 _minlight(string) : "Minimum light level" : "0" ] @SolidClass base(Global, RenderFields, ZHLT, TexLightType) = func_healthcharger: "Wall health recharger" [ health(integer) : "Healthcharger Capacity" : 50 dmdelay(integer) : "Recharge delay" : 60 _minlight(string) : "Minimum light level" : "0" ] @SolidClass = func_hostage_rescue : "Hostage rescue zone" [] @SolidClass base(Targetname, RenderFields, ZHLT, TexLightType) = func_illusionary : "Fake Wall/Light" [ skin(choices) : "Contents" : -1 = [ -1: "Empty" -3: "water" -4: "slime touch drown" -5: "lava touch fire death" -7: "Volumetric Light" -16: "make ladder" ] _minlight(string) : "Minimum light level" : "0" ] // Creates an invisible, climbable field. @SolidClass base(Targetname) = func_ladder : "Ladder" [] @SolidClass base(Targetname) = func_mortar_field : "Mortar Field" [ m_flSpread(integer) : "Spread Radius" : 64 m_iCount(integer) : "Repeat Count" : 1 m_fControl(Choices) : "Targeting" : 0 = [ 0 : "Random" 1 : "Activator" 2 : "Table" ] m_iszXController(target_destination) : "X Controller" m_iszYController(target_destination) : "Y Controller" ] // Only partially implemented, some keys don't work properly. // NOTE: the continous changing animation can lead to lag. @SolidClass base(Targetname, Global, Angles, RenderFields, ZHLT, Appearflags, TexLightType) = func_pendulum : "Swings back and forth" [ speed(integer) : "Speed" : 100 distance(integer) : "Distance (deg)" : 90 damp(integer) : "Damping (0-1000)" : 0 dmg(integer) : "Damage inflicted when blocked" : 0 spawnflags(flags) = [ 1: "Start ON" : 0 2: "Rope swing" : 0 8: "Passable" : 0 16: "Auto-return" : 0 64: "X Axis" : 0 128: "Y Axis" : 0 ] _minlight(string) : "Minimum light level" : "0" // _minlight(integer) : "_minlight" : 0 ] @SolidClass base(Targetname, Global, RenderFields, PlatSounds, ZHLT, TexLightType) = func_plat : "Elevator" [ spawnflags(Flags) = [ 1: "Toggle" : 0 ] height(integer) : "Travel altitude (can be negative)" : 0 speed(integer) : "Speed" : 50 _minlight(string) : "Minimum light level" : "0" ] @SolidClass base(Targetname, Global, Angles, RenderFields, ZHLT, TexLightType, PlatSounds) = func_platrot : "Moving Rotating platform" [ spawnflags(Flags) = [ 1: "Toggle" : 1 64: "X Axis" : 0 128: "Y Axis" : 0 ] speed(integer) : "Speed of rotation" : 50 height(integer) : "Travel altitude (can be negative)" : 0 rotation(integer) : "Spin amount" : 0 _minlight(string) : "Minimum light level" : "0" ] @SolidClass base(Breakable, RenderFields, ZHLT, TexLightType) = func_pushable : "Pushable object" [ size(choices) : "Hull Size" : 0 = [ 0: "Point size" 1: "Player size" 2: "Big Size" 3: "Player duck" ] spawnflags(flags) = [ 1 : "Only Trigger" : 0 2 : "Broken on touch is buggy" : 0 4 : "Pressure is buggy" : 0 128: "Breakable" : 1 256: "Instant Crowbar" : 1 ] friction(integer) : "Friction (0-400)" : 50 buoyancy(integer) : "Buoyancy" : 20 _minlight(string) : "Minimum light level" : "0" ] @SolidClass base(Global, RenderFields, ZHLT, TexLightType) = func_recharge: "Battery recharger" [ armorvalue(integer) : "Suitcharger Capacity" : 30 dmdelay(integer) : "Recharge delay" : 30 _minlight(string) : "Minimum light level" : "0" ] // Like func_button, except it rotates. @SolidClass base(Targetname, Global, Master, Target, Angles, RenderFields, ZHLT, TexLightType) = func_rot_button : "RotatingButton" [ delay(string) : "Delay before trigger" : "0" // changetarget will change the button's target's TARGET field to the button's changetarget when button is pressed. changetarget(target_destination) : "ChangeTarget Name" speed(integer) : "Speed" : 50 health(integer) : "Health (shootable if > 0)" : 0 // The number against each sound corresponds to the wav file // played. e.g. Squeaky (1) plays "buttons/lever1.wav". sounds(choices) : "Sounds" : 21 = [ 21: "Squeaky" 22: "Squeaky Pneumatic" 23: "Ratchet Groan" 24: "Clean Ratchet" 25: "Gas Clunk" ] wait(choices) : "Delay before reset" : 3 = [ -1: "Stays pressed" 3: "3 sec default" ] distance(integer) : "Distance (deg)" : 90 spawnflags(flags) = [ 1 : "Not solid" : 0 2 : "Reverse Dir" : 0 32: "Toggle" : 0 64: "Z Axis" : 0 128: "X Axis" : 0 256: "Touch Activates": 0 ] _minlight(string) : "Minimum light level" : "0" ] @SolidClass base(Targetname, Global, Angles, RenderFields, ZHLT, TexLightType) = func_rotating : "Rotating Object" [ speed(integer) : "Rotation Speed" : 0 volume(integer) : "Volume (10 = loudest)" : 10 fanfriction(integer) : "Friction (0 - 100%)" : 20 // The number against each sound corresponds to the wav file // played. e.g. Slow Rush (2) plays "fans/fan2.wav". sounds(choices) : "Fan Sounds" : 0 = [ 0 : "No Sound" 1 : "Fast Whine" 2 : "Slow Rush" 3 : "Medium Rickety" 4 : "Fast Beating" 5 : "Slow Smooth" ] // The sound to play while active. This will only be used if "Fan Sounds" is set to "No Sound". message(sound) : "WAV Name" spawnflags(flags) = [ 1 : "Start ON" : 0 2 : "Reverse Direction" : 0 4 : "Z Axis" : 0 8 : "X Axis" : 0 16: "Acc/Dcc" : 0 32: "Fan Pain" : 0 64: "Not Solid" : 0 // This, and the other "radius" settings, only affect the // way the Fan Sounds are played; if you set a small radius, // the sounds will only be audible near to the fan. 128: "Small Radius" : 0 256: "Medium Radius" : 0 512: "Large Radius" : 1 ] _minlight(string) : "Minimum light level" : "0" // _minlight(integer) : "_minlight" : 0 spawnorigin(string) : "X Y Z - Move here after lighting" : "0 0 0" dmg(integer) : "Damage inflicted when blocked" : 0 ] @SolidClass base(BaseTank, ZHLT, TexLightType) = func_tank : "Brush MG Turret" [ bullet(choices) : "Bullets" : 0 = [ 0: "None" 1: "9mm" 2: "MP5" 3: "12mm" ] ] @SolidClass = func_tankcontrols : "Tank controls" [ target(target_destination) : "Tank entity name" ] @SolidClass base(BaseTank, ZHLT, TexLightType) = func_tanklaser : "Brush Laser Turret" [ laserentity(target_source) : "env_laser Entity" ] @SolidClass base(BaseTank, ZHLT, TexLightType) = func_tankmortar : "Brush Mortar Turret" [ iMagnitude(Integer) : "Explosion Magnitude" : 100 ] @SolidClass base(Trackchange) = func_trackautochange : "Automatic track changing platform" [ _minlight(string) : "Minimum light level" : "0" ] @SolidClass base(Trackchange, ZHLT, TexLightType) = func_trackchange : "Train track changing platform" [ _minlight(string) : "Minimum light level" : "0" ] @SolidClass base(Targetname, Global, Angles, RenderFields, ZHLT, TexLightType) = func_tracktrain : "Track Train" [ spawnflags(flags) = [ 1 : "No Pitch (X-rot)" : 0 2 : "No User Control" : 0 8 : "Passable" : 0 ] target(target_destination) : "First stop target" // if startspeed is not 0, then maybe no train sounds // // The number against each sound corresponds to the wav file // played. e.g. Rail 1 plays "plats/ttrain1.wav". sounds(choices) : "Sound" : 0 = [ 0: "None" 1: "Rail 1" 2: "Rail 2" 3: "Rail 3" 4: "Rail 4" 5: "Rail 6" 6: "Rail 7" ] // distance between wheels relates to stability in turns wheels(integer) : "Distance between the wheels" : 50 // relates to how high above track ORIGIN brush for train runs. height(integer) : "Height above track" : 4 // note: max speed is >2000 or things go wrong // and if startspeed is not 0, then maybe no train sounds startspeed(integer) : "Initial speed" : 0 speed(integer) : "Speed (units per second)" : 64 dmg(integer) : "Damage on crush" : 0 volume(integer) : "Volume (10 = loudest)" : 10 // stabilty of turn Banking depends on distance between wheels bank(string) : "Bank angle on turns" : "0" _minlight(string) : "Minimum light level" : "0" ] // A func_train will not be rendered correctly once it has gone about // 4096 units from its spawn position (ie where it sits in worldcraft // space). An invisible func_train will still be correctly moving // around your train path, it is only the visible piece of the train // that gets 'stuck'. // So try having your train sitting in the middle of worldcraft's // space when you compile the level. // (note- a func_train gets its lighting info from where it sits when compiled) @SolidClass base(Targetname, Global, RenderFields, ZHLT, TexLightType) = func_train : "Moving platform" [ target(target_source) : "First stop target" movesnd(choices) : "Move Sound" : 0 = [ 0: "No Sound" 1: "big elev 1" // plats/bigmove1.wav 2: "big elev 2" // plats/bigmove2.wav 3: "tech elev 1" // plats/elevmove1.wav 4: "tech elev 2" // plats/elevmove2.wav 5: "tech elev 3" // plats/elevmove3.wav 6: "freight elev 1" // plats/freightmove1.wav 7: "freight elev 2" // plats/freightmove2.wav 8: "heavy elev" // plats/heavymove1.wav 9: "rack elev" // plats/rackmove1.wav 10: "rail elev" // plats/railmove1.wav 11: "squeek elev" // plats/squeekmove1.wav 12: "odd elev 1" // plats/talkmove1.wav 13: "odd elev 2" // plats/talkmove2.wav ] stopsnd(choices) : "Stop Sound" : 0 = [ 0: "No Sound" 1: "big elev stop1" // plats/bigstop1.wav 2: "big elev stop2" // plats/bigstop2.wav 3: "freight elev stop" // plats/freightstop1.wav 4: "heavy elev stop" // plats/heavystop2.wav 5: "rack stop" // plats/rackstop1.wav 6: "rail stop" // plats/railstop1.wav 7: "squeek stop" // plats/squeekstop1.wav 8: "quick stop" // plats/talkstop1.wav ] // note: max speed is 2000 or things go wrong speed(integer) : "Speed (units per second)" : 64 // avelocity is fixed speed of tumbling, cannot be changed in play avelocity(string) : "Angular velocity (X Y Z)" : "0 0 0" dmg(integer) : "Damage on crush" : 0 skin(choices) : "Contents (if not solid)" : 0 = [ 0: "default" -1: "if non solid Empty" -3: "if non solid swimable water" // odd slime, lava and ladder can be used, but do not behave as other slime,lava,ladders. -4: "if non solid odd slime" -5: "if non solid odd lava" -7: "if non solid Volumetric Light" -16: "if non solid odd ladder" ] volume(string) : "Sound Volume 0.0 - 1.0" : "0.85" spawnflags(flags) = [ 8 : "Not solid" : 0 ] _minlight(string) : "Minimum light level" : "0" ] @SolidClass = func_traincontrols : "Train Controls" [ target(target_destination) : "Train Name" ] @SolidClass base(Targetname, Angles, RenderFields, ZHLT, TexLightType) = func_vehicle : "Drivable Vehicles" [ 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" : 0 = [ 0: "None" 1: "Vehicle 1" 2: "Vehicle 2" 3: "Vehicle 3" 4: "Vehicle 4" 5: "Vehicle 6" 6: "Vehicle 7" ] length(integer) : "Length of the vehicle" : 256 width(integer) : "Width of the vehicle" : 128 height(integer) : "Height above track" : 4 // note: max speed is 2000 or things go wrong startspeed(integer) : "Initial speed" : 0 speed(integer) : "Speed (units per second)" : 64 dmg(integer) : "Damage on crush" : 0 volume(integer) : "Volume (10 = loudest)" : 10 bank(string) : "Bank angle on turns" : "0" _minlight(string) : "Minimum light level" : "0" ] @SolidClass = func_vehiclecontrols : "Vehicle Controls" [ target(target_destination) : "Vehicle Name" ] @SolidClass = func_vip_safetyzone : "VIP safety zone" [] // style parameter added by Dmitrich! (ZHLT 2.5.3-1.7 supports it now). @SolidClass base(Targetname, Global, RenderFields, ZHLT, TexLightType, Appearflags) = func_wall : "Wall" [ _minlight(string) : "Minimum light level" : "0" style(choices) : "Texlight style" : 0 = [ 0 : "Normal" -3: "Grouped" 10: "Fluorescent flicker" 2 : "Slow, strong pulse" 11: "Slow pulse, noblack" 5 : "Gentle pulse" 1 : "Flicker A" 6 : "Flicker B" 3 : "Candle A" 7 : "Candle B" 8 : "Candle C" 4 : "Fast strobe" 9 : "Slow strobe" 12: "Underwater" ] ] @SolidClass base(func_wall) = func_wall_toggle : "Toggleable geometry" [ spawnflags(flags) = [ 1 : "Starts Invisible" : 0 8 : "Not Solid" : 0 ] ] @SolidClass base(Door) = func_water : "Liquid" [ spawnflags(flags) = [ 1 : "Starts Open" : 0 256: "Use Only" : 0 ] skin(choices) : "Contents" : -3 = [ -1: "Empty" -3: "Water" -4: "Slime" -5: "Lava" -16: "ladder (only with non ! texture)" ] WaveHeight(string) : "Wave Height" : "0" ] // Miscellaneous entities @SolidClass base(Master, Target, Angles, RenderFields, ZHLT) = button_target : "Target Button" [ spawnflags(flags) = [ 1: "Use Activates" : 1 2: "Start On" : 0 ] ] @SolidClass base(Door, ZHLT) = momentary_door : "Momentary/Continuous door" [ spawnflags(flags) = [ 1 : "Starts Open" : 0 ] ] @SolidClass base(Targetname, Master, Angles, RenderFields, ZHLT) = momentary_rot_button : "Direct wheel control" [ target(target_destination) : "Targetted object" speed(integer) : "Speed" : 50 sounds(choices) : "Sounds" : 0 = [ 0: "None" 1: "Big zap & Warmup" 2: "Access Denied" 3: "Access Granted" 4: "Quick Combolock" 5: "Power Deadbolt 1" 6: "Power Deadbolt 2" 7: "Plunger" 8: "Small zap" 9: "Keycard Sound" 21: "Squeaky" 22: "Squeaky Pneumatic" 23: "Ratchet Groan" 24: "Clean Ratchet" 25: "Gas Clunk" ] distance(integer) : "Distance (deg)" : 90 returnspeed(integer) : "Auto-return speed" : 0 spawnflags(flags) = [ 1: "Door Hack" : 0 2: "Not useable" : 0 16: "Auto Return" : 0 64: "X Axis" : 0 128: "Y Axis" : 0 ] _minlight(string) : "Minimum light level" : "0" // _minlight(integer) : "_minlight" : "0" ] // added by Dmitrich! - February 21, 2004 ;-) @PointClass color(255 128 0) = info_texlights : "Texture Light Config" [] // Set the origin of an entity dynamically @PointClass base(Targetname, Target) size(-8 -8 -8, 8 8 8) iconsprite("sprites/CS/trigger_setorigin.spr") = trigger_setorigin : "Trigger Set Origin" [ spawnflags(flags) = [ // Will constantly update position if set. 1: "Constant" : 0 // Trigger_setorigin entity will be removed after firing. 4: "Set Once" : 0 // Save the offset between the Target entity and the Copy pointer, apply offset when updating the Target entity's position // Requires "Constant" flag 8: "Lock Offsets" : 0 16: "Copy X Angle" : 0 32: "Copy Y Angle" : 0 64: "Copy Z Angle" : 0 128: "Copy X Axis" : 1 256: "Copy Y Axis" : 1 512: "Copy Z Axis" : 1 // If you're using the Constant flag, check this box to NOT move the origin of the entity or set the angles initially. // If you're not using the Constant flag, make sure this isn't enabled or trigger_setorigin won't do anything. // // This allows the "Constant" + "offset difference" combination to work as intended from the entity's original location. // // You would leave this off if you needed to move the entity to an initial position before having it follow another entity. // (If this isn't set, trigger_setorigin will move the entity to it's copypointer's origin before doing the offset difference calculation) 1024: "Skip Initial Set" : 0 ] // The entity we wish to copy coordinates/angles from copypointer(string) : "Copy Pointer" // Manual Offset to copied coordinates offset(string) : "Position Offset (X Y Z)" : "0 0 0" // Applied once on first use // After first use - Applied if "constant" flag is checked, and for each "Copy [x, y, z] Angle" checked. angleoffset(string) : "Angle Offset (X Y Z)" : "0 0 0" invert_x(choices) : "Invert X Angle" : 0 = [ 0 : "No" 1 : "Yes" ] invert_y(choices) : "Invert Y Angle" : 0 = [ 0 : "No" 1 : "Yes" ] invert_z(choices) : "Invert Z Angle" : 0 = [ 0 : "No" 1 : "Yes" ] ] @PointClass base(ArmouryEntity) size(-16 -16 0, 16 16 16) iconsprite("sprites/CS/armoury_entity.spr") = item_airbox : "Items in the armoury and float in the air" [ angles(string) : "Pitch Yaw Roll (X Y Z)" : "-90 0 0" avelocity(string) : "Angular velocity (X Y Z)" : "0 150 0" flyup(string) : "Speed fly up" : "5" delay(string) : "Delay before fly down" : "1" sprite_model(string) : "Sprite Name " : "" sprite_renderfx(choices) :"Sprite Render FX" : 0 = [ 0: "Normal" 1: "Slow Pulse" 2: "Fast Pulse" 3: "Slow Wide Pulse" 4: "Fast Wide Pulse" 9: "Slow Strobe" 10: "Fast Strobe" 11: "Faster Strobe" 12: "Slow Flicker" 13: "Fast Flicker" // 5: "Slow Fade Away" // 6: "Fast Fade Away" // 7: "Slow Become Solid" // 8: "Fast Become Solid" 14: "Constant Glow (Sprites)" 15: "Distort (Models)" 16: "Hologram (Distort + fade)" 17: "Dead Player" 18: "Explode" 19: "Glow Shell" 20 : "Clamp Min Scale" 21 : "Light Multiplier" ] sprite_rendermode(choices) : "Sprite Render Mode" : 0 = [ 0: "Normal - no light" 1: "Pure Color" 2: "Texture - some light" 3: "Glow (sprites only)" 4: "Solid - no light" 5: "Additive" ] sprite_renderamt(integer) : "Sprite FX Amount (1 - 255)" : 255 sprite_rendercolor(color255) : "Sprite FX Color (R G B)" : "0 0 0" sprite_scale(string) : "Sprite scale" : "1.0" sprite_framerate(string) : "Sprite framerate" : "10" ] @BaseClass base(Targetname) = BaseCommand [ spawnflags(flags) = [ 1 : "No reset cmd on remove an entity or change level" : 0 ] ] @PointClass base(BaseCommand) size(-8 -8 -8, 8 8 8) = point_servercommand : "It issues commands to the server console" [ ] @PointClass base(BaseCommand) size(-8 -8 -8, 8 8 8) = point_clientcommand : "It issues commands to the client console" [ ]