//
//  HexenII Mission Pack - Portal of Praevus Entity Set for Qoole
//  By EraserX (EraserX@mindless.com)
//  
//  Updated by Matt "WhiteFang" Ayres
//
// ******************************************
// Updated by BludBath (potenberg@jvlnet.com)
//    No relation to Lithium Software
// ******************************************

class "Ammo"	 
class "Armor"
class "Artifacts"
class "Info"
class "Light"   
class "Misc"
class "Monster1"  
class "Monster2"
class "Monster3"
class "Objects1" 	
class "Objects2" 
class "Objects3" 
class "Objects4"	
class "Rings"  
class "Statues" 	  
class "Traps"
class "Weapon"  
class "Func" 	
class "Other"
class "Trigger1"
class "Trigger2"
class "Rider"   	 	
class "Weather"

typedef "worldtypes"
{
	0	"Castle"
	1	"Egypt"
	2	"Meso"
	3	"Roman"
}

entity "worldspawn" "Null->Worldspawn" "entire map"
{
	"wad"		str		"wadfile you use"
	"message"	str		"The title of the level"
	"worldtype"	worldtypes	"Describes time of environment (changes appearance/monsters)"
	"CD"		int		"Tells the CD player which track to play"
	"Midi"	int		"Tells Hexen2 which midi to play."
	model
}

typedef "angles"
{
	90		"North"
	0		"East"
	270		"South"
	180		"West"
	-1		"Up"
	-2		"Down"
}
// -------------------------------------------------------------------------
// class "Artifacts"
flagdef "art"
{
	1	"Weapon floats in air"
}

entity "art_haste" "Artifacts->Boots of speed" ""
{
	"origin"	notuser
	"targetname"	str
	"spawnflags"	art	""
	mdl		"models/a_haste.mdl"
}

entity "art_teleport" "Artifacts->Chaos Device" ""
{
	"origin"	notuser
	"targetname"	str
	"spawnflags"	art	""
	mdl		"models/a_telprt.mdl"
}

entity "art_cubeofforce" "Artifacts->Cube of Force" ""
{
	"origin"	notuser
	"targetname"	str
	"spawnflags"	art	""
	mdl		"models/a_cube.mdl"
}

entity "art_blastradius" "Artifacts->Disc of Repulsion" ""
{
	"origin"	notuser
	"targetname"	str
	"spawnflags"	art	""
	mdl		"models/a_blast.mdl"
}

entity "art_glyph" "Artifacts->Glyph of the Ancients" ""
{
	"origin"	notuser
	"targetname"	str
	"spawnflags"	art	""
	mdl		"models/a_glyph.mdl"
}

entity "item_health" "Artifacts->Healing vial" ""
{
	"origin"	notuser
	"spawnflags"	art
	"targetname"	str
	mdl		"models/i_hboost.mdl"
}

entity "art_invincibility" "Artifacts->Icon of the defender" ""
{
	"origin"	notuser
	"targetname"	str
	"spawnflags"	art	""
	mdl		"models/a_invinc.mdl"
}

entity "art_invisibility" "Artifacts->Invisibility sphere" ""
{
	"origin"	notuser
	"targetname"	str
	"spawnflags"	art	""
	mdl		"models/a_invis.mdl"
}

entity "art_manaboost" "Artifacts->Krater of might" ""
{
	"origin"	notuser
	"targetname"	str
	"spawnflags"	art	""
	mdl		"models/a_mboost.mdl"
}

entity "item_mirage" "Artifacts->Mirage" ""
{
	"origin"	notuser
	"spawnflags"	art ""
}

entity "art_SuperHBoost" "Artifacts->Mystic Urn" ""
{
	"origin"	notuser
	"targetname"	str
	"spawnflags"	art	""
	mdl		"models/a_shbost.mdl"
}

entity "art_polymorph" "Artifacts->Seal of the ovinomancer" ""
{
	"origin"	notuser
	"targetname"	str
	"spawnflags"	art	""
	mdl		"models/a_poly.mdl"
}

entity "art_summon" "Artifacts->Stone of summoning" ""
{
	"origin"	notuser
	"targetname"	str
	"spawnflags"	art	""
	mdl		"models/a_summon.mdl"
}

entity "art_tomeofpower" "Artifacts->Tome of power" ""
{
	"origin"	notuser
	"targetname"	str
	"spawnflags"	art	""
	mdl		"models/a_tome.mdl"
}

entity "art_torch" "Artifacts->Torch" ""
{
	"origin"	notuser
	"targetname"	str
	"spawnflags"	art	""
	mdl		"models/a_torch.mdl"
}

entity "art_HealthBoost" "Artifacts->Quartz Flask" ""
{
	"origin"	notuser
	"targetname"	str
	"spawnflags"	art	""
	mdl		"models/a_hboost.mdl"
}

// -------------------------------------------------------------------------
// items

entity "item_armor_amulet" "Armor->Armor Amulet" ""
{
	"origin"	notuser
	"targetname"	str
	mdl		"models/i_amulet.mdl"
}

entity "item_armor_bracer" "Armor->Armor Bracer" ""
{
	"origin"	notuser
	"targetname"	str
	mdl		"models/i_bracer.mdl"
}

entity "item_armor_breastplate" "Armor->Armor Breastplate" ""
{
	"origin"	notuser
	"targetname"	str
	mdl		"models/i_bplate.mdl"
}

entity "item_armor_helmet" "Armor->Armor Helmet" ""
{
	"origin"	notuser
	"targetname"	str
	mdl		"models/i_helmet.mdl"
}

// -------------------------------------------------------------------------
// funcs


flagdef "angle_flags"
{
	1 "Reverse"
	2 "X-Axis"
	4 "Y-Axis"
}

entity "func_angletrigger" "Func->AngleTrigger" "Angle Trigger"
{
	"origin"		str
	"abslight"		float
	"cnt"			int
	"dmg"			int
	"mangle"		str   "(0 0 0)"
	"netname"		str
	"spawnflags"	angle_flags
	"speed"		int
	"target"		str
	"targetname"	str
	model
}

typedef "button_sounds"
{
	0	"None"
	1	"Wooden chunk"
	2	"Metallic click"
	3	"In-out"
}

flagdef "button_flags"
{
	1 "DEACTIVATED"
	2 "FIRED_ONLY"
	4 "FIRE_MULTIPLE"
	8 "TOGGLE"
}

entity "func_button" "Func->Button" "Button"
{
	"abslight"		float
	"angle"		angles		"Angle button moves?"
	"delay"		int		"Delay before action is triggered"
	"health"		int		"If there is health, button is shootable"
	"lip"			int		"Amount button sticks out when activated (default:4)"
	"soundtype"		button_sounds	"Sound it makes when activated"
	"speed"		int		"Speed it moves in?"
	"spawnflags"	button_flags
	"targetname"	str		""
	"target"	str		"Trigger name of target entity"
	"wait"		int		"Wait until retrigger? (-1 stays pressed)"
	model
}

typedef "crusher_sounds"
{
	0 "base fast"
	1 "chain slow"
	2 "guillotine"
}

flagdef "crusher_flags"
{
	1 "Multiple"
	2 "Slide"
	4 "Start open"
      8 "End open"
}

entity "func_crusher" "Func->Crusher" "Crusher"
{
	"angle"		angles
	"speed"		int (150)
	"health"		int	
	"lip"			int	
	"soundtype"		crusher_sounds	"Sound it makes when activated"
	"wait"		int		"Wait until retrigger? (-1 stays pressed)"
	"dmg"		int (10)
	"targetname"	str		""
	"spawnflags"	crusher_flags
	model
}

entity "func_obstacle" "Func->Obstacle" ""
{
	"origin"	notuser
	"angle"	angles
	"dmg"		int
	"level"	int
	model
}
 
typedef "door_sounds"
{
	0	"no sound"
	1	"Big metal door, swinging"
	2	"Big stone door, sliding"
	3	"Big wood door, swinging"
	4	"Normal wood door, swinging"
	5	"Big wood door, sliding"
	6	"Drawbridge"
	7	"Rotating walkway"
	8	"Big metal door, sliding"
	9	"Pendulum swinging"
}

flagdef "door_spawnflags"
{
	1 "START_OPEN"
	2 "REVERSE"
	4 "DOOR DONT LINK"
	8 "TOGGLE"
	16 "SLIDE"
	32 "NORMAL MOVE"
	64 "REMOVE PUZZLE PIECE"
	128 "NO PUZZLE PIECE"
}

entity "func_door" "Func->Door" "Door"
{
	"abslight"		float
	"angle"		angles		"opening angle"
	"close_target"	str			"secondary target when door closes"
	"dmg"			int			"damage inflicted on blocking entities"
	"health"		int			"if set, door must be shot open"
	"level"		int
	"lip"			int (8)		"amount remaining at end of move (8 default) (optional)"
	"message"		str			"message printed if door is opened by trigger"
	"no_puzzle_msg"	str
	"soundtype"		door_sounds (1)	"sound it makes"
	"spawnflags"	door_spawnflags	"Flags describing the object (optional)"
	"speed"		int (100)		"speed of movement (100 default)(optional)"
	"strength"		int
	"targetname"	str			"Door's trigger name (optional)"
	"wait"		int (3)		"delay before closing (3 default, -1 never return) (optional)"
	model
}

flagdef "door_smash"
{
	1 "Start open"
	4 "Door don't link"
	8 "Toggle"
	16 "Slide"
	32 "Normal Move"
	64 "Remove Puzzle Piece"
	128 "No Puzzle Piece"
}

entity "func_door_smashing" "Func->Door Smashing" ""
{
	"abslight"	float
	"angle"	angles
	"dmg"		int
	"lip"		int
	"message"	str
	"targetname"	str
	"soundtype"	door_sounds (1)
	"spawnflags"	door_smash
	"speed"		int
	"wait"		int
	model
}

flagdef "door_rot"
{
	1 "START_OPEN"
	2 "REVERSE"
	4 "DOOR DONT LINK"
	8 "REMOVE PUZZLE PIECE"
	16 "NO PUZZLE PIECE"
	32 "TOGGLE"
	64 "X AXIS"
	128 "Y AXIS"
}

entity "func_door_rotating" "Func->Rotating Door" "Door"
{
	"abslight"		float
	"angle"		angles
	"close_target"	str
	"dmg"			int
	"flags" 		int	"How many degrees the door will rotate"
	"flags2" 		int	"Will damage an object it touches"
	"health"		int		
	"level"		int
	"lip"			int (8)
	"message"		str
	"no_puzzle_msg"	str		
	"soundtype"		door_sounds (1)	"sound it makes"
	"spawnflags"	door_rot	
	"speed"		int (100)	
	"strength"		int
	"targetname"	str		
	"wait"		int (3)		"-1 will set it to never return"
	model
}

flagdef "door_secret_spawnflags"
{
	1	 "OPEN ONCE"
	2	 "MOVE LEFT FIRST"
	4	 "MOVE DOWN FIRST"
	8	 "NO SHOOT"
	16	 "ALWAYS SHOOT"
	64	 "REMOVE PUZZLE PIECE"
	128	 "NO PUZZLE PIECE"
}

entity "func_door_secret" "Func->Door Secret" "A door that is triggered to open"
{
	"abslight"		float
	"angle"		"angles"		"Angle it moves when activated"
	"dmg"		int			"damage inflicted on blocking entities"
	"lip"		int (8)			"Some kind of offset (optional)"
	"soundtype"	door_sounds (1)		"Sound it makes"
	"spawnflags"	door_secret_spawnflags	"Flags describing the object (optional)"
	"speed"		int (100)		"Speed of movement"
	"targetname"	str			"Door's trigger name"
	"t_width"	int
	"t_length"	int 
	"no_puzzle_msg" str
	"wait"		int (3)			"Delay before closing"
	model
}

flagdef "illus_flag"
{
	1 	"Transculent"
	2	"Light"
}

entity "func_illusionary" "Func->Illusionary" "Creates brush that appears solid, but isn't"
{
	"abslight"		float
	"spawnflags"	illus_flag
	"targetname"	str		""
	model
}

flagdef "monster_spawner_flags"
{
	1 	"IMP"
	2 	"ARCHER"
	4 	"WIZARD"
	8 	"SCORPION"
	16 	"SPIDER"
	32 	"ONDEATH"
	64 	"QUIET"
	128 	"TRIGGERONLY"
}

entity "func_monsterspawner" "Func->Monster Spawner" ""
{
	"origin"		notuser
	"cnt"			int
	"aflag"		int
	"spawnername"	str
	"targetname"	str		""
	"wait"		int
	"spawnflags"	monster_spawner_flags
}

flagdef "monster_spawner_spot_flags"
{
	1 	"IMP"
	2 	"ARCHER"
	4 	"WIZARD"
	8 	"SCORPION"
	16 	"SPIDER"
	32 	"ONDEATH"
	64 	"QUIET"
}

entity "func_monsterspawner_spot" "Func->Monster Spawner Spot" ""
{
	"origin"		notuser
	"cnt"			int
	"aflag"		int
	"spawnername"	str
	"targetname"	str		""
	"wait"		int
	"spawnflags"	monster_spawner_spot_flags
}

flagdef "monster_spawner_MP_flags"
{
	1 	"ICE_ARCHER"
	2 	"ICE_IMP"
	4 	"SNOWLEOPARD"
	8 	"WERETIGER"
	16 	"YAK"
	32 	"ONDEATH"
	64 	"QUIET"
	128 	"TRIGGERONLY"
}

entity "func_monsterspawner_mp" "Func->Monster Spawner MP" ""
{
	"origin"		notuser
	"cnt"			int
	"aflag"		int
	"spawnername"	str
	"targetname"	str		""
	"wait"		int
	"spawnflags"	monster_spawner_MP_flags
}

flagdef "monster_spawner_spot_MP_flags"
{
	1 	"ICE_ARCHER"
	2 	"ICE_IMP"
	4 	"SNOWLEOPARD"
	8 	"WERETIGER"
	16 	"YAK"
	32 	"ONDEATH"
	64 	"QUIET"
}

entity "func_monsterspawn_spot_mp" "Func->Monster Spawner Spot MP" ""
{
	"origin"		notuser
	"cnt"			int
	"aflag"		int
	"spawnername"	str
	"targetname"	str		""
	"wait"		int
	"spawnflags"	monster_spawner_spot_MP_flags
}

typedef "newplat_sounds"
{
	0	"No sound"
	1	"Base fast"
	2	"Chain slow"
}

flagdef "newplat_flags"
{
	1 	"START BOTTOM"
	2 	"RETURN TO START"
	4	 "CONTINUOUS"
}

entity "func_newplat" "Func->New Platform" "New Platform"
{
	"height"		int			"Determines amount plat moves manually (optional)"
	"speed"		int (150)		"Moving speed (default:150)"
	"soundtype"		newplat_sounds		"Sound it makes (optional)"
	"targetname"	str
	"spawnflags"	newplat_flags
	"wait"		int
	model
}

typedef "plat_sounds"
{
	0	"No sound"
	1	"Pully"
	2	"Chain"
}

flagdef "plat_flags"
{
	1 	"PLAT LOW TRIGGER"
}

entity "func_plat" "Func->Platform" "Platform"
{
	"height"		int			"Determines amount plat moves manually (optional)"
	"speed"		int (150)		"Moving speed (default:150)"
	"soundtype"		plat_sounds		"Sound it makes (optional)"
	"targetname"	str
	"spawnflags"	plat_flags
	model
}

typedef "press_sounds"
{
	0	"steam metal"
	1	"wooden clunk"
	2	"metallic click"
	3	"in-out"
}

flagdef "press_flags"
{
	1 	"DEACTIVATED"
}

entity "func_pressure" "Func->Pressure Plate" ""
{
	"abslight"		float
	"angle"		angles
	"health"		int
      "lip"			int
	"mass"		int
      "soundtype"		press_sounds
      "spawnflags"		press_flags
      "speed"		int (40)
	"target"		str
	"targetname"	str
	model
}

typedef "rot_thing"
{
		1  "grey stone"
		2  "wood (default)"
		3  "metal"
		4  "flesh"
		5  "soft stone"
		6  "clay"
		7  "green leaves"
		8  "hay"
		9  "brown stone"
		10  "red cloth"
		11  "wood & green leaves"
		12  "wood & metal"
		13  "wood & gray stone"
		14  "metal & gray stone"
		15  "metal & red cloth"
		16  "spider web"
		17  "glass"
		18  "ice"
		19  "clear glass"
		20  "red glass"
}

flagdef "rot_flags"
{
	1 "START_ON"
	2 "REVERSE"
	4 "X AXIS"
	8 "Y AXIS"
	16 "BREAK"
	32 "GRADUAL"
	64 "TOGGLE REVERSE"
	128 "KEEP START"
}

entity "func_rotating" "Func->Rotating Object" ""
{
	"origin"		str (0 0 0)
	"abslight"		float
	"anglespeed"	int
	"dmg"			int	
	"health"		int
	"lifetime"	int "Set to 1 so it won't be on forever"		
	"spawnflags"	rot_flags
	"speed"		int (100)		
	"targetname"	str		
	"thingtype"		rot_thing
	"wait"		int (3)
	model
}

flagdef "movechain"
{
	1	"NOANGLECHAIN"
}

entity "func_rotating_movechain" "Func->Movechain Rotating" ""
{
	"angle"		angles
	"netname"		str
	"avelocity"		str
	"abslight"		float
	"wait"		int (3)	
	"spawnflags"	movechain
	"noise"		str
	"noise1"		str
	"dmg"			int		
	"targetname"	str		
	model
}

typedef "train_sounds"
{
	0 "no sound"
	1 "ratchet metal"
}

flagdef "train_flags"
{
	1	"GLOW"
	2 	"TOGGLE"
	4 	"RETURN"
	8 	"TRANSLUCENT"
}

entity "func_train" "Func->Train" "A platform (moves along a 'train')"
{
	"abslight"		float
	"origin"		notuser
	"anglespeed"	int
	"wait"		int
	"soundtype"		train_sounds 		
	"pausetime"		int
	"speed"		int 
	"dmg"			int (2)
	"netname"		str
	"spawnflags"	train_flags
	"targetname"	str			"Its trigger name"
	"target"		str			"Trigger name of its first path_corner destination"
	"thingtype"		rot_thing
	model
}

typedef "train_mp_sounds"
{
	0 "none"
	1 "ratchet metal"
	2 "pullies"
	3 "sliding"
	4 "normal"
	5 "medival"
	6 "guillotine"
	7 "chain"
	8 "Rolling boulder"
	9 "Spinning prayer wheel"
}

flagdef "train_mp_flags"
{
	1	"GLOW"
	2 	"TOGGLE"
	4 	"RETURN"
	8 	"TRANSLUCENT"
	16	"SLOPE"
	32	"ANGLEMATCH"
	64	"USE_ORIGIN"
	128	"ANGLEWAIT"
}

typedef "train_mp_thingtype"
{
		0  "glass"
		1  "grey stone"
		2  "wood (default)"
		3  "metal"
		4  "flesh"
		5  "fire"
		6  "clay"
		7  "green leaves"
		8  "hay"
		9  "brown stone"
		10  "red cloth"
		11  "wood & green leaves"
		12  "wood & metal"
		13  "wood & gray stone"
		14  "metal & gray stone"
		15  "metal & red cloth"
		16  "spider web"
		17  "stained glass"
		18  "ice"
		19  "clear glass"
		20  "red glass"
}

typedef "train_mp_weaponmodel"
{
	models/?.mdl	test1
	models/?.mdl	test2
	models/?.mdl	test3
	models/?.mdl	test4
}

entity "func_train_mp" "Func->Train MP" "A platform (moves along a 'train')"
{
	"abslight"		float
	"origin"		notuser
	"anglespeed"	int
	"angle"		angles
	"distance"		int
	"wait"		int
	"soundtype"		train_mp_sounds 		
	"pausetime"		int
	"speed"		int 
	"dmg"			int (2)
	"level"		int	"0 or 1, if set to 1 it will not ambient"
	"netname"		str
	"spawnflags"	train_mp_flags
	"targetname"	str			"Its trigger name"
	"target"		str			"Trigger name of its first path_corner destination"
	"thingtype"		train_mp_thingtype
	"weaponmodel"	train_mp_weaponmodel
	model
}

flagdef "wall_flags"
{
	1 	"TRANSLUCENT"
	2	"INVISIBLE"
}

entity "func_wall" "Func->Wall" "Changes texture to alternate texture when triggered"
{
	"abslight"		float
	"spawnflags"	wall_flags
	"targetname"	str	
	model
}

flagdef "reflect_flags"
{
	1 "Return"
	2 "Toggle"
	4 "Start open"
}

entity "func_reflect" "Func->Reflect" "Reflects flying objects"
{
	"abslight"	float
	"spawnflags"	reflect_flags
	model
}

// -------------------------------------------------------------------------
// infos

entity "info_intermission" "Info->Intermission (Camera)" "Cameras positioning for intermission (?)"
{
	"origin"	notuser
	"mangle"	notuser
	"targetname"	str
}

flagdef "info_null_defs"
{
	1	"DONT_REMOVE"
}

entity "info_null" "Info->Null (Light Target)" "Used as a positional target for spotlights (removes itself)"
{
	"origin"	notuser
	"angle"		notuser
	"targetname"	str
	"spawnflags"	info_null_defs
}

flagdef "teleport_dest"
{
	1	"NO_THROW"
	2	"KILL_VELOCITY
}

entity "info_teleport_destination" "Info->Teleport Destination" "Gives coords for a teleport destination using a targetname"
{
	"origin"		notuser
	"angles"		angles
	"frags"		int
	"targetname"	str	"Teleport's trigger name."
	"spawnflags"	teleport_dest
}

entity "info_player_start" "Info->Player Start" "Main player starting point"
{
	"origin"	notuser
	"angle"	angles
	gem "player"
}

entity "info_player_start2" "Info->Player Start2" "Second player start (used for returning to levels)"
{
	"origin"	   notuser
	"angle"	   angles
	"targetname"   str
	gem "player"
}

entity "info_player_deathmatch" "Info->Deathmatch Start" "A deathmatch start (more than one allowed)"
{
	"origin"	notuser
	"angle"	angles
	gem "player"
}

entity "info_player_coop" "Info->Coop Start" "A coop player start (more than one allowed)"
{
	"origin"	notuser
	"angle"	angles
	"map"		str
	"playerclass"	str
	"target"		str
	"targetname"	str
	gem "player"
}

// -------------------------------------------------------------------------
// ammo

flagdef "ammo"
{
	1	"Item floats in air"	
	2	"Big (30 points instead of 10)"
}

entity "item_mana_both" "Ammo->Mana both" ""
{
	"origin"	notuser
	"spawnflags"	ammo
	"targetname"	str
	mdl		"models/i_btmana.mdl"
}

entity "item_mana_blue" "Ammo->Mana blue" ""
{
	"origin"	notuser
	"spawnflags"	ammo
	"targetname"	str
	mdl		"models/i_bmana.mdl"
}

entity "item_mana_green" "Ammo->Mana green" ""
{
	"origin"	notuser
	"spawnflags"	ammo
	"targetname"	str
	mdl		"models/i_gmana.mdl"
}

// -------------------------------------------------------------------------
// rings


flagdef "ring"
{
	1	"Ring floats in air"	
}

entity "Ring_Flight" "Rings->Ring of Flight" ""
{
	"origin"	notuser
	"spawnflags"	ring
	mdl		"models/ringft.mdl"
}

entity "Ring_Regeneration" "Rings->Ring of Regeneration" ""
{
	"origin"	notuser
	"spawnflags"	ring
	mdl		"models/ringre.mdl"
}

entity "Ring_Turning" "Rings->Ring of Turning" ""
{
	"origin"	notuser
	"spawnflags"	ring
	mdl		"models/ringtn.mdl"
}

entity "Ring_WaterBreathing" "Rings->Ring of WaterBreathing" ""
{
	"origin"	notuser
	"spawnflags"	ring
	mdl		"models/ringwb.mdl"
}

// -------------------------------------------------------------------------
// objects

flagdef "ballista"
{
	1		"Ballista Track"
}

entity "obj_ballista" "Objects1->Ballista" ""
{
	"origin"	notuser
	"angle"	angles
	"cnt"		int (30)
	"count"	int (5)
	"dmg"		int (50)
	"health"	int (0)
	"speeds"	int (5)
	"targetname"	str
	"spawnflags"	ballista
	mdl		"models/ballista.mdl"
}

flagdef "barrel"
{
	1 		"DOWNHILL"
	2 		"NO_DROP"
	4 		"ON_SIDE"
	8 		"SINK"
	16		"DROP_USE"
	32		"RESPAWN"
}

entity "obj_barrel" "Objects1->Barrel" ""
{
	"origin"	   notuser
	"health"	   int
	"spawnflags"   barrel
	"targetname"   str
}

entity "obj_barrel_exploding" "Objects1->Explosive Barrel" ""
{
	"origin"	   notuser
	"health"	   int
	"spawnflags"   barrel
	"targetname"   str
}

entity "obj_barrel_indestructible" "Objects1->Indestructible Barrel" ""
{
	"origin"	notuser
	"spawnflags"	barrel
}

typedef "cat_sound"
{
	0	"No sound"
	1	"stone"
	2	"base"
	3	"stone chain"
	4	"screechy metal"
}

flagdef "cat_defs"
{
	1 "not_usable"
}

entity "obj_catapult2" "Objects1->Catapult" ""
{
	"origin"	notuser
	"angle"	angles
	"health"    int
	"mass"	int
	"soundtype"	cat_sound
	"spawnflags"	cat_defs
	"speed"	int
	mdl		"models/cattest.mdl"
}

entity "obj_barstool" "Objects1->Objects barstool" ""
{
	"angle"		angles
	"origin"	notuser
	mdl		"models/stool.mdl"
}

entity "obj_beefslab" "Objects1->Slab of beef" ""
{
	"angle"	angles
	"health"	int (50)
	"origin"	notuser
	mdl		"models/beefslab.mdl"
}

entity "obj_bell" "Objects1->Huge Bell" ""
{
	"health"	int (250)
	"angle"	angles
	"origin"	notuser
	mdl		"models/bellring.mdl"
}

entity "obj_bench" "Objects1->Wooden bench" ""
{
	"angle"		notuser
	"origin"	angles
	mdl		"models/bench.mdl"
}

entity "obj_bonepile" "Objects1->Pile of bones" ""
{
	"angle"	angles
	"health"	int
	"origin"	notuser
	mdl		"models/bonepile.mdl"
}

entity "obj_book_closed" "Objects1->Closed Book" ""
{	
	"angle"	angles
	"health"	int (20)
	"origin"	notuser
	mdl		"models/bookclos.mdl"
}

entity "obj_book_open" "Objects1->Open Book" ""
{
	"angle"	angles
	"health"	int (20)
	"origin"	notuser
	mdl		"models/bookopen.mdl"
}

entity "obj_boulder" "Objects1->Boulder" ""
{
	"health"	int
	"angle"	notuser
	"origin"	notuser
}

entity "obj_bush1" "Objects1->Small bush" ""
{
	"health"	int (20)
	"origin"	notuser
	mdl		"models/bush1.mdl"
}

entity "obj_cart" "Objects1->Wooden wheelcart" ""
{
	"angle"	angles
	"target"	str
	"origin"	notuser
	mdl		"models/cart.mdl"
}

entity "obj_cauldron" "Objects1->Cauldron" ""
{
	"angle"	angles
	"health"	int (50)
	"mass"	int (15)
	"origin"	notuser
	mdl		"models/cauldron.mdl"
}

entity "obj_chaos_orb" "Objects1->Eidolon's Power Source" ""
{
	"angle"		angles
	"origin"	notuser
	mdl		"models/boss/chaosorb.mdl"
}

entity "obj_chair" "Objects1->Chair" ""
{
	"angle"		angles
	"origin"	notuser
	mdl		"models/chair.mdl"
}

typedef "chest"
{
	 0	"medieval"	
	 1   	"roman texture"
}
	
entity "obj_chest1" "Objects2->Chest" ""
{
	"angle"		angles
	"origin"		notuser
	"target"		str
	"spawnflags"	chest
	mdl		"models/chest1.mdl"
}

typedef "chest2"
{
	 0	"medieval"	
       1 	"meso"
       2	"egypt"
}	

entity "obj_chest2" "Objects2->Chest on legs" ""
{
	"angle"		angles
	"origin"		notuser
	"target"		str
	"spawnflags"	chest2
	mdl		"models/chest2.mdl"
}

entity "obj_chest3" "Objects2->TreasureChest" ""
{
	"angle"		angles
	"origin"		notuser
	"target"		str
	mdl		"models/chest3.mdl"
}

typedef "dead_body"
{
		0  "burnt, nude guy"
		1  "normal, nude guy"
		2  "yucky diseased, nude guy"
		3  "wound in back, has pants on"
}

entity "obj_corpse1" "Objects2->Corpse" ""
{
	"angle"		angles
	"health"		int (20)
	"mass" 		int (200)
	"origin"		notuser
	"skin"		dead_body
	"target"		str
	mdl		"models/corps1.mdl"
}

typedef "dead_body2"
{
		0  "shoulder and facial wounds"
		1  "clawed chest"
		2  "stomach wound"
		3  "just dead"
		4  "webbed"
}

entity "obj_corpse2" "Objects2->Corpse2" ""
{
	"angle"		angles
	"health"		int (20)
	"mass" 		int (200)
	"origin"		notuser
	"skin"		dead_body2
	"target"		str
	mdl		"models/corps2.mdl"
}

entity "obj_fence" "Objects2->Fence" ""
{
	"angle"		angles
	"health"		int (20)
	"origin"		notuser
	mdl		"models/fence.mdl"
}

entity "obj_flag" "Objects2->Flag" ""
{
	"angle"		angles
	"health"		int (50)
	"origin"		notuser
	mdl		"models/flag.mdl"
}

entity "obj_fountain" "Objects2->Fountain" ""
{
	"angle"		angles
	"health"		int (20)
	"mass" 		int (200)
	"origin"		notuser
	mdl		"models/fountain.mdl"
}

entity "obj_hedge1" "Objects2->Hedge" ""
{
	"angle"		angles
	"health"		int (20)
	"mass" 		int (200)
	"origin"		notuser
	mdl		"models/hedge1.mdl"
}

entity "obj_hedge2" "Objects2->Hedge 2" ""
{
	"angle"		angles
	"health"		int (20)
	"mass" 		int (200)
	"origin"		notuser
	mdl		"models/hedge2.mdl"
}

entity "obj_hedge3" "Objects2->Hedge 3" ""
{
	"angle"		angles
	"health"		int (20)
	"mass" 		int (200)
	"origin"		notuser
	mdl		"models/hedge3.mdl"
}

entity "obj_pew" "Objects2->A church pew" ""
{
	"angle"		angles
	"health"		int (50)
	"origin"		notuser
	mdl		"models/pew.mdl"
}

entity "obj_plant_generic" "Objects2->Plant" ""
{
	"angle"		angles
	"health"		int (20)
	"origin"		notuser
	mdl		"models/plantgen.mdl"
}

entity "obj_plant_meso" "Objects2->Meso Plant" ""
{
	"angle"		angles
	"health"		int (20)
	"origin"		notuser
	mdl		"models/plantmez.mdl"
}

entity "obj_plant_rome" "Objects2->Roman Plant" ""
{
	"angle"		angles
	"health"		int (20)
	"origin"		notuser
	mdl		"models/plantrom.mdl"
}

entity "obj_playerhead_assassin" "Objects2->Assassins head" ""
{
	"angle"		angles
	"health"		int (20)
	"origin"		notuser
	mdl		"models/h_ass.mdl"
}

entity "obj_playerhead_necromancer" "Objects2->Necromancer head" ""
{
	"angle"		angles
	"health"		int (20)
	"origin"		notuser
	mdl		"models/h_nec.mdl"
}

entity "obj_playerhead_crusader" "Objects3->Crusader head" ""
{
	"angle"		angles
	"health"		int (20)
	"origin"		notuser
	mdl		"models/h_cru.mdl"
}

entity "obj_playerhead_paladin" "Objects3->Paladin head" ""
{
	"angle"		angles
	"health"		int (20)
	"origin"		notuser
	mdl		"models/h_pal.mdl"
}

entity "obj_pot1" "Objects3->Clay pot" ""
{
	"angle"		angles
	"health"		int (10)
	"mass" 		int (100)
	"target"		str
	"origin"		notuser
	mdl		"models/pot1.mdl"
}

entity "obj_pot2" "Objects3->Gently curved pot" ""
{
	"angle"		angles
	"health"		int (10)
	"mass" 		int (100)
	"target"		str
	"origin"		notuser
	mdl		"models/pot2.mdl"
}

entity "obj_pot3" "Objects3->Pot with curved sides" ""
{
	"angle"		angles
	"health"		int (10)
	"mass" 		int (100)
	"target"		str
	"origin"		notuser
	mdl		"models/pot3.mdl"
}

entity "obj_seaweed" "Objects3->Seaweed" ""
{
	"angle"		angles
	"health"		int (10)
	"origin"		notuser
	mdl		"models/seaweed.mdl"
}

entity "obj_skull" "Objects3->Skull" ""
{
	"angle"		angles
	"health"		int (10)
	"origin"		notuser
	mdl		"models/skull.mdl"
}

entity "obj_skullstick" "Objects3->Skull on stick" ""
{
	"angle"		angles
	"health"		int (20)
	"origin"		notuser
	mdl		"models/skllstk1.mdl"
}

entity "obj_skullstick2" "Objects3->Skull on stick 2" ""
{
	"angle"		angles
	"health"		int (20)
	"origin"		notuser
	mdl		"models/skllstk2.mdl"
}

entity "obj_sword" "Objects3->Sword" ""
{
	"health"		int (50)
	"angle"		angles
	"origin"		notuser
	mdl		"models/sword.mdl"
}

entity "obj_tombstone1" "Objects3->Tombstone I" ""
{
	"angle"		angles
	"health"		int (20)
	"origin"		notuser
	mdl		"models/tombstn1.mdl"
}

entity "obj_tombstone2" "Objects3->Tombstone II" ""
{
	"angle"		angles
	"health"		int (20)
	"origin"		notuser
	mdl		"models/tombstn2.mdl"
}

entity "obj_tree" "Objects3->Tree without leaves" ""
{
	"angle"		angles
	"health"		int (1000)
	"origin"		notuser
	mdl		"models/tree.mdl"
}

entity "obj_tree2" "Objects3->Tree with leaves" ""
{
	"angle"		angles
	"health"		int (1000)
	"origin"		notuser
	mdl		"models/tree2.mdl"
}

typedef "webz"
{
	0  "many little spider webs"
	1  "corner web"
	2  "cobwebs"
	3  "One giant web"
	4  "One big-ass web"
}

typedef "web_flag"
{
	1  "Solid"
	2  "Animate"
	3  "Weak"
	4  "Touchmove"
	8  "Flat"
	16 "No transculency"

}

entity "obj_webs" "Objects3->A Web" ""
{
	"abslight"		float		"brightness, value 0-1"
	"angle"		angles
	"health"		int (0)
	"origin"		notuser
	"scale"		float 		"Make the web bigger, value 0-2.5"
	"skin"		webz
	"spawnflags"	web_flag
	"v_angle "		str			"rotate 3D, default is '0 0 0'"
	mdl		"models/webs.mdl"
 }


//------------------------------------------------------------------------------------
// Statues


entity "obj_statue_angel" "Statues->Angel" ""
{
	"angle"		angles
	"health"		int (20)
	"origin"		notuser
	mdl		"models/anglstat.mdl"
}

entity "obj_statue_athena" "Statues->Athena" ""
{
	"angle"		angles
	"health"		int (200)
	"origin"		notuser
	mdl		"models/athena.mdl"
}

entity "obj_demon_statue" "Statues->Demon" ""
{
	"angle"		angles
	"health"		int
	"origin"		notuser
}

entity "obj_statue_caesar" "Statues->Caesar" ""
{
	"angle"		angles
	"health"		int (200)
	"origin"		notuser
	mdl		"models/caesar.mdl"
}

entity "obj_statue_king" "Statues->King" ""
{
	"angle"		angles
	"health"		int (200)
	"origin"		notuser
	mdl		"models/king.mdl"
}

entity "obj_samurai" "Statues->Samurai" ""
{
	"angle"		angles
	"frame"		int	"0 or 1, different poses"
	"health"		int
	"origin"		notuser
}

entity "obj_statue_lion" "Statues->Lion" ""
{
	"angle"		angles
	"cnt_h_boost"	int
	"health"		int (200)
	"origin"		notuser
	mdl		"models/lion.mdl"
}

entity "obj_statue_dragon_lion" "Statues->Dragon Lion" ""
{
	"angle"		angles
	"health"		int (200)
	"origin"		notuser
}

entity "obj_statue_mars" "Statues->Mars" ""
{
	"angle"		angles
	"health"		int (200)
	"origin"		notuser
	mdl		"models/mars.mdl"
}

entity "obj_statue_mummy" "Statues->Mummy" ""
{
	"angle"		angles
	"health"		int (200)
	"mass"		int (150)
	"origin"		notuser
	mdl		"models/mumstatu.mdl"
}

entity "obj_statue_mummy_head" "Statues->Nubis Head" ""
{
	"health"		int (200)
	"angle"		angles
	"origin"		notuser
	mdl		"models/mhdstatu.mdl"
}

entity "obj_statue_neptune" "Statues->Neptune" ""
{
	"angle"		angles
	"health"		int (200)
	"origin"		notuser
	mdl		"models/neptune.mdl"
}

entity "obj_statue_olmec" "Statues->Olmec" ""
{
	"angle"		angles
	"health"		int (50)
	"origin"		notuser
	mdl		"models/olmec1.mdl"
}

flagdef "snake"
{
	1  	"Invincible"
}

entity "obj_statue_snake" "Statues->Snake" ""
{
	"angle"		angles
	"health"		int (100)
	"mass"		int (200)
	"origin"		notuser
	"spawnflags"	snake
	mdl		"models/snkstatu.mdl"
}

entity "obj_statue_snake_coil" "Statues->Snake Coil" ""
{
	"angle"		angles
	"health"		int (200) 
	"origin"		notuser
	mdl		"models/snake.mdl"
}

entity "obj_statue_tut" "Statues->TutAhnkammon" ""
{
	"angle"		angles
	"health"		int (1000)
	"mass"		int (2000)
	"origin"		notuser
	mdl		"models/tutstatu.mdl"
}

// -------------------------------------------------------------------------
// lights

flagdef "light_flags1"
{
	1		"start_low"
	2		"hurt"
}

flagdef "light_flags2"
{
	1		"start_low"
}

entity "light" "Light->Light" "A projected light.  No visible lightsource."
{
	"origin"	notuser
	"fadespeed"		int
	"light"		int (300)   	"Tells how bright the light is"
	"lightvalue1"	int         	"value between 0-25"
	"lightvalue2"	int 	            "value between 0-25"
	"spawnflags"	light_flags2 	"State light starts in"
	"style"		str (0)	 	"0 is default"
	"targetname"	str 		      "Target id of the light"
}

entity "light_burner" "Light->Light Burner" ""
{
	"origin"	      notuser
	"abslight"		float
	"dmg"		      int (.2)          ".2 is default"
	"fadespeed"		int
	"health"		int
	"lightvalue1"	int 	            "value between 0-25"
	"lightvalue2"	int         	"value between 0-25"
	"light"		int (300)   	"Tells how bright the light is"
	"spawnflags"	light_flags1 	"State light starts in"
	"style"		str	 	      "use this to link several lights together for toggling"
	"targetname"	str 		      "Target id of the light"
}

entity "light_candle" "Light->Light Candle" ""
{
	"origin"	notuser
	"abslight"	float
	"angle"	angles
	"dmg"		int
	"fadespeed"	int
	"health"	int
	"light"	int
	"lightvalue1"	int 	"value between 0-25"
	"lightvalue2"	int 	"value between 0-25"
	"spawnflags"	light_flags2
	"style"	str
	"targetname"	str
}

entity "light_lantern" "Light->Light Lantern" ""
{
	"origin"	notuser
	"abslight"	float
	"angle"	angles
	"dmg"		int
	"fadespeed"	int
	"health"	int
	"light"	int
	"lightvalue1"	int 	"value between 0-25"
	"lightvalue2"	int 	"value between 0-25"
	"spawnflags"	light_flags2
	"style"	str
	"targetname"	str
}

entity "light_newfire" "Light->Light Newfire" ""
{
	"origin"	notuser
	"angle"		angles
	"dmg"			int
	"fadespeed"		int
	"light"		int (300)	"Tells how bright the light is"
	"lightvalue1"	int 	"value between 0-25"
	"lightvalue2"	int 	"value between 0-25"
	"spawnflags"	light_flags1 	"State light starts in"
	"style"		str	 	"use this to link several lights together for toggling"
	"targetname"	str 		"Target id of the light"
}

entity "light_flame_large_yellow" "Light->Large yellow flame" ""
{
	"origin"	notuser
	"dmg"			int
	"fadespeed"		int
	"light"		int (300)	"Tells how bright the light is"
	"lightvalue1"	int 	"value between 0-25"
	"lightvalue2"	int 	"value between 0-25"
	"spawnflags"	light_flags1 	"State light starts in"
	"style"		str	 	"use this to link several lights together for toggling"
	"targetname"	str 		"Target id of the light"
}

entity "light_flame_small_yellow" "Light->Small yellow flame" ""
{
	"origin"	notuser
	"dmg"			int
	"fadespeed"		int
	"light"		int (300)	"Tells how bright the light is"
	"lightvalue1"	int 	"value between 0-25"
	"lightvalue2"	int 	"value between 0-25"
	"spawnflags"	light_flags1 	"State light starts in"
	"style"		str	 	"use this to link several lights together for toggling"
	"targetname"	str 		"Target id of the light"
}

entity "light_flame_small_white" "Light->Small white flame" ""
{
	"origin"	notuser
	"lightvalue1"	int 	"value between 0-25"
	"lightvalue2"	int 	"value between 0-25"
	"fadespeed"		int
	"light"		int (300)	"Tells how bright the light is"
	"style"		str	 	"use this to link several lights together for toggling"
	"targetname"	str
	"spawnflags"	light_flags
}

entity "light_gem" "Light->Gem shaped Light" ""
{
	"origin"	notuser
	"angle"	angles
	"fadespeed"		int
	"light"		int (300)	"Tells how bright the light is"
	"lightvalue1"	int 	"value between 0-25"
	"lightvalue2"	int 	"value between 0-25"
	"spawnflags"	light_flags2 	"State light starts in"
	"style"		str	 	"use this to link several lights together for toggling"
	"targetname"	str 		"Target id of the light"
}

entity "light_torch_castle" "Light->Medieval Torch" ""
{
	"origin"	notuser
	"angle"	angles
	"fadespeed"		int
	"health"		int
	"light"		int (300)	"Tells how bright the light is"
	"lightvalue1"	int 	"value between 0-25"
	"lightvalue2"	int 	"value between 0-25"
	"style"		str	 	"use this to link several lights together for toggling"
	"spawnflags"	light_flags2 	"State light starts in"
	"targetname"	str 		"Target id of the light"
}

entity "light_torch_eqypt" "Light->Egyptian Torch" ""
{
	"origin"	notuser
	"abslight"	float
	"angle"	angles
	"fadespeed"		int
	"health"		int
	"light"		int (300)	"Tells how bright the light is"
	"lightvalue1"	int 	"value between 0-25"
	"lightvalue2"	int 	"value between 0-25"
	"spawnflags"	light_flags2 	"State light starts in"
	"style"		str	 	"use this to link several lights together for toggling"
	"targetname"	str 		"Target id of the light"
}

entity "light_torch_meso" "Light->Meso Torch" ""
{
	"origin"	notuser
	"angle"	angles
	"fadespeed"		int
	"health"		int
	"light"		int (300)	"Tells how bright the light is"
	"lightvalue1"	int 	"value between 0-25"
	"lightvalue2"	int 	"value between 0-25"
	"spawnflags"	light_flags2 	"State light starts in"
	"style"		str	 	"use this to link several lights together for toggling"
	"targetname"	str 		"Target id of the light"
}

entity "light_palace_torch" "Light->Palace Torch" ""
{
	"origin"	notuser
	"angle"	angles
	"abslight"	float
	"fadespeed"		int
	"health"		int
	"light"		int (300)	"Tells how bright the light is"
	"lightvalue1"	int 	"value between 0-25"
	"lightvalue2"	int 	"value between 0-25"
	"spawnflags"	light_flags1 	"State light starts in"
	"style"		str	 	"use this to link several lights together for toggling"
	"targetname"	str 		"Target id of the light"
}

entity "light_torch_rome" "Light->Roman Torch" ""
{
	"origin"	notuser
	"angle"	angles
	"fadespeed"		int
	"health"		int
	"light"		int (300)	"Tells how bright the light is"
	"lightvalue1"	int 	"value between 0-25"
	"lightvalue2"	int 	"value between 0-25"
	"spawnflags"	light_flags2 	"State light starts in"
	"style"		str	 	"use this to link several lights together for toggling"
	"targetname"	str 		"Target id of the light"
}

entity "light_torch_small_walltorch" "Light->Small walltorch" ""
{
	"origin"	notuser
	"angle"	angles
	"fadespeed"		int
	"light"		int (300)	"Tells how bright the light is"
	"lightvalue1"	int 	"value between 0-25"
	"lightvalue2"	int 	"value between 0-25"
	"spawnflags"	light_flags2 	"State light starts in"
	"style"		str	 	"use this to link several lights together for toggling"
	"targetname"	str 		"Target id of the light"
}

flagdef "globe_flag"
{
	1 "Start Low"
}

entity "light_globe" "Light->Globe" ""
{
	"origin" notuser
	"light"		int (600)
	"lightvalue1"	int (0)
	"lightvalue2"	int (11)
	"style"		int (0)
	"fadespeed"		int (1)
	"spawnflags"	globe_flag
}

entity "misc_fireball" "Light->Fireball" "Small fireball (gives off light, harms player)"
{
	"origin"		notuser
	"angle"		notuser
}

entity "NATE_9000" "Misc->Nate 9000" ""
{
	"origin" notuser
	"angle"  angles
}

entity "misc_explobox" "Misc->Explobox" ""
{
	"origin"	notuser
}

entity "misc_explobox2" "Misc->Explobox2" ""
{
	"origin"	notuser
}
// -------------------------------------------------------------------------
// monsters

flagdef "monster_spawnflags"
{
	1	"Ambush"
	2 	"Stuck"
	4 	"Jump"
	16	"Dormant"
}

flagdef "monster_spawnflags2"
{
	1	"Ambush"
}

flagdef "monster_spawnflags_imp"
{
	1	"STAND"
	2 	"HOVER"
	64	"FROZEN"
}

flagdef "monster_arch_flags"
{
	1 "AMBUSH"
	2 "STUCK"
	4 "JUMP"
	16 "DORMANT"
	32 "NO_DROP"
	64 "FROZEN"
}

entity "monster_archer" "Monster1->Archer" ""
{
	"origin"		notuser
	"angle"		angles	
	"health"		int (80)
	"experience"	int  (25)
	"spawnflags"	monster_arch_flags
	mdl		"models/archer.mdl"
}

entity "monster_archer_ice" "Monster1->Archer Ice" ""
{
	"origin"		notuser
	"angle"		angles	
	"health"		int (80)
	"experience"	int  (25)
	"spawnflags"	monster_arch_flags
	mdl		"models/archer.mdl"
}

entity "monster_archer_lord" "Monster1->Archer Lord" ""
{
	"origin"		notuser
	"angle"		angles	
	"health"		int (400)
	"experience"	int  (200)
	"spawnflags"	monster_arch_flags
	mdl		"models/archer.mdl"
}

entity "monster_eidolon" "Monster1->The Boss" ""
{
	"origin"		notuser
	"angle"		angles	
	mdl		"models/boss/bigeido.mdl"
}

entity "monster_fallen_angel" "Monster1->Fallen Angel" ""
{
	"origin"		notuser
	"angle"		angles	
	"health"		int 
	"experience"	int 
	"spawnflags"	monster_spawnflags
	mdl		"models/fangel.mdl"
}

entity "monster_fallen_angel_lord" "Monster1->Fallen Angel Lord" ""
{
	"origin"		notuser
	"angle"		notuser	
	"health"		int 
	"experience"	int 
	"spawnflags"	monster_spawnflags
	mdl		"models/fangel.mdl"
}

typedef "fish_skin_defs"
{
	0 "Bright colored"
	1 "Dark colored"
}

entity "monster_fish" "Monster1->Decorative Fish" ""
{
	"origin"		notuser
	"angle"		angles
	"skin"		fish_skin_defs	
	mdl		"models/fish.mdl"
}

entity "monster_golem_bronze" "Monster1->Bronze Golem" ""
{
	"origin"		notuser
	"angle"		angles	
	"health"		int (500)
	"experience"	int  (275)
	"spawnflags"	monster_spawnflags2
	mdl		"models/golem_b.mdl"
}

entity "monster_golem_crystal" "Monster1->Crystal Golem" ""
{
	"origin"		notuser
	"angle"		angles	
	"health"		int (800)
	"experience"	int  (550)
	"spawnflags"	monster_spawnflags2
	mdl		"models/golem_s.mdl"
}

entity "monster_golem_iron" "Monster1->Iron Golem" ""
{
	"origin"		notuser
	"angle"		angles	
	"health"		int (400)
	"experience"	int  (200)
	"spawnflags"	monster_spawnflags2
	mdl		"models/golem_i.mdl"
}

entity "monster_golem_stone" "Monster1->Stone Golem" ""
{
	"origin"		notuser
	"angle"		angles	
	"health"		int (200)
	"experience"	int  (125)
	"spawnflags"	monster_spawnflags2
	mdl		"models/golem_s.mdl"
}

flagdef "monster_hydra_flags"
{
	1 "STAND"
	2 "HOVER"
	4 "JUMP"
	16 "DORMANT"
}

entity "monster_hydra" "Monster1->Hydra" ""
{
	"origin"		notuser
	"angle"		angles
	"experience"	int  	
	"health"		int 
	"spawnflags"	monster_hydra_flags
	mdl		"models/hydra.mdl"
}

entity "monster_imp_fire" "Monster1->Red imp" ""
{
	"origin"		notuser
	"angle"		angles	
	"experience"	int  
	"health"		int 
	"spawnflags"	monster_spawnflags_imp
	"wait"		int "if set to -1, imp won't come alive"
	mdl		"models/imp.mdl"
}

entity "monster_imp_ice" "Monster1->Ice imp" ""
{
	"origin"		notuser
	"angle"		angles	
	"experience"	int  
	"health"		int 
	"spawnflags"	monster_spawnflags_imp
	"wait"		int "if set to -1, imp won't come alive"
	mdl		"models/imp.mdl"
}

entity "monster_imp_lord" "Monster1->Imp Lord" ""
{
	"origin"		notuser
	"angle"		angles	
	"experience"	int
	"health"		int 
	"spawnflags"	monster_spawnflags_imp
	"wait"		int "if set to -1, imp won't come alive"
	mdl		"models/imp.mdl"
}

entity "monster_medusa_green" "Monster1->Green medusa" ""
{
	"origin"		notuser
	"angle"		angles
	"experience"	int  	
	"health"		int 
	"spawnflags"	monster_spawnflags
	mdl		"models/medusa.mdl"
}

entity "monster_medusa_red" "Monster1->Red medusa" ""
{
	"origin"		notuser
	"angle"		angles	
	"experience"	int 
	"health"		int  
	"spawnflags"	monster_spawnflags
	mdl		"models/medusa.mdl"
}

flagdef "mummy_flag"
{
	1 "AMBUSH"
}

entity "monster_mummy" "Monster1->Mummy" ""
{
	"origin"		notuser
	"angle"		angles	
	"health"		int (150)
	"experience"	int  (500)
	"spawnflags"	mummy_flag
	mdl		"models/mumshot.mdl"
}

entity "monster_mummy_lord" "Monster1->Mummy lord" ""
{
	"origin"		notuser
	"angle"		angles	
	"health"		int (500)
	"experience"	int  (300)
	"spawnflags"	monster_spawnflags
	mdl		"models/mumshot.mdl"
}

entity "monster_rat" "Monster2->A rat" "does not attack player"
{
	"origin"		notuser
	"angle"		angles	
	"spawnflags"	monster_spawnflags2
	mdl		"models/rat.mdl"
}

entity "monster_ratnest" "Monster2->5-6 rats" "don't attack player"
{
	"origin"		notuser
	"angle"		angles	
	"spawnflags"	monster_spawnflags2
	mdl		"models/rat.mdl"
}

entity "monster_raven" "Monster2->Black Bird" ""
{
	"origin"		notuser
	"angle"		angles	
	"spawnflags"	monster_spawnflags2
	mdl		"models/raven.mdl"
}

entity "monster_scorpion_black" "Monster2->Black Scrorpion" ""
{
	"origin"		notuser
	"angle"		angles	
	"health"		int (200)
	"experience"	int (150)
	"spawnflags"	monster_spawnflags2
	mdl		"models/scorpion.mdl"
}

entity "monster_scorpion_yellow" "Monster2->Yellow Scrorpion" ""
{
	"origin"		notuser
	"angle"		angles	
	"health"		int (100)
	"experience"	int (60)
	"spawnflags"	monster_spawnflags2
	mdl		"models/scorpion.mdl"
}

entity "monster_skull_wizard" "Monster2->Skull Wizard" ""
{
	"origin"		notuser
	"angle"		angles	
	"health"		int 
	"experience"	int 
	"spawnflags"	monster_spawnflags2
	mdl		"models/skullwiz.mdl"
}

entity "monster_skull_wizard_lord" "Monster2->Skull Wizard Lord" ""
{
	"origin"		notuser
	"angle"		angles	
	"health"		int 
	"experience"	int 
	"spawnflags"	monster_spawnflags2
	mdl		"models/skullwiz.mdl"
}

entity "monster_snake" "Monster2->Snake" ""
{
	"origin"		notuser
	"angle"		angles	
	"health"		int 
	"experience"	int 
	"spawnflags"	monster_spawnflags2
	mdl		"models/snake.mdl"
}

entity "monster_spider_red_large" "Monster2->Big red spider" ""
{
	"origin"		notuser
	"angle"		angles	
	"health"		int (100)
	"experience"	int  (800)
	"spawnflags"	monster_spawnflags1
	mdl		"models/spider.mdl"
}

entity "monster_spider_red_small" "Monster2->Small red spider" ""
{
	"origin"		notuser
	"angle"		angles	
	"health"		int (100)
	"experience"	int  (800)
	"spawnflags"	monster_spawnflags1
	mdl		"models/spider.mdl"
}

entity "monster_spider_yellow_large" "Monster2->Big yellow spider" ""
{
	"origin"		notuser
	"angle"		angles	
	"health"		int (100)
	"experience"	int  (800)
	"spawnflags"	monster_spawnflags1
	mdl		"models/spider.mdl"
}

entity "monster_spider_yellow_small" "Monster2->Small yellow spider" ""
{
	"origin"		notuser
	"angle"		angles	
	"health"		int (100)
	"experience"	int  (800)
	"spawnflags"	monster_spawnflags1
	mdl		"models/spider.mdl"
}

entity "monster_werejaguar" "Monster2->Were Jaguar" ""
{
	"origin"		notuser
	"angle"		angles	
	"health"		int (100)
	"experience"	int  (800)
	"spawnflags"	monster_spawnflags
	"targetname"	str
	mdl		"models/mezzoman.mdl"
}

entity "monster_werepanther" "Monster2->Black Were Jaguar" ""
{
	"origin"		notuser
	"angle"		angles	
	"health"		int (100)
	"experience"	int  (800)
	"spawnflags"	monster_spawnflags
	"targetname"	str
	mdl		"models/mezzoman.mdl"
}

entity "monster_weresnowleopard" "Monster2->Snow Leopard" ""
{
	"origin"		notuser
	"angle"		angles	
	"health"		int (475)
	"experience"	int  (350)
	"spawnflags"	monster_spawnflags
	"target"		str
	"targetname"	str
	mdl		"models/mezzoman.mdl"

}

entity "monster_weretiger" "Monster2->Weretiger" ""
{
	"origin"		notuser
	"angle"		angles	
	"health"		int (650)
	"experience"	int  (400)
	"spawnflags"	monster_spawnflags
	"target"		str
	"targetname"	str
	mdl		"models/mezzoman.mdl"

}

entity "rider_death" "Rider->Death" ""
{
	"origin"		notuser
	"angle"		angles	
	"map"			str
	mdl		"models/boss/dthhorse.mdl"
}

entity "rider_famine" "Rider->Famine" ""
{
	"origin"		notuser
	"angle"		angles	
	"map"			str
	mdl		"models/boss/famhorse.mdl"
}

entity "rider_pestilence" "Rider->Pestilence" ""
{
	"origin"		notuser
	"angle"		angles	
	"map"			str
	mdl		"models/boss/boar.mdl"
}

entity "rider_war" "Rider->War" ""
{
	"origin"		notuser
	"angle"		angles	
	"map"			str
	"target"		str
	mdl		"models/boss/warhorse.mdl"
}




// -------------------------------------------------------------------------
// misc

flagdef "sheep_flag"
{
	1 		"STATIONARY"
	2		"STUCK"
	4		"JUMP"
	16		"DORMANT"
	32		"NO_DROP"
	64          "START_FROZEN"
	128		"RESPAWN"
}

entity "player_sheep" "Misc->Sheep" ""
{
	"origin"	notuser
	"angle"	angles
	"health"	int
	"message"	str		
	"scale"	int
	"spawnflags"	sheep_flag	""
	mdl		"models/sheep.mdl"
}

entity "camera_remote" "Misc->Remote Camera" "Switches views when triggered"
{
	"origin"		notuser
	"angle"		notuser
      "angles_x"		int  	"x-pitch of camera"
	"angles_y"		int	"y-pitch of camera"
	"health"		int
	"netname"		str
	"target"		str
	"targetname"	str
	"wait"		float
}

entity "item_spawner" Misc->Itemspawner" ""
{
	"origin"	notuser
	"target"	str
	"targetname"	str
}

entity "target_null" "Misc->Target_null" "Target to point at for the camera_remote entity"
{
	"origin"		notuser
	"targetname"	str

}

flagdef "particle_explosion_flags"
{
	1 "Flash"
}

typedef "px_colors"
{
	31 "white"
	47 "light blue"
	63 "purple"
	79 "light green"
	85 "light brown"
	101 "red (default)"
	117 "light blue ?"
	133 "yellow"
	149 "green"
	238 "red to orange"
	242 "purple to red"
	246 "green to purple"
	250 "blue to green"	
	254 "yellow to blue"
}

typedef "px_sounds"
{
	0 "None"
	1 "Rocket explosion"
	2 "Grenade shoot"
}

entity "fx_particle_explosion" "Misc->Particle Explosion" ""
{
	"origin"		notuser
	"spawnflags"	particle_explosion_flags
	"color"		px_colors	
	"exploderadius"   int (5)	"1-10"
	"sountype"        px_sounds (1)
	"counter"		int (512) "number of particles to create, 1-1024"
}

entity "fx_friction_change" "Misc->Friction" ""
{
	"origin"	notuser
	"friction"	int	"1 is normal 0 is slippery and less than 1 is high friction"
	model
}

entity "fx_gravity_change" "Misc->Gravity" ""
{
	"origin"	notuser
	"gravity"   int	"0 - 100 low gravity, >100 high gravity"
	model
}

typedef "kinda_smoke"
{
	 0 	"white puff"
	 1 	"red"
	 2 	"green"
	 3 	"grey"
}

entity "fx_smoke_generator" "Misc->SmokeGenerator" ""
{
	"origin"		notuser
	"angle"		angles
	"lifespan"		int
	"thingtype"		kinda_smoke
	"wait"		int (2)
}

flagdef "colorbeam_flags"
{
	1 "Start off"
}

typedef "colorbeam_noise"
{
	0 "None"
	1 "lightning"
}

typedef "colorbeam_colors"
{
	0 "red"
	1 "blue"
	2 "green"
	3 "white"
	4 "yellow"
}

entity "fx_colorbeam_start" "Misc->Colorbeam Start" ""
{
	"origin"		notuser
	"spawnflags"	colorbeam_flags
	"noise"		colorbeam_noise
	"target"		str
	"wait"		int
	"color"		colorbeam_colors
	"lifespan"		int
}

entity "fx_colorbeam_end" "Misc->Colorbeam End" ""
{
	"origin" notuser
	"targetname"	str
}

entity "misc_fountain" "Misc->Sprinkling fountain" ""
{
	"origin"		notuser
	"angles"		str (0 0 0)
	"cnt"			int (2)
	"color"		int  (256)
	"movedir"		str (1 1 1)
}

typedef "sound_maker_noisez"
{
	  1	 "bell ringing"
	  2	 "Organ Music"
	  3 	 "Tomb sound"
}

entity "sound_maker" "Misc->SoundMaker" ""
{
	"origin"		notuser
	"targetname"	str 
	"soundtype"		sound_maker_noisez
}

typedef "sound_ambient_noisez"
{
   	1	"windmill"
   	2 	"dripping, echoing sewer water sound"
   	3 	"dripping water with no echo"
   	4 	"subtle sky/wind"
   	5 	"crickets / night sounds"
   	6 	"birds"
   	7 	"raven caw"
   	8 	"rocks falling"
  	9	"lava bubble"
  	10 	"water gurgle"
	11    "metal"
      12    "pounding"
      13    "random moans and screams"
      14    "creaking"
      15    "chain rattling"
      16    "gurgling water noise"
}

entity "sound_ambient" "Misc->Ambient Sounds" ""
{
	"origin"		notuser
	"soundtype"		sound_ambient_noisez
}

flagdef "thunder_flags"
{
	1 	"lightning: casts random lightning strikes"
}

entity "light_thunderstorm" "Misc->Thunderstorm" ""
{
	"origin"		notuser
	"dmg"			int
	"frags"		int (1000)
	"lightvalue1"	int
	"spawnflags"	thunder_flags
	"targetname"	str
	"wait"		int
}

flagdef "plaque_flags"
{
	1 	"Invisible"
	2	"Deactivated"
	4	"no_line_of_sight"
	8	"not_solid"
}

entity "plaque" "Misc->Plaque on wall" ""
{
	"origin"		notuser
	"angle"		angles
	"message"		str
	"noise1"		str
	"targetname"	str
	"spawnflags"	plaque_flags
	"wait"		int
}

flagdef "puzzle_flags"
{
	1 "SPAWN"
	2 "FLOATING"
	4 "AUTO_GET"
	8 "STICKHERE"
}

entity "puzzle_piece" "Misc->Puzzle Piece" ""
{
	"origin"		notuser
	"puzzle_id"		str    "name of the MDLfile"
	"netname"		str
	"targetname"	str
	"spawnflags"	puzzle_flags
}

entity "puzzle_static_piece" "Misc->Static Puzzle Piece" ""
{
	"origin"		notuser
	"puzzle_id"		str    "name of the MDLfile"
	"lifespan"		int
}

entity "rider_quake" "Misc->Rider Quake" ""
{
	"origin"	notuser
}

entity "rider_quake_center" "Misc->Rider Quakecenter" ""
{
	"origin"	notuser
}

flagdefs	"path_flags"
{
	1 "SYNCH"
}

entity "path_corner " "Misc->Path Corner" ""
{
	"angles"			str   "(0 0 0)"
	"anglespeed"		int
	"spawnflags"		path_flags
	"speed"			int
	"target"			str
	"targetname"		str
	
}

entity "trigger_relay" "Misc->Relay" "Allows delayed/multiple actions from one trigger"
{
	"killtarget"	str			"Kills something [for triggering monster events] (optional)"
	"target"		str			"Trigger name of target"
	"wait"		int			"Delay before retrigger"
	"delay"		int			"Delay before action is triggered"
	"netname"		str
	"aflag"		str
	"failchance"	int
	"health"		int			"if > 1, must be killed to trigger, if == 0, walk-over trigger"
	"message"		str			"String displayed when triggered"
	"targetname"	str
	"target"		str
	model
}

entity "air_bubbles" "Misc->Air bubbles" ""
{
	"origin"	notuser
	"cnt"		int
	"level"     int
	"targetname" str
	"wait"	int   "-1 only triggers once, -2 removed after it's triggered"
}

entity "misc_teleporttrain" "Misc->Teleport Train" ""
{
	"origin" notuser
}

entity "misc_noisemaker" "Misc->Noise Maker" ""
{
	"origin" notuser
}

// -------------------------------------------------------------------------
// triggers


flagdef "activate_flags"
{
	1 	"ONCE"
	2 	"RELAY"
	4	"NO_TOUCH"
	8	"DEACTIVATED"
}

entity "trigger_activate" "Trigger1->Activator" ""
{
	"health"		int
	"delay"		int
	"wait"		int     
	"spawnflags"	activate_flags ""
	"targetname"	str
	"target"		str
	"killtarget"	str
	"netname"		str
	"aflag"		int
	"message"		str
	model
}

entity "trigger_deactivate" "Trigger1->Deactivator" ""
{
	"health"		int
	"delay"		int
	"wait"		int
	"spawnflags"	activate_flags ""
	"targetname"	str
	"target"		str
	"killtarget"	str
	"netname"		str
	"aflag"		int
	"message"		str
	"style"		int
	model
}

flagdef "ani_event_flags"
{
	1 "START"
	2 "STOP_FIRST"
	4 "STOP_LAST"
	8 "NO_REMOVE"
}

entity "trigger_ani_event" "Trigger1->Ani Event" ""
{
	"spawnflags"	ani_event_flags
	"targetname"	str
	model
}

entity "trigger_attack" "Trigger1->Attacker" ""
{
	"health"		int
	"delay"		int
	"wait"		int
	"targetname"	str
	"target"		str
	"killtarget"	str
	"netname"		str
	"aflag"		int
	"message"		str
	model
}

flagdef "changelevel_flags"
{
	1 	"NO INTERMISSION"
	2 	"END OF UNIT"
	4 	"END OF EPISODE"

}

entity "trigger_changelevel" "Trigger1->Change Level" "Changes to another level"
{
	"map"			string		"Map to change to on trigger"
	"spawnflags"	changelevel_flags ""
	"targetname"	str
	model
}

entity "trigger_check" "Trigger1->Checker" ""
{
	"health"		int
	"delay"		int
	"wait"		int
	"targetname"	str
	"target"		str
	"killtarget"	str
	"failtarget"	str
	"netname"		str
	"aflag"		int
	"message"		str
	model
}

flagdef "count_flag"
{
	1 	"NO MESSAGE"
	2 	"ORDERED"
	4 	"ALWAYS RETURN"
	8 	"DEACTIVATED"
}

entity "trigger_counter" "Trigger1->Counter" "Triggers action after it has been triggered count times."
{
	"count"		int			"Decrements on each trigger.  When 0 activates target."
	"wait"		int			"Required delay before retrigger"
	"delay"		int			"Delay before action is triggered"
	"netname"		str
	"mangle"		str
	"spawnflags"	count_flag	
	"target"		str			"Trigger name of its target"
	"targetname"	str			"Its trigger name"
	model
}

flagdef "reset_flag"
{
	1 	"NO TOUCH"
	2 	"MONSTER TOUCH"
	4 	"PUSH TOUCH"
	8 	"DEACTIVATED"
	16 	"REMOVE PP"
	32 	"NO PUZZLE"
	64 	"LIGHT TOGGLE"
	128   "LIGHT START LOW"
}

entity "trigger_counter_reset" "Trigger1->Reset Counter" ""
{
	"wait"		int			"Required delay before retrigger"
	"failchance"	int
	"netname"		str
	"spawnflags"	reset_flag	
	"target"		str			"Trigger name of its target"
	"targetname"	str			"Its trigger name"
	model
}

entity "trigger_combination_assign" "Trigger1->Combination Assign" ""
{
	"health"		int
	"wait"		int			"Required delay before retrigger"
	"delay"		int			"Delay before action is triggered"
	"netname"		str
	"mangle"		str
	"message"		str
	"failchance"	int
	"spawnflags"	reset_flag
	"target"		str			"Trigger name of its target"
	"targetname"	str			"Its trigger name"
	model
}

entity "trigger_control" "Trigger1->Controler" ""
{
	"delay"		int
	"target"		str
	"killtarget"	str
	"netname"		str
	"aflag"		int
	"message"		str
	"targetname"	str
	model
}

flagdef "crosslevel_flags"
{
	1 	"TRIGGER1"
	2 	"TRIGGER2"
	4 	"TRIGGER3"
	8	"TRIGGER4"
	16	"TRIGGER5"
	32	"TRIGGER6"
	64	"TRIGGER7"
	128	"TRIGGER8"
}

entity "trigger_crosslevel" "Trigger1->CrossLevel" "Changes to another level"
{
	"map"			string		"Map to change to on trigger"
	"health"		int
	"delay"		int
	"wait"		int
	"message"		str
	"netname"		str
	"target"		str
	"killtarget"	str
	"spawnflags"	crosslevel_flags ""
	"targetname"	str
	model
}

entity "trigger_crosslevel_target" "Trigger1->CrossLevel Target" ""
{
	"delay"		int
	"wait"		int
	"netname"		str
	"target"		str
	"message"		str
	"killtarget"	str
	"spawnflags"	crosslevel_flags
	"targetname"	str
	model
}

entity "trigger_hub_intermission" "Trigger1->Hub Intermission" ""
{
	"origin"	notuser
	"map"		str
	"target"	str
	"targetname"	str
	model
}

flagdef "trigger_hurt_flags"
{
	1	"PLAYER_ONLY"
	2	"MONSTER_ONLY"
	8	"INACTIVE"
	
}

entity "trigger_hurt" "Trigger1->Hurt" "Hurts whatever touches the trigger"
{
	"dmg"			int (5) 	"Damage done to touching entity"
	"level"		int
	"wait"		int
	"target"		str		"Trigger name of target"
	"targetname"	str		"Its trigger name"
	"spawnflags"	trigger_hurt_flags
	model
}

flagdef "interval_flag"
{
	1 "ONCE"
	2 "RELAY"
	8 "DEACTIVATED"
}

entity "trigger_interval" "Trigger1->Interval" ""
{
	"health"		int
	"wait"		int			"Required delay before retrigger"
	"delay"		int			"Delay before action is triggered"
	"netname"		str
	"message"		str
	"aflag"		str
	"failchance"	int
	"spawnflags"	interval_flag	
	"target"		str			"Trigger name of its target"
	"targetname"	str			"Its trigger name"
	"killtarget"		str
	model
}

flagdef "interval_flag"
{
	1 "ONCE"
	2 "RELAY"
	8 "DEACTIVATED"
}

entity "trigger_message_transfer" "Trigger1->Message Transfer" ""
{
	"wait"		int			"Required delay before retrigger"
	"delay"		int			"Delay before action is triggered"
	"netname"		str
	"aflag"		str
	"message"		str
	"target"		str			"Trigger name of its target"
	"targetname"	str			"Its trigger name"
	"killtarget"		str
	model
}

flagdef "trigger_mjump_flags"
{
	1	"ACTIVATE"
}

entity "trigger_monsterjump" "Trigger1->Monster Jump" "Causes triggering monster to jump in a direction"
{
	"angle"	angles
	"height"	int (200)
	"distance"	int 
	"speed"	int (200)
	"spawnflags" trigger_mjump_flags
	"target"	str		"Trigger name of target"
	"targetname"	str		"Its trigger name"
	model
}

typedef "multiple_sounds"
{
	0	"None"
	1	"Secret"
	2	"Beep-beep"
	3	"Large Switch"
}

entity "trigger_multiple" "Trigger2->Multiple" "Triggers action (can be retriggered)"
{
	"killtarget"	str			"Kills something [for triggering monster events] (optional)"
	"target"		str			"Trigger name of target"
	"soundtype"		multiple_sounds	"Sound made when triggered"
	"wait"		int			"Delay before retrigger"
	"delay"		int			"Delay before action is triggered"
	"netname"		str
	"aflag"		str
	"health"		int			"if > 1, must be killed to trigger, if == 0, walk-over trigger"
	"message"		str			"String displayed when triggered"
	"spawnflags"	reset_flag
	"target"		str
	"targetname"	str			"Its trigger name"
	"no_puzzle_msg"	str
	model
}

flagdef "trigger_obj_flags"
{
	1	"FORCE_ON"
	2	"FORCE_OFF"
}

entity "trigger_objective" "Trigger2->Objective" ""
{
	"origin"	notuser
	"frags"	int
	"target"	str
	"targetname"	str
	"spawnflags"	trigger_obj_flags	
	model
}

entity "trigger_once" "Trigger2->Once" "Triggers action (can be retriggered)"
{
	"killtarget"	str			"Kills something [for triggering monster events] (optional)"
	"target"		str			"Trigger name of target"
	"soundtype"		multiple_sounds	"Sound made when triggered"
	"wait"		int			"Delay before retrigger"
	"delay"		int			"Delay before action is triggered"
	"netname"		str
	"aflag"		str
	"failchance"	int
	"lighttoggle"	int
	"lightvalue1"	int
	"lightvalue2"	int
	"fadespeed"		float
	"health"		int			"if > 1, must be killed to trigger, if == 0, walk-over trigger"
	"message"		str			"String displayed when triggered"
	"spawnflags"	reset_flag
	"style"		int
	"targetname"	str
	"target"		str
	"no_puzzle_msg"	str
	model
}

flagdef "push_flags"
{
	1	"Push once"
}

entity "trigger_push" "Trigger2->Push" "Pushes a player in a direction (like a windtunnel)"
{
	"speed"		int		"Force of the push"
	"angles"		angles		"Direction player is pushed towards (-1=up -2=down, other=normal)"
	"spawnflags"	push_flags	""
	"targetname"	str		"Its trigger name"
	model
}

flagdef "rubble_flags"
{
	1 "NOTOUCH"
	8 "INACTIVE"
}

typedef "rubble_things"
{
	1 "GREYSTONE"
	2 "WOOD"
	3 "METAL"		
      4 "FLESH"
	5 "FIRE"		
	6 "CLAY"		
	7 "LEAVES"
	8 "HAY"
	9 "BROWNSTONE"	
	10 "CLOTH"
	11 "WOOD_LEAF"	
	12 "WOOD_METAL"		
	13 "WOOD_STONE"		
	14 "METAL_STONE"		
	15 "METAL_CLOTH" 
	16 "WEBS"		 	
	17 "GLASS" 			
	18 "ICE" 			
	19 "CLEARGLASS" 	
	20 "REDGLASS" 	
	21 "ACID"	 	
}

entity "trigger_rubble" "Trigger2->Rubble" ""
{
	"origin"	notuser
	"count"	int
	"dmg"		int
	"thingtype" rubble_things
	model
}

entity "trigger_sound_distance" "Trigger2->Sound Distance" ""
{
	"noise"	int (800)
	"message"	str
	model
}

flagdef "trigger_stop_flags"
{
	1 "NOTOUCH"
}

entity "trigger_stop" "Trigger2->Stop" ""
{
	"origin"	notuser
	"target"	str
	"targetname"	str
	"spawnflags"	trigger_stop_flags
	model
}

flagdef "quake"
{
	1 	"Do damage"
	2	"Multiple"
}

entity "trigger_quake" "Trigger2->Quake" ""
{
	"angle"		notuser
	"killtarget"	str		"Removes targeted entity (optional)"
	"dmg"			int
	"wait"		int
	"items"		int
	"frags"		int		"0 or 1"
	"lifespan"		int
	"target"		str		"Trigger name of its target"
	"targetname"	str		"Its trigger name"
	"spawnflags"	quake
	model
}

flagdef "teleport_flags"
{
	1	"PLAYER_ONLY"
	2	"SILENT"
	4	"DEACTIVATE"
	8	"INACTIVE"
	16	"CHAOS"
}

entity "trigger_teleport" "Trigger2->Teleport" "Teleport (all trigger_ keys are triggered by walkover)"
{
	"target"	str		"Teleport destination name to teleport to."
	"targetname"	str 		"If present, only teleports when triggered, not when touched."
	"spawnflags"	teleport_flags	""
	model
}

entity "trigger_teleport_newmap" "Trigger2->Teleport newmap" ""
{
	"target"	str	"map e?m?"
	model
}

entity "trigger_fan_blow" "Trigger2->Fan Blow" "Blows anything in the direction you specify with it's func_rotating"
{
	"targetname"	str
	model
}

flagdef "tr_reflect_flags"
{
	1 "Activate"
}

entity "trigger_reflect" "Trigger2->Reflect" "Reflects flying objects"
{
	"target"	str
	"targetname"	str
	"spawnflags	tr_reflect_flags
	model
}

typedef "tr_secret_sounds"
{
	0	"None"
	1	"Secret"
	2	"Beep-beep"
}

entity "trigger_secret" "Trigger2->Secret" "Secret trigger"
{
	"message"	str
	"target"	str
	"targetname"	str
	"soundtype"	tr_secret_sounds	
	model
}

entity "trigger_setskill" "Trigger2->Setskill" ""
{
	"noise"	str
	model
}

flagdef "trigger_dtouch_flags"
{
	1	"NO_TOUCH"
	2	"PLAYER_ONLY"
	4	"GIB"
	8	"INACTIVE"
}

entity "trigger_deathtouch" "Trigger2->Death Touch" ""
{
	"spawnflags"	trigger_dtouch_flags
	"target"	str
	"targetname"	str
	"th_die"	str
	model
}

entity "trigger_no_friction" "Trigger2->No Friction" ""
{
	"target"	str
	"targetname"	str
	model
}

flagdef "nomessage"
{
	1	"Display no message when triggered"
}


// -------------------------------------------------------------------------
// weapons

flagdef "weapon_flags"
{
	1	"Weapon floats in air"
}


entity "wp_weapon2" "Weapon->Weapon2" ""
{
	"origin"	notuser
	"spawnflags"	weapon_flags	""
	mdl		"models/w_l2_c1.mdl"
}

entity "wp_weapon3" "Weapon->Weapon3" ""
{
	"origin"	notuser
	"spawnflags"	weapon_flags	""
	mdl		"models/w_l3_c1.mdl"
}

entity "wp_weapon4_head" "Weapon->Weapon4 Head" ""
{
	"origin"	notuser
	"spawnflags"	weapon_flags	""
	mdl		"models/w_l41_c1.mdl"
}

entity "wp_weapon4_staff" "Weapon->Weapon4 Staff" ""
{
	"origin"	notuser
	"spawnflags"	weapon_flags	""
	mdl		"models/w_l42_c1.mdl"
}

//---------------------------------------------------------------------
//  Traps

flagdef "fireball"
{
	1  "Trigger only"
}

entity "trap_fireball" "Traps->Shoots fireballs" ""
{
	"origin"		notuser
	"angle"		angles
	"dmg"			int
	"spawnflags"	fireball
	"target"		str
	"targetname"	str
	"wait"		float
	mdl    "models/fireball.mdl"
}

entity "trap_boulder" "Traps->Boulder" ""
{
	"origin"       str
	"target"	   str
	"targetname"   str
}

entity "trap_death_fireball" "Traps->Death Fireball" ""
{
	"dmg"	int
	"target" str
	"targetname" str
	"wait"	int
}

flagdef "lightning"
{
	1  "Track"
	2  "Once"
}

typedef "lightning_noise"
{
	1 	"no sound"
	2 	"lightning"
}

entity "trap_lightning" "Traps->Lightning" ""
{
	"origin"		notuser
	"aflag"		int
	"angle"		angles
	"dmg"			int
	"noise"		lightning_noise
	"target"		str
	"targetname"	str
	"spawnflags"	lightning
	"wait"		int
}

flagdef "shooter"
{
	1 	"superspike"
	2 	"laser"
}

entity "trap_shooter" "Traps->Shooter" ""
{
	"origin"		notuser
	"angle"		angles
	"nextthink"		int
	"spawnflags"	shooter
}

flagdef "spikeshooter"
{
	1 	"superspike"
	2 	"laser"
}

entity "trap_spikeshooter" "Traps->Spikeshooter" ""
{
	"origin"		notuser
	"angle"		angles
	"wait"		float
	"nextthink"		int
	"spawnflags"	spikeshooter
}

entity "trap_spikeshooter_spray" "Traps->SpikeSprayShooter" ""
{
	"origin"		notuser
	"angle"		angles
	"wait"		float
	"nextthink"		int
}

//---------------------------------------------------------------------------------
//  Rider

entity "rider_trigger_multiple" "Rider->Multiple Rider Trigger" ""
{
	"rt_chance"		float		"chance (0-1) that the trigger will be run"
	model
}

entity "rider_trigger_once" "Rider->Multiple Rider Once" ""
{
	"rt_chance"		float		"chance (0-1) that the trigger will be run"
	model
}

entity "rider_path" "Rider->Rider Path" ""
{
	"origin"	notuser
	"path_id"	str
	"next_path_1"  str
	"next_path_2"  str
	"next_path_3"  str
	"next_path_4"  str
}

//---------------------------------------------------------------------------------
//  Other

flagdef "icy_flags"
{
	1	"NO TRANSLUCENCY"
}

entity "obj_ice" "Other->Icy Brush" ""
{
	"abslight"		float (0.5)
	"friction"		float (0.2)
	"health"		int  (20) 
	"spawnflags"	icy_flags
	model
}

flagdef "break_flags"
{
	1 	"KILLALL"
	2 	"HIERARCHY"
	4 	"NOLINK"
	8 	"CHECKNAME"
	16 	"ORDERED"
	32 	"TRANSLUCENT"
	64 	"INVINCIBLE"
	128 	"INVISIBLE"
}

entity "breakable_brush" "Other->Breakable Brush" ""
{
	"abslight"		float (0.5)
	"frags"		int
      "health"		int
      "netname"		str
	"spawnflags"	break_flags
      "thingtype"		rot_thing
	model
}

entity "brush_pushable" "Other->Pushable Brush" ""
{
	"mass"		int (5)
	model
}

flagdef "rope_link_flags"
{
	1 "Start"
}

entity "ropebridge_link" "Other->Ropebridge Link" ""
{
	"target"	str	"next link targetname"
	"targetname"	str
	"spawnflags"	rope_link_flags
	model
}

// ----------------------------------------------------------------------------------
//  weather

typedef "lightning_start_noise"
{
	1 	"No sound"
	2 	"Lightning"
}

flagdef "lightn_start"
{
	1 	"Start off"
	2 	"Thundersound"
}

entity "weather_lightning_start" "Weather->Lightning start" ""
{
	"wait"		float
	"lifespan"		int
	"origin"		notuser
	"noise"		lightning_start_noise
	"spawnflags"	lightn_start
	"targetname"	str
	"target"		str
	"wait"		float
}

entity "weather_lightning_end" "Weather->Lightning End" ""
{
	"origin"		notuser
	"targetname"	str
}

typedef "sunbeam_start_noise"
{
	1 	"No sound"
	2 	"Lightning"
}

flagdef "sunbeam_start"
{
	1 	"Start off"
}

entity "weather_sunbeam_start" "Weather->Ray of Sunlight" ""
{
	"wait"		float
	"lifespan"		int
	"origin"		notuser
	"noise"		sunbeam_start_noise
	"spawnflags"	sunbeam_start
	"targetname"	str
	"target"		str
	"wait"		float
}

entity "weather_sunbeam_end" "Weather->Sunlight End" ""
{
	"origin"		notuser
	"targetname"	str
}

flagdef "dust_flag"
{
	16 "INACTIVE"
}

entity "weather_dust" "Weather->Dust" ""
{
	"origin"   notuser
	"color"    int (101)	"Palette color of dust"
	"count"    int (10)
	"spawnflags"  dust_flag
}
	
typeder "rain_sound"
{
     0	"rain"
     1	"drip"

}

flagdef "rain_flags"
{
	1 "FALL STRAIGHT"
	2 "NO SPLAT"
}

entity "weather_rain" "Weather->Rain" ""
{
	"color"		int (414)
	"counter"		int (300)
	"wait"		float (0.1)
	"soundtype"		rain_sound
	"spawnflags"	rain_flags
	model
}

flagdef "weather_snow_flags"
{
	1 "FLUFFY"
	2 "MIXED"
	4 "HALF_BRIGHT"
	8 "NO_MELT"
	16 "IN_BOUNDS"
	32 "NO_TRANS"
}

entity "weather_snow" "Weather->Snow" ""
{
	"origin"	notuser
	"angles"	 int
	"anglespeed" int (125)
	"counter"	 int (100)
	"movedir"    str                 "(0 0 0)"
	"soundtype"	 int (0)
	"spawnflags"	weather_snow_flags
	"speed"	 int (200)
	"veer"	 int
	model
}

//---------------------------------------------------------
// Monster3

entity "monster_eidolon_weakling" "Monster3->Eidolon Weakling" ""
{
	"angle"	angles
	"origin"	notuser
	"targetname"	str
}

entity "monster_buddha" "Monster3->Praevus" ""
{
	"origin"	notuser
	"angle"	notuser
	"netname"	str
	"target"	str
	"targetname"   str
}

entity "buddha_trigger_endgame" "Monster3->Praevus Ending" ""
{
	"origin"	notuser
	"targetname"   str
}

entity "teleport_buddha" "Monster3->Praevus Teleports" ""
{
	"origin"	notuser
	"cnt"		int
}

flagdef "pentacle_flags"
{
	1 "STATIONARY"
	2 "ONESURF"
	4 "NOFLOOR"
	8 "NOJUMP"
	16 "NOSPIT"
}

typedef "pent_skin_flags"
{
	0 "Brown Rocky"
	1 "White Snowy"
}

entity "monster_pentacles" "Monster3->Pentacles" ""
{
	"origin"	notuser
	"angle"     angles
	"experience_value" int (100)
	"skin"	pent_skin_flags
	"spawnflags"	pentacle_flags
	"speed"	int (8)
	"target"	str
}

flagdef "yak_flags"
{
	1 "AMBUSH"
	2 "STUCK"
	4 "JUMP"
	16 "DORMANT"
}

typedef "yak_skins"
{
	0 "White"
	1 "Brown"
	2 "Black"
}

entity "monster_yakman" "Monster3->Yakman" ""
{
	"origin" notuser
	"angle"  angles
	"health"	int
	"skin"	yak_skins	"0 = White 1 = Brown 2 = Black"
	"spawnflags"	yak_flags
	"target"	str
	"targetname"	str
}

//------------------------------------------------------------
// Objects4

entity "obj_book_o_the_dead" "Objects4->Book o the Dead" ""
{
	"origin"	notuser
	"angle"	angles
	"health"  	int
	"scale"	float
}

entity "obj_chinese_kite_lamp" "Objects4->Chinese Kite Lamp" ""
{
	"origin"	notuser
	"abslight"  float
	"scale"	int
}

entity "obj_chinese_sign" "Objects4->Chinese Sign" ""
{
	"origin"	notuser
	"abslight"  float
	"angle"	angles
	"scale"	int
}

entity "obj_shiva" "Objects4->Shiva" ""
{
	"origin"	notuser
	"abslight"  float
	"angle"	angles
	"scale"	int
	"targetname"	str
}

entity "obj_skeleton" "Objects4->Skeleton" ""
{
	"origin"	notuser
	"angle"	angles
	"abslight"  float
	"health"	int (20)
	"mass"	int (200)
	"scale"	int
	"targetname"  str
}

entity "obj_skeleton_throne" "Objects4->Skeleton Throne" ""
{
	"angle"	angles
	"origin"	notuser
	"targetname"  str
}

entity "obj_snow_corner" "Objects4->Snow Corner" ""
{
	"origin"	notuser
	"abslight"  float
	"angles"	str  
	"scale"	int
}

entity "obj_snow_pile" "Objects4->Snow Pile" ""
{
	"origin"	notuser
	"abslight"  float
	"angles"	str  
	"scale"	int
}

entity "obj_snow_wall" "Objects4->Snow Wall" ""
{
	"origin"	notuser
	"abslight"  float
	"angles"	str 
	"scale"	int
}

entity "obj_stalagmite1" "Objects4->Stalagmite1" ""
{
	"origin"	notuser
	"abslight"  float
	"angles"	str  
	"health"	int (20)
	"scale"	int
}

entity "obj_stalagmite2" "Objects4->Stalagmite2" ""
{
	"origin"	notuser
	"abslight"  float
	"angles"	str  
	"scale"	int
	"health"	int (40)
	
}
//---------eof