package BaseStatusEffect
using RTDB, Prereqs, Effectors, Attacks

KurtKnifeStatusEffect : DebuffStatusEffect
{
	statusEffectType = "BaseStatusEffectTypes.Crippled";
	fk< StatusEffectFX >[] VFX = 
	[
		{
			name = "status_bleeding";
		}
	];
	fk< StatusEffectFX >[] SFX = 
	[
		{
			name = "status_bleeding";
		}
	];
	fk< StatModifierGroup > duration = 
	{
		statModifiers = 
		[
			{
				statType = "BaseStats.MaxDuration";
				modifierType = "Additive";
				value = 3;
			} : ConstantStatModifier
		];
	};
	fk< GameplayLogicPackage >[] packages = 
	[
		{
			bool stackable = true;
			fk< StatModifier >[] stats = 
			[
				{
					statType = "BaseStats.JumpHeight";
					modifierType = "Multiplier";
					value = 0.5f;
				} : ConstantStatModifier, 
				{
					statType = "BaseStats.CanSprint";
					modifierType = "AdditiveMultiplier";
					refObject = "Instigator";
					refStat = "BaseStats.CanBleedingSlowTarget";
					opSymbol = "*";
					value = -1f;
				} : CombinedStatModifier, 
				{
					statType = "BaseStats.MaxSpeed";
					modifierType = "Multiplier";
					value = 0.f;
				} : ConstantStatModifier
			];
		} : GameplayLogicPackage
	];
}

KurtTakedownKnifeStatusEffect : DebuffStatusEffect
{
	statusEffectType = "BaseStatusEffectTypes.Crippled";
	fk< StatusEffectFX >[] SFX = 
	[
		{
			name = "status_bleeding";
		}
	];
	fk< StatModifierGroup > duration = 
	{
		statModifiers = 
		[
			{
				statType = "BaseStats.MaxDuration";
				modifierType = "Additive";
				value = 3f;
			} : ConstantStatModifier
		];
	};
	fk< GameplayLogicPackage >[] packages = 
	[
		{
			bool stackable = true;
			fk< StatModifier >[] stats = 
			[
				{
					statType = "BaseStats.JumpHeight";
					modifierType = "Multiplier";
					value = 0.f;
				} : ConstantStatModifier, 
				{
					statType = "BaseStats.CanSprint";
					modifierType = "Multiplier";
					value = 0.f;
				} : CombinedStatModifier, 
				{
					statType = "BaseStats.MaxSpeed";
					modifierType = "Multiplier";
					value = 0.f;
				} : ConstantStatModifier, 
				{
					statType = "BaseStats.CanDash";
					modifierType = "Multiplier";
					value = 0.f;
				} : ConstantStatModifier
			];
		} : GameplayLogicPackage
	];
}

KurtMeleeTakedownCooldownSE : StatusEffect
{
	fk< StatModifierGroup > duration = 
	{
		statModifiers = 
		[
			{
				statType = "BaseStats.MaxDuration";
				modifierType = "Additive";
				value = 37.5f;
			} : ConstantStatModifier
		];
	};
}

