actor PlaguePurgeWep_NormalBar : NormalBar{args 104,229}
actor PlaguePurgeWep : BaseMM8BDMWep 
{
Weapon.AmmoUse 1
Weapon.AmmoGive 48
Weapon.SlotNumber 3
Inventory.Pickupmessage "$PU_PLAGUEPURGE"
Obituary "$OB_PLAGUEPURGE"
Tag "$TAG_PLAGUEPURGE"
weapon.ammotype "PlaguePurgeAmmo"
inventory.icon "PLGPICON"
States
{
SpawnLoop:
PLGP Z -1
loop
Ready:
PLGP A 0 ACS_NamedExecuteWithResult("core_weaponcolor",COLOR_PLAGUEPURGE)
PLGP A 1 A_WeaponReady
Goto Ready+1
ReadyC: Goto Ready+1
Deselect:
PLGP A 0 
goto DeselectSwap
Select:
PLGP A 0 
goto SelectSwap
Fire:
PLGP A 0 A_JumpIfNoAmmo("NoAmmo")
PLGP A 0 A_PlaySoundEx("weapon/oilshot","Weapon")
PLGP A 0 A_FireCustomMissile("PlagueShot",random(-2,2),1,8,0,0,random(-2,2))
PLGP A 0 A_FireCustomMissile("PlagueShot",random(-4,4),0,8,0,0,random(-4,4))
PLGP BC 2
PLGP A 1
PLGP A 0 A_Refire
Goto Ready+1
NoAmmo:
PLGP A 1 ACS_NamedExecuteAlways("core_noammo",0)
Goto Ready+1
}
}

actor PlaguePurgeAmmo : Ammo
{
inventory.amount 1
inventory.maxamount 48
+INVENTORY.IGNORESKILL
}

actor PlagueShot : BasicProjectile
{
translation "198:198=229:229", "192:192=104:104"
PROJECTILE
-NOGRAVITY
+SOLID
Obituary "$OB_PLAGUEPURGE"
speed 45
Radius 8
Height 8
damagetype "PlaguePurge"
scale 2.85
gravity 2.0
damage (CallACS("vile_cbm_damage",7))
States
{
Spawn:
TNT1 A 0
TNT1 A 1 ThrustThingZ(0, 20, 0, 1)
PLGP D 1
wait
Death:
TNT1 A 0 A_Explode(CallACS("vile_cbm_damage",2),50,0,0,50)
TNT1 A 0 A_SpawnItemEx("PlagueSplash")
Stop
XDeath:
TNT1 A 0 A_Explode(CallACS("vile_cbm_damage",2),50,0,0,50)
TNT1 A 0 A_SpawnItemEx("PlagueSplash")
Stop
}
}


actor PlagueSplash : BasicGraphicEffect
{
translation "198:198=229:229", "192:192=104:104"
scale 4
+MISSILE
+NOINTERACTION
Damage (0)
height 0
radius 0
States
{
SpawnFrame:
PLGP EFG 2
stop
}
}
