//===========================================================================
//
// Robot basis
//
//===========================================================================

ACTOR NaziRobot
{
    +FLOORCLIP
	+DONTHARMSPECIES
	+DONTHURTSPECIES
	+NOINFIGHTING
	Painchance 		"Fire", 0
	Painchance 		"Shock", 0
	Damagefactor 	"NaziSoldier", 0
	Damagefactor 	"Shock", 0
	Damagefactor 	"Fire", 0
	Monster
}

ACTOR SentinelLaZZer : UberLaser
{
	+STRIFEDAMAGE
	Speed  20
	Damage 2
	SeeSound "weapons/EHW/fire"
}

ACTOR SentinelLaZZerweak : UberLaser
{
	+STRIFEDAMAGE
	Speed  20
	Damage 2
	SeeSound "weapons/EHW/fire"
	States
	{
	Spawn:
		TNT1 A 0
		LAZR A 1 BRIGHT A_Weave(5, 5, 0.5, 0.5)
		NULL A 0 A_SpawnItem("LaserShadow",0,0,0)
		LAZR B 1 BRIGHT A_Weave(5, 5, 0.5, 0.5)
		NULL A 0 A_SpawnItem("LaserShadow",0,0,0)
		LAZR A 1 BRIGHT A_Weave(5, 5, 0.5, 0.5)
		NULL A 0 A_SpawnItem("LaserShadow",0,0,0)
		LAZR B 1 BRIGHT A_Weave(5, 5, 0.5, 0.5)
		NULL A 0 A_SpawnItem("LaserShadow",0,0,0)
		Loop
	Death:
		TNT1 A 0 A_SetScale(0.7)
		UNMD A 3 A_SpawnItem("GunSmokeSpawner")
		UNMD BCDFG 3 BRIGHT
		Stop
	}
}

ACTOR TerminatorBlaster
{
   Radius 8
   Height 12
   Speed 24
   Damage 15
   SpawnID 251
   PROJECTILE
   RENDERSTYLE ADD
   alpha 0.85
   +THRUGHOST
   SeeSound "monster/brufir"
   DeathSound "weapons/hellex"
   DONTHURTSHOOTER
   Decal RevenantScorch
   States
   {
   Spawn: 
      TBTT A 1 Bright 
      loop
   Death:
      TBTT B 6 Bright A_Explode(40,72,1)
      TBTT CDEFGHIJKL 3 Bright 
      stop
   }
}

//===========================================================================
// Kriegsrobot and SchwarzAndroid Attacks
//===========================================================================

ACTOR TerminatorBlasterOne
{
   +THRUGHOST
   Radius 8
   Damage 8
   Height 12
   Speed  26
   Alpha 0.85
   Projectile
   Renderstyle Add
   Decal RevenantScorch
   SeeSound	  "monster/brufir"
   DeathSound "weapons/hellex"
   DONTHURTSHOOTER
   States
   {
   Spawn: 
      TBTT A 1 Bright 
      loop
   Death:
      TBTT B 6 Bright A_Explode(20,72,1)
      TBTT CDEFGHIJKL 3 Bright 
      stop
   }
}

ACTOR TerminatorBlasterTwo : TerminatorBlasterOne
{
   Radius 4
   Height 6
   Speed  13
   Damage 4
   Scale  0.5
}

//===========================================================================
// Koto robot and Terminator attack
//===========================================================================

ACTOR Redstar
{
    Radius 10
    Height 20
    Speed 13
    Damage 10
    Scale 0.6
    +SEEKERMISSILE
    PROJECTILE
    RENDERSTYLE ADD
    ALPHA 0.8
    SeeSound "Terminator/tershotA"
    DeathSound "imp/shotx"
    Decal CacoScorch
    States
    {
    Spawn:
        STAR A 3 Bright A_SeekerMissile (10,15)
        STAR B 3 Bright A_SeekerMissile (10,15)
        STAR C 3 Bright A_SeekerMissile (10,15)
        STAR D 3 Bright A_SeekerMissile (10,15)
        Loop
    Death:
        STAR EFGHIJKLMNO 3 Bright
        Stop
    }
}

actor WeakRedstar : RedStar
{
    Damage 5
    Scale 0.4
}

actor Redgrenade
{
    Radius 6
    Height 12
    Speed 20
    Damage 5
    PROJECTILE
    +DoomBounce
    -NoGravity
    RENDERSTYLE ADD
    ALPHA 0.8
    DeathSound "imp/shotx"
    States
    {
    Spawn:
    	TGND A 0
    	TGND A 1 Bright Thrustthingz(0, 24, 0, 1)
    	TGND A 1 Bright A_Playsound("Terminator/tershotA")
    	TGND BBBBCCCCAAAA 1 Bright A_SpawnItemEx("grenadetrail",0,0,0,0,0,0,0,128)
    	TGND A 0 A_Jumpifcloser(48, 1)
        Goto Spawn+3
    Death:
    	STAR E 3 Bright A_Explode(40,72,1)
    	STAR E 0 Bright A_custommissile("grenadeblast",0,0,0,2,0)
    	STAR E 0 Bright A_custommissile("grenadeblast",0,0,20,2,0)
    	STAR E 0 Bright A_custommissile("grenadeblast",0,0,40,2,0)
    	STAR E 0 Bright A_custommissile("grenadeblast",0,0,60,2,0)
    	STAR E 0 Bright A_custommissile("grenadeblast",0,0,80,2,0)
        STAR E 0 Bright A_custommissile("grenadeblast",0,0,100,2,0)
        STAR E 0 Bright A_custommissile("grenadeblast",0,0,120,2,0)
        STAR E 0 Bright A_custommissile("grenadeblast",0,0,140,2,0)
        STAR E 0 Bright A_custommissile("grenadeblast",0,0,160,2,0)
        STAR E 0 Bright A_custommissile("grenadeblast",0,0,180,2,0)
        STAR E 0 Bright A_custommissile("grenadeblast",0,0,200,2,0)
        STAR E 0 Bright A_custommissile("grenadeblast",0,0,220,2,0)
        STAR E 0 Bright A_custommissile("grenadeblast",0,0,240,2,0)
        STAR E 0 Bright A_custommissile("grenadeblast",0,0,260,2,0)
        STAR E 0 Bright A_custommissile("grenadeblast",0,0,280,2,0)
        STAR E 0 Bright A_custommissile("grenadeblast",0,0,300,2,0)
        STAR E 0 Bright A_custommissile("grenadeblast",0,0,320,2,0)
        STAR E 0 Bright A_custommissile("grenadeblast",0,0,340,2,0)
        STAR FGHIJKLMNO 3 Bright
        Stop
    }
}

ACTOR RedgrenadeWeak
{
    Radius 6
    Height 12
    Speed 20
    Damage 2
    PROJECTILE
    +DoomBounce
    -NoGravity
    RENDERSTYLE ADD
    ALPHA 0.8
    DeathSound "imp/shotx"
    States
    {
    Spawn:
    	TGND A 0
    	TGND A 1 Bright Thrustthingz(0, 24, 0, 1)
    	TGND A 1 Bright A_Playsound("Terminator/tershotA")
    	TGND BBBBCCCCAAAA 1 Bright A_SpawnItemEx("grenadetrail",0,0,0,0,0,0,0,128)
    	TGND A 0 A_Jumpifcloser(48, 1)
        Goto Spawn+3
    Death:
    	STAR E 3 Bright A_Explode(20,42,1)
    	TNT1 A 0 Bright A_custommissile("grenadeblastweak",0,0,0,2,0)
    	TNT1 A 0 Bright A_custommissile("grenadeblastweak",0,0,20,2,0)
    	TNT1 A 0 Bright A_custommissile("grenadeblastweak",0,0,40,2,0)
    	TNT1 A 0 Bright A_custommissile("grenadeblastweak",0,0,60,2,0)
    	TNT1 A 0 Bright A_custommissile("grenadeblastweak",0,0,80,2,0)
        TNT1 A 0 Bright A_custommissile("grenadeblastweak",0,0,100,2,0)
        TNT1 A 0 Bright A_custommissile("grenadeblastweak",0,0,120,2,0)
        TNT1 A 0 Bright A_custommissile("grenadeblastweak",0,0,140,2,0)
        TNT1 A 0 Bright A_custommissile("grenadeblastweak",0,0,160,2,0)
        TNT1 A 0 Bright A_custommissile("grenadeblastweak",0,0,180,2,0)
        STAR FGHIJKLMNO 3 Bright
        Stop
    }
}

ACTOR Grenadetrail
{       
   	PROJECTILE
   	+NOCLIP
    	Renderstyle ADD
	Alpha 0.6
	DamageType Redblast
	States
	{   
	Spawn:
	    TGTR ABCDEFGHI 4 Bright 
	    Stop
	}
}  


actor Grenadeblast
{
    Radius 6
    Height 12
    Speed 5
    Damage 4
    PROJECTILE
    RENDERSTYLE ADD
    +Ripper
    ALPHA 0.8
    SeeSound "imp/attack"
    DeathSound "imp/shotx"
    States
    {
    Spawn:
    	TGBL ABCDEFGHIJK 2 Bright
        stop
    }
}

actor Grenadeblastweak
{
    Radius 6
    Height 12
    Speed 5
    Damage 1
    Projectile
    Renderstyle Add
    Alpha 0.8
    SeeSound "imp/attack"
    DeathSound "imp/shotx"
    States
    {
    Spawn:
    	TGBL ABCDEFGHIJK 2 Bright
        stop
    }
}

ACTOR Terminatorpuff : Bulletpuff
{          
    Renderstyle ADD
	Alpha 0.75
	scale 0.75
	Decal Bulletchip
	States
	{   
	Spawn:
	Melee:
	    TPUF A 2 Bright
	    TPUF A 0 A_Jump(128,10)
	    TPUF BCDEFGH 2 Bright
	    Stop
	    TPUF IJKLMNO 2 Bright 
	    Stop
	}
}