ACTOR " Shrinker " : Weapon Replaces PlasmaRifle 31015 // No Deathmach
{
    //$Category DN3D Weapons
	Weapon.SelectionOrder 35
	Weapon.BobStyle Normal
    Weapon.BobSpeed 1.4
    Weapon.BobRangeX 0.85
    Weapon.BobRangeY 0.6
    Weapon.AmmoUse 1
    Weapon.AmmoGive 10
    Weapon.AmmoType "Shrinker Ammo"
    Obituary "%o was squashed by %k."
    Inventory.PickupMessage "\cnShrinker!"
    Inventory.PickupSound "DukeNukem/PickWeapon"
    Weapon.KickBack 0
    Scale 0.495
	+WEAPON.AMMO_OPTIONAL
	+WEAPON.ALT_AMMO_OPTIONAL
	+WEAPON.NOALERT
    States
    {
	Spawn:
		TNT1 A 0		
		TNT1 A 1 A_Jump(256,"Spawn1","Spawn2")
		Stop
	Spawn1:	
        SRKP A -1
        Stop
	Spawn2:	
        2RKP A -1
        Stop
	Ready:
		SRKG K 0 A_JumpIfInventory("Waiting",15,"Knuckles")
		SRKG K 0 A_JumpIfInventory("Shrinker Ammo",1,"Ready2")
		SRKG K 1 A_WeaponReady
		SRKG K 0 A_JumpIfInventory("Shrinker Ammo",1,"Ready2")
		SRKG K 1 A_WeaponReady
		SRKG K 0 A_JumpIfInventory("Shrinker Ammo",1,"Ready2")
		SRKG K 1 A_WeaponReady
		SRKG K 0 A_JumpIfInventory("Shrinker Ammo",1,"Ready2")
		SRKG K 1 A_WeaponReady
		SRKG K 0 A_JumpIfInventory("Shrinker Ammo",1,"Ready2")
		SRKG K 1 A_WeaponReady
		SRKG K 0 A_JumpIfInventory("Shrinker Ammo",1,"Ready2")
		SRKG K 1 A_WeaponReady
		SRKG K 0 A_JumpIfInventory("Shrinker Ammo",1,"Ready2")
		SRKG K 1 A_WeaponReady
		SRKG K 0 A_JumpIfInventory("Shrinker Ammo",1,"Ready2")
		SRKG K 1 A_WeaponReady
		SRKG K 0 A_JumpIfInventory("Shrinker Ammo",1,"Ready2")
		SRKG K 1 A_WeaponReady
		SRKG K 0 A_JumpIfInventory("Shrinker Ammo",1,"Ready2")
		SRKG K 1 A_WeaponReady
		SRKG K 0 A_JumpIfInventory("Shrinker Ammo",1,"Ready2")
		SRKG K 1 A_WeaponReady
		SRKG K 0 A_JumpIfInventory("Shrinker Ammo",1,"Ready2")
		SRKG K 1 A_WeaponReady
		SRKG K 0 A_JumpIfInventory("Shrinker Ammo",1,"Ready2")
		SRKG K 1 A_WeaponReady
		SRKG K 0 A_JumpIfInventory("Shrinker Ammo",1,"Ready2")
		SRKG K 1 A_WeaponReady
		SRKG K 0 A_JumpIfInventory("Shrinker Ammo",1,"Ready2")
		SRKG K 1 A_WeaponReady
		SRKG K 0 A_JumpIfInventory("Shrinker Ammo",1,"Ready2")
		SRKG K 1 A_WeaponReady
		SRKG K 0 A_JumpIfInventory("Shrinker Ammo",1,"Ready2")
		SRKG K 1 A_WeaponReady
		SRKG K 0 A_JumpIfInventory("Shrinker Ammo",1,"Ready2")
		SRKG K 1 A_WeaponReady
		SRKG K 0 A_JumpIfInventory("Shrinker Ammo",1,"Ready2")
		SRKG K 1 A_WeaponReady
		SRKG K 0 A_JumpIfInventory("Shrinker Ammo",1,"Ready2")
		SRKG K 1 A_WeaponReady
		SRKG K 0 A_JumpIfInventory("Shrinker Ammo",1,"Ready2")
		SRKG K 1 A_WeaponReady
		SRKG K 0 A_JumpIfInventory("Shrinker Ammo",1,"Ready2")
		SRKG K 1 A_WeaponReady
		SRKG K 0 A_JumpIfInventory("Shrinker Ammo",1,"Ready2")
		SRKG K 1 A_WeaponReady
		SRKG K 0 A_JumpIfInventory("Shrinker Ammo",1,"Ready2")
		SRKG K 1 A_WeaponReady
		SRKG K 0 A_JumpIfInventory("Shrinker Ammo",1,"Ready2")
		SRKG K 1 A_WeaponReady
		SRKG K 0 A_JumpIfInventory("Shrinker Ammo",1,"Ready2")
		SRKG K 1 A_WeaponReady
		SRKG K 0 A_JumpIfInventory("Shrinker Ammo",1,"Ready2")
		SRKG K 1 A_WeaponReady
		SRKG K 0 A_JumpIfInventory("Shrinker Ammo",1,"Ready2")
		SRKG K 1 A_WeaponReady
		SRKG K 0 A_JumpIfInventory("Shrinker Ammo",1,"Ready2")
		SRKG K 1 A_WeaponReady
		SRKG K 0 A_JumpIfInventory("Shrinker Ammo",1,"Ready2")
		SRKG K 1 A_WeaponReady
		SRKG K 0 A_JumpIfInventory("Shrinker Ammo",1,"Ready2")
		SRKG K 1 A_WeaponReady
		SRKG K 0 A_JumpIfInventory("Shrinker Ammo",1,"Ready2")
		SRKG K 1 A_WeaponReady
		SRKG K 0 A_JumpIfInventory("Shrinker Ammo",1,"Ready2")
		SRKG K 1 A_WeaponReady
		SRKG K 0 A_JumpIfInventory("Shrinker Ammo",1,"Ready2")
		SRKG K 1 A_WeaponReady
		SRKG K 0 A_JumpIfInventory("Shrinker Ammo",1,"Ready2")
		SRKG K 1 A_WeaponReady
		SRKG K 0 A_JumpIfInventory("Shrinker Ammo",1,"Ready2")
		SRKG K 1 A_WeaponReady
		SRKG K 0 A_GiveInventory("Waiting",1)
        Loop
	Ready2:
	    SRKG A 0 A_JumpIfInventory("Waiting",15,"Knuckles")
		SRKG B 1 A_WeaponReady
		SRKG ABCDEFGHIJIHGFEDCBABCDEFGHIJIHGFEDC 1 A_WeaponReady
		SRKG B 0 A_GiveInventory("Waiting",1)
        Loop
	Knuckles:
        SRKG KKKKK 1 A_Lower
        SRKG K 0 A_Lower
		KNUK A 0 A_PlaySound("DukeNukem/Waiting",8)
        KNUK A 0 A_TakeInventory("Waiting",15)
        KNUK A 1 Offset(0,120) 
		KNUK A 1 Offset(0,110)
		KNUK A 1 Offset(0,100)
		KNUK A 1 Offset(0,90)
		KNUK A 1 Offset(0,80)
		KNUK A 1 Offset(0,70)
		KNUK A 1 Offset(0,60)
		KNUK A 1 Offset(0,50)
		KNUK A 1 Offset(0,40)
		KNUK AAABBB 1 A_WeaponReady(WRF_NOFIRE|WRF_NOSWITCH)
		KNUK C 1 A_WeaponReady(WRF_NOFIRE|WRF_NOSWITCH)
        KNUK C 0 A_PlaySound("Duke/KNuckles",5)
		KNUK C 1 A_WeaponReady(WRF_NOFIRE|WRF_NOSWITCH)
		KNUK C 1 A_WeaponReady(WRF_NOFIRE|WRF_NOSWITCH)
        KNUK DDDCCCBBBAAA 1 A_WeaponReady(WRF_NOFIRE|WRF_NOSWITCH)  
        KNUK A 1 Offset(0,40)
		KNUK A 1 Offset(0,50)
		KNUK A 1 Offset(0,60)
		KNUK A 1 Offset(0,70)
		KNUK A 1 Offset(0,80)
		KNUK A 1 Offset(0,90)
		KNUK A 1 Offset(0,100)
		KNUK A 1 Offset(0,110)
		KNUK A 1 Offset(0,120)
        Goto Select
    Deselect:
	    SRKG K 0
        SRKG KKKKK 1 A_Lower
		SRKG K 0 A_TakeInventory("Waiting",15)
        SRKG K 0 A_Lower
        Goto Deselect+4
    Select:
        SRKG K 1 A_Raise
		TNT1 A 0 A_TakeInventory("CheckWeaponMightyFoot",1)
        TNT1 A 0 A_TakeInventory("CheckWeaponPistol",1)
        TNT1 A 0 A_TakeInventory("CheckWeaponDualPistol",1)
        TNT1 A 0 A_TakeInventory("CheckWeaponBlackTail",1)
        TNT1 A 0 A_TakeInventory("CheckWeaponDualBlackTail",1)
        TNT1 A 0 A_TakeInventory("CheckWeaponDesertEagle",1)
        TNT1 A 0 A_TakeInventory("CheckWeaponShotgun",1)
        TNT1 A 0 A_TakeInventory("CheckWeaponSuperShotgun",1)
        TNT1 A 0 A_TakeInventory("CheckWeaponAssaultShotgun",1)
        TNT1 A 0 A_TakeInventory("CheckWeaponExplosiveShotgun",1)
        TNT1 A 0 A_TakeInventory("CheckWeaponChaingun",1)
        TNT1 A 0 A_TakeInventory("CheckWeaponLMG2028",1)
		TNT1 A 0 A_TakeInventory("CheckWeaponMinigun",1)
		TNT1 A 0 A_TakeInventory("CheckWeaponExplosiveChaingun",1)
        TNT1 A 0 A_TakeInventory("CheckWeaponRPG",1)
        TNT1 A 0 A_TakeInventory("CheckWeaponShockCannon",1)
        TNT1 A 0 A_TakeInventory("CheckWeaponPipeBomb",1)
        TNT1 A 0 A_TakeInventory("CheckWeaponLaserTripBomb",1)
        TNT1 A 0 A_GiveInventory("CheckWeaponShrinker",1)
		TNT1 A 0 A_TakeInventory("CheckWeaponShrinker2",1)
        TNT1 A 0 A_TakeInventory("CheckWeaponExpander",1)
        TNT1 A 0 A_TakeInventory("CheckWeaponExecutor",1)
        TNT1 A 0 A_TakeInventory("CheckWeaponDevastator",1)
        TNT1 A 0 A_TakeInventory("CheckWeaponLaserChaingun",1)
        TNT1 A 0 A_TakeInventory("CheckWeaponRailgun",1)
        TNT1 A 0 A_TakeInventory("CheckWeaponFreezethrower",1)
        TNT1 A 0 A_TakeInventory("CheckWeaponIncinerator",1)
        TNT1 A 0 A_TakeInventory("CheckWeaponPulsethrower",1)
		SRKG K 0 A_PlaySound("Weapons/Up",6)
        SRKG K 0 A_Raise
        SRKG K 1 A_Raise
        SRKG K 0 A_Raise
        SRKG K 1 A_Raise
        SRKG K 0 A_Raise
        SRKG K 1 A_Raise
        SRKG K 0 A_Raise
        SRKG K 1 A_Raise
        SRKG K 0 A_Raise
        SRKG KKKKK 1 A_Raise
        SRKG KKKKKKKKKK 2 A_Raise
        Goto Ready
    Fire:
		SRKF A 0 A_JumpIfNoAmmo("FireFail")
		SRKF A 1 Bright OffSet(0,34) A_PlaySound("Shrinker/Shoot",5)
		TNT1 A 0 A_FireCustomMissile("DukeFlashShrinker1",0,0,0)
		TNT1 A 0 A_Light1
        SRKF B 1 Bright OffSet(-2,31)
		TNT1 A 0 A_Light0
        SRKF C 1 Bright OffSet(1,32)
        TNT1 A 0 A_FireCustomMissile("DukeFlashShrinker2",0,0,0)
		TNT1 A 0 A_Light1
		SRKF A 1 Bright OffSet(2,27)
		TNT1 A 0 A_Light0
		SRKF B 1 Bright OffSet(3,31)
        TNT1 A 0 A_FireCustomMissile("DukeFlashShrinker1",0,0,0)
		TNT1 A 0 A_Light1
		SRKF C 1 Bright OffSet(-2,33)
		TNT1 A 0 A_Light0
		SRKF A 1 Bright OffSet(-1,31)
        TNT1 A 0 A_FireCustomMissile("DukeFlashShrinker2",0,0,0)
		TNT1 A 0 A_Light1
		SRKF B 1 Bright OffSet(2,27)
		TNT1 A 0 A_Light0
		SRKF C 1 Bright OffSet(1,35) A_AlertMonsters
        TNT1 A 0 A_FireCustomMissile("DukeFlashShrinker1",0,0,0)
		TNT1 A 0 A_Light1
		SRKF A 1 Bright OffSet(-2,31) A_FireCustomMissile("ShrinkerAttack",1,1,7)
        TNT1 A 0 A_FireCustomMissile("DukeFlashShrinker2",0,0,0)
		TNT1 A 0 A_Light2
		SRKF B 1 Bright OffSet(4,33)
		TNT1 A 0 A_Light0
		SRKF C 1 Bright OffSet(2,24)
        TNT1 A 0 A_FireCustomMissile("DukeFlashShrinker1",0,0,0)
		TNT1 A 0 A_Light1
		SRKF A 1 Bright OffSet(0,33)
		TNT1 A 0 A_Light0
		SRKF B 1 Bright OffSet(5,27)
        TNT1 A 0 A_FireCustomMissile("DukeFlashShrinker2",0,0,0)
		TNT1 A 0 A_Light1
		SRKF C 1 Bright OffSet(0,31)
		TNT1 A 0 A_Light0
		TNT1 A 0 A_TakeInventory("Waiting",15)
        Goto Ready
	AltFire:
        BOOT C 0 A_JumpIfInventory("PowerStrength",1,22)
		BOOT C 0 A_GunFlash
		BOOT C 0 ACS_ExecuteAlways(500,0,FAS_ActorKick)
		BOOT CCCCCC 1 A_WeaponReady(WRF_NOFIRE|WRF_NOSWITCH) 
		BOOT C 0 A_CustomPunch(Random(26,30),0,0,"MightyBootPuff")
		BOOT C 0 A_TakeInventory("Waiting",15)
        BOOT DDDDD 1 A_WeaponReady(WRF_NOFIRE|WRF_NOSWITCH) 
        BOOT CCCCC 1 A_WeaponReady(WRF_NOFIRE|WRF_NOSWITCH) 
        BOOT C 0 A_Refire
        Goto Ready  
		BOOT C 0 ACS_ExecuteAlways(500,0,FAS_ActorKick)
		BOOT C 0 A_GunFlash
		BOOT CCCCCC 1 A_WeaponReady(WRF_NOFIRE|WRF_NOSWITCH) 
		BOOT C 0 A_CustomPunch(10*Random(26,30),0,0,"MightyBootPuff")
		BOOT C 0 A_TakeInventory("Waiting",15)
        BOOT DDDDD 1 A_WeaponReady(WRF_NOFIRE|WRF_NOSWITCH) 
        BOOT CCCCC 1 A_WeaponReady(WRF_NOFIRE|WRF_NOSWITCH) 
        BOOT C 0 A_Refire
        Goto Ready	
    AltFlash:  
	    SRKG K 0 A_JumpIfInventory("Shrinker Ammo",1,18)
        SRKG KKKKKKKKKKKKKKKKK 1 A_WeaponReady(WRF_NOFIRE|WRF_NOSWITCH)
        Stop
		SRKG ABCDEFGHIJIHGFEDCB 1 A_WeaponReady(WRF_NOFIRE|WRF_NOSWITCH)
        Stop
	FireFail:
	    SRKG K 1 OffSet(0,34) 
        SRKG K 0 A_PlaySound("Chaingun/Fail",6)
		SRKG K 1 OffSet(-2,31)
        SRKG K 1 OffSet(1,32)
		SRKG K 1 OffSet(2,27)
		SRKG K 1 OffSet(3,31)
		SRKG K 1 OffSet(-2,33)
		SRKG K 1 OffSet(-1,31)
		SRKG K 1 OffSet(2,27)
		SRKG K 1 OffSet(1,35)
		SRKG K 1 OffSet(-2,31) 
		SRKG K 1 OffSet(4,33)
		SRKG K 1 OffSet(2,24)
		SRKG K 1 OffSet(0,33)
		SRKG K 1 OffSet(5,27)
		SRKG K 1 OffSet(0,31)
		TNT1 A 0 A_TakeInventory("Waiting",15)
        Goto Ready	
        }
}

ACTOR "Shrinker" : Weapon 31016 // Shrinker for Deathmach
{
    //$Category DN3D Weapons //Weapon for Deathmach
	Weapon.SelectionOrder 36
	Weapon.BobStyle Normal
    Weapon.BobSpeed 1.4
    Weapon.BobRangeX 0.85
    Weapon.BobRangeY 0.6
    Weapon.AmmoUse 1
    Weapon.AmmoGive 5
    Weapon.AmmoType "Shrinker Ammo"
    Obituary "%o was squashed by %k."
    Inventory.PickupMessage "\cnShrinker!"
    Inventory.PickupSound "DukeNukem/PickWeapon"
    Weapon.KickBack 0
    Scale 0.495
	+CHEATNOTWEAPON
	+WEAPON.AMMO_OPTIONAL
	+WEAPON.ALT_AMMO_OPTIONAL
	+WEAPON.NOALERT
    States
    {
	Spawn:
		TNT1 A 0		
		TNT1 A 1 A_Jump(256,"Spawn1","Spawn2")
		Stop
	Spawn1:	
        SRKP A -1
        Stop
	Spawn2:	
        2RKP A -1
        Stop
	Ready:
		SRKG K 0 A_JumpIfInventory("Waiting",15,"Knuckles")
		SRKG K 0 A_JumpIfInventory("Shrinker Ammo",1,"Ready2")
		SRKG K 1 A_WeaponReady
		SRKG K 0 A_JumpIfInventory("Shrinker Ammo",1,"Ready2")
		SRKG K 1 A_WeaponReady
		SRKG K 0 A_JumpIfInventory("Shrinker Ammo",1,"Ready2")
		SRKG K 1 A_WeaponReady
		SRKG K 0 A_JumpIfInventory("Shrinker Ammo",1,"Ready2")
		SRKG K 1 A_WeaponReady
		SRKG K 0 A_JumpIfInventory("Shrinker Ammo",1,"Ready2")
		SRKG K 1 A_WeaponReady
		SRKG K 0 A_JumpIfInventory("Shrinker Ammo",1,"Ready2")
		SRKG K 1 A_WeaponReady
		SRKG K 0 A_JumpIfInventory("Shrinker Ammo",1,"Ready2")
		SRKG K 1 A_WeaponReady
		SRKG K 0 A_JumpIfInventory("Shrinker Ammo",1,"Ready2")
		SRKG K 1 A_WeaponReady
		SRKG K 0 A_JumpIfInventory("Shrinker Ammo",1,"Ready2")
		SRKG K 1 A_WeaponReady
		SRKG K 0 A_JumpIfInventory("Shrinker Ammo",1,"Ready2")
		SRKG K 1 A_WeaponReady
		SRKG K 0 A_JumpIfInventory("Shrinker Ammo",1,"Ready2")
		SRKG K 1 A_WeaponReady
		SRKG K 0 A_JumpIfInventory("Shrinker Ammo",1,"Ready2")
		SRKG K 1 A_WeaponReady
		SRKG K 0 A_JumpIfInventory("Shrinker Ammo",1,"Ready2")
		SRKG K 1 A_WeaponReady
		SRKG K 0 A_JumpIfInventory("Shrinker Ammo",1,"Ready2")
		SRKG K 1 A_WeaponReady
		SRKG K 0 A_JumpIfInventory("Shrinker Ammo",1,"Ready2")
		SRKG K 1 A_WeaponReady
		SRKG K 0 A_JumpIfInventory("Shrinker Ammo",1,"Ready2")
		SRKG K 1 A_WeaponReady
		SRKG K 0 A_JumpIfInventory("Shrinker Ammo",1,"Ready2")
		SRKG K 1 A_WeaponReady
		SRKG K 0 A_JumpIfInventory("Shrinker Ammo",1,"Ready2")
		SRKG K 1 A_WeaponReady
		SRKG K 0 A_JumpIfInventory("Shrinker Ammo",1,"Ready2")
		SRKG K 1 A_WeaponReady
		SRKG K 0 A_JumpIfInventory("Shrinker Ammo",1,"Ready2")
		SRKG K 1 A_WeaponReady
		SRKG K 0 A_JumpIfInventory("Shrinker Ammo",1,"Ready2")
		SRKG K 1 A_WeaponReady
		SRKG K 0 A_JumpIfInventory("Shrinker Ammo",1,"Ready2")
		SRKG K 1 A_WeaponReady
		SRKG K 0 A_JumpIfInventory("Shrinker Ammo",1,"Ready2")
		SRKG K 1 A_WeaponReady
		SRKG K 0 A_JumpIfInventory("Shrinker Ammo",1,"Ready2")
		SRKG K 1 A_WeaponReady
		SRKG K 0 A_JumpIfInventory("Shrinker Ammo",1,"Ready2")
		SRKG K 1 A_WeaponReady
		SRKG K 0 A_JumpIfInventory("Shrinker Ammo",1,"Ready2")
		SRKG K 1 A_WeaponReady
		SRKG K 0 A_JumpIfInventory("Shrinker Ammo",1,"Ready2")
		SRKG K 1 A_WeaponReady
		SRKG K 0 A_JumpIfInventory("Shrinker Ammo",1,"Ready2")
		SRKG K 1 A_WeaponReady
		SRKG K 0 A_JumpIfInventory("Shrinker Ammo",1,"Ready2")
		SRKG K 1 A_WeaponReady
		SRKG K 0 A_JumpIfInventory("Shrinker Ammo",1,"Ready2")
		SRKG K 1 A_WeaponReady
		SRKG K 0 A_JumpIfInventory("Shrinker Ammo",1,"Ready2")
		SRKG K 1 A_WeaponReady
		SRKG K 0 A_JumpIfInventory("Shrinker Ammo",1,"Ready2")
		SRKG K 1 A_WeaponReady
		SRKG K 0 A_JumpIfInventory("Shrinker Ammo",1,"Ready2")
		SRKG K 1 A_WeaponReady
		SRKG K 0 A_JumpIfInventory("Shrinker Ammo",1,"Ready2")
		SRKG K 1 A_WeaponReady
		SRKG K 0 A_JumpIfInventory("Shrinker Ammo",1,"Ready2")
		SRKG K 1 A_WeaponReady
		SRKG K 0 A_JumpIfInventory("Shrinker Ammo",1,"Ready2")
		SRKG K 1 A_WeaponReady
		SRKG K 0 A_GiveInventory("Waiting",1)
        Loop
	Ready2:
	    SRKG A 0 A_JumpIfInventory("Waiting",15,"Knuckles")
		SRKG B 1 A_WeaponReady
		SRKG ABCDEFGHIJIHGFEDCBABCDEFGHIJIHGFEDC 1 A_WeaponReady
		SRKG B 0 A_GiveInventory("Waiting",1)
        Loop
	Knuckles:
        SRKG KKKKK 1 A_Lower
        SRKG K 0 A_Lower
		KNUK A 0 A_PlaySound("DukeNukem/Waiting",8)
        KNUK A 0 A_TakeInventory("Waiting",15)
        KNUK A 1 Offset(0,120) 
		KNUK A 1 Offset(0,110)
		KNUK A 1 Offset(0,100)
		KNUK A 1 Offset(0,90)
		KNUK A 1 Offset(0,80)
		KNUK A 1 Offset(0,70)
		KNUK A 1 Offset(0,60)
		KNUK A 1 Offset(0,50)
		KNUK A 1 Offset(0,40)
		KNUK AAABBB 1 A_WeaponReady(WRF_NOFIRE|WRF_NOSWITCH)
		KNUK C 1 A_WeaponReady(WRF_NOFIRE|WRF_NOSWITCH)
        KNUK C 0 A_PlaySound("Duke/KNuckles",5)
		KNUK C 1 A_WeaponReady(WRF_NOFIRE|WRF_NOSWITCH)
		KNUK C 1 A_WeaponReady(WRF_NOFIRE|WRF_NOSWITCH)
        KNUK DDDCCCBBBAAA 1 A_WeaponReady(WRF_NOFIRE|WRF_NOSWITCH)  
        KNUK A 1 Offset(0,40)
		KNUK A 1 Offset(0,50)
		KNUK A 1 Offset(0,60)
		KNUK A 1 Offset(0,70)
		KNUK A 1 Offset(0,80)
		KNUK A 1 Offset(0,90)
		KNUK A 1 Offset(0,100)
		KNUK A 1 Offset(0,110)
		KNUK A 1 Offset(0,120)
        Goto Select
    Deselect:
	    SRKG K 0
        SRKG KKKKK 1 A_Lower
		SRKG K 0 A_TakeInventory("Waiting",15)
        SRKG K 0 A_Lower
        Goto Deselect+4
    Select:
        SRKG K 1 A_Raise
		TNT1 A 0 A_TakeInventory("CheckWeaponMightyFoot",1)
        TNT1 A 0 A_TakeInventory("CheckWeaponPistol",1)
        TNT1 A 0 A_TakeInventory("CheckWeaponDualPistol",1)
        TNT1 A 0 A_TakeInventory("CheckWeaponBlackTail",1)
        TNT1 A 0 A_TakeInventory("CheckWeaponDualBlackTail",1)
        TNT1 A 0 A_TakeInventory("CheckWeaponDesertEagle",1)
        TNT1 A 0 A_TakeInventory("CheckWeaponShotgun",1)
        TNT1 A 0 A_TakeInventory("CheckWeaponSuperShotgun",1)
        TNT1 A 0 A_TakeInventory("CheckWeaponAssaultShotgun",1)
        TNT1 A 0 A_TakeInventory("CheckWeaponExplosiveShotgun",1)
        TNT1 A 0 A_TakeInventory("CheckWeaponChaingun",1)
        TNT1 A 0 A_TakeInventory("CheckWeaponMinigun",1)
        TNT1 A 0 A_TakeInventory("CheckWeaponLMG2028",1)
        TNT1 A 0 A_TakeInventory("CheckWeaponRPG",1)
        TNT1 A 0 A_TakeInventory("CheckWeaponShockCannon",1)
        TNT1 A 0 A_TakeInventory("CheckWeaponPipeBomb",1)
        TNT1 A 0 A_TakeInventory("CheckWeaponLaserTripBomb",1)
        TNT1 A 0 A_TakeInventory("CheckWeaponShrinker",1)
		TNT1 A 0 A_GiveInventory("CheckWeaponShrinker2",1)
        TNT1 A 0 A_TakeInventory("CheckWeaponExpander",1)
        TNT1 A 0 A_TakeInventory("CheckWeaponExecutor",1)
        TNT1 A 0 A_TakeInventory("CheckWeaponDevastator",1)
        TNT1 A 0 A_TakeInventory("CheckWeaponLaserChaingun",1)
        TNT1 A 0 A_TakeInventory("CheckWeaponRailgun",1)
        TNT1 A 0 A_TakeInventory("CheckWeaponFreezethrower",1)
        TNT1 A 0 A_TakeInventory("CheckWeaponIncinerator",1)
        TNT1 A 0 A_TakeInventory("CheckWeaponPulsethrower",1)
		SRKG K 0 A_PlaySound("Weapons/Up",7)
        SRKG K 0 A_Raise
        SRKG K 1 A_Raise
        SRKG K 0 A_Raise
        SRKG K 1 A_Raise
        SRKG K 0 A_Raise
        SRKG K 1 A_Raise
        SRKG K 0 A_Raise
        SRKG K 1 A_Raise
        SRKG K 0 A_Raise
        SRKG KKKKK 1 A_Raise
        SRKG KKKKKKKKKK 2 A_Raise
        Goto Ready
    Fire:
		SRKF A 0 A_JumpIfNoAmmo("FireFail")
		SRKF A 1 Bright OffSet(0,34) A_PlaySound("Shrinker/Shoot",5)
		TNT1 A 0 A_FireCustomMissile("DukeFlashShrinker1",0,0,0)
		TNT1 A 0 A_Light1
        SRKF B 1 Bright OffSet(-2,31)
		TNT1 A 0 A_Light0
        SRKF C 1 Bright OffSet(1,32)
        TNT1 A 0 A_FireCustomMissile("DukeFlashShrinker2",0,0,0)
		TNT1 A 0 A_Light1
		SRKF A 1 Bright OffSet(2,27)
		TNT1 A 0 A_Light0
		SRKF B 1 Bright OffSet(3,31)
        TNT1 A 0 A_FireCustomMissile("DukeFlashShrinker1",0,0,0)
		TNT1 A 0 A_Light1
		SRKF C 1 Bright OffSet(-2,33)
		TNT1 A 0 A_Light0
		SRKF A 1 Bright OffSet(-1,31)
        TNT1 A 0 A_FireCustomMissile("DukeFlashShrinker2",0,0,0)
		TNT1 A 0 A_Light1
		SRKF B 1 Bright OffSet(2,27)
		TNT1 A 0 A_Light0
		SRKF C 1 Bright OffSet(1,35) A_AlertMonsters
        TNT1 A 0 A_FireCustomMissile("DukeFlashShrinker1",0,0,0)
		TNT1 A 0 A_Light1
		SRKF A 1 Bright OffSet(-2,31) A_FireCustomMissile("AlienMorpherAttack",1,1,7)
        TNT1 A 0 A_FireCustomMissile("DukeFlashShrinker2",0,0,0)
		TNT1 A 0 A_Light2
		SRKF B 1 Bright OffSet(4,33)
		TNT1 A 0 A_Light0
		SRKF C 1 Bright OffSet(2,24)
        TNT1 A 0 A_FireCustomMissile("DukeFlashShrinker1",0,0,0)
		TNT1 A 0 A_Light1
		SRKF A 1 Bright OffSet(0,33)
		TNT1 A 0 A_Light0
		SRKF B 1 Bright OffSet(5,27)
        TNT1 A 0 A_FireCustomMissile("DukeFlashShrinker2",0,0,0)
		TNT1 A 0 A_Light1
		SRKF C 1 Bright OffSet(0,31)
		TNT1 A 0 A_Light0
		TNT1 A 0 A_TakeInventory("Waiting",15)
        Goto Ready
	AltFire:
        BOOT C 0 A_JumpIfInventory("PowerStrength",1,22)
		BOOT C 0 A_GunFlash
		BOOT C 0 ACS_ExecuteAlways(500,0,FAS_ActorKick)
		BOOT CCCCCC 1 A_WeaponReady(WRF_NOFIRE|WRF_NOSWITCH) 
		BOOT C 0 A_CustomPunch(Random(26,30),0,0,"MightyBootPuff")
		BOOT C 0 A_TakeInventory("Waiting",15)
        BOOT DDDDD 1 A_WeaponReady(WRF_NOFIRE|WRF_NOSWITCH) 
        BOOT CCCCC 1 A_WeaponReady(WRF_NOFIRE|WRF_NOSWITCH) 
        BOOT C 0 A_Refire
        Goto Ready  
		BOOT C 0 ACS_ExecuteAlways(500,0,FAS_ActorKick)
		BOOT C 0 A_GunFlash
		BOOT CCCCCC 1 A_WeaponReady(WRF_NOFIRE|WRF_NOSWITCH) 
		BOOT C 0 A_CustomPunch(10*Random(26,30),0,0,"MightyBootPuff")
		BOOT C 0 A_TakeInventory("Waiting",15)
        BOOT DDDDD 1 A_WeaponReady(WRF_NOFIRE|WRF_NOSWITCH) 
        BOOT CCCCC 1 A_WeaponReady(WRF_NOFIRE|WRF_NOSWITCH) 
        BOOT C 0 A_Refire
        Goto Ready	 
    AltFlash:  
	    SRKG K 0 A_JumpIfInventory("Shrinker Ammo",1,18)
        SRKG KKKKKKKKKKKKKKKKK 1 A_WeaponReady(WRF_NOFIRE|WRF_NOSWITCH)
        Stop
		SRKG ABCDEFGHIJIHGFEDCB 1 A_WeaponReady(WRF_NOFIRE|WRF_NOSWITCH)
        Stop
	FireFail:
	    SRKG K 1 OffSet(0,34) 
        SRKG K 0 A_PlaySound("Chaingun/Fail",6)
		SRKG K 1 OffSet(-2,31)
        SRKG K 1 OffSet(1,32)
		SRKG K 1 OffSet(2,27)
		SRKG K 1 OffSet(3,31)
		SRKG K 1 OffSet(-2,33)
		SRKG K 1 OffSet(-1,31)
		SRKG K 1 OffSet(2,27)
		SRKG K 1 OffSet(1,35)
		SRKG K 1 OffSet(-2,31) 
		SRKG K 1 OffSet(4,33)
		SRKG K 1 OffSet(2,24)
		SRKG K 1 OffSet(0,33)
		SRKG K 1 OffSet(5,27)
		SRKG K 1 OffSet(0,31)
		TNT1 A 0 A_TakeInventory("Waiting",15)
        Goto Ready	
        }
}

ACTOR DukeFlashShrinker1
{
    Speed 1
    Radius 1
    Height 1
    Damage 0
    Projectile
    +NOCLIP
	+NOTIMEFREEZE
    States
    {
    Spawn:
        TNT1 A 0 
		TNT1 A 1
        Stop
    }
}

ACTOR DukeFlashShrinker2
{
    Speed 1
    Radius 1
    Height 1
    Damage 0
    Projectile
    +NOCLIP
	+NOTIMEFREEZE
    States
    {
    Spawn:
        TNT1 A 0 
		TNT1 A 1
        Stop
    }
}

ACTOR ShrinkerAttack
{
    Radius 6
    Height 6
    Speed 25
    Damage (500)
    Projectile
    DeathSound "Shrinker/Hit"
    Obituary "%o was shrunk by %k's shrinker."
    Scale 0.2
    Decal "ShrinkerLightning"
    DamageType "Damage_Shrinker"
    RenderStyle Add
	+THRUGHOST
	+NOEXTREMEDEATH
    States
    {
    Spawn:
        TNT1 A 1 A_SpawnItemEx("ShrinkerAttackTrailMore",-(MomX/1.2),-(MomY/1.2),(MomZ/1.2*-1),(MomX/1.2),(MomY/1.2),(MomZ/1.2),0,138)
		Loop
    Death:
        SRKX E 1 Bright A_SetScale(0.6,0.6)
        TNT1 AAAAAAAAAAAAAAAAAAAA 0 A_CustomMissile("ShrinkerParticle",0,0,Random(0,360),2,Random(0,360))
	    SRKX E 3 Bright 
		SRKX FGH 4 Bright
        Stop
        }
}

ACTOR AlienMorpherAttack : MorphProjectile
{
    Radius 6
    Height 6
    Speed 25
    MorphProjectile.PlayerClass "ShrunkDukePlayer"
    MorphProjectile.MorphStyle MRF_UNDOBYTOMEOFPOWER
    MorphProjectile.Duration 250
    DeathSound "Shrinker/Hit"
    Scale 0.2
    Decal "ShrinkerLightning"
    RenderStyle Add
    DamageType "Alien_Shrinker"
	+THRUGHOST
    States
    {
    Spawn:
        TNT1 A 1 A_SpawnItemEx("ShrinkerAttackTrailMore",-(MomX/1.2),-(MomY/1.2),(MomZ/1.2*-1),(MomX/1.2),(MomY/1.2),(MomZ/1.2),0,138)
		Loop
    Death:
        SRKX E 1 Bright A_SetScale(0.6,0.6)
        TNT1 AAAAAAAAAAAAAAAAAAAA 0 A_CustomMissile("ShrinkerParticle",0,0,Random(0,360),2,Random(0,360))
	    SRKX E 3 Bright 
		SRKX FGH 4 Bright
        Stop
        }
}

ACTOR ShrinkerAttackTrailMore
{
	Radius 6
    Height 6
	Projectile
	RenderStyle Add
	Scale 0.6
	+NOGRAVITY
    +DONTSPLASH
    +CLIENTSIDEONLY
	States
	{
	Spawn:
	    SRKX A 0 
		SRKX A 0 A_Jump(128,"See1","See2","See3","See4")
	See1:
	    SRKX A 1 Bright A_FadeOut(0.08)
	    Loop
	See2:
	    SRKX B 1 Bright A_FadeOut(0.08)
	    Loop
	See3:
	    SRKX C 1 Bright A_FadeOut(0.08)
	    Loop
	See4:
	    SRKX D 1 Bright A_FadeOut(0.08)
	    Loop
	Death:
	    TNT1 A 1
	    Stop
	    }
}

ACTOR ShrinkerMorph : MorphProjectile
{
    Radius 6
    Height 6
    Speed 25
    MorphProjectile.PlayerClass "ShrunkDukePlayer"
    MorphProjectile.MorphStyle MRF_UNDOBYTOMEOFPOWER
    MorphProjectile.Duration 250
    DeathSound "Shrinker/Hit"
    Scale 0.2
    Decal "ShrinkerLightning"
    RenderStyle Add
    DamageType "Alien_Shrinker"
	+THRUGHOST
    States
    {
    Spawn:
        TNT1 A 1 A_SpawnItemEx("ShrinkerAttackTrailMore",-(MomX/1.2),-(MomY/1.2),(MomZ/1.2*-1),(MomX/1.2),(MomY/1.2),(MomZ/1.2),0,138)
		Loop
    Death:
        SRKX E 1 Bright A_SetScale(0.6,0.6)
        TNT1 AAAAAAAAAAAAAAAAAAAA 0 A_CustomMissile("ShrinkerParticle",0,0,Random(0,360),2,Random(0,360))
	    SRKX E 3 Bright 
		SRKX FGH 4 Bright
        Stop
        }
}

ACTOR ShrinkTime : Inventory
{
    Inventory.Amount 0
    Inventory.MaxAmount 1
}

ACTOR ShrunkEnemy
{
    Monster
    Scale 0.2
    MeleeRange 10
    -COUNTKILL
}

ACTOR ShrinkerParticle
{
    Height 0
    Radius 0
    Mass 0
    +MISSILE
    +NOBLOCKMAP
    -NOGRAVITY
    +DOOMBOUNCE
	+MOVEWITHSECTOR
    +FORCEXYBILLBOARD
    BounceFactor 0.2
    Gravity 0.8
    RenderStyle Add
    Scale 0.030
    Speed 10
    States
    {
    Spawn:
    Death:
        LENG CCCCCCCCCCCCCCCCCCCCCCCCCCCCCC 2 Bright A_FadeOut(0.04)   
        Stop
        }
}