package Character
using RTDB, BaseStats, ArchetypeData

cbj_ep1_cyberjunkie_base : Gameplay_NPC_Base
{
	tags += 
	[
		"Cyberjunkie", "MiniBoss"
	];
	actionMap = "Gang.Map";
	reactionPreset = "ReactionPresets.Ganger_Aggressive";
	entityTemplatePath = "base\open_world\minor_activities\city_center\downtown\ma_cct_dtn_03\characters\ma_cct_dtn_03_cedric_psycho.ent";
	quest = "NPCQuestAffiliation.MinorActivity";
	primaryEquipment = 
	{
		equipmentItems = 
		[
			{
				item = "Items.w_melee_004__fists_a";
				equipSlot = "AttachmentSlots.WeaponRight";
				equipCondition = 
				[
					"WeaponConditions.BaseMeleePrimaryWeaponEquipCondition"
				];
				unequipCondition = 
				[
					"WeaponConditions.BaseMeleePrimaryWeaponUnequipCondition"
				];
			} : NPCEquipmentItem
		];
	};
	skipDisplayArchetype = true;
	dropsControlledLoot = false;
	baseAttitudeGroup = "cbj_ep1_cyberjunkies";
	rarity = "NPCRarity.Elite";
	abilities += 
	[
		"Ability.IsReckless", "Ability.CanUseFlashbangGrenades", "Ability.CanUseGrenades"
	];
	statModifiers += 
	[
		{
			statType = "BaseStats.StaggerDamageThreshold";
			modifierType = "Additive";
			value = 25.f;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.StunImmunity";
			modifierType = "Additive";
			value = 1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.Health";
			modifierType = "Multiplier";
			value = 1.795f;
		} : ConstantStatModifier
	];
	statModifierGroups += 
	[
		"Character.Cyberpsycho_ModGroup"
	];
	fk< Affiliation > affiliation = "Factions.Unaffiliated";
	dropsWeaponOnDeath = false;
}

cbj_ep1_001_cyberjunkie : cbj_ep1_cyberjunkie_base
{
	entityTemplatePath = "ep1\openworld\sandbox_activities\cyberjunkies\cbj_ep1_01\cbj_ep1_01_enemy.ent";
	primaryEquipment = 
	{
		equipmentItems = 
		[
			{
				item = "Items.Preset_Katana_Neon_03";
				equipSlot = "AttachmentSlots.WeaponRight";
				equipCondition = 
				[
					"WeaponConditions.BaseMeleePrimaryWeaponEquipCondition"
				];
				unequipCondition = 
				[
					"WeaponConditions.BaseMeleePrimaryWeaponUnequipCondition"
				];
			} : NPCEquipmentItem
		];
	};
	secondaryEquipment = 
	{
		equipmentItems = 
		[
			{
			} : MilitechSecondaryHandgunPool
		];
	};
	tags += 
	[
		"Cyberjunkie", "MiniBoss"
	];
	archetypeData = "ArchetypeData.FastMeleeT3";
	abilities += 
	[
		"Ability.CanUseOpticalCamo", "Ability.CanCharge", "Ability.CanDash", "Ability.CanUseStrongArms"
	];
	displayName = "LocKey#83321";
	fullDisplayName = "LocKey#83321";
	lootDrop = "LootTables.Cbj_ep1_01_loot";
	bountyDrawTable = 
	{
		bountyChoices = 
		[
			{
				bountySetter = "Factions.Barghest";
				transgressions = 
				[
					{
						localizedDescription = "LocKey#91192";
					}
				];
			}
		];
	};
}

cbj_ep1_002_cyberjunkie : cbj_ep1_cyberjunkie_base
{
	entityTemplatePath = "ep1\openworld\sandbox_activities\cyberjunkies\cbj_ep1_02\cbj_ep1_02_enemy.ent";
	primaryEquipment = 
	{
		equipmentItems = 
		[
			{
				item = "Items.NPC_Mantis_Blades";
				equipSlot = "AttachmentSlots.WeaponRight";
				equipCondition = 
				[
					"WeaponConditions.BaseMeleePrimaryWeaponEquipCondition"
				];
				unequipCondition = 
				[
					"WeaponConditions.BaseMeleePrimaryWeaponUnequipCondition"
				];
			} : NPCEquipmentItem
		];
	};
	secondaryEquipment = 
	{
		equipmentItems = 
		[
			{
			} : MilitechSecondaryHandgunPool
		];
	};
	tags += 
	[
		"Cyberjunkie", "MiniBoss"
	];
	bountyDrawTable = "BountyDrawTable.None";
	archetypeData = "ArchetypeData.FastMeleeT3";
	fk< StatModifier >[] statModifiers += 
	[
		{
			statType = "BaseStats.WoundLArmDamageThreshold";
			modifierType = "Multiplier";
			value = 0;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.WoundRArmDamageThreshold";
			modifierType = "Multiplier";
			value = 0;
		} : ConstantStatModifier
	];
	abilities += 
	[
		"Ability.CanUseMantisBlades", "Ability.HasBurningImmunity", "Ability.CanCharge", "Ability.CanDash"
	];
	displayName = "LocKey#83322";
	fullDisplayName = "LocKey#83322";
	lootDrop = "LootTables.Cbj_ep1_02_loot";
	dropsWeaponOnDeath = false;
}

cbj_ep1_003_cyberjunkie : cbj_ep1_cyberjunkie_base
{
	entityTemplatePath = "ep1\openworld\sandbox_activities\cyberjunkies\cbj_ep1_03\cbj_ep1_03_enemy.ent";
	primaryEquipment = 
	{
		equipmentItems = 
		[
			{
				item = "Items.Preset_Machete_Borg_Neon";
				equipSlot = "AttachmentSlots.WeaponRight";
				equipCondition = 
				[
					"WeaponConditions.BaseMeleePrimaryWeaponEquipCondition"
				];
				unequipCondition = 
				[
					"WeaponConditions.BaseMeleePrimaryWeaponUnequipCondition"
				];
			} : NPCEquipmentItem
		];
	};
	secondaryEquipment = 
	{
		equipmentItems = 
		[
			{
			} : TygerClawsSecondaryHandgunPool
		];
	};
	statModifierGroups += 
	[
		"Character.Cyberpsycho_ModGroup"
	];
	bountyDrawTable = "BountyDrawTable.None";
	archetypeData = "ArchetypeData.FastMeleeT3";
	tags += 
	[
		"Cyberjunkie", "MiniBoss"
	];
	abilities += 
	[
		"Ability.HasChargeJump", "Ability.HasPainEditor", "Ability.CanCharge", "Ability.CanDash"
	];
	displayName = "LocKey#83323";
	fullDisplayName = "LocKey#83323";
	lootDrop = "LootTables.Cbj_ep1_03_loot";
}

cbj_ep1_004_cyberjunkie : cbj_ep1_cyberjunkie_base
{
	entityTemplatePath = "ep1\openworld\sandbox_activities\cyberjunkies\cbj_ep1_04\cbj_ep1_04_enemy.ent";
	primaryEquipment = 
	{
		equipmentItems = 
		[
			{
				item = "Items.Preset_Nekomata_Military";
				equipSlot = "AttachmentSlots.WeaponRight";
				equipCondition = 
				[
					"WeaponConditions.BaseRangedPrimaryWeaponEquipCondition"
				];
				unequipCondition = 
				[
					"WeaponConditions.BaseRangedPrimaryWeaponUnequipCondition"
				];
			} : NPCEquipmentItem
		];
	};
	secondaryEquipment = 
	{
		equipmentItems = 
		[
			{
			} : MilitechSecondaryHandgunPool
		];
	};
	sensePreset = "Senses.SniperRelaxed50m";
	relaxedSensesPreset = "SniperRelaxed50m";
	alertedSensesPreset = "SniperAlerted50m";
	combatSensesPreset = "SniperCombat50m";
	bountyDrawTable = "BountyDrawTable.None";
	archetypeData = "ArchetypeData.FastSniperT3";
	tags += 
	[
		"Cyberjunkie", "MiniBoss"
	];
	displayName = "LocKey#83324";
	fullDisplayName = "LocKey#83324";
	lootDrop = "LootTables.Cbj_ep1_04_loot";
	abilities += 
	[
		"Ability.PrefersCovers", "Ability.CanSeeThroughSmoke", "Ability.CanUseSmokeGrenades", "Ability.HasChargeJump"
	];
}

cbj_ep1_005_cyberjunkie : cbj_ep1_cyberjunkie_base
{
	entityTemplatePath = "ep1\openworld\sandbox_activities\cyberjunkies\cbj_ep1_05\cbj_ep1_05_enemy.ent";
	primaryEquipment = 
	{
		equipmentItems = 
		[
			{
				item = "Items.Preset_Baseball_Bat_Pimp";
				equipSlot = "AttachmentSlots.WeaponRight";
				equipCondition = 
				[
					"WeaponConditions.BaseMeleePrimaryWeaponEquipCondition"
				];
				unequipCondition = 
				[
					"WeaponConditions.BaseMeleePrimaryWeaponUnequipCondition"
				];
			} : NPCEquipmentItem
		];
	};
	secondaryEquipment = 
	{
		equipmentItems = 
		[
			{
			} : AnimalsSecondaryHandgunPool
		];
	};
	tags += 
	[
		"Cyberjunkie", "MiniBoss"
	];
	archetypeData = "ArchetypeData.HeavyMeleeT3";
	abilities += 
	[
		"Ability.HasChargeJump", "Ability.CanCharge", "Ability.CanDash"
	];
	displayName = "LocKey#83325";
	fullDisplayName = "LocKey#83325";
	lootDrop = "LootTables.Cbj_ep1_05_loot";
	bountyDrawTable = 
	{
		bountyChoices = 
		[
			{
				bountySetter = "Factions.NCPD";
				transgressions = 
				[
					{
						localizedDescription = "LocKey#91204";
					}
				];
				reward = "BountyReward.Generic";
			}
		];
	};
}

cbj_ep1_006_cyberjunkie : cbj_ep1_cyberjunkie_base
{
	entityTemplatePath = "ep1\openworld\sandbox_activities\cyberjunkies\cbj_ep1_06\cbj_ep1_06_enemy.ent";
	primaryEquipment = 
	{
		equipmentItems = 
		[
			{
				item = "Items.Preset_Neurotoxin_Knife_Military";
				equipSlot = "AttachmentSlots.WeaponRight";
				equipCondition = 
				[
					"WeaponConditions.BaseMeleePrimaryWeaponEquipCondition"
				];
				unequipCondition = 
				[
					"WeaponConditions.BaseMeleePrimaryWeaponUnequipCondition"
				];
			} : NPCEquipmentItem
		];
	};
	secondaryEquipment = 
	{
		equipmentItems = 
		[
			{
			} : MilitechSecondaryHandgunPool
		];
	};
	tags += 
	[
		"Cyberjunkie", "MiniBoss"
	];
	archetypeData = "ArchetypeData.TechieT3";
	abilities += 
	[
		"Ability.CanUseBiohazardGrenades", "Ability.HasSecondHeart", "Ability.HasPoisonImmunity"
	];
	displayName = "LocKey#83326";
	fullDisplayName = "LocKey#83326";
	lootDrop = "LootTables.Cbj_ep1_06_loot";
	bountyDrawTable = 
	{
		bountyChoices = 
		[
			{
				bountySetter = "Factions.NCPD";
				transgressions = 
				[
					"Transgression.DrugPossession", "Transgression.ElectronicallyStolenGoods", "Transgression.UnpaidDebt"
				];
				reward = "BountyReward.Generic";
			}
		];
	};
}

cbj_ep1_007_cyberjunkie : cbj_ep1_cyberjunkie_base
{
	entityTemplatePath = "ep1\openworld\sandbox_activities\cyberjunkies\cbj_ep1_07\cbj_ep1_07_enemy.ent";
	primaryEquipment = 
	{
		equipmentItems = 
		[
			{
				item = "Items.Preset_Palica_Military";
				equipSlot = "AttachmentSlots.WeaponRight";
				equipCondition = 
				[
					"WeaponConditions.BaseRangedPrimaryWeaponEquipCondition"
				];
				unequipCondition = 
				[
					"WeaponConditions.BaseRangedPrimaryWeaponUnequipCondition"
				];
			} : NPCEquipmentItem
		];
	};
	secondaryEquipment = 
	{
		equipmentItems = 
		[
			{
			} : MilitechSecondaryHandgunPool
		];
	};
	bountyDrawTable = "BountyDrawTable.None";
	archetypeData = "ArchetypeData.ShotgunnerT3";
	tags += 
	[
		"Cyberjunkie", "MiniBoss"
	];
	abilities += 
	[
		"Ability.CanShootWhileMoving"
	];
	displayName = "LocKey#83327";
	fullDisplayName = "LocKey#83327";
	lootDrop = "LootTables.Cbj_ep1_07_loot";
}

cbj_ep1_008_cyberjunkie : cbj_ep1_cyberjunkie_base
{
	entityTemplatePath = "ep1\openworld\sandbox_activities\cyberjunkies\cbj_ep1_08\cbj_ep1_08_enemy.ent";
	primaryEquipment = 
	{
		equipmentItems = 
		[
			{
				item = "Items.Preset_Ticon_Neon";
				equipSlot = "AttachmentSlots.WeaponRight";
				equipCondition = 
				[
					"WeaponConditions.BaseMeleePrimaryWeaponEquipCondition"
				];
				unequipCondition = 
				[
					"WeaponConditions.BaseMeleePrimaryWeaponUnequipCondition"
				];
			} : NPCEquipmentItem
		];
	};
	secondaryEquipment = 
	{
		equipmentItems = 
		[
			{
			} : VoodooboysSecondaryHandgunPool
		];
	};
	archetypeData = "ArchetypeData.NetrunnerT3";
	tags += 
	[
		"Cyberjunkie", "MiniBoss"
	];
	abilities += 
	[
		"Ability.HasChargeJump"
	];
	displayName = "LocKey#83328";
	fullDisplayName = "LocKey#83328";
	lootDrop = "LootTables.Cbj_ep1_08_loot";
}

cbj_ep1_009_cyberjunkie : cbj_ep1_cyberjunkie_base
{
	entityTemplatePath = "ep1\openworld\sandbox_activities\cyberjunkies\cbj_ep1_09\cbj_ep1_09_enemy.ent";
	primaryEquipment = 
	{
		equipmentItems = 
		[
			{
				item = "Items.Preset_Zhuo_Neon";
				equipSlot = "AttachmentSlots.WeaponRight";
				equipCondition = 
				[
					"WeaponConditions.BaseRangedPrimaryWeaponEquipCondition"
				];
				unequipCondition = 
				[
					"WeaponConditions.BaseRangedPrimaryWeaponUnequipCondition"
				];
			} : NPCEquipmentItem
		];
	};
	secondaryEquipment = 
	{
		equipmentItems = 
		[
			{
			} : MaelstromSecondaryHandgunPool
		];
	};
	bountyDrawTable = "BountyDrawTable.None";
	archetypeData = "ArchetypeData.GenericRangedT3";
	tags += 
	[
		"Cyberjunkie", "MiniBoss"
	];
	abilities += 
	[
		"Ability.HasElectrocuteImmunity", "Ability.HasElectricCoating"
	];
	displayName = "LocKey#83329";
	fullDisplayName = "LocKey#83329";
	lootDrop = "LootTables.Cbj_ep1_09_loot";
}

cbj_ep1_009_civilian : Quest_NPC_Base
{
	entityTemplatePath = "ep1\openworld\sandbox_activities\cyberjunkies\cbj_ep1_09\cbj_ep1_09_civilian.ent";
	displayName = "LocKey#92051";
	fullDisplayName = "LocKey#92051";
	reactionPreset = "ReactionPresets.Civilian_Neutral";
	uiNameplate = "UINameplate.CrowdSettings";
	effectors = 
	[
		{
			fk< StatusEffect > statusEffect = "BaseStatusEffect.BlockGrapple";
		} : ApplyStatusEffectEffector
	];
	tags += 
	[
		"Invulnerable"
	];
	canHaveGenericTalk = true;
}

cbj_ep1_010_cyberjunkie : cbj_ep1_cyberjunkie_base
{
	entityTemplatePath = "ep1\openworld\sandbox_activities\cyberjunkies\cbj_ep1_10\cbj_ep1_10_enemy.ent";
	primaryEquipment = 
	{
		equipmentItems = 
		[
			{
				item = "Items.Preset_Metel_Neon";
				equipSlot = "AttachmentSlots.WeaponRight";
				equipCondition = 
				[
					"WeaponConditions.BaseMeleePrimaryWeaponEquipCondition"
				];
				unequipCondition = 
				[
					"WeaponConditions.BaseMeleePrimaryWeaponUnequipCondition"
				];
			} : NPCEquipmentItem
		];
	};
	secondaryEquipment = 
	{
		equipmentItems = 
		[
			{
			} : TygerClawsSecondaryHandgunPool
		];
	};
	archetypeData = "ArchetypeData.FastRangedT3";
	tags += 
	[
		"Cyberjunkie", "MiniBoss"
	];
	abilities += 
	[
		"Ability.HasPainEditor", "Ability.CanCharge", "Ability.CanDash"
	];
	displayName = "LocKey#83330";
	fullDisplayName = "LocKey#83330";
	lootDrop = "LootTables.Cbj_ep1_10_loot";
}

cbj_ep1_011_cyberjunkie : kurtz_recon_sniper2_achilles_ma_rare
{
	fk< Affiliation > affiliation = "Factions.Unaffiliated";
	bountyDrawTable = "BountyDrawTable.Scavengers";
	entityTemplatePath = "ep1\openworld\sandbox_activities\cyberjunkies\cbj_ep1_11\cbj_ep1_11_enemy.ent";
	rarity = "NPCRarity.Elite";
	primaryEquipment = 
	{
		equipmentItems = 
		[
			{
				item = "Items.Preset_Ashura_Military";
				equipSlot = "AttachmentSlots.WeaponRight";
				equipCondition = 
				[
					"WeaponConditions.BaseMeleePrimaryWeaponEquipCondition"
				];
				unequipCondition = 
				[
					"WeaponConditions.BaseMeleePrimaryWeaponUnequipCondition"
				];
			} : NPCEquipmentItem
		];
	};
	secondaryEquipment = 
	{
		equipmentItems = 
		[
			{
			} : EP1ScavengerSecondaryHandgunPool
		];
	};
	statModifierGroups += 
	[
		"Character.Cyberpsycho_ModGroup"
	];
	archetypeData = "ArchetypeData.FastSniperT3";
	abilities += 
	[
		"Ability.CanUseSmokeGrenades"
	];
	tags += 
	[
		"Cyberjunkie", "MiniBoss"
	];
	statModifiers += 
	[
		{
			statType = "BaseStats.StaggerDamageThreshold";
			modifierType = "Additive";
			value = 25.f;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.StunImmunity";
			modifierType = "Additive";
			value = 1;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.Health";
			modifierType = "Multiplier";
			value = 1.795f;
		} : ConstantStatModifier
	];
	displayName = "LocKey#85309";
	fullDisplayName = "LocKey#85309";
	lootDrop = "LootTables.Cbj_ep1_11_loot";
}

cbj_ep1_011_junkie_1 : scrappers_grunt1_melee1_pipewrench_ma
{
	effectors = 
	[
		{
			fk< StatusEffect > statusEffect = "BaseStatusEffect.BlockGrapple";
		} : ApplyStatusEffectEffector
	];
}

cbj_ep1_011_junkie_2 : scrappers_grunt1_ranged1_nova_ma
{
	effectors = 
	[
		{
			fk< StatusEffect > statusEffect = "BaseStatusEffect.BlockGrapple";
		} : ApplyStatusEffectEffector
	];
	reactionPreset = "ReactionPresets.Sleep_Civilian";
}

cbj_ep1_011_junkie_3 : scrappers_ranged2_copperhead_wa
{
	effectors = 
	[
		{
			fk< StatusEffect > statusEffect = "BaseStatusEffect.BlockGrapple";
		} : ApplyStatusEffectEffector
	];
	reactionPreset = "ReactionPresets.Sleep_Civilian";
}

cbj_ep1_011_junkie_4 : scrappers_grunt1_melee1_pipewrench_ma
{
	effectors = 
	[
		{
			fk< StatusEffect > statusEffect = "BaseStatusEffect.BlockGrapple";
		} : ApplyStatusEffectEffector
	];
	reactionPreset = "ReactionPresets.Sleep_Civilian";
}

cbj_ep1_011_junkie_5 : scrappers_grunt1_ranged1_pulsar_wa
{
	effectors = 
	[
		{
			fk< StatusEffect > statusEffect = "BaseStatusEffect.BlockGrapple";
		} : ApplyStatusEffectEffector
	];
	reactionPreset = "ReactionPresets.Sleep_Civilian";
}

