actor TimeHoldWepSH : BaseMM8BDMWep replaces TimeStopperWep
{
Weapon.AmmoUse 70
Weapon.AmmoGive 70
Weapon.SlotNumber 6
Obituary "$OB_TIMESTOPPER"
Tag "$TAG_TIMESTOPPER"
Inventory.Pickupmessage "$PU_TIMESTOPPER"
weapon.ammotype "TimeHoldAmmo"
inventory.pickupsound "weapon/weaponup"
+WEAPON.AMMO_OPTIONAL
inventory.icon "XR2HICON"
//damagetype "TimeHold"
+INVENTORY.RESTRICTABSOLUTELY Inventory.RestrictedTo megamans
Scale 2.0
States
{
Spawn:
X_R2 H -1
Loop
Ready:
TMHL Y 0 ACS_ExecuteAlways(998,0,250)
TMHL Y 1 A_WeaponReady
Goto Ready+1
Deselect:
TNT1 AAAAAAAAAAAAAAAAAAAAAA 0 A_Lower
TMHL Y 1 A_Lower
Loop
Select:
TNT1 AAAAAAAAAAAAAAAAAAAAAA 0 A_Raise
TMHL Y 1 A_Raise
Loop
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 E 2
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 E 2
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,1,8,0)
goto FireEnd
Fire2End:
TMHL E 0 A_FireCustomMissile("TimeHoldRadius2",0,1,8,0)
goto FireEnd
FireEnd:
TMHL E 22
TMHL FGHIZJK 2
Goto Ready+1
NoAmmo:
TMHL Y 1
goto Ready+1
}
}

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

actor TimeHoldRadius
{
-SOLID
+NOGRAVITY
+DONTBLAST
+FORCEPAIN
PROJECTILE
damage 0
radius 1
height 1
damagetype "TimeHold"
Obituary "$OB_TIMESTOPPER"
Scale 4.5
+FORCEXYBILLBOARD
//Translation "30:40=229:229", "230:240=220:220"
}

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

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

actor TimeHoldSparkle
{
+CLIENTSIDEONLY
+NOINTERACTION
+NOGRAVITY
-SOLID
radius 2
height 2
scale 2.5
Renderstyle "Translucent"
Alpha 0.95
ReactionTime 10
States
{
Spawn:
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 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
}
}