package Items
using RTDB, BaseStats, Prereqs, Effectors, Perks

[ notQueryable ]
SandevistanFragmentBase : Fragment
{
	quality = "Quality.Random";
	placementSlots = 
	[
		"AttachmentSlots.SandevistanSlot1", "AttachmentSlots.SandevistanSlot2", "AttachmentSlots.SandevistanSlot3"
	];
	CName[] tags += 
	[
		"itemPart", "DummyPart", "SkipActivityLog", "HideInBackpackUI", "HideInUI", "HideAtVendor"
	];
	buyPrice += 
	[
		"Price.SandevistanFragment"
	];
	sellPrice += 
	[
		"Price.SandevistanFragment"
	];
}

[ notQueryable ]
SandevistanFragment1 : SandevistanFragmentBase
{
	displayName = "LocKey#43415";
	iconPath = "cwf_sandevistan1";
	statModifiers += 
	[
		{
			statType = "BaseStats.TimeDilationSandevistanDuration";
			modifierType = "Additive";
			value = 0.5f;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.TimeDilationSandevistanDuration";
			modifierType = "Additive";
			refStat = "BaseStats.Quality";
			opSymbol = "*";
			value = 0.2f;
		} : CombinedStatModifier, 
		{
			statType = "BaseStats.TimeDilationSandevistanRechargeDuration";
			modifierType = "Additive";
			value = 0.5f;
		} : ConstantStatModifier
	];
	OnAttach = 
	[
		{
			UIData = 
			{
				localizedDescription = "LocKey#43416";
				stats = 
				[
					"BaseStats.TimeDilationSandevistanDuration"
				];
			};
		}
	];
	fk< CraftingPackage > CraftingData = 
	{
		fk< RecipeElement >[] craftingRecipe += 
		[
			{
				ingredient = "Items.CommonMaterial1";
				amount = 12;
			}
		];
	};
}

[ notQueryable ]
SandevistanFragment2 : SandevistanFragmentBase
{
	displayName = "LocKey#43417";
	quality = "Quality.Rare";
	iconPath = "cwf_sandevistan2";
	fk< GameplayLogicPackage >[] OnEquip = 
	[
		{
			fk< Effector >[] effectors = 
			[
				{
					prereqRecord = 
					{
						string stateName = "Sandevistan";
					} : TimeDilationPSMPrereq;
					fk< StatModifierGroup > statGroup = 
					{
						statModifiers = 
						[
							{
								statType = "BaseStats.CritChance";
								modifierType = "Additive";
								value = 5f;
							} : ConstantStatModifier
						];
					};
				} : ApplyStatGroupEffector
			];
			UIData = 
			{
				localizedDescription = "LocKey#43418";
				intValues = 
				[
					5
				];
			};
		} : GameplayLogicPackage
	];
	fk< CraftingPackage > CraftingData = 
	{
		fk< RecipeElement >[] craftingRecipe += 
		[
			{
				ingredient = "Items.CommonMaterial1";
				amount = 12;
			}, 
			{
				ingredient = "Items.UncommonMaterial1";
				amount = 8;
			}, 
			{
				ingredient = "Items.RareMaterial1";
				amount = 5;
			}
		];
	};
}

[ notQueryable ]
SandevistanFragment3 : SandevistanFragmentBase
{
	displayName = "LocKey#43419";
	quality = "Quality.Rare";
	iconPath = "cwf_sandevistan3";
	fk< GameplayLogicPackage >[] OnEquip = 
	[
		{
			fk< Effector >[] effectors = 
			[
				{
					prereqRecord = 
					{
						string stateName = "Sandevistan";
					} : TimeDilationPSMPrereq;
					fk< StatModifierGroup > statGroup = 
					{
						statModifiers = 
						[
							{
								statType = "BaseStats.CritDamage";
								modifierType = "Additive";
								value = 15f;
							} : ConstantStatModifier
						];
					};
				} : ApplyStatGroupEffector
			];
			UIData = 
			{
				localizedDescription = "LocKey#43420";
				intValues = 
				[
					15
				];
			};
		} : GameplayLogicPackage
	];
	fk< CraftingPackage > CraftingData = 
	{
		fk< RecipeElement >[] craftingRecipe += 
		[
			{
				ingredient = "Items.CommonMaterial1";
				amount = 12;
			}, 
			{
				ingredient = "Items.UncommonMaterial1";
				amount = 8;
			}, 
			{
				ingredient = "Items.RareMaterial1";
				amount = 5;
			}
		];
	};
}

[ notQueryable ]
SandevistanFragment4 : SandevistanFragmentBase
{
	displayName = "LocKey#43421";
	iconPath = "cwf_sandevistan4";
	statModifiers += 
	[
		{
			statType = "BaseStats.TimeDilationSandevistanCooldownReduction";
			modifierType = "Additive";
			value = 2f;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.TimeDilationSandevistanCooldownReduction";
			modifierType = "Additive";
			refStat = "BaseStats.Quality";
			opSymbol = "*";
			value = 0.5f;
		} : CombinedStatModifier
	];
	fk< GameplayLogicPackage >[] OnAttach = 
	[
		{
			UIData = 
			{
				localizedDescription = "LocKey#43422";
				stats = 
				[
					"BaseStats.TimeDilationSandevistanCooldownReduction"
				];
			};
		}
	];
	fk< CraftingPackage > CraftingData = 
	{
		fk< RecipeElement >[] craftingRecipe += 
		[
			{
				ingredient = "Items.CommonMaterial1";
				amount = 12;
			}
		];
	};
}

[ notQueryable ]
SandevistanFragment8 : SandevistanFragmentBase
{
	displayName = "LocKey#43429";
	iconPath = "cwf_sandevistan8";
	quality = "Quality.Legendary";
	OnEquip = 
	[
		{
			fk< Effector >[] effectors = 
			[
				{
					prereqRecord = 
					{
						string stateName = "Sandevistan";
					} : TimeDilationPSMPrereq;
					string[] effectTypes = 
					[
						"Burning", "Poisoned", "Bleeding", "Electrocuted", "EMP"
					];
				} : RemoveStatusEffectsEffector
			];
			UIData = 
			{
				localizedDescription = "LocKey#43430";
			};
		} : GameplayLogicPackage
	];
	fk< CraftingPackage > CraftingData = 
	{
		fk< RecipeElement >[] craftingRecipe += 
		[
			{
				ingredient = "Items.UncommonMaterial1";
				amount = 8;
			}, 
			{
				ingredient = "Items.RareMaterial1";
				amount = 5;
			}, 
			{
				ingredient = "Items.EpicMaterial1";
				amount = 3;
			}, 
			{
				ingredient = "Items.LegendaryMaterial1";
				amount = 2;
			}
		];
	};
}

[ notQueryable ]
TygerClawsSandevistanFragment1 : SandevistanFragmentBase
{
	displayName = "LocKey#43433";
	quality = "Quality.Epic";
	iconPath = "cwf_tygerclawssandevistan";
	tags += 
	[
		"FactionItem"
	];
	OnEquip = 
	[
		{
			effectors = 
			[
				{
					prereqRecord = 
					{
						string stateName = "Sandevistan";
					} : TimeDilationPSMPrereq;
					effectorToApply = 
					{
						prereqRecord = 
						{
							conditions += 
							[
								{
									statusEffect = "Defeated";
									checkType = "CheckType.Type";
									invert = true;
								} : StatusEffectPresentHitPrereqCondition
							];
						} : IsTargetKilled;
						statPoolUpdates = 
						[
							{
								statPoolType = "BaseStatPools.Stamina";
								statPoolValue = 15f;
							} : StatPoolUpdate
						];
					} : RestoreStatPoolOnKillEffector;
				} : ApplyEffectorOnPlayer
			];
			UIData = 
			{
				localizedDescription = "LocKey#43434";
				floatValues = 
				[
					15
				];
			};
		} : GameplayLogicPackage
	];
	fk< CraftingPackage > CraftingData = 
	{
		fk< RecipeElement >[] craftingRecipe += 
		[
			{
				ingredient = "Items.UncommonMaterial1";
				amount = 8;
			}, 
			{
				ingredient = "Items.RareMaterial1";
				amount = 5;
			}, 
			{
				ingredient = "Items.EpicMaterial1";
				amount = 3;
			}
		];
	};
}

[ notQueryable ]
ValentinosSandevistanFragment1 : SandevistanFragmentBase
{
	displayName = "LocKey#43435";
	quality = "Quality.Epic";
	iconPath = "cwf_valentinosandevistan";
	tags += 
	[
		"FactionItem"
	];
	OnEquip = 
	[
		{
			effectors = 
			[
				{
					prereqRecord = 
					{
						string stateName = "Sandevistan";
					} : TimeDilationPSMPrereq;
					effectorToApply = 
					{
						prereqRecord = 
						{
							conditions += 
							[
								{
									statusEffect = "Defeated";
									checkType = "CheckType.Type";
									invert = true;
								} : StatusEffectPresentHitPrereqCondition
							];
						} : IsTargetKilled;
						statPoolUpdates = 
						[
							{
								statPoolType = "BaseStatPools.Health";
								statPoolValue = 5f;
							} : StatPoolUpdate
						];
					} : RestoreStatPoolOnKillEffector;
				} : ApplyEffectorOnPlayer
			];
			UIData = 
			{
				localizedDescription = "LocKey#43436";
				floatValues = 
				[
					5
				];
			};
		} : GameplayLogicPackage
	];
	fk< CraftingPackage > CraftingData = 
	{
		fk< RecipeElement >[] craftingRecipe += 
		[
			{
				ingredient = "Items.UncommonMaterial1";
				amount = 8;
			}, 
			{
				ingredient = "Items.RareMaterial1";
				amount = 5;
			}, 
			{
				ingredient = "Items.EpicMaterial1";
				amount = 3;
			}
		];
	};
}

[ notQueryable ]
ArasakaSandevistanFragment1 : SandevistanFragmentBase
{
	displayName = "LocKey#43437";
	quality = "Quality.Legendary";
	iconPath = "cwf_arasakasandevistan";
	tags += 
	[
		"FactionItem"
	];
	fk< GameplayLogicPackage >[] OnEquip = 
	[
		{
			fk< Effector >[] effectors = 
			[
				{
					prereqRecord = 
					{
						string stateName = "Sandevistan";
					} : TimeDilationPSMPrereq;
					fk< StatModifierGroup > statGroup = 
					{
						statModifiers = 
						[
							{
								statType = "BaseStats.Visibility";
								modifierType = "AdditiveMultiplier";
								value = -0.7f;
							} : ConstantStatModifier
						];
					};
				} : ApplyStatGroupEffector
			];
			UIData = 
			{
				localizedDescription = "LocKey#43438";
				intValues = 
				[
					70
				];
			};
		} : GameplayLogicPackage
	];
	fk< CraftingPackage > CraftingData = 
	{
		fk< RecipeElement >[] craftingRecipe += 
		[
			{
				ingredient = "Items.UncommonMaterial1";
				amount = 8;
			}, 
			{
				ingredient = "Items.RareMaterial1";
				amount = 5;
			}, 
			{
				ingredient = "Items.EpicMaterial1";
				amount = 3;
			}, 
			{
				ingredient = "Items.LegendaryMaterial1";
				amount = 2;
			}
		];
	};
}

