package TutorialMeleeNoAction
using RTDB, MeleeActions

Map : ActionMap
{
	defaultMap = 
	{
		map = 
		[
			{
				node = "GenericArchetype.MeleeCloseAttackLight01Condition";
				isOverriddenBy = "";
			}, 
			{
				node = "GenericArchetype.MeleeCloseAttackLight02Condition";
				isOverriddenBy = "";
			}, 
			{
				node = "GenericArchetype.MeleeAttackLight01Condition";
				isOverriddenBy = "";
			}, 
			{
				node = "GenericArchetype.MeleeAttackLight02Condition";
				isOverriddenBy = "";
			}, 
			{
				node = "GenericArchetype.MeleeAttackLight03Condition";
				isOverriddenBy = "";
			}, 
			{
				node = "GenericArchetype.MeleeStrongSingle01Condition";
				isOverriddenBy = "";
			}, 
			{
				node = "GenericArchetype.MeleeStrongSingle02Condition";
				isOverriddenBy = "";
			}, 
			{
				node = "GenericArchetype.MeleeChargeSingle01Condition";
				isOverriddenBy = "";
			}, 
			{
				node = "GenericArchetype.MeleeChargeSingle02Condition";
				isOverriddenBy = "";
			}, 
			{
				node = "GenericArchetype.MeleeChargeSingle03Condition";
				isOverriddenBy = "";
			}, 
			{
				node = "GenericArchetype.MeleeChargeJump01Condition";
				isOverriddenBy = "";
			}, 
			{
				node = "GenericArchetype.MeleeChargeJump02Condition";
				isOverriddenBy = "";
			}, 
			{
				node = "GenericArchetype.MeleeBlockState";
				isOverriddenBy = "";
			}, 
			{
				node = "GenericArchetype.MeleeParryState";
				isOverriddenBy = "";
			}, 
			{
				node = "CombatDecorator.MeleeCombatCloseDistanceDecorator";
				isOverriddenBy = "TutorialMeleeNoAction.TutorialMeleeCombatCloseDistanceDecorator";
			}, 
			{
				node = "CombatDecorator.MeleeCombatSafeDistanceDecorator";
				isOverriddenBy = "";
			}, 
			{
				node = "CombatDecorator.MeleeTicketDecorator";
				isOverriddenBy = "";
			}, 
			{
				node = "CombatDecorator.MeleeTicketNoRequestCondition";
				isOverriddenBy = "";
			}, 
			{
				node = "MeleeActions.MeleeBlockDodge01ConditionDefinition";
				isOverriddenBy = "";
			}, 
			{
				node = "DashAndDodgeActions.DodgeMeleeCompositeSelectorDefinition";
				isOverriddenBy = "";
			}, 
			{
				node = "MovementActions.MeleeMoveToCombatContact";
				isOverriddenBy = "TutorialMeleeNoAction.TutorialMeleeMoveToCombatContact";
			}, 
			{
				node = "CombatDecorator.MeleeApproachTicketDecorator";
				isOverriddenBy = "TutorialMeleeNoAction.TutorialMeleeApproachTicketDecorator";
			}, 
			{
				node = "MeleeActions.MeleeTauntSupportAreaSelector";
				isOverriddenBy = "TutorialMeleeNoAction.MeleeTauntSupportAreaSelector";
			}, 
			{
				node = "MeleeActions.MeleeTauntCombatAreaSelector";
				isOverriddenBy = "TutorialMeleeNoAction.MeleeTauntCombatAreaSelector";
			}, 
			{
				node = "MeleeActions.SimpleMeleeTauntCombatAreaSelector";
				isOverriddenBy = "TutorialMeleeNoAction.SimpleMeleeTauntCombatAreaSelector";
			}, 
			{
				node = "MeleeActions.MeleeTauntContactAreaSelector";
				isOverriddenBy = "TutorialMeleeNoAction.MeleeTauntContactAreaSelector";
			}, 
			{
				node = "MeleeActions.MeleeTauntHitReactionSelector";
				isOverriddenBy = "TutorialMeleeNoAction.MeleeTauntHitReactionSelector";
			}, 
			{
				node = "MeleeActions.MeleeTauntPreAttackSelector";
				isOverriddenBy = "TutorialMeleeNoAction.MeleeTauntPreAttackSelector";
			}
		];
	};
}

TutorialMeleeApproachTicketDecorator : AIAction
{
	activationCondition = 
	{
	};
	loop = 
	{
		duration = -1.0f;
	};
}

TutorialMeleeMoveToCombatContact : AIAction
{
	activationCondition = 
	{
	};
	loop = 
	{
		movePolicy = 
		{
			target = "AIActionTarget.CombatTarget";
			strafingTarget = "AIActionTarget.CombatTarget";
			movementType = "Walk";
			tolerance = 1.f;
			distance = 2.f;
			avoidThreatRange = 0.f;
			avoidThreatCost = 0.f;
		};
	};
}

TutorialMeleeCombatCloseDistanceDecorator : AIAction
{
	activationCondition = 
	{
	};
	loop = 
	{
		duration = -1.0f;
	};
}

MeleeTauntSupportAreaSelector : MeleeActions.MeleeTauntSupportAreaSelector
{
	actions = 
	[
		"MeleeFistActions.MeleeTauntSupportAreaDefinition"
	];
	defaultAction = "GenericArchetype.Success";
}

MeleeTauntCombatAreaSelector : MeleeActions.MeleeTauntCombatAreaSelector
{
	actions = 
	[
		"MeleeFistActions.MeleeTauntCombatAreaDefinition"
	];
	defaultAction = "GenericArchetype.Success";
}

SimpleMeleeTauntCombatAreaSelector : AIActionSelector
{
	actions = 
	[
		"MeleeFistActions.SimpleMeleeTauntCombatAreaDefinition"
	];
	defaultAction = "GenericArchetype.Success";
}

MeleeTauntContactAreaSelector : MeleeActions.MeleeTauntContactAreaSelector
{
	actions = 
	[
		"MeleeFistActions.MeleeTauntContactAreaDefinition"
	];
	defaultAction = "GenericArchetype.Success";
}

MeleeTauntHitReactionSelector : MeleeActions.MeleeTauntHitReactionSelector
{
	actions = 
	[
		"MeleeFistActions.MeleeTauntHitReactionDefinition"
	];
	defaultAction = "GenericArchetype.Success";
}

MeleeTauntPreAttackSelector : MeleeActions.MeleeTauntPreAttackSelector
{
	actions = 
	[
		"MeleeFistActions.MeleeTauntPreAttackDefinition"
	];
	defaultAction = "GenericArchetype.Success";
}

