ACTOR SSTCommanderKeen : CommanderKeen replaces CommanderKeen
{
damagefactor "RedPaint", 0.3
damagefactor "OrangePaint", 0.3
damagefactor "YellowPaint", 0.3
damagefactor "GreenPaint", 0.3
damagefactor "BluePaint", 0.3
damagefactor "PurplePaint", 0.3
damagefactor "WhitePaint", 0.3
damagefactor "BlackPaint", 0.3
  PainChance "ShotgunWeak", 64

  Game Doom
  Health 100
  Radius 16
  Height 72
  Mass 10000000
  PainChance 256
  +SOLID 
  +SPAWNCEILING 
  +NOGRAVITY 
  +SHOOTABLE 
  -COUNTKILL 
  +NOICEDEATH
  +ISMONSTER
  PainSound "keen/pain"
  DeathSound "keen/pain"
  //DropItem "KeenFighter"
  States
  {
  Spawn:
    KEEN A 2
    Loop
  Death:
    KEEN AB	2
    NULL A 0 A_KeenDie
    NULL A 0 A_Scream
    NULL A 2 A_DropItem("KeenFighter",1)
	Stop
  Pain.Fire:
  	TNT1 AAAA 0 A_SpawnItemEx("imonfire", random(-8,-2),Random(-8,8),random(20, 38), 0, random(-30,30)*0.1, random(10,30)*0.1, 0, 160)
	Goto Pain
  Pain:
    KEEN M 4
    KEEN M 8 A_Pain
    Goto Spawn
  }
}

ACTOR KeenFighter
{
	Health 100
	Radius 16
	Height 44
	Mass 100
	Speed 8
	Painchance 120
	MONSTER
	-COUNTKILL
	+LOOKALLAROUND
	+FORCEXYBILLBOARD
	Damage 100
	DeathSound "keen/death"
	PainSound "keen/pain"
	attacksound "weapons/railgf"
    Obituary "%o got %p shit seriously fucked up by Commander Keen."
	scale 1.2

	States
	{
	Spawn:
		K33N A 4 A_Look
		Loop
	See:
		K33N AABBCCDD 2 A_Chase
		Loop
  Pain.Fire:
  	TNT1 AAAA 0 A_SpawnItemEx("imonfire", random(-8,-2),Random(-8,8),random(20, 38), 0, random(-30,30)*0.1, random(10,30)*0.1, 0, 160)
	Goto Pain
	Pain:
		K33N G 2 
		K33N G 2 A_Pain
		Goto Spawn
	Missile:
		K33N E 3
		K33N F 5 A_CustomRailgun (8, 0, "purple", "none", 0, 1, 8, "SSTBulletpuff2a")
		Goto See
  Death.Fire:
	TNT1 A 0 A_Stop
    TNT1 A 0 ACS_ExecuteAlways(926,0, 10,0,0)
	NULL O 0 A_SpawnItemEx ("BurnDeathFX", 0,0,0, momx,momy,momz, 0, SXF_NOCHECKPOSITION|SXF_CLIENTSIDE|SXF_ABSOLUTEMOMENTUM)
	Goto Death
  Death.Plasma:
	TNT1 A 0 A_Stop
    TNT1 A 0 ACS_ExecuteAlways(926,0, 10,0,0)
	NULL O 0 A_SpawnItemEx ("PlasmaDeathFX", 0,0,0, momx,momy,momz, 0, SXF_NOCHECKPOSITION|SXF_CLIENTSIDE|SXF_ABSOLUTEMOMENTUM)
		Goto Death
	Death:
		K33N O 7 A_Scream
		K33N P 7 A_NoBlocking
		K33N Q 6 A_SpawnItemEx ("BloodFXSpawner", 0,0,random(0,40), 0,0,0, 0, 160,127) 
		K33N RSTUV 6 A_SpawnItemEx ("BloodFXSpawner", 0,0,random(0,40), 0,0,0, 0, 160,127) 
		K33N W -1
		Stop
	Raise:
		K33N VUTSRQPO 5
		Goto See
		  Pain.GreenPaint:
    TNT1 A 0 ACS_ExecuteAlways(926,0, 0,0,0)
	Goto Pain
  Pain.BluePaint:
    TNT1 A 0 ACS_ExecuteAlways(926,0, 1,0,0)
	Goto Pain
  Pain.RedPaint:
    TNT1 A 0 ACS_ExecuteAlways(926,0, 2,0,0)
	Goto Pain
  Pain.OrangePaint:
    TNT1 A 0 ACS_ExecuteAlways(926,0, 3,0,0)
	Goto Pain
  Pain.PurplePaint:
    TNT1 A 0 ACS_ExecuteAlways(926,0, 4,0,0)
	Goto Pain
  Pain.WhitePaint:
    TNT1 A 0 ACS_ExecuteAlways(926,0, 5,0,0)
	Goto Pain
  Pain.YellowPaint:
    TNT1 A 0 ACS_ExecuteAlways(926,0, 6,0,0)
	Goto Pain
  Pain.BlackPaint:
    TNT1 A 0 ACS_ExecuteAlways(926,0, 7,0,0)
	Goto Pain
	
    Crush:
	TNT1 A 0 A_SpawnItemEx ("Gibs", 0,0,0, 0,0,0, 0, SXF_NOCHECKPOSITION|SXF_USEBLOODCOLOR|SXF_CLIENTSIDE)
	TNT1 AAAAAAAA 0 A_SpawnItemEx ("SuperDuperClientsideBloodSpotSpawner", 0,0,0, 0,0,0, 0, SXF_NOCHECKPOSITION|SXF_USEBLOODCOLOR|SXF_CLIENTSIDE)
    TNT1 AAAAAAAA 1 A_SpawnItemEx ("Bloodsquirt3", 0,0,0, 0,0,0, random(-180,180), SXF_USEBLOODCOLOR|SXF_CLIENTSIDE|SXF_NOCHECKPOSITION)
    TNT1 A -1
    Stop
	}
}