Actor CriticalStrike : WoC_Skill {}

Actor CriticalPuff
{
	RenderStyle Add
	Scale 0.6
	VSpeed 0
	+NOBLOCKMAP
	+NOGRAVITY
	+PUFFONACTORS
	+PUFFGETSOWNER
	+MTHRUSPECIES
	+THRUGHOST
	Damagetype "Physical"
	SeeSound "ability/criticalhit"
	States
	{
	Spawn:
	Melee:
		CRIT A 0 Bright
		CRIT A 0 A_JumpIfInTargetInventory("IsDestroyer", 1, "Destroyer")
		CRIT A 0 A_JumpIfInTargetInventory("IsCommander", 1, "Commander")
	Crash:
		CRIT ABCDEF 4 Bright
		Stop
	Destroyer:
		CRIT A 0 Bright A_GiveToTarget("FuryItem",1)
		Goto Crash
	Commander:
		CRIT A 0 Bright A_GiveToTarget("InspireItem")
		Goto Crash
	}
}

Actor CriticalPuffGhost : CriticalPuff
{
	-THRUGHOST
}

Actor MightyBlow : WoC_Skill {}
Actor MightyBlowPuff
{
	SeeSound "FighterHammerHitThing"
	AttackSound "FighterHammerHitWall"
	ActiveSound "FighterPunchMiss"
	Damagetype "Physical"
	RenderStyle Add
	Scale 0.6
	VSpeed 0
	+NOBLOCKMAP
	+NOGRAVITY
	+PUFFONACTORS
	+PUFFGETSOWNER
	+MTHRUSPECIES
	+THRUGHOST
	States
	{
	Spawn:
	Melee:
		CRIT A 0
		CRIT A 0 A_JumpIfInTargetInventory("IsDestroyer", 1, "Destroyer")
	Crash:
		CRIT A 0 A_RadiusThrust(ACS_NamedExecuteWithResult("WOC Player Scale", 5000, STRENGTH, ABIL_MIGHTYBLOW, ACTIVATOR),16,RTF_NOIMPACTDAMAGE,16)
		CRIT A 1 A_GiveToTarget("ScreenPitch3")
		CRIT A 0 A_GiveToTarget("ScreenPitchHalfBack")
		CRIT A 1 A_GiveToTarget("ScreenPitch1Back")
		CRIT A 0 A_GiveToTarget("ScreenPitchHalfBack")
		CRIT A 1 A_GiveToTarget("ScreenPitch1Back")
		CRIT BCDEF 4 Bright
		Stop
	Destroyer:
		CRIT A 0 Bright A_GiveToTarget("FuryItem",1)
		Goto Crash
	}
}

Actor WarCry : WoC_Skill {}

Actor UseWarcry : CustomInventory
{
	Inventory.MaxAmount 0
	+INVENTORY.AUTOACTIVATE
	Inventory.Icon "TNT1A0"
	States
	{
	Use:
		TNT1 A 0 A_PlaySound("fighter/warcry", CHAN_VOICE)
		TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(WOC_DECORATE,STATS,PLAYERNUM,WOCTARGET) == 32,"Use32")
		TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(WOC_DECORATE,STATS,PLAYERNUM,WOCTARGET) == 31,"Use31")
		TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(WOC_DECORATE,STATS,PLAYERNUM,WOCTARGET) == 30,"Use30")
		TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(WOC_DECORATE,STATS,PLAYERNUM,WOCTARGET) == 29,"Use29")
		TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(WOC_DECORATE,STATS,PLAYERNUM,WOCTARGET) == 28,"Use28")
		TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(WOC_DECORATE,STATS,PLAYERNUM,WOCTARGET) == 27,"Use27")
		TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(WOC_DECORATE,STATS,PLAYERNUM,WOCTARGET) == 26,"Use26")
		TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(WOC_DECORATE,STATS,PLAYERNUM,WOCTARGET) == 25,"Use25")
		TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(WOC_DECORATE,STATS,PLAYERNUM,WOCTARGET) == 24,"Use24")
		TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(WOC_DECORATE,STATS,PLAYERNUM,WOCTARGET) == 23,"Use23")
		TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(WOC_DECORATE,STATS,PLAYERNUM,WOCTARGET) == 22,"Use22")
		TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(WOC_DECORATE,STATS,PLAYERNUM,WOCTARGET) == 21,"Use21")
		TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(WOC_DECORATE,STATS,PLAYERNUM,WOCTARGET) == 20,"Use20")
		TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(WOC_DECORATE,STATS,PLAYERNUM,WOCTARGET) == 19,"Use19")
		TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(WOC_DECORATE,STATS,PLAYERNUM,WOCTARGET) == 18,"Use18")
		TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(WOC_DECORATE,STATS,PLAYERNUM,WOCTARGET) == 17,"Use17")
		TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(WOC_DECORATE,STATS,PLAYERNUM,WOCTARGET) == 16,"Use16")
		TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(WOC_DECORATE,STATS,PLAYERNUM,WOCTARGET) == 15,"Use15")
		TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(WOC_DECORATE,STATS,PLAYERNUM,WOCTARGET) == 14,"Use14")
		TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(WOC_DECORATE,STATS,PLAYERNUM,WOCTARGET) == 13,"Use13")
		TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(WOC_DECORATE,STATS,PLAYERNUM,WOCTARGET) == 12,"Use12")
		TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(WOC_DECORATE,STATS,PLAYERNUM,WOCTARGET) == 11,"Use11")
		TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(WOC_DECORATE,STATS,PLAYERNUM,WOCTARGET) == 10,"Use10")
		TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(WOC_DECORATE,STATS,PLAYERNUM,WOCTARGET) == 9,"Use9")
		TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(WOC_DECORATE,STATS,PLAYERNUM,WOCTARGET) == 8,"Use8")
		TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(WOC_DECORATE,STATS,PLAYERNUM,WOCTARGET) == 7,"Use7")
		TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(WOC_DECORATE,STATS,PLAYERNUM,WOCTARGET) == 6,"Use6")
		TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(WOC_DECORATE,STATS,PLAYERNUM,WOCTARGET) == 5,"Use5")
		TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(WOC_DECORATE,STATS,PLAYERNUM,WOCTARGET) == 4,"Use4")
		TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(WOC_DECORATE,STATS,PLAYERNUM,WOCTARGET) == 3,"Use3")
		TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(WOC_DECORATE,STATS,PLAYERNUM,WOCTARGET) == 2,"Use2")
		TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(WOC_DECORATE,STATS,PLAYERNUM,WOCTARGET) == 1,"Use1")
		TNT1 A 0 A_RadiusGive("WarcryAOE0", 512+51*ACS_ExecuteWithResult(WOC_DECORATE,FIGHTERSKILLS,ABIL_WARCRY,WOCTARGET), RGF_MONSTERS)
		Stop
		Use1: TNT1 A 0 A_RadiusGive("WarcryAOE1", 512+51*ACS_ExecuteWithResult(WOC_DECORATE,FIGHTERSKILLS,ABIL_WARCRY,WOCTARGET), RGF_MONSTERS) Stop
		Use2: TNT1 A 0 A_RadiusGive("WarcryAOE2", 512+51*ACS_ExecuteWithResult(WOC_DECORATE,FIGHTERSKILLS,ABIL_WARCRY,WOCTARGET), RGF_MONSTERS) Stop
		Use3: TNT1 A 0 A_RadiusGive("WarcryAOE3", 512+51*ACS_ExecuteWithResult(WOC_DECORATE,FIGHTERSKILLS,ABIL_WARCRY,WOCTARGET), RGF_MONSTERS) Stop
		Use4: TNT1 A 0 A_RadiusGive("WarcryAOE4", 512+51*ACS_ExecuteWithResult(WOC_DECORATE,FIGHTERSKILLS,ABIL_WARCRY,WOCTARGET), RGF_MONSTERS) Stop
		Use5: TNT1 A 0 A_RadiusGive("WarcryAOE5", 512+51*ACS_ExecuteWithResult(WOC_DECORATE,FIGHTERSKILLS,ABIL_WARCRY,WOCTARGET), RGF_MONSTERS) Stop
		Use6: TNT1 A 0 A_RadiusGive("WarcryAOE6", 512+51*ACS_ExecuteWithResult(WOC_DECORATE,FIGHTERSKILLS,ABIL_WARCRY,WOCTARGET), RGF_MONSTERS) Stop
		Use7: TNT1 A 0 A_RadiusGive("WarcryAOE7", 512+51*ACS_ExecuteWithResult(WOC_DECORATE,FIGHTERSKILLS,ABIL_WARCRY,WOCTARGET), RGF_MONSTERS) Stop
		Use8: TNT1 A 0 A_RadiusGive("WarcryAOE8", 512+51*ACS_ExecuteWithResult(WOC_DECORATE,FIGHTERSKILLS,ABIL_WARCRY,WOCTARGET), RGF_MONSTERS) Stop
		Use9: TNT1 A 0 A_RadiusGive("WarcryAOE9", 512+51*ACS_ExecuteWithResult(WOC_DECORATE,FIGHTERSKILLS,ABIL_WARCRY,WOCTARGET), RGF_MONSTERS) Stop
		
		Use10: TNT1 A 0 A_RadiusGive("WarcryAOE10", 512+51*ACS_ExecuteWithResult(WOC_DECORATE,FIGHTERSKILLS,ABIL_WARCRY,WOCTARGET), RGF_MONSTERS) Stop
		Use11: TNT1 A 0 A_RadiusGive("WarcryAOE11", 512+51*ACS_ExecuteWithResult(WOC_DECORATE,FIGHTERSKILLS,ABIL_WARCRY,WOCTARGET), RGF_MONSTERS) Stop
		Use12: TNT1 A 0 A_RadiusGive("WarcryAOE12", 512+51*ACS_ExecuteWithResult(WOC_DECORATE,FIGHTERSKILLS,ABIL_WARCRY,WOCTARGET), RGF_MONSTERS) Stop
		Use13: TNT1 A 0 A_RadiusGive("WarcryAOE13", 512+51*ACS_ExecuteWithResult(WOC_DECORATE,FIGHTERSKILLS,ABIL_WARCRY,WOCTARGET), RGF_MONSTERS) Stop
		Use14: TNT1 A 0 A_RadiusGive("WarcryAOE14", 512+51*ACS_ExecuteWithResult(WOC_DECORATE,FIGHTERSKILLS,ABIL_WARCRY,WOCTARGET), RGF_MONSTERS) Stop
		Use15: TNT1 A 0 A_RadiusGive("WarcryAOE15", 512+51*ACS_ExecuteWithResult(WOC_DECORATE,FIGHTERSKILLS,ABIL_WARCRY,WOCTARGET), RGF_MONSTERS) Stop
		Use16: TNT1 A 0 A_RadiusGive("WarcryAOE16", 512+51*ACS_ExecuteWithResult(WOC_DECORATE,FIGHTERSKILLS,ABIL_WARCRY,WOCTARGET), RGF_MONSTERS) Stop
		Use17: TNT1 A 0 A_RadiusGive("WarcryAOE17", 512+51*ACS_ExecuteWithResult(WOC_DECORATE,FIGHTERSKILLS,ABIL_WARCRY,WOCTARGET), RGF_MONSTERS) Stop
		Use18: TNT1 A 0 A_RadiusGive("WarcryAOE18", 512+51*ACS_ExecuteWithResult(WOC_DECORATE,FIGHTERSKILLS,ABIL_WARCRY,WOCTARGET), RGF_MONSTERS) Stop
		Use19: TNT1 A 0 A_RadiusGive("WarcryAOE19", 512+51*ACS_ExecuteWithResult(WOC_DECORATE,FIGHTERSKILLS,ABIL_WARCRY,WOCTARGET), RGF_MONSTERS) Stop
		
		Use20: TNT1 A 0 A_RadiusGive("WarcryAOE20", 512+51*ACS_ExecuteWithResult(WOC_DECORATE,FIGHTERSKILLS,ABIL_WARCRY,WOCTARGET), RGF_MONSTERS) Stop
		Use21: TNT1 A 0 A_RadiusGive("WarcryAOE21", 512+51*ACS_ExecuteWithResult(WOC_DECORATE,FIGHTERSKILLS,ABIL_WARCRY,WOCTARGET), RGF_MONSTERS) Stop
		Use22: TNT1 A 0 A_RadiusGive("WarcryAOE22", 512+51*ACS_ExecuteWithResult(WOC_DECORATE,FIGHTERSKILLS,ABIL_WARCRY,WOCTARGET), RGF_MONSTERS) Stop
		Use23: TNT1 A 0 A_RadiusGive("WarcryAOE23", 512+51*ACS_ExecuteWithResult(WOC_DECORATE,FIGHTERSKILLS,ABIL_WARCRY,WOCTARGET), RGF_MONSTERS) Stop
		Use24: TNT1 A 0 A_RadiusGive("WarcryAOE24", 512+51*ACS_ExecuteWithResult(WOC_DECORATE,FIGHTERSKILLS,ABIL_WARCRY,WOCTARGET), RGF_MONSTERS) Stop
		Use25: TNT1 A 0 A_RadiusGive("WarcryAOE25", 512+51*ACS_ExecuteWithResult(WOC_DECORATE,FIGHTERSKILLS,ABIL_WARCRY,WOCTARGET), RGF_MONSTERS) Stop
		Use26: TNT1 A 0 A_RadiusGive("WarcryAOE26", 512+51*ACS_ExecuteWithResult(WOC_DECORATE,FIGHTERSKILLS,ABIL_WARCRY,WOCTARGET), RGF_MONSTERS) Stop
		Use27: TNT1 A 0 A_RadiusGive("WarcryAOE27", 512+51*ACS_ExecuteWithResult(WOC_DECORATE,FIGHTERSKILLS,ABIL_WARCRY,WOCTARGET), RGF_MONSTERS) Stop
		Use28: TNT1 A 0 A_RadiusGive("WarcryAOE28", 512+51*ACS_ExecuteWithResult(WOC_DECORATE,FIGHTERSKILLS,ABIL_WARCRY,WOCTARGET), RGF_MONSTERS) Stop
		Use29: TNT1 A 0 A_RadiusGive("WarcryAOE29", 512+51*ACS_ExecuteWithResult(WOC_DECORATE,FIGHTERSKILLS,ABIL_WARCRY,WOCTARGET), RGF_MONSTERS) Stop
		Use30: TNT1 A 0 A_RadiusGive("WarcryAOE30", 512+51*ACS_ExecuteWithResult(WOC_DECORATE,FIGHTERSKILLS,ABIL_WARCRY,WOCTARGET), RGF_MONSTERS) Stop
		Use31: TNT1 A 0 A_RadiusGive("WarcryAOE31", 512+51*ACS_ExecuteWithResult(WOC_DECORATE,FIGHTERSKILLS,ABIL_WARCRY,WOCTARGET), RGF_MONSTERS) Stop
		Use32: TNT1 A 0 A_RadiusGive("WarcryAOE32", 512+51*ACS_ExecuteWithResult(WOC_DECORATE,FIGHTERSKILLS,ABIL_WARCRY,WOCTARGET), RGF_MONSTERS) Stop
	}
}

Actor WarcryAOE0 : CustomInventory
{
	Inventory.MaxAmount 0
	+AUTOACTIVATE
	+ALWAYSPICKUP
	States
	{
	Use:
		TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(WOC_DECORATE,STATS,ISFRIENDLY,ACTIVATOR) == 0, "Healing")
		Stop
	Healing:
		TNT1 A 0 ACS_NamedExecuteAlways("WOC WARCRY",0,0,1,0)
		Stop
	}
}

Actor WarcryAOE1 : WarcryAOE0 { States { Healing: TNT1 A 0 ACS_NamedExecuteAlways("WOC WARCRY",0,1,1,0) Stop } }
Actor WarcryAOE2 : WarcryAOE0 { States { Healing: TNT1 A 0 ACS_NamedExecuteAlways("WOC WARCRY",0,2,1,0) Stop } }
Actor WarcryAOE3 : WarcryAOE0 { States { Healing: TNT1 A 0 ACS_NamedExecuteAlways("WOC WARCRY",0,3,1,0) Stop } }
Actor WarcryAOE4 : WarcryAOE0 { States { Healing: TNT1 A 0 ACS_NamedExecuteAlways("WOC WARCRY",0,4,1,0) Stop } }
Actor WarcryAOE5 : WarcryAOE0 { States { Healing: TNT1 A 0 ACS_NamedExecuteAlways("WOC WARCRY",0,5,1,0) Stop } }
Actor WarcryAOE6 : WarcryAOE0 { States { Healing: TNT1 A 0 ACS_NamedExecuteAlways("WOC WARCRY",0,6,1,0) Stop } }
Actor WarcryAOE7 : WarcryAOE0 { States { Healing: TNT1 A 0 ACS_NamedExecuteAlways("WOC WARCRY",0,7,1,0) Stop } }
Actor WarcryAOE8 : WarcryAOE0 { States { Healing: TNT1 A 0 ACS_NamedExecuteAlways("WOC WARCRY",0,8,1,0) Stop } }
Actor WarcryAOE9 : WarcryAOE0 { States { Healing: TNT1 A 0 ACS_NamedExecuteAlways("WOC WARCRY",0,9,1,0) Stop } }

Actor WarcryAOE10 : WarcryAOE0 { States { Healing: TNT1 A 0 ACS_NamedExecuteAlways("WOC WARCRY",0,10,1,0) Stop } }
Actor WarcryAOE11 : WarcryAOE0 { States { Healing: TNT1 A 0 ACS_NamedExecuteAlways("WOC WARCRY",0,11,1,0) Stop } }
Actor WarcryAOE12 : WarcryAOE0 { States { Healing: TNT1 A 0 ACS_NamedExecuteAlways("WOC WARCRY",0,12,1,0) Stop } }
Actor WarcryAOE13 : WarcryAOE0 { States { Healing: TNT1 A 0 ACS_NamedExecuteAlways("WOC WARCRY",0,13,1,0) Stop } }
Actor WarcryAOE14 : WarcryAOE0 { States { Healing: TNT1 A 0 ACS_NamedExecuteAlways("WOC WARCRY",0,14,1,0) Stop } }
Actor WarcryAOE15 : WarcryAOE0 { States { Healing: TNT1 A 0 ACS_NamedExecuteAlways("WOC WARCRY",0,15,1,0) Stop } }
Actor WarcryAOE16 : WarcryAOE0 { States { Healing: TNT1 A 0 ACS_NamedExecuteAlways("WOC WARCRY",0,16,1,0) Stop } }
Actor WarcryAOE17 : WarcryAOE0 { States { Healing: TNT1 A 0 ACS_NamedExecuteAlways("WOC WARCRY",0,17,1,0) Stop } }
Actor WarcryAOE18 : WarcryAOE0 { States { Healing: TNT1 A 0 ACS_NamedExecuteAlways("WOC WARCRY",0,18,1,0) Stop } }
Actor WarcryAOE19 : WarcryAOE0 { States { Healing: TNT1 A 0 ACS_NamedExecuteAlways("WOC WARCRY",0,19,1,0) Stop } }

Actor WarcryAOE20 : WarcryAOE0 { States { Healing: TNT1 A 0 ACS_NamedExecuteAlways("WOC WARCRY",0,20,1,0) Stop } }
Actor WarcryAOE21 : WarcryAOE0 { States { Healing: TNT1 A 0 ACS_NamedExecuteAlways("WOC WARCRY",0,21,1,0) Stop } }
Actor WarcryAOE22 : WarcryAOE0 { States { Healing: TNT1 A 0 ACS_NamedExecuteAlways("WOC WARCRY",0,22,1,0) Stop } }
Actor WarcryAOE23 : WarcryAOE0 { States { Healing: TNT1 A 0 ACS_NamedExecuteAlways("WOC WARCRY",0,23,1,0) Stop } }
Actor WarcryAOE24 : WarcryAOE0 { States { Healing: TNT1 A 0 ACS_NamedExecuteAlways("WOC WARCRY",0,24,1,0) Stop } }
Actor WarcryAOE25 : WarcryAOE0 { States { Healing: TNT1 A 0 ACS_NamedExecuteAlways("WOC WARCRY",0,25,1,0) Stop } }
Actor WarcryAOE26 : WarcryAOE0 { States { Healing: TNT1 A 0 ACS_NamedExecuteAlways("WOC WARCRY",0,26,1,0) Stop } }
Actor WarcryAOE27 : WarcryAOE0 { States { Healing: TNT1 A 0 ACS_NamedExecuteAlways("WOC WARCRY",0,27,1,0) Stop } }
Actor WarcryAOE28 : WarcryAOE0 { States { Healing: TNT1 A 0 ACS_NamedExecuteAlways("WOC WARCRY",0,28,1,0) Stop } }
Actor WarcryAOE29 : WarcryAOE0 { States { Healing: TNT1 A 0 ACS_NamedExecuteAlways("WOC WARCRY",0,29,1,0) Stop } }

Actor WarcryAOE30 : WarcryAOE0 { States { Healing: TNT1 A 0 ACS_NamedExecuteAlways("WOC WARCRY",0,30,1,0) Stop } }
Actor WarcryAOE31 : WarcryAOE0 { States { Healing: TNT1 A 0 ACS_NamedExecuteAlways("WOC WARCRY",0,31,1,0) Stop } }
Actor WarcryAOE32 : WarcryAOE0 { States { Healing: TNT1 A 0 ACS_NamedExecuteAlways("WOC WARCRY",0,32,1,0) Stop } }

Actor WarCryFearItem : Custominventory
{
	Inventory.MaxAmount 0
	+Inventory.AUTOACTIVATE
	states
	{
	Use:
		TNT1 A 0 A_ChangeFlag("FRIGHTENED", 1)
		Stop
	}
}

Actor Stomp : WoC_Skill {}

Actor StompEffects
{
	Speed 6
	Radius 8
	Height 4
	Damage (ACS_NamedExecuteWithResult("WOC Player Scale", 4, STRENGTH, ABIL_STOMP, WOCTARGET))
	scale 0.5
	Gravity 0.5
	RenderStyle Add
	Alpha 0.6
	Obituary "%o got a fatal toe stubbing from %k"
	+NOBLOCKMAP
	+DROPOFF
	+MISSILE
	+NOTELEPORT
	+RIPPER
	+WINDTHRUST
	+THRUGHOST
	+MTHRUSPECIES +NODAMAGETHRUST
	+BLOODLESSIMPACT
	+FLOORHUGGER
	+DONTBLAST
	Damagetype "Physical"
	States
	{
	Spawn:
		IDGA A 0
		IDGA A 0 A_JumpIfInTargetInventory("Stomp",10,10)
		IDGA A 0 A_JumpIfInTargetInventory("Stomp",9,10)
		IDGA A 0 A_JumpIfInTargetInventory("Stomp",8,10)
		IDGA A 0 A_JumpIfInTargetInventory("Stomp",7,10)
		IDGA A 0 A_JumpIfInTargetInventory("Stomp",6,10)
		IDGA A 0 A_JumpIfInTargetInventory("Stomp",5,10)
		IDGA A 0 A_JumpIfInTargetInventory("Stomp",4,10)
		IDGA A 0 A_JumpIfInTargetInventory("Stomp",3,10)
		IDGA A 0 A_JumpIfInTargetInventory("Stomp",2,10)
		IDGA A 0 A_JumpIfInTargetInventory("Stomp",1,10)
		IDGA AAAAAAAAAAAAABBBCCC 1 A_SpawnItemEx ("StompDust",0,0,0,0,0,1,0,0,0)
		Stop
	Death:
		TNT1 A 1 //A_SpawnItemEx ("StompDust",0,0,0,0,0,1,0,0,0)
		Stop
	}
}

ACTOR StompDust
{
	+NOBLOCKMAP
	+NOGRAVITY
	+CLIENTSIDEONLY +DONTBLAST
	RenderStyle Translucent
	Alpha 0.6
	States
	{
	Spawn:
		FHFX STU 5
		Stop
	}
}

Actor AxeMastery : WoC_Skill {}

Actor Beserk : WoC_Skill {}

Actor BeserkCurse1 : PowerupGiver
{
	Powerup.Type "BeserkCurse1"
	Powerup.Duration 35
	+INVENTORY.AUTOACTIVATE
	Inventory.MaxAmount 0
}

Actor BeserkCurse2 : PowerupGiver
{
	Powerup.Type "BeserkCurse2"
	Powerup.Duration 35
	+INVENTORY.AUTOACTIVATE
	Inventory.MaxAmount 0
}

Actor BeserkCurse3 : PowerupGiver
{
	Powerup.Type "BeserkCurse3"
	Powerup.Duration 35
	+INVENTORY.AUTOACTIVATE
	Inventory.MaxAmount 0
}

Actor BeserkCurse4 : PowerupGiver
{
	Powerup.Type "BeserkCurse4"
	Powerup.Duration 35
	+INVENTORY.AUTOACTIVATE
	Inventory.MaxAmount 0
}

Actor BeserkCurse5 : PowerupGiver
{
	Powerup.Type "BeserkCurse5"
	Powerup.Duration 35
	+INVENTORY.AUTOACTIVATE
	Inventory.MaxAmount 0
}

Actor BeserkCurse6 : PowerupGiver
{
	Powerup.Type "BeserkCurse6"
	Powerup.Duration 35
	+INVENTORY.AUTOACTIVATE
	Inventory.MaxAmount 0
}

Actor BeserkCurse7 : PowerupGiver
{
	Powerup.Type "BeserkCurse7"
	Powerup.Duration 35
	+INVENTORY.AUTOACTIVATE
	Inventory.MaxAmount 0
}

Actor BeserkCurse8 : PowerupGiver
{
	Powerup.Type "BeserkCurse8"
	Powerup.Duration 35
	+INVENTORY.AUTOACTIVATE
	Inventory.MaxAmount 0
}

Actor BeserkCurse9 : PowerupGiver
{
	Powerup.Type "BeserkCurse9"
	Powerup.Duration 35
	+INVENTORY.AUTOACTIVATE
	Inventory.MaxAmount 0
}

Actor BeserkCurse10 : PowerupGiver
{
	Powerup.Type "BeserkCurse10"
	Powerup.Duration 35
	+INVENTORY.AUTOACTIVATE
	Inventory.MaxAmount 0
}

Actor PowerBeserkCurse1 : PowerProtection
{
	Damagefactor "Normal", 1.9
	Powerup.Duration 35
	Inventory.Icon "BESEICON"
}

Actor PowerBeserkCurse2 : PowerProtection
{
	Damagefactor "Normal", 1.8
	Powerup.Duration 35
	Inventory.Icon "BESEICON"
}

Actor PowerBeserkCurse3 : PowerProtection
{
	Damagefactor "Normal", 1.7
	Powerup.Duration 35
	Inventory.Icon "BESEICON"
}

Actor PowerBeserkCurse4 : PowerProtection
{
	Damagefactor "Normal", 1.6
	Powerup.Duration 35
	Inventory.Icon "BESEICON"
}

Actor PowerBeserkCurse5 : PowerProtection
{
	Damagefactor "Normal", 1.5
	Powerup.Duration 35
	Inventory.Icon "BESEICON"
}

Actor PowerBeserkCurse6 : PowerProtection
{
	Damagefactor "Normal", 1.4
	Powerup.Duration 35
	Inventory.Icon "BESEICON"
}

Actor PowerBeserkCurse7 : PowerProtection
{
	Damagefactor "Normal", 1.3
	Powerup.Duration 35
	Inventory.Icon "BESEICON"
}

Actor PowerBeserkCurse8 : PowerProtection
{
	Damagefactor "Normal", 1.2
	Powerup.Duration 35
	Inventory.Icon "BESEICON"
}

Actor PowerBeserkCurse9 : PowerProtection
{
	Damagefactor "Normal", 1.1
	Powerup.Duration 35
	Inventory.Icon "BESEICON"
}

Actor PowerBeserkCurse10 : PowerProtection
{
	Damagefactor "Normal", 1.0
	Powerup.Duration 35
	Inventory.Icon "BESEICON"
}

Actor BeserkEffects
{
	+Missile
	+NoGravity
	+NoBlockmap
	+NoInteraction
	-Solid
	+CLIENTSIDEONLY +DONTBLAST
	VSpeed 6
	Radius 0
	Height 0
	RenderStyle Add
	Alpha 0.03
	Scale 0.37
	States
	{
	Spawn:
		SPFX D 0
		SPFX DDDDD 1 Bright A_FadeIn(0.2)
		SPFX DDDDDDDDDDDDDDDD 1 Bright A_FadeOut(0.06)
		Stop
	}
}

Actor BloodRush : WoC_Skill {}

Actor PowerBloodRush : Powerup
{
	Powerup.Duration -10
	Inventory.Icon "RUSHICON"
}

Actor Charge :  WoC_Skill {}

Actor InvisPuff : BulletPuff
{
	-BLOODSPLATTER
	+BLOODLESSIMPACT
	+THRUGHOST
	Damagetype "Physical"
	States
	{
	Spawn:
	Melee:
		TNT1 A 1
		Stop
	}
}

Actor UseCharge : CustomInventory
{
	+Inventory.AUTOACTIVATE
	Inventory.MaxAmount 0
	States
	{
		Use:
		TNT1 A 0 A_Blast(BF_NOIMPACTDAMAGE,5,45,5,"Invispuff","none")
		TNT1 A 0 A_SpawnItemEx("ChargeEffects",0,0,32,0,0,0,0,0)
		Stop
	}
}

Actor ChargeEffects
{
	Speed 0
	Radius 8
	Height 4
	Alpha 0.6
	PROJECTILE
	+RIPPER
	+BLOODLESSIMPACT
	+FORCEPAIN
	+DONTBLAST
	+FORCERADIUSDMG
	ReactionTime 5
	Damagetype "Physical"
	States
	{
	Spawn:
		TNT1 A 0
		TNT1 A 1 A_Explode(ACS_NamedExecuteWithResult("WOC Player Scale", 20, STRENGTH, ABIL_CHARGE, WOCTARGET),45,0,0,45) //A_SpawnItemEx ("StompDust",0,0,0,0,0,1,0,0,0)
		Stop
	Death:
		TNT1 S 1
		Stop
	}
}

Actor HammerMastery : WoC_Skill {}

Actor BattleShout : WoC_Skill {}

Actor BattleShoutSpeed : PowerupGiver
{
	+INVENTORY.AUTOACTIVATE
	Inventory.MaxAmount 0
	Powerup.Type BattleShoutSpeed
}

Actor PowerBattleShoutSpeed : PowerSpeed
{
	Speed 1.25
	Powerup.Duration -30
	+PowerSpeed.NoTrail
	Inventory.Icon ""
}

Actor BattleShoutAura1 : CustomInventory
{
	+INVENTORY.AUTOACTIVATE
	Inventory.MaxAmount 0
	States
	{
	Use:
		TNT1 A 0 A_JumpIfInventory("PowerBattleShout10",1,"Failz")
		TNT1 A 0 A_JumpIfInventory("PowerBattleShout9",1,"Failz")
		TNT1 A 0 A_JumpIfInventory("PowerBattleShout8",1,"Failz")
		TNT1 A 0 A_JumpIfInventory("PowerBattleShout7",1,"Failz")
		TNT1 A 0 A_JumpIfInventory("PowerBattleShout6",1,"Failz")
		TNT1 A 0 A_JumpIfInventory("PowerBattleShout5",1,"Failz")
		TNT1 A 0 A_JumpIfInventory("PowerBattleShout4",1,"Failz")
		TNT1 A 0 A_JumpIfInventory("PowerBattleShout3",1,"Failz")
		TNT1 A 0 A_JumpIfInventory("PowerBattleShout2",1,"Failz")
		TNT1 A 0 A_GiveInventory("PowerBattleShout1",1)
		Stop
	Failz:
		TNT1 A 0
		Stop
	}
}

Actor BattleShoutAura2 : CustomInventory
{
	+INVENTORY.AUTOACTIVATE
	Inventory.MaxAmount 0
	States
	{
	Use:
		TNT1 A 0 A_TakeInventory("PowerBattleShout1",1)
		TNT1 A 0 A_JumpIfInventory("PowerBattleShout10",1,"Failz")
		TNT1 A 0 A_JumpIfInventory("PowerBattleShout9",1,"Failz")
		TNT1 A 0 A_JumpIfInventory("PowerBattleShout8",1,"Failz")
		TNT1 A 0 A_JumpIfInventory("PowerBattleShout7",1,"Failz")
		TNT1 A 0 A_JumpIfInventory("PowerBattleShout6",1,"Failz")
		TNT1 A 0 A_JumpIfInventory("PowerBattleShout5",1,"Failz")
		TNT1 A 0 A_JumpIfInventory("PowerBattleShout4",1,"Failz")
		TNT1 A 0 A_JumpIfInventory("PowerBattleShout3",1,"Failz")
		TNT1 A 0 A_GiveInventory("PowerBattleShout2",1)
		Stop
	Failz:
		TNT1 A 0
		Stop
	}
}

Actor BattleShoutAura3 : CustomInventory
{
	+INVENTORY.AUTOACTIVATE
	Inventory.MaxAmount 0
	States
	{
	Use:
		TNT1 A 0 A_TakeInventory("PowerBattleShout2",1)
		TNT1 A 0 A_TakeInventory("PowerBattleShout1",1)
		TNT1 A 0 A_JumpIfInventory("PowerBattleShout10",1,"Failz")
		TNT1 A 0 A_JumpIfInventory("PowerBattleShout9",1,"Failz")
		TNT1 A 0 A_JumpIfInventory("PowerBattleShout8",1,"Failz")
		TNT1 A 0 A_JumpIfInventory("PowerBattleShout7",1,"Failz")
		TNT1 A 0 A_JumpIfInventory("PowerBattleShout6",1,"Failz")
		TNT1 A 0 A_JumpIfInventory("PowerBattleShout5",1,"Failz")
		TNT1 A 0 A_JumpIfInventory("PowerBattleShout4",1,"Failz")
		TNT1 A 0 A_GiveInventory("PowerBattleShout3",1)
		Stop
	Failz:
		TNT1 A 0
		Stop
	}
}

Actor BattleShoutAura4 : CustomInventory
{
	+INVENTORY.AUTOACTIVATE
	Inventory.MaxAmount 0
	States
	{
	Use:
		TNT1 A 0 A_TakeInventory("PowerBattleShout3",1)
		TNT1 A 0 A_TakeInventory("PowerBattleShout2",1)
		TNT1 A 0 A_TakeInventory("PowerBattleShout1",1)
		TNT1 A 0 A_JumpIfInventory("PowerBattleShout10",1,"Failz")
		TNT1 A 0 A_JumpIfInventory("PowerBattleShout9",1,"Failz")
		TNT1 A 0 A_JumpIfInventory("PowerBattleShout8",1,"Failz")
		TNT1 A 0 A_JumpIfInventory("PowerBattleShout7",1,"Failz")
		TNT1 A 0 A_JumpIfInventory("PowerBattleShout6",1,"Failz")
		TNT1 A 0 A_JumpIfInventory("PowerBattleShout5",1,"Failz")
		TNT1 A 0 A_GiveInventory("PowerBattleShout4",1)
		Stop
	Failz:
		TNT1 A 0
		Stop
	}
}

Actor BattleShoutAura5 : CustomInventory
{
	+INVENTORY.AUTOACTIVATE
	Inventory.MaxAmount 0
	States
	{
	Use:
		TNT1 A 0 A_TakeInventory("PowerBattleShout4",1)
		TNT1 A 0 A_TakeInventory("PowerBattleShout3",1)
		TNT1 A 0 A_TakeInventory("PowerBattleShout2",1)
		TNT1 A 0 A_TakeInventory("PowerBattleShout1",1)
		TNT1 A 0 A_JumpIfInventory("PowerBattleShout10",1,"Failz")
		TNT1 A 0 A_JumpIfInventory("PowerBattleShout9",1,"Failz")
		TNT1 A 0 A_JumpIfInventory("PowerBattleShout8",1,"Failz")
		TNT1 A 0 A_JumpIfInventory("PowerBattleShout7",1,"Failz")
		TNT1 A 0 A_JumpIfInventory("PowerBattleShout6",1,"Failz")
		TNT1 A 0 A_GiveInventory("PowerBattleShout5",1)
		Stop
	Failz:
		TNT1 A 0
		Stop
	}
}

Actor BattleShoutAura6 : CustomInventory
{
	+INVENTORY.AUTOACTIVATE
	Inventory.MaxAmount 0
	States
	{
	Use:
		TNT1 A 0 A_TakeInventory("PowerBattleShout5",1)
		TNT1 A 0 A_TakeInventory("PowerBattleShout4",1)
		TNT1 A 0 A_TakeInventory("PowerBattleShout3",1)
		TNT1 A 0 A_TakeInventory("PowerBattleShout2",1)
		TNT1 A 0 A_TakeInventory("PowerBattleShout1",1)
		TNT1 A 0 A_JumpIfInventory("PowerBattleShout10",1,"Failz")
		TNT1 A 0 A_JumpIfInventory("PowerBattleShout9",1,"Failz")
		TNT1 A 0 A_JumpIfInventory("PowerBattleShout8",1,"Failz")
		TNT1 A 0 A_JumpIfInventory("PowerBattleShout7",1,"Failz")
		TNT1 A 0 A_GiveInventory("PowerBattleShout6",1)
		Stop
	Failz:
		TNT1 A 0
		Stop
	}
}

Actor BattleShoutAura7 : CustomInventory
{
	+INVENTORY.AUTOACTIVATE
	Inventory.MaxAmount 0
	States
	{
	Use:
		TNT1 A 0 A_TakeInventory("PowerBattleShout6",1)
		TNT1 A 0 A_TakeInventory("PowerBattleShout5",1)
		TNT1 A 0 A_TakeInventory("PowerBattleShout4",1)
		TNT1 A 0 A_TakeInventory("PowerBattleShout3",1)
		TNT1 A 0 A_TakeInventory("PowerBattleShout2",1)
		TNT1 A 0 A_TakeInventory("PowerBattleShout1",1)
		TNT1 A 0 A_JumpIfInventory("PowerBattleShout10",1,"Failz")
		TNT1 A 0 A_JumpIfInventory("PowerBattleShout9",1,"Failz")
		TNT1 A 0 A_JumpIfInventory("PowerBattleShout8",1,"Failz")
		TNT1 A 0 A_GiveInventory("PowerBattleShout7",1)
		Stop
	Failz:
		TNT1 A 0
		Stop
	}
}

Actor BattleShoutAura8 : CustomInventory
{
	+INVENTORY.AUTOACTIVATE
	Inventory.MaxAmount 0
	States
	{
	Use:
		TNT1 A 0 A_TakeInventory("PowerBattleShout7",1)
		TNT1 A 0 A_TakeInventory("PowerBattleShout6",1)
		TNT1 A 0 A_TakeInventory("PowerBattleShout5",1)
		TNT1 A 0 A_TakeInventory("PowerBattleShout4",1)
		TNT1 A 0 A_TakeInventory("PowerBattleShout3",1)
		TNT1 A 0 A_TakeInventory("PowerBattleShout2",1)
		TNT1 A 0 A_TakeInventory("PowerBattleShout1",1)
		TNT1 A 0 A_JumpIfInventory("PowerBattleShout10",1,"Failz")
		TNT1 A 0 A_JumpIfInventory("PowerBattleShout9",1,"Failz")
		TNT1 A 0 A_GiveInventory("PowerBattleShout8",1)
		Stop
	Failz:
		TNT1 A 0
		Stop
	}
}

Actor BattleShoutAura9 : CustomInventory
{
	+INVENTORY.AUTOACTIVATE
	Inventory.MaxAmount 0
	States
	{
	Use:
		TNT1 A 0 A_TakeInventory("PowerBattleShout8",1)
		TNT1 A 0 A_TakeInventory("PowerBattleShout7",1)
		TNT1 A 0 A_TakeInventory("PowerBattleShout6",1)
		TNT1 A 0 A_TakeInventory("PowerBattleShout5",1)
		TNT1 A 0 A_TakeInventory("PowerBattleShout4",1)
		TNT1 A 0 A_TakeInventory("PowerBattleShout3",1)
		TNT1 A 0 A_TakeInventory("PowerBattleShout2",1)
		TNT1 A 0 A_TakeInventory("PowerBattleShout1",1)
		TNT1 A 0 A_JumpIfInventory("PowerBattleShout10",1,"Failz")
		TNT1 A 0 A_GiveInventory("PowerBattleShout9",1)
		Stop
	Failz:
		TNT1 A 0
		Stop
	}
}

Actor BattleShoutAura10 : CustomInventory
{
	+INVENTORY.AUTOACTIVATE
	Inventory.MaxAmount 0
	States
	{
	Use:
		TNT1 A 0 A_TakeInventory("PowerBattleShout9",1)
		TNT1 A 0 A_TakeInventory("PowerBattleShout8",1)
		TNT1 A 0 A_TakeInventory("PowerBattleShout7",1)
		TNT1 A 0 A_TakeInventory("PowerBattleShout6",1)
		TNT1 A 0 A_TakeInventory("PowerBattleShout5",1)
		TNT1 A 0 A_TakeInventory("PowerBattleShout4",1)
		TNT1 A 0 A_TakeInventory("PowerBattleShout3",1)
		TNT1 A 0 A_TakeInventory("PowerBattleShout2",1)
		TNT1 A 0 A_TakeInventory("PowerBattleShout1",1)
		TNT1 A 0 A_GiveInventory("PowerBattleShout10",1)
		Stop
	Failz:
		TNT1 A 0
		Stop
	}
}

Actor PowerBattleShout1 : PowerDamage
{
	Damagefactor "Normal", 1.18
	Powerup.Duration -30
	Inventory.Icon "ADRNICON"
}

Actor PowerBattleShout2 : PowerDamage
{
	Damagefactor "Normal", 1.21
	Powerup.Duration -30
	Inventory.Icon "ADRNICON"
}

Actor PowerBattleShout3 : PowerDamage
{
	Damagefactor "Normal", 1.24
	Powerup.Duration -30
	Inventory.Icon "ADRNICON"
}

Actor PowerBattleShout4 : PowerDamage
{
	Damagefactor "Normal", 1.27
	Powerup.Duration -30
	Inventory.Icon "ADRNICON"
}

Actor PowerBattleShout5 : PowerDamage
{
	Damagefactor "Normal", 1.30
	Powerup.Duration -30
	Inventory.Icon "ADRNICON"
}

Actor PowerBattleShout6 : PowerDamage
{
	Damagefactor "Normal", 1.33
	Powerup.Duration -30
	Inventory.Icon "ADRNICON"
}

Actor PowerBattleShout7 : PowerDamage
{
	Damagefactor "Normal", 1.36
	Powerup.Duration -30
	Inventory.Icon "ADRNICON"
}

Actor PowerBattleShout8 : PowerDamage
{
	Damagefactor "Normal", 1.39
	Powerup.Duration -30
	Inventory.Icon "ADRNICON"
}

Actor PowerBattleShout9 : PowerDamage
{
	Damagefactor "Normal", 1.42
	Powerup.Duration -30
	Inventory.Icon "ADRNICON"
}

Actor PowerBattleShout10 : PowerDamage
{
	Damagefactor "Normal", 1.45
	Powerup.Duration -30
	Inventory.Icon "ADRNICON"
}

Actor AdrenalineEffects
{
 +Missile
 +NoGravity
 +NoBlockmap
 +NoInteraction
 -Solid
 +CLIENTSIDEONLY +DONTBLAST
 VSpeed 6
 Radius 0
 Height 0
 RenderStyle Add
 Alpha 0.03
 Scale 0.37
 //translation "80:111=196:207"
 States
 {
  Spawn:
   SPFX H 0
   SPFX HHHHH 1 Bright A_FadeIn(0.2)
   SPFX HHHHHHHHHHHHHHHH 1 Bright A_FadeOut(0.06)
   Stop
 }
}

Actor Concentration : WoC_Skill {}

Actor ConcentrationItem : CustomInventory
{
	Inventory.MaxAmount 0
	+Inventory.AUTOACTIVATE
	States
	{
	Use:
		PLAY G 0 A_JumpIfInventory("Concentration", 1, 1)
		Stop
		PLAY G 0 A_Jump(200-(ACS_ExecuteWithResult(WOC_DECORATE,FIGHTERSKILLS,ABIL_CONCENTRATION,ACTIVATOR)*10),1)
		Stop
		PLAY G 0 A_GiveInventory("Mana1", 1+ACS_ExecuteWithResult(WOC_DECORATE,FIGHTERSKILLS,ABIL_CONCENTRATION,ACTIVATOR)/3)
		PLAY G 0 A_GiveInventory("Mana2", 1+ACS_ExecuteWithResult(WOC_DECORATE,FIGHTERSKILLS,ABIL_CONCENTRATION,ACTIVATOR)/3)
		Stop
	}
}

Actor Deflection : WoC_Skill {}

Actor UseDeflectON : Custominventory
{
	Inventory.MaxAmount 0
	+Inventory.AUTOACTIVATE
	states
	{
		Use:
		TNT1 A 0 A_ChangeFlag("REFLECTIVE", 1)
		Stop
	}
}

Actor UseDeflectOFF : Custominventory
{
	Inventory.MaxAmount 0
	+Inventory.AUTOACTIVATE
	states
	{
		Use:
		TNT1 A 0 A_ChangeFlag("REFLECTIVE", 0)
		Stop
	}
}

Actor DeflectionIcon1 : PowerupGiver
{
	+INVENTORY.AUTOACTIVATE
	Inventory.MaxAmount 0
	Powerup.Type DeflectionIcon
	Powerup.Duration -16
}

Actor DeflectionIcon2 : PowerupGiver
{
	+INVENTORY.AUTOACTIVATE
	Inventory.MaxAmount 0
	Powerup.Type DeflectionIcon
	Powerup.Duration -17
}

Actor DeflectionIcon3 : PowerupGiver
{
	+INVENTORY.AUTOACTIVATE
	Inventory.MaxAmount 0
	Powerup.Type DeflectionIcon
	Powerup.Duration -18
}

Actor DeflectionIcon4 : PowerupGiver
{
	+INVENTORY.AUTOACTIVATE
	Inventory.MaxAmount 0
	Powerup.Type DeflectionIcon
	Powerup.Duration -19
}

Actor DeflectionIcon5 : PowerupGiver
{
	+INVENTORY.AUTOACTIVATE
	Inventory.MaxAmount 0
	Powerup.Type DeflectionIcon
	Powerup.Duration -20
}

Actor DeflectionIcon6 : PowerupGiver
{
	+INVENTORY.AUTOACTIVATE
	Inventory.MaxAmount 0
	Powerup.Type DeflectionIcon
	Powerup.Duration -21
}

Actor DeflectionIcon7 : PowerupGiver
{
	+INVENTORY.AUTOACTIVATE
	Inventory.MaxAmount 0
	Powerup.Type DeflectionIcon
	Powerup.Duration -22
}

Actor DeflectionIcon8 : PowerupGiver
{
	+INVENTORY.AUTOACTIVATE
	Inventory.MaxAmount 0
	Powerup.Type DeflectionIcon
	Powerup.Duration -23
}

Actor DeflectionIcon9 : PowerupGiver
{
	+INVENTORY.AUTOACTIVATE
	Inventory.MaxAmount 0
	Powerup.Type DeflectionIcon
	Powerup.Duration -24
}

Actor DeflectionIcon10 : PowerupGiver
{
	+INVENTORY.AUTOACTIVATE
	Inventory.MaxAmount 0
	Powerup.Type DeflectionIcon
	Powerup.Duration -25
}

Actor PowerDeflectionIcon : PowerDamage
{
	Damagefactor "-.-", 1.0
	Powerup.Duration -500000000
	Inventory.Icon "RFCTICON"
}

Actor DeflectionDefense1 : PowerupGiver
{
	Powerup.Type "DeflectionDefense1"
	Powerup.Duration -30
	+INVENTORY.AUTOACTIVATE
	Inventory.MaxAmount 0
}

Actor DeflectionDefense2 : PowerupGiver
{
	Powerup.Type "DeflectionDefense2"
	Powerup.Duration -30
	+INVENTORY.AUTOACTIVATE
	Inventory.MaxAmount 0
}

Actor DeflectionDefense3 : PowerupGiver
{
	Powerup.Type "DeflectionDefense3"
	Powerup.Duration -30
	+INVENTORY.AUTOACTIVATE
	Inventory.MaxAmount 0
}

Actor DeflectionDefense4 : PowerupGiver
{
	Powerup.Type "DeflectionDefense4"
	Powerup.Duration -30
	+INVENTORY.AUTOACTIVATE
	Inventory.MaxAmount 0
}

Actor DeflectionDefense5 : PowerupGiver
{
	Powerup.Type "DeflectionDefense5"
	Powerup.Duration -30
	+INVENTORY.AUTOACTIVATE
	Inventory.MaxAmount 0
}

Actor DeflectionDefense6 : PowerupGiver
{
	Powerup.Type "DeflectionDefense6"
	Powerup.Duration -30
	+INVENTORY.AUTOACTIVATE
	Inventory.MaxAmount 0
}

Actor DeflectionDefense7 : PowerupGiver
{
	Powerup.Type "DeflectionDefense7"
	Powerup.Duration -30
	+INVENTORY.AUTOACTIVATE
	Inventory.MaxAmount 0
}

Actor DeflectionDefense8 : PowerupGiver
{
	Powerup.Type "DeflectionDefense8"
	Powerup.Duration -30
	+INVENTORY.AUTOACTIVATE
	Inventory.MaxAmount 0
}

Actor DeflectionDefense9 : PowerupGiver
{
	Powerup.Type "DeflectionDefense9"
	Powerup.Duration -30
	+INVENTORY.AUTOACTIVATE
	Inventory.MaxAmount 0
}

Actor DeflectionDefense10 : PowerupGiver
{
	Powerup.Type "DeflectionDefense10"
	Powerup.Duration -30
	+INVENTORY.AUTOACTIVATE
	Inventory.MaxAmount 0
}

Actor PowerDeflectionDefense1 : PowerProtection
{
	Damagefactor "Normal", 0.7
	Powerup.Duration -30
}

Actor PowerDeflectionDefense2 : PowerProtection
{
	Damagefactor "Normal", 0.672
	Powerup.Duration -30
}

Actor PowerDeflectionDefense3 : PowerProtection
{
	Damagefactor "Normal", 0.64512
	Powerup.Duration -30
}

Actor PowerDeflectionDefense4 : PowerProtection
{
	Damagefactor "Normal", 0.61932
	Powerup.Duration -30
}

Actor PowerDeflectionDefense5 : PowerProtection
{
	Damagefactor "Normal", 0.59454
	Powerup.Duration -30
}

Actor PowerDeflectionDefense6 : PowerProtection
{
	Damagefactor "Normal", 0.57076
	Powerup.Duration -30
}

Actor PowerDeflectionDefense7 : PowerProtection
{
	Damagefactor "Normal", 0.54793
	Powerup.Duration -30
}

Actor PowerDeflectionDefense8 : PowerProtection
{
	Damagefactor "Normal", 0.52601
	Powerup.Duration -30
}

Actor PowerDeflectionDefense9 : PowerProtection
{
	Damagefactor "Normal", 0.50497
	Powerup.Duration -30
}

Actor PowerDeflectionDefense10 : PowerProtection
{
	Damagefactor "Normal", 0.48477
	Powerup.Duration -30
}

Actor HookShot : WoC_Skill {}

Actor UseHookShot : Custominventory
{
	Inventory.MaxAmount 0
	+Inventory.AUTOACTIVATE
	States
	{
	Use:
		TNT1 A 0 A_FireCustomMissile("FighterHookShot",0,0)
		Stop
	}
}

ACTOR FighterHookShot : LoreShot
{
	Speed 35
	Height 14
	Radius 10
	Projectile
	-STRIFEDAMAGE
	+WINDTHRUST
	+THRUGHOST
	+MTHRUSPECIES +NODAMAGETHRUST
	+BLOODSPLATTER
	+DONTBLAST
	Damage (ACS_NamedExecuteWithResult("WOC Player Scale", FRandom(35,55), AGILITY, ABIL_HOOKSHOT, WOCTARGET))
	Damagetype "Physical"
	MaxStepHeight 4
	SeeSound "ability/chain"
	States
	{
	Spawn:
		OCLW A 1 A_SpawnItemEX("HookShotChain",1)
		Loop
	Death:
		OCLW A 6
		Stop
	}
}

ACTOR HookShotChain
{
	+NOBLOCKMAP
	+NOGRAVITY
	+NOINTERACTION
	+CLIENTSIDEONLY +DONTBLAST
	States
	{
	Spawn:
		TEND A 10
		Stop
	}
}

Actor SwordMastery : WoC_Skill {}

Actor Vengeance : WoC_Skill {}

Actor VengeanceBoost1 : CustomInventory
{
	+INVENTORY.AUTOACTIVATE
	Inventory.MaxAmount 0
	States
	{
	Use:
		TNT1 A 0 A_JumpIfInventory("PowerVengeance10",1,"Failz")
		TNT1 A 0 A_JumpIfInventory("PowerVengeance9",1,"Failz")
		TNT1 A 0 A_JumpIfInventory("PowerVengeance8",1,"Failz")
		TNT1 A 0 A_JumpIfInventory("PowerVengeance7",1,"Failz")
		TNT1 A 0 A_JumpIfInventory("PowerVengeance6",1,"Failz")
		TNT1 A 0 A_JumpIfInventory("PowerVengeance5",1,"Failz")
		TNT1 A 0 A_JumpIfInventory("PowerVengeance4",1,"Failz")
		TNT1 A 0 A_JumpIfInventory("PowerVengeance3",1,"Failz")
		TNT1 A 0 A_JumpIfInventory("PowerVengeance2",1,"Failz")
		TNT1 A 0 A_GiveInventory("PowerVengeance1",1)
		Stop
	Failz:
		TNT1 A 0
		Stop
	}
}

Actor VengeanceBoost2 : CustomInventory
{
	+INVENTORY.AUTOACTIVATE
	Inventory.MaxAmount 0
	States
	{
	Use:
		TNT1 A 0 A_TakeInventory("PowerVengeance1",1)
		TNT1 A 0 A_JumpIfInventory("PowerVengeance10",1,"Failz")
		TNT1 A 0 A_JumpIfInventory("PowerVengeance9",1,"Failz")
		TNT1 A 0 A_JumpIfInventory("PowerVengeance8",1,"Failz")
		TNT1 A 0 A_JumpIfInventory("PowerVengeance7",1,"Failz")
		TNT1 A 0 A_JumpIfInventory("PowerVengeance6",1,"Failz")
		TNT1 A 0 A_JumpIfInventory("PowerVengeance5",1,"Failz")
		TNT1 A 0 A_JumpIfInventory("PowerVengeance4",1,"Failz")
		TNT1 A 0 A_JumpIfInventory("PowerVengeance3",1,"Failz")
		TNT1 A 0 A_GiveInventory("PowerVengeance2",1)
		Stop
	Failz:
		TNT1 A 0
		Stop
	}
}

Actor VengeanceBoost3 : CustomInventory
{
	+INVENTORY.AUTOACTIVATE
	Inventory.MaxAmount 0
	States
	{
	Use:
		TNT1 A 0 A_TakeInventory("PowerVengeance2",1)
		TNT1 A 0 A_TakeInventory("PowerVengeance1",1)
		TNT1 A 0 A_JumpIfInventory("PowerVengeance10",1,"Failz")
		TNT1 A 0 A_JumpIfInventory("PowerVengeance9",1,"Failz")
		TNT1 A 0 A_JumpIfInventory("PowerVengeance8",1,"Failz")
		TNT1 A 0 A_JumpIfInventory("PowerVengeance7",1,"Failz")
		TNT1 A 0 A_JumpIfInventory("PowerVengeance6",1,"Failz")
		TNT1 A 0 A_JumpIfInventory("PowerVengeance5",1,"Failz")
		TNT1 A 0 A_JumpIfInventory("PowerVengeance4",1,"Failz")
		TNT1 A 0 A_GiveInventory("PowerVengeance3",1)
		Stop
	Failz:
		TNT1 A 0
		Stop
	}
}

Actor VengeanceBoost4 : CustomInventory
{
	+INVENTORY.AUTOACTIVATE
	Inventory.MaxAmount 0
	States
	{
	Use:
		TNT1 A 0 A_TakeInventory("PowerVengeance3",1)
		TNT1 A 0 A_TakeInventory("PowerVengeance2",1)
		TNT1 A 0 A_TakeInventory("PowerVengeance1",1)
		TNT1 A 0 A_JumpIfInventory("PowerVengeance10",1,"Failz")
		TNT1 A 0 A_JumpIfInventory("PowerVengeance9",1,"Failz")
		TNT1 A 0 A_JumpIfInventory("PowerVengeance8",1,"Failz")
		TNT1 A 0 A_JumpIfInventory("PowerVengeance7",1,"Failz")
		TNT1 A 0 A_JumpIfInventory("PowerVengeance6",1,"Failz")
		TNT1 A 0 A_JumpIfInventory("PowerVengeance5",1,"Failz")
		TNT1 A 0 A_GiveInventory("PowerVengeance4",1)
		Stop
	Failz:
		TNT1 A 0
		Stop
	}
}

Actor VengeanceBoost5 : CustomInventory
{
	+INVENTORY.AUTOACTIVATE
	Inventory.MaxAmount 0
	States
	{
	Use:
		TNT1 A 0 A_TakeInventory("PowerVengeance4",1)
		TNT1 A 0 A_TakeInventory("PowerVengeance3",1)
		TNT1 A 0 A_TakeInventory("PowerVengeance2",1)
		TNT1 A 0 A_TakeInventory("PowerVengeance1",1)
		TNT1 A 0 A_JumpIfInventory("PowerVengeance10",1,"Failz")
		TNT1 A 0 A_JumpIfInventory("PowerVengeance9",1,"Failz")
		TNT1 A 0 A_JumpIfInventory("PowerVengeance8",1,"Failz")
		TNT1 A 0 A_JumpIfInventory("PowerVengeance7",1,"Failz")
		TNT1 A 0 A_JumpIfInventory("PowerVengeance6",1,"Failz")
		TNT1 A 0 A_GiveInventory("PowerVengeance5",1)
		Stop
	Failz:
		TNT1 A 0
		Stop
	}
}

Actor VengeanceBoost6 : CustomInventory
{
	+INVENTORY.AUTOACTIVATE
	Inventory.MaxAmount 0
	States
	{
	Use:
		TNT1 A 0 A_TakeInventory("PowerVengeance5",1)
		TNT1 A 0 A_TakeInventory("PowerVengeance4",1)
		TNT1 A 0 A_TakeInventory("PowerVengeance3",1)
		TNT1 A 0 A_TakeInventory("PowerVengeance2",1)
		TNT1 A 0 A_TakeInventory("PowerVengeance1",1)
		TNT1 A 0 A_JumpIfInventory("PowerVengeance10",1,"Failz")
		TNT1 A 0 A_JumpIfInventory("PowerVengeance9",1,"Failz")
		TNT1 A 0 A_JumpIfInventory("PowerVengeance8",1,"Failz")
		TNT1 A 0 A_JumpIfInventory("PowerVengeance7",1,"Failz")
		TNT1 A 0 A_GiveInventory("PowerVengeance6",1)
		Stop
	Failz:
		TNT1 A 0
		Stop
	}
}

Actor VengeanceBoost7 : CustomInventory
{
	+INVENTORY.AUTOACTIVATE
	Inventory.MaxAmount 0
	States
	{
	Use:
		TNT1 A 0 A_TakeInventory("PowerVengeance6",1)
		TNT1 A 0 A_TakeInventory("PowerVengeance5",1)
		TNT1 A 0 A_TakeInventory("PowerVengeance4",1)
		TNT1 A 0 A_TakeInventory("PowerVengeance3",1)
		TNT1 A 0 A_TakeInventory("PowerVengeance2",1)
		TNT1 A 0 A_TakeInventory("PowerVengeance1",1)
		TNT1 A 0 A_JumpIfInventory("PowerVengeance10",1,"Failz")
		TNT1 A 0 A_JumpIfInventory("PowerVengeance9",1,"Failz")
		TNT1 A 0 A_JumpIfInventory("PowerVengeance8",1,"Failz")
		TNT1 A 0 A_GiveInventory("PowerVengeance7",1)
		Stop
	Failz:
		TNT1 A 0
		Stop
	}
}

Actor VengeanceBoost8 : CustomInventory
{
	+INVENTORY.AUTOACTIVATE
	Inventory.MaxAmount 0
	States
	{
	Use:
		TNT1 A 0 A_TakeInventory("PowerVengeance7",1)
		TNT1 A 0 A_TakeInventory("PowerVengeance6",1)
		TNT1 A 0 A_TakeInventory("PowerVengeance5",1)
		TNT1 A 0 A_TakeInventory("PowerVengeance4",1)
		TNT1 A 0 A_TakeInventory("PowerVengeance3",1)
		TNT1 A 0 A_TakeInventory("PowerVengeance2",1)
		TNT1 A 0 A_TakeInventory("PowerVengeance1",1)
		TNT1 A 0 A_JumpIfInventory("PowerVengeance10",1,"Failz")
		TNT1 A 0 A_JumpIfInventory("PowerVengeance9",1,"Failz")
		TNT1 A 0 A_GiveInventory("PowerVengeance8",1)
		Stop
	Failz:
		TNT1 A 0
		Stop
	}
}

Actor VengeanceBoost9 : CustomInventory
{
	+INVENTORY.AUTOACTIVATE
	Inventory.MaxAmount 0
	States
	{
	Use:
		TNT1 A 0 A_TakeInventory("PowerVengeance8",1)
		TNT1 A 0 A_TakeInventory("PowerVengeance7",1)
		TNT1 A 0 A_TakeInventory("PowerVengeance6",1)
		TNT1 A 0 A_TakeInventory("PowerVengeance5",1)
		TNT1 A 0 A_TakeInventory("PowerVengeance4",1)
		TNT1 A 0 A_TakeInventory("PowerVengeance3",1)
		TNT1 A 0 A_TakeInventory("PowerVengeance2",1)
		TNT1 A 0 A_TakeInventory("PowerVengeance1",1)
		TNT1 A 0 A_JumpIfInventory("PowerVengeance10",1,"Failz")
		TNT1 A 0 A_GiveInventory("PowerVengeance9",1)
		Stop
	Failz:
		TNT1 A 0
		Stop
	}
}

Actor VengeanceBoost10 : CustomInventory
{
	+INVENTORY.AUTOACTIVATE
	Inventory.MaxAmount 0
	States
	{
	Use:
		TNT1 A 0 A_TakeInventory("PowerVengeance9",1)
		TNT1 A 0 A_TakeInventory("PowerVengeance8",1)
		TNT1 A 0 A_TakeInventory("PowerVengeance7",1)
		TNT1 A 0 A_TakeInventory("PowerVengeance6",1)
		TNT1 A 0 A_TakeInventory("PowerVengeance5",1)
		TNT1 A 0 A_TakeInventory("PowerVengeance4",1)
		TNT1 A 0 A_TakeInventory("PowerVengeance3",1)
		TNT1 A 0 A_TakeInventory("PowerVengeance2",1)
		TNT1 A 0 A_TakeInventory("PowerVengeance1",1)
		TNT1 A 0 A_GiveInventory("PowerVengeance10",1)
		Stop
	Failz:
		TNT1 A 0
		Stop
	}
}

Actor PowerVengeance1 : PowerDamage
{
	Damagefactor "Normal", 1.12
	Powerup.Duration -10
	Inventory.Icon "RELTICON"
}

Actor PowerVengeance2 : PowerDamage
{
	Damagefactor "Normal", 1.14
	Powerup.Duration -10
	Inventory.Icon "RELTICON"
}

Actor PowerVengeance3 : PowerDamage
{
	Damagefactor "Normal", 1.16
	Powerup.Duration -10
	Inventory.Icon "RELTICON"
}

Actor PowerVengeance4 : PowerDamage
{
	Damagefactor "Normal", 1.18
	Powerup.Duration -10
	Inventory.Icon "RELTICON"
}

Actor PowerVengeance5 : PowerDamage
{
	Damagefactor "Normal", 1.20
	Powerup.Duration -10
	Inventory.Icon "RELTICON"
}

Actor PowerVengeance6 : PowerDamage
{
	Damagefactor "Normal", 1.22
	Powerup.Duration -10
	Inventory.Icon "RELTICON"
}

Actor PowerVengeance7 : PowerDamage
{
	Damagefactor "Normal", 1.24
	Powerup.Duration -10
	Inventory.Icon "RELTICON"
}

Actor PowerVengeance8 : PowerDamage
{
	Damagefactor "Normal", 1.26
	Powerup.Duration -10
	Inventory.Icon "RELTICON"
}

Actor PowerVengeance9 : PowerDamage
{
	Damagefactor "Normal", 1.28
	Powerup.Duration -10
	Inventory.Icon "RELTICON"
}

Actor PowerVengeance10 : PowerDamage
{
	Damagefactor "Normal", 1.30
	Powerup.Duration -10
	Inventory.Icon "RELTICON"
}

Actor DeathBlow : WoC_Skill {}
Actor DeathBlowPuff
{
	RenderStyle Add
	Scale 0.6
	VSpeed 0
	+NOBLOCKMAP
	+NOGRAVITY
	+PUFFONACTORS
	Damagetype "Deathblow"
	States
	{
	Spawn:
		SRBA EFGHIJ 3 Bright
		Stop
	}
}

Actor FuryItem : Custominventory
{
	Inventory.MaxAmount 0
	+Inventory.AUTOACTIVATE
	states
	{
	Use:
		TNT1 A 0 A_GiveInventory("PowerFuryTimer")
		TNT1 A 0 A_GiveInventory("Fury", 1)
		Stop
	}
}

Actor Fury : WoC_Stat {}

Actor FuryDamage : PowerupGiver
{
	Powerup.Type "FuryDamage"
	Powerup.Duration -4
	+INVENTORY.AUTOACTIVATE
	Inventory.MaxAmount 0
}

Actor PowerFuryDamage : PowerDamage
{
	Damagefactor "Normal", 1.4
	Powerup.Duration -4
	//Inventory.Icon "BLUSICON"
}

Actor PowerFuryTimer : Powerup
{
	Powerup.Duration -5
	//Inventory.Icon "RLTNICON"
}

Actor TemperanceItem : Custominventory
{
	Inventory.MaxAmount 0
	+Inventory.AUTOACTIVATE
	states
	{
	Use:
		TNT1 A 0 A_GiveInventory("PowerTemperanceTimer")
		TNT1 A 0 A_GiveInventory("Temperance", 1)
		Stop
	}
}

Actor Temperance : WoC_Stat { Inventory.MaxAmount 5 }

Actor PowerTemperanceTimer : Powerup
{
	Powerup.Duration -5
	Inventory.Icon "TEMPICON"
}

Actor VanguardLastStand : PowerupGiver
{
	+INVENTORY.AUTOACTIVATE
	Inventory.MaxAmount 0
	Powerup.Type VanguardLastStand
}

Actor PowerVanguardLastStand : PowerProtection
{
	DamageFactor "Normal", 0.5
	Powerup.Duration -500000000
	Inventory.Icon "LSTNICON"
}

Actor InspireItem : CustomInventory
{
	+Inventory.AUTOACTIVATE
	states
	{
	Use:
		TNT1 A 0 ACS_NamedExecuteAlways("WOC INSPIRE")
		Stop
	}
}

Actor InspireFlash : CustomInventory
{
	inventory.maxamount 0
	+AUTOACTIVATE
	+INVENTORY.ALWAYSPICKUP
	states
	{
	Spawn:
		TNT1 A 1
		Stop
	Use:
		TNT1 A 0 A_GiveInventory("InspireDamage",1)
		TNT1 A 1 A_SetBlend("White",0.02,2)
		stop
	}
}

Actor IntimidateGiver : PowerupGiver
{
	+INVENTORY.AUTOACTIVATE
	Inventory.MaxAmount 0
	Powerup.Type Intimidate
}

Actor PowerIntimidate : PowerProtection
{
	DamageFactor "Normal", 1.25
	Powerup.Duration -30
}

Actor RallyItem : PowerupGiver
{
	+INVENTORY.AUTOACTIVATE
	Inventory.MaxAmount 0
	Powerup.Type RallyDefense
}

Actor PowerRallyDefense : PowerProtection
{
	DamageFactor "Normal", 0.85
	Powerup.Duration -30
}

Actor IntoTheFrayDamage : PowerupGiver
{
	Powerup.Type "IntoTheFray"
	Powerup.Duration -10
	+INVENTORY.AUTOACTIVATE
	Inventory.MaxAmount 0
}

Actor PowerIntoTheFray : PowerDamage
{
	Damagefactor "Normal", 1.25
	Powerup.Duration -10
	Inventory.Icon "VIGRICON"
}

Actor InspireDamage : PowerupGiver
{
	Powerup.Type "Inspire"
	Powerup.Duration -10
	+INVENTORY.AUTOACTIVATE
	Inventory.MaxAmount 0
}

Actor PowerInspire : PowerDamage
{
	Damagefactor "Normal", 1.15
	Powerup.Duration -10
	Inventory.Icon "INSPICON"
}

Actor TemperanceDefense1 : PowerupGiver
{
	+INVENTORY.AUTOACTIVATE
	Inventory.MaxAmount 0
	Powerup.Type TemperanceDefense1
}

Actor PowerTemperanceDefense1 : PowerProtection
{
	DamageFactor "Normal", 0.94
	Powerup.Duration 35
}

Actor TemperanceDefense2 : PowerupGiver
{
	+INVENTORY.AUTOACTIVATE
	Inventory.MaxAmount 0
	Powerup.Type TemperanceDefense2
}

Actor PowerTemperanceDefense2 : PowerProtection
{
	DamageFactor "Normal", 0.88
	Powerup.Duration 35
}

Actor TemperanceDefense3 : PowerupGiver
{
	+INVENTORY.AUTOACTIVATE
	Inventory.MaxAmount 0
	Powerup.Type TemperanceDefense3
}

Actor PowerTemperanceDefense3 : PowerProtection
{
	DamageFactor "Normal", 0.82
	Powerup.Duration 35
}

Actor TemperanceDefense4 : PowerupGiver
{
	+INVENTORY.AUTOACTIVATE
	Inventory.MaxAmount 0
	Powerup.Type TemperanceDefense4
}

Actor PowerTemperanceDefense4 : PowerProtection
{
	DamageFactor "Normal", 0.76
	Powerup.Duration 35
}

Actor TemperanceDefense5 : PowerupGiver
{
	+INVENTORY.AUTOACTIVATE
	Inventory.MaxAmount 0
	Powerup.Type TemperanceDefense5
}

Actor PowerTemperanceDefense5 : PowerProtection
{
	DamageFactor "Normal", 0.7
	Powerup.Duration 35
}