
//==============================================================================
//============================ Corvette's Fire Mace ============================
//==============================================================================


ACTOR ClassicFireMace : HereticWeapon
{
	Weapon.SelectionOrder 8
	Inventory.RestrictedTo "Corvette"
	Inventory.ForbiddenTo "BrutalCorvus"
	Weapon.AmmoUse1 1
	Weapon.AmmoUse2 5
	Weapon.AmmoGive1 0
	Weapon.YAdjust 15
	Weapon.AmmoType1 "ClassicMaceAmmo"
	Weapon.AmmoType2 "ClassicMaceAmmo"
	Weapon.SisterWeapon "None"
	ConversationID 195
	Inventory.PickupMessage "Picked up the Fire Mace, unleash its wrath on your enemies!"
	Tag "$TAG_MACE"
	Weapon.SlotNumber 7
	Speed 4
	
	States
	{
		Spawn:
			TNT1 A 0 A_SpawnItemEx("RedFlareSmall",0,0,38)
			WMCE AA 1 Bright A_SetAngle(angle+speed)
			Goto Spawn
		Ready:
			TNT1 A 0 A_SetCrosshair (13)
			TNT1 A 0 A_JumpIfInventory("Action1",1,"Kicking")
			MACE A 1 A_WeaponReady (WRF_ALLOWZOOM)
			Loop
		Deselect:
			MACE A 0 A_Lower
			MACE A 1 A_Lower
			Loop
		Select:
			MACE A 0 A_Raise
			MACE A 1 A_Raise
			Loop
		Fire:
			MACE B 2
		Hold:
			TNT1 A 0 A_JumpIfInventory("PowerClassicLevel2",1,"PoweredHold")
			TNT1 A 0 A_PlaySound("MACEFIR1",1)
			TNT1 A 0 A_FireProjectile("BrutalFireMaceBall1",frandom(-3,3),true,0,0,0,frandom(-5,-4))
			TNT1 A 0 A_Recoil(0.7 * GetCVAR("SteadyHand"))
			TNT1 A 0 A_SetPitch(pitch-(0.45 * GetCVAR("SteadyHand")))
			MACE C 1 Bright
			TNT1 A 0 A_SetPitch(pitch-(0.15 * GetCVAR("SteadyHand")))
			MACE D 1 Bright
			TNT1 A 0 A_SetPitch(pitch+(0.1 * GetCVAR("SteadyHand")))
			MACE E 1
			TNT1 A 0 A_SetPitch(pitch+(0.25 * GetCVAR("SteadyHand")))
			MACE F 1
			MACE B 1 A_ReFire
			MACE B 1
			Goto Ready
		AltFire:
			TNT1 A 0 A_JumpIfInventory("PowerClassicLevel2",1,"PoweredAltChecker")
			TNT1 A 0 A_JumpIf(CallACS("ExpressSkills")==1, "SuperAttack")
			TNT1 A 0 A_JumpIfInventory("Level",8,"SuperAttack")
			TNT1 A 0 ACS_NamedExecuteAlways("NeedLevelAttack",0,8)
			Goto Ready
		SuperAttack:
			MACE B 2
		AltHold:
			TNT1 A 0 A_JumpIfInventory("PowerClassicLevel2",1,"PoweredAltChecker")
			TNT1 A 0 A_PlaySound("MACEFIR1")
			TNT1 A 0 A_FireCustomMissile("BrutalFireMaceBall3",frandom(-3,3),true,0,-3,0,frandom(-2,2))
			TNT1 A 0 A_Recoil(0.7 * GetCVAR("SteadyHand"))
			TNT1 A 0 A_SetPitch(pitch-(0.45 * GetCVAR("SteadyHand")))
			MACE C 2 Bright
			TNT1 A 0 A_SetPitch(pitch-(0.15 * GetCVAR("SteadyHand")))
			MACE D 2 Bright
			TNT1 A 0 A_SetPitch(pitch+(0.1 * GetCVAR("SteadyHand")))
			MACE E 3
			TNT1 A 0 A_SetPitch(pitch+(0.25 * GetCVAR("SteadyHand")))
			MACE FB 2
			Goto Ready
		PoweredHold:
			TNT1 A 0 A_PlaySound("MACEFIR1")
			TNT1 A 0 A_FireCustomMissile("BrutalFireMaceBall2",frandom(-3,3),true,0,-3,0,frandom(-2,2))
			TNT1 A 0 A_TakeInventory("ClassicMaceAmmo",4)
			TNT1 A 0 A_Recoil(0.7 * GetCVAR("SteadyHand"))
			TNT1 A 0 A_SetPitch(pitch-(0.45 * GetCVAR("SteadyHand")))
			MACE C 1 Bright
			TNT1 A 0 A_SetPitch(pitch-(0.15 * GetCVAR("SteadyHand")))
			MACE D 1 Bright
			TNT1 A 0 A_SetPitch(pitch+(0.1 * GetCVAR("SteadyHand")))
			MACE E 1
			TNT1 A 0 A_SetPitch(pitch+(0.25 * GetCVAR("SteadyHand")))
			MACE F 1
			MACE B 1 A_ReFire
			MACE B 1
			Goto Ready
		PoweredAltChecker:
			TNT1 A 0 A_JumpIf(CallACS("ExpressSkills")==1, "PoweredAltFire")
			TNT1 A 0 A_JumpIfInventory("Level",16,"PoweredAltFire")
			TNT1 A 0 ACS_NamedExecuteAlways("NeedLevelAttack",0,16)
			Goto Ready
		PoweredAltfire:
			TNT1 A 0 A_JumpIfInventory("ClassicMaceAmmo", 25,1)
			Goto Ready
			TNT1 A 0 A_PlaySound("MACEFIR1")
			TNT1 A 0 A_SpawnItemEx("FireMacePodSeed",32,0,0,20,0,10)
			//TNT1 A 0 A_FireCustomMissile("FireMacePod",frandom(-3,3),true,0,-3,0,frandom(5,10))
			//TNT1 AAAA 0 A_FireCustomMissile("FireMacePod",frandom(-30,30),FALSE,0,-3,0,frandom(5,10))
			TNT1 A 0 A_TakeInventory("ClassicMaceAmmo",25)
			TNT1 A 0 A_Recoil(0.7 * GetCVAR("SteadyHand"))
			TNT1 A 0 A_SetPitch(pitch-(0.45 * GetCVAR("SteadyHand")))
			MACE C 3 Bright
			TNT1 A 0 A_SetPitch(pitch-(0.15 * GetCVAR("SteadyHand")))
			MACE D 3 Bright
			TNT1 A 0 A_SetPitch(pitch+(0.1 * GetCVAR("SteadyHand")))
			MACE E 3
			TNT1 A 0 A_SetPitch(pitch+(0.25 * GetCVAR("SteadyHand")))
			MACE F 3
			MACE B 3 A_ReFire
			MACE B 3
			Goto Ready
		Kicking:
			MACE A 1 Offset(0,42)
			MACE A 1 Offset(0,52)
			MACE A 1 Offset(0,62)
			MACE A 1 Offset(0,72)
			MACE A 1 Offset(0,82)
			TNT1 A 0 A_PlaySound("WHOP")
			CKCK ABCD 1 Offset(0,32)
			//TNT1 A 0 A_CustomPunch(random(20,40)+(CallACS("StrengthCalculator")/4),1,0,"BrutalKickPuff", 104)
			TNT1 A 0 A_FireCustomMissile("BootOfFury",0,0,0,0)
			TNT1 A 0 A_Recoil(-6)
			CKCK E 3
			TNT1 A 0 A_Recoil(3)
			CKCK DCB 1
			CKCK AA 1 A_WeaponReady(WRF_NOSECONDARY)
			TNT1 AAA 1 A_WeaponReady(WRF_NOSECONDARY)
			MACE A 1 Offset(0,82)
			MACE A 1 Offset(0,72)
			MACE A 1 Offset(0,62)
			MACE A 1 Offset(0,52)
			MACE A 1 Offset(0,42)
			MACE A 0 Offset(0,32)
			TNT1 A 0 A_JumpIfInventory("Action1",1,"Kicking")
			Goto Ready
	}
}