actor RechargeGlimmerWep_NormalBar : NormalBar{args 217,174}
actor RechargeGlimmerWep : BaseMM8BDMWep 
{
Weapon.AmmoUse 4
Weapon.AmmoGive 40
Weapon.SlotNumber 2
Inventory.Pickupmessage "$PU_RECHARGEGLIMMER"
Obituary "$OB_RECHARGEGLIMMER"
Tag "$TAG_RECHARGEGLIMMER"
weapon.ammotype "RechargeGlimmerAmmo"
inventory.pickupsound "weapon/weaponup"
inventory.icon "RCGMICON"
+WEAPON.AMMO_OPTIONAL
Scale 2.0
States
{
SpawnLoop:
RCGM Z 1
loop
Ready:
RCGM A 0 ACS_NamedExecuteWithResult("core_weaponcolor",COLOR_RECHARGEGLIMMER)
RCGM A 1 A_WeaponReady
Goto Ready+1
ReadyC: Goto Ready+1
Deselect:
RCGM A 0 
goto DeselectSwap
Select:
RCGM A 0 
goto SelectSwap
Fire:
RCGM A 0 A_JumpIfNoAmmo("NoAmmo")
RCGM A 0 A_PlaySoundEx("misc/eclipsedarkball","Weapon")
RCGM A 0 A_FireCustomMissile("RechargeGlimmer",0,1,8,8)
RCGM BC 6
RCGM A 5
goto Ready+1
NoAmmo:
RCGM A 0 ACS_NamedExecuteAlways("core_noammo",0)
Goto Ready+1
}
}

actor RechargeGlimmerAmmo : Ammo
{
inventory.amount 1
inventory.maxamount 40
+INVENTORY.IGNORESKILL
}

actor RechargeGlimmer : BasicProjectile
{
translation "198:198=174:174", "192:192=217:217"
PROJECTILE
Speed 50
Damage (CallACS("vile_cbm_damage",18))
damagetype "RechargeGlimmer"
Obituary "$OB_RECHARGEGLIMMER"
Radius 18
Height 18
scale 2.0
+HITTRACER
+NOGRAVITY
+NOTARGETSWITCH
States
{
Spawn:
TNT1 A 0
RCGM DEF 1 A_SpawnItemEx("RechargeGlimmerGotHealthHeathFX",-2,random(-4,4),random(-4,4)-8,0,0,0,0,SXF_TRANSFERPOINTERS|SXF_WEPFXCOLOR)
RCGM DEF 1 A_SpawnItemEx("RechargeGlimmerGotHealthHeathFX",-2,random(-4,4),random(-4,4)-8,0,0,0,0,SXF_TRANSFERPOINTERS|SXF_WEPFXCOLOR)
loop
Yoink:
TNT1 A 0 A_SpawnItemEx("RechargeGlimmerGotHealth",0,0,0,-31,0,0,0,SXF_TRANSFERPOINTERS|SXF_WEPFXCOLOR)
TNT1 A 1
goto DeathReal
Death:
TNT1 A 0 A_SpawnItemEx("ExplosionEffect1", 0, 0, 0, 0, 0, 0, 0, SXF_WEPFXCOLOR)
stop
XDeath:
MTCR A 0 A_JumpIfInventory("CanBeGrabBustered", 1, "TeamCheck", AAPTR_TRACER)
stop
TeamCheck:
MTCR A 0 A_GiveInventory("TracerAndTargetTeamsMatchCheck",1)
MTCR A 0 A_JumpIfInventory("TracerAndTargetTeamsMatchFlag", 1, "DeathReal")
goto Yoink
DeathReal:
TNT1 A 0
stop
}
}


actor RechargeGlimmerGotHealth : RechargeGlimmer
{
translation "198:198=174:174", "192:192=217:217"
Damage (0)
+NOINTERACTION
+NOCLIP
States
{
Spawn:
TNT1 A 0
EBAL A 1 A_FaceTarget EBAL A 0 A_JumpIfCloser(60,"Death")
EBAL A 1 A_FaceTarget EBAL A 0 A_JumpIfCloser(60,"Death")
EBAL A 1 A_FaceTarget EBAL A 0 A_JumpIfCloser(60,"Death")
EBAL A 0 A_ChangeFlag("NOINTERACTION",0)
EBAL A 0 A_ChangeFlag("NOCLIP",0)
EBAL A 0 A_CustomMissile("RechargeGlimmerGotHealthB",0,0,0,0)
stop
Death:
TNT1 A 0 A_PlaySoundEx("item/energyup","Body")
TNT1 A 1 A_GiveToTarget("RechargeGlimmerAmmoG",1)
EBAL E 0 A_SpawnItemEx("WTankUse",  0, 0, -12, 0, 0,  0,    0, SXF_WEPFXCOLOR|SXF_ABSOLUTEMOMENTUM)
stop
}
}

actor RechargeGlimmerGotHealthA : RechargeGlimmerGotHealth
{
States
{
Spawn:
TNT1 A 0
TNT1 A 1 A_FaceTarget EBAL A 0 A_JumpIfCloser(60,"Death")
TNT1 A 0 A_SpawnItemEx("RechargeGlimmerGotHealthHeathFX")
EBAL A 0 A_CustomMissile("RechargeGlimmerGotHealthB",0,0,0,0)
stop
}
}

actor RechargeGlimmerGotHealthB : RechargeGlimmerGotHealth
{
States
{
Spawn:
TNT1 A 0
TNT1 B 1 A_FaceTarget EBAL A 0 A_JumpIfCloser(60,"Death")
TNT1 A 0 A_SpawnItemEx("RechargeGlimmerGotHealthHeathFX")
EBAL A 0 A_CustomMissile("RechargeGlimmerGotHealthA",0,0,0,0)
stop
}
}

actor RechargeGlimmerGotHealthHeathFX : BasicGraphicEffect
{
translation "198:198=174:174", "192:192=217:217"
RenderStyle "Add"
ReactionTime 12
scale 2.5
-NONETID
States
{
SpawnFrame:
TNT1 A 0 A_TransferPointer(AAPTR_TARGET,AAPTR_DEFAULT,AAPTR_TARGET,AAPTR_TRACER)
goto Spawn_L
Spawn_L:
EBAL AB 2 A_FadeOut(0.08) HBAL AB 0 A_SetScale(ScaleX - 0.4, ScaleY - 0.4)
EBAL AB 0 A_CountDown
loop
}
}

actor RechargeGlimmerAmmoG : CustomInventory
{
states
{
Pickup:
TNT1 A 0 ACS_NamedExecuteWithResult("vile_rechargeglimmerammo",25)
stop
}
}