package Effectors
using RTDB, Prereqs

FinisherEffector : ApplyStatusEffectEffector
{
	effectorClassName = "FinisherEffector";
	statusEffect = "";
	string instigator = "Player";
	removeWithEffector = false;
}

NPCStealthTakedown : FinisherEffector
{
	prereqRecord = 
	{
		duration = 7.f;
	} : Prereqs.DurationPrereq;
	effectorClassName = "ApplyStatusEffectEffector";
	statusEffect = "BaseStatusEffect.Unconscious";
	removeWithEffector = false;
}

PlayerSmasherTakedown : FinisherEffector
{
	prereqRecord = 
	{
		duration = 11.f;
	} : Prereqs.DurationPrereq;
	statusEffect = "AdamSmasher.AdamSmasherTakedownOverload";
}

PlayerSmasherTakedownPhase2 : FinisherEffector
{
	prereqRecord = 
	{
		duration = 5.5f;
	} : Prereqs.DurationPrereq;
	statusEffect = "AdamSmasher.AdamSmasherTakedownOverloadToBroken";
}

PlayerSmasherTakedownPhase3 : FinisherEffector
{
	prereqRecord = 
	{
		duration = 14.867f;
	} : Prereqs.DurationPrereq;
	statusEffect = "BaseStatusEffect.Defeated";
}

PlayerRoyceTakedown : FinisherEffector
{
	prereqRecord = 
	{
		duration = 3.f;
	} : Prereqs.DurationPrereq;
	statusEffect = "Royce.RoyceExplodeExplosive";
}

PlayerRoyceTakedownPhase2 : FinisherEffector
{
	prereqRecord = 
	{
		duration = 7.f;
	} : Prereqs.DurationPrereq;
	statusEffect = "BaseStatusEffect.Defeated";
}

PlayerOdaTakedown : FinisherEffector
{
	prereqRecord = 
	{
		duration = 3.5f;
	} : Prereqs.DurationPrereq;
	statusEffect = "Oda.OverloadWeakspot";
}

PlayerOdaTakedownPhase2 : FinisherEffector
{
	prereqRecord = 
	{
		duration = 10.f;
	} : Prereqs.DurationPrereq;
	statusEffect = "BaseStatusEffect.Defeated";
}

PlayerSasquatchTakedown : FinisherEffector
{
	prereqRecord = 
	{
		duration = 2.95f;
	} : Prereqs.DurationPrereq;
	statusEffect = "Sasquatch.SasquatchOverload";
}

PlayerSasquatchTakedownPhase2 : FinisherEffector
{
	prereqRecord = 
	{
		duration = 12.f;
	} : Prereqs.DurationPrereq;
	statusEffect = "BaseStatusEffect.Defeated";
}

PlayerNonLethalTakedown : FinisherEffector
{
	prereqRecord = 
	{
		duration = 1.3f;
	} : Prereqs.DurationPrereq;
	effectorClassName = "ApplyStatusEffectEffector";
	statusEffect = "BaseStatusEffect.Unconscious";
}

PlayerNonLethalNetworkBreachTakedown : FinisherEffector
{
	prereqRecord = 
	{
		duration = 3.6f;
	} : Prereqs.DurationPrereq;
	effectorClassName = "ApplyStatusEffectEffector";
	statusEffect = "BaseStatusEffect.Unconscious";
}

PlayerLethalTakedown : FinisherEffector
{
	prereqRecord = 
	{
		duration = 0.9f;
	} : Prereqs.DurationPrereq;
	effectorClassName = "ApplyStatusEffectEffector";
	statusEffect = "BaseStatusEffect.ForceKill";
}

PlayerNonLethalAerialTakedown : FinisherEffector
{
	prereqRecord = 
	{
		duration = 1.8f;
	} : Prereqs.DurationPrereq;
	effectorClassName = "ApplyStatusEffectEffector";
	statusEffect = "BaseStatusEffect.Unconscious";
}

PlayerNonLethalTakedownMassiveTarget : FinisherEffector
{
	prereqRecord = 
	{
		duration = 3.0f;
	} : Prereqs.DurationPrereq;
	effectorClassName = "ApplyStatusEffectEffector";
	statusEffect = "BaseStatusEffect.Unconscious";
}

PlayerApplyInvulnerable : ApplyStatusEffectEffector
{
	prereqRecord = 
	{
		duration = 0.0f;
	} : Prereqs.DurationPrereq;
	removeWithEffector = false;
}

PlayerFinisher : FinisherEffector
{
	prereqRecord = 
	{
		duration = 3.0f;
	} : Prereqs.DurationPrereq;
	effectorClassName = "ApplyStatusEffectEffector";
	statusEffect = "BaseStatusEffect.ForceKill";
}

PlayerMantisBladesFinisher : FinisherEffector
{
	prereqRecord = 
	{
		duration = 3.0f;
	} : Prereqs.DurationPrereq;
	effectorClassName = "ApplyStatusEffectEffector";
	statusEffect = "BaseStatusEffect.ForceKill";
}

PlayerStrongArms01Finisher : ForceDismembermentEffector
{
	prereqRecord = 
	{
		duration = 1.1f;
	} : Prereqs.DurationPrereq;
	string bodyPart = "HEAD";
	string woundType = "CLEAN";
	bool isCritical = false;
	bool skipDeathAnim = true;
	shouldKillNPC = true;
}

PlayerStrongArms02Finisher : ForceDismembermentEffector
{
	prereqRecord = 
	{
		duration = 0.8f;
	} : Prereqs.DurationPrereq;
	string bodyPart = "HEAD";
	string woundType = "CLEAN";
	bool isCritical = false;
	bool skipDeathAnim = true;
	shouldKillNPC = true;
}

PlayerKatanaFinisher : ForceDismembermentEffector
{
	prereqRecord = 
	{
		duration = 1.36f;
	} : Prereqs.DurationPrereq;
	string bodyPart = "HEAD";
	string woundType = "CLEAN";
	bool isCritical = false;
	bool skipDeathAnim = true;
	shouldKillNPC = true;
}

PlayerKatanaFinisherNoDismemberment : FinisherEffector
{
	prereqRecord = 
	{
		duration = 3.0f;
	} : Prereqs.DurationPrereq;
	effectorClassName = "ApplyStatusEffectEffector";
	statusEffect = "BaseStatusEffect.ForceKill";
}

PlayerKatanaFinisherNoneLethal : FinisherEffector
{
	prereqRecord = 
	{
		duration = 3.0f;
	} : Prereqs.DurationPrereq;
	effectorClassName = "ApplyStatusEffectEffector";
	statusEffect = "BaseStatusEffect.Unconscious";
}

PlayerKnifeFinisher : FinisherEffector
{
	prereqRecord = 
	{
		duration = 3.0f;
	} : Prereqs.DurationPrereq;
	effectorClassName = "ApplyStatusEffectEffector";
	statusEffect = "BaseStatusEffect.ForceKill";
}

PlayerHammerFinisher : FinisherEffector
{
	prereqRecord = 
	{
		duration = 2.0f;
	} : Prereqs.DurationPrereq;
	effectorClassName = "ApplyStatusEffectEffector";
	statusEffect = "BaseStatusEffect.Unconscious";
}

PlayerMonowireFinisherLeftArm : ForceDismembermentEffector
{
	prereqRecord = 
	{
		duration = 1.3f;
	} : Prereqs.DurationPrereq;
	string bodyPart = "LEFT_ARM";
	string woundType = "CLEAN";
	bool isCritical = false;
	bool skipDeathAnim = true;
	shouldKillNPC = true;
}

PlayerMonoWireFinisherHead : ForceDismembermentEffector
{
	prereqRecord = 
	{
		duration = 1.9f;
	} : Prereqs.DurationPrereq;
	string bodyPart = "HEAD";
	string woundType = "CLEAN";
	bool isCritical = false;
	bool skipDeathAnim = true;
	shouldKillNPC = true;
}

PlayerBatonFinisher : FinisherEffector
{
	prereqRecord = 
	{
		duration = 3.0f;
	} : Prereqs.DurationPrereq;
	effectorClassName = "ApplyStatusEffectEffector";
	statusEffect = "BaseStatusEffect.Unconscious";
}

PlayerDildoFinisher : FinisherEffector
{
	prereqRecord = 
	{
		duration = 3.0f;
	} : Prereqs.DurationPrereq;
	effectorClassName = "ApplyStatusEffectEffector";
	statusEffect = "BaseStatusEffect.Unconscious";
}

PlayerTwoHandedBluntFinisher : FinisherEffector
{
	prereqRecord = 
	{
		duration = 2.3f;
	} : Prereqs.DurationPrereq;
	effectorClassName = "ApplyStatusEffectEffector";
	statusEffect = "BaseStatusEffect.Unconscious";
}

PlayerFistsFinisher : FinisherEffector
{
	prereqRecord = 
	{
		duration = 2.3f;
	} : Prereqs.DurationPrereq;
	effectorClassName = "ApplyStatusEffectEffector";
	statusEffect = "BaseStatusEffect.Unconscious";
}

PlayerOneHandedBluntFinisher : FinisherEffector
{
	prereqRecord = 
	{
		duration = 3.0f;
	} : Prereqs.DurationPrereq;
	effectorClassName = "ApplyStatusEffectEffector";
	statusEffect = "BaseStatusEffect.Unconscious";
}

PlayerOneHandedBladeFinisher : FinisherEffector
{
	prereqRecord = 
	{
		duration = 3.0f;
	} : Prereqs.DurationPrereq;
	effectorClassName = "ApplyStatusEffectEffector";
	statusEffect = "BaseStatusEffect.ForceKill";
}

PlayerChainswordFinisherHead : ForceDismembermentEffector
{
	prereqRecord = 
	{
		duration = 2.1f;
	} : Prereqs.DurationPrereq;
	string bodyPart = "HEAD";
	string woundType = "COARSE";
	bool isCritical = false;
	bool skipDeathAnim = true;
	shouldKillNPC = true;
}

PlayerChainswordFinisherLeg : ForceDismembermentEffector
{
	prereqRecord = 
	{
		duration = 1.29f;
	} : Prereqs.DurationPrereq;
	string bodyPart = "LEFT_LEG";
	string woundType = "COARSE";
	bool isCritical = false;
	bool skipDeathAnim = true;
	shouldKillNPC = true;
}

PlayerAxeFinisher : FinisherEffector
{
	prereqRecord = 
	{
		duration = 3.0f;
	} : Prereqs.DurationPrereq;
	effectorClassName = "ApplyStatusEffectEffector";
	statusEffect = "BaseStatusEffect.ForceKill";
}

CyberwareMalfuntionDismembermentRigthLeg : ForceDismembermentEffector
{
	string bodyPart = "RIGHT_LEG";
	string woundType = "CLEAN";
	bool shouldKillNPC = true;
	bool isCritical = true;
	bool skipDeathAnim = false;
}

