^ExistsInWorld:
	AppearsOnRadar:
	UpdatesPlayerStatistics:
	CombatDebugOverlay:
	GivesExperience:
		PlayerExperienceModifier: 1
	ScriptTriggers:
	ConditionManager:
	RenderDebugState:

^SpriteActor:
	BodyOrientation:
	QuantizeFacingsFromSequence:
	AutoSelectionSize:
	RenderSprites:

^GainsExperience:
	GainsExperience:
		Conditions:
			200: rank-veteran
			400: rank-veteran
			800: rank-veteran
			1600: rank-veteran
	GrantCondition@RANK-ELITE:
		RequiresCondition: rank-veteran >= 4
		Condition: rank-elite
	DamageMultiplier@RANK-1:
		RequiresCondition: rank-veteran == 1
		Modifier: 95
	DamageMultiplier@RANK-2:
		RequiresCondition: rank-veteran == 2
		Modifier: 90
	DamageMultiplier@RANK-3:
		RequiresCondition: rank-veteran == 3
		Modifier: 85
	DamageMultiplier@RANK-ELITE:
		RequiresCondition: rank-elite
		Modifier: 75
	FirepowerMultiplier@RANK-1:
		RequiresCondition: rank-veteran == 1
		Modifier: 105
	FirepowerMultiplier@RANK-2:
		RequiresCondition: rank-veteran == 2
		Modifier: 110
	FirepowerMultiplier@RANK-3:
		RequiresCondition: rank-veteran == 3
		Modifier: 120
	FirepowerMultiplier@RANK-ELITE:
		RequiresCondition: rank-elite
		Modifier: 130
	SpeedMultiplier@RANK-1:
		RequiresCondition: rank-veteran == 1
		Modifier: 105
	SpeedMultiplier@RANK-2:
		RequiresCondition: rank-veteran == 2
		Modifier: 110
	SpeedMultiplier@RANK-3:
		RequiresCondition: rank-veteran == 3
		Modifier: 120
	SpeedMultiplier@RANK-ELITE:
		RequiresCondition: rank-elite
		Modifier: 140
	ReloadDelayMultiplier@RANK-1:
		RequiresCondition: rank-veteran == 1
		Modifier: 95
	ReloadDelayMultiplier@RANK-2:
		RequiresCondition: rank-veteran == 2
		Modifier: 90
	ReloadDelayMultiplier@RANK-3:
		RequiresCondition: rank-veteran == 3
		Modifier: 85
	ReloadDelayMultiplier@RANK-ELITE:
		RequiresCondition: rank-elite
		Modifier: 75
	InaccuracyMultiplier@RANK-1:
		RequiresCondition: rank-veteran == 1
		Modifier: 90
	InaccuracyMultiplier@RANK-2:
		RequiresCondition: rank-veteran == 2
		Modifier: 80
	InaccuracyMultiplier@RANK-3:
		RequiresCondition: rank-veteran == 3
		Modifier: 70
	InaccuracyMultiplier@RANK-ELITE:
		RequiresCondition: rank-elite
		Modifier: 50
	SelfHealing@ELITE:
		Step: 2
		Delay: 100
		HealIfBelow: 100
		DamageCooldown: 125
		RequiresCondition: rank-elite
	WithDecoration@RANK-1:
		Image: rank
		Sequence: rank-veteran-1
		Palette: effect
		ReferencePoint: Bottom, Right
		RequiresCondition: rank-veteran == 1
		ZOffset: 256
	WithDecoration@RANK-2:
		Image: rank
		Sequence: rank-veteran-2
		Palette: effect
		ReferencePoint: Bottom, Right
		RequiresCondition: rank-veteran == 2
		ZOffset: 256
	WithDecoration@RANK-3:
		Image: rank
		Sequence: rank-veteran-3
		Palette: effect
		ReferencePoint: Bottom, Right
		RequiresCondition: rank-veteran == 3
		ZOffset: 256
	WithDecoration@RANK-ELITE:
		Image: rank
		Sequence: rank-elite
		Palette: effect
		ReferencePoint: Bottom, Right
		RequiresCondition: rank-elite
		ZOffset: 256

^AcceptsCloakCrate:
	Cloak:
		InitialDelay: 15
		CloakDelay: 90
		CloakSound: trans1.aud
		UncloakSound: trans1.aud
		RequiresCondition: cloak
	ExternalCondition@CLOAK:
		Condition: cloak

^Vehicle:
	Inherits@1: ^ExistsInWorld
	Inherits@3: ^SpriteActor
	Huntable:
	Mobile:
		Crushes: crate
		TerrainSpeeds:
			Clear: 80
			Rough: 50
			Road: 100
			Tiberium: 50
			BlueTiberium: 50
			Beach: 50
		TurnSpeed: 5
	SelectionDecorations:
	WithSpriteControlGroupDecoration:
	Selectable:
		Bounds: 24,24
	Targetable:
		TargetTypes: Ground, Vehicle
	Repairable:
	Passenger:
		CargoType: Vehicle
	ActorLostNotification:
	HiddenUnderFog:
	AttackMove:
	DrawLineToTarget:
	WithDamageOverlay:
	WithFacingSpriteBody:
	Explodes:
		Weapon: UnitExplodeSmall
		EmptyWeapon: UnitExplodeSmall
	Guard:
	Guardable:
	Tooltip:
		GenericName: Vehicle
	MustBeDestroyed:
	Voiced:
		VoiceSet: VehicleVoice
	BodyOrientation:
		UseClassicFacingFudge: True

^Tank:
	Inherits: ^Vehicle
	Mobile:
		Crushes: wall, crate, infantry
		TerrainSpeeds:
			Clear: 80
			Rough: 70
			Road: 100
			Tiberium: 70
			BlueTiberium: 70
			Beach: 70
		TurnSpeed: 5
	Tooltip:
		GenericName: Tank

^Helicopter:
	Inherits@1: ^ExistsInWorld
	Inherits@3: ^SpriteActor
	Huntable:
	AppearsOnRadar:
		UseLocation: yes
	Targetable@GROUND:
		TargetTypes: Ground, Vehicle
		RequiresCondition: !airborne
	Targetable@AIRBORNE:
		TargetTypes: Air
		RequiresCondition: airborne
	SelectionDecorations:
	WithSpriteControlGroupDecoration:
	Selectable:
		Bounds: 24,24
	Aircraft:
		RepairBuildings: hpad
		LandWhenIdle: false
		AirborneCondition: airborne
		CruisingCondition: cruising
		CanHover: True
	HiddenUnderFog:
		Type: GroundPosition
	ActorLostNotification:
	Explodes:
		Weapon: HeliExplode
		EmptyWeapon: HeliExplode
	AttackMove:
	DrawLineToTarget:
	Guard:
	Guardable:
	Tooltip:
		GenericName: Helicopter
	WithFacingSpriteBody:
	WithShadow:
		Offset: 43, 128, 0
		ZOffset: -129
	Hovers@CRUISING:
		RequiresCondition: cruising
	MustBeDestroyed:
	Voiced:
		VoiceSet: VehicleVoice
	BodyOrientation:
		UseClassicFacingFudge: True

^Infantry:
	Inherits@1: ^ExistsInWorld
	Inherits@3: ^SpriteActor
	Huntable:
	Health:
		Shape: Circle
			Radius: 128
	Armor:
		Type: None
	RevealsShroud:
		Range: 5c0
	Mobile:
		Crushes: crate
		SharesCell: true
		TerrainSpeeds:
			Clear: 90
			Rough: 80
			Road: 100
			Tiberium: 70
				PathingCost: 300
			BlueTiberium: 70
				PathingCost: 300
			Beach: 80
	SelectionDecorations:
	WithSpriteControlGroupDecoration:
	Selectable:
		Bounds: 12,17,0,-6
	Targetable:
		TargetTypes: Ground, Infantry
	QuantizeFacingsFromSequence:
		Sequence: stand
	WithInfantryBody:
	WithDeathAnimation:
		DeathTypes:
			DefaultDeath: 1
			BulletDeath: 1
			RippedApartDeath: 2
			SmallExplosionDeath: 3
			ExplosionDeath: 4
			FireDeath: 5
			TiberiumDeath: 6
		CrushedSequence: die-crushed
	AttackMove:
	DrawLineToTarget:
	Passenger:
		CargoType: Infantry
	HiddenUnderFog:
	DamagedByTerrain:
		Terrain: Tiberium, BlueTiberium
		Damage: 2
		DamageInterval: 16
		DamageTypes: TiberiumDeath
		RequiresCondition: !hazmatsuits
	GrantConditionOnPrerequisite@BIO:
		Condition: hazmatsuits
		Prerequisites: bio
	WithDecoration@HAZMAT:
		Image: pips
		Sequence: pip-hazmat
		ReferencePoint: Bottom, Right
		RequiresCondition: hazmatsuits
	ActorLostNotification:
	SpawnActorOnDeath:
		Probability: 5
		Actor: vice
		OwnerType: InternalName
		InternalOwner: Creeps
		DeathType: TiberiumDeath
		RequiresLobbyCreeps: true
	Crushable:
		WarnProbability: 75
		CrushSound: squish2.aud
	Guardable:
	SelfHealing@HOSPITAL:
		Step: 5
		Delay: 100
		HealIfBelow: 100
		DamageCooldown: 125
		RequiresCondition: hospitalheal
	GrantConditionOnPrerequisite@HOSPITAL:
		Condition: hospitalheal
		Prerequisites: hosp
	WithDecoration@REDCROSS:
		Image: pips
		Sequence: pip-heal
		ReferencePoint: Bottom, Right
		RequiresCondition: hospitalheal
	DetectCloaked:
		Range: 2c0
	DeathSounds@NORMAL:
		DeathTypes: DefaultDeath, BulletDeath, SmallExplosionDeath, ExplosionDeath
	DeathSounds@BURNED:
		Voice: Burned
		DeathTypes: FireDeath
	DeathSounds@POISONED:
		Voice: Poisoned
		DeathTypes: TiberiumDeath
	Voiced:
		VoiceSet: GenericVoice

^Soldier:
	Inherits: ^Infantry
	MustBeDestroyed:
	Tooltip:
		GenericName: Soldier
	Guard:
	AutoTarget:
		ScanRadius: 4
	TakeCover:
		SpeedModifier: 60
		DamageModifiers:
			Prone50Percent: 50
		DamageTriggers: TriggerProne
		ProneOffset: 400,0,0
	WithInfantryBody:
		IdleSequences: idle1, idle2
		StandSequences: stand, stand2

^CivInfantry:
	Inherits: ^Infantry
	Valued:
		Cost: 70
	Tooltip:
		Name: Civilian
		GenericVisibility: None
	Mobile:
		Speed: 56
	Health:
		HP: 25
	RevealsShroud:
		Range: 2c0
	ActorLostNotification:
		Notification: CivilianKilled
		NotifyAll: true
	ScaredyCat:
	Crushable:
		CrushSound: squish2.aud
	Voiced:
		VoiceSet: CivilianMaleVoice
	Wanders:
		MinMoveDelay: 150
		MaxMoveDelay: 750

^ArmedCivilian:
	Armament:
		Weapon: Pistol
	AttackFrontal:
	WithInfantryBody:
		DefaultAttackSequence: shoot

^DINO:
	Inherits@1: ^ExistsInWorld
	Inherits@2: ^SpriteActor
	Huntable:
	Health:
		HP: 1000
		Shape: Circle
			Radius: 128
	Armor:
		Type: Wood
	Buildable:
		Queue: Biolab
		BuildPaletteOrder: 50
		Prerequisites: ~disabled
	Valued:
		Cost: 1000
	Tooltip:
		Name: Dinosaur
	RevealsShroud:
		Range: 6c0
	Mobile:
		Crushes: crate
		Speed: 113
		TerrainSpeeds:
			Clear: 90
			Rough: 80
			Road: 100
			Tiberium: 70
			BlueTiberium: 70
			Beach: 80
		Voice: Move
	SelectionDecorations:
	WithSpriteControlGroupDecoration:
	Selectable:
		Bounds: 24,24
	Targetable:
		TargetTypes: Ground, Creep
	HiddenUnderFog:
	RenderSprites:
		Palette: terrain
	QuantizeFacingsFromSequence:
		Sequence: stand
	WithInfantryBody:
		DefaultAttackSequence: attack
	WithDeathAnimation:
		UseDeathTypeSuffix: false
	AutoTarget:
		ScanRadius: 4
	AttackMove:
		Voice: Attack
	AttackFrontal:
		Voice: Attack
	DrawLineToTarget:
	DeathSounds:
	Voiced:
		VoiceSet: DinoVoice

^Viceroid:
	Inherits@1: ^ExistsInWorld
	Inherits@2: ^SpriteActor
	Huntable:
	Health:
		HP: 300
		Shape: Circle
			Radius: 427
	Armor:
		Type: Wood
	RevealsShroud:
		Range: 6c0
	Mobile:
		Voice: Move
		Speed: 71
		TerrainSpeeds:
			Clear: 70
			Rough: 60
			Road: 70
			Tiberium: 100
			BlueTiberium: 100
			Beach: 60
	SelectionDecorations:
	WithSpriteControlGroupDecoration:
	Selectable:
		Bounds: 24,24
	Targetable:
		TargetTypes: Ground, Creep
	AutoTarget:
		ScanRadius: 5
	AttackMove:
		Voice: Attack
	DrawLineToTarget:
	HiddenUnderFog:
	Valued:
		Cost: 1000
	Tooltip:
		Name: Visceroid
	Armament:
		Weapon: Chemspray
		LocalOffset: 384,0,0
		MuzzleSequence: muzzle
	AttackFrontal:
		Voice: Attack
	BodyOrientation:
		QuantizedFacings: 8
	WithSpriteBody:
	WithMuzzleOverlay:
	Guard:
		Voice: Move
	Guardable:
	DamagedByTerrain:
		Damage: -1
		DamageInterval: 4
		DamageTypes: TiberiumDeath
		Terrain: Tiberium, BlueTiberium
	Voiced:
		VoiceSet: DinoVoice

^Plane:
	Inherits@1: ^ExistsInWorld
	Inherits@2: ^SpriteActor
	Huntable:
	AppearsOnRadar:
		UseLocation: yes
	HiddenUnderFog:
		Type: GroundPosition
		AlwaysVisibleStances: None
	ActorLostNotification:
	AttackMove:
	WithShadow:
		Offset: 43, 128, 0
		ZOffset: -129
	WithFacingSpriteBody:
	FlyAwayOnIdle:
	RejectsOrders:
	Aircraft:
		CruiseAltitude: 2560

^Ship:
	Inherits@1: ^ExistsInWorld
	Inherits@3: ^SpriteActor
	Huntable:
	Mobile:
		Crushes: crate
		TerrainSpeeds:
			Water: 100
	SelectionDecorations:
	WithSpriteControlGroupDecoration:
	Selectable:
	Targetable:
		TargetTypes: Ground, Water
	HiddenUnderFog:
	ActorLostNotification:
	AttackMove:
	DrawLineToTarget:
	WithDamageOverlay:
	Explodes:
		Weapon: UnitExplodeShip
		EmptyWeapon: UnitExplodeShip
	Guard:
	Guardable:
	Tooltip:
		GenericName: Ship
	Voiced:
		VoiceSet: VehicleVoice

^Building:
	Inherits@1: ^ExistsInWorld
	Inherits@2: ^SpriteActor
	Huntable:
	SelectionDecorations:
	WithSpriteControlGroupDecoration:
	Selectable:
		Priority: 3
	Targetable:
		TargetTypes: Ground, C4, Structure
	Armor:
		Type: Wood
	Building:
		Dimensions: 1,1
		Footprint: x
	SoundOnDamageTransition:
		DamagedSounds: xplos.aud
		DestroyedSounds: crumble.aud
	WithSpriteBody:
	Explodes:
		Type: Footprint
		Weapon: BuildingExplode
		EmptyWeapon: BuildingExplode
	CaptureNotification:
		Notification: BuildingCaptured
		NewOwnerVoice: no
	ActorLostNotification:
		Notification: BuildingLost
	ShakeOnDeath:
	Guardable:
		Range: 3c0
	Tooltip:
		GenericName: Structure
	FrozenUnderFog:
	Demolishable:

^BaseBuilding:
	Inherits: ^Building
	Building:
		Adjacent: 4
		RequiresBaseProvider: true
		BuildSounds: constru2.aud, hvydoor1.aud
		TerrainTypes: Clear,Road
	MustBeDestroyed:
		RequiredForShortGame: true
	RepairableBuilding:
		RepairPercent: 40
		RepairStep: 14
		PlayerExperience: 15
	WithDeathAnimation:
		DeathSequence: dead
		UseDeathTypeSuffix: false
	GivesBuildableArea:
	EmitInfantryOnSell:
		ActorTypes: e6,e1,e1,e1
	EngineerRepairable:
	Sellable:
		SellSounds: cashturn.aud
	Capturable:
	WithMakeAnimation:

^CivBuilding:
	Inherits: ^Building
	-ConditionManager:
	Health:
		HP: 400
	Tooltip:
		GenericName: Civilian Building
		GenericStancePrefix: false
		ShowOwnerRow: false
	FrozenUnderFog:

^CivBuildingHusk:
	Inherits@1: ^SpriteActor
	AppearsOnRadar:
	Building:
		Dimensions: 1,1
		Footprint: x
	WithSpriteBody:
	Tooltip:
		GenericName: Civilian Building (Destroyed)
		GenericStancePrefix: false
		ShowOwnerRow: false
	FrozenUnderFog:
	ScriptTriggers:

^TechBuilding:
	Inherits: ^CivBuilding
	Capturable:
	CaptureNotification:
		Notification: CivilianBuildingCaptured
	RepairableBuilding:
		RepairPercent: 40
		RepairStep: 14
		PlayerExperience: 15
	EngineerRepairable:
	RevealsShroud:
		Range: 3c0
	Tooltip:
		ShowOwnerRow: True

^CivField:
	Inherits: ^CivBuilding
	-Selectable:
	-SelectionDecorations:
	Tooltip:
		GenericName: Field
	-Explodes:
	-Targetable:
	-Demolishable:
	RenderSprites:
		Palette: terrain

^CivFieldHusk:
	Inherits@1: ^SpriteActor
	AppearsOnRadar:
	Building:
		Dimensions: 1,1
		Footprint: _
	Tooltip:
		Name: Field (Destroyed)
		GenericVisibility: None
		ShowOwnerRow: false
	RenderSprites:
		Palette: terrain
	WithSpriteBody:
	FrozenUnderFog:
	ScriptTriggers:

^Wall:
	Inherits@1: ^SpriteActor
	CombatDebugOverlay:
	AppearsOnRadar:
	Building:
		Dimensions: 1,1
		Footprint: x
		BuildSounds: hvydoor1.aud
		Adjacent: 7
		TerrainTypes: Clear,Road
	Targetable:
		TargetTypes: Ground, Wall
	Crushable:
		CrushClasses: wall
		CrushSound: sandbag2.aud
	LineBuild:
		Range: 8
		NodeTypes: wall
	LineBuildNode:
		Types: wall
	RenderSprites:
		Palette: staticterrain
	WithWallSpriteBody:
	GivesExperience:
	AutoTargetIgnore:
	Sellable:
		SellSounds: cashturn.aud
	Guardable:
	FrozenUnderFog:
	ScriptTriggers:
	Health:
		HP: 100
		Shape: Rectangle
			TopLeft: -512, -512
			BottomRight: 512, 512

^Tree:
	Inherits@1: ^SpriteActor
	Tooltip:
		Name: Tree
		ShowOwnerRow: false
	RenderSprites:
		Palette: staticterrain
	WithSpriteBody:
	Building:
		Footprint: __ x_
		Dimensions: 2,2
	AppearsOnRadar:
	RadarColorFromTerrain:
		Terrain: Tree
	Health:
		HP: 500
	Armor:
		Type: Wood
	Targetable:
		TargetTypes: Trees
	WithDamageOverlay@SmallBurn:
		DamageType: Incendiary
		Image: burn-s
		MinimumDamageState: Light
		MaximumDamageState: Medium
	WithDamageOverlay@MediumBurn:
		DamageType: Incendiary
		Image: burn-m
		MinimumDamageState: Medium
		MaximumDamageState: Heavy
	WithDamageOverlay@LargeBurn:
		DamageType: Incendiary
		Image: burn-l
		MinimumDamageState: Heavy
		MaximumDamageState: Dead
	AutoTargetIgnore:
	HiddenUnderShroud:
	ScriptTriggers:

^TreeHusk:
	Inherits@1: ^SpriteActor
	AppearsOnRadar:
	Building:
		Footprint: __ x_
		Dimensions: 2,2
	WithSpriteBody:
	Tooltip:
		Name: Tree (Burnt)
		ShowOwnerRow: false
	FrozenUnderFog:
	ScriptTriggers:

^TibTree:
	Inherits@1: ^SpriteActor
	Tooltip:
		Name: Blossom Tree
		ShowOwnerRow: false
	RenderSprites:
		Palette: staticterrain
	WithSpriteBody:
	Building:
		Footprint: x
		Dimensions: 1,1
	AppearsOnRadar:
	RadarColorFromTerrain:
		Terrain: Tiberium
	HiddenUnderShroud:
	WithMakeAnimation:

^Rock:
	Inherits@1: ^SpriteActor
	Tooltip:
		Name: Rock
		ShowOwnerRow: false
	RenderSprites:
		Palette: staticterrain
	WithSpriteBody:
	Building:
		Footprint: __ x_
		Dimensions: 2,2
	AppearsOnRadar:
	RadarColorFromTerrain:
		Terrain: Tree
	HiddenUnderShroud:
	ScriptTriggers:
	EditorTilesetFilter:
		RequireTilesets: DESERT

^CommonHuskDefaults:
	Inherits@1: ^SpriteActor
	Health:
		HP: 140
	Armor:
		Type: Light
	HiddenUnderFog:
		Type: CenterPosition
	AutoTargetIgnore:
	WithFacingSpriteBody:

^Husk:
	Inherits: ^CommonHuskDefaults
	Husk:
		AllowedTerrain: Clear, Rough, Road, Tiberium, BlueTiberium, Beach
	Burns:
		Interval: 6
	Targetable:
		RequiresForceFire: yes
		TargetTypes: Ground, Husk
	Capturable:
		Type: husk
		AllowAllies: yes
		CaptureThreshold: 100
	TransformOnCapture:
		ForceHealthPercentage: 25
	Tooltip:
		GenericName: Destroyed Vehicle
	DisabledOverlay:
	ScriptTriggers:
	Explodes:
		Weapon: UnitExplodeSmall
		EmptyWeapon: UnitExplodeSmall
	BodyOrientation:
		UseClassicFacingFudge: True

^HelicopterHusk:
	Inherits: ^CommonHuskDefaults
	WithShadow:
		Offset: 43, 128, 0
		ZOffset: -129
	Aircraft:
		CanHover: True
	FallsToEarth:
		Spins: True
		Moves: False
		Explosion: HeliCrash
	Tooltip:
		GenericName: Destroyed Helicopter
	BodyOrientation:
		UseClassicFacingFudge: True

^Bridge:
	AlwaysVisible:
	Tooltip:
		Name: Bridge
		ShowOwnerRow: false
	Targetable:
		RequiresForceFire: yes
		TargetTypes: Ground, Water
	Health:
		HP: 500
	SoundOnDamageTransition:
		DamagedSounds: xplos.aud
		DestroyedSounds: xplobig4.aud
	ScriptTriggers:

^Crate:
	Inherits@1: ^SpriteActor
	HiddenUnderFog:
	Tooltip:
		Name: Crate
		GenericName: Crate
		ShowOwnerRow: false
	Crate:
		TerrainTypes: Clear, Rough, Road, Tiberium, BlueTiberium, Beach
	RenderSprites:
		Palette: effect
		Image: crate
	WithCrateBody:
		XmasImages: xcratea, xcrateb, xcratec, xcrated

^Defense:
	Inherits: ^BaseBuilding
	AutoTarget:
	RenderRangeCircle:
	RenderDetectionCircle:
	-GivesBuildableArea:
	MustBeDestroyed:
		RequiredForShortGame: false
