ACTOR BazookaPsychoManiac : PGNZombie //Introducing the fucking "Camper".
{
//Creator: Titanium
//Origin: Nexus Infinity
//Sprite: BPYC
//Title: "Bazooka PsychoManiac"
Speed 5
Mass 700
Health 790
Painchance 80
DropItem "PortableMedCell", 150, 1
DropItem "StimKit", 180, 2
DropItem "RocketAmmo", 180
DropItem "HealthFlask", 200, 6
DropItem "ArmorPlate", 160
Dropitem "MarineSquadBeacon", 60, 1
DropItem "HandGrenadeAmmo", 120, 1
DropItem "MineAmmo", 90, 1
DropItem "AmmoPack", 160, 1
DropItem "ShieldSphere", 64, 1
DropItem "Bazooka", 80, 1
Damagefactor "Explosion", 0.1
SeeSound "efglunatic/sight"
ActiveSound "efglunatic/active"
PainSound "efglunatic/pain"
DeathSound "efglunatic/death"
Obituary "%o was directly hit from a distance by a Bazooka PsychoManiac."
Tag "\c[j9]Bazooka \c[w3]PsychoManiac\c-"
var int user_rage;
//var int user_cooldown;
var int user_missile;
var int user_reload;
//var int user_nuke;
//var int user_fusion;
//var int user_startspeed;
//var int user_speedometer;
States
{
  Spawn:
	BPYC A 10 A_Look
	Loop
  Idle:
	BPYC AAAA 1 A_Wander
	TNT1 A 0 A_Look
	BPYC BBBB 1 A_Wander
	TNT1 A 0 A_SpawnItemEx("FootStep2",0,0,5,0,0,-20)
	BPYC CCCC 1 A_Wander
	TNT1 A 0 A_Look
	BPYC DDDD 1 A_Wander
	TNT1 A 0 HealThing(random(2,3))
	TNT1 A 0 A_SpawnItemEx("FootStep2",0,0,5,0,0,-20)
	BPYC AAAA 1 A_Wander
	TNT1 A 0 A_Look
	BPYC BBBB 1 A_Wander
	TNT1 A 0 A_SpawnItemEx("FootStep2",0,0,5,0,0,-20)
	BPYC CCCC 1 A_Wander
	TNT1 A 0 A_Look
	BPYC DDDD 1 A_Wander
	TNT1 A 0 HealThing(random(2,3))
	TNT1 A 0 A_SpawnItemEx("FootStep2",0,0,5,0,0,-20)
	Loop
  See:
	TNT1 A 0 A_JumpIf(user_rage == 1,"SeeRage")
	BPYC AAAABBBB 1 A_Chase
	TNT1 A 0 A_SpawnItemEx("FootStep2",0,0,5,0,0,-20)
	BPYC CCCCDDDD 1 A_Chase
	TNT1 A 0 A_Jump(10,"Heal")
	TNT1 A 0 A_SpawnItemEx("FootStep2",0,0,5,0,0,-20)
	Loop
  SeeRage:
	BPYC AAAABBBB 1 A_Chase
	TNT1 A 0 A_SpawnItemEx("FootStep2",0,0,5,0,0,-20)
	BPYC CCCCDDDD 1 A_Chase
	TNT1 A 0 A_Jump(30,"Teleport")
	TNT1 A 0 A_Jump(40,"Heal")
	TNT1 A 0 A_SpawnItemEx("FootStep2",0,0,5,0,0,-20)
	TNT1 A 0 A_JumpIf(user_rage == 0, "See")
	Loop
  RageMissile:
	BPYC E 1 A_FaceTarget(45)
	TNT1 A 0 A_Jump(120,"TeleportAttack","TankCannon")
	Goto Normal
  Missile:
	TNT1 A 0
	TNT1 A 0 A_JumpIf(user_rage == 1,"RageMissile")
	TNT1 A 0 A_Jump(50,"TankCannon")
  Normal:
	BPYC A 0 A_PlaySound("efglunatic/sight",CHAN_VOICE,1,0,0.5)
	BPYC E 1 A_FaceTarget(45)
	TNT1 A 0 A_Changeflag(NOPAIN,1)
	BPYC EEEEEEEEEEEE 2 A_GiveInventory("SpecOpsStrafing",1)
	TNT1 A 0 A_CheckSight("See")
	TNT1 A 0 A_PlaySound("RPG/Fire",CHAN_WEAPON,1,0,0.5)
	BPYC F 6 Bright A_CustomMissile("PychoManiacRPGRocket",40,10,frandom(-1.0,1.0))
	BPYC EEEEEE 2 A_GiveInventory("SpecOpsStrafing",1)
  Reload:
	TNT1 A 0 A_PlaySound("Bazooka/Load",6,1,0,ATTN_NONE)
	BPYC E 1 A_GiveInventory("SpecOpsStrafing",1)
	BPYC E 1 A_FaceTarget(45)
	BPYC E 1 A_GiveInventory("SpecOpsStrafing",1)
	BPYC E 1 A_FaceTarget(45)
	BPYC E 1 A_GiveInventory("SpecOpsStrafing",1)
	BPYC E 1 A_FaceTarget(45)
	BPYC E 1 A_GiveInventory("SpecOpsStrafing",1)
	BPYC E 1 A_FaceTarget(45)
	BPYC E 1 A_GiveInventory("SpecOpsStrafing",1)
	BPYC E 1 A_FaceTarget(45)
	BPYC E 1 A_GiveInventory("SpecOpsStrafing",1)
	BPYC E 1 A_FaceTarget(45)
	BPYC E 1 A_GiveInventory("SpecOpsStrafing",1)
	BPYC E 1 A_FaceTarget(45)
	BPYC E 1 A_GiveInventory("SpecOpsStrafing",1)
	BPYC E 1 A_FaceTarget(45)
	BPYC E 1 A_GiveInventory("SpecOpsStrafing",1)
	BPYC E 1 A_FaceTarget(45)
	BPYC E 1 A_GiveInventory("SpecOpsStrafing",1)
	BPYC E 1 A_FaceTarget(45)
	BPYC E 1 A_GiveInventory("SpecOpsStrafing",1)
	BPYC E 1 A_FaceTarget(45)
	BPYC E 1 A_GiveInventory("SpecOpsStrafing",1)
	BPYC E 1 A_FaceTarget(45)
	BPYC E 1 A_GiveInventory("SpecOpsStrafing",1)
	BPYC E 1 A_FaceTarget(45)
	BPYC E 1 A_GiveInventory("SpecOpsStrafing",1)
	BPYC E 1 A_FaceTarget(45)
	BPYC E 1 A_GiveInventory("SpecOpsStrafing",1)
	BPYC E 1 A_FaceTarget(45)
	BPYC E 1 A_GiveInventory("SpecOpsStrafing",1)
	BPYC E 1 A_FaceTarget(45)
	BPYC E 1 A_GiveInventory("SpecOpsStrafing",1)
	BPYC E 1 A_FaceTarget(45)
	BPYC E 1 A_GiveInventory("SpecOpsStrafing",1)
	BPYC E 1 A_FaceTarget(45)
	BPYC E 1 A_GiveInventory("SpecOpsStrafing",1)
	BPYC E 1 A_FaceTarget(45)
	BPYC E 1 A_GiveInventory("SpecOpsStrafing",1)
	BPYC E 1 A_FaceTarget(45)
	BPYC E 1 A_GiveInventory("SpecOpsStrafing",1)
	BPYC E 1 A_FaceTarget(45)
	BPYC E 1 A_GiveInventory("SpecOpsStrafing",1)
	BPYC E 1 A_FaceTarget(45)
	TNT1 A 0 A_Changeflag(NOPAIN,0)
	Goto See
  TankCannon:
	BPYC A 0 A_PlaySound("efglunatic/sight",CHAN_VOICE,1,0,0.5)
	BPYC E 1 A_FaceTarget(45)
	TNT1 A 0 A_Changeflag(NOPAIN,1)
	BPYC E 1 A_PlaySound("TankCannon/load",CHAN_WEAPON,1,0,0.5)
	BPYC EEEEEEEEEEEEEEE 2 A_GiveInventory("SpecOpsStrafing",1)
	TNT1 A 0 A_CheckSight("See")
	TNT1 A 0 A_PlaySound("tank/fire",7,1,0,ATTN_NONE)
	BPYC F 6 Bright A_CustomMissile("PychoManiacTankShot",40,10,frandom(-1.0,1.0))
	BPYC EEEEEE 3 A_GiveInventory("SpecOpsStrafing",1)
	Goto Reload
  Teleport:
	TNT1 A 0 A_Jump(128,"TeleportAlt")
	TNT1 A 0 A_FaceTarget
	BPYC A 1 Bright A_UnSetShootable
	BPYC A 0 A_PlayWeaponSound("boss/teleport")
	TNT1 A 0 ThrustThing(angle*256/360+64, 20, 0, 0)
	BPYC AAAAAAAAAA 2 Bright A_FadeOut(0.1,0)
	TNT1 A 0 A_Stop
	BPYC A 2 Bright
	TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_Wander
	TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_Wander
	BPYC A 1 Bright A_PlayWeaponSound("boss/teleport")
	TNT1 A 0 A_FaceTarget
	TNT1 A 0 ThrustThing(angle*256/360+192, 20, 0, 0)
	BPYC AAAAAAAAAA 2 Bright A_FadeIn(0.1)
	BPYC A 1 Bright A_SetShootable
	Goto See
  TeleportAlt:
	TNT1 A 0 A_FaceTarget
	BPYC A 1 Bright A_UnSetShootable
	BPYC A 0 A_PlayWeaponSound("boss/teleport")
	TNT1 A 0 ThrustThing(angle*256/360+192, 20, 0, 0)
	BPYC AAAAAAAAAA 2 Bright A_FadeOut(0.1,0)
	TNT1 A 0 A_Stop
	BPYC A 2 Bright
	TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_Wander
	TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_Wander
	BPYC A 1 Bright A_PlayWeaponSound("boss/teleport")
	TNT1 A 0 A_FaceTarget
	TNT1 A 0 ThrustThing(angle*256/360+64, 20, 0, 0)
	BPYC AAAAAAAAAA 2 Bright A_FadeIn(0.1)
	BPYC A 1 Bright A_SetShootable
	Goto See
  TeleportAttack:
	TNT1 A 0 A_FaceTarget
	TNT1 A 0 A_Jump(128,"TeleportAttackAlt")
	BPYC E 1 Bright A_UnSetShootable
	TNT1 A 0 ThrustThing(angle*256/360+64, 20, 0, 0)
	BPYC EEEEEEEEEE 1 Bright A_FadeOut(0.1,0)
	TNT1 A 0 A_Stop
	BPYC A 2 Bright
	TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_Wander
	TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_Wander
	BPYC A 1 Bright A_PlayWeaponSound("boss/teleport")
	TNT1 A 0 A_FaceTarget
	TNT1 A 0 ThrustThing(angle*256/360+192, 20, 0, 0)
	BPYC EEEEEEEEEE 1 Bright A_FadeIn(0.1)
	BPYC E 1 Bright A_SetShootable
	Goto Normal
  TeleportAttackAlt:
	TNT1 A 0 A_FaceTarget
	BPYC E 1 Bright A_UnSetShootable
	TNT1 A 0 ThrustThing(angle*256/360+192, 20, 0, 0)
	BPYC EEEEEEEEEE 1 Bright A_FadeOut(0.1,0)
	TNT1 A 0 A_Stop
	BPYC A 2 Bright
	TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_Wander
	TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_Wander
	BPYC A 1 Bright A_PlayWeaponSound("boss/teleport")
	TNT1 A 0 A_FaceTarget
	TNT1 A 0 ThrustThing(angle*256/360+64, 20, 0, 0)
	BPYC EEEEEEEEEE 1 Bright A_FadeIn(0.1)
	BPYC E 1 Bright A_SetShootable
	Goto Normal
  Heal:
	BPYC A 5
	TNT1 A 0 A_Jump(40,"Heal2")
	TNT1 A 0 A_Jump(15,"Heal3")
	TNT1 A 0 A_Jump(5,"Heal4")
	TNT1 A 0 HealThing(10)
	TNT1 A 0 A_PlaySound("pickups/flask",0,1.0,0)
	Goto See
  Heal2:
	TNT1 A 0
	TNT1 A 0 HealThing(25)
	TNT1 A 0 A_PlaySound("pickups/pstimpack",0,1.0,0)
	Goto See
  Heal3:
	TNT1 A 0
	TNT1 A 0 HealThing(50)
	TNT1 A 0 A_PlaySound("MedCell/Use",0,1.0,0)
	Goto See
  Heal4:
	TNT1 A 0
	TNT1 A 0 HealThing(200)
	TNT1 A 0 A_PlaySound("MedCellPack/Use",0,1.0,0)
	Goto See
  Pain:
	TNT1 A 0
	TNT1 A 0 A_JumpIf(user_rage == 1,2)
	TNT1 A 0 A_Jump(50,"TriggerRage")
	TNT1 A 0 A_Jump(40,"PainMissile")
	BPYC G 3 A_Pain
	BPYC G 2
	TNT1 A 0 A_Jump(20,"Heal")
	Goto see
  PainMissile: 
	TNT1 A 0
	TNT1 A 0 A_Jump(30,"PainRage")
    BPYC G 3 Bright
	BPYC G 3 Bright A_Pain
    Goto Missile
  TriggerRage:
	TNT1 A 0 A_Changeflag(NOPAIN,1)
	BPYC G 1 A_Pain
	TNT1 A 0 A_PlaySound("efgzombie/protection",CHAN_BODY,1,0,0.5)
	BPYC G 6 ACS_NamedExecuteAlways("LunaticRage",0)
	TNT1 A 0 A_Changeflag(NOPAIN,0)
	Goto SeeRage
  PainRage: 
	TNT1 A 0
	TNT1 A 0 A_SetUserVar("user_missile",0)
	TNT1 A 0 A_Changeflag(NOPAIN,1)
    BPYC G 2 Bright
	BPYC G 1 Bright A_Pain
  RageAttack:
	TNT1 A 0 A_JumpIf(user_missile >= 3, "Reload")
	TNT1 A 0 A_SetUserVar("user_missile", user_missile+1)
	BPYC A 0 A_PlaySound("efglunatic/sight",CHAN_VOICE,1,0,0.5)
	BPYC E 1 A_FaceTarget(45)
	BPYC EEEEEEEEEEEE 2 A_GiveInventory("SpecOpsStrafing",1)
	TNT1 A 0 A_CheckSight("See")
	TNT1 A 0 A_PlaySound("RPG/Fire",CHAN_WEAPON,1,0,0.5)
	BPYC F 6 Bright A_CustomMissile("PychoManiacRPGRocket",40,10,frandom(-1.0,1.0))
	BPYC EEEE 2 A_GiveInventory("SpecOpsStrafing",1)
	TNT1 A 0 A_PlaySound("Bazooka/Load",6,1,0,ATTN_NONE)
	BPYC E 1 A_GiveInventory("SpecOpsStrafing",1)
	BPYC E 1 A_FaceTarget(45)
	BPYC E 1 A_GiveInventory("SpecOpsStrafing",1)
	BPYC E 1 A_FaceTarget(45)
	BPYC E 1 A_GiveInventory("SpecOpsStrafing",1)
	BPYC E 1 A_FaceTarget(45)
	BPYC E 1 A_GiveInventory("SpecOpsStrafing",1)
	BPYC E 1 A_FaceTarget(45)
	BPYC E 1 A_GiveInventory("SpecOpsStrafing",1)
	BPYC E 1 A_FaceTarget(45)
	BPYC E 1 A_GiveInventory("SpecOpsStrafing",1)
	BPYC E 1 A_FaceTarget(45)
	BPYC E 1 A_GiveInventory("SpecOpsStrafing",1)
	BPYC E 1 A_FaceTarget(45)
	BPYC E 1 A_GiveInventory("SpecOpsStrafing",1)
	BPYC E 1 A_FaceTarget(45)
	BPYC E 1 A_GiveInventory("SpecOpsStrafing",1)
	BPYC E 1 A_FaceTarget(45)
	BPYC E 1 A_GiveInventory("SpecOpsStrafing",1)
	BPYC E 1 A_FaceTarget(45)
	BPYC E 1 A_GiveInventory("SpecOpsStrafing",1)
	BPYC E 1 A_FaceTarget(45)
	BPYC E 1 A_GiveInventory("SpecOpsStrafing",1)
	BPYC E 1 A_FaceTarget(45)
	BPYC E 1 A_GiveInventory("SpecOpsStrafing",1)
	BPYC E 1 A_FaceTarget(45)
	BPYC E 1 A_GiveInventory("SpecOpsStrafing",1)
	BPYC E 1 A_FaceTarget(45)
	Loop
  Death:
	TNT1 A 0 A_StopSound(6)
	TNT1 A 0 A_StopSound(7)
	BPYC H 5
	BPYC I 5 A_Scream
	BPYC J 5 A_Fall
	TNT1 A 0 A_SpawnItemEx("Bazooka",0,0,8,random(0,8),random(0,8),2,random(0,360),0,201)
	BPYC KLM 5
	TNT1 A 0 A_SpawnItem("BodyCrash",0,0,0,0)
	BPYC N 63000 CanRaise
	Stop
  XDeath:
	TNT1 A 0 A_StopSound(6)
	TNT1 A 0 A_StopSound(7)
	TNT1 A 0 A_SpawnItemEx("GibbedGenerator",0,0,0,0,0,0,0,SXF_CLIENTSIDE,0)
	BPYC O 5 A_GiveInventory("XDeathCheck",1)
	BPYC P 5 A_XScream
	BPYC Q 5 A_Fall
	TNT1 A 0 A_SpawnItemEx("Bazooka",0,0,8,random(0,8),random(0,8),2,random(0,360),0,201)
	BPYC RSTUV 5
	BPYC W 63000 CanRaise
	Stop
  Raise:
	TNT1 A 0
	TNT1 A 0 A_SpawnItemEx("VileHealEffect",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION)
	TNT1 A 0 A_JumpIfInventory("XDeathCheck",1,"XRaise")
	BPYC MLKJIH 5
	Goto See
  XRaise:
	BPYC WUTSRQP 5
	BPYC O 5 A_TakeInventory("XDeathCheck",1)
	Goto See
	}
}

ACTOR RPGRocketCopy
{
Radius 11
Height 8
Projectile
Speed 72
Damage 50
+RANDOMIZE
+DEHEXPLOSION
+SKYEXPLODE
+MTHRUSPECIES
+FORCERADIUSDMG
SeeSound "rpg/fly"
DeathSound "thumper/explode"
DamageType "Player"
States
{
  Spawn:
    MIS2 A 0 A_CustomMissile("RocketSmoke",Random(4,6),Random(-2,2)) 
	MIS2 AAA 0 A_CustomMissile("NewRockeParticleTrail",Random(4,6),Random(-2,2)) 
    MIS2 A 0 A_BishopMissileWeave
    MIS2 A 1 Bright A_PlaySoundEx("rpg/fly","SoundSlot7",1)
    Loop
  Death:
    MIS2 A 0 A_StopSoundEx("SoundSlot7")
	TNT1 A 0 A_Explode(48,628,0)
	TNT1 A 0 A_Explode(128,400,0)
	TNT1 A 0 A_Explode(384,256,0)	
	TNT1 A 0 A_SpawnItemEx("RPGRocketKaBoom",0,0,0,0,0,0,0,128) 
	TNT1 AAAAAAAAAAAAA 0 A_CustomMissile("Explode",random(20,80),random(20,-20),random(0,360),2,random(0,360))
	TNT1 A 1 A_CustomMissile("RPGBigExplosion",0,0,random(80,100),2,random(80,100))
    MISL B 4 Bright
    MISL CD 4 Bright A_SetTranslucent(0.75,1)
    Stop
    }
}

ACTOR PychoManiacRPGRocket : RPGRocketCopy
{
-MTHRUSPECIES
+FOILINVUL
Damagetype "ZombieDev" 
Damage (random(10,40))
Obituary "%o was directly hit from a distance by a Bazooka PsychoManiac."
Species "EliteZombies"
}

Actor PychoManiacTankShot : PlayerTankShootCopy
{
  -MTHRUSPECIES
  +FOILINVUL
  Damagetype "ZombieDev" 
  Damage 165
  Obituary "%o was directly hit from a distance by a Bazooka PsychoManiac."
  Species "EliteZombies"
  States
  {
  Spawn:
    CSHO A 0 A_PlaySound ("artillery/fly",CHAN_BODY,1.0,1)
	CSHO AAAAA 1 Bright A_SpawnItemEx("SmokeFX4",0,0,0,0,0,1,0,128,0)
    Loop
  Death:
    TNT1 B 0 A_NoGravity
    TNT1 A 0 A_PlaySoundEx("blanksnd","Body",0)
	TNT1 A 0 A_Explode(128,628,0)
	TNT1 A 0 A_Explode(156,400,0)
	TNT1 A 0 A_Explode(455,256)
	TNT1 A 0 A_SpawnItemEx("TankShootKaBoom",0,0,0,0,0,0,0,128)
	TNT1 AAAAAAAAAAAAA 0 A_CustomMissile("RPGBigExplosion",random(20,80),random(20,-20),random(0,360),2,random(0,360))
	TNT1 A 0 A_SpawnItemEx("ShockWave",0,0,0,0,0,0,0,128)
    TNT1 AAAA 0 A_SpawnItemEx("Debris",0,0,0,Random(4,-4),Random(4,-4),Random(4,8),0,128)
	TNT1 A 1 A_CustomMissile("RPGBigExplosion",0,0,random(80,100),2,random(80,100))
    Stop
  }
}