Actor Cyborg : PlayerPawn
{
	Health 100
	Player.MaxHealth 100
	Radius 16
	Height 56
	Limitedtoteam 0
	Mass 500
	Bloodtype "BulletPuff"
	Scale 0.92
	PainChance 256
	Player.forwardmove 0.8
	Player.sidemove 0.8
	Player.soundclass "cyborg"
	Player.viewheight 48
	Player.ColorRange 112, 127
	DamageFactor "GhostbusterTrap", 0.0
	DamageFactor "CreepStun", 3.0
	DamageFactor "SentryShoot", 0.0
	DamageFactor "HunterSuperIceArrowTrail2", 0.0
	DamageFactor "Drone", 0.0
	DamageFactor "DimmedVision", 0.5
	DamageFactor "GhostbusterExpander", 0.0
	DamageFactor "Poison", 0.0
	DamageFactor "FlaskT2", 0.0
	Player.DisplayName "Cyborg"
	Player.StartItem "CyborgPlasma-Jet"
	Player.StartItem "CyborgPlasma-Pulse"
	Player.StartItem "CyborgCharge", 75
	Player.StartItem "CyborgVisorCell", 100
	Player.StartItem "CyborgFuel", 150
	Player.StartItem "CyborgJetpackItem", 1
	Player.startitem "ArrowSingle", 35
	Player.StartItem "ClassID", 3
	Player.StartItem "HumanTeam", 1
	Player.StartItem "IAMCYBORG"
	Player.ScoreIcon "CYBORGST"
	Species "Human"
	PainChance "Mohoph", 256
	PainChance "MohophRange", 256
	+NOICEDEATH
	+NODAMAGETHRUST
	+GHOST
	+QUICKTORETALIATE
	+NOSKIN
	+NOTARGET
	
	States
	{
	Spawn:
		ROB1 D 0 SetPlayerProperty(0, 0, 3)
		ROB1 D 25 //15
		ROB1 D 0 A_JumpIf (momz!=0, "Spawn")
		ROB1 D 0 ACS_ExecuteAlways(996,0,0)
		Loop
	StepStop:
		ROB1 D 1
		Goto Spawn
	See:
		ROB1 A 0 SetPlayerProperty(0, 0, 3)
		ROB1 EB 6
		ROB1 B 0 A_SpawnItemEx ("CyborgStomp", 0, 0, 0, 0, 0, -20, 0,0, 0) 
		ROB1 CD 6
		ROB1 B 0 A_SpawnItemEx ("CyborgStomp", 0, 0, 0, 0, 0, -20, 0,0, 0) 
		Goto StepStop
	Missile:
		ROB1 G 15
		Goto Spawn
	CyborgPulse:
		TNT1 H 0 A_TakeInventory("CyborgShieldCharge", 100)
		TNT1 H 0 A_TakeInventory("CyborgCharge", 15)
		TNT1 H 0 A_SetReflectiveInvulnerable
		TNT1 H 0 A_Stop
		TNT1 H 0 A_PlaySound("PrePulseFire", 0)
		TNT1 H 0 SetPlayerProperty(0, 1, 4)
		ROB1 H 4 ACS_ExecuteAlways(722, 0)
		TNT1 A 0 A_SpawnItem("PulseLighter")
		TNT1 A 0 A_SpawnItemEx("PulseExplosionFX", 0, 0, 32)
		TNT1 H 0 A_PlaySound("PulseFire", CHAN_VOICE)
		Goto PulseSpam
	PulseSpam:
		ROB1 H 0 A_JumpIf( 0 == ACS_ExecuteWithResult(780), 3)
		ROB1 H 0 A_JumpIf( 1 == ACS_ExecuteWithResult(780), 4)
		ROB1 H 0 A_JumpIf( 2 == ACS_ExecuteWithResult(780), 5)
		ROB1 H 0 A_SpawnItemEx("CyborgPulseMale", 0, 0, 32, 0, 0, 0)
		ROB1 H 0 A_Jump(256, 4)
		ROB1 H 0 A_SpawnItemEx("CyborgPulseFemale", 0, 0, 32, 0, 0, 0)
		ROB1 H 0 A_Jump(256, 2)
		ROB1 H 0 A_SpawnItemEx("CyborgPulseOther", 0, 0, 32, 0, 0, 0)
		ROB1 H 1 A_SpawnItemEx("PulseSparkle", 0, 0, 32, random(-8,8), random(-8,8), random(-8,8), 0, 32, 0)
		ROB1 HHHH 0 A_SpawnItemEx("PulseSparkle", 0, 0, 32, random(-8,8), random(-8,8), random(-8,8), 0, 32, 0)
		ROB1 H 1 A_SpawnItemEx("PulseSparkle", 0, 0, 32, random(-8,8), random(-8,8), random(-8,8), 0, 32, 0)
		ROB1 HHHH 0 A_SpawnItemEx("PulseSparkle", 0, 0, 32, random(-8,8), random(-8,8), random(-8,8), 0, 32, 0)
		ROB1 H 1 A_SpawnItemEx("PulseSparkle", 0, 0, 32, random(-8,8), random(-8,8), random(-8,8), 0, 32, 0)
		ROB1 HHHH 0 A_SpawnItemEx("PulseSparkle", 0, 0, 32, random(-8,8), random(-8,8), random(-8,8), 0, 32, 0)
		ROB1 H 1 A_SpawnItemEx("PulseSparkle", 0, 0, 32, random(-8,8), random(-8,8), random(-8,8), 0, 32, 0)
		ROB1 HHHH 0 A_SpawnItemEx("PulseSparkle", 0, 0, 32, random(-8,8), random(-8,8), random(-8,8), 0, 32, 0)
		ROB1 H 1 A_SpawnItemEx("PulseSparkle", 0, 0, 32, random(-8,8), random(-8,8), random(-8,8), 0, 32, 0)
		ROB1 HHHH 0 A_SpawnItemEx("PulseSparkle", 0, 0, 32, random(-8,8), random(-8,8), random(-8,8), 0, 32, 0)
		ROB1 H 1 A_SpawnItemEx("PulseSparkle", 0, 0, 32, random(-8,8), random(-8,8), random(-8,8), 0, 32, 0)
		ROB1 HHHH 0 A_SpawnItemEx("PulseSparkle", 0, 0, 32, random(-8,8), random(-8,8), random(-8,8), 0, 32, 0)
		ROB1 H 1 A_SpawnItemEx("PulseSparkle", 0, 0, 32, random(-8,8), random(-8,8), random(-8,8), 0, 32, 0)
		ROB1 HHHH 0 A_SpawnItemEx("PulseSparkle", 0, 0, 32, random(-8,8), random(-8,8), random(-8,8), 0, 32, 0)
		ROB1 H 1 A_SpawnItemEx("PulseSparkle", 0, 0, 32, random(-8,8), random(-8,8), random(-8,8), 0, 32, 0)
		ROB1 HHHH 0 A_SpawnItemEx("PulseSparkle", 0, 0, 32, random(-8,8), random(-8,8), random(-8,8), 0, 32, 0)
		ROB1 H 1 A_SpawnItemEx("PulseSparkle", 0, 0, 32, random(-8,8), random(-8,8), random(-8,8), 0, 32, 0)
		ROB1 HHHH 0 A_SpawnItemEx("PulseSparkle", 0, 0, 32, random(-8,8), random(-8,8), random(-8,8), 0, 32, 0)
		ROB1 H 1 A_SpawnItemEx("PulseSparkle", 0, 0, 32, random(-8,8), random(-8,8), random(-8,8), 0, 32, 0)
		ROB1 HHHH 0 A_SpawnItemEx("PulseSparkle", 0, 0, 32, random(-8,8), random(-8,8), random(-8,8), 0, 32, 0)
		ROB1 H 1 A_SpawnItemEx("PulseSparkle", 0, 0, 32, random(-8,8), random(-8,8), random(-8,8), 0, 32, 0)
		ROB1 HHHH 0 A_SpawnItemEx("PulseSparkle", 0, 0, 32, random(-8,8), random(-8,8), random(-8,8), 0, 32, 0)
		ROB1 H 1 A_SpawnItemEx("PulseSparkle", 0, 0, 32, random(-8,8), random(-8,8), random(-8,8), 0, 32, 0)
		ROB1 HHHH 0 A_SpawnItemEx("PulseSparkle", 0, 0, 32, random(-8,8), random(-8,8), random(-8,8), 0, 32, 0)
		ROB1 H 1 A_SpawnItemEx("PulseSparkle", 0, 0, 32, random(-8,8), random(-8,8), random(-8,8), 0, 32, 0)
		ROB1 HHHH 0 A_SpawnItemEx("PulseSparkle", 0, 0, 32, random(-8,8), random(-8,8), random(-8,8), 0, 32, 0)
		ROB1 H 1 A_SpawnItemEx("PulseSparkle", 0, 0, 32, random(-8,8), random(-8,8), random(-8,8), 0, 32, 0)
		ROB1 HHHH 0 A_SpawnItemEx("PulseSparkle", 0, 0, 32, random(-8,8), random(-8,8), random(-8,8), 0, 32, 0)
		ROB1 H 1 A_SpawnItemEx("PulseSparkle", 0, 0, 32, random(-8,8), random(-8,8), random(-8,8), 0, 32, 0)
		ROB1 HHHH 0 A_SpawnItemEx("PulseSparkle", 0, 0, 32, random(-8,8), random(-8,8), random(-8,8), 0, 32, 0)
		ROB1 H 0 SetPlayerProperty(0, 0, 4)
		ROB1 H 0 A_UnSetReflectiveInvulnerable
		ROB1 H 0 A_TakeInventory("PulseSpamCounter", 15)
		ROB1 H 1 A_TakeInventory("CyborgDoPulse", 1)
		Goto Spawn
	Pain:
		ROB1 H 4 A_Pain
		Goto Spawn
	Pain.ChokeAttack:
		ROB1 G 1
		ROB1 G 0 A_GiveToTarget("ChokePainHealer", 1)
		ROB1 G 0 A_GiveToTarget("VomitPoints", 2)
		ROB1 G 8 A_Pain
		Goto Spawn
	Pain.Creepstun:
		ROB1 H 0 A_Pain
		ROB1 H 18 ACS_ExecuteAlways(986,0)
		Goto Spawn
	Pain.CreeperHealBall:
		ROB1 G 1
		ROB1 G 0 A_GiveToTarget("CreeperHealBallHealer", 1)
		ROB1 G 8 A_Pain
		Goto Spawn
	Pain.Impale:
		TNT1 A 0 ThrustThingZ(0,5,0,1)
		Goto Pain	
	Pain.DimmedVision:
		TNT1 A 0 A_Pain
		TNT1 A 0 A_GiveInventory("VisionDimmer", 1)
		TNT1 A 0 A_GiveInventory("VisionDimEffect", 1) // ACS_ExecuteAlways(753, 0)
		TNT1 A 0 ACS_ExecuteAlways(754, 0)
		TNT1 A 0 HealThing(1)
		ROB1 G 7
		Goto Spawn	
	Pain.MorgBat:
		TNT1 A 0 A_giveToTarget("MorgHeal", 3)
		Goto Pain
	Pain.Mohoph:
		ROB1 G 1
		TNT1 A 0 A_GiveToTarget("MohophHeal", 1)
		goto Pain
	Pain.MohophRange:
		ROB1 G 1
		TNT1 AAA 0 A_GiveToTarget("MohophHeal", 1)
		Goto Pain
	Death:
	DeathAnim:
		ROB1 A 0 A_GiveToTarget("KilledCyborg", 1)
		ROB1 A 0 A_GiveToTarget("TotalKillCount", 1)
		ROB1 A 0 A_GiveToTarget("HumanKillCount", 1)
		TNT1 A 0 A_GiveToTarget("LowHPKill", 1)
		ROB1 A 0 A_GiveToTarget("CheckAchievements", 1)
		ROB1 A 0 A_ChangeFlag("LOWGRAVITY", 0)
		ROB1 A 0 SetPlayerProperty(0, 0, 3)
		ROB1 A 0 ACS_ExecuteAlways(751, 0)
		ROB1 J 6
		ROB1 K 6 A_PlayerScream
		ROB1 L 5
		ROB1 M 5 A_NoBlocking
		ROB1 NOP 5
		ROB1 Q 6
		ROB1 R -1
		Stop
	GibDeath:
	Death.ImpaleBite:
		ROB1 A 0 A_GiveToTarget("ImpaleKill", 1)
		ROB1 A 0 A_GiveToTarget("DoubleImpaleKill", 1)
		ROB1 A 0 A_GiveToTarget("JitterskullPoints", 1)
		ROB1 G 0 A_GiveToTarget("VomitPoints", 10)
		ROB1 A 0 A_GiveToTarget("KilledCyborg", 1)
		ROB1 A 0 A_GiveToTarget("TotalKillCount", 1)
		ROB1 A 0 A_GiveToTarget("HumanKillCount", 1)
		ROB1 A 0 A_GiveToTarget("CheckAchievements", 1)
		ROB1 A 0 A_GiveToTarget("Crunched",1)
		ROB1 A 0 ACS_ExecuteAlways(751, 0)
		ROB1 A 0 A_NoBlocking
		ROB1 A 0 A_PlaySound("weapons/grenadeexplode")
		ROB1 A 0 A_SkullPop("Custom_BloodySkull3")
		ROB1 A 0 A_SpawnItemEx("CYBGIBBER", 0, 0, 0, 0, 0, 0, 0, 161, 0)
		ROB1 A 0 A_SpawnItemEx("GrenadeExplosion", 0, 0, 0, 0, 0, 0, 0, 160, 0)
		ROB1 A 1
		BLAN A -1
		Stop
	Death.CreeperHealBall:
		ROB1 G 0 A_GiveToTarget("CreeperHealBallHealer", 1)
		ROB1 A 0 A_GiveToTarget("CreepHealKill", 1)
		TNT1 A 0 A_GiveToTarget("HealBallsFired", 1)
		TNT1 A 0 A_GiveToTarget("CreeperMaxCharge", 1)
        Goto DeathAnim
	Death.CreeperMelee:
		ROB1 A 0 A_PlaySoundEx("creeperattack", "Body")
		ROB1 A 0 ACS_ExecuteAlways(997,0)
		ROB1 A 0 A_SpawnItemEx("SoulSprite", 0, 0, 0, 0, 0, 2)
		ROB1 A 0 A_GiveToTarget("Creeperheal",1)
		TNT1 A 0 A_GiveToTarget("HealBallsFired", 1)
		ROB1 A 0 A_JumpIf(z - floorz < 36, 2)
		ROB1 A 0 A_GiveToTarget("CyborgMidAirKill", 1)
		ROB1 A 0 A_GiveToTarget("CreeperMeleeKill", 1)
		TNT1 A 0 A_GiveToTarget("CreeperMaxCharge", 1)
//		TNT1 A 0 A_GiveToTarget("GhoulAmmo", 1)
		Goto DeathAnim
    Death.SjasScream:
        ROB1 A 0 A_GiveToTarget("SjasScreamKill", 1)
		PETE A 0 A_GiveToTarget("SjasMeleeMulti", 1)
		Goto DeathAnim
    Death.JitterMelee:
        ROB1 A 0 A_GiveToTarget("JitterMeleeKill", 1)
        Goto GibDeath
    Death.CreepStun:
        ROB1 A 0 A_GiveToTarget("CreepStunKill", 1)
		TNT1 A 0 A_GiveToTarget("HealBallsFired", 1)
		TNT1 A 0 A_GiveToTarget("CreeperMaxCharge", 1)
        Goto DeathAnim
    Death.ChokeVomit:
        ROB1 A 0 A_GiveToTarget("ChokeVomitKill", 1)
        Goto DeathAnim
    Death.ChokeAttack:
        ROB1 A 0 A_GiveToTarget("ChokeAttackKill", 1)
		ROB1 A 0 A_GiveToTarget("ChokeDeathHealer", 1)
        Goto GibDeath
	Death.ChokeVomit:
		GO99 A 0 A_GiveToTarget("ChokeVomitKill", 1)
		Goto DeathAnim	
	Death.ChokeFeast:
		KNIG A 0 A_GiveToTarget("ChokeFeasTKill", 1)
		Goto DeathAnim		
    Death.ChokeBloodBall:
		TNT1 A 0 A_GiveToTarget("VomitPoints", 15)
        ROB1 A 0 A_GiveToTarget("ChokeBloodBallKill", 1)
		ROB1 A 0 A_GiveToTarget("ChokeBloodBallMulti", 1)
        Goto DeathAnim
    Death.FrostbiteMelee:
        ROB1 A 0 A_GiveToTarget("FrostbiteMeleeKill", 1)
        Goto GibDeath
	Death.FrostbiteMortar:
		TNT1 A 0 A_GiveToTarget("FrostyMortarKill", 1)
		Goto DeathAnim		
    Death.FrostbiteIceBreath:
		ROB1 A 0 A_NoBlocking
		HUNT A 0 A_GiveToTarget("FrostyBreathMulti", 1)
        ROB1 A 0 A_GiveToTarget("FrostbiteIceBreathKill", 1)
        ROB1 A 0 A_SpawnItemEx("CyborgIceDeath")
		ROB1 A 0 A_GiveToTarget("KilledCyborg", 1)
		ROB1 A 0 A_GiveToTarget("TotalKillCount", 1)
		ROB1 A 0 A_GiveToTarget("HumanKillCount", 1)
		ROB1 A 0 A_GiveToTarget("CheckAchievements", 1)
		ROB1 A 0 A_GiveToTarget("CheckAchievements", 1)
		ROB1 A 0 ACS_ExecuteAlways(751, 0)
		ROB1 A 0 A_PlayerScream
		ROB1 A 1
		BLAN A -1
		Stop
    Death.Impale:
        TNT1 A 0 A_GiveToTarget("ImpaleKill", 1)
		TNT1 A 0 A_GiveToTarget("DoubleImpaleKill", 1)
        Goto DeathAnim
    Death.IceFiendMelee:
		TNT1 A 0 A_GiveToTarget("NightmareMeleeKill", 1)
	Death.DimmedVision:
	DimVisionDeath:
		TNT1 A 0 A_JumpIfInventory("VisionDimmer", 1, 1)
		Goto FadeDeath
		TNT1 A 0 A_GiveToTarget("NightmareHealer", 1)
		TNT1 A 0 A_GiveToTarget("DimDurationEffect", 2)
		TNT1 A 0 A_GiveToTarget("InvisibleCounter", 0)
		TNT1 A 0 A_GiveToTarget("DimmedMeleeKill", 1)
		TNT1 A 0 A_Jump(192, 3)
		TNT1 AA 0 A_PlaySoundEx("IcefiendBackstab1", 5, 0, 1)
		Goto FadeDeath
		TNT1 A 0 A_Jump(192, 3)
		TNT1 AA 0 A_PlaySoundEx("IcefiendBackstab2", 5, 0, 1)
		Goto FadeDeath
		TNT1 A 0 A_Jump(192, 3)
		TNT1 AA 0 A_PlaySoundEx("IcefiendBackstab3", 5, 0, 1)
		Goto FadeDeath
		TNT1 AA 0 A_PlaySoundEx("IcefiendBackstab4", 5, 0, 1)
	    Goto FadeDeath
	Death.NightmareCleave:
		TNT1 A 0 A_GiveToTarget("CleaveKill", 1)
		TNT1 A 0 A_JumpIfInventory("VisionDimmer", 1, "DimVisionDeath")
	    Goto FadeDeath
	FadeDeath:
	    TNT1 A 0 A_GiveToTarget("InvisibleCounter", 8)
		TNT1 A 0 A_GiveToTarget("KilledCyborg", 1)
		TNT1 A 0 A_GiveToTarget("TotalKillCount", 1)
		TNT1 A 0 A_GiveToTarget("HumanKillCount", 1)
		TNT1 A 0 A_GiveToTarget("LowHPKill", 1)
		TNT1 A 0 A_GiveToTarget("CheckAchievements", 1)
		ROB1 H 1
		TNT1 A 0 A_SpawnItemEx("FadeCyborg", 0, 0, 0, 0, 0, 0, 0, SXF_TRANSFERTRANSLATION)
		BLAN A -1
	Stop
	Death.MohophRange:
	Death.Mohoph:
		PLAY A 0 A_GiveToTarget("TransCyborg",1)
		TNT1 A 0 A_GiveToTarget("MorphAmmo", 1)
		PLAY A 0 A_PlaySoundEx("MohophKill","Body")
		TNT1 A 0 A_GiveToTarget("MohophFlight", 1)
		TNT1 A 0 A_GiveToTarget("MohophKill", 1)
		TNT1 A 0 A_GiveToTarget("KilledCyborg2", 1)
		TNT1 A 0 A_GiveToTarget("MohophCyborgText", 1)
		TNT1 A 0 A_JumpIfInTargetInventory("MohophJustMorphed", 1, 2)
		TNT1 A 0 A_Jump(256, 2)
		TNT1 A 0 A_GiveToTarget("JustMorphedKill", 1)		
		TNT1 A 0 ACS_ExecuteAlways(514, 0, 2)
		PLAY A 0 ACS_ExecuteAlways(976,0)
		TNT1 A 0 A_JumpIfInTargetInventory("MohophWarlockCheck", 1, 1)
		Goto DeathAnim
		TNT1 A 0 A_GiveToTarget("MorphAmmo", 1)
		Goto DeathAnim
	Death.MorgMelee:
		TNT1 A 0 A_GiveToTarget("MorgBatAmmo", 2)
		TNT1 A 0 A_GiveToTarget("MorgMeleeKill", 1)
		TNT1 A 0 A_GiveToTarget("MorgMulti", 1)
		Goto DeathAnim
	Death.MorgBat:
		TNT1 A 0 A_GiveToTarget("MorgBatKill", 1)
		Goto DeathAnim			
	}
}

actor SpreaderCooldown : PowerDamage
{
	damagefactor "nothing", 1.0
	powerup.duration 83
}

actor CyborgPlasma-Jet : Weapon
{
	Weapon.SelectionOrder 100
	Weapon.AmmoUse 1
	Weapon.SlotNumber 1
	Weapon.AmmoUse2 2
	Weapon.AmmoGive 50
	Weapon.AmmoGive2 150
	Weapon.AmmoType "CyborgCharge"
	Weapon.AmmoType2 "CyborgFuel"
	inventory.icon "CYBWEP"
	Inventory.PickupMessage "You got the cyborg's arm!.. somehow?"
	Obituary "%o was devastated by %k's plasma." 
	+INVENTORY.UNDROPPABLE
	+AMMO_OPTIONAL
	+WEAPON.NOAUTOAIM
	+WEAPON.ALT_AMMO_OPTIONAL
	+DONTBLAST
	scale 0.6
	States
	{
	Spawn:
		BPAK A 400
		stop
	Ready:
		SABS A 0 A_JumpIfInventory("CyborgDashcheck",1,"Dashcheck")
		SABS A 1 A_WeaponReady
		Loop
	Select:
	    TNT1 A 0 ACS_ExecuteAlways(700, 0, WM_CYBORG)
		TNT1 AAAAAAAAAAAAAAAAAAAA 0 A_Raise
		SABS A 1 A_Raise
		Goto Select+1
	Deselect:
		TNT1 AAAAAAAAAAAAAAAAAAAA 0 A_Lower
		SABS A 1 A_Lower
		Loop
	Fire:
		SABS A 0 ACS_ExecuteAlways(999,0)
		SABS A 1 A_JumpIfInventory("CyborgNoFire", 1, "Ready")
		SABS A 1 A_JumpIfInventory("CyborgCharge", 1, "Normalshot")
		Goto Weakshot
	Weakshot:
		SABA A 1 SetPlayerProperty(0, 0, 3)
		TNT1 A 0 A_GiveInventory("CyborgShieldCharge", 1)
		SABA B 1 A_FireCustomMissile("CyborgPlasmaBallWeak", 0, 0, 11, 3)
		SABA BBCCDDD 1
		TNT1 A 0 Bright A_SpawnItemEx ("cyplassmoke",cos(-pitch)*24,6,38+(sin(-pitch)*24),cos(-pitch)*0,0,2,0,0,0)
		SABS A 3 A_Refire
		Goto Ready
	Normalshot:
		SABA A 1 SetPlayerProperty(0, 0, 3) // These lines dont check for cyborgpulse, these are the problem.
		TNT1 A 0 A_GiveInventory("CyborgShieldCharge", 1)
		TNT1 A 0 A_JumpIfInventory("CyborgShieldCharge", 100, "FireTrailer")
		SABA B 1 A_FireCustomMissile("CyborgPlasmaBall", 0, 1, 11, 3)
	Continue:	
		SABA BCD 1
		TNT1 A 0 Bright A_SpawnItemEx ("cyplassmoke",cos(-pitch)*24,6,38+(sin(-pitch)*24),cos(-pitch)*0,0,2,0,0,0)
		SABS A 1 A_Refire
		Goto Ready
	FireTrailer:
		SABA B 1 A_FireCustomMissile("BigCyborgPlasmaBall", 0, 1, 11, 3)
		Goto Continue		
	Altfire:
		SABS A 0 A_JumpIfInventory("CyborgDashcheck",1,"Dashcheck")
		SABS A 1 A_JumpIfInventory("CyborgFuel", 1, "Jetpack")
		SABS A 0 ACS_ExecuteAlways(999,0)
		SABS A 0 SetPlayerProperty(0, 0, 3)
		SABS A 18 A_PlaySoundEx("weapons/cyborgfail","Item")
		Goto Ready
	Jetpack:
		SABS A 0 ACS_ExecuteAlways(998,0)
		SABS A 0 SetPlayerProperty(0, 1, 3)
		TNT1 A 0 A_GiveInventory("CyborgShieldCharge", 1)
		SABS A 0 A_SpawnItemEx("Firey", -32, 0, 28, 0, 0, -1, 0, 128, 0) 
		TNT1 A 0 A_FireCustomMissile("JetpackExploder", 0, 0, 0, 4)
		SABS A 0 A_SpawnItemEx("SmokeLarge", -32, 0, 20, 0, 0, 0, 0, 128, 0)
		SABS A 0 A_JumpIfInventory("CyborgAchiItem", 1, 1)
		TNT1 A 0 A_GiveInventory("CyborgAchiItem", 1)
		SABS A 3 A_TakeInventory("CyborgFuel",1)
		SABS A 0 A_ReFire
		SABS AAAA 1 A_WeaponReady
		SABS A 0 ACS_ExecuteAlways(999,0)
		SABS A 0 SetPlayerProperty(0, 0, 3)
		Goto Ready
	Dashcheck:
		SABS A 0 A_TakeInventory("CyborgDashcheck",1)
		SABS A 1 A_JumpIf(z-floorz>8,"Ready")
		SABS A 0 A_JumpIfInventory("CreeperStunCheck",1,"Jetpack")
		TNT1 A 0 A_JumpIfInventory("CyborgDashCooldown", 1, "Ready")
		SABS A 1 A_JumpIfInventory("CyborgFuel", 8, "Dash")
		Goto Ready
	Dash:
		SABS A 0 A_PlaySoundEx("weapons/cyborgdash","Item")
		SABS A 0 SetPlayerProperty(0, 0, 3)
		SABS A 0 A_Stop
		SABS A 0 A_JumpIf(ACS_ExecuteWithResult(991,0,0)==1,"Dashforward")
		SABS A 0 A_Stop
		SABS A 0 A_JumpIf(ACS_ExecuteWithResult(991,0,0)==2,"Dashback")
		SABS A 0 A_Stop
		SABS A 0 A_JumpIf(ACS_ExecuteWithResult(991,0,0)==3,"Dashleft")
		SABS A 0 A_Stop
		SABS A 0 A_JumpIf(ACS_ExecuteWithResult(991,0,0)==4,"Dashright")
		Goto Dashupward
	Dashupward:
		TNT1 A 0 A_GiveInventory("CyborgShieldCharge", 5)
		SABS A 0 SetPlayerProperty(0, 1, 0)
		SABS A 0 A_SpawnItemEx("Firey", -32, 0, 28, 0, 0, -1, 0, 128, 0) 
		TNT1 A 0 A_FireCustomMissile("JetpackExploder", 0, 0, 0, 4)
		SABS A 3 A_SpawnItemEx("SmokeLarge", -32, 10, 8, 0, 0, 0, 0, 128, 0) 
		TNT1 A 0 A_TakeInventory("CyborgFuel", 8)
		SABS A 0 A_SpawnItemEx("Firey", -32, 0, 28, 0, 0, -1, 0, 128, 0) 
		TNT1 A 0 A_FireCustomMissile("JetpackExploder", 0, 0, 0, 4)
		SABS A 3 A_SpawnItemEx("SmokeLarge", -32, 10, 8, 0, 0, 0, 0, 128, 0) 
		SABS A 0 A_SpawnItemEx("Firey", -32, 0, 28, 0, 0, -1, 0, 128, 0) 
		TNT1 A 0 A_FireCustomMissile("JetpackExploder", 0, 0, 0, 4)
		SABS A 3 A_SpawnItemEx("SmokeLarge", -32, 10, 8, 0, 0, 0, 0, 128, 0) 
		SABS A 0 A_SpawnItemEx("Firey", -32, 0, 28, 0, 0, -1, 0, 128, 0) 
		TNT1 A 0 A_FireCustomMissile("JetpackExploder", 0, 0, 0, 4)
		SABS A 3 A_SpawnItemEx("SmokeLarge", -32, 10, 8, 0, 0, 0, 0, 128, 0) 
		SABS A 0 A_SpawnItemEx("Firey", -32, 0, 28, 0, 0, -1, 0, 128, 0) 
		TNT1 A 0 A_FireCustomMissile("JetpackExploder", 0, 0, 0, 4)
		SABS A 0 SetPlayerProperty(0, 0, 0)
		SABS A 5 A_SpawnItemEx("SmokeLarge", -32, 10, 8, 0, 0, 0, 0, 128, 0) 
		SABS A 0 A_TakeInventory("CyborgDashcheck",1)
		SABS A 0 A_GiveInventory("CyborgNoFire",1)
		Goto Ready
	Dashforward:
		TNT1 A 0 A_GiveInventory("CyborgShieldCharge", 5)
		SABS A 0 offset(5,32) SetPlayerProperty(0, 1, 0)
		SABS A 0 A_SpawnItemEx("Firey", -32, 0, 28, 0, 0, -1, 0, 128, 0) 
		TNT1 A 0 A_FireCustomMissile("JetpackExploder", 0, 0, 0, 4)
		SABS A 1 offset(10,36)
		SABS A 1 offset(15,40)
		SABS A 1 offset(20,44) A_SpawnItemEx("SmokeLarge", -32, 10, 8, 0, 0, 0, 0, 128, 0) 
		TNT1 A 0 A_TakeInventory("CyborgFuel", 8)
		SABS A 0 A_SpawnItemEx("Firey", -32, 0, 28, 0, 0, -1, 0, 128, 0) 
		TNT1 A 0 A_FireCustomMissile("JetpackExploder", 0, 0, 0, 4)
		SABS A 1 offset(25,48)
		SABS A 1 offset(30,52)
		SABS A 1 offset(35,56) A_SpawnItemEx("SmokeLarge", -32, 10, 8, 0, 0, 0, 0, 128, 0) 
		SABS A 0 A_SpawnItemEx("Firey", -32, 0, 28, 0, 0, -1, 0, 128, 0) 
		TNT1 A 0 A_FireCustomMissile("JetpackExploder", 0, 0, 0, 4)
		SABS A 1 offset(40,60)
		SABS A 1 offset(45,64)
		SABS A 1 offset(50,68) A_SpawnItemEx("SmokeLarge", -32, 10, 8, 0, 0, 0, 0, 128, 0) 
		SABS A 0 A_SpawnItemEx("Firey", -32, 0, 28, 0, 0, -1, 0, 128, 0) 
		TNT1 A 0 A_FireCustomMissile("JetpackExploder", 0, 0, 0, 4)
		SABS A 1 offset(55,72)
		SABS A 1 offset(60,76)
		SABS A 1 offset(65,80) A_SpawnItemEx("SmokeLarge", -32, 10, 8, 0, 0, 0, 0, 128, 0) 
		SABS A 0 A_SpawnItemEx("Firey", -32, 0, 28, 0, 0, -1, 0, 128, 0) 
		TNT1 A 0 A_FireCustomMissile("JetpackExploder", 0, 0, 0, 4)
		SABS A 0 SetPlayerProperty(0, 0, 0)
		SABS A 6 offset(65,80) A_SpawnItemEx("SmokeLarge", -32, 10, 8, 0, 0, 0, 0, 128, 0) 
		SABS A 1 offset(60,76)
		SABS A 1 offset(55,72)
		SABS A 1 offset(50,68) 
		SABS A 1 offset(45,64)
		SABS A 1 offset(40,60)
		SABS A 1 offset(35,56) 
		SABS A 1 offset(30,52)
		SABS A 1 offset(25,48)
		SABS A 1 offset(20,44) 
		SABS A 1 offset(15,40)
		SABS A 1 offset(10,36)
		SABS A 1 offset(5,32)
		SABS A 1 offset(0,32)
		TNT1 A 0 A_GiveInventory("CyborgDashCooldown", 1)
		SABS A 0 A_TakeInventory("CyborgDashcheck",1)
		Goto Ready
	Dashback:
		TNT1 A 0 A_GiveInventory("CyborgShieldCharge", 5)
		SABS A 0 offset(-2,32) SetPlayerProperty(0, 1, 0)
		SABS A 0 A_SpawnItemEx("Firey", -32, 0, 28, 0, 0, -1, 0, 128, 0) 
		TNT1 A 0 A_FireCustomMissile("JetpackExploder", 0, 0, 0, 4)
		SABS A 1 offset(-4,36)
		SABS A 1 offset(-6,40)
		SABS A 1 offset(-8,44) A_SpawnItemEx("SmokeLarge", -32, 10, 8, 0, 0, 0, 0, 128, 0) 
		SABS A 0 A_TakeInventory("CyborgFuel", 8)
		SABS A 0 A_SpawnItemEx("Firey", -32, 0, 28, 0, 0, -1, 0, 128, 0) 
		TNT1 A 0 A_FireCustomMissile("JetpackExploder", 0, 0, 0, 4)
		SABS A 1 offset(-10,48)
		SABS A 1 offset(-12,52)
		SABS A 1 offset(-14,56) A_SpawnItemEx("SmokeLarge", -32, 10, 8, 0, 0, 0, 0, 128, 0) 
		SABS A 0 A_SpawnItemEx("Firey", -32, 0, 28, 0, 0, -1, 0, 128, 0) 
		TNT1 A 0 A_FireCustomMissile("JetpackExploder", 0, 0, 0, 4)
		SABS A 1 offset(-16,60)
		SABS A 1 offset(-18,64)
		SABS A 1 offset(-20,68) A_SpawnItemEx("SmokeLarge", -32, 10, 8, 0, 0, 0, 0, 128, 0) 
		SABS A 0 A_SpawnItemEx("Firey", -32, 0, 28, 0, 0, -1, 0, 128, 0) 
		TNT1 A 0 A_FireCustomMissile("JetpackExploder", 0, 0, 0, 4)
		SABS A 1 offset(-22,72)
		SABS A 1 offset(-24,76)
		SABS A 1 offset(-26,80) A_SpawnItemEx("SmokeLarge", -32, 10, 8, 0, 0, 0, 0, 128, 0) 
		SABS A 0 A_SpawnItemEx("Firey", -32, 0, 28, 0, 0, -1, 0, 128, 0) 
		TNT1 A 0 A_FireCustomMissile("JetpackExploder", 0, 0, 0, 4)
		SABS A 0 SetPlayerProperty(0, 0, 0)
		SABS A 6 offset(-26,80) A_SpawnItemEx("SmokeLarge", -32, 10, 8, 0, 0, 0, 0, 128, 0) 
		SABS A 1 offset(-24,76)
		SABS A 1 offset(-22,72)
		SABS A 1 offset(-20,68) 
		SABS A 1 offset(-18,64)
		SABS A 1 offset(-16,60)
		SABS A 1 offset(-14,56) 
		SABS A 1 offset(-12,52)
		SABS A 1 offset(-10,48)
		SABS A 1 offset(-8,44) 
		SABS A 1 offset(-6,40)
		SABS A 1 offset(-4,36)
		SABS A 1 offset(-2,32)
		SABS A 1 offset(0,32)
		TNT1 A 0 A_GiveInventory("CyborgDashCooldown", 1)
		SABS A 0 A_TakeInventory("CyborgDashcheck",1)
		Goto Ready
	Dashleft:
		TNT1 A 0 A_GiveInventory("CyborgShieldCharge", 5)
		SABS A 0 offset(6,32) SetPlayerProperty(0, 1, 0)
		SABS A 0 A_SpawnItemEx("Firey", -32, 0, 28, 0, 0, -1, 0, 128, 0) 
		TNT1 A 0 A_FireCustomMissile("JetpackExploder", 0, 0, 0, 4)
		SABS A 1 offset(12,36)
		SABS A 1 offset(18,40)
		SABS A 1 offset(24,44) A_SpawnItemEx("SmokeLarge", -32, 10, 8, 0, 0, 0, 0, 128, 0) 
		SABS A 0 A_TakeInventory("CyborgFuel", 8)
		SABS A 0 A_SpawnItemEx("Firey", -32, 0, 28, 0, 0, -1, 0, 128, 0) 
		TNT1 A 0 A_FireCustomMissile("JetpackExploder", 0, 0, 0, 4)SABS A 1 offset(30,48)
		SABS A 1 offset(36,52)
		SABS A 1 offset(42,56) A_SpawnItemEx("SmokeLarge", -32, 10, 8, 0, 0, 0, 0, 128, 0) 
		SABS A 0 A_SpawnItemEx("Firey", -32, 0, 28, 0, 0, -1, 0, 128, 0) 
		TNT1 A 0 A_FireCustomMissile("JetpackExploder", 0, 0, 0, 4)
		SABS A 1 offset(48,60)
		SABS A 1 offset(54,64)
		SABS A 1 offset(60,68) A_SpawnItemEx("SmokeLarge", -32, 10, 8, 0, 0, 0, 0, 128, 0) 
		SABS A 0 A_SpawnItemEx("Firey", -32, 0, 28, 0, 0, -1, 0, 128, 0) 
		TNT1 A 0 A_FireCustomMissile("JetpackExploder", 0, 0, 0, 4)
		SABS A 1 offset(66,72)
		SABS A 1 offset(72,76)
		SABS A 1 offset(78,80) A_SpawnItemEx("SmokeLarge", -32, 10, 8, 0, 0, 0, 0, 128, 0) 
		SABS A 0 A_SpawnItemEx("Firey", -32, 0, 28, 0, 0, -1, 0, 128, 0) 
		TNT1 A 0 A_FireCustomMissile("JetpackExploder", 0, 0, 0, 4)
		SABS A 0 SetPlayerProperty(0, 0, 0)
		SABS A 6 offset(78,80) A_SpawnItemEx("SmokeLarge", -32, 10, 8, 0, 0, 0, 0, 128, 0) 
		SABS A 1 offset(72,76)
		SABS A 1 offset(66,72)
		SABS A 1 offset(60,68) 
		SABS A 1 offset(54,64)
		SABS A 1 offset(48,60)
		SABS A 1 offset(42,56) 
		SABS A 1 offset(36,52)
		SABS A 1 offset(30,48)
		SABS A 1 offset(24,44) 
		SABS A 1 offset(18,40)
		SABS A 1 offset(12,36)
		SABS A 1 offset(6,32)
		SABS A 1 offset(0,32)
		TNT1 A 0 A_GiveInventory("CyborgDashCooldown", 1)
		SABS A 0 A_TakeInventory("CyborgDashcheck",1)
		Goto Ready
	Dashright:
		TNT1 A 0 A_GiveInventory("CyborgShieldCharge", 5)
		SABS A 0 offset(-4,32) SetPlayerProperty(0, 1, 0)
		SABS A 0 A_SpawnItemEx("Firey", -32, 0, 28, 0, 0, -1, 0, 128, 0) 
		TNT1 A 0 A_FireCustomMissile("JetpackExploder", 0, 0, 0, 4)
		SABS A 1 offset(-8,36)
		SABS A 1 offset(-12,40)
		SABS A 1 offset(-16,44) A_SpawnItemEx("SmokeLarge", -32, 10, 8, 0, 0, 0, 0, 128, 0) 
		SABS A 0 A_TakeInventory("CyborgFuel", 8)
		SABS A 0 A_SpawnItemEx("Firey", -32, 0, 28, 0, 0, -1, 0, 128, 0) 
		TNT1 A 0 A_FireCustomMissile("JetpackExploder", 0, 0, 0, 4)
		SABS A 1 offset(-20,48)
		SABS A 1 offset(-24,52)
		SABS A 1 offset(-28,56) A_SpawnItemEx("SmokeLarge", -32, 10, 8, 0, 0, 0, 0, 128, 0) 
		SABS A 0 A_SpawnItemEx("Firey", -32, 0, 28, 0, 0, -1, 0, 128, 0) 
		TNT1 A 0 A_FireCustomMissile("JetpackExploder", 0, 0, 0, 4)
		SABS A 1 offset(-32,60)
		SABS A 1 offset(-36,64)
		SABS A 1 offset(-40,68) A_SpawnItemEx("SmokeLarge", -32, 10, 8, 0, 0, 0, 0, 128, 0) 
		SABS A 0 A_SpawnItemEx("Firey", -32, 0, 28, 0, 0, -1, 0, 128, 0) 
		TNT1 A 0 A_FireCustomMissile("JetpackExploder", 0, 0, 0, 4)
		SABS A 1 offset(-44,72)
		SABS A 1 offset(-48,76)
		SABS A 1 offset(-52,80) A_SpawnItemEx("SmokeLarge", -32, 10, 8, 0, 0, 0, 0, 128, 0) 
		SABS A 0 A_SpawnItemEx("Firey", -32, 0, 28, 0, 0, -1, 0, 128, 0) 
		TNT1 A 0 A_FireCustomMissile("JetpackExploder", 0, 0, 0, 4)
		SABS A 0 SetPlayerProperty(0, 0, 0)
		SABS A 6 offset(-52,80) A_SpawnItemEx("SmokeLarge", -32, 10, 8, 0, 0, 0, 0, 128, 0) 
		SABS A 1 offset(-48,76)
		SABS A 1 offset(-44,72)
		SABS A 1 offset(-40,68) 
		SABS A 1 offset(-36,64)
		SABS A 1 offset(-32,60)
		SABS A 1 offset(-28,56) 
		SABS A 1 offset(-24,52)
		SABS A 1 offset(-20,48)
		SABS A 1 offset(-16,44) 
		SABS A 1 offset(-12,40)
		SABS A 1 offset(-8,36)
		SABS A 1 offset(-4,32)
		SABS A 1 offset(0,32)
		TNT1 A 0 A_GiveInventory("CyborgDashCooldown", 1)
		SABS A 0 A_TakeInventory("CyborgDashcheck",1)
		Goto Ready
	}
}

actor CyborgPlasma-Pulse : Weapon
{
	Weapon.SelectionOrder 100
	Weapon.AmmoUse 1
	Weapon.SlotNumber 1
	Weapon.AmmoUse2 2
	Weapon.AmmoGive 50
	Weapon.AmmoGive2 150
	Weapon.AmmoType "CyborgCharge"
	Weapon.AmmoType2 "CyborgFuel"
	inventory.icon "CYBWEP2"
	Inventory.PickupMessage "You got the cyborg's arm!.. somehow?"
	Obituary "%o was devastated by %k's plasma." 
	+INVENTORY.UNDROPPABLE
	+AMMO_OPTIONAL
	+WEAPON.NOAUTOAIM
	+WEAPON.ALT_AMMO_OPTIONAL
	+DONTBLAST
	scale 0.6
	States
	{
	Spawn:
		BPAK A 400
		stop
	Ready:
		SABS A 0 SetPlayerProperty(0, 0, 3) // To fix flying bug
		SABS A 0 ACS_ExecuteAlways(999,0)
		SABS A 1 A_WeaponReady
		Goto Ready+2
	Select:
		TNT1 AAAAAAAAAAAAAAAAAAAA 0 A_Raise
		SABS A 1 A_Raise
		Loop
	Deselect:
		TNT1 AAAAAAAAAAAAAAAAAAAA 0 A_Lower
		SABS A 1 A_Lower
		Loop
	Fire:
		SABS A 1 A_JumpIfInventory("CyborgNoFire", 1, "Ready")
		SABS A 1 A_JumpIfInventory("CyborgCharge", 1, "Normalshot")
		Goto Weakshot
	Weakshot:
		SABA A 1 SetPlayerProperty(0, 0, 3)
		TNT1 A 0 A_GiveInventory("CyborgShieldCharge", 1)
		SABA B 1 A_FireCustomMissile("CyborgPlasmaBallWeak", 0, 0, 11, 3)
		SABA BBCCDDDD 1
		TNT1 A 0 Bright A_SpawnItemEx ("cyplassmoke",cos(-pitch)*24,6,38+(sin(-pitch)*24),cos(-pitch)*0,0,2,0,0,0)
		SABS A 3 A_Refire
		Goto Ready
	Normalshot:
		SABA A 1 SetPlayerProperty(0, 0, 3)
		TNT1 A 0 A_GiveInventory("CyborgShieldCharge", 1)
		TNT1 A 0 A_JumpIfInventory("CyborgShieldCharge", 100, "FireTrailer")
		SABA B 1 A_FireCustomMissile("CyborgPlasmaBall", 0, 1, 11, 3)
	Continue:
		SABA BCD 1
		TNT1 A 0 Bright A_SpawnItemEx ("cyplassmoke",cos(-pitch)*24,6,38+(sin(-pitch)*24),cos(-pitch)*0,0,2,0,0,0)
		SABS A 1 A_Refire
		Goto Ready
	FireTrailer:
		SABA B 1 A_FireCustomMissile("BigCyborgPlasmaBall", 0, 1, 11, 3)
		Goto Continue
	Altfire:
		SABS A 1
		TNT1 A 0 A_JumpIfInventory("CyborgShieldCharge", 100, "DoPulse")
	NotEnough:
		SABS A 5 ACS_ExecuteAlways(721, 0)
		Goto Ready
	DoPulse:
		SABS A 1
		TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(699, 0) == 1, "NotEnough")
		SABS A 4 ACS_ExecuteAlways(774, 0, FAS_CyborgPulse)
		Goto Ready
	}
}

Actor CyborgJetpackItem : CustomInventory
{
	Inventory.Amount 1
	Inventory.MaxAmount 1
	Inventory.Icon "CFULA0"
	+INVBAR
	+INVENTORY.UNDROPPABLE
	States
	{
	Spawn:
		TNT1 A 0
		stop
	Use:
		ROB1 D 0 A_JumpIf (z-floorz>0, "Nodash") //TNT1 A 0 A_JumpIf (momz!=0, "Nodash")
		TNT1 A 0 A_JumpIf (ACS_ExecuteWithResult(909, 0) == 1, "NoDash")
		TNT1 A 0 A_GiveInventory("CyborgDashcheck",1)
		fail
	Nodash:
		TNT1 A 0
		fail
	}
}

ACTOR CyborgCharge : Ammo
{
  +INVENTORY.IGNORESKILL
  Inventory.PickupMessage "Cell charge!"
  Inventory.Amount 75
  Inventory.MaxAmount 75
  Ammo.BackpackAmount 75
  Ammo.BackpackMaxAmount 75
  Inventory.Icon "CELLA0"
  States
  {
  Spawn:
    CELL A -1
    Stop
  }
}

ACTOR CyborgFuel : Ammo
{
  +INVENTORY.IGNORESKILL
  Inventory.PickupMessage "Fuel charge!"
  Inventory.Amount 1
  Inventory.MaxAmount 32
  Ammo.BackpackAmount 1
  Ammo.BackpackMaxAmount 32
  Inventory.Icon "FUELA0"
  States
  {
  Spawn:
    CELL A -1
    Stop
  }
}


actor CyborgDashcheck : Inventory
{
  Inventory.Amount 1
  Inventory.MaxAmount 1
  States
  {
  Spawn:
    CELL A -1
    Stop
  }
}

actor CyborgNoFire : PowerDamage
{
	damagefactor "nothing", 1.0
	powerup.duration 35//85
}

actor CyborgPlasmaBall
{
	scale 0.8
	renderstyle add
	alpha 0.95
	PROJECTILE
	decal "plasmadecal"
	damagetype "CyborgPlasma"
	speed 35
	radius 12
	height 6
	Damage (30)
	seesound "weapons/cyborgplasmafire"
	deathsound "weapons/cyborgplasmahit"
	States
	{
	Spawn:
		SBLL ABCDEFGHIJ 1 bright
		Loop
	Death:
		SBLL KLMNOPQRSTU 1 bright A_FadeOut(0.04)
		Stop
	}
}

actor BigCyborgPlasmaBall : CyborgPlasmaBall
{
	States
	{
	Spawn:
		SBLL A 1 bright
		SBLL A 0 A_SpawnItem("PlasmaImage")
		SBLL B 1 bright
		SBLL A 0 A_SpawnItem("PlasmaImage")
		SBLL C 1 bright
		SBLL A 0 A_SpawnItem("PlasmaImage")
		SBLL D 1 bright
		SBLL A 0 A_SpawnItem("PlasmaImage")
		SBLL E 1 bright
		SBLL A 0 A_SpawnItem("PlasmaImage")
		SBLL F 1 bright
		SBLL A 0 A_SpawnItem("PlasmaImage")
		SBLL G 1 bright
		SBLL A 0 A_SpawnItem("PlasmaImage")
		SBLL H 1 bright
		SBLL A 0 A_SpawnItem("PlasmaImage")
		SBLL I 1 bright
		SBLL A 0 A_SpawnItem("PlasmaImage")
		SBLL J 1 bright
		SBLL A 0 A_SpawnItem("PlasmaImage")
		Loop
		Death:
		SBLL KLMNOPQRSTU 1 bright A_FadeOut(0.04)
		Stop
	}
}

actor PlasmaImage
{
	scale 1.0
	renderstyle add
	alpha 1.0
	decal "plasmadecal"
	radius 1//12
	height 1//6
	+NOGRAVITY
	+CLIENTSIDEONLY
	States
	{
	Spawn:
		SBLL ABCDEFGHIJ 1 A_FadeOut(0.1)
		Loop
		Death:
		TNT1 A 1
		Stop
	}
}


Actor CyborgPlasmaBallWeak
{
	scale 0.25
	renderstyle add
	alpha 0.95
	PROJECTILE
	decal "plasmadecal3"
	DamageType "CyborgCrapPlasma"
	speed 35
	radius 5
	height 3
	Damage (10)
	seesound "weapons/cyborgplasmafire"
	deathsound "weapons/cyborgplasmahit"
	States
	{
	Spawn:
		SBLL ABCDEFGHIJ 1 bright
		Loop
	Death:
		SBLL KLMNOPQRSTU 1 bright A_FadeOut(0.04)
		Stop
	}
}

Actor JetpackExploder
{
	Speed 0
	Height 1
	Radius 1
	Damage (0)
	PROJECTILE
	+RIPPER
	+BLOODLESSIMPACT
	Obituary "%o was burned to death by %k's jetpack."
	DamageType "CyborgJetpackFire"
	States
	{
		Spawn:
			TNT1 AAA 1 ThrustThingZ(0, 8, 1, 0)
			TNT1 AAAA 4 A_Explode(random(2,4), 40, 0)	
		Stop
	}
}

ACTOR SmokeLarge : BulletPuff
{
   +CLIENTSIDEONLY 
	Health 1
	RenderStyle Translucent
	Alpha 0
	Scale 0.3
	States
	{
	Spawn:
		NULL A 0
		NULL A 0 ThrustThingZ(0,1,1,0)
		Goto See
	See:
		NULL A 0 A_Jump(192,1)
		Goto See+7
		NULL A 0
		NULL A 0 A_Jump(128,1)
		Goto See+11
		NULL A 0
		NULL A 0 A_Jump(64,1)
		Goto See+15
		NULL A 0
		NULL A 0
		Goto See+19
		SMOK A 12 A_SetTranslucent(.15,0)
		SMOK A 12 A_SetTranslucent(.35,0)
		SMOK A 12 A_SetTranslucent(.5,0)
		SMOK A 1 A_Fadeout(.02)
		Wait
		SMOK B 12 A_SetTranslucent(.15,0)
		SMOK B 12 A_SetTranslucent(.35,0)
		SMOK B 12 A_SetTranslucent(.5,0)
		SMOK B 1 A_Fadeout(.025)
		Wait
		SMOK C 12 A_SetTranslucent(.15,0)
		SMOK C 12 A_SetTranslucent(.35,0)
		SMOK C 12 A_SetTranslucent(.5,0)
		SMOK C 1 A_Fadeout(.03)
		Wait
		SMOK D 12 A_SetTranslucent(.15,0)
		SMOK D 12 A_SetTranslucent(.35,0)
		SMOK D 12 A_SetTranslucent(.5,0)
		SMOK D 1 A_Fadeout(.035)
		Wait
	}
}

ACTOR Firey : BulletPuff
{
	+CLIENTSIDEONLY
	Health 1
	RenderStyle Add
	Alpha 0
	Scale 0.17
	States
	{
	Spawn:
		TNT1 A 0
		TNT1 A 0 A_PlaySound("weapons/cyborgjetpack")
		Goto See
	See:
		NULL A 0 A_Jump(170,1)
		Goto See+7
		NULL A 0
		NULL A 0 A_Jump(85,1)
		Goto See+11
		NULL A 0
		NULL A 0
		Goto See+15
		BFIR B 5 Bright
		BFIR A 5 Bright A_SetTranslucent(.4,1)
		BFIR A 5 Bright A_SetTranslucent(.8,1)
		BFIR A 1 Bright A_Fadeout(.06)
		Wait
		BFIR B 5 Bright
		BFIR B 5 Bright A_SetTranslucent(.4,1)
		BFIR B 5 Bright A_SetTranslucent(.8,1)
		BFIR B 1 Bright A_Fadeout(.08)
		Wait
		BFIR B 5 Bright
		BFIR C 5 Bright A_SetTranslucent(.4,1)
		BFIR C 5 Bright A_SetTranslucent(.8,1)
		BFIR C 1 Bright A_Fadeout(.10)
		Wait
	}
}

Actor CyborgVisor : PowerupGiver
{
	Powerup.Duration 0x7FFFFFFF
	Powerup.Color 130, 190, 210, 0.35
	Powerup.Type "LightAmp"
	+INVENTORY.AUTOACTIVATE
	+INVENTORY.ALWAYSPICKUP
	States
	{
	Spawn:
		PVIS AB 2
		Stop
	}
}

Actor CyborgShieldCharge : Ammo
{
	Inventory.Amount 1
	Inventory.MaxAmount 100
	+INVENTORY.IGNORESKILL
}

Actor CyborgDoPulse : Inventory
{
	Inventory.Amount 1
	Inventory.MaxAmount 1
}

Actor CyborgPulseFailCooldown : Inventory
{
	Inventory.Amount 1
	Inventory.MaxAmount 1
}

Actor CyborgVisorOn : Inventory
{
	Inventory.Amount 1
	Inventory.MaxAmount 1
}

Actor CyborgVisorCell : Ammo
{
	inventory.amount 1
	inventory.maxamount 100
	+IGNORESKILL
}

Actor PulseSpamCounter : Inventory
{
	Inventory.Amount 1
	Inventory.MaxAmount 15
}

Actor CyborgPulseExplosion
{
	Radius 1
	Height 1
	Speed 1
	DamageType "CyborgPulse"
	Obituary "%o stood in the blast radius of %k's pulse."
	+NOCLIP
	States
	{
	Spawn:
		TNT1 A 0
		TNT1 AAAA 4 A_Explode(32, 144, 0)
		Stop
	}
}

Actor PulseSparkle
{
	+Missile
	+NoGravity
	+NoBlockmap
	+NoInteraction
	-Solid
	Radius 0
	Height 0
	RenderStyle Add
	Alpha 1.0
	Scale 0.5
	States
	{
	Spawn:
		TEFX ABCDE 2 Bright  
		TEFX FGHIJKLMNOPQRST 1 Bright A_FadeOut(0.06)
		Stop
	}
}

Actor PulseLighter
{
	+NOGRAVITY
	+NOINTERACTION
	-SOLID
	+NOBLOCKMAP
	Radius 0
	Height 0
	states
	{
		Spawn:
			TNT1 A 10
		Stop
	}
}

Actor Custom_CyborgBloodySkull : Custom_BloodySkull
{
	States
	{
    Spawn:
        ROBH A 0 ThrustThingZ (0, 45, 0, 1)
        Goto See 
    See:
	    ROBH A 0 A_GiveInventory("RocketAmmo", 1)
        ROBH A 5 A_Custommissile("Blood", -5, 0, 0)
        ROBH AAAAA 5 
        Loop
    Death:
		ROBH A 0 A_Jump (16,4)
        ROBH A 0 A_Jump (32,4)
        ROBH A 0 A_Jump (64,4)
        ROBH A 0 A_Jump (128,4)
        ROBH A -1 A_CheckPlayerDone
        Wait
        ROBH A -1 A_CheckPlayerDone
        Wait
        ROBH A -1 A_CheckPlayerDone
        Wait
        ROBH A -1 A_CheckPlayerDone
		Wait
	}
}

Actor CyborgPulseMale : CyborgPulseExplosion
{
	DamageType "CyborgPulseMale"
}

Actor CyborgPulseFemale : CyborgPulseExplosion
{
	DamageType "CyborgPulseFemale"
}

Actor CyborgPulseOther : CyborgPulseExplosion
{
	DamageType "CyborgPulseOther"
}

Actor IAMCYBORG : Inventory
{
	inventory.maxamount 1
}

Actor CyborgDashCooldown : PowerDamage
{
	powerup.duration 10
	damagefactor "normal", 1.0
}

Actor PulseExplosionFX
{
	Scale 0.6
	Alpha 0.85
	Renderstyle Add
	+NOINTERACTION
	+CLIENTSIDEONLY
	
	States
	{
		Spawn:
			DPLX D 6 Bright
			DPLX E 2 Bright
			DPLX EFF 3 Bright A_Fadeout(0.1)
			DPLX GGGG 2 Bright A_Fadeout(0.1)
		Stop
	}
}

Actor CyborgTaunter : CustomInventory
{
	inventory.maxamount 1
	+ALWAYSPICKUP
	+AUTOACTIVATE
	
	States
	{
		Use:
		Pickup:
		TNT1 A 0 A_Jump(128, "NoSound")
		TNT1 A 0 A_JumpIf( 1 == ACS_ExecuteWithResult(780), "Female")
		TNT1 A 0 A_JumpIf( 2 == ACS_ExecuteWithResult(780), "Other")		
		TNT1 A 0 A_Jump(192, "MT2")
		TNT1 AAA 0 A_PlaySoundEx("MaleCyborgPulseKill1", 5)
		Stop
		MT2:
		TNT1 A 0 A_Jump(192, "MT3")
		TNT1 AAA 0 A_PlaySoundEx("MaleCyborgPulseKill2", 5)
		Stop
		MT3:
		TNT1 A 0 A_Jump(192, "MT4")
		TNT1 AAA 0 A_PlaySoundEx("MaleCyborgPulseKill3", 5)
		Stop
		MT4:
		TNT1 AAA 0 A_PlaySoundEx("MaleCyborgPulseKill4", 5)		
		Stop
		Female:
		TNT1 A 0 A_PlaySoundEx("fcybtaunt", 5)
		Stop
	    Other:
		TNT1 A 0 A_PlaySoundEx("cyblolcopy", 5)
		Stop
		NoSound:
		TNT1 A 0
		Stop
	}
}

actor cyplassmoke
{
	vspeed 3
	renderstyle translucent
	scale 0.1
	alpha 0.3
	+clientsideonly
	+NOGRAVITY
	States
	{
		spawn:
		death:
		ISMK ABCDEFGHIJKLNOPQ 1
		stop
	}
}

ACTOR SmokeLarge69 : bulletpuff
{
	renderstyle translucent
	scale 0.4
	alpha 0.7
	+clientsideonly
	+NOGRAVITY
	States
	{
		spawn:
		SMOK ABCD 2 A_FADEOUT(0.05)
		loop
	}
}

Actor CYBORGULTEFFECT : CustomInventory
{
	inventory.maxamount 512
    inventory.amount 1
	  States
	  {
	  pickup:
	  use:
	  TNT1 A 0 A_SpawnItemEx("SmokeLarge69", random(-20,-4), random(-16,16), random(8,54), 0, 0, random(1, 3), 0)
	  stop
	  }
}