//
//  HexenII Entity Set for Qoole
//  By EraserX (EraserX@mindless.com)
//  
//  Updated by Matt "WhiteFang" Ayres
//
// ******************************************
// Updated by BludBath (potenberg@jvlnet.com)
//    Not relation to Lithium Software
// ******************************************

class "Ammo"	 
class "Armor"
class "Artifacts" 
class "Info"
class "Light"   
class "Misc"
class "Monster1"  
class "Monster2"
class "Objects1" 	
class "Objects2" 
class "Objects3" 	
class "Player"  
class "Rings"  
class "Sprites"  
class "Statues" 	  
class "Traps"
class "Weapon"  
class "Func" 	
class "Other"
class "Trigger"
class "Rider"   	 	
class "Weather"

typedef "worldtypes"
{
	0	"Medieval"
	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_sword_and_crown" "Artifacts->Sword and Crown" ""
{
	"origin"	notuser
	"targetname"	str
	"spawnflags"	art	""
	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"
{
	"abslight"		float
	"origin"		str
	"targetname"	str
	"target"		str
	"mangle"		int
	"cnt"			int
	"netname"		str
	"speed"		int
	"dmg"			int
	"spawnflags"	angle_flags
	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"
}

entity "func_button" "Func->Button" "Button"
{
	"abslight"		float
	"angle"		angles		"Angle button moves?"
	"speed"		int		"Speed it moves in?"
	"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"
	"wait"		int		"Wait until retrigger? (-1 stays pressed)"
	"delay"		int		"Delay before action is triggered"
	"targetname"	str		""
	"target"	str		"Trigger name of target entity"
	"spawnflags"	button_flags
	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
}
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"
	"speed"		int (100)		"speed of movement (100 default)(optional)"
	"soundtype"		door_sounds (1)	"sound it makes"
	"wait"		int (3)		"delay before closing (3 default, -1 never return) (optional)"
	"spawnflags"	door_spawnflags	"Flags describing the object (optional)"
	"level"		int
	"strength"		int
	"lip"			int (8)		"amount remaining at end of move (8 default) (optional)"
	"message"		str			"message printed if door is opened by trigger"
	"health"		int			"if set, door must be shot open"
	"dmg"			int			"damage inflicted on blocking entities"
	"targetname"	str			"Door's trigger name (optional)"
	"no_puzzle_msg"	str
	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"		int
	"speed"		int
	"message"	str
	"targetname"	str
	"wait"		int
	"lip"		int
	"dmg"		int
	"soundtype"	door_sounds (1)
	"spawnflags"	door_smash
	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"
{
	"origin"		str (0 0 0)
	"abslight"		float
	"flags" 		int	"How many degrees the door will rotate"
	"flags2" 		int	"Will damage an object it touches"
	"speed"		int (100)	
	"soundtype"		door_sounds (1)	"sound it makes"
	"wait"		int (3)		"-1 will set it to never return"
	"spawnflags"	door_rot	
	"level"		int
	"strenght"		int
	"lip"			int (8)	
	"message"		str		
	"health"		int		
	"dmg"			int		
	"targetname"	str		
	"no_puzzle_msg"	str
	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"
	"speed"		int (100)		"Speed of movement"
	"soundtype"	door_sounds (1)		"Sound it makes"
	"wait"		int (3)			"Delay before closing"
	"spawnflags"	door_secret_spawnflags	"Flags describing the object (optional)"
	"lip"		int (8)			"Some kind of offset (optional)"
	"targetname"	str			"Door's trigger name"
	"t_width"	int
	"t_length"	int 
	"no_puzzle_msg" str
	"dmg"		int			"damage inflicted on blocking entities"
	model
}

flagdef "illus_flag"
{
	1 	"Transculent"
	2	"Light"
}
entity "func_illusionary" "Func->Illusionary" "Creates brush that appears solid, but isn't"
{
	"abslight"		float
	"targetname"	str		""
	"spawnflags"	illus_flag
	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" ""
{
	"angles"		angles
	"cnt"			int
	"aflag"		int
	"spawnername"	str
	"targetname"	str		""
	"wait"		float
	"spawnflags"	monster_spawner_flags
	model
}
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" ""
{
	"angles"		angles
	"cnt"			int
	"aflag"		int
	"spawnername"	str
	"targetname"	str		""
	"wait"		float
	"spawnflags"	monster_spawner_spot_flags
	model
}
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
	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
	"mass"		int
	"angle"		angles
	"speed"		int (40)
	"soundtype"		press_sounds
	"targetname"	str
	"target"		str
	"speed"		int
	"lip"			int
	"health"		int
	"spawnflags"		press_flags
	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
	"speed"		int (100)	
	"wait"		int (3)	
	"spawnflags"	rot_flags	
	"anglespeed"	int
	"health"		int		
	"dmg"			int		
	"targetname"	str		
	"thingtype"		rot_thing
	"lifetime"	int "Set to 1 so it won't be on forever"
	model
}
flagdef "movechain"
{
	1	"NOANGLECHAIN"
}
entity "func_rotating_movechain" "Func->Movechain Rotating" ""
{
	"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"		str
	"anglespeed"	int
	"angle"		angles
	"wait"		int
	"soundtype"		train_sounds 		
	"pausetime"		int
	"speed"		int 
	"dmg"			int (2)
	"spawnflags"	train_flags
	"targetname"	str			"Its trigger name"
	"target"		str			"Trigger name of its first path_corner destination"
	"thingtype"		rot_thing
	model
}
flagdef "wall_flags"
{
	1 	"TRANSLUCENT"
}
entity "func_wall" "Func->Wall" "Changes texture to alternate texture when triggered"
{
	"abslight"		float
	"targetname"	str	
	"spawnflags"	wall_flags
	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
}


entity "info_null" "Info->Null (Light Target)" "Used as a positional target for spotlights (removes itself)"
{
	"origin"	notuser
	"angle"		notuser
	"targetname"	str
}
flagdef "teleport_dest"
{
	1	"No Throw"
}


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


// -------------------------------------------------------------------------
// 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"
}


// -------------------------------------------------------------------------
// player

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

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


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

entity "info_player_coop" "Player->Coop" "A coop player start (more than one allowed)"
{
	"origin"	notuser
	"angle"		notuser
	gem "player"
}

entity "info_player_start2" "Player->Start 2" "Return point from episode"
{
	"origin"	notuser
	"angle"		notuser
	gem "player"
}
// -------------------------------------------------------------------------
// objects

flagdef "ballista"
{
	1		"Ballista Track"
}
entity "obj_ballista" "Objects1->Ballista" ""
{
	"origin"	notuser
	"angle"		notuser
	"cnt"		int
	"count"		int
	"dmg"		int
	"speeds"	int
	"targetname"	str
	"spawnflags"	ballista
	mdl		"models/ballista.mdl"
}
flagdef "barrel"
{
	1 		"Downhill"
	2 		"No drop"
	3 		"On Side"
	4 		"Sink"
}
entity "obj_barrel" "Objects1->Barrel" ""
{
	"origin"	notuser
	"health"	int
	"spawnflags"	barrel
	"target"	str
}
entity "obj_barrel_exploding" "Objects1->Explosive Barrel" ""
{
	"origin"	notuser
	"health"	int
	"spawnflags"	barrel
	"target"	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"
}
entity "obj_catapult2" "Objects1->Catapult" ""
{
	"origin"	notuser
	"speed"	int
	"health"    int
	"mass"	int
	"soundtype"	cat_sound
	mdl		"models/cattest.mdl"
}
entity "obj_barstool" "Objects1->Objects barstool" ""
{
	"angle"		notuser
	"origin"	notuser
	mdl		"models/stool.mdl"
}
entity "obj_beefslab" "Objects1->Slab of beef" ""
{
	"health"	int
	"angle"		notuse
	"origin"	notuser
	mdl		"models/beefslab.mdl"
}
entity "obj_bell" "Objects1->Huge Bell" ""
{
	"health"	int
	"angle"		notuser
	"origin"	notuser
	mdl		"models/bellring.mdl"
}
entity "obj_bench" "Objects1->Wooden bench" ""
{
	"angle"		notuser
	"origin"	notuser
	mdl		"models/bench.mdl"
}
entity "obj_bonepile" "Objects1->Pile of bones" ""
{
	"health"	int
	"angle"		notuser
	"origin"	notuser
	mdl		"models/bonepile.mdl"
}
entity "obj_book_closed" "Objects1->Closed Book" ""
{
	"health"	int
	"angle"		notuser
	"origin"	notuser
	mdl		"models/bookclos.mdl"
}
entity "obj_book_open" "Objects1->Open Book" ""
{
	"health"	int
	"angle"		notuser
	"origin"	notuser
	mdl		"models/bookopen.mdl"
}

entity "obj_boulder" "Objects1->Boulder" ""
{
	"health"	int
	"angle"		notuser
	"origin"	notuser
	mdl		"models/boulder.mdl"
}
entity "obj_bush1" "Objects1->Small bush" ""
{
	"health"	int
	"origin"	notuser
	mdl		"models/bush1.mdl"
}

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

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

entity "obj_chaos_orb" "Objects1->Eidolon's Power Source" ""
{
	"angle"		notuser
	"origin"	notuser
}

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

typedef "chest"
{
	 0	"medieval"	
	 1   	"roman texture"
}
	
entity "obj_chest1" "Objects2->Chest" ""
{
	"angle"		notuser
	"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"		notuser
	"origin"		notuser
	"target"		str
	"spawnflags"	chest2
	mdl		"models/chest2.mdl"
}

entity "obj_chest3" "Objects2->TreasureChest" ""
{
	"angle"		notuser
	"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->Dead Body" ""
{
	"angle"		notuser
	"health"		int
	"mass" 		int
	"origin"		notuser
	"target"		str
	"skin"		dead_body
	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->Dead Body II" ""
{
	"angle"		notuser
	"health"		int
	"mass" 		int
	"origin"		notuser
	"target"		str
	"skin"		dead_body2
	mdl		"models/corps2.mdl"
}

entity "obj_fence" "Objects2->Fence" ""
{
	"angle"		notuser
	"health"		int
	"origin"		notuser
	mdl		"models/fence.mdl"
}
entity "obj_flag" "Objects2->Flag" ""
{
	"angle"		notuser
	"health"		int
	"origin"		notuser
	mdl		"models/flag.mdl"
}
entity "obj_fountain" "Objects2->Fountain" ""
{
	"angle"		notuser
	"mass" 		int
	"health"		int
	"origin"		notuser
	mdl		"models/fountain.mdl"
}

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

entity "obj_hedge2" "Objects2->Hedge 2" ""
{
	"angle"		notuser
	"mass" 		int
	"health"		int
	"origin"		notuser
	mdl		"models/hedge2.mdl"
}
entity "obj_hedge3" "Objects2->Hedge 3" ""
{
	"angle"		notuser
	"mass" 		int
	"health"		int
	"origin"		notuser
	mdl		"models/hedge3.mdl"
}

entity "obj_pew" "Objects2->A church pew" ""
{
	"angle"		notuser
	"health"		int
	"origin"		notuser
	mdl		"models/pew.mdl"
}
entity "obj_plant_generic" "Objects2->Plant" ""
{
	"health"		int
	"angle"		notuser
	"origin"		notuser
	mdl		"models/plantgen.mdl"
}
entity "obj_plant_meso" "Objects2->Meso Plant" ""
{
	"health"		int
	"angle"		notuser
	"origin"		notuser
	mdl		"models/plantmez.mdl"
}
entity "obj_plant_rome" "Objects2->Roman Plant" ""
{
	"health"		int
	"angle"		notuser
	"origin"		notuser
	mdl		"models/plantrom.mdl"
}

entity "obj_playerhead_assassin" "Objects2->Assassins head" ""
{
	"health"		int
	"angle"		notuser
	"origin"		notuser
	mdl		"models/h_ass.mdl"
}
entity "obj_playerhead_necromancer" "Objects2->Necromancer head" ""
{
	"health"		int
	"angle"		notuser
	"origin"		notuser
	mdl		"models/h_nec.mdl"
}
entity "obj_playerhead_crusader" "Objects3->Crusader head" ""
{
	"health"		int
	"angle"		notuser
	"origin"		notuser
	mdl		"models/h_cru.mdl"
}
entity "obj_playerhead_paladin" "Objects3->Paladin head" ""
{
	"health"		int
	"angle"		notuser
	"origin"		notuser
	mdl		"models/h_pal.mdl"
}
entity "obj_pot1" "Objects3->Clay pot" ""
{
	"health"		int
	"target"		str
	"mass" 		int
	"angle"		notuser
	"origin"		notuser
	mdl		"models/pot1.mdl"
}
entity "obj_pot2" "Objects3->Gently curved pot" ""
{
	"health"		int
	"target"		str
	"mass" 		int
	"angle"		notuser
	"origin"		notuser
	mdl		"models/pot2.mdl"
}
entity "obj_pot3" "Objects3->Pot with curved sides" ""
{
	"health"		int
	"target"		str
	"mass" 		int
	"angle"		notuser
	"origin"		notuser
	mdl		"models/pot3.mdl"
}
entity "obj_seaweed" "Objects3->Seaweed" ""
{
	"angle"		notuser
	"origin"		notuser
	mdl		"models/seaweed.mdl"
}
entity "obj_skull" "Objects3->Skull" ""
{
	"health"		int
	"angle"		notuser
	"origin"		notuser
	mdl		"models/skull.mdl"
}
entity "obj_skullstick" "Objects3->Skull on stick" ""
{
	"health"		int
	"angle"		notuser
	"origin"		notuser
	mdl		"models/skllstk1.mdl"
}
entity "obj_skullstick2" "Objects3->Skull on stick 2" ""
{
	"health"		int
	"angle"		notuser
	"origin"		notuser
	mdl		"models/skllstk2.mdl"
}
entity "obj_sword" "Objects3->Sword" ""
{
	"health"		int
	"angle"		notuser
	"origin"		notuser
	mdl		"models/sword.mdl"
}

entity "obj_tombstone1" "Objects3->Tombstone I" ""
{
	"health"		int
	"angle"		notuser
	"origin"		notuser
	mdl		"models/tombstn1.mdl"
}
entity "obj_tombstone2" "Objects3->Tombstone II" ""
{
	"health"		int
	"angle"		notuser
	"origin"		notuser
	mdl		"models/tombstn2.mdl"
}
entity "obj_tree" "Objects3->Tree without leaves" ""
{
	"health"		int
	"angle"		notuser
	"origin"		notuser
	mdl		"models/tree.mdl"
}
entity "obj_tree2" "Objects3->Tree with leaves" ""
{
	"health"		int
	"angle"		notuser
	"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"
	"health"		int
	"angle"		notuser
	"origin"		notuser
	"skin"		webz
	"scale"		float 		"Make the web bigger, value 0-2.5"
	"v_angle "		str			"rotate 3D, default is '0 0 0'"
	"spawnflags"	web_flag
	mdl		"models/webs.mdl"
 }


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


entity "obj_statue_angel" "Statues->Angel" ""
{
	"health"		int
	"angle"		notuser
	"origin"		notuser
	mdl		"models/anglstat.mdl"
}
entity "obj_statue_athena" "Statues->Athena" ""
{
	"health"		int
	"angle"		notuser
	"origin"		notuser
	mdl		"models/athena.mdl"
}
entity "obj_statue_caesar" "Statues->Caesar" ""
{
	"health"		int
	"angle"		notuser
	"origin"		notuser
	mdl		"models/caesar.mdl"
}

entity "obj_statue_king" "Statues->King" ""
{
	"health"		int
	"angle"		notuser
	"origin"		notuser
	mdl		"models/king.mdl"
}
entity "obj_statue_lion" "Statues->Lion" ""
{
	"health"		int
	"angle"		notuser
	"origin"		notuser
	mdl		"models/lion.mdl"
}
entity "obj_statue_mars" "Statues->Mars" ""
{
	"health"		int
	"angle"		notuser
	"origin"		notuser
	mdl		"models/mars.mdl"
}
entity "obj_statue_mummy" "Statues->Mummy" ""
{
	"health"		int
	"angle"		notuser
	"origin"		notuser
	mdl		"models/mumstatu.mdl"
}
entity "obj_statue_mummy_head" "Statues->Nubis Head" ""
{
	"health"		int
	"angle"		notuser
	"origin"		notuser
	mdl		"models/mhdstatu.mdl"
}
entity "obj_statue_neptune" "Statues->Neptune" ""
{
	"health"		int
	"angle"		notuser
	"origin"		notuser
	mdl		"models/neptune.mdl"
}
entity "obj_statue_olmec" "Statues->Olmec" ""
{
	"health"		int
	"angle"		notuser
	"origin"		notuser
	mdl		"models/olmec1.mdl"
}
flagdef "snake"
{
	1  	"Invincible"
}
entity "obj_statue_snake" "Statues->Snake" ""
{
	"health"		int
	"angle"		notuser
	"origin"		notuser
	"spawnflags"	snake
	mdl		"models/snkstatu.mdl"
}
entity "obj_statue_snake_coil" "Statues->Snake Coil" ""
{
	"health"		int
	"angle"		notuser
	"origin"		notuser
	mdl		"models/snake.mdl"
}
entity "obj_statue_tut" "Statues->TutAhnkammon" ""
{
	"health"		int
	"angle"		notuser
	"origin"		notuser
	mdl		"models/tutstatu.mdl"
}

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

flagdef "light_flags"
{
	1		"start low"
}
entity "light" "Light->Light" "A projected light.  No visible lightsource."
{
	"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"
	"spawnflags"	light_flags 	"State light starts in"
	"targetname"	str 		"Target id of the light"
}

entity "light_flame_large_yellow" "Light->Large yellow 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"
	"spawnflags"	light_flags 	"State light starts in"
	"targetname"	str 		"Target id of the light"
}
entity "light_flame_small_yellow" "Light->Small yellow 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"
	"spawnflags"	light_flags 	"State light starts in"
	"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"	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"
	"spawnflags"	light_flags 	"State light starts in"
	"targetname"	str 		"Target id of the light"
}
entity "light_torch_castle" "Light->Medieval Torch" ""
{
	"origin"	notuser
	"angle"	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"
	"spawnflags"	light_flags 	"State light starts in"
	"targetname"	str 		"Target id of the light"
}
entity "light_torch_eqypt" "Light->Egyptian Torch" ""
{
	"origin"	notuser
	"angle"	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"
	"spawnflags"	light_flags 	"State light starts in"
	"targetname"	str 		"Target id of the light"
}
entity "light_torch_meso" "Light->Meso Torch" ""
{
	"origin"	notuser
	"angle"	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"
	"spawnflags"	light_flags 	"State light starts in"
	"targetname"	str 		"Target id of the light"
}
entity "light_torch_rome" "Light->Roman Torch" ""
{
	"origin"	notuser
	"angle"	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"
	"spawnflags"	light_flags 	"State light starts in"
	"targetname"	str 		"Target id of the light"
}
entity "light_torch_small_walltorch" "Light->Small walltorch" ""
{
	"origin"	notuser
	"angle"	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"
	"spawnflags"	light_flags 	"State light starts in"
	"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 "misc_explobox" "Misc->Explobox" ""
{
	"origin"	notuser
}
entity "misc_explobox2" "Misc->Explobox2" ""
{
	"origin"	notuser
}
// -------------------------------------------------------------------------
// monsters

flagdef "monster_spawnflags"
{
	1	"Ambush"
	2 	"Stuck"
	4 	"Jump"
	8 	"Play dead"
	16	"Dormant"
}
flagdef "monster_spawnflags2"
{
	1	"Ambush"
}

flagdef "monster_spawnflags_imp"
{
	1	"Ambush"
	2 	"Stuck"
	4 	"Jump"
	8 	"Play dead"
	16	"Gargoyle"
	32	"Pick up"
}
flagdef "monster_implord_spawnflags"
{
	1 "Stand"
	2 "Hover"
	16 "Gargoyle"
}
entity "monster_archer" "Monster1->Archer Knight" ""
{
	"origin"		notuser
	"angle"		notuser	
	"health"		int (80)
	"experience"	int  (25)
	"spawnflags"	monster_spawnflags
	mdl		"models/archer.mdl"
}
entity "monster_archer_lord" "Monster1->Archer Lord" ""
{
	"origin"		notuser
	"angle"		notuser	
	"health"		int (400)
	"experience"	int  (200)
	"spawnflags"	monster_spawnflags
	mdl		"models/archer.mdl"
}
entity "monster_eidolon" "Monster1->The Boss" ""
{
	"origin"		notuser
	"angle"		notuser	
	mdl		"models/boss/chaosorb.mdl"
}
entity "monster_fallen_angel" "Monster1->Fallen Angel" ""
{
	"origin"		notuser
	"angle"		notuser	
	"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"
}
entity "monster_fish" "Monster1->Decorative Fish" ""
{
	"origin"		notuser
	"angle"		notuser	
	mdl		"models/fish.mdl"
}
entity "monster_golem_bronze" "Monster1->Bronze Golem" ""
{
	"origin"		notuser
	"angle"		notuser	
	"health"		int (500)
	"experience"	int  (275)
	"spawnflags"	monster_spawnflags2
	mdl		"models/golem_b.mdl"
}

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

entity "monster_golem_iron" "Monster1->Iron Golem" ""
{
	"origin"		notuser
	"angle"		notuser	
	"health"		int (400)
	"experience"	int  (200)
	"spawnflags"	monster_spawnflags2
	mdl		"models/golem_i.mdl"
}
entity "monster_golem_stone" "Monster1->Stone Golem" ""
{
	"origin"		notuser
	"angle"		notuser	
	"health"		int (200)
	"experience"	int  (125)
	"spawnflags"	monster_spawnflags2
	mdl		"models/golem_s.mdl"
}
entity "monster_hydra" "Monster1->Hydra" ""
{
	"origin"		notuser
	"angle"		notuser	
	"health"		int 
	"experience"	int  
	"spawnflags"	monster_spawnflags
	mdl		"models/hydra.mdl"
}
entity "monster_imp_fire" "Monster1->Red imp" ""
{
	"origin"		notuser
	"angle"		notuser	
	"wait"		int "if set to -1, imp won't come alive"
	"health"		int 
	"experience"	int  
	"spawnflags"	monster_spawnflags_imp
	mdl		"models/imp.mdl"
}

entity "monster_imp_ice" "Monster1->Blue imp" ""
{
	"origin"		notuser
	"angle"		notuser	
	"wait"		int "if set to -1, imp won't come alive"
	"health"		int 
	"experience"	int  
	"spawnflags"	monster_spawnflags_imp
	mdl		"models/imp.mdl"
}
entity "monster_imp_lord" "Monster1->Imp Lord" ""
{
	"origin"		notuser
	"angle"		notuser	
	"wait"		int "if set to -1, imp won't come alive"
	"health"		int 
	"experience"	int  
	"spawnflags"	monster_implord_spawnflags
	mdl		"models/imp.mdl"
}
entity "monster_medusa_green" "Monster1->Green medusa" ""
{
	"origin"		notuser
	"angle"		notuser	
	"health"		int 
	"experience"	int  
	"spawnflags"	monster_spawnflags
	mdl		"models/medusa.mdl"
}
entity "monster_medusa_red" "Monster1->Red medusa" ""
{
	"origin"		notuser
	"angle"		notuser	
	"health"		int 
	"experience"	int  
	"spawnflags"	monster_spawnflags
	mdl		"models/medusa.mdl"
}
entity "monster_mummy" "Monster1->Mummy" ""
{
	"origin"		notuser
	"angle"		notuser	
	"health"		int (150)
	"experience"	int  (500)
	"spawnflags"	monster_spawnflags
	mdl		"models/mumshot.mdl"
}

entity "monster_mummy_lord" "Monster1->Mummy lord" ""
{
	"origin"		notuser
	"angle"		notuser	
	"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"		notuser	
	"spawnflags"	monster_spawnflags2
	mdl		"models/rat.mdl"
}
entity "monster_ratnest" "Monster2->5-6 rats" "don't attack player"
{
	"origin"		notuser
	"angle"		notuser	
	"spawnflags"	monster_spawnflags2
	mdl		"models/rat.mdl"
}
entity "monster_raven" "Monster2->Black Bird" ""
{
	"origin"		notuser
	"angle"		notuser	
	"spawnflags"	monster_spawnflags2
	mdl		"models/raven.mdl"
}

entity "monster_scorpion_black" "Monster2->Black Scrorpion" ""
{
	"origin"		notuser
	"angle"		notuser	
	"health"		int (100)
	"experience"	int (800)
	"spawnflags"	monster_spawnflags
	mdl		"models/scorpion.mdl"
}
entity "monster_scorpion_yellow" "Monster2->Yellow Scrorpion" ""
{
	"origin"		notuser
	"angle"		notuser	
	"health"		int (100)
	"experience"	int (800)
	"spawnflags"	monster_spawnflags
	mdl		"models/scorpion.mdl"
}
entity "monster_skull_wizard" "Monster2->Skull Wizard" ""
{
	"origin"		notuser
	"angle"		notuser	
	"health"		int 
	"experience"	int 
	"spawnflags"	monster_spawnflags2
	mdl		"models/skullwiz.mdl"
}
entity "monster_skull_wizard_lord" "Monster2->Skull Wizard Lord" ""
{
	"origin"		notuser
	"angle"		notuser	
	"health"		int 
	"experience"	int 
	"spawnflags"	monster_spawnflags2
	mdl		"models/skullwiz.mdl"
}
entity "monster_snake" "Monster2->Snake" ""
{
	"origin"		notuser
	"angle"		notuser	
	"health"		int 
	"experience"	int 
	"spawnflags"	monster_spawnflags2
	mdl		"models/snake.mdl"
}
entity "monster_spider_red_large" "Monster2->Big red spider" ""
{
	"origin"		notuser
	"angle"		notuser	
	"health"		int (100)
	"experience"	int  (800)
	"spawnflags"	monster_spawnflags
	mdl		"models/spider.mdl"
}
entity "monster_spider_red_small" "Monster2->Small red spider" ""
{
	"origin"		notuser
	"angle"		notuser	
	"health"		int (100)
	"experience"	int  (800)
	"spawnflags"	monster_spawnflags
	mdl		"models/spider.mdl"
}
entity "monster_spider_yellow_large" "Monster2->Big yellow spider" ""
{
	"origin"		notuser
	"angle"		notuser	
	"health"		int (100)
	"experience"	int  (800)
	"spawnflags"	monster_spawnflags
	mdl		"models/spider.mdl"
}
entity "monster_spider_yellow_small" "Monster2->Small yellow spider" ""
{
	"origin"		notuser
	"angle"		notuser	
	"health"		int (100)
	"experience"	int  (800)
	"spawnflags"	monster_spawnflags
	mdl		"models/spider.mdl"
}

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

entity "rider_death" "Monster2->Death rider" ""
{
	"origin"		notuser
	"angle"		notuser	
	"map"			str
	mdl		"models/boss/dthhorse.mdl"
}
entity "rider_famine" "Monster2->Famine rider" ""
{
	"origin"		notuser
	"angle"		notuser	
	"map"			str
	mdl		"models/boss/fanhorse.mdl"
}
entity "rider_pestilence" "Monster2->Pestilence rider" ""
{
	"origin"		notuser
	"angle"		notuser	
	"map"			str
	mdl		"models/boss/boar.mdl"
}

entity "rider_war" "Monster2->War rider" ""
{
	"origin"		notuser
	"angle"		notuser	
	"map"			str
	mdl		"models/boss/warhorse.mdl"
}




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

flagdef "sheep_flag"
{
	1 		"sheep will not wander or turn around"
	2		"Stuck"
	4		"Jump"
	8		"Play dead"
	16		"Dormant"
	32		"No drop"
}
entity "player_sheep" "Misc->Sheep" ""
{
	"origin"	notuser
	"angle"		notuser
	"spawnflags"	sheep_flag	""
	mdl		"models/sheep.mdl"
}

entity "camera_remote" "Misc->Remote Camera" "Switches views when triggered"
{
	"origin"		notuser
	"angle"		notuser
	"wait"		float
	"target"		str
	"targetname"	str
	"angles_x"		int  	"x-pitch of camera"
	"angles_y"		int	"y-pitch of camera"
}
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"
}
typedef "kinda_smoke"
{
	 0 	"white puff"
	 1 	"red"
	 2 	"green"
	 3 	"grey"
}

entity "fx_smoke_generator" "Misc->SmokeGenerator" ""
{
	"origin"		notuser
	"angle"		notuser
	"wait"		float (2)
	"lifespan"		int
	"thingtype"		kinda_smoke
}
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
}
entity "misc_fountain" "Misc->Sprinkling fountain" ""
{
	"origin"		notuser
	"angles"		str (0 0 0)
	"movedir"		str (1 1 1)
	"color"		int  (256)
	"cnt"			int (2)
}
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"
}
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
	"wait"		float
	"dmg"			int
	"lightvalue1"	int
	"frags"		int (1000)
	"targetname"	str
	"spawnflags"	thunder_flags
}
flagdef "plaque_flags"
{
	1 	"Invisible"
	2	"Deactivated"
}
entity "plaque" "Misc->Plaque on wall" ""
{
	"origin"		notuser
	"message"		str
	"noise1"		str
	"targetname"	str
	"spawnflags"	plaque_flags
}

flagdef "puzzle_flags"
{
	1 "Spawn"
	2 "Floating"
	4 "Auto get"
}
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
	"anglespeed"		int
	"speed"			int
	"target"			str
	"targetname"		str
	"spawnflags"		path_flags
}

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
	"health"		int			"if > 1, must be killed to trigger, if == 0, walk-over trigger"
	"message"		str			"String displayed when triggered"
	"targetname"	str
	"target"		str
}
entity "air_bubbles" "Misc->Air bubbles" ""
{
}
entity "misc_teleporttrain" "Misc->Teleport Train" ""
{
	"origin" notuser
}
entity "misc_noisemaker" "Misc->Noise Maker" ""
{
	"origin" notuser
}
// -------------------------------------------------------------------------
// triggers


flagdef "activate_flags"
{
	1 	"ONCE"
	2 	"RELAY"
	8	"DEACTIVATED"
}
entity "trigger_activate" "Trigger->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" "Trigger->Deactivator" ""
{
	"health"		int
	"delay"		int
	"wait"		int
	"spawnflags"	activate_flags ""
	"targetname"	str
	"target"		str
	"killtarget"	str
	"netname"		str
	"aflag"		int
	"message"		str
	model
}
entity "trigger_attack" "Trigger->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" "Trigger->Change Level" "Changes to another level"
{
	"map"			string		"Map to change to on trigger"
	"spawnflags"	changelevel_flags ""
	"targetname"	str
	model
}
entity "trigger_check" "Trigger->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" "Trigger->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" "Trigger->Reset Counter" ""
{
	"wait"		int			"Required delay before retrigger"
	"netname"		str
	"spawnflags"	reset_flag	
	"target"		str			"Trigger name of its target"
	"targetname"	str			"Its trigger name"
	model
}
entity "trigger_combination_assign" "Trigger->Combination Assign" ""
{
	"health"		int
	"wait"		int			"Required delay before retrigger"
	"delay"		int			"Delay before action is triggered"
	"netname"		str
	"mangle"		str
	"message"		str
	"spawnflags"	reset_flag
	"target"		str			"Trigger name of its target"
	"targetname"	str			"Its trigger name"
	model
}
entity "trigger_control" "Trigger->Controler" ""
{
	"delay"		int
	"target"		str
	"killtarget"	str
	"netname"		str
	"aflag"		int
	"message"		str
	model
}

flagdef "crosslevel_flags"
{
	1 	"TRIGGER1"
	2 	"TRIGGER2"
	4 	"TRIGGER3"
	8	"TRIGGER4"
	16	"TRIGGER5"
	32	"TRIGGER6"
	64	"TRIGGER7"
	128	"TRIGGER8"
}
entity "trigger_crosslevel" "Trigger->CrossLevel" "Changes to another level"
{
	"map"			string		"Map to change to on trigger"
	"health"		int
	"delay"		int
	"wait"		int
	"netname"		str
	"target"		str
	"killtarget"	str
	"spawnflags"	crosslevel_flags ""
	"targetname"	str
	model
}
entity "trigger_crosslevel_target" "Trigger->CrossLevel Target" ""
{
	"delay"		int
	"wait"		int
	"netname"		str
	"target"		str
	"message"		str
	"killtarget"	str
	"spawnflags"	crosslevel_flags
	"targetname"	str
	model
}
entity "trigger_hurt" "Trigger->Hurt" "Hurts whatever touches the trigger"
{
	"dmg"			int (5) 	"Damage done to touching entity"
	"target"		str		"Trigger name of target"
	"targetname"	str		"Its trigger name"
	model
}
flagdef "interval_flag"
{
	1 "ONCE"
	2 "RELAY"
	8 "DEACTIVATED"
}
entity "trigger_interval" "Trigger->Interval" ""
{
	"health"		int
	"wait"		int			"Required delay before retrigger"
	"delay"		int			"Delay before action is triggered"
	"netname"		str
	"message"		str
	"aflag"		str
	"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" "Trigger->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
}

entity "trigger_monsterjump" "Trigger->Monster Jump" "Causes triggering monster to jump in a direction"
{
	"angle"		angles
	"height"	int
	"distance"	int
	"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" "Trigger->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
}

entity "trigger_Once" "Trigger->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
	"health"		int			"if > 1, must be killed to trigger, if == 0, walk-over trigger"
	"message"		str			"String displayed when triggered"
	"spawnflags"	reset_flag
	"targetname"	str
	"target"		str
	"no_puzzle_msg"	str
	model
}
flagdef "push_flags"
{
	1	"Push once"
}

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

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

entity "trigger_quake" "Trigger->Quake" ""
{
	"killtarget"	str		"Removes targeted entity (optional)"
	"wait"		int
	"item"		int
	"lifespan"		int
	"target"		str		"Trigger name of its target"
	"targetname"	str		"Its trigger name"
	"spawnflags"	quake
	model
}

flagdef "teleport_flags"
{
	1	"Only players can use teleport"
	2	"Silent teleport"
	4	"Deactivate"
}

entity "trigger_teleport" "Trigger->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" "Trigger->Teleport newmap" ""
{
	"target"	str	"map e?m?"
	model
}
entity "trigger_fan_blow" "Trigger->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" "Trigger->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" "Trigger->Secret" "Secret trigger"
{
	"message"	str
	"target"	str
	"targetname"	str
	"soundtype"	tr_secret_sounds	
	model
}
entity "trigger_setskill" "Trigger->Setskill" ""
{
	"message"	str
	model
}
entity "trigger_deathtouch" "Trigger->Death Touch" ""
{
	"target"	str
	"targetname"	str
	"th_die"	str
	model
}
entity "trigger_no_friction" "Trigger->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
	"wait"		float
	"dmg"			int
	"targetname"	str
	"target"		str
	"spawnflags"	fireball
}
entity "trap_boulder" "Traps->Boulder" ""
{
	"target"	str
	"targetname"	str
}
entity "trap_death_fireball" "Traps->Death Fireball" ""
{
	"wait"	int
	"dmg"	int
	"target" str
	"targetname" str
}
flagdef "lightning"
{
	1  "Track"
	2  "Once"
}
typedef "lightning_noise"
{
	1 	"no sound"
	2 	"lightning"
}

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

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
}

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

flagdef "icy_flags"
{
	1	"NO TRANSLUCENCY"
}
entity "obj_ice" "Other->Icy Brush" ""
{
	"health"		int  (20) 
	"friction"		float (0.2)
	"abslight"		float (0.5)
	"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" ""
{
	"frags"		int
	"netname"		str
	"abslight"		float (0.5)
	"thingtype"		rot_thing
	"spawnflags"	break_flags
	"health"		int
	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
}
// ----------------------------------------------------------------------------------
//  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
}
entity "weather_dust" "Weather->Dust" ""
{
	"origin"   notuser
	"color"    int (101)	"Palette color of dust"
}	
typeder "rain_sound"
{
     0	"rain"
     1	"drip"

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

entity "weather_rain" "Weather->Rain" ""
{
	"color"		int (256)
	"counter"		int
	"wait"		int
	"soundtype"		rain_sound
	"spawnflags"	rain_flags
	model
}
//---------------------------------------------------------
// Sprites
entity "sprite_tree1" "Sprites->Tree1" ""
{
	"origin"	notuser
}
entity "sprite_tree2" "Sprites->Tree2" ""
{
	"origin"	notuser
}
entity "sprite_treetop" "Sprites->Tree top" ""
{
	"origin"	notuser
}
entity "sprite_backgrnd1" "Sprites->Background1" ""
{
	"origin"	notuser
}
entity "sprite_backgrnd2" "Sprites->Background2" ""
{
	"origin"	notuser
}
entity "sprite_moss1" "Sprites->Moss1" ""
{
	"origin"	notuser
}


//---------eof