ACTOR BrutalWeapon : DoomWeapon
{
	Weapon.BobRangeX 0.2
	Weapon.BobRangeY 0.4
	Weapon.BobSpeed 2.9
	Weapon.BobStyle Smooth
	VisibleToPlayerClass BDoomer, Doomer2, Doomer3, ArcadeDoomer, ArcadeDoomer2, ArcadeDoomer3, TacticalDoomer
	Inventory.ForbiddenTo Purist
	+Inventory.RestrictAbsolutely
	+INVENTORY.NOSCREENFLASH
	States
	{
	GoingToReady:
		TNT1 A 0
		TNT1 A 0 A_TakeInventory("BDWEaponACtion", 1)
		TNT1 A 0 A_TakeInventory("ExecuteDownedEnemy", 1)
		TNT1 A 0 A_TakeInventory("GoFatality", 1)
		TNT1 A 0 A_TakeInventory("Kicking",1)
		TNT1 A 0 A_TakeInventory("Salute1", 1)
		TNT1 A 0 A_TakeInventory("Salute2", 1)
		TNT1 A 0 A_TakeInventory("Taunting",1)
		TNT1 A 0 A_TakeInventory("TossGrenade",1)
		TNT1 A 0 A_TakeInventory("Reloading",1)
		TNT1 A 1 A_Raise
		Goto Ready3

	Steady:
		TNT1 A 2
		Goto GoingToReady

	Ready3:
		TNT1 A 2 A_WeaponReady
		TNT1 A 0 A_JUMP(256,"READY3")//only way to force a weapon to jump out of this inherited state
		Loop

	WEaponActions:
		  TNT1 A 0
		  TNT1 A 0 A_TakeInventory("BDWEaponACtion", 1)
		  TNT1 A 0 A_JumpIfInventory("ExecuteDownedEnemy", 1, "DoExecution")
		  TNT1 A 0 A_JumpIfInventory("GoFatality", 1, "Steady")
		  TNT1 A 0 A_JumpIfInventory("Kicking",1,"DoKick")
		  TNT1 A 0 A_JumpIfInventory("Salute1", 1, "Salute")
		  TNT1 A 0 A_JumpIfInventory("Salute2", 1, "Salute")
		  TNT1 A 0 A_JumpIfInventory("Taunting",1,"Taunt")
		  TNT1 A 0 A_JumpIfInventory("TossGrenade",1,"TossGrenade")
		  TNT1 A 0 A_JumpIfInventory("Reloading",1,"Reload")
		  TNT1 A 2
		  Goto GoingToReady

	Tryuse:
		TNT1 A 0
		TNT1 A 0 A_TakeInventory("PressedUse", 100)
		RIFF A 0 A_FireCustomMissile("UseAttack", 0, 0, 0, 0)
		RIFF A 0 A_FireCustomMissile("StealthAttack", 0, 0, 0, -7)
		TNT1 A 1
		TNT1 A 0 A_JumpIfInventory("FlashlightOn", 1, "WaitFlashOn")
		TNT1 A 0 A_JumpIfInventory("PressedUse", 1, "Interrupt")
		Goto Flash

	Interrupt:
		TNT1 A 0
		TNT1 A 0 A_TakeInventory("PRessedUse", 1)
		TNT1 A 4
		TNT1 A 0 A_JumpIfInventory("PressedUse", 1, "Interrupt")
		Goto Flash

	WaitFlashOn:
	    TNT1 A 0
		TNT1 A 0 A_TakeInventory("PRessedUse", 1)
		RIFF A 0 A_FireCustomMissile("FlashlightProjectile", 0, 0, 0, 0, 0, 0)
		RIFF A 0 A_FireCustomMissile("FlashlightProjectile2", 0, 0, 0, 0, 0, 0)
		RIFF A 0 A_FireCustomMissile("FlashlightProjectile3", 0, 0, 0, 0, 0, 0)
		TNT1 A 1 BRIGHT

		RIFF A 0 A_FireCustomMissile("FlashlightProjectile", 0, 0, 0, 0, 0, 0)
		RIFF A 0 A_FireCustomMissile("FlashlightProjectile2", 0, 0, 0, 0, 0, 0)
		RIFF A 0 A_FireCustomMissile("FlashlightProjectile3", 0, 0, 0, 0, 0, 0)
		TNT1 A 1 BRIGHT

		RIFF A 0 A_FireCustomMissile("FlashlightProjectile", 0, 0, 0, 0, 0, 0)
		RIFF A 0 A_FireCustomMissile("FlashlightProjectile2", 0, 0, 0, 0, 0, 0)
		RIFF A 0 A_FireCustomMissile("FlashlightProjectile3", 0, 0, 0, 0, 0, 0)
		TNT1 A 1 BRIGHT

		RIFF A 0 A_FireCustomMissile("FlashlightProjectile", 0, 0, 0, 0, 0, 0)
		RIFF A 0 A_FireCustomMissile("FlashlightProjectile2", 0, 0, 0, 0, 0, 0)
		RIFF A 0 A_FireCustomMissile("FlashlightProjectile3", 0, 0, 0, 0, 0, 0)
		TNT1 A 1 BRIGHT
		TNT1 A 0 A_JumpIfInventory("PressedUse", 1, "WaitFlashOn")
		Goto Flash

	Flash:
		TNT1 A 0
		TNT1 A 0 A_JumpIfHealthLower(1,"LightEnd")
		TNT1 A 0 A_JumpIfInventory("SwitchFlashlight",1,"SwitchFlashlight")
		TNT1 A 0 A_JumpIfInventory("FlashlightOn", 1, "FlashOn")
		TNT1 A 0 A_JumpIfInventory("PressedUse", 1, "TryUse")
		TNT1 A 4
		Goto Flash

	LightEnd:
		TNT1 A 0
		Stop

	FlashOn:
	    TNT1 A 0
		TNT1 A 0 A_TakeInventory("PRessedUse", 1)
		RIFF A 0 A_FireCustomMissile("FlashlightProjectile", 0, 0, 0, 0, 0, 0)
		RIFF A 0 A_FireCustomMissile("FlashlightProjectile2", 0, 0, 0, 0, 0, 0)
		RIFF A 0 A_FireCustomMissile("FlashlightProjectile3", 0, 0, 0, 0, 0, 0)
		TNT1 A 1 BRIGHT

		RIFF A 0 A_FireCustomMissile("FlashlightProjectile", 0, 0, 0, 0, 0, 0)
		RIFF A 0 A_FireCustomMissile("FlashlightProjectile2", 0, 0, 0, 0, 0, 0)
		RIFF A 0 A_FireCustomMissile("FlashlightProjectile3", 0, 0, 0, 0, 0, 0)
		TNT1 A 1 BRIGHT
		TNT1 A 0 A_JumpIfInventory("PressedUse", 1, "TryUse")

		RIFF A 0 A_FireCustomMissile("FlashlightProjectile", 0, 0, 0, 0, 0, 0)
		RIFF A 0 A_FireCustomMissile("FlashlightProjectile2", 0, 0, 0, 0, 0, 0)
		RIFF A 0 A_FireCustomMissile("FlashlightProjectile3", 0, 0, 0, 0, 0, 0)
		TNT1 A 1 BRIGHT

		RIFF A 0 A_FireCustomMissile("FlashlightProjectile", 0, 0, 0, 0, 0, 0)
		RIFF A 0 A_FireCustomMissile("FlashlightProjectile2", 0, 0, 0, 0, 0, 0)
		RIFF A 0 A_FireCustomMissile("FlashlightProjectile3", 0, 0, 0, 0, 0, 0)
		TNT1 A 1 BRIGHT
		TNT1 A 0 A_JumpIfInventory("PressedUse", 1, "TryUse")
		Goto Flash

	SwitchFlashlight:
		TNT1 A 0
		TNT1 A 0 A_TakeInventory("SwitchFlashlight", 1)
		TNT1 A 0 A_JumpIfInventory("FlashlightOn",1,"TurnFlashOff")
		TNT1 A 0 A_Giveinventory("FlashlightOn",1)
		TNT1 A 0 A_PlaySound("FLASHON", 5)
        Goto Flash

	TurnFlashOff:
		TNT1 A 0 A_Takeinventory("FlashlightOn",1)
		TNT1 A 0 A_Light0
		TNT1 A 0 A_PlaySound("FLASHOFF", 5)
        Goto Flash

	RifleBash://Not Used
		TNT1 A 0
		TNT1 A 0 A_Takeinventory("Zoomed",1)
        TNT1 A 0 A_ZoomFactor(1.0)
		TNT1 A 0 A_Takeinventory("ADSmode",1)
		TNT1 A 0 A_PlaySound("KICK")
		RIBA ACE 1
		RIFF A 0 A_FireCustomMissile("KickAttack", 0, 0, 0, -17)
		RIBA G 5
		RIBA A 0 A_Takeinventory("Kicking",1)
		RIBA FEDCBA 1
		TNT1 AAAA 1
		TNT1 A 0 A_JumpIfInventory("Kicking",1,"RifleBash")
		TNT1 A 0 SetPlayerProperty(0,0,0)
		RIBA A 0 A_Takeinventory("Kicking",1)
		Goto GoingToReady

	DoKick:
		TNT1 A 1 A_JumpIfInventory("ExecuteDownedEnemy", 1, "DoExecution")
		TNT1 A 1 A_JumpIfInventory("GoFatality", 1, "Steady")
		TNT1 A 0 A_Takeinventory("Zoomed",1)
		TNT1 A 0 A_Takeinventory("PowerLightAmp",1)
		TNT1 A 0 A_Takeinventory("ADSmode",1)
        TNT1 A 0 A_ZoomFactor(1.0)
		NULL A 0 A_JumpIf (momZ > 0, "AirKick")
		NULL A 0 A_JumpIf (momZ < 0, "AirKick")
		TNT1 A 0 A_JumpIfInventory("IsCrouching", 1, "SlideAttack")
        TNT1 A 0 A_jumpifinventory("PowerStrength",1,"BerserkerKick")
		TNT1 A 0 A_PlaySound("KICK")
		TNT1 A 0 SetPlayerProperty(0,1,0)
		KICK BCD 1
		RIFF A 0 A_FireCustomMissile("KickAttack", 0, 0, 0, -17)
        KICK H 5
		KICK A 0 A_Takeinventory("Kicking",1)
		KICK I 1
		KICK GFEDCBA 1
		TNT1 A 0 A_GiveInventory("UsedStamina", 15)
		TNT1 A 0 A_JumpIfInventory("IsCurbstompingZombieman", 1, "Steady")
	    TNT1 A 0 A_JumpIfInventory("IsCurbstompingSergeant", 1, "Steady")
		TNT1 A 0 SetPlayerProperty(0,0,0)
		RIBA A 0 A_Takeinventory("Kicking",1)
		Goto GoingToReady

    BerserkerKick:
		TNT1 A 0 A_PlaySound("KICK")
		TNT1 A 0 SetPlayerProperty(0,1,0)
		KICK BCD 1
        RIFF A 0 A_FireCustomMissile("SuperKickAttack", 0, 0, 0, -17)
        KICK H 5
		KICK A 0 A_Takeinventory("Kicking",1)
		KICK I 1
		KICK GFEDCBA 1
		TNT1 A 0 A_GiveInventory("UsedStamina", 15)
		TNT1 A 0 A_JumpIfInventory("IsCurbstompingZombieman", 1, "Steady")
	    TNT1 A 0 A_JumpIfInventory("IsCurbstompingSergeant", 1, "Steady")
		TNT1 A 0 SetPlayerProperty(0,0,0)
		RIBA A 0 A_Takeinventory("Kicking",1)
		Goto GoingToReady

	AirKick:
	    TNT1 A 0 A_jumpifinventory("PowerStrength",1,"SuperAirKick")
		TNT1 A 0 A_PlaySound("KICK")
		TNT1 A 0 A_Recoil (-6)
		KICK JKLMN 1
        RIFF A 0 A_FireCustomMissile("AirKickAttack", 0, 0, 0, -17)
        KICK O 3
		KICK A 0 A_Takeinventory("Kicking",1)
		KICK PQRST 2
		TNT1 A 0 A_GiveInventory("UsedStamina", 20)
		RIBA A 0 A_Takeinventory("Kicking",1)
		Goto GoingToReady

	SuperAirKick:
		TNT1 A 0 A_PlaySound("KICK")
		TNT1 A 0 A_Recoil (-6)
		KICK JKLMN 1
        RIFF A 0 A_FireCustomMissile("SuperAirKickAttack", 0, 0, 0, -17)
        KICK O 3
		KICK A 0 A_Takeinventory("Kicking",1)
		KICK PQRST 2
		TNT1 A 0 A_GiveInventory("UsedStamina", 20)
		RIBA A 0 A_Takeinventory("Kicking",1)
		Goto GoingToReady

	SlideAttack:
		TNT1 A 0 SetPlayerProperty(0,1,0)
		KICK A 0 A_Takeinventory("Kicking",1)
		TNT1 A 0 A_PlaySound("KICK")
		TNT1 A 0 A_Recoil (-6)
		TNT1 A 0 A_PlaySound("SlideKickStart", 5)
		KICK LMN 1
		TNT1 A 0 A_SetPItch(10)
		TNT1 A 0 A_JumpIfInventory("PowerStrength",1,"BerserkSlide")
        RIFF A 0 A_FireCustomMissile("SlideAttack", 0, 0, 0, 10)
        KICK O 1
		TNT1 A 0 A_GiveInventory("UsedStamina", 4)
		TNT1 A 0 A_Recoil (-2)
		TNT1 A 0 A_SetPItch(10)
		TNT1 A 0 A_JumpIfInventory("KickHasHit", 1, "FinishSlideHitWall")
		TNT1 A 0 A_JumpIfInventory("IsCrouching", 1, 1)
		Goto FinishSlide
		KICK O 1 A_FireCustomMissile("SlideAttack", 0, 0, 0, 10)
		TNT1 A 0 A_Recoil (-2)
		TNT1 A 0 A_SetPItch(10)
		TNT1 A 0 A_JumpIfInventory("KickHasHit", 1, "FinishSlideHitWall")
		TNT1 A 0 A_JumpIfInventory("IsCrouching", 1, 1)
		Goto FinishSlide

		KICK O 1 A_FireCustomMissile("SlideAttack", 0, 0, 0, 10)
		TNT1 A 0 A_Recoil (-2)
		TNT1 A 0 A_SetPItch(10)
		TNT1 A 0 A_JumpIfInventory("KickHasHit", 1, "FinishSlideHitWall")
		TNT1 A 0 A_JumpIfInventory("IsCrouching", 1, 1)
		Goto FinishSlide

		KICK O 1 A_FireCustomMissile("SlideAttack", 0, 0, 0, 10)
		TNT1 A 0 A_Recoil (-2)
		TNT1 A 0 A_SetPItch(10)
		TNT1 A 0 A_JumpIfInventory("KickHasHit", 1, "FinishSlideHitWall")
		TNT1 A 0 A_JumpIfInventory("IsCrouching", 1, 1)
		Goto FinishSlide

		KICK O 1 A_FireCustomMissile("SlideAttack", 0, 0, 0, 10)
		TNT1 A 0 A_Recoil (-2)
		TNT1 A 0 A_SetPItch(10)
		TNT1 A 0 A_JumpIfInventory("KickHasHit", 1, "FinishSlideHitWall")
		TNT1 A 0 A_JumpIfInventory("IsCrouching", 1, 1)
		Goto FinishSlide

		KICK O 1 A_FireCustomMissile("SlideAttack", 0, 0, 0, 10)
		TNT1 A 0 A_Recoil (-2)
		TNT1 A 0 A_SetPItch(10)
		TNT1 A 0 A_JumpIfInventory("KickHasHit", 1, "FinishSlideHitWall")
		TNT1 A 0 A_JumpIfInventory("IsCrouching", 1, 1)
		Goto FinishSlide

		KICK O 1 A_FireCustomMissile("SlideAttack", 0, 0, 0, 10)
		TNT1 A 0 A_Recoil (-2)
		TNT1 A 0 A_SetPItch(10)
		TNT1 A 0 A_JumpIfInventory("KickHasHit", 1, "FinishSlideHitWall")
		TNT1 A 0 A_JumpIfInventory("IsCrouching", 1, 1)
		Goto FinishSlide

		KICK O 1 A_FireCustomMissile("SlideAttack", 0, 0, 0, 10)
		TNT1 A 0 A_Recoil (-2)
		TNT1 A 0 A_SetPItch(10)
		TNT1 A 0 A_JumpIfInventory("KickHasHit", 1, "FinishSlideHitWall")
		TNT1 A 0 A_JumpIfInventory("IsCrouching", 1, 1)
		Goto FinishSlide

		KICK O 1 A_FireCustomMissile("SlideAttack", 0, 0, 0, 10)
		TNT1 A 0 A_Recoil (-2)
		TNT1 A 0 A_SetPItch(10)
		TNT1 A 0 A_JumpIfInventory("KickHasHit", 1, "FinishSlideHitWall")
		TNT1 A 0 A_JumpIfInventory("IsCrouching", 1, 1)
		Goto FinishSlide

		KICK O 1 A_FireCustomMissile("SlideAttack", 0, 0, 0, 10)
		TNT1 A 0 A_Recoil (-2)
		TNT1 A 0 A_SetPItch(10)
		TNT1 A 0 A_JumpIfInventory("KickHasHit", 1, "FinishSlideHitWall")
		TNT1 A 0 A_JumpIfInventory("IsCrouching", 1, 1)
		Goto FinishSlide

		KICK O 1 A_FireCustomMissile("SlideAttack", 0, 0, 0, 10)
		TNT1 A 0 A_Recoil (-2)
		TNT1 A 0 A_SetPItch(10)
		TNT1 A 0 A_JumpIfInventory("KickHasHit", 1, "FinishSlideHitWall")
		TNT1 A 0 A_JumpIfInventory("IsCrouching", 1, 1)
		Goto FinishSlide

		KICK O 1 A_FireCustomMissile("SlideAttack", 0, 0, 0, 10)
		TNT1 A 0 A_Recoil (-2)
		TNT1 A 0 A_SetPItch(10)
		TNT1 A 0 A_JumpIfInventory("KickHasHit", 1, "FinishSlideHitWall")
		TNT1 A 0 A_JumpIfInventory("IsCrouching", 1, 1)
		Goto FinishSlide

		KICK O 1 A_FireCustomMissile("SlideAttack", 0, 0, 0, 10)
		TNT1 A 0 A_Recoil (-2)
		TNT1 A 0 A_SetPItch(10)
		TNT1 A 0 A_JumpIfInventory("KickHasHit", 1, "FinishSlideHitWall")
		TNT1 A 0 A_JumpIfInventory("IsCrouching", 1, 1)
		TNT1 A 0 A_TAkeInventory("KickHasHit", 1)
		Goto FinishSlide

	BerserkSlide:
		TNT1 A 0
		RIFF A 0 A_FireCustomMissile("BerserkSlide", 0, 0, 0, 10)
        KICK O 1
		TNT1 A 0 A_GiveInventory("UsedStamina", 4)
		TNT1 A 0 A_Recoil (-2)
		TNT1 A 0 A_SetPItch(10)
		TNT1 A 0 A_JumpIfInventory("KickHasHit", 1, "FinishSlideHitWall")
		TNT1 A 0 A_JumpIfInventory("IsCrouching", 1, 1)
		Goto FinishSlide
		KICK O 1 A_FireCustomMissile("BerserkSlide", 0, 0, 0, 10)
		TNT1 A 0 A_Recoil (-2)
		TNT1 A 0 A_SetPItch(10)
		TNT1 A 0 A_JumpIfInventory("KickHasHit", 1, "FinishSlideHitWall")
		TNT1 A 0 A_JumpIfInventory("IsCrouching", 1, 1)
		Goto FinishSlide

		KICK O 1 A_FireCustomMissile("BerserkSlide", 0, 0, 0, 10)
		TNT1 A 0 A_Recoil (-2)
		TNT1 A 0 A_SetPItch(10)
		TNT1 A 0 A_JumpIfInventory("KickHasHit", 1, "FinishSlideHitWall")
		TNT1 A 0 A_JumpIfInventory("IsCrouching", 1, 1)
		Goto FinishSlide

		KICK O 1 A_FireCustomMissile("BerserkSlide", 0, 0, 0, 10)
		TNT1 A 0 A_Recoil (-2)
		TNT1 A 0 A_SetPItch(10)
		TNT1 A 0 A_JumpIfInventory("KickHasHit", 1, "FinishSlideHitWall")
		TNT1 A 0 A_JumpIfInventory("IsCrouching", 1, 1)
		Goto FinishSlide

		KICK O 1 A_FireCustomMissile("BerserkSlide", 0, 0, 0, 10)
		TNT1 A 0 A_Recoil (-2)
		TNT1 A 0 A_SetPItch(10)
		TNT1 A 0 A_JumpIfInventory("KickHasHit", 1, "FinishSlideHitWall")
		TNT1 A 0 A_JumpIfInventory("IsCrouching", 1, 1)
		Goto FinishSlide

		KICK O 1 A_FireCustomMissile("BerserkSlide", 0, 0, 0, 10)
		TNT1 A 0 A_Recoil (-2)
		TNT1 A 0 A_SetPItch(10)
		TNT1 A 0 A_JumpIfInventory("KickHasHit", 1, "FinishSlideHitWall")
		TNT1 A 0 A_JumpIfInventory("IsCrouching", 1, 1)
		Goto FinishSlide

		KICK O 1 A_FireCustomMissile("BerserkSlide", 0, 0, 0, 10)
		TNT1 A 0 A_Recoil (-2)
		TNT1 A 0 A_SetPItch(10)
		TNT1 A 0 A_JumpIfInventory("KickHasHit", 1, "FinishSlideHitWall")
		TNT1 A 0 A_JumpIfInventory("IsCrouching", 1, 1)
		Goto FinishSlide

		KICK O 1 A_FireCustomMissile("BerserkSlide", 0, 0, 0, 10)
		TNT1 A 0 A_Recoil (-2)
		TNT1 A 0 A_SetPItch(10)
		TNT1 A 0 A_JumpIfInventory("KickHasHit", 1, "FinishSlideHitWall")
		TNT1 A 0 A_JumpIfInventory("IsCrouching", 1, 1)
		Goto FinishSlide

		KICK O 1 A_FireCustomMissile("BerserkSlide", 0, 0, 0, 10)
		TNT1 A 0 A_Recoil (-2)
		TNT1 A 0 A_SetPItch(10)
		TNT1 A 0 A_JumpIfInventory("KickHasHit", 1, "FinishSlideHitWall")
		TNT1 A 0 A_JumpIfInventory("IsCrouching", 1, 1)
		Goto FinishSlide

		KICK O 1 A_FireCustomMissile("BerserkSlide", 0, 0, 0, 10)
		TNT1 A 0 A_Recoil (-2)
		TNT1 A 0 A_SetPItch(10)
		TNT1 A 0 A_JumpIfInventory("KickHasHit", 1, "FinishSlideHitWall")
		TNT1 A 0 A_JumpIfInventory("IsCrouching", 1, 1)
		Goto FinishSlide

		KICK O 1 A_FireCustomMissile("BerserkSlide", 0, 0, 0, 10)
		TNT1 A 0 A_Recoil (-2)
		TNT1 A 0 A_SetPItch(10)
		TNT1 A 0 A_JumpIfInventory("KickHasHit", 1, "FinishSlideHitWall")
		TNT1 A 0 A_JumpIfInventory("IsCrouching", 1, 1)
		Goto FinishSlide

		KICK O 1 A_FireCustomMissile("BerserkSlide", 0, 0, 0, 10)
		TNT1 A 0 A_Recoil (-2)
		TNT1 A 0 A_SetPItch(10)
		TNT1 A 0 A_JumpIfInventory("KickHasHit", 1, "FinishSlideHitWall")
		TNT1 A 0 A_JumpIfInventory("IsCrouching", 1, 1)
		Goto FinishSlide

		KICK O 1 A_FireCustomMissile("BerserkSlide", 0, 0, 0, 10)
		TNT1 A 0 A_Recoil (-2)
		TNT1 A 0 A_SetPItch(10)
		TNT1 A 0 A_JumpIfInventory("KickHasHit", 1, "FinishSlideHitWall")
		TNT1 A 0 A_JumpIfInventory("IsCrouching", 1, 1)
		TNT1 A 0 A_TAkeInventory("KickHasHit", 1)
		Goto FinishSlide

	FinishSlide:
		TNT1 A 0
		TNT1 A 0 A_PlaySound("SlideKickStop", 5)
		KICK PQRST 2
		RIBA A 0 A_Takeinventory("Kicking",1)
		TNT1 A 0 SetPlayerProperty(0,0,0)
		Goto GoingToReady

	FinishSlideHitwall:
		TNT1 A 0
		TNT1 A 0 A_Stop
		KICK PQRST 2
		TNT1 A 0 A_TAkeInventory("KickHasHit", 1)
		RIBA A 0 A_Takeinventory("Kicking",1)
		TNT1 A 0 SetPlayerProperty(0,0,0)
		Goto GoingToReady

    Taunt:
		TNT1 A 0 A_Takeinventory("Zoomed",1)
        TNT1 A 0 A_ZoomFactor(1.0)
		TNT1 A 0 A_Takeinventory("Taunting",1)

        TNT1 A 10
		TNT1 A 0 A_JumpIfInventory("IsPlayingAsPurist", 1, "TauntClassic")
		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)
		TNT1 A 0 A_JumpIfInventory("GenderFemale", 1, "TauntFemale")
        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 GoingToReady

	TauntFemale:
		TNT1 A 0
		FUCK B 1 A_PlaySound("FTAUNT", 2)
        FUCK CD 1 A_AlertMonsters
		FUCK E 15 A_Takeinventory("Taunting",1)
        FUCK DCBA 1
        TNT1 A 10
		Goto GoingToReady

	TauntClassic:
		FVCK 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)
		TNT1 A 0 A_JumpIfInventory("GenderFemale", 1, "TauntFemaleClassic")
        FVCK B 1 A_PlaySound("FUCK", 2)
        FVCK CD 1 A_AlertMonsters
		FVCK E 15 A_Takeinventory("Taunting",1)
        FVCK DCBA 1
        TNT1 A 10
		Goto GoingToReady

	TauntFemaleClassic:
		TNT1 A 0
		FVCK B 1 A_PlaySound("FTAUNT", 2)
        FVCK CD 1 A_AlertMonsters
		FVCK E 15 A_Takeinventory("Taunting",1)
        FVCK DCBA 1
        TNT1 A 10
		Goto GoingToReady

	Salute:
	    TNT1 A 0 SetPlayerProperty(0,1,0)
		TNT1 A 0 A_ALertMonsters
		NULL A 0 ACS_NamedExecuteAlways("BDStartCamera", 0, 0, 0, 0)//Start Camera
		SALU ABCDEDCDEDCDEDCBA 4
		MARN A 0 ACS_NamedExecuteAlways("BDStopCamera", 0, 0, 0, 0)//Stop Camera
		TNT1 A 0 A_TakeInventory("Salute1",1)
		TNT1 A 0 A_TakeInventory("Salute2",1)
		TNT1 A 0 SetPlayerProperty(0,0,0)
		Goto GoingToReady

	TossGrenade:
		TNT1 A 0
		TNT1 A 0 A_TakeInventory("TossGrenade", 1)
		TNT1 A 0 A_JumpIfInventory("GrenadeAmmo", 1, 2)
		TNT1 A 0 A_Print("No Grenades Left.")
		Goto GoingToReady
		TNT1 AAAA 1
		TNT1 A 0 A_Takeinventory("Zoomed",1)
		TNT1 A 0 A_Takeinventory("PowerLightAmp",1)
		TNT1 A 0 A_Takeinventory("ADSmode",1)
        TNT1 A 0 A_ZoomFactor(1.0)
		GRTH ABCD 1
		TNT1 A 0 A_GiveInventory("FiredGrenade", 1)
		TNT1 A 0 A_Giveinventory("Punching",1)
		TNT1 A 0 A_Giveinventory("GoSpecial",1)
		TNT1 A 0 A_PLaySound ("GRNPIN")
		GRTH EEFG 1
		TNT1 A 0 A_PLaySound ("GRNTOSS")
		GRTH HI 1
		TNT1 A 0 A_TakeInventory("GrenadeAmmo", 1)
	    TNT1 A 0 A_TakeInventory("FiredGrenade", 1)
		GRTH J 1
		TNT1 A 0 A_FireCustomMissile("HandGrenade", 0, 0, 0, 0, 0, 0)
		GRTH KLM 1
		TNT1 A 1
		TNT1 A 0 A_TakeInventory("TossGrenade", 1)
		Goto GoingToReady

	DoExecution:
		TNT1 A 0
		TNT1 A 0 A_ChangeFLag("NOPAIN", 1)
		TNT1 A 0 A_ChangeFLag("PUSHABLE", 0)
		TNT1 A 0 A_Stop
		TNT1 A 0 SetPlayerProperty(0,1,4)
		TNT1 A 0 A_JumpIfInventory("IsFloating", 1, "ExecuteAirStomp")
		TNT1 A 0 A_JumpIfInventory("ExecuteBashWall", 1, "BashWall")//Imp-Only Execution
		TNT1 A 5 A_SetPitch(70)//up(-) | down(+)
		TNT1 A 0 A_Jump(255, "Execution1", "Execution2")
		Goto Execution1

	Bashwall:
		TNT1 A 0
		TNT1 A 0 A_PlaySound("imp/pain", 4)
		IEHW A 2
		IEHW A 8
		IEHW AAA 1 A_SetAngle(angle+6)
		IEHW BCDEF 1 A_SetAngle(angle+6)
		IEHW G 3
		TNT1 A 0 A_GiveInventory("Punching",1)
		TNT1 A 0 A_CustomMissile("XDeath1", 48, 0, 45, 2)
		TNT1 A 0 A_PlaySound("imp/pain", 4)
		TNT1 A 0 A_CustomMissile("ExecutionAttackMelee", 48, 0, 45, 2)

		IEHW HIJKKK 1 A_SetAngle(angle-3)
		IEHW KKKJIH 1 A_SetAngle(angle+3)
		IEHW FG 3
		TNT1 A 0 A_GiveInventory("Punching",1)
		TNT1 A 0 A_CustomMissile("XDeath1", 48, 0, 45, 2)
		TNT1 A 0 A_PlaySound("imp/pain", 4)
		TNT1 A 0 A_CustomMissile("ExecutionAttackMelee", 48, 0, 45, 2)

		IEHW HIJKKK 1 A_SetAngle(angle-3)
		IEHW KKKJIH 1 A_SetAngle(angle+3)
		IEHW FG 3
		TNT1 A 0 A_GiveInventory("Punching",1)
		TNT1 A 0 A_CustomMissile("XDeath1", 48, 0, 45, 2)
		TNT1 A 0 A_PlaySound("imp/pain", 4)
		TNT1 A 0 A_CustomMissile("ExecutionAttackMelee", 48, 0, 45, 2)

		IEHW HIJKKK 1 A_SetAngle(angle-3)
		IEHW KKKJIH 1 A_SetAngle(angle+3)
		TNT1 A 0 A_CustomMissile("XDeath1", 48, 0, 45, 2)
		TNT1 A 0 A_CustomMissile("ImpHeadExplode", 48, 0, 45, 2)
		TNT1 A 0 A_SpawnItemEx("HealthCrueltyBonus2", 0, 0, 24, frandom (-2.5, 2.5), frandom (-2.5, 2.5), 5)
		TNT1 A 0 A_CustomMissile("XDeath2", 48, 0, 45, 2)
		TNT1 A 0 A_CustomMissile("ExecutionAttackMelee", 48, 0, 45, 2)
		IEHW LMNO 1
		TNT1 A 0 A_GiveInventory("Punching",1)
		IEHW O 6
		IEHW PQRST 2 A_SetAngle(angle-4)
		TNT1 A 0 A_SpawnItem ("GrowingBloodPool")
		TNT1 A 0 A_SpawnItem("DeadImp_NoHead")
		TNT1 AAA 1 A_SetAngle(angle-3)
		KICK A 0 A_Takeinventory("ExecuteBashWall",1)
		TNT1 A 5
		Goto FinishExecution+8

	ExecuteAirStomp:
		TNT1 A 0
		TNT1 A 0 A_GiveInventory("IsExecutingOnAir", 1)
		TNT1 A 0 ThrustThingZ(0, 10, 0, 1)
		STOM A 5 A_SetPitch(70)
		STOM BCCCC 1 A_CheckFloor("DoAirStomp")
	DoAirStomp:
		RIFF A 0 A_FireCustomMissile("ExecutionAttackKick", 0, 0, 0, 0)
		TNT1 A 0 A_GiveInventory("Kicking",1)
        STOM D 5
		TNT1 A 0 ThrustThingZ(0, 20, 1, 1)
		TNT1 A 0 A_TakeInventory("IsExecutingOnAir", 1)
		Goto FinishExecution

	Execution1:
		KICK BCD 1
		TNT1 A 0 A_GiveInventory("Kicking",1)
		RIFF A 0 A_FireCustomMissile("ExecutionAttackKick", 0, 0, 0, -7)
        KICK H 5
		KICK I 1
		KICK GFEDCBA 1
		TNT1 A 5
		Goto FinishExecution

	Execution2:
		TNT1 A 0
		PONG B 1 A_Stop
        PONG C 1 A_PlaySound("skeleton/swing")
		TNT1 A 0 A_GiveInventory("Punching",1)
		PONG D 1 A_FireCustomMissile("ExecutionAttackMelee", 0, 0, 0, 0)
		PONG E 3 A_Stop
		PONG DCB 2 A_Stop
		PUN3 A 1 A_Stop
        PUN3 B 1 A_PlaySound("skeleton/swing")
		TNT1 A 0 A_GiveInventory("Punching",1)
		PUN3 C 1 A_FireCustomMissile("ExecutionAttackMelee", 0, 0, 0, 0)
		PUN3 E 3 A_Stop
		PUN3 CBA 2 A_Stop

		PONG B 1 A_Stop
        PONG C 1 A_PlaySound("skeleton/swing")
		TNT1 A 0 A_GiveInventory("Punching",1)
		PONG D 1 A_FireCustomMissile("ExecutionAttackMelee", 0, 0, 0, 0)
		PONG E 3 A_Stop
		PONG DCB 2 A_Stop
		PUN3 A 1 A_Stop
        PUN3 B 1 A_PlaySound("skeleton/swing")
		TNT1 A 0 A_GiveInventory("Punching",1)
		PUN3 C 1 A_FireCustomMissile("ExecutionAttackMelee", 0, 0, 0, 0)
		PUN3 E 3 A_Stop
		PUN3 CBA 2 A_Stop

		PONG B 1 A_Stop
        PONG C 1 A_PlaySound("skeleton/swing")
		TNT1 A 0 A_GiveInventory("Punching",1)
		PONG D 1 A_FireCustomMissile("ExecutionAttackMelee", 0, 0, 0, 0)
		PONG E 3 A_Stop
		PONG DCB 2 A_Stop
		PUN3 A 1 A_Stop
        PUN3 B 1 A_PlaySound("skeleton/swing")
		TNT1 A 0 A_GiveInventory("Punching",1)
		PUN3 C 1 A_FireCustomMissile("ExecutionAttackMelee", 0, 0, 0, 0)
		PUN3 E 3 A_Stop
		PUN3 CBA 2 A_Stop

		TNT1 A 5 A_Stop
		Goto FinishExecution

	FinishExecution:
		TNT1 A 0
		TNT1 AAAAAAA 1 A_SetPitch(Pitch-10)//+70 deg
		TNT1 A 0 A_GiveInventory("UsedStamina", 15)
		TNT1 A 0 A_ChangeFLag("NOPAIN", 0)
		TNT1 A 0 A_ChangeFLag("PUSHABLE", 1)
		TNT1 A 1 SetPlayerProperty(0,0,4)
		KICK A 0 A_Takeinventory("ExecuteBashWall",1)
		KICK A 0 A_Takeinventory("ExecuteDownedEnemy",1)
		KICK A 0 A_Takeinventory("BDWeaponAction",1)
		TNT1 A 0 A_takeInventory("PressedUSe", 1)
		TNT1 A 0 A_takeInventory("ExecuteDownedImp", 1)
		TNT1 A 0 A_takeInventory("ExecuteDownedLabguy", 1)
		TNT1 A 0 A_takeInventory("ExecuteDownedShotgunGuy", 1)
		TNT1 A 0 A_takeInventory("ExecuteDownedZombieman", 1)
		Goto GoingToReady
	}
}

ACTOR FlashlightProjectile: FastProjectile
{
	Radius 8
	Height 16
	Speed 600
	Damage 0
	Mass 0
	+DONTSPLASH
	+NOTIMEFREEZE
	-ACTIVATEIMPACT
	-ACTIVATEPCROSS
	+CLIENTSIDEONLY
	+NONETID
	+THRUGHOST
	+MTHRUSPECIES
	+THRUSPECIES
	Species "Marines"
	States
	{
	Spawn:
        TNT1 A 2
		Stop

    Death:
	XDeath:
	    TNT2 A 3 A_AlertMonsters(150)
		Stop
	}
}

ACTOR FlashlightProjectile2: FlashlightProjectile
{
	Radius 4
	Height 8
}

ACTOR FlashlightProjectile3: FlashlightProjectile
{
	Radius 2
	Height 4
}