actor WidowmakerWep_NormalBar : NormalBar{args 144,9}
actor WidowmakerWep : BaseMM8BDMWep
{
Weapon.AmmoUse 30
Weapon.AmmoGive 200
Weapon.SlotNumber 5
Inventory.Pickupmessage "$PU_WIDOWMAKER"
Obituary "$OB_WIDOWMAKER"
Tag "$TAG_WIDOWMAKER"
weapon.ammotype "WidowmakerAmmo"
inventory.icon "WDWMICON"
States
{
SpawnLoop:
WDWM Z -1
loop
Ready:
WDWM A 0 ACS_NamedExecuteWithResult("core_weaponcolor",COLOR_WIDOWMAKER)
WDWM A 1 A_WeaponReady
Goto Ready+1
ReadyC: Goto Ready+1
Deselect:
WDWM A 0 
goto DeselectSwap
Select:
WDWM A 0 
goto SelectSwap
Fire:
WDWM A 0 A_JumpIfNoAmmo("NoAmmo")
WDWM A 2 
WDWM A 0 A_PlaySoundEx("weapon/hypertorrent","Weapon")
WDWM A 0 A_PlaySoundEx("weapon/JusticeMeteor","Body")
WDWM G 0 A_TakeInventory("WidowmakerAmmo",30,TIF_NOTAKEINFINITE)
WDWM G 0 A_FireCustomMissile("WidowmakerBullet",0,0,8,0)
WDWM GGGGGGGGG 0 A_FireCustomMissile("WidowmakerBullet",frandom(-7,7),0,8,0,0,frandom(-7,7))
WDW0 ABCDEF 2
WDWM A 6
WDWM B 0 A_Refire
Goto Ready+1
NoAmmo:
WDWM A 1 ACS_NamedExecuteAlways("core_noammo",0)
Goto Ready+1
}
}

actor WidowmakerAmmo : Ammo
{
inventory.amount 1
inventory.maxamount 200
+INVENTORY.IGNORESKILL
}

actor WidowmakerBullet : BasicFastProjectile
{
Obituary "$OB_WIDOWMAKER"
PROJECTILE
+HITTRACER
+LOOKALLAROUND
+SKYEXPLODE
+DONTBLAST
damagetype "TheWidowmaker"
Speed 35
Damage (CallACS("vile_cbm_damage",6))
radius 8
height 8
scale 2.0
States
{
Spawn:
WDWM D 1
loop
Death:
TNT1 A 0 A_SpawnItem("BlamFX")
stop
XDeath:
WDWM D 0 A_JumpIfInventory("CanBeGrabBustered", 1, "TeamCheck", AAPTR_TRACER)
stop
TeamCheck:
WDWM D 0 A_GiveInventory("TracerAndTargetTeamsMatchCheck",1)
WDWM D 0 A_JumpIfInventory("TracerAndTargetTeamsMatchFlag", 1, "Death")
goto HealReturn
Failed:
TNT1 A 0
stop
HealReturn:
WDWM D 0 A_GiveToTarget("WidowmakerAmmo",6)
stop
}
}