actor OverchargeSparkWep_NormalBar : NormalBar { args 224, 225 }

actor OverchargeSparkWep : BaseMM8BDMWep
{
Weapon.AmmoUse 4
Weapon.AmmoGive 28
Weapon.SlotNumber 5
Obituary "$OB_OVERCHARGESPARK"
Inventory.Pickupmessage "$PU_OVERCHARGESPARK"
tag "$TAG_OVERCHARGESPARK"
weapon.ammotype "OverchargeSparkAmmo"
inventory.icon "OSPKICON"
States
{
SpawnLoop:
OSPK Z 1
loop
Ready:
OSPK A 0 ACS_NamedExecuteWithResult("core_weaponcolor",COLOR_OVERCHARGESPARK)
OSPK A 1 A_WeaponReady
Goto Ready+1
ReadyC: Goto Ready+1
Deselect:
OSPK A 0
goto DeselectSwap
Select:
OSPK A 0
goto SelectSwap
Fire:
OSPK A 0 A_JumpIfNoAmmo("NoAmmo")
OSPK BC 1
OSPK C 0 A_PlaySoundEx("weapon/JusticeMeteor","Weapon")
OSPK C 0 A_FireCustomMissile("OverchargeSpark1",0,1,8,0)
OSP0 ABCDEF 3
OSPK A 12
OSPK A 0 A_Refire
Goto Ready+1
NoAmmo:
OSPK A 1 ACS_NamedExecute("core_noammo",0)
Goto Ready+1
}
}

actor OverchargeSpark1 : BasicProjectile
{
+BRIGHT
PROJECTILE
-NOGRAVITY
radius 32
height 32
scale 2.5
damage (47)
damagetype "OverchargeSpark"
Obituary "$OB_OVERCHARGESPARK"
speed 18
States
{
Spawn:
OSPK O 0
OSPK O 0 ThrustThingZ(0,25,0,1)
Spawn2:
OSPK OP 3
loop
Death:
TNT1 A 0 A_Changeflag("NOGRAVITY",1)
OSPK A 0 A_JumpIf(z-floorz<16,"Floor")
OSPK STU 3
stop
Floor:
TNT1 A 0 A_PlaySoundEx("misc/sparkzap","Weapon")
TNT1 A 0
TNT1 A 0 A_SpawnItemEx("OverchargeMiniSpark",0,  0,0,15,0,7.5,0,1)
TNT1 A 0 A_SpawnItemEx("OverchargeMiniSpark",0, 23,0,15,2.5,7.5,0,1)
TNT1 A 0 A_SpawnItemEx("OverchargeMiniSpark",0,-23,0,15,-2.5,7.5,0,1)

TNT1 A 0 A_SpawnItemEx("OverchargeMiniSpark",0,  0,0,15,0,10,0,1)
TNT1 A 0 A_SpawnItemEx("OverchargeMiniSpark",0, 23,0,15,2.5,10,0,1)
TNT1 A 0 A_SpawnItemEx("OverchargeMiniSpark",0,-23,0,15,-2.5,10,0,1)

TNT1 A 0 A_SpawnItemEx("OverchargeMiniSpark",0,  0,0,15,0,12.5,0,1)
TNT1 A 0 A_SpawnItemEx("OverchargeMiniSpark",0, 23,0,15,2.5,12.5,0,1)
TNT1 A 0 A_SpawnItemEx("OverchargeMiniSpark",0,-23,0,15,-2.5,12.5,0,1)
SPMS STU 3 
stop

}
}

actor OverchargeMiniSpark : BasicProjectile
{
+BRIGHT
PROJECTILE
+HEXENBOUNCE
-NOGRAVITY
+FORCEXYBILLBOARD
+BRIGHT
bouncecount 3
bouncefactor 1.0
Radius 5
Height 5
scale 2.5
damage (12)
speed 30
damagetype "OverchargeSpark"
Obituary "$OB_OVERCHARGESPARK"
States
{
Spawn:
OSPK QR 3
loop
}
}


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