//credit for these weapons go to jaxof7//

actor TimeBenderWep : MegaBuster
{
Weapon.AmmoUse 1
Weapon.AmmoGive 28
Weapon.SlotNumber 6
//Obituary "%o was blinded by %k's Time Stopper."
Obituary "%o's suck was immortalized by %k's Time Bender."
Inventory.Pickupmessage "Power up! Time Bender!"
weapon.ammotype "YouBrokeItAmmo"
inventory.pickupsound "weapon/weaponup"
+WEAPON.AMMO_OPTIONAL
inventory.icon "TSTOE"
Scale 2.0
States
{
Spawn:
TSTO E 1
loop
Ready:
TSTO A 0 ACS_ExecuteAlways(998,0,13)
TSTO A 1 A_WeaponReady
Goto Ready+1
Deselect:
TNT1 AAAAAAAAAAAAAAAAAAAAAA 0 A_Lower
TSTO A 1 A_Lower
Loop
Select:
TNT1 AAAAAAAAAAAAAAAAAAAAAA 0 A_Raise
TSTO A 1 A_Raise
Loop
Fire:
TSTO A 0 A_JumpIfNoAmmo("NoAmmo")
TSTO BC 2
TSTO A 0 A_PlaySoundEx("weapon/timestopper","Weapon")
TSTO A 0 A_FireCustomMissile("TimeStopperRadius",0,1,8,0)
TSTO D 1 ACS_ExecuteAlways(976,0)
Goto TimeStop
TimeStop:
TSTO D 4 A_TakeInventory("YouBrokeItAmmo",1)
TSTO D 0 A_JumpIfInventory("YouBrokeItAmmo",28,"Fire")
TSTO D 0 A_JumpIfInventory("YouBrokeItAmmo",1,"TimeStop")
TSTO A 0 A_Jump(256,"NoAmmo")
Goto NoAmmo
NoAmmo:
TSTO A 0 A_TakeInventory("TimeBenderWep",1)
TSTO A 1 ACS_Execute(979,0)
Goto Ready+1
}
}

actor YouBrokeItAmmo : Ammo
{
inventory.amount 1
inventory.maxamount 28
}

actor FlashBulbWep : MegaBuster
{
Weapon.AmmoUse 9
Weapon.AmmoGive 28
Weapon.SlotNumber 6
Obituary "%o's visuals were fried by %k's Flash Bulbs."
Inventory.Pickupmessage "Power up! Flash Bulb!"
weapon.ammotype "FlashBulbAmmo"
inventory.pickupsound "weapon/weaponup"
+WEAPON.AMMO_OPTIONAL
inventory.icon "BULBJ"
Scale 2.0
States
{
Spawn:
BULB J 1
loop
Ready:
BULB A 0 ACS_ExecuteAlways(998,0,49)
BULB A 1 A_WeaponReady
Goto Ready+1
Deselect:
TNT1 AAAAAAAAAAAAAAAAAAAAAA 0 A_Lower
BULB A 1 A_Lower
Loop
Select:
TNT1 AAAAAAAAAAAAAAAAAAAAAA 0 A_Raise
BULB A 1 A_Raise
Loop
Fire:
BULB A 0 A_JumpIfNoAmmo("NoAmmo")
BULB A 0 A_FireCustomMissile("BrightBulb2",0,1,0,0)
BULB BCDEFG 2
TNT1 A 30
BULB HI 1
BULB A 2
BULB A 0 A_Refire
Goto Ready+1
NoAmmo:
BULB A 1 ACS_Execute(979,0)
Goto Ready+1
}
}

actor FlashBulbAmmo : Ammo
{
inventory.amount 1
inventory.maxamount 28
}

actor SkullSniperWep : MegaBuster
{
Weapon.AmmoUse 2
Weapon.AmmoGive 28
Weapon.SlotNumber 2
Obituary "%o was defeated by %k's Skull Sniper."
Inventory.Pickupmessage "Power up! Skull Sniper!"
weapon.ammotype "SkullSniperAmmo"
inventory.pickupsound "weapon/weaponup"
+WEAPON.AMMO_OPTIONAL
inventory.icon "SSNIA"
Scale 2.0
States
{
Spawn:
SSNI A 1
loop
Ready:
SKLB G 0 ACS_ExecuteAlways(998,0,34)
SKLB G 1 A_WeaponReady
Goto Ready+1
Deselect:
TNT1 AAAAAAAAAAAAAAAAAAAAAA 0 A_Lower
SKLB G 1 A_Lower
Loop
Select:
TNT1 AAAAAAAAAAAAAAAAAAAAAA 0 A_Raise
SKLB G 1 A_Raise
Loop
Fire:
SKLB G 0 A_JumpIfNoAmmo("NoAmmo")
//SKLB G 0 A_PlaySoundEx("weapon/mbuster","Weapon")
SKLB G 0 A_PlaySoundEx("weapon/skullbust","Weapon")
SKLB G 0 A_FireCustomMissile("SkullShot2",0,1,8,0)
SKLB HIG 4 //A_WeaponReady
SKLB G 4 A_Refire
Goto Ready+1
NoAmmo:
SKLB G 1 ACS_Execute(979,0)
Goto Ready+1
}
}

actor SkullSniperAmmo : Ammo
{
inventory.amount 1
inventory.maxamount 28
}


actor SkullShot2 : SkullShot
{
damage (10) //lol strength runes
States
{
Spawn:
TNT1 A 1
SSNI C 1
TNT1 A 1
SSNI D 1
Goto Spawn+1
Death:
TNT1 A 1
stop
}
}

actor GravitySphereWep : MegaBuster
{
Weapon.AmmoUse 8
Weapon.AmmoGive 28
Weapon.SlotNumber 5
Obituary "%o was smashed by %k's Gravity Sphere."
Inventory.Pickupmessage "Power up! Gravity Sphere!"
weapon.ammotype "GravitySphereAmmo"
inventory.icon "GBALA"
inventory.pickupsound "weapon/weaponup"
+WEAPON.AMMO_OPTIONAL
Scale 2.0
States
{
Spawn:
GBAL A 1
loop
Ready:
GBAL J 0 ACS_ExecuteAlways(998,0,49)
GBAL J 1 A_WeaponReady
goto Ready+1
Deselect:
TNT1 AAAAAAAAAAAAAAAAAAAAAA 0 A_Lower
GBAL J 1 A_Lower
Loop
Select:
TNT1 AAAAAAAAAAAAAAAAAAAAAA 0 A_Raise
GBAL J 1 A_Raise
Loop
Fire:
GBAL J 0 A_JumpIfNoAmmo("NoAmmo")
GBAL J 0 A_PlaySoundEx("weapon/mbuster","Weapon")
GBAL K 0 A_FireCustomMissile("GravitySphere",0,1,8,0)
GBAL KL 2
GBAL L 30
GBAL LKJ 3
GBAL J 0 A_Refire
goto Ready+1
NoAmmo:
GBAL J 1 ACS_Execute(979,0)
Goto Ready+1
}
}

actor GravitySphereAmmo : Ammo
{
inventory.amount 1
inventory.maxamount 28
}


actor GravitySphere// : MaceFX1
{
+RIPPER
PROJECTILE
Damage (0)
Height 9
Radius 16
Scale 2.5
gravity 3.0
speed 10
States
{
Spawn:
GBAL BBBCCCDDDEEEFFFGGGHHHII 1
GBAL I 1 A_PlaySoundEx("weapon/gravityhold","Weapon")
GBAL I 0 A_SpawnItemEx("GravityBlower")
GBAL I 0 A_SpawnItemEx("GravityBlower2")
loop
}
}

/*
actor GravityBlower
{
-SOLID
+NOGRAVITY
PROJECTILE
damage 0
radius 1
height 1
damagetype "Gravity"
States
{
Spawn:
TNT1 A 0
TNT1 A 1 A_Explode(5, 250,0)
TNT1 A 1 A_Explode(5, 250,0)
TNT1 A 1 A_Explode(5, 250,0)
TNT1 A 1 A_Explode(5, 250,0)
TNT1 A 1 A_Explode(5, 250,0)
stop
}
}
*/

actor GravityBlower
{
-SOLID
+NOGRAVITY
PROJECTILE
damage 0
radius 1
height 1
damagetype "GravityB1"
States
{
Spawn:
TNT1 A 0
TNT1 A 1 A_Explode(5, 250,0)
stop
}
}

actor GravityBlower2 : GravityBlower
{
damagetype "GravityB2"
States
{
Spawn:
TNT1 A 0
TNT1 A 1 A_Explode(10, 250,0)
stop
}
}

actor CentaurArrowWep : MegaBuster
{
Weapon.AmmoUse 3
Weapon.AmmoGive 28
Weapon.SlotNumber 2
Obituary "%o was hunted down by %k's Centaur Arrow."
Inventory.Pickupmessage "Power up! Centaur Arrow!"
weapon.ammotype "CentaurArrowAmmo"
inventory.pickupsound "weapon/weaponup"
+WEAPON.AMMO_OPTIONAL
inventory.icon "ARROA"
Scale 2.0
States
{
Spawn:
ARRO A 1
loop
Ready:
WOOD I 0 ACS_ExecuteAlways(998,0,51)
WOOD I 1 A_WeaponReady
Goto Ready+1
Deselect:
TNT1 AAAAAAAAAAAAAAAAAAAAAA 0 A_Lower
WOOD I 1 A_Lower
Loop
Select:
TNT1 AAAAAAAAAAAAAAAAAAAAAA 0 A_Raise
WOOD I 1 A_Raise
Loop
Fire:
WOOD I 0 A_JumpIfNoAmmo("NoAmmo")
WOOD I 0 A_PlaySoundEx("weapon/pshot","Weapon")
WOOD I 0 A_FireCustomMissile("CentaurArrow",0,1,8,0)
WOOD JK 3
WOOD K 10
WOOD KJ 3 
WOOD I 0 A_Refire
Goto Ready+1
NoAmmo:
WOOD I 1 ACS_Execute(979,0)
Goto Ready+1
}
}

actor CentaurArrowAmmo : Ammo
{
inventory.amount 1
inventory.maxamount 28
}


actor CentaurArrow
{
PROJECTILE
+RIPPER
Radius 6
Height 7
damagetype "Centaur"
scale 2.5
damage (14)
speed 20
States
{
Spawn:
ARRO BC 3
loop
}
}