actor TimeHoldWep_NormalBar : NormalBar{args 236, 254}
actor TimeHoldWep : BaseMM8BDMWep
{
Weapon.AmmoUse 70
Weapon.AmmoGive 70
Weapon.SlotNumber 6
Obituary "$OB_TIMEHOLD"
Tag "$TAG_TIMEHOLD"
Inventory.Pickupmessage "$PU_TIMEHOLD"
weapon.ammotype "TimeHoldAmmo"
inventory.pickupsound "weapon/weaponup"
+WEAPON.AMMO_OPTIONAL
inventory.icon "THOLICON"
Scale 2.0
States
{
SpawnLoop:
THOL Z -1
Loop
Ready:
TMHL Y 0 ACS_NamedExecuteWithResult("core_weaponcolor",COLOR_TIMEHOLD)
TMHL Y 1 A_WeaponReady
Goto Ready+1
ReadyC: Goto Ready+1
Deselect:
TMHL Y 0
goto DeselectSwap
Select:
TMHL Y 0
goto SelectSwap
Fire:
TMHL Y 0 A_JumpIfNoAmmo("NoAmmo")
TMHL Z 2
TMHL AB 2
TNT1 A 8
TMHL CD 2
TMHL D 0 A_PlaySoundEx("weapon/timestopper","Weapon")
TMHL D 0 A_SpawnItemEx("TimeHoldSparkleHelper",0,0,28,0,0,0,0)
Fire1:
TMHL D 0 A_SpawnItemEx("TimeHoldSparkleHelper",0,0,28,0,0,0,0)
TMHL D 0 A_FireCustomMissile("TimeHoldRadius1",0,0,8,0)
TMHL EE 1
TMHL D 0 A_TakeInventory("TimeHoldAmmo",2)
TMHL E 0 A_JumpIfInventory("TimeHoldAmmo",1,"Fire2")
goto Fire2End
Fire2:
TMHL D 0 A_SpawnItemEx("TimeHoldSparkleHelper",0,0,28,0,0,0,0)
TMHL E 0 A_FireCustomMissile("TimeHoldRadius2",0,0,8,0)
TMHL EE 1
TMHL D 0 A_TakeInventory("TimeHoldAmmo",2)
TMHL E 0 A_JumpIfInventory("TimeHoldAmmo",1,"Fire1")
goto Fire1End
Fire1End:
TMHL E 0 A_FireCustomMissile("TimeHoldRadius1",0,0,8,0)
goto FireEnd
Fire2End:
TMHL E 0 A_FireCustomMissile("TimeHoldRadius2",0,0,8,0)
goto FireEnd
FireEnd:
TMHL E 22
TMHL FGHIZJK 2
Goto Ready+1
NoAmmo:
TMHL Y 1 ACS_NamedExecute("core_noammo",0)
goto Ready+1
}
}

actor TimeHoldAmmo : Ammo {inventory.amount 1 inventory.maxamount 70}

actor TimeHoldRadius : BasicExplosion
{
-SOLID
+NOGRAVITY
+DONTBLAST
+FORCEPAIN
PROJECTILE
damage 0
radius 1
height 1
damagetype "TimeHold"
Obituary "$OB_TIMEHOLD"
Scale 4.5
+FORCEXYBILLBOARD
}

actor TimeHoldRadius1 : TimeHoldRadius
{
damagetype "TimeHold"
States
{
Spawn:
TNT1 A 0
TNT1 A 1 A_Explode(CallACS("vile_cbm_damage",1),450,0,0,450)
SLOD EFGHI 1
stop
}
}

actor TimeHoldRadius2 : TimeHoldRadius
{
damagetype "TimeHold"
States
{
Spawn:
TNT1 A 0
TNT1 A 1 A_Explode(CallACS("vile_cbm_damage",1),450,0,0,450)
SLOD JKLMN 1
stop
}
}

actor TimeHoldSparkle : BasicGraphicEffect
{
var int user_TranslateWhiteColors;
Renderstyle "Translucent"
Alpha 0.95
ReactionTime 10
States
{
SpawnFrame:
FLAS A 0
FLAS A 0 A_Jump(256,1,2,3)
FLAS ABC 2 bright A_CountDown
}
}

actor TimeHoldSparkleHelper
{
+CLIENTSIDEONLY
+NOINTERACTION
-SOLID
+MISSILE
radius 1
height 1
+NOGRAVITY
+DONTBLAST
renderstyle none
ReactionTime 3
States
{
Spawn:
TNT1 A 0 
TNT1 A 0 A_JumpIfInTargetInventory("PowerSpread",1,"SPREAD")
TNT1 AAAAAAAAAAAAAAAAAA 0 A_SpawnItemEx("TimeHoldSparkle",random(-384,384),random(-384,384),random(-384,384),0,0,0,0,129)
TNT1 A 2 A_CountDown
loop
Spread:
TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_SpawnItemEx("TimeHoldSparkle",random(-192,192),random(-192,192),random(-192,192),0,0,0,0,129)
TNT1 AAAAAAAAAAAAAAAAAA 0 A_SpawnItemEx("TimeHoldSparkle",random(-384,384),random(-384,384),random(-384,384),0,0,0,0,129)
TNT1 A 2 A_CountDown
loop
}
}