Actor Valmet : PlayerPawn
 { 
 +NOSKIN
 +NOICEDEATH
 +QUICKTORETALIATE
 +GHOST
 +THRUSPECIES
  scale 1.0
  Player.Maxhealth 100
  Player.Weaponslot 1, ValmetPistolX
  Player.Weaponslot 2, ValmetShotgunX
  Player.StartItem "ValmetPistolX", 1
  Player.StartItem "ValmetShotgunX", 1
  Player.StartItem "ValmetDashAmmo", 1
  Player.StartItem "ValmetAmmo2", 20
  Player.StartItem "ValmetAmmo1", 10
  Player.StartItem "IsHuman", 1
  Player.StartItem "Screamer", 0
  Player.ColorRange 112, 127
  Player.DisplayName "Valmet"
  Player.SoundClass "Valmet"
  Player.ScoreIcon "VALMST"
  mass 700
  PainChance 256
  LimitedToTeam 0
  Player.JumpZ 11
  Damagefactor "Fleshbent", 0.9
  Damagefactor "normal", 1.1
  Damagefactor "AntiAirbolt", 0.0
  Damagefactor "Sentinel", 0.0
  Damagefactor "Creepstun", 4.0
  Damagefactor "Hellzone", 0.6
  Damagefactor "EyesoreballX", 4.0
  Damagefactor "MechPewPews", 0.0
  Damagefactor "MacheteSlicerino", 0.0
  Damagefactor "GasterSmokeHurt", 0.0
  Damagefactor "StrifeSuit", 0.0
  Speed 1.2
  States
  {
  Spawn:
	VALM A 0 A_JumpIfInventory("GloomWatchStack",100,"GloomDeath")
    VALM A 50 Setplayerproperty(0,0,0)
	VALM A 0 A_Settranslucent(1.0)
	VALM A 0 A_GiveInventory("ValmetAmmo1", 1)
    Loop
  See:
	VALM A 0 A_JumpIfInventory("GloomWatchStack",100,"GloomDeath")
	VALM A 0 A_JumpIfHealthlower(50,"INeedHealingSee")
    VALM A 4
    VALM B 4 A_SpawnItemEx ("ValmetStomp", 0, 0, 0, 0, 0, -20, 0,0, 0) 
    VALM C 4
    VALM D 4 A_SpawnItemEx ("ValmetStomp", 0, 0, 0, 0, 0, -20, 0,0, 0) 
	VALM A 0 A_GiveInventory("ValmetAmmo2",1)
    Goto Spawn
  INeedHealingSee:
	VALM A 0 A_JumpIfInventory("GloomWatchStack",100,"GloomDeath")
	VALM A 0 A_SpawnItemEx("INeedHealingTrail",random(-20,20),random(-20,20),0,0,0,10)
    VALM A 4
    VALM B 4 A_SpawnItemEx ("ValmetStomp", 0, 0, 0, 0, 0, -20, 0,0, 0) 
    VALM C 4
    VALM D 4 A_SpawnItemEx ("ValmetStomp", 0, 0, 0, 0, 0, -20, 0,0, 0) 
	VALM A 0 A_GiveInventory("ValmetAmmo2",1)
    Goto Spawn
  Missile:
	VALM A 0 A_JumpIfInventory("GloomWatchStack",100,"GloomDeath")
    VALM F 6 Bright A_Settranslucent(1.0)
    Goto Spawn
  Melee:
	VALM A 0 A_JumpIfInventory("GloomWatchStack",100,"GloomDeath")
    VALM F 6 Bright
    Goto Spawn
	Pain.TeleOtherPlant:
	VALM G 1 A_GiveInventory("TeleOtherPlanted",1)
	Goto Pain
	Pain.TeleOtherActivateDamage:
	VALM G 1 A_JumpIfInventory("TeleOtherPlanted",1,"TeleOtherSend")
	Goto Pain	
	TeleOtherSend:
	TNT1 A 0 A_TakeInventory("TeleOtherPlanted",1)
	TNT1 A 0 A_PlaySound("TeleOther/activate",CHAN_7,1)
	TNT1 A 0 A_SpawnItem("TeleOtherFog")
	TNT1 A 0 ACS_ExecuteAlways(466,0,2)
	VALM G 1 A_PlaySound("TeleOther/activate",CHAN_6,1)
	TNT1 A 0 A_SpawnItem("TeleOtherFog")
	Goto Pain
	Death.TeleOtherActivateDamage:
	TNT1 A 0 A_JumpIfInventory("TeleOtherPlanted",1,"TeleOtherSplode")
	TNT1 A 0 A_TakeInventory("TeleOtherPlanted",1)
	TNT1 A 0 A_PlaySound("TeleOther/activate",CHAN_7,1)
	TNT1 A 0 A_SpawnItem("TeleOtherFog")
	TNT1 A 0 A_GiveToTarget("KilledMe",1)
	VALM G 1 A_PlaySound("Gibbage/XSplat")
	NULL A 0 A_PlaySound("gibbage/playergib") 
	NULL A 0 A_NoBlocking 
	NULL A 0 A_SpawnItemEx("PLAYERBOOT", 0, 0, 11, 0, 0, 27, 33, 160, 0)
	NULL A 0 A_SpawnItemEx("PLAYERBOOT", 0, 0, 11, 0, 0, 27, -33, 160, 0)
	NULL A 0 A_SpawnItemEx("SHOTGUYARM", 0, 0, 25, 0, 0, 50, random(0,360), 160, 0)
	NULL A 0 A_SpawnItemEx("SHOTGUYARM", 0, 0, 36, 0, 0, 32, random(0,360), 160, 0)
	NULL A 1 A_SpawnItemEx("GIBBER", 0, 0, 0, 0, 0, 0, 0, 160, 0)
	NULL A -1
	Stop
	TeleOtherSplode:
	TNT1 A 0 A_TakeInventory("TeleOtherPlanted",1)
	TNT1 A 0 A_PlaySound("TeleOther/activate",CHAN_7,1)
	TNT1 A 0 A_SpawnItem("TeleOtherFog")
	TNT1 A 0 ACS_ExecuteAlways(466,0,2)
	TNT1 A 0 A_GiveToTarget("KilledMe",1)
	VALM G 1 A_PlaySound("Gibbage/XSplat")
	TNT1 A 0 A_PlaySound("TeleOther/activate",CHAN_6,1)
	TNT1 A 0 A_SpawnItem("TeleOtherFog")
	NULL A 0 A_PlaySound("gibbage/playergib") 
	NULL A 0 A_NoBlocking 
	NULL A 0 A_SpawnItemEx("PLAYERBOOT", 0, 0, 11, 0, 0, 27, 33, 160, 0)
	NULL A 0 A_SpawnItemEx("PLAYERBOOT", 0, 0, 11, 0, 0, 27, -33, 160, 0)
	NULL A 0 A_SpawnItemEx("SHOTGUYARM", 0, 0, 25, 0, 0, 50, random(0,360), 160, 0)
	NULL A 0 A_SpawnItemEx("SHOTGUYARM", 0, 0, 36, 0, 0, 32, random(0,360), 160, 0)
	NULL A 1 A_SpawnItemEx("GIBBER", 0, 0, 0, 0, 0, 0, 0, 160, 0)
	NULL A -1
	Stop
  Pain.Choke:
	TNT1 A 0 A_GiveToTarget("Health",2)
	TNT1 A 0 A_GiveToTarget("ChokeCharging",1)
	Goto Pain
  Pain.JusticarSpike:
	TNT1 A 0 ACS_NamedExecuteAlways("ChangeActivator",0)
	TNT1 A 0 A_GiveToTarget("Health",2)
  Pain:
	VALM A 0 A_JumpIfInventory("GloomWatchStack",100,"GloomDeath")
    VALM G 4 A_Settranslucent(1.0)
    VALM G 4 A_Pain
    Goto Spawn
	Pain.LoonaClawing:
	TNT1 A 0 A_GiveToTarget("Health",6)
	VALM G 20 Setplayerproperty(0,1,0)
	VALM G 2 Setplayerproperty(0,0,0)
	Goto Spawn
	Pain.LoonaClawingLightSFX:
	TNT1 A 0 A_PlaySound("Bastet/ClawHitLight",CHAN_6)
	TNT1 A 0 A_GiveToTarget("Health",5)
	VALM G 20 Setplayerproperty(0,1,0)
	VALM G 2 Setplayerproperty(0,0,0)
	Goto Spawn
	Pain.LoonaClawingHeavySFX:
	TNT1 A 0 A_PlaySound("Bastet/ClawHitHeavy",CHAN_6)
	TNT1 A 0 A_GiveToTarget("Health",8)
	VALM G 20 Setplayerproperty(0,1,0)
	VALM G 2 Setplayerproperty(0,0,0)
	Goto Spawn
	Death.LoonaClawing:
	TNT1 A 0 A_PlaySound("Bastet/ClawHitHeavy",CHAN_6)
	TNT1 A 0 A_GiveToTarget("Health",50)
	Goto Death.Jitter
	Death.LoonaClawingLightSFX:
	TNT1 A 0 A_PlaySound("Bastet/ClawHitLight",CHAN_6)
	TNT1 A 0 A_GiveToTarget("Health",50)
	Goto Death.Jitter
	Death.LoonaClawingHeavySFX:
	TNT1 A 0 A_PlaySound("Bastet/ClawHitHeavy",CHAN_6)
	TNT1 A 0 A_GiveToTarget("Health",50)
	Goto Death.Jitter
	Pain.GloomWatcherLure:
	TNT1 A 0 ACS_ExecuteAlways(134)
	TNT1 A 0 A_Playsound("GloomWatcher/FeintAttack",CHAN_7)
	Goto pain
	Death.GloomWatcherlure:
	TNT1 A 0 ACS_ExecuteAlways(134)
	TNT1 A 0 A_Playsound("GloomWatcher/FeintAttack",CHAN_7)
	Goto Death.Jitter
	GloomDeath:
	TNT1 A 1 Damagething(99999,18)
	Goto Death
	Death.Fleshbent:
	TNT1 A 0 A_GiveToTarget("TentacleAmmo",2)
	TNT1 A 0 A_GiveToTarget("Soulscepter1",15)
	TNT1 A 0 A_GiveToTarget("Soulscepter2",50)
	Goto Death.Jitter
	Pain.BastetClawing:
		TNT1 A 0 A_GiveToTarget("Health",4)
		Goto Pain
	Pain.BastetClawingLightSFX:
		TNT1 A 0 A_PlaySound("Bastet/ClawHitLight",CHAN_5)
		TNT1 A 0 A_GiveToTarget("Health",3)
		Goto Pain
	Pain.BastetClawingHeavySFX:
		TNT1 A 0 A_PlaySound("Bastet/ClawHitHeavy",CHAN_5)
		TNT1 A 0 A_GiveToTarget("Health",6)
		Goto Pain
	Pain.Sickle:
		TNT1 A 0 ACS_NamedExecuteAlways("ChangeActivator",0)
	Pain.Wendigo:
		TNT1 A 0 A_PlaySound("RAVEN1",CHAN_5)
		TNT1 A 0 A_SpawnItemEx ("GIB4", 0, 0, random(0,42), 0, 0, random(2,4), random(0,360), 128)
		TNT1 A 0 A_SpawnItemEx ("GIB4", 0, 0, random(0,42), 0, 0, random(2,4), random(0,360), 128)
		Goto Pain
  Pain.Creepstun:
    VALM G 0 A_Pain
	VALM G 0 A_GiveToTarget("health",5)
	VALM G 40 Setplayerproperty(0,1,0)
	VALM G 2 Setplayerproperty(0,0,0)
	Goto Spawn
	Pain.Justicar:
	TNT1 A 0 A_custommissile("Justicarattack",14,0,random(0,360))
	TNT1 A 0 A_GiveToTarget("Health",1)
	TNT1 A 0 A_GiveToTarget("JusticarSecondaryAmmo",1)
	Goto pain
  Death.Creeper:
	VALM A 0 A_PlaySoundEx("creeperattack", "Body")
	TNT1 A 0 A_GiveToTarget("GhoulAmmo",1)
	VALM A 0 A_SpawnItemEx("CreeperPopUp",0,0,10)
	VALM A 0 A_GiveToTarget("Creeperheal",1)
    VALM A 0 ACS_ExecuteAlways(997,0,1)
	goto DeathAnimAlt
  Death.Creepstun:
	VALM A 0 A_GiveToTarget("Unlock13",1)
	VALM A 0 A_GiveToTarget("CreepGotya",1)
	goto DeathAnimAlt
  Death.SjasScream:
  Death.FrostbiteWind:
  Death.EmtalicSaw:
  Death.LichFire:
    VALM A 0 A_GiveToTarget("KilledJ",1)
    Goto DeathAnim
  Death:
  DeathAnim:
	VALM A 0 A_GiveToTarget("KillBeep",1)
	VALM A 0 A_GiveInventory("ItemDeath",1)
	VALM A 0 A_TakeInventory("KilledCount",999)
    VALM A 0 A_GiveToTarget("KilledMe",1)
    VALM A 0 A_GiveToTarget("KilledValmet",1)
    VALM H 8
    VALM I 8 A_PlayerScream
    VALM J 8 A_NoBlocking
    VALM KL 8
	VALM M -1
    Stop
  DeathAnimAlt:
	VALM A 0 A_GiveToTarget("KillIndicator",1)
	VALM A 0 A_GiveInventory("ItemDeath",1)
	VALM A 0 A_TakeInventory("KilledCount",999)
    VALM A 0 A_GiveToTarget("KilledMe",1)
    VALM A 0 A_GiveToTarget("KilledValmet",1)
    VALM H 8
    VALM I 8 A_PlayerScream
    VALM J 8 A_NoBlocking
    VALM KL 8
	VALM M -1
    Stop
	Death.GhoulChainSaw:
	TNT1 A 0 A_GiveToTarget("Health",50)
	TNT1 A 0 A_GiveToTarget("BearTarpsAmmo",1)
	TNT1 A 0 A_GiveToTarget("SawyerRageammo",10)
	TNT1 A 0 A_GiveToTarget("DUMMY_SawyerBloodyChainsaw", 1)
	Goto Death.Jitter
	Death.BastetClawing:
	TNT1 A 0 A_PlaySound("Bastet/ClawHitHeavy",CHAN_6)
	TNT1 A 0 A_GiveToTarget("Health",30)
	Goto Death.Jitter
	Death.BastetClawingLightSFX:
	TNT1 A 0 A_PlaySound("Bastet/ClawHitLight",CHAN_6)
	TNT1 A 0 A_GiveToTarget("Health",30)
	Goto Death.Jitter
	Death.BastetClawingHeavySFX:
	TNT1 A 0 A_PlaySound("Bastet/ClawHitHeavy",CHAN_6)
	TNT1 A 0 A_GiveToTarget("Health",30)
	Goto Death.Jitter
	Death.Choke:
		TNT1 A 0 A_GiveToTarget("Health",25)
		TNT1 A 0 A_GiveToTarget("ChokeCharging",40)
	Goto Death.Jitter
	Death.JusticarSpike:
		TNT1 A 0 A_GiveToTarget("Health",15)
	Goto Death.Jitter
	Death.Sinistar:
		TNT1 A 0 A_GiveToTarget("SiniPrimary",1)
	Goto Death.Jitter
  Death.MapGibber:
		TNT1 A 0 A_PlaySound("car/hit",chan_auto)
  Death.MapGibber2:
  Death.Jitter:
	VALM A 0 A_GiveToTarget("KillBeep",1)
	VALM A 0 A_GiveInventory("ItemDeath",1)
    VALM A 0 A_GiveToTarget("Crunched",1)
	VALM A 0 A_GiveToTarget("KilledMe",1)
	VALM A 0 A_GiveToTarget("KilledValmet",1)
	VALM G 1 A_PlaySound("gibbage/xsplat")
	NULL A 0 A_PlaySound("gibbage/playergib") 
	NULL A 0 A_NoBlocking 
	NULL A 0 A_SpawnItemEx("PLAYERBOOT", 0, 0, 11, 0, 0, 27, 33, 160, 0)
	NULL A 0 A_SpawnItemEx("PLAYERBOOT", 0, 0, 11, 0, 0, 27, -33, 160, 0)
	NULL A 0 A_SpawnItemEx("SHOTGUYARM", 0, 0, 25, 0, 0, 50, random(0,360), 160, 0)
	NULL A 0 A_SpawnItemEx("SHOTGUYARM", 0, 0, 36, 0, 0, 32, random(0,360), 160, 0)
	NULL A 1 A_SpawnItemEx("GIBBER", 0, 0, 0, 0, 0, 0, 0, 160, 0)
	NULL A -1
	Stop
  Death.JitterAlt:
	VALM A 0 A_GiveToTarget("KillIndicator",1)
	VALM A 0 A_GiveInventory("ItemDeath",1)
    VALM A 0 A_GiveToTarget("Crunched",1)
	VALM A 0 A_GiveToTarget("KilledMe",1)
	VALM A 0 A_GiveToTarget("KilledValmet",1)
	VALM G 1 A_PlaySound("gibbage/xsplat")
	NULL A 0 A_PlaySound("gibbage/playergib") 
	NULL A 0 A_NoBlocking 
	NULL A 0 A_SpawnItemEx("PLAYERBOOT", 0, 0, 11, 0, 0, 27, 33, 160, 0)
	NULL A 0 A_SpawnItemEx("PLAYERBOOT", 0, 0, 11, 0, 0, 27, -33, 160, 0)
	NULL A 0 A_SpawnItemEx("SHOTGUYARM", 0, 0, 25, 0, 0, 50, random(0,360), 160, 0)
	NULL A 0 A_SpawnItemEx("SHOTGUYARM", 0, 0, 36, 0, 0, 32, random(0,360), 160, 0)
	NULL A 1 A_SpawnItemEx("GIBBER", 0, 0, 0, 0, 0, 0, 0, 160, 0)
	NULL A -1
	Stop
	Death.Harvester:
		TNT1 A 0 A_GiveToTarget("SoulHarvesterFragment",1)
		TNT1 A 0 A_GiveToTarget("KilledJ",1)
		Goto Death.Jitter
	Death.HarvesterRock:
		TNT1 A 0 ACS_NamedExecute("SilverFieldsBell",55)
		Goto DeathAnim
	Death.HarvesterAlt:
		TNT1 A 0 A_GiveToTarget("Crunched2",1)
		TNT1 A 0 ACS_NamedExecute("SilverFieldsBell",55)
		Goto Death.Jitter
  Death.Ravager:
		VALM A 0 A_GiveToTarget("KilledR",1)
		VALM A 0 A_GiveToTarget("Health",100)
		VALM A 0 ACS_ExecuteAlways(997,0,2)
		VALM A 0 A_PlaySoundEx("RavagerAttack","Body")
		VALM A 0 A_SpawnItemEx("RavagerHit",0,0,32)
		Goto DeathAnimAlt
	Death.RavagerBall:
		VALM A 0 A_GiveToTarget("RavagerGotYa",1)
		VALM A 0 A_GiveToTarget("KilledJ",1)
		Goto DeathAnimAlt
	Death.Yurei:
		VALM A 0 A_GiveToTarget("KilledY",1)
		VALM A 0 A_PlaySoundEx("YureiKill1","Body",0,1)
		VALM A 0 ACS_ExecuteAlways(997,0,3)
		Goto DeathAnimAlt
	Death.YureiBall:
		VALM A 0 A_GiveToTarget("Health",10)
		VALM A 0 A_SpawnItemEx("BallFire")
		Goto Death.SjasScream
	Death.UboaRawrScream:
		Goto DeathAnimAlt
	Death.Misty:
	Death.Whiteface:
		VALM A 0 A_GiveToTarget("KillBeep",1)
		VALM A 0 A_GiveInventory("ItemDeath",1)
		VALM A 0 A_GiveToTarget("KilledMe",1)
		VALM A 0 A_GiveToTarget("KilledM",1)
		VALM HHHH 2 A_FadeOut(0.1)
		VALM A 0 A_PlayerScream
		VALM IIIIJJ 2 A_FadeOut(0.1)
		VALM A 0 A_NoBlocking
		NULL A -1
		Stop
	Death.Clowny:
		VALM A 0 ACS_ExecuteAlways(997,0,4)
		VALM A 0 A_GiveToTarget("KilledC",1)
		VALM A 0 A_GiveToTarget("ClownyAmmo",5)
		Goto DeathAnim
	Death.Mohoph:
		TNT1 A 0 A_GiveToTarget("MorphAmmo", 1)
		VALM A 0 A_GiveToTarget("TransValmet",1)
		VALM A 0 A_PlaySoundEx("MohophKill","Body")
		VALM A 0 ACS_ExecuteAlways(997,0,5)
		Goto DeathAnim
	Death.EmtalicWeak:
		VALM A 0 A_PlaySoundEx("RamSuccess","Body")
		Goto DeathAnim
	Death.Emtalic:
		VALM A 0  A_PlaySoundEx("RamSuccess","Body")
		Goto Death.Jitter
	Death.I1:
		VALM A 0 A_SpawnItemEx("Heart",0,0,32,random(2,3),momy,random(8,12),random(-180,180))
		VALM A 0 A_GiveToTarget("KilledI1",1)
		Goto DeathAnim
	Death.I2:
		VALM A 0 A_GiveToTarget("KillBeep",1)
		VALM A 0 A_GiveInventory("ItemDeath",1)
		VALM A 0 A_GiveToTarget("KilledMe",1)
		VALM A 0 A_GiveToTarget("KilledI2",1)
		VALM A 0 A_GiveToTarget("Clip",1)
		VALM G 0 SetPlayerProperty(0,1,4)
		VALM G 0 A_Stop
		VALM GGGGGGGGGGGGGG 5 A_SpawnItemEx("PainSmoke",0,random(-22,22),random(-22,22),random(2,4),momy,random(8,12),random(-180,180))
		NULL A 0 A_PlayerScream
		NULL A 0 ACS_ExecuteAlways(997,0,6)
		NULL A 0 A_SpawnItemEx("PLAYERBOOT", 0, 0, 11, 0, 0, 27, 33, 160, 0)
		NULL A 0 A_SpawnItemEx("PLAYERBOOT", 0, 0, 11, 0, 0, 27, -33, 160, 0)
		NULL A 0 A_SpawnItemEx("SHOTGUYARM", 0, 0, 25, 0, 0, 50, random(0,360), 160, 0)
		NULL A 0 A_SpawnItemEx("SHOTGUYARM", 0, 0, 36, 0, 0, 32, random(0,360), 160, 0)
        NULL A 0 A_SpawnItemEx ("BoneShardSpawner1", 1, 1, random(8,32), random(0,5), random(0,5), random(8,18), random(0,360), SXF_NOCHECKPOSITION, 0)
        NULL A 0 A_SpawnItemEx ("BoneShardSpawner2", 1, 1, random(8,32), random(0,5), random(0,5), random(8,18), random(0,360), SXF_NOCHECKPOSITION, 0)
        NULL A 0 A_SpawnItemEx ("BoneShardSpawner3", 1, 1, random(8,32), random(0,5), random(0,5), random(8,18), random(0,360), SXF_NOCHECKPOSITION, 0)
        NULL A 0 A_SpawnItemEx ("BoneShardSpawner1", 1, 1, random(8,32), random(0,5), random(0,5), random(8,18), random(0,360), SXF_NOCHECKPOSITION, 0)
        NULL A 0 A_SpawnItemEx ("BoneShardSpawner2", 1, 1, random(8,32), random(0,5), random(0,5), random(8,18), random(0,360), SXF_NOCHECKPOSITION, 0)
        NULL A 0 A_SpawnItemEx ("BoneShardSpawner3", 1, 1, random(8,32), random(0,5), random(0,5), random(8,18), random(0,360), SXF_NOCHECKPOSITION, 0)
        NULL A 0 A_SpawnItemEx ("BoneShardSpawner1", 1, 1, random(8,32), random(0,5), random(0,5), random(8,18), random(0,360), SXF_NOCHECKPOSITION, 0)
        NULL A 0 A_SpawnItemEx ("BoneShardSpawner2", 1, 1, random(8,32), random(0,5), random(0,5), random(8,18), random(0,360), SXF_NOCHECKPOSITION, 0)
        NULL A 0 A_SpawnItemEx ("BoneShardSpawner3", 1, 1, random(8,32), random(0,5), random(0,5), random(8,18), random(0,360), SXF_NOCHECKPOSITION, 0)
        NULL A 0 A_SpawnItemEx ("BoneShardSpawner1", 1, 1, random(8,32), random(0,5), random(0,5), random(8,18), random(0,360), SXF_NOCHECKPOSITION, 0)
        NULL A 0 A_SpawnItemEx ("BoneShardSpawner2", 1, 1, random(8,32), random(0,5), random(0,5), random(8,18), random(0,360), SXF_NOCHECKPOSITION, 0)
        NULL A 0 A_SpawnItemEx ("BoneShardSpawner3", 1, 1, random(8,32), random(0,5), random(0,5), random(8,18), random(0,360), SXF_NOCHECKPOSITION, 0)
        NULL A 0 A_SpawnItemEx ("BoneShardSpawner1", 1, 1, random(8,32), random(0,5), random(0,5), random(8,18), random(0,360), SXF_NOCHECKPOSITION, 0)
        NULL A 0 A_SpawnItemEx ("BoneShardSpawner2", 1, 1, random(8,32), random(0,5), random(0,5), random(8,18), random(0,360), SXF_NOCHECKPOSITION, 0)
        NULL A 0 A_SpawnItemEx ("BoneShardSpawner3", 1, 1, random(8,32), random(0,5), random(0,5), random(8,18), random(0,360), SXF_NOCHECKPOSITION, 0)
        NULL A 0 A_SpawnItemEx ("BoneShardSpawner1", 1, 1, random(8,32), random(0,5), random(0,5), random(8,18), random(0,360), SXF_NOCHECKPOSITION, 0)
        NULL A 0 A_SpawnItemEx ("BoneShardSpawner2", 1, 1, random(8,32), random(0,5), random(0,5), random(8,18), random(0,360), SXF_NOCHECKPOSITION, 0)
        NULL A 0 A_SpawnItemEx ("BoneShardSpawner3", 1, 1, random(8,32), random(0,5), random(0,5), random(8,18), random(0,360), SXF_NOCHECKPOSITION, 0)
        NULL A 0 A_SpawnItemEx ("BoneShardSpawner1", 1, 1, random(8,32), random(0,5), random(0,5), random(8,18), random(0,360), SXF_NOCHECKPOSITION, 0)
        NULL A 0 A_SpawnItemEx ("BoneShardSpawner2", 1, 1, random(8,32), random(0,5), random(0,5), random(8,18), random(0,360), SXF_NOCHECKPOSITION, 0)
        NULL A 0 A_SpawnItemEx ("BoneShardSpawner3", 1, 1, random(8,32), random(0,5), random(0,5), random(8,18), random(0,360), SXF_NOCHECKPOSITION, 0)
        NULL A 0 A_SpawnItemEx ("BoneShardSpawner1", 1, 1, random(8,32), random(0,5), random(0,5), random(8,18), random(0,360), SXF_NOCHECKPOSITION, 0)
        NULL A 0 A_SpawnItemEx ("BoneShardSpawner2", 1, 1, random(8,32), random(0,5), random(0,5), random(8,18), random(0,360), SXF_NOCHECKPOSITION, 0)
        NULL A 0 A_SpawnItemEx ("BoneShardSpawner3", 1, 1, random(8,32), random(0,5), random(0,5), random(8,18), random(0,360), SXF_NOCHECKPOSITION, 0)
        NULL A 0 A_SpawnItemEx ("BoneShardSpawner1", 1, 1, random(8,32), random(0,5), random(0,5), random(8,18), random(0,360), SXF_NOCHECKPOSITION, 0)
        NULL A 0 A_SpawnItemEx ("BoneShardSpawner2", 1, 1, random(8,32), random(0,5), random(0,5), random(8,18), random(0,360), SXF_NOCHECKPOSITION, 0)
        NULL A 0 A_SpawnItemEx ("BoneShardSpawner3", 1, 1, random(8,32), random(0,5), random(0,5), random(8,18), random(0,360), SXF_NOCHECKPOSITION, 0)
        NULL A 0 A_SpawnItemEx ("BoneShardSpawner1", 1, 1, random(8,32), random(0,5), random(0,5), random(8,18), random(0,360), SXF_NOCHECKPOSITION, 0)
        NULL A 0 A_SpawnItemEx ("BoneShardSpawner2", 1, 1, random(8,32), random(0,5), random(0,5), random(8,18), random(0,360), SXF_NOCHECKPOSITION, 0)
        NULL A 0 A_SpawnItemEx ("BoneShardSpawner3", 1, 1, random(8,32), random(0,5), random(0,5), random(8,18), random(0,360), SXF_NOCHECKPOSITION, 0)
        NULL A 0 A_SpawnItemEx ("BoneShardSpawner1", 1, 1, random(8,32), random(0,5), random(0,5), random(8,18), random(0,360), SXF_NOCHECKPOSITION, 0)
        NULL A 0 A_SpawnItemEx ("BoneShardSpawner2", 1, 1, random(8,32), random(0,5), random(0,5), random(8,18), random(0,360), SXF_NOCHECKPOSITION, 0)
        NULL A 0 A_SpawnItemEx ("BoneShardSpawner3", 1, 1, random(8,32), random(0,5), random(0,5), random(8,18), random(0,360), SXF_NOCHECKPOSITION, 0)
        NULL A 0 A_SpawnItemEx ("BoneShardSpawner1", 1, 1, random(8,32), random(0,5), random(0,5), random(8,18), random(0,360), SXF_NOCHECKPOSITION, 0)
        NULL A 0 A_SpawnItemEx ("BoneShardSpawner2", 1, 1, random(8,32), random(0,5), random(0,5), random(8,18), random(0,360), SXF_NOCHECKPOSITION, 0)
        NULL A 0 A_SpawnItemEx ("BoneShardSpawner3", 1, 1, random(8,32), random(0,5), random(0,5), random(8,18), random(0,360), SXF_NOCHECKPOSITION, 0)
        NULL A 0 A_SpawnItemEx ("BoneShardSpawner1", 1, 1, random(8,32), random(0,5), random(0,5), random(8,18), random(0,360), SXF_NOCHECKPOSITION, 0)
        NULL A 0 A_SpawnItemEx ("BoneShardSpawner2", 1, 1, random(8,32), random(0,5), random(0,5), random(8,18), random(0,360), SXF_NOCHECKPOSITION, 0)
        NULL A 0 A_SpawnItemEx ("BoneShardSpawner3", 1, 1, random(8,32), random(0,5), random(0,5), random(8,18), random(0,360), SXF_NOCHECKPOSITION, 0)
        NULL A 0 A_SpawnItemEx ("BoneShardSpawner1", 1, 1, random(8,32), random(0,5), random(0,5), random(8,18), random(0,360), SXF_NOCHECKPOSITION, 0)
        NULL A 0 A_SpawnItemEx ("BoneShardSpawner2", 1, 1, random(8,32), random(0,5), random(0,5), random(8,18), random(0,360), SXF_NOCHECKPOSITION, 0)
        NULL A 0 A_SpawnItemEx ("BoneShardSpawner3", 1, 1, random(8,32), random(0,5), random(0,5), random(8,18), random(0,360), SXF_NOCHECKPOSITION, 0)
		NULL A 1 A_SpawnItemEx("GIBBER", 0, 0, 0, 0, 0, 0, 0, 160, 0)
		NULL A 1 A_SpawnItemEx("SkullGib",0,0,0,random(2,4),random(2,4),random(8,12),random(-180,180))
		NULL A 1 A_SpawnItemEx("ChestGib",0,0,0,random(2,4),random(2,4),random(8,12),random(-180,180))
		NULL AA 1 A_SpawnItemEx("ArmGib",0,0,0,random(2,4),random(2,4),random(8,12),random(-180,180))
		NULL AA 1 A_SpawnItemEx("HandGib",0,0,0,random(2,4),random(2,4),random(8,12),random(-180,180))
		NULL A 1 A_SpawnItemEx("CoccyxGib",0,0,0,random(2,4),random(2,4),random(8,12),random(-180,180))
		NULL AA 1 A_SpawnItemEx("LegGib",0,0,0,random(2,4),random(2,4),random(8,12),random(-180,180))
		NULL AAAAAA 1 A_SpawnItemEx("BoneGib",0,0,0,random(2,4),random(2,4),random(8,12),random(-180,180))
		NULL A -1 A_NoBlocking
		Stop
	Death.I3:
		VALM A 0 A_GiveToTarget("KillBeep",1)
		VALM A 0 A_GiveInventory("ItemDeath",1)
		VALM A 0 A_GiveToTarget("KilledMe",1)
		VALM A 0 A_GiveToTarget("KilledI3",1)
		VALM HHHHHHHH 1 A_SpawnItemEx("PainSmoke",0,random(-22,22),random(-22,22),random(2,4),momy,random(8,12),random(-180,180))
		VALM I 0 A_PlayerScream
		VALM IIIIIIII 1 A_SpawnItemEx("PainSmoke",0,random(-22,22),random(-22,22),random(2,4),momy,random(8,12),random(-180,180))
		VALM J 0 A_NoBlocking
		VALM JJJJJJJJKKKKKKKKLLLLLLLLMMMMMMMM 1 A_SpawnItemEx("PainSmoke",0,random(-22,22),random(-22,22),random(2,4),momy,random(8,12),random(-180,180))
		VALM NNNNNNN 3 A_SpawnItemEx("PainSmoke",0,random(-22,22),random(-22,22),random(2,4),momy,random(8,12),random(-180,180))
		VALM N -1
		Stop
	Death.I4:
		VALM A 0 A_GiveToTarget("KilledI4",1)
		Goto DeathAnim
	Death.I5:
		VALM A 0 A_GiveToTarget("KilledI5",1)
		Goto DeathAnim
	Pain.RavagerBall:
		VALM A 0 ACS_ExecuteAlways(920,0)
		Goto Pain
	Pain.YureiBall:
		VALM A 0 A_GiveToTarget("Health",10)
		VALM A 0 A_SpawnItemEx("BallFire")
		Goto Pain
	Pain.Emtalic:
		VALM A 0 A_PlaySoundEx("RamSuccess","Body")
		Goto Pain
	Pain.EmtalicWeak:
		VALM A 0 A_PlaySoundEx("RamSuccess","Body")
		Goto Pain
	Death.Tenebra:
		TNT1 A 0 A_GiveToTarget("Health",20)
		Goto DeathAnim
	Death.TenebraRail:
	Death.Telefrag:
	Death.Grenade:
	Death.Termissiles:
	Death.ChaosExpl12:
	Death.KarenExplo:
	Death.IlluNukeKABUUM:
	Death.CalebDynamite:
	Death.Wendigo:
	Death.MorphRipperGib:
	Death.DarkVortex:
	Death.ImpostorJitter:
	Death.PuppetStrings:
	Death.LichIce:
	Death.LichLightning:
	Death.AsylumCannonBall:
		Goto Death.Jitter
	Death.TrueDivine:
		TNT1 A 0 A_PlaySoundEx("SoulSnatchStinger",CHAN_AUTO,0,1)
		TNT1 A 0 A_SpawnItemEx("SoulSnatch")
		Goto Death.JitterAlt
	Death.Judgement:
		TNT1 A 0 A_SpawnItemEx("StellarisThunderFX")
		Goto Death.JitterAlt
	Death.VoltMelee:
	Death.AmperRail:
		TNT1 A 0 A_GiveToTarget("VoltRingAmmo",2)
		TNT1 A 0 A_GiveToTarget("AmperSpeedTokenCheck",1)
		Goto Death.Jitter
	Pain.FrostbiteWind:
	Pain.Ravager:
	Pain.Juglava:
	Pain.HarvesterRock:
	Pain.EmtalicSaw:
	Pain.MorphRipper:
	Pain.MorphRipperGib:
	Pain.I1:
	Pain.I3:
	Pain.ZombiePoison:
	Pain.Asylum:
	Pain.AsylumCannonBall:
	Pain.FleshlingMissile:
	Pain.DarkVortex:
	Pain.ImpostorJitter:
	Pain.BlueFire:
	Pain.PuppetStrings:
	Pain.LichFire:
	Pain.LichIce:
	Pain.LichLightning:
	Pain.Whiteface:
		TNT1 A 0 ACS_NamedExecuteAlways("ChangeActivator",0)
		Goto Pain
	}
}

Actor ValStealth : CustomInventory
{
    inventory.amount 1
	inventory.maxamount 1
	+FLOATBOB
//	+ALWAYSPICKUP
	+AUTOACTIVATE
	  States
	  {
	  Spawn:
		DOOM ABCDCB 6 Bright
		Loop
		Pickup:
		Use:
		TNT1 A 0 acs_executealways(4013, 0, 0, 0, 0)
		Stop
	  }
}

actor ValmetStomp : CyborgStomp
{
deathsound "floor/Valmet"

}

Actor ValmetAmmo1 : Ammo
{
	Ammo.BackPackAmount 10
	Ammo.BackPackMaxAmount 10
	Inventory.Amount 10
	Inventory.MaxAmount 10
	+INVENTORY.IGNORESKILL
	States
	{
	Spawn:
		TNT1 A -1
		Stop
	}
}

Actor ValmetAmmo2 : Ammo
{
	Ammo.BackPackAmount 20
	Ammo.BackPackMaxAmount 20
	Inventory.Amount 20
	Inventory.MaxAmount 20
	+INVENTORY.IGNORESKILL
	States
	{
	Spawn:
		TNT1 A -1
		Stop
	}
}


actor ValmetShotgunX : DoomWeapon
    {
 Weapon.SelectionOrder 1300
 Weapon.AmmoUse 1
 Weapon.AmmoGive 50
 weapon.kickback 200
 Inventory.icon "TNT1A0"
 Weapon.AmmoType "ValmetAmmo1"
 Inventory.PickupMessage "You got the shotgun! Lock and load!"
 Obituary "%o couldn't keep up with %k."
 Decal "BulletChip"
 States
 {
 Ready:
   VLSG A 1 A_WeaponReady
   Loop
 Deselect:
   VLSG A 1 A_Lower
   Loop
 Select:
   VLSG A 1 A_Raise
   Loop
 Fire:
   VLSG A 0 A_FireBullets (6, 5, 10, 3, "BulletPuff2")
   VLSG A 0 A_PlayWeaponSound("ValmetShotgun/Fire")
   VLSG A 3
   VLSG B 2
   VLSG B 0 radius_quake(2, 2, 0, 1, 0)
   VLSG B 0 A_GunFlash
   VLSG B 0 A_Recoil(30)
   VLSG CD 2 bright
   VLSG E 1 
   VLSG F 2 
   VLSG G 2 
   VLSG H 2 
   VLSG I 2 A_PlaySound ("ValmetShotgun/Pump")
   VLSG J 2 
   TNT1 A 0 A_FireCustomMissile("Shotguncasing",0,0,4,3)
   VLSG I 2 
   VLSG H 2
   VLSG G 2 
   VLSG F 2 
   VLSG E 1
   VLSG A 6 A_ReFire
   Goto Ready
   Altfire:
   VLSG A 1 Offset (0,36)
   VLSG A 0 Offset (2,40)
   VLSG A 0 Offset (4,44)
   VLSG A 0 Offset (6,48)
   VLSG A 1 Offset (8,52)
   VLSG A 0 Offset (10,56)
   VLSG A 0 Offset (12,60)
   VLSG A 0 Offset (14,64)
   VLSG A 1 Offset (14,68)
   VLSG A 0 Offset (14,72)
   VLSG A 0 Offset (14,76)
   Goto Althold
   Althold:
   VLKC A 1 
   VLKC B 1
   VLKC C 1 
   VLKC D 1 
   VLKC E 1
   VLKC F 1
   TNT1 A 0 A_CustomPunch(30,0,CPF_PULLIN,"ValmetMeleePuff",100)
   TNT1 A 0 A_Playsound ("Valmet/Kickswing", 0)
   TNT1 A 0 A_Playsound ("Valmet/Yah", 0)
   VLKC E 1
   VLKC D 1
   VLKC C 1
   VLKC B 1
   VLKC A 1
   TNT1 A 1
   Goto Altdone
   Altdone:
   VLSG A 1 Offset (14,76)
   VLSG A 0 Offset (14,72)
   VLSG A 0 Offset (14,68)
   VLSG A 0 Offset (14,64)
   VLSG A 1 Offset (12,60)
   VLSG A 0 Offset (10,56)
   VLSG A 0 Offset (8,52)
   VLSG A 0 Offset (6,48)
   VLSG A 1 Offset (4,44)
   VLSG A 0 Offset (2,40)
   VLSG A 0 Offset (0,36)
   VLSG A 30 A_WeaponReady(WRF_NOSECONDARY)
   Goto Ready
 Flash:
   TNT1 A 4 Bright A_Light1
   TNT1 A 3 Bright A_Light2
   Goto LightDone
 Spawn:
   DNSP A -1
   Stop
 }
}

actor ValmetPistolX : Weapon
{
  Weapon.SelectionOrder 100
  Weapon.AmmoType1 "ValmetAmmo2"
  Weapon.AmmoUse1 1
  Weapon.SlotNumber 6
  weapon.kickback 200
  Inventory.icon "TNT1A0"
  //Weapon.BobStyle Alpha
  Inventory.PickupMessage "Valmet's pistol"
  Obituary "%k shot %o a lot!"
  +NOAUTOFIRE
  States
  {
    Ready:
	VLPI A 0 A_JumpIfInventory("CyborgDashCheck",1,"DashCheck")
    VLPI A 1 A_WeaponReady
    Loop
  Deselect:
    VLPI A 1 A_Lower
	//TNT1 AA 0 A_Lower
    Loop
  Select:
    VLPI A 1 A_Raise
	//TNT1 AA 0 A_Raise
    Loop
  Fire:
    VLPI A 0 A_SetPitch(pitch-0.8)
	VLPI B 0 A_FireBullets (0, 0, 1, 5, "SeriousDeagle1")
	TNT1 A 0 A_FireCustomMissile("RifleCaseSpawn",5,0,2,4)
	VLPI B 0 A_PlaySound("Valmetpistol/Fire")
	VLPI A 0 A_TakeInventory("ValStealth",1)
     goto FireFinish
      FireFinish:
        TNT1 A 0 A_AlertMonsters
        TNT1 A 0 A_WeaponReady(WRF_NOSWITCH)
        VLPI B 1 BRIGHT A_WeaponReady(WRF_NOSECONDARY|WRF_NOPRIMARY|WRF_NOSWITCH)
		VLPI B 0 A_WeaponReady(WRF_NOSWITCH)
        TNT1 A 0 A_WeaponReady(WRF_NOSWITCH)
        VLPI C 1 BRIGHT A_WeaponReady(WRF_NOSWITCH)
        TNT1 A 0 A_WeaponReady(WRF_NOSWITCH)
        VLPI C 1 BRIGHT A_WeaponReady(WRF_NOSWITCH)
        VLPI DD 1 A_WeaponReady(WRF_NOSWITCH)
        VLPI A 1 A_WeaponReady(WRF_NOSWITCH)
		VLPI A 0 A_ReFire
        Goto Ready
		Altfire:
        VLPI A 1 Offset (0,36)
        VLPI A 0 Offset (2,40)
		VLPI A 0 Offset (4,44)
		VLPI A 0 Offset (6,48)
		VLPI A 1 Offset (8,52)
		VLPI A 0 Offset (10,56)
		VLPI A 0 Offset (12,60)
		VLPI A 0 Offset (14,64)
		VLPI A 1 Offset (14,68)
		VLPI A 0 Offset (14,72)
		VLPI A 0 Offset (14,76)
		Goto Althold
		Althold:
		VLKC A 1
		VLKC B 1
		VLKC C 1
		VLKC D 1
		VLKC E 1
		VLKC F 1
		TNT1 A 0 A_CustomPunch(30,0,CPF_PULLIN,"ValmetMeleePuff",100)
		TNT1 A 0 A_Playsound ("Valmet/Kickswing", 0)
		TNT1 A 0 A_Playsound ("Valmet/Yah", 0)
		VLKC E 1
		VLKC D 1
		VLKC C 1
		VLKC B 1
		VLKC A 1
		TNT1 A 1
		Goto Altdone
		Altdone:
		VLPI A 1 Offset (14,76)
		VLPI A 0 Offset (14,72)
		VLPI A 0 Offset (14,68)
		VLPI A 0 Offset (14,64)
		VLPI A 1 Offset (12,60)
		VLPI A 0 Offset (10,56)
		VLPI A 0 Offset (8,52)
		VLPI A 0 Offset (6,48)
		VLPI A 1 Offset (4,44)
		VLPI A 0 Offset (2,40)
		VLPI A 0 Offset (0,36)
		VLPI A 30 A_WeaponReady(WRF_NOSECONDARY)
		Goto Ready
		DashCheck:
		VLPI A 0 A_TakeInventory("CyborgDashcheck",1)
		VLPI A 1 A_JumpIf(z-floorz>8,"Ready")
		VLPI A 0
		VLPI A 1 A_JumpIfInventory("ValmetDashAmmo", 1, "Dash")
		Goto Ready
		Dash:
		VLPI A 0 A_PlaySoundEx("MELDSH",CHAN_7)
		VLPI A 0 SetPlayerProperty(0, 0, 3)
		VLPI A 0 A_Stop
		VLPI A 0 A_JumpIf(ACS_ExecuteWithResult(991,0)==1,"Dashforward")
		VLPI A 0 A_Stop
		VLPI A 0 A_JumpIf(ACS_ExecuteWithResult(991,0)==2,"Dashback")
		VLPI A 0 A_Stop
		VLPI A 0 A_JumpIf(ACS_ExecuteWithResult(991,0)==3,"Dashleft")
		VLPI A 0 A_Stop
		VLPI A 0 A_JumpIf(ACS_ExecuteWithResult(991,0)==4,"Dashright")
		Goto Dashupward
	Dashupward:
		VLPI A 0 SetPlayerProperty(0, 1, 0)
		VLPI A 0  
		VLPI A 1 A_SpawnItemEx("ValmetAfterImage", -32, 0, 8, 0, 0, 0, 0, 128, 0) 
		VLPI A 0 
		VLPI A 1 A_SpawnItemEx("ValmetAfterImage", -32, 0, 8, 0, 0, 0, 0, 128, 0)
		VLPI A 0 
		VLPI A 1 A_SpawnItemEx("ValmetAfterImage", -32, 0, 8, 0, 0, 0, 0, 128, 0)
		VLPI A 0 
		VLPI A 1 A_SpawnItemEx("ValmetAfterImage", -32, 0, 8, 0, 0, 0, 0, 128, 0)
		VLPI A 0 
		VLPI A 0 SetPlayerProperty(0, 0, 0)
		VLPI A 2 
		VLPI A 0 A_TakeInventory("CyborgDashcheck",1)
		Goto Ready
	Dashforward:
		VLPI A 0 offset(5,32) SetPlayerProperty(0, 1, 0)
		VLPI A 0 
		VLPI A 1 offset(10,36) A_SpawnItemEx("ValmetAfterImage", -32, 0, 8, 0, 0, 0, 0, 128, 0)
		VLPI A 0 offset(15,40)
		VLPI A 1 offset(20,44) A_SpawnItemEx("ValmetAfterImage", -32, 0, 8, 0, 0, 0, 0, 128, 0)
		VLPI A 0 
		VLPI A 1 offset(25,48) A_SpawnItemEx("ValmetAfterImage", -32, 0, 8, 0, 0, 0, 0, 128, 0)
		VLPI A 0 offset(30,52)
		VLPI A 1 offset(35,56) A_SpawnItemEx("ValmetAfterImage", -32, 0, 8, 0, 0, 0, 0, 128, 0) 
		VLPI A 0 
		VLPI A 1 offset(40,60) A_SpawnItemEx("ValmetAfterImage", -32, 0, 8, 0, 0, 0, 0, 128, 0)
		VLPI A 0 offset(45,64)
		VLPI A 1 offset(50,68) A_SpawnItemEx("ValmetAfterImage", -32, 0, 8, 0, 0, 0, 0, 128, 0) 
		VLPI A 0 
		VLPI A 1 offset(55,72) A_SpawnItemEx("ValmetAfterImage", -32, 0, 8, 0, 0, 0, 0, 128, 0)
		VLPI A 0 offset(60,76)
		VLPI A 1 offset(65,80) A_SpawnItemEx("ValmetAfterImage", -32, 0, 8, 0, 0, 0, 0, 128, 0)
		VLPI A 0 
		VLPI A 0 SetPlayerProperty(0, 0, 0)
		VLPI A 7 offset(65,80) 
		VLPI A 1 offset(60,76)
		VLPI A 0 offset(55,72)
		VLPI A 0 offset(50,68) 
		VLPI A 0 offset(45,64)
		VLPI A 1 offset(40,60)
		VLPI A 0 offset(35,56) 
		VLPI A 0 offset(30,52)
		VLPI A 0 offset(25,48)
		VLPI A 1 offset(20,44) 
		VLPI A 0 offset(15,40)
		VLPI A 0 offset(10,36)
		VLPI A 0 offset(5,32)
		VLPI A 2 offset(0,32)
		VLPI A 0 A_TakeInventory("CyborgDashcheck",1)
		Goto Ready
	Dashback:
		VLPI A 0 offset(-2,32) SetPlayerProperty(0, 1, 0)
		VLPI A 0 
		VLPI A 1 offset(-4,36) A_SpawnItemEx("ValmetAfterImage", -32, 0, 8, 0, 0, 0, 0, 128, 0)
		VLPI A 0 offset(-6,40)
		VLPI A 1 offset(-8,44) A_SpawnItemEx("ValmetAfterImage", -32, 0, 8, 0, 0, 0, 0, 128, 0)
		VLPI A 0 
		VLPI A 1 offset(-10,48) A_SpawnItemEx("ValmetAfterImage", -32, 0, 8, 0, 0, 0, 0, 128, 0)
		VLPI A 0 offset(-12,52)
		VLPI A 1 offset(-14,56) A_SpawnItemEx("ValmetAfterImage", -32, 0, 8, 0, 0, 0, 0, 128, 0)
		VLPI A 0 
		VLPI A 1 offset(-16,60) A_SpawnItemEx("ValmetAfterImage", -32, 0, 8, 0, 0, 0, 0, 128, 0)
		VLPI A 0 offset(-18,64)
		VLPI A 1 offset(-20,68) A_SpawnItemEx("ValmetAfterImage", -32, 0, 8, 0, 0, 0, 0, 128, 0)
		VLPI A 0  
		VLPI A 1 offset(-22,72) A_SpawnItemEx("ValmetAfterImage", -32, 0, 8, 0, 0, 0, 0, 128, 0)
		VLPI A 0 offset(-24,76)
		VLPI A 1 offset(-26,80) A_SpawnItemEx("ValmetAfterImage", -32, 0, 8, 0, 0, 0, 0, 128, 0)
		VLPI A 0 
		VLPI A 0 SetPlayerProperty(0, 0, 0)
		VLPI A 7 offset(-26,80) 
		VLPI A 1 offset(-24,76)
		VLPI A 0 offset(-22,72)
		VLPI A 0 offset(-20,68) 
		VLPI A 0 offset(-18,64)
		VLPI A 1 offset(-16,60)
		VLPI A 0 offset(-14,56) 
		VLPI A 0 offset(-12,52)
		VLPI A 0 offset(-10,48)
		VLPI A 1 offset(-8,44) 
		VLPI A 0 offset(-6,40)
		VLPI A 0 offset(-4,36)
		VLPI A 0 offset(-2,32)
		VLPI A 2 offset(0,32)
		VLPI A 0 A_TakeInventory("CyborgDashcheck",1)
		Goto Ready
	Dashleft:
		VLPI A 0 offset(6,32) SetPlayerProperty(0, 1, 0)
		VLPI A 0 
		VLPI A 1 offset(12,36) A_SpawnItemEx("ValmetAfterImage", -32, 0, 8, 0, 0, 0, 0, 128, 0)
		VLPI A 0 offset(18,40)
		VLPI A 1 offset(24,44) A_SpawnItemEx("ValmetAfterImage", -32, 0, 8, 0, 0, 0, 0, 128, 0)
		VLPI A 0  
		VLPI A 1 offset(30,48) A_SpawnItemEx("ValmetAfterImage", -32, 0, 8, 0, 0, 0, 0, 128, 0)
		VLPI A 0 offset(36,52)
		VLPI A 1 offset(42,56) A_SpawnItemEx("ValmetAfterImage", -32, 0, 8, 0, 0, 0, 0, 128, 0)
		VLPI A 0 
		VLPI A 1 offset(48,60) A_SpawnItemEx("ValmetAfterImage", -32, 0, 8, 0, 0, 0, 0, 128, 0)
		VLPI A 0 offset(54,64)
		VLPI A 1 offset(60,68) A_SpawnItemEx("ValmetAfterImage", -32, 0, 8, 0, 0, 0, 0, 128, 0) 
		VLPI A 0 
		VLPI A 1 offset(66,72) A_SpawnItemEx("ValmetAfterImage", -32, 0, 8, 0, 0, 0, 0, 128, 0)
		VLPI A 0 offset(72,76)
		VLPI A 1 offset(78,80) A_SpawnItemEx("ValmetAfterImage", -32, 0, 8, 0, 0, 0, 0, 128, 0) 
		VLPI A 0 
		VLPI A 0 SetPlayerProperty(0, 0, 0)
		VLPI A 7 offset(78,80) 
		VLPI A 1 offset(72,76)
		VLPI A 0 offset(66,72)
		VLPI A 0 offset(60,68) 
		VLPI A 0 offset(54,64)
		VLPI A 1 offset(48,60)
		VLPI A 0 offset(42,56) 
		VLPI A 0 offset(36,52)
		VLPI A 0 offset(30,48)
		VLPI A 1 offset(24,44) 
		VLPI A 0 offset(18,40)
		VLPI A 0 offset(12,36)
		VLPI A 0 offset(6,32)
		VLPI A 2 offset(0,32)
		VLPI A 0 A_TakeInventory("CyborgDashcheck",1)
		Goto Ready
	Dashright:
		VLPI A 0 offset(-4,32) SetPlayerProperty(0, 1, 0)
		VLPI A 0 
		VLPI A 1 offset(-8,36) A_SpawnItemEx("ValmetAfterImage", -32, 0, 8, 0, 0, 0, 0, 128, 0)
		VLPI A 0 offset(-12,40)
		VLPI A 1 offset(-16,44) A_SpawnItemEx("ValmetAfterImage", -32, 0, 8, 0, 0, 0, 0, 128, 0)
		VLPI A 0 
		VLPI A 1 offset(-20,48) A_SpawnItemEx("ValmetAfterImage", -32, 0, 8, 0, 0, 0, 0, 128, 0)
		VLPI A 0 offset(-24,52)
		VLPI A 1 offset(-28,56) A_SpawnItemEx("ValmetAfterImage", -32, 0, 8, 0, 0, 0, 0, 128, 0) 
		VLPI A 0 
		VLPI A 1 offset(-32,60) A_SpawnItemEx("ValmetAfterImage", -32, 0, 8, 0, 0, 0, 0, 128, 0)
		VLPI A 0 offset(-36,64)
		VLPI A 1 offset(-40,68) A_SpawnItemEx("ValmetAfterImage", -32, 0, 8, 0, 0, 0, 0, 128, 0)  
		VLPI A 0 
		VLPI A 1 offset(-44,72) A_SpawnItemEx("ValmetAfterImage", -32, 0, 8, 0, 0, 0, 0, 128, 0)
		VLPI A 0 offset(-48,76)
		VLPI A 1 offset(-52,80) A_SpawnItemEx("ValmetAfterImage", -32, 0, 8, 0, 0, 0, 0, 128, 0)  
		VLPI A 0  
		VLPI A 0 SetPlayerProperty(0, 0, 0)
		VLPI A 7 offset(-52,80)
		VLPI A 1 offset(-48,76)
		VLPI A 0 offset(-44,72)
		VLPI A 0 offset(-40,68) 
		VLPI A 0 offset(-36,64)
		VLPI A 1 offset(-32,60)
		VLPI A 0 offset(-28,56) 
		VLPI A 0 offset(-24,52)
		VLPI A 0 offset(-20,48)
		VLPI A 1 offset(-16,44) 
		VLPI A 0 offset(-12,40)
		VLPI A 0 offset(-8,36)
		VLPI A 0 offset(-4,32)
		VLPI A 2 offset(0,32)
		VLPI A 0 A_TakeInventory("CyborgDashcheck",1)
		Goto Ready
	}
}

Actor ValmetDashAmmo : CustomInventory
{
	Inventory.Amount 1
	Inventory.MaxAmount 1
	+INVENTORY.UNDROPPABLE
	+INVBAR
	States
	{
	Spawn:
		TNT1 A 0
		Stop
	Use:
		TNT1 A 0 A_GiveInventory("CyborgDashcheck",1)
		Fail
	}
}

Actor ValmetAfterImage
{
	RenderStyle Translucent
	+NoGravity
	+CLIENTSIDEONLY
	+NOINTERACTION
	visibletoteam 0
	Alpha 0.75
	Scale 0.85
	States
	{
	Spawn:
		VALM A 8
	Fade:
		VALM A 5 A_FadeOut(0.1)
		Wait
	}
}



ACTOR ValmetMeleePuff
{ 
   ActiveSound ""
   AttackSound "Caroline/PunchHitWall"
   SeeSound "Valmet/KickThing"
   DamageType "SkarletVampiric"
   Obituary "%o tried to mess with %k"
   	Height 4
	Radius 12
   +NOGRAVITY
   +NOEXTREMEDEATH
   +PUFFONACTORS
   +PUFFGETSOWNER
   +CLIENTSIDEONLY
   Decal "none"
   States
   {
   Spawn:
   		TNT1 A 0 A_RadiusThrust(90000,1)
    	TNT1 A 1
    	stop
  	Crash: 
	  	TNT1 A 0 A_RadiusThrust(90000,1)
	  	TNT1 A 1
	  	stop
  	Melee:
	  	TNT1 A 0 A_RadiusThrust(90000,1)
	  	TNT1 A 1
	  	stop
	XDeath:
		TNT1 A 0 A_GiveToTarget("HitBeep",1)
		TNT1 A 0 A_RadiusThrust(90000,1)
		TNT1 A 1
		Stop
   }
}

