// TERMINALS
actor BaseTerminal {
	+FULLVOLACTIVE
	-SOLID
	+SHOOTABLE
	+NOBLOOD
	+DONTGIB
	+NOICEDEATH
	+QUICKTORETALIATE
	+NEVERRESPAWN
	+GHOST
	//$Category Buildings
	Radius 16
	Height 120
	Mass 0x7FFFFFFF
	Speed 100 // [Dusk] used for base hud health percentages! DON'T TOUCH IT
	Damagetype "Explosion"
	Obituary "%o was killed with a building."
	DeathSound "grenade/explode"
	DesignatedTeam 1
	PainChance 255
	DamageFactor "Fist", 0.3
	DamageFactor "Bullet", 0.8
	DamageFactor "Rifle", 0.8
	DamageFactor "Explosion", 0.75
	DamageFactor "Fire", 0.6
	DamageFactor "Fist", 0.25 //Berserk kind of goes SMACKITY and it goes down in seconds.
	DamageFactor "FireSpecial", 0.0
	DamageFactor "Chemical", 0.75
	DamageFactor "ChemicalSpecial", 0.0
	DamageFactor "Energy", 1.0
	DamageFactor "AntiArmor", 0.25
	DamageFactor "Time", 1.0
	DamageFactor "Disarm", 0.0
	DamageFactor "Ice", 0.0 //Are you going to freeze it?
	DamageFactor "Superweapon", 10.0
	DamageFactor "MassDriver", 0.25
	DamageFactor "Mechstomp", 0.0
	DamageFactor "Monster", 5.0
	DamageFactor "Mine", 0.0 //Fuck this shit
	DamageFactor "Deconstruction", 0.0
	
	states {
	Spawn:
		TNT1 A 0
		TNT1 A 0 A_GiveInventory ("IsMCT", 1)
		TNT1 A -1
		loop
	Idle:
		TNT1 A -1
		stop
	SpawnDone:
		TNT1 A 0
		TNT1 A 0 A_ChangeFlag ("ISMONSTER",1)
		TNT1 A 0 A_ClearTarget
		TNT1 A -1 A_Stop
		stop
	Pain:
		goto Spawn
	Pain.Chemical:
	Pain.Fire:
		goto Pain+1
	Death:
		TNT1 A 5 A_Scream
		TNT1 A 5 A_Scream
		TNT1 A 0 bright A_PlayWeaponSound("weapons/rocklx")
		TNT1 A 0 A_SpawnItemEx ("TerminalExplosion")
		TNT1 A 0 A_SpawnItemEx("ExplosionMainLarge", 0, 0, 0, 0, 0, 0, 0, 128, 0)
		TNT1 A 5 A_Scream
		TNT1 A 0 bright A_Scream
		TNT1 A 0 A_SpawnItemEx ("TerminalExplosion")
		TNT1 A 0 bright A_PlayWeaponSound("weapons/rocklx")
		TNT1 A 0 A_SpawnItemEx ("TerminalExplosion")
		TNT1 A 0 A_SpawnItemEx("ExplosionMainLarge", 0, 0, 0, 0, 0, 0, 0, 128, 0)
		TNT1 A 5 A_Scream
		TNT1 A 5 A_Scream
		TNT1 A 0 bright A_PlayWeaponSound("weapons/rocklx")
		TNT1 A 0 A_SpawnItemEx ("TerminalExplosion")
		TNT1 A 0 A_SpawnItemEx("ExplosionMainLarge", 0, 0, 0, 0, 0, 0, 0, 128, 0)
		TNT1 A 5 A_Scream
		TNT1 A 5 A_Scream
		TNT1 A 0 bright A_Scream
		TNT1 A 5 
		TNT1 A -1 A_Scream
		stop
	}
}

actor BaseTerminalBlue : BaseTerminal {
	DesignatedTeam 0
}

actor TerminalExplosion {
	PROJECTILE
	Speed 0
	DamageType "Monster"
	states {
	Spawn:
		TNT1 A 0
		TNT1 A 0 A_Explode (60, 128)
		stop
	}
}

actor BarracksTerminalBlue : BaseTerminalBlue 21100 {
	Tag "Blue Barracks Terminal"
	Health 18000
	States {
	Spawn:
		TNT1 A 0
		TNT1 A 0 Thing_ChangeTID (0, 101)
		TNT1 A 0 Thing_SetSpecial (0, 80, 101, 0, 0)
		goto SpawnDone
	Pain:
		TNT1 A 0
		TNT1 A 0 ACS_ExecuteAlways (930, 0, BUILDING_BARRACKS, TEAM_BLUE)
		TNT1 A 0 ACS_Execute(97,0,1,1)
		goto Spawn
	}
}

actor RefineryTerminalBlue : BaseTerminalBlue 21102 {
	Tag "Blue Refinery Terminal"
	Health 27000
	States {
	Spawn:
		TNT1 A 0
		TNT1 A 0 Thing_ChangeTID (0, 103)
		TNT1 A 0 Thing_SetSpecial (0, 80, 102, 0, 0)
		goto SpawnDone
	Pain:
		TNT1 A 0 
		TNT1 A 0 ACS_ExecuteAlways (930, 0, BUILDING_REFINERY, TEAM_BLUE)
		TNT1 A 0 ACS_Execute(97,0,2,1)
		goto Idle
	}
}

actor PowerPlantTerminalBlue : BaseTerminalBlue 21103 {
	Tag "Blue Research Centre Terminal"
	Health 18000
	States {
	Spawn:
		TNT1 A 0
		TNT1 A 0 Thing_ChangeTID (0, 105)
		TNT1 A 0 Thing_SetSpecial (0, 80, 103, 0, 0)
		goto SpawnDone
	Pain:
		TNT1 A 0 
		TNT1 A 0 ACS_ExecuteAlways (930, 0, BUILDING_RESCENTRE, TEAM_BLUE)
		TNT1 A 0 ACS_Execute(97,0,3,1)
		goto Idle
	}
}

actor WarFactoryTerminalBlue : BaseTerminalBlue 21104 {
	Tag "Blue War Factory Terminal"
	Health 27000
	States {
	Spawn:
		TNT1 A 0
		TNT1 A 0 Thing_ChangeTID (0, 107)
		TNT1 A 0 Thing_SetSpecial (0, 80, 104, 0, 0)
		goto SpawnDone
	Pain:
		TNT1 A 0 
		TNT1 A 0 ACS_ExecuteAlways (930, 0, BUILDING_FACTORY, TEAM_BLUE)
		TNT1 A 0 ACS_Execute(97,0,4,1)
		goto Idle
	}
}

actor ObeliskTerminalBlue : BaseTerminalBlue 21111 {
	Tag "Blue Obelisk Terminal"
	Health 13500
	States {
	Spawn:
		TNT1 A 0
		TNT1 A 0 Thing_ChangeTID (0, 114)
		TNT1 A 0 Thing_SetSpecial (0, 80, 114, 0, 0)
		goto SpawnDone
	Pain.Chemical:
	Pain.Fire:
		goto Pain+1
	Pain:
		TNT1 A 0
		TNT1 A 0 ACS_ExecuteAlways (930, 0, BUILDING_OBELISK, TEAM_BLUE)
		TNT1 A 0 ACS_Execute(97,0,6,1)
		goto Idle
	}
}

actor BarracksTerminalRed : BaseTerminal 21105 {
	Tag "Red Barracks Terminal"
	Health 18000
	States {
	Spawn:
		TNT1 A 0
		TNT1 A 0 Thing_ChangeTID (0, 201)
		TNT1 A 0 Thing_SetSpecial (0, 80, 201, 0, 0)
		goto SpawnDone
	Pain:
		TNT1 A 0
		TNT1 A 0 ACS_ExecuteAlways (930, 0, BUILDING_BARRACKS, TEAM_RED)
		TNT1 A 0 ACS_Execute(97, 0, 1)
		goto Idle
	}
}

actor RefineryTerminalRed : BaseTerminal 21106 {
	Tag "Red Refinery Terminal"
	Health 27000
	States {
	Spawn:
		TNT1 A 0
		TNT1 A 0 Thing_ChangeTID (0, 203)
		TNT1 A 0 Thing_SetSpecial (0, 80, 202, 0, 0)
		goto SpawnDone
	Pain:
		TNT1 A 0
		TNT1 A 0 ACS_ExecuteAlways (930, 0, BUILDING_REFINERY, TEAM_RED)
		TNT1 A 0 ACS_Execute (97, 0, 2)
		goto Idle
	}
}

actor PowerPlantTerminalRed : BaseTerminal 21107 {
	Tag "Red Research Centre Terminal"
	Health 18000
	States {
	Spawn:
		TNT1 A 0
		TNT1 A 0 Thing_ChangeTID (0, 205)
		TNT1 A 0 Thing_SetSpecial (0, 80, 203, 0, 0)
		goto SpawnDone
	Pain:
		TNT1 A 0
		TNT1 A 0 ACS_ExecuteAlways (930, 0, BUILDING_RESCENTRE, TEAM_RED)
		TNT1 A 0 ACS_Execute (97, 0, 3)
		goto Idle
	}
}

actor WarFactoryTerminalRed : BaseTerminal 21108 {
	Tag "Red War Factory Terminal"
	Health 27000
	States {
	Spawn:
		TNT1 A 0
		TNT1 A 0 Thing_ChangeTID (0, 207)
		TNT1 A 0 Thing_SetSpecial (0, 80, 204, 0, 0)
		goto SpawnDone
	Pain:
		TNT1 A 0
		TNT1 A 0 ACS_ExecuteAlways (930, 0, BUILDING_FACTORY, TEAM_RED)
		TNT1 A 0 ACS_Execute(97, 0, 4)
		goto Idle
	}
}

actor ObeliskTerminalRed : BaseTerminal 21112 {
	Tag "Red Obelisk Terminal"
	Health 13500
	States {
	Spawn:
		TNT1 A 0
		TNT1 A 0 Thing_ChangeTID (0, 214)
		TNT1 A 0 Thing_SetSpecial (0, 80, 214, 0, 0)
		goto SpawnDone
	Pain:
		TNT1 A 0
		TNT1 A 0 ACS_ExecuteAlways (930, 0, BUILDING_OBELISK, TEAM_RED)
		TNT1 A 0 ACS_Execute(97,0,6,0)
		goto Idle
	}
}

// REPAIR TERMINAL
actor RepairTerminalRed : BaseTerminal 21110 {
	Tag "Red Repair Facility"
	Radius 145
	Height 8
	DeathSound "grenade/explode"
	PainChance 255
	Health 13500
	States {
	Spawn:
		TNT1 A 0
		TNT1 A 0 Thing_ChangeTID (0, 209)
		TNT1 A 0 Thing_SetSpecial (0, 80, 205, 0, 0)
		goto SpawnDone
	Pain:
		TNT1 A 0 ACS_ExecuteAlways (930, 0, BUILDING_REPAIR, TEAM_RED)
		TNT1 A 0 
		goto Idle
	}
}

actor RepairTerminalBlue : BaseTerminalBlue 21109 {
	Tag "Blue Repair Facility"
	Radius 145
	Height 8
	DeathSound "grenade/explode"
	PainChance 255
	Health 13500
	States {
	Spawn:
		TNT1 A 0
		TNT1 A 0 Thing_ChangeTID (0, 109)
		TNT1 A 0 Thing_SetSpecial (0, 80, 105, 0, 0)
		goto SpawnDone
	Pain:
		TNT1 A 0 ACS_ExecuteAlways (930, 0, BUILDING_REPAIR, TEAM_BLUE)
		TNT1 A 0
		goto Idle
	}
}