actor BinarySplitterWep_NormalBar : NormalBar{args 204, 92}
actor BinarySplitterWep : BaseMM8BDMWep 
{
Weapon.AmmoUse 3
Weapon.AmmoGive 28
Weapon.SlotNumber 2
Inventory.Pickupmessage "$PU_BINARYSPLITTER"
Obituary "$OB_BINARYSPLITTER"
Tag "$TAG_BINARYSPLITTER"
weapon.ammotype "BinarySplitterAmmo"
inventory.icon "BNSPICON"
States
{
SpawnLoop:
BNSP Z 1
loop
Ready:
BNSP A 0 ACS_NamedExecuteWithResult("core_weaponcolor",COLOR_BINARYSPLITTER)
BNSP A 1 A_WeaponReady
Goto Ready+1
ReadyC: Goto Ready+1
Deselect:
BNSP A 0 
goto DeselectSwap
Select:
BNSP A 0 
goto SelectSwap
Fire:
BNSP A 0 A_JumpIfNoAmmo("NoAmmo")
BNSP BC 1
BNSP B 0 A_PlaySoundEx("misc/wilylightning","Weapon")
BNSP A 0 A_FireCustomMissile("BinarySplitter",0,1)
BNSP A 0 A_FireCustomMissile("BinarySplitter2",0,0)
BNSP DDC 4
BNSP BA 6
BNSP A 2 A_Refire
goto Ready+1

NoAmmo:
BNSP A 0 ACS_NamedExecuteAlways("core_noammo",0)
Goto Ready+1
}
}

actor BinarySplitterAmmo : Ammo
{
inventory.amount 1
inventory.maxamount 28
+INVENTORY.IGNORESKILL
}


actor BinarySplitter : BasicProjectile
{
+BRIGHT
translation "198:198=205:205"
PROJECTILE
damagetype "BinarySplitter"
Obituary "$OB_BINARYSPLITTER"
Accuracy 1
+Ripper
damage (CallACS("vile_cbm_damage",10))
Radius 16
Height 16
speed 40
scale 2.5
States
{
Spawn:
TNT1 A 0
TNT1 A 1
//BNSP KKLLMM 1 A_SpawnItemEx("BinarySplitterFX",0,0,0,0,0,0,0,1)
goto Spawn1
Spawn1:
BNSP K 0 A_SpawnItemEx("BinarySplitterFX",0,0,0,0,0,0,0,1)
BNSP K 1 A_Weave(5.0*Accuracy, 0.0, 4.5, 0.0)
BNSP K 0 A_SpawnItemEx("BinarySplitterFX",0,0,0,0,0,0,0,1)
BNSP K 1 A_Weave(5.0*Accuracy, 0.0, 4.5, 0.0)

BNSP L 0 A_SpawnItemEx("BinarySplitterFX",0,0,0,0,0,0,0,1)
BNSP L 1 A_Weave(5.0*Accuracy, 0.0, 4.5, 0.0)
BNSP L 0 A_SpawnItemEx("BinarySplitterFX",0,0,0,0,0,0,0,1)
BNSP L 1 A_Weave(5.0*Accuracy, 0.0, 4.5, 0.0)

BNSP M 0 A_SpawnItemEx("BinarySplitterFX",0,0,0,0,0,0,0,1)
BNSP M 1 A_Weave(5.0*Accuracy, 0.0, 4.5, 0.0)
BNSP M 0 A_SpawnItemEx("BinarySplitterFX",0,0,0,0,0,0,0,1)
BNSP M 1 A_Weave(5.0*Accuracy, 0.0, 4.5, 0.0)
loop
Death:
TNT1 A 1
stop
}
}

actor BinarySplitter2 : BinarySplitter
{
Accuracy -1
}

actor BinarySplitterFX : BasicGraphicEffect
{
+BRIGHT
translation "198:198=205:205"
scale 2.5
PROJECTILE
damagetype "BinarySplitter"
Obituary "$OB_BINARYSPLITTER"
+RIPPER
damage (CallACS("vile_cbm_damage",8))
Radius 16
Height 16
States
{
SpawnFrame:
TNT1 AA 1
BNSP HIJ 2
BNSP EFG 1
stop
}
}

actor BinarySplitterProtect : PowerProtection
{
Powerup.Duration 3
damagefactor "BinarySplitter", 0.55
}