actor PlasmaSSG : SuperShotgun
{
  spawnid 33
  Tag "Plasma Super Shotgun"
  obituary "%o was splattered by %k's Plasma Super Shotgun."
  radius 20
  height 16
  attacksound "plasmashotgun/fire"
  Inventory.PickupSound "weapons/pickupssg"
  Weapon.UpSound "weapons/pickupssg"
  inventory.pickupmessage "You got the Plasma Super Shotgun!"
  weapon.selectionorder 400
  weapon.kickback 100
  weapon.ammotype "NewCell"
  weapon.slotnumber 3
  weapon.ammouse 20
  weapon.ammogive 80
  states
  {
  Ready:
	TNT1 A 0 A_PlayWeaponSound("weapons/pickupssg")
    BHT2 VUSEDRCQBA 1
  Ready2: 
    BHT2 A 1 A_WeaponReady
	TNT1 A 0 A_JumpIfInventory("HandGrenadeAction",1,"GrenadeCheck")
	TNT1 A 0 A_JumpIfInventory("MineAction",1,"MineCheck")
    loop
  Deselect:
	TNT1 A 0 A_PlayWeaponSound("weapons/weapondown")
	TNT1 A 0 A_Lower
    BHT2 A 1 A_Lower
    Goto Deselect+1
  Select:
    BHT2 A 0 A_Raise
    loop
  Fire:
    BHT2 A 1
    BHT2 A 0 A_GunFlash
    BHT2 M 2 Bright A_FireBullets (11.2,7.1,20,15,"PlayerShotgunPlasmaPuff")
    BHT2 N 2 Bright
    BHT2 O 1 Bright
    BHT2 BQCR 1
    BHT2 D 2 A_CheckReload
    BHT2 RC 2
    BHT2 ES 2 A_PlayWeaponSound ("NemesisSSG/Open")
    BHT2 FT 1
    BHT2 G 1
    BHT2 H 2
    BHT2 I 3 A_PlayWeaponSound ("NemesisSSG/Load")
    BHT2 JKL 2
    BHT2 SE 0 A_PlayWeaponSound ("NemesisSSG/Close")
    BHT2 SEDR 1
	BHT2 CQB 2
    BHT2 A 2 A_ReFire
    goto Ready2
  Hold:
    BHT2 A 1
    BHT2 A 0 A_GunFlash
    BHT2 M 2 Bright A_FireBullets (11.2,7.1,20,15,"PlayerShotgunPlasmaPuff")
    BHT2 N 2 Bright
    BHT2 O 1 Bright
    BHT2 BQCR 1
    BHT2 D 2 A_CheckReload
    BHT2 RC 2
    BHT2 ES 2 A_PlayWeaponSound ("NemesisSSG/Open")
    BHT2 FT 1
    BHT2 G 1
    BHT2 H 2
    BHT2 I 3 A_PlayWeaponSound ("NemesisSSG/Load")
    BHT2 JKL 2
    BHT2 SE 0 A_PlayWeaponSound ("NemesisSSG/Close")
    BHT2 SEDR 1
	BHT2 CQB 2
    BHT2 A 2 A_ReFire
    goto Ready2
  Flash:
    NULL A 2 bright A_Light1
    NULL A 3 bright A_Light2
    NULL A 2 bright A_Light1
    NULL A 0 bright A_Light0
    stop
  GrenadeCheck:
	TNT1 A 0 A_JumpIfInventory("HandGrenadeAmmo",1,"GrenadeToss")
	TNT1 A 0 A_TakeInventory("HandGrenadeAction",1)
	Goto Ready2
  GrenadeToss:
	TNT1 A 0 A_PlayWeaponSound("weapons/weapondown") 
	BHT2 ABQCRDESUV 1
	TNT1 A 4
	HGRN ABCDEFGHI 1
	TNT1 A 0 A_PlayWeaponSound("weapons/hgrenadepin")
	HGRN JKLM 2
	TNT1 A 11
	TNT1 A 0 A_PlayWeaponSound("weapons/hgrenadethrow")
	TNT1 A 0 A_TakeInventory("HandGrenadeAmmo",1,TIF_NOTAKEINFINITE)
	HGRN N 1 A_FireCustomMissile("ThrownGrenade",0,0,0,0)
	HGRN OPQRS 1
	HGRN TU 2
	TNT1 A 6 A_TakeInventory("HandGrenadeAction",1)
	BHT2 VUSEDRCQBA 1
	Goto Ready2
  MineCheck:
	TNT1 A 0 A_JumpIfInventory("MineAmmo",1,"MineToss")
	TNT1 A 0 A_TakeInventory("MineAction",1)
	Goto Ready2
  MineToss:
	TNT1 A 0 A_PlayWeaponSound("weapons/weapondown")
	BHT2 ABQCRDESUV 1
	TNT1 A 8
	TNT1 A 0 A_PlayWeaponSound("weapons/hgrenadethrow")
	MINE ABCDEF 1
	TNT1 A 0 A_TakeInventory("MineAmmo",1,TIF_NOTAKEINFINITE)
	MINE G 1 A_FireCustomMissile("ThrownMine",0,0,0,0,false)
	MINE HI 1
	MINE JKLM 1
	TNT1 A 5 A_TakeInventory("MineAction",1)
	BHT2 VUSEDRCQBA 1
	Goto Ready2
  Spawn:
    BGN2 A -1
    stop
  }
}

Actor PSSGShotgunPlasmaPuff
{
  Radius 6
  Height 6
  +NOBLOCKMAP
  +NOGRAVITY
  +ACTIVATEIMPACT
  +ACTIVATEPCROSS
  +NOTELEPORT 
  +PUFFONACTORS
  +BLOODLESSIMPACT
  +FORCERADIUSDMG
  +ALWAYSPUFF
  +FOILINVUL
  Scale 0.5 
  Renderstyle Add
  Alpha 0.75
  Decal Bulletchip
  //DamageType "Marine"
  States
  {
  Spawn:
	TNT1 A 0
    TNT1 A 0 A_SpawnItemEx("BlueParticleSpawner",0,0,0,0,0,0,0,128)
	TNT1 AAA 0 A_CustomMissile("Kaboom6", 0, 0, random(0,360), 2, random(0,360))
	TNT1 AAA 0 A_CustomMissile("SmokeFX4", 0, 0, random(0,360), 2, random(0,360))
    BFCG A 3 Bright A_Explode(4,64)
    BFCG BCDEF 3 Bright
    Stop
  }
}