actor ForceBeamWep_NormalBar : NormalBar{args 217, 222}
actor ForceBeamWep : BaseMM8BDMWep
{
Weapon.AmmoUse 1
Weapon.AmmoGive 180
Weapon.SlotNumber 3
Inventory.Pickupmessage "$PU_FORCEBEAM"
Obituary "$OB_FORCEBEAM"
Tag "$TAG_FORCEBEAM"
weapon.ammotype "ForceBeamAmmo"
inventory.icon "FBEMICON"
States
{
SpawnLoop:
FBEM Z 1
loop
Ready:
FBEM A 0 ACS_NamedExecuteWithResult("core_weaponcolor",COLOR_FORCEBEAM)
FBEM A 1 A_WeaponReady
Goto Ready+1
ReadyC: Goto Ready+1
Deselect:
FBEM A 0 
goto DeselectSwap
Select:
FBEM A 0 
goto SelectSwap
Fire:
FBEM A 0 A_JumpIfNoAmmo("NoAmmo")
FBEM A 0 A_PlaySoundEx("misc/quicktrap", "Weapon")
FBEM A 0 A_FireCustomMissile("ForceBeamCopywepVersion",0,1,8,0)
FBEM B 1 A_Refire("Fire2")
Fire2:
FBEM C 0 A_JumpIfNoAmmo("FireEnd")
FBEM C 1 A_FireCustomMissile("ForceBeamCopywepVersion",0,1,8,0)
FBEM C 0 A_TakeInventory("ForceBeamAmmo",1)
FBEM C 1 A_FireCustomMissile("ForceBeamCopywepVersion",0,1,8,0)
FBEM C 1 A_Refire("Fire2")
goto FireEnd
FireEnd:
FBEM CCCCBBBBB 3
FBEM A 12
FBEM A 0 A_Refire
Goto Ready+1
NoAmmo:
FBEM A 1 ACS_NamedExecuteAlways("core_noammo",0)
Goto Ready+1
}
}

actor ForceBeamAmmo : Ammo
{
inventory.amount 1
inventory.maxamount 180
+INVENTORY.IGNORESKILL
}

actor ForceBeamCWProtection : PowerProtection
{
Powerup.Duration 3
damagefactor "ForceBeam", 0.0
}

actor ForceBeamCopywepVersion : BasicProjectile
{
+BRIGHT
PROJECTILE
Radius 16
Height 16
scale 2.5
+RIPPER
damage (CallACS("vile_cbm_damage",5))
damagetype "ForceBeam"
Obituary "$OB_FORCEBEAM"
renderstyle "translucent"
speed 32
States
{
Spawn:
FCBM A 1
FCBM A 1 ACS_NamedExecuteWithResult("core_alphaprojectile", CallACS("core_getptrtid", AAPTR_TARGET), APROJ_TEAM, 6553, 512) // 6553 = 0.1 * 65536
FCBM A -1
loop
}
}
