actor CloakedSlashWep_NormalBar : NormalBar{args 34, 39}
actor CloakedSlashWep : BaseMM8BDMWep
{
Weapon.AmmoUse 5
Weapon.AmmoGive 30
Weapon.SlotNumber 4
Obituary "$OB_CLOAKEDSLASH"
Inventory.Pickupmessage "$PU_CLOAKEDSLASH" 
Tag "$TAG_CLOAKEDSLASH"
weapon.ammotype "CloakedSlashAmmo"
inventory.icon "CSSHICON"
States
{
SpawnLoop: 
CSSH Z 1
loop
Ready: 
CSSH A 0 ACS_NamedExecuteWithResult("core_weaponcolor",CLR_CLOAKEDSLASH)
CSSH A 1 A_WeaponReady
Goto Ready+1
ReadyC: Goto Ready+1
Deselect: 
CSSH A 0
goto DeselectSwap
Select: 
CSSH A 0
goto SelectSwap
Fire:
CSSH A 0 A_JumpIfNoAmmo("NoAmmo")
CSSH H 2
CSSH G 2
TNT1 A 0 A_ScaleVelocity(2.23)
CSSH A 0 A_PlaySoundEx("weapons/mmqg/cloakedslash","Weapon")
CSSH B 0 A_FireCustomMissile("CloakedSlash",0,1,8,0)
CSSH BCD 1
ImACloaker:
TNT1 AAAAAAAAAAAAAAAAAAAAAA 0 A_SpawnItemEx("CloakedSlashSmoke",random(-48,48),random(-48,48),random(-12,96),momx/2,momy/2,momz/2,0,SXF_ABSOLUTEMOMENTUM|SXF_NOCHECKPOSITION)
CSSH E 1 A_GiveInventory("CentaurFlashQuarterAlphaGiver", 1)
CSSH F 1 A_GiveInventory("CentaurFlashHalfAlphaGiver", 1)
TNT1 A 1 A_GiveInventory("CentaurFlashNoAlphaGiver", 1)
CSSH D 0 ACS_NamedExecuteWithResult("core_cantseekplayer", 0, true)
CSSH D 0 ACS_NamedExecuteWithResult("core_notargetplayer", 0, true)
CSSH D 0 ACS_NamedExecuteWithResult("core_dontidentifytargetplayer", 0, true)

TNT1 A 49
CSSH A 0 A_PlaySoundEx("weapons/mm6/centaurflashuncloak","Weapon")
CSSH D 0 ACS_NamedExecuteWithResult("core_cantseekplayer", 0, false)
CSSH D 0 ACS_NamedExecuteWithResult("core_notargetplayer", 0, false)
CSSH D 0 ACS_NamedExecuteWithResult("core_dontidentifytargetplayer", 0, false)
TNT1 AAAAAAAAAA 0 A_SpawnItemEx("CloakedSlashSmoke",random(-40,40),random(-40,40),random(-12,96),momx/4,momy/4,momz/4,0,SXF_ABSOLUTEMOMENTUM|SXF_NOCHECKPOSITION)
CSSH G 2 A_TakeInventory("CentaurFlashNoAlpha", 999)
CSSH H 2 A_TakeInventory("CentaurFlashQuarterAlpha", 999)
CSSH A 1 A_TakeInventory("CentaurFlashHalfAlpha", 999)
CSSH A 10
CSSH A 0 A_Refire
Goto Ready+1
NoAmmo: 
CSSH A 1 ACS_NamedExecute("core_noammo",0)
Goto Ready+1
}
}

actor CloakedSlashAmmo : Ammo 
{
inventory.amount 1
inventory.maxamount 30
+INVENTORY.IGNORESKILL
}

actor CloakedSlash : BasicProjectile
{
var int user_PierceRipper;
PROJECTILE
Obituary "$OB_CLOAKEDSLASH"
Damagetype "CloakedSlash"
+RIPPER
damage (0)
Radius 4
Height 4
speed 28
States
{
Spawn:
TNT1 A 0
CSSH MMNN 1 A_Explode(CallACS("mmqg_cbm_damage",47),36,0,0,36)
CSSH D 0 A_ScaleVelocity(0.6)
CSSH OOOOO 1 A_Explode(CallACS("mmqg_cbm_damage",47),36,0,0,36)
CSSH NM 2
stop
}
}

actor CloakedSlashSmoke : BasicGraphicEffect
{
States
{
SpawnFrame:
CSSH P 0 ACS_NamedExecuteWithResult("core_changeClientProperty", APROP_Alpha, 26214, AAPTR_TARGET) // 0.6 * 65536
CSSH P 0 A_Jump(256,1,2,3,4,5)
CSSH PQRST 2
TNT1 A 2
stop
}
}