Actor BFG10k : DoomWeapon// Replaces BFG10K
{
  Radius 20
  Height 20
  Weapon.AmmoUse 15
  Weapon.AmmoGive 90
  Weapon.AmmoType "Cell"
  Weapon.Kickback 100
  Weapon.SelectionOrder 8500
  Inventory.Pickupmessage "You got the BFG10000!  HELL YES!"
  Obituary "%o was blasted by %k's BFG10K"
  Decal BFGLightning
  +WEAPON.CHEATNOTWEAPON
  States
  {
  Spawn:
    BFG2 A -1
    Stop
  Ready:
  SteadY:
    BG2G A 0 A_PlaySound ("Weapons/BFG10KIdle")
    BG2G A 3 A_WeaponReady
	TNT1 A 0 A_JumpIfInventory("Kicking",1,"DoKick")
        TNT1 A 0 A_JumpIfInventory("Taunting",1,"Taunt")
		TNT1 A 0 A_JumpIfInventory("Salute1", 1, "Salute")
		TNT1 A 0 A_JumpIfInventory("Salute2", 1, "Salute")
		
		    BG2G B 3 A_WeaponReady
	TNT1 A 0 A_JumpIfInventory("Kicking",1,"DoKick")
        TNT1 A 0 A_JumpIfInventory("Taunting",1,"Taunt")
		TNT1 A 0 A_JumpIfInventory("Salute1", 1, "Salute")
		TNT1 A 0 A_JumpIfInventory("Salute2", 1, "Salute")
		
		    BG2G C 3 A_WeaponReady
	TNT1 A 0 A_JumpIfInventory("Kicking",1,"DoKick")
        TNT1 A 0 A_JumpIfInventory("Taunting",1,"Taunt")
		TNT1 A 0 A_JumpIfInventory("Salute1", 1, "Salute")
		TNT1 A 0 A_JumpIfInventory("Salute2", 1, "Salute")
		
		    BG2G D 3 A_WeaponReady
	TNT1 A 0 A_JumpIfInventory("Kicking",1,"DoKick")
        TNT1 A 0 A_JumpIfInventory("Taunting",1,"Taunt")
		TNT1 A 0 A_JumpIfInventory("Salute1", 1, "Salute")
		TNT1 A 0 A_JumpIfInventory("Salute2", 1, "Salute")
    Loop
  Deselect:
    BG2G E 1 A_Lower
    Loop
  Select:
  	TNT1 A 0 A_Takeinventory("FistsSelected",1)
	TNT1 A 0 A_Takeinventory("SawSelected",1)
	TNT1 A 0 A_Takeinventory("ShotgunSelected",1)
	TNT1 A 0 A_Takeinventory("SSGSelected",1)
	TNT1 A 0 A_Takeinventory("MinigunSelected",1)
	TNT1 A 0 A_Takeinventory("PlasmaGunSelected",1)
	TNT1 A 0 A_Takeinventory("RocketLauncherSelected",1)
    TNT1 A 0 A_Takeinventory("GrenadeLauncherSelected",1)
	TNT1 A 0 A_Takeinventory("BFGSelected",1)
	TNT1 A 0 A_Giveinventory("BFG10kSelected",1)
	TNT1 A 0 A_Takeinventory("RailGunSelected",1)
	TNT1 A 0 A_Takeinventory("SubMachineGunSelected",1)
	TNT1 A 0 A_Takeinventory("RevenantLauncherSelected",1)
	TNT1 A 0 A_Takeinventory("LostSoulSelected",1)
	TNT1 A 0 A_Takeinventory("FlameCannonSelected",1)
	TNT1 A 0 A_Takeinventory("HasBarrel",1)
	
    BG2G E 1 A_Raise
    wait
  Fire:
    BG2G E 20 A_PlaySound("Weapons/BFG10KF")
    BG2G FGHIJ 4
    Goto Hold
  Hold:
    BG2G K 1 BRIGHT A_FireCustomMissile("GreenFlareSpawn",0,0,0,0)
	TNT1 A 0 A_PlaySound("BFGFIRE")
    BG2G L 1 BRIGHT A_FireCustomMissile("GreenFlareSpawn",0,0,0,0)
	TNT1 A 0 A_FireBullets(0, 0, 1, 0, "BrutalBFG10kShot")
    BG2G M 1 BRIGHT A_FireCustomMissile("GreenFlareSpawn",0,0,0,0)
	BG2G ABCDAB 1 BRIGHT
    BG2G N 0 A_ReFire
    BG2G O 35 A_PlaySound("Weapons/BFG10KCool")
    Goto Ready
	
	DoKick:
	    TNT1 A 0
		TNT1 A 0 A_Takeinventory("Zoomed",1)
        TNT1 A 0 A_ZoomFactor(1.0)
		TNT1 A 0 A_Takeinventory("ADSmode",1)
		NULL A 0 A_JumpIf (momZ > 0, "AirKick")
		NULL A 0 A_JumpIf (momZ < 0, "AirKick")
		NULL A 0 A_JumpIf (pitch > 32, "LowKickChecker1")
	InitializeNormalKick:
        TNT1 A 0 A_jumpifinventory("PowerStrength",1,"BerserkerKick")
		TNT1 A 0 A_PlaySound("KICK")
		TNT1 A 0 SetPlayerProperty(0,1,0)
		STMP ABCDEF 1
		//TNT1 A 0 A_Custompunch(4,0,1,"KickPuff")
		RIFF A 0 A_FireCustomMissile("KickAttack", 0, 0, 0, -7)
        STMP G 4
		KICK A 0 A_Takeinventory("Kicking",1)
		STMP HIJK 2
		TNT1 A 0 A_JumpIfInventory("GoFatality", 1, "Steady")
		TNT1 A 0 SetPlayerProperty(0,0,0)
		NULL A 0 A_TakeInventory("KickHasHit",1)
		Goto Ready+6
	LowKickChecker1:
	    TNT1 A 1
	    NULL A 0 A_JumpIf (pitch > 90, "InitializeNormalKick")
		Goto LowKick
		
	LowKick:
		TNT1 A 0 A_PlaySound("KICK")
		TNT1 A 0 SetPlayerProperty(0,1,0)
		TNT1 A 0 A_Recoil(-2)
		TNT1 A 0 A_SpawnItemEx ("PLOFT5",15,0,0,0,0,0,0,SXF_NOCHECKPOSITION,0)
		KICK UVW 1 A_SetPitch(-8.0 + pitch)
		KICK X 1
		RIFF A 0 A_FireCustomMissile("KickAttackLow", 0, 0, 0, 0)
		KICK Y 1
        KICK Z 4
		KICK YX 1
		KICK A 0 A_Takeinventory("Kicking",1)
		KICK WVU 1
		TNT1 A 0 A_JumpIfInventory("GoFatality", 1, "Steady")
		TNT1 A 0 SetPlayerProperty(0,0,0)
		NULL A 0 A_TakeInventory("KickHasHit",1)
		Goto Ready+6	
		
    BerserkerKick:
		TNT1 A 0 A_PlaySound("KICK")
		TNT1 A 0 SetPlayerProperty(0,1,0)
		KICK ABCDEFG 1
        RIFF A 0 A_FireCustomMissile("SuperKickAttack", 0, 0, 0, -7)
        KICK H 3
		KICK A 0 A_Takeinventory("Kicking",1)
		KICK IGFEDCBA 1
		TNT1 A 0 A_JumpIfInventory("GoFatality", 1, "Steady")
		TNT1 A 0 SetPlayerProperty(0,0,0)
		NULL A 0 A_TakeInventory("KickHasHit",1)
		Goto Ready+6
	
	AirKick:
	    TNT1 A 0 A_jumpifinventory("PowerStrength",1,"SuperAirKick")
		TNT1 A 0 A_PlaySound("KICK")
		TNT1 A 0 A_Recoil (-2)
		KICK JKLMNO 1
        RIFF A 0 A_FireCustomMissile("AirKickAttack", 0, 0, 0, -8)
        KICK P 3
		KICK A 0 A_Takeinventory("Kicking",1)
		KICK QRST 2
		TNT1 A 0 A_JumpIfInventory("GoFatality", 1, "Steady")
		NULL A 0 A_TakeInventory("KickHasHit",1)
		Goto Ready+6
		
	
	SuperAirKick:
	    TNT1 A 0
		TNT1 A 0 A_PlaySound("KICK")
		TNT1 A 0 A_Recoil (-2)
		KICK JKLMNO 1
        RIFF A 0 A_FireCustomMissile("SuperAirKickAttack", 0, 0, 0, -8)
        KICK P 3
		KICK A 0 A_Takeinventory("Kicking",1)
		KICK QRST 2
		TNT1 A 0 A_JumpIfInventory("GoFatality", 1, "Steady")
		NULL A 0 A_TakeInventory("KickHasHit",1)
		Goto Ready+6
	
	Taunt:
		TNT1 A 0 A_Takeinventory("Zoomed",1)
        TNT1 A 0 A_ZoomFactor(1.0)
		TNT1 A 0 A_Takeinventory("Taunting",1)
		TNT1 A 0 A_JumpIfInventory("RealismMode", 1, "CheckGrab")
        TNT1 A 10
		FUCK A 1
		TNT1 A 0 BRIGHT A_FireCustomMissile("Taunter", 0, 0, -1, 0)
		TNT1 A 0 BRIGHT A_FireCustomMissile("Taunter", -9, 0, -1, 0)
		TNT1 A 0 BRIGHT A_FireCustomMissile("Taunter", 9, 0, -1, 0)
        FUCK B 1 A_PlaySound("FUCK", 2)
        FUCK CD 1 A_AlertMonsters
		FUCK E 15 A_Takeinventory("Taunting",1)
        FUCK DCBA 1
        TNT1 A 10
		Goto Ready
	Salute:
	    TNT1 A 0 SetPlayerProperty(0,1,0)
		TNT1 A 0 A_ALertMonsters
		SALU ABCDEDCDEDCDEDCBA 4
		TNT1 A 0 A_TakeInventory("Salute1",1)
		TNT1 A 0 A_TakeInventory("Salute2",1)
		TNT1 A 0 SetPlayerProperty(0,0,0)
		Goto Ready
		
	CheckGrab:
	    TNT1 A 0 
		TNT1 A 0 A_JumpIfTargetInLOS("CheckDistanceGrab")
		Goto Ready+6
	CheckDistanceGrab:
	    TNT1 A 0 
		TNT1 A 0 A_JumpIfCloser(100, "Grab")
		Goto Ready+6
	CheckIfCanGrab:
	    TNT1 A 0 
		TNT1 A 0 A_JumpIfInTargetInventory("CanGrab", 1, "Grab")
		Goto Ready+6	
	Grab:
	    PKUP ABC 2
		TNT1 A 0 A_CustomMissile("PickupProjectile")
		PKUP DEF 2
		Goto Ready

  }
}


Actor BrutalBFG10kShot
{
  Radius 11
  Height 8
  Speed 20
  Damage 240
  DamageType Desintegrate
  +NoBlockMap
  +NoGravity
  +ActivateImpact
  +ActivatePCross
  +NoTeleport
  +PuffOnActors
  +PuffGetsOwner
  +ForceRadiusDmg
  Renderstyle Add
  Alpha 0.75
  SeeSound "Weapons/BFG10KX"
  AttackSound "Weapons/BFG10KX"
  Obituary "$OB_BFG10K"
  States
  {
  Spawn:
    BFE1 A 0 Bright
    BFE1 A 3 Bright A_Explode(160, 128, 1)
	TNT1 A 0 Bright A_SpawnItem("GreenShockWave",0,0,0)
	    EXPL AAAAAAA 0 A_CustomMissile ("BFGBIGFOG", 0, 0, random (0, 360), 2, random (0, 360))
        TNT1 AAAAAAA 0 A_CustomMissile ("GreenExplosionFire", 2, 0, random (0, 360), 2, random (0, 360))
        EXPL AA 0 A_CustomMissile ("BigNeoSmoke", 0, 0, random (0, 360), 2, random (0, 360))

    BFE1 BCDEF 2 Bright
	TNT1 A 0 A_PlaySound("FAREXPL")
	TNT1 AAAAAAAA 2 A_CustomMissile ("BigNeoSmoke", 2, 0, random (0, 360), 2, random (0, 360))
    Stop
  }
}




ACTOR GreenExplosionFire
{
	Game Doom
	Radius 1
	Height 1
	Speed 3
	Damage 0 
    +NOBLOCKMAP
    +NOTELEPORT
    +DONTSPLASH
	+MISSILE
	+FORCEXYBILLBOARD
    +CLIENTSIDEONLY
    +NOINTERACTION
	+NOCLIP
	RenderStyle Add
    DamageType Flames
    Scale 2.0
	Alpha 1
	Gravity 0
	States
	{
    Spawn:
        TNT1 A 1
        EXPG ABCDEFG 3 BRIGHT
        Stop
	}
}


ACTOR GreenExplosionFireSmall: GreenExplosionFire
{
    Scale 0.6
}