package Items
using RTDB, BaseStats, Perks, Prereqs

[ notQueryable ]
CyberRotorsCommon : MusculoskeletalSystemModule
{
	string friendlyName = "NeoFiber";
	displayName = "LocKey#40858";
	localizedDescription = "LocKey#40859";
	iconPath = "cw_skeleton_cyberrotors";
	quality = "Quality.Common";
	fk< GameplayLogicPackage >[] OnEquip = 
	[
		{
			effectors = 
			[
				{
					prereqRecord = "Prereqs.MeleeWeaponHeldPrereq";
					statGroup = 
					{
						statModifiers = 
						[
							{
								statType = "BaseStats.AttackSpeed";
								modifierType = "AdditiveMultiplier";
								value = 0.05f;
							} : ConstantStatModifier
						];
					};
				} : ApplyStatGroupOnWeapon
			];
			UIData = 
			{
				floatValues = 
				[
					5f, 2f
				];
			} : CyberRotorsUIData;
		}
	];
	CName cyberwareType = "CyberRotors";
	buyPrice += 
	[
		"Price.CyberRotors"
	];
	sellPrice += 
	[
		"Price.CyberRotors"
	];
	counterpart = "Items.AdvancedCyberRotorsCommon";
}

[ notQueryable ]
CyberRotorsUncommon : CyberRotorsCommon
{
	quality = "Quality.Uncommon";
	equipPrereqs = 
	[
		{
			valueToCheck = 8;
		} : ReflexesPrereq
	];
	fk< GameplayLogicPackage >[] OnEquip = 
	[
		{
			effectors = 
			[
				{
					prereqRecord = "Prereqs.MeleeWeaponHeldPrereq";
					statGroup = 
					{
						statModifiers = 
						[
							{
								statType = "BaseStats.AttackSpeed";
								modifierType = "AdditiveMultiplier";
								value = 0.1f;
							} : ConstantStatModifier
						];
					};
				} : ApplyStatGroupOnWeapon
			];
			UIData = 
			{
				floatValues = 
				[
					10f, 2f
				];
			} : CyberRotorsUIData;
		}
	];
	counterpart = "Items.AdvancedCyberRotorsCommon";
}

[ notQueryable ]
CyberRotorsRare : CyberRotorsCommon
{
	quality = "Quality.Rare";
	equipPrereqs = 
	[
		{
			valueToCheck = 12;
		} : ReflexesPrereq
	];
	fk< GameplayLogicPackage >[] OnEquip = 
	[
		{
			effectors = 
			[
				{
					prereqRecord = "Prereqs.MeleeWeaponHeldPrereq";
					statGroup = 
					{
						statModifiers = 
						[
							{
								statType = "BaseStats.AttackSpeed";
								modifierType = "AdditiveMultiplier";
								value = 0.15f;
							} : ConstantStatModifier
						];
					};
				} : ApplyStatGroupOnWeapon
			];
			UIData = 
			{
				floatValues = 
				[
					15f, 2f
				];
			} : CyberRotorsUIData;
		}
	];
	counterpart = "Items.AdvancedCyberRotorsCommon";
}

[ notQueryable ]
CyberRotorsEpic : CyberRotorsCommon
{
	quality = "Quality.Epic";
	equipPrereqs = 
	[
		{
			valueToCheck = 15;
		} : ReflexesPrereq
	];
	fk< GameplayLogicPackage >[] OnEquip = 
	[
		{
			effectors = 
			[
				{
					prereqRecord = "Prereqs.MeleeWeaponHeldPrereq";
					statGroup = 
					{
						statModifiers = 
						[
							{
								statType = "BaseStats.AttackSpeed";
								modifierType = "AdditiveMultiplier";
								value = 0.2f;
							} : ConstantStatModifier
						];
					};
				} : ApplyStatGroupOnWeapon
			];
			UIData = 
			{
				floatValues = 
				[
					20f, 2f
				];
			} : CyberRotorsUIData;
		}
	];
	counterpart = "Items.AdvancedCyberRotorsCommon";
}

[ notQueryable ]
CyberRotorsLegendary : CyberRotorsCommon
{
	quality = "Quality.Legendary";
	equipPrereqs = 
	[
		{
			valueToCheck = 18;
		} : ReflexesPrereq
	];
	fk< GameplayLogicPackage >[] OnEquip = 
	[
		{
			effectors = 
			[
				{
					prereqRecord = "Prereqs.MeleeWeaponHeldPrereq";
					statGroup = 
					{
						statModifiers = 
						[
							{
								statType = "BaseStats.AttackSpeed";
								modifierType = "AdditiveMultiplier";
								value = 0.25f;
							} : ConstantStatModifier
						];
					};
				} : ApplyStatGroupOnWeapon
			];
			UIData = 
			{
				floatValues = 
				[
					25f, 2f
				];
			} : CyberRotorsUIData;
		}
	];
	counterpart = "Items.AdvancedCyberRotorsCommon";
}

[ notQueryable ]
EndoskeletonCommon : MusculoskeletalSystemModule
{
	string friendlyName = "Endoskeleton";
	displayName = "LocKey#3653";
	localizedDescription = "LocKey#3659";
	iconPath = "cw_skeleton_endoskeleton";
	quality = "Quality.Common";
	fk< GameplayLogicPackage >[] OnEquip = 
	[
		{
			stats = 
			[
				{
					statType = "BaseStats.Health";
					modifierType = "AdditiveMultiplier";
					value = 0.2f;
				} : ConstantStatModifier
			];
			UIData = 
			{
				floatValues = 
				[
					20f
				];
			} : EndoskeletonUIData;
		}
	];
	CName cyberwareType = "Endoskeleton";
	buyPrice += 
	[
		"Price.Endoskeleton"
	];
	sellPrice += 
	[
		"Price.Endoskeleton"
	];
	deprecated = true;
}

[ notQueryable ]
EndoskeletonUncommon : EndoskeletonCommon
{
	quality = "Quality.Uncommon";
	equipPrereqs = 
	[
		{
			valueToCheck = 8;
		} : BodyPrereq
	];
	fk< GameplayLogicPackage >[] OnEquip = 
	[
		{
			stats = 
			[
				{
					statType = "BaseStats.Health";
					modifierType = "AdditiveMultiplier";
					value = 0.3f;
				} : ConstantStatModifier
			];
			UIData = 
			{
				floatValues = 
				[
					30f
				];
			} : EndoskeletonUIData;
		}
	];
}

[ notQueryable ]
EndoskeletonRare : EndoskeletonCommon
{
	quality = "Quality.Rare";
	equipPrereqs = 
	[
		{
			valueToCheck = 12;
		} : BodyPrereq
	];
	fk< GameplayLogicPackage >[] OnEquip = 
	[
		{
			stats = 
			[
				{
					statType = "BaseStats.Health";
					modifierType = "AdditiveMultiplier";
					value = 0.4f;
				} : ConstantStatModifier
			];
			UIData = 
			{
				floatValues = 
				[
					40f
				];
			} : EndoskeletonUIData;
		}
	];
}

[ notQueryable ]
EndoskeletonEpic : EndoskeletonCommon
{
	quality = "Quality.Epic";
	equipPrereqs = 
	[
		{
			valueToCheck = 15;
		} : BodyPrereq
	];
	fk< GameplayLogicPackage >[] OnEquip = 
	[
		{
			stats = 
			[
				{
					statType = "BaseStats.Health";
					modifierType = "AdditiveMultiplier";
					value = 0.5f;
				} : ConstantStatModifier
			];
			UIData = 
			{
				floatValues = 
				[
					50f
				];
			} : EndoskeletonUIData;
		}
	];
	deprecated = false;
	counterpart = "Items.AdvancedEndoskeletonEpic";
}

[ notQueryable ]
EndoskeletonLegendary : EndoskeletonCommon
{
	quality = "Quality.Legendary";
	equipPrereqs = 
	[
		{
			valueToCheck = 20;
		} : BodyPrereq
	];
	fk< GameplayLogicPackage >[] OnEquip = 
	[
		{
			stats = 
			[
				{
					statType = "BaseStats.Health";
					modifierType = "AdditiveMultiplier";
					value = 0.6f;
				} : ConstantStatModifier
			];
			UIData = 
			{
				floatValues = 
				[
					60f
				];
			} : EndoskeletonUIData;
		}
	];
	deprecated = false;
	counterpart = "Items.AdvancedEndoskeletonEpic";
}

[ notQueryable ]
EnhancedTissueCommon : MusculoskeletalSystemModule
{
	displayName = "LocKey#40828";
	localizedDescription = "LocKey#40829";
	iconPath = "cw_skeleton_enhancedtissue";
	quality = "Quality.Common";
	fk< GameplayLogicPackage >[] OnEquip = 
	[
		{
			stats = 
			[
				{
					statType = "BaseStats.Stamina";
					modifierType = "AdditiveMultiplier";
					value = 0.2f;
				} : ConstantStatModifier
			];
			UIData = 
			{
				intValues = 
				[
					20
				];
			} : EnhancedTissueUIData;
		}
	];
	CName cyberwareType = "EnhancedTissue";
	buyPrice += 
	[
		"Price.EnhancedTissue"
	];
	sellPrice += 
	[
		"Price.EnhancedTissue"
	];
	deprecated = true;
}

[ notQueryable ]
EnhancedTissueUncommon : EnhancedTissueCommon
{
	quality = "Quality.Uncommon";
	equipPrereqs = 
	[
		{
			valueToCheck = 8;
		} : BodyPrereq
	];
	fk< GameplayLogicPackage >[] OnEquip = 
	[
		{
			stats = 
			[
				{
					statType = "BaseStats.Stamina";
					modifierType = "AdditiveMultiplier";
					value = 0.3f;
				} : ConstantStatModifier
			];
			UIData = 
			{
				intValues = 
				[
					30
				];
			} : EnhancedTissueUIData;
		}
	];
}

[ notQueryable ]
EnhancedTissueRare : EnhancedTissueCommon
{
	quality = "Quality.Rare";
	equipPrereqs = 
	[
		{
			valueToCheck = 12;
		} : BodyPrereq
	];
	fk< GameplayLogicPackage >[] OnEquip = 
	[
		{
			stats = 
			[
				{
					statType = "BaseStats.Stamina";
					modifierType = "AdditiveMultiplier";
					value = 0.4f;
				} : ConstantStatModifier
			];
			UIData = 
			{
				intValues = 
				[
					40
				];
			} : EnhancedTissueUIData;
		}
	];
}

[ notQueryable ]
EnhancedTissueEpic : EnhancedTissueCommon
{
	quality = "Quality.Epic";
	equipPrereqs = 
	[
		{
			valueToCheck = 15;
		} : BodyPrereq
	];
	fk< GameplayLogicPackage >[] OnEquip = 
	[
		{
			stats = 
			[
				{
					statType = "BaseStats.Stamina";
					modifierType = "AdditiveMultiplier";
					value = 0.5f;
				} : ConstantStatModifier
			];
			UIData = 
			{
				intValues = 
				[
					50
				];
			} : EnhancedTissueUIData;
		}
	];
}

[ notQueryable ]
EnhancedTissueLegendary : EnhancedTissueCommon
{
	quality = "Quality.Legendary";
	equipPrereqs = 
	[
		{
			valueToCheck = 18;
		} : BodyPrereq
	];
	fk< GameplayLogicPackage >[] OnEquip = 
	[
		{
			stats = 
			[
				{
					statType = "BaseStats.Stamina";
					modifierType = "AdditiveMultiplier";
					value = 0.6f;
				} : ConstantStatModifier
			];
			UIData = 
			{
				intValues = 
				[
					60
				];
			} : EnhancedTissueUIData;
		}
	];
}

[ notQueryable ]
TitaniumInfusedBonesCommon : MusculoskeletalSystemModule
{
	string friendlyName = "Endoskeleton";
	displayName = "LocKey#40831";
	localizedDescription = "LocKey#40832";
	iconPath = "cw_skeleton_titaniuminfusedbones";
	quality = "Quality.Common";
	fk< GameplayLogicPackage >[] OnEquip = 
	[
		{
			stats = 
			[
				{
					statType = "BaseStats.CarryCapacity";
					modifierType = "AdditiveMultiplier";
					value = 0.2f;
				} : ConstantStatModifier
			];
			UIData = 
			{
				intValues = 
				[
					20
				];
			} : TitaniumInfusedBonesUIData;
		}
	];
	CName cyberwareType = "TitaniumInfusedBones";
	buyPrice += 
	[
		"Price.TitaniumInfusedBones"
	];
	sellPrice += 
	[
		"Price.TitaniumInfusedBones"
	];
	counterpart = "Items.AdvancedTitaniumInfusedBonesCommon";
}

[ notQueryable ]
TitaniumInfusedBonesUncommon : TitaniumInfusedBonesCommon
{
	quality = "Quality.Uncommon";
	fk< GameplayLogicPackage >[] OnEquip = 
	[
		{
			stats = 
			[
				{
					statType = "BaseStats.CarryCapacity";
					modifierType = "AdditiveMultiplier";
					value = 0.4f;
				} : ConstantStatModifier
			];
			UIData = 
			{
				intValues = 
				[
					40
				];
			} : TitaniumInfusedBonesUIData;
		}
	];
	counterpart = "Items.AdvancedTitaniumInfusedBonesCommon";
}

[ notQueryable ]
TitaniumInfusedBonesRare : TitaniumInfusedBonesCommon
{
	quality = "Quality.Rare";
	equipPrereqs = 
	[
		{
			valueToCheck = 13;
		} : BodyPrereq
	];
	fk< GameplayLogicPackage >[] OnEquip = 
	[
		{
			stats = 
			[
				{
					statType = "BaseStats.CarryCapacity";
					modifierType = "AdditiveMultiplier";
					value = 0.6f;
				} : ConstantStatModifier
			];
			UIData = 
			{
				intValues = 
				[
					60
				];
			} : TitaniumInfusedBonesUIData;
		}
	];
	counterpart = "Items.AdvancedTitaniumInfusedBonesCommon";
}

[ notQueryable ]
MicroVibrationsGeneratorUncommon : MusculoskeletalSystemModule
{
	string friendlyName = "Endoskeleton";
	displayName = "LocKey#40834";
	localizedDescription = "LocKey#40835";
	iconPath = "cw_skeleton_microvibrationsgenerator";
	quality = "Quality.Uncommon";
	fk< GameplayLogicPackage >[] OnEquip = 
	[
		{
			effectors = 
			[
				{
					prereqRecord = "Perks.IsWeaponMelee";
					value = 1.05f;
				} : MultiplyDamage
			];
			UIData = 
			{
				intValues = 
				[
					5
				];
			} : MicroVibrationsGeneratorUIData;
		}
	];
	CName cyberwareType = "MicroVibrationsGenerator";
	buyPrice += 
	[
		"Price.MicroVibrationsGenerator"
	];
	sellPrice += 
	[
		"Price.MicroVibrationsGenerator"
	];
	deprecated = true;
}

[ notQueryable ]
MicroVibrationsGeneratorRare : MicroVibrationsGeneratorUncommon
{
	quality = "Quality.Rare";
	equipPrereqs = 
	[
		{
			valueToCheck = 12;
		} : ReflexesPrereq
	];
	fk< GameplayLogicPackage >[] OnEquip = 
	[
		{
			effectors = 
			[
				{
					prereqRecord = "Perks.IsWeaponMelee";
					value = 1.1f;
				} : MultiplyDamage
			];
			UIData = 
			{
				intValues = 
				[
					10
				];
			} : MicroVibrationsGeneratorUIData;
		}
	];
}

[ notQueryable ]
MicroVibrationsGeneratorEpic : MicroVibrationsGeneratorUncommon
{
	quality = "Quality.Epic";
	equipPrereqs = 
	[
		{
			valueToCheck = 16;
		} : ReflexesPrereq
	];
	fk< GameplayLogicPackage >[] OnEquip = 
	[
		{
			effectors = 
			[
				{
					prereqRecord = "Perks.IsWeaponMelee";
					value = 1.15f;
				} : MultiplyDamage
			];
			UIData = 
			{
				intValues = 
				[
					15
				];
			} : MicroVibrationsGeneratorUIData;
		}
	];
}

[ notQueryable ]
JointLockRare : MusculoskeletalSystemModule
{
	string friendlyName = "JointLock";
	displayName = "LocKey#40837";
	localizedDescription = "LocKey#40838";
	iconPath = "cw_skeleton_jointlock";
	quality = "Quality.Rare";
	fk< GameplayLogicPackage >[] OnEquip = 
	[
		{
			fk< Effector >[] effectors = 
			[
				{
					prereqRecord = "Prereqs.RangedWeaponHeldPrereq";
					CName effectorClassName = "ApplyStatGroupEffector";
					fk< StatModifierGroup > statGroup = 
					{
						fk< StatModifier >[] statModifiers = 
						[
							{
								statType = "BaseStats.RecoilKickMin";
								modifierType = "AdditiveMultiplier";
								value = -0.12f;
							} : ConstantStatModifier, 
							{
								statType = "BaseStats.RecoilKickMax";
								modifierType = "AdditiveMultiplier";
								value = -0.12f;
							} : ConstantStatModifier
						];
					} : StatModifierGroup;
					applicationTarget = "Weapon";
				} : ApplyStatGroupEffector
			];
			UIData = 
			{
				floatValues = 
				[
					12f
				];
			} : JointLockUIData;
		}
	];
	CName cyberwareType = "JointLock";
	buyPrice += 
	[
		"Price.JointLock"
	];
	sellPrice += 
	[
		"Price.JointLock"
	];
	counterpart = "Items.AdvancedJointLockCommon";
}

[ notQueryable ]
JointLockEpic : JointLockRare
{
	quality = "Quality.Epic";
	equipPrereqs = 
	[
		{
			valueToCheck = 12;
		} : BodyPrereq
	];
	fk< GameplayLogicPackage >[] OnEquip = 
	[
		{
			fk< Effector >[] effectors = 
			[
				{
					prereqRecord = "Prereqs.RangedWeaponHeldPrereq";
					CName effectorClassName = "ApplyStatGroupEffector";
					fk< StatModifierGroup > statGroup = 
					{
						fk< StatModifier >[] statModifiers = 
						[
							{
								statType = "BaseStats.RecoilKickMin";
								modifierType = "AdditiveMultiplier";
								value = -0.25f;
							} : ConstantStatModifier, 
							{
								statType = "BaseStats.RecoilKickMax";
								modifierType = "AdditiveMultiplier";
								value = -0.25f;
							} : ConstantStatModifier
						];
					} : StatModifierGroup;
					applicationTarget = "Weapon";
				} : ApplyStatGroupEffector
			];
			UIData = 
			{
				floatValues = 
				[
					25f
				];
			} : JointLockUIData;
		}
	];
	counterpart = "Items.AdvancedJointLockCommon";
}

[ notQueryable ]
DenseMarrowUncommon : MusculoskeletalSystemModule
{
	string friendlyName = "JointLock";
	displayName = "LocKey#40840";
	localizedDescription = "LocKey#40841";
	iconPath = "cw_skeleton_densemarrow";
	quality = "Quality.Uncommon";
	fk< GameplayLogicPackage >[] OnEquip = 
	[
		{
			stats = [];
			fk< Effector >[] effectors = 
			[
				{
					prereqRecord = "Perks.IsWeaponMelee";
					value = 1.07f;
				} : MultiplyDamage
			];
			UIData = 
			{
				intValues = 
				[
					7, 10
				];
			} : DenseMarrowUIData;
		}
	];
	CName cyberwareType = "DenseMarrow";
	buyPrice += 
	[
		"Price.DenseMarrow"
	];
	sellPrice += 
	[
		"Price.DenseMarrow"
	];
	counterpart = "Items.AdvancedDenseMarrowUncommon";
}

[ notQueryable ]
DenseMarrowRare : DenseMarrowUncommon
{
	quality = "Quality.Rare";
	fk< GameplayLogicPackage >[] OnEquip = 
	[
		{
			stats = [];
			fk< Effector >[] effectors = 
			[
				{
					prereqRecord = "Perks.IsWeaponMelee";
					value = 1.15f;
				} : MultiplyDamage
			];
			UIData = 
			{
				intValues = 
				[
					15, 10
				];
			} : DenseMarrowUIData;
		}
	];
	counterpart = "Items.AdvancedDenseMarrowUncommon";
}

[ notQueryable ]
DenseMarrowEpic : DenseMarrowUncommon
{
	quality = "Quality.Epic";
	equipPrereqs = 
	[
		{
			valueToCheck = 13;
		} : BodyPrereq
	];
	fk< GameplayLogicPackage >[] OnEquip = 
	[
		{
			stats = [];
			fk< Effector >[] effectors = 
			[
				{
					prereqRecord = "Perks.IsWeaponMelee";
					value = 1.25f;
				} : MultiplyDamage
			];
			UIData = 
			{
				intValues = 
				[
					25, 10
				];
			} : DenseMarrowUIData;
		}
	];
	counterpart = "Items.AdvancedDenseMarrowUncommon";
}

[ notQueryable ]
EndoskeletonUIData : GameplayLogicPackageUIData
{
	iconPath = "ability_silenced";
	localizedDescription = "LocKey#40826";
}

[ notQueryable ]
EnhancedTissueUIData : GameplayLogicPackageUIData
{
	iconPath = "ability_silenced";
	localizedDescription = "LocKey#40827";
}

[ notQueryable ]
JointLockUIData : GameplayLogicPackageUIData
{
	iconPath = "ability_silenced";
	localizedDescription = "LocKey#40836";
}

[ notQueryable ]
IconicGunStabilizerUIData : GameplayLogicPackageUIData
{
	iconPath = "ability_silenced";
	localizedDescription = "LocKey#94473";
}

[ notQueryable ]
DenseMarrowUIData : GameplayLogicPackageUIData
{
	iconPath = "ability_silenced";
	localizedDescription = "LocKey#40839";
}

[ notQueryable ]
TitaniumInfusedBonesUIData : GameplayLogicPackageUIData
{
	iconPath = "ability_silenced";
	localizedDescription = "LocKey#40830";
}

[ notQueryable ]
MicroVibrationsGeneratorUIData : GameplayLogicPackageUIData
{
	iconPath = "ability_silenced";
	localizedDescription = "LocKey#40833";
}

