package Character
using RTDB, BaseStats, Factions, ArchetypeType, ArchetypeData

animals_base : Gameplay_NPC_Base
{
	reactionPreset = "ReactionPresets.Ganger_Aggressive";
	baseAttitudeGroup = "animals";
	actionMap = "Gang.Map";
	fk< AISquadParams > squadParamsID = "FactionSquads.AnimalsSquad";
	fk< Affiliation > affiliation = "Factions.Animals";
	visualTags = 
	[
		"Animals"
	];
	fk< StatModifierGroup >[] statModifierGroups += 
	[
		"Character.BaseAnimalStats"
	];
	fk< StatModifier >[] statModifiers += 
	[
		{
			column = "animals";
		} : FactionNPCRarityBonus
	];
	abilities += 
	[
		"Ability.IsReckless", "Ability.CanUseFlashbangGrenades"
	];
	bountyDrawTable = "BountyDrawTable.Animals";
	isBumpable = true;
	lootBagEntity = "animalsDropBag";
}

BaseAnimalStats : StatModifierGroup
{
	fk< StatModifier >[] statModifiers = 
	[
		{
			statType = "BaseStats.Stamina";
			modifierType = "Multiplier";
			value = 1.25f;
		} : ConstantStatModifier, 
		{
			statType = "BaseStats.HitReactionFactor";
			modifierType = "Multiplier";
			value = 0.9f;
		} : ConstantStatModifier
	];
}

animals_base_mb : animals_base
{
	visualTags += 
	[
		"Big"
	];
	[ EP1 ]
	entityTemplatePath = "ep1\characters\entities\gang\gang__ep1_animals_mb.ent";
}

animals_base_mba : animals_base
{
	visualTags += 
	[
		"Big"
	];
	[ EP1 ]
	entityTemplatePath = "ep1\characters\entities\gang\gang__ep1_animals_mba.ent";
}

animals_base_wba : animals_base
{
	visualTags += 
	[
		"Big"
	];
	[ EP1 ]
	entityTemplatePath = "ep1\characters\entities\gang\gang__ep1_animals_wba.ent";
}

animals_grunt1_ranged1_nova_mb : animals_base_mb
{
	primaryEquipment = 
	{
		equipmentItems = 
		[
			{
			} : AnimalsPrimaryHandgunPool
		];
	};
	secondaryEquipment = 
	{
		equipmentItems = 
		[
			{
			} : AnimalsSecondaryHandgunPool
		];
	};
	visualTags += 
	[
		"Grunt", "Lvl1"
	];
	rarity = "NPCRarity.Weak";
	archetypeData = 
	{
		type = 
		{
			localizedName = "LocKey#22492";
		} : ArchetypeType.GenericRangedT1;
	} : ArchetypeData.GenericRangedT1;
	lootDrop = "Loot.AnimalsGenericRangedGruntT1_nova";
}

animals_grunt1_ranged1_pulsar_mb : animals_base_mb
{
	primaryEquipment = 
	{
		equipmentItems = 
		[
			{
			} : AnimalsSMGPool, 
			{
			} : AnimalsSMGPool
		];
	};
	secondaryEquipment = 
	{
		equipmentItems = 
		[
			{
			} : AnimalsSecondaryHandgunPool
		];
	};
	visualTags += 
	[
		"Grunt", "Lvl1"
	];
	rarity = "NPCRarity.Weak";
	archetypeData = 
	{
		type = 
		{
			localizedName = "LocKey#22492";
		} : ArchetypeType.GenericRangedT1;
	} : ArchetypeData.GenericRangedT1;
	lootDrop = "Loot.AnimalsGenericRangedGruntT1_pulsar";
}

animals_bouncer1_ranged1_kenshin_mb : animals_base_mb
{
	primaryEquipment = 
	{
		equipmentItems = 
		[
			{
			} : AnimalsPrimaryHandgunPool
		];
	};
	secondaryEquipment = 
	{
		equipmentItems = 
		[
			{
			} : AnimalsSecondaryHandgunPool
		];
	};
	visualTags += 
	[
		"Bouncer", "Lvl1"
	];
	rarity = "NPCRarity.Weak";
	archetypeData = 
	{
		type = 
		{
			localizedName = "LocKey#22492";
		} : ArchetypeType.GenericRangedT1;
	} : ArchetypeData.GenericRangedT1;
	lootDrop = "Loot.AnimalsGenericRangedBouncerT1";
}

animals_bouncer1_ranged1_omaha_mb : animals_base_mb
{
	primaryEquipment = 
	{
		equipmentItems = 
		[
			{
			} : AnimalsPrimaryHandgunPool
		];
	};
	secondaryEquipment = 
	{
		equipmentItems = 
		[
			{
			} : AnimalsSecondaryHandgunPool
		];
	};
	visualTags += 
	[
		"Bouncer", "Lvl1"
	];
	rarity = "NPCRarity.Weak";
	archetypeData = 
	{
		type = 
		{
			localizedName = "LocKey#22494";
		} : ArchetypeType.GenericRangedT2;
	} : ArchetypeData.GenericRangedT2;
	lootDrop = "Loot.AnimalsGenericRangedBouncerT2_handgunTech";
}

animals_grunt2_ranged2_overture_mb : animals_base_mb
{
	primaryEquipment = 
	{
		equipmentItems = 
		[
			{
			} : AnimalsPrimaryHandgunPool
		];
	};
	secondaryEquipment = 
	{
		equipmentItems = 
		[
			{
			} : AnimalsSecondaryHandgunPool
		];
	};
	visualTags += 
	[
		"Grunt", "Lvl2"
	];
	rarity = "NPCRarity.Normal";
	archetypeData = 
	{
		type = 
		{
			localizedName = "LocKey#22494";
		} : ArchetypeType.GenericRangedT2;
	} : ArchetypeData.GenericRangedT2;
	lootDrop = "Loot.AnimalsGenericRangedBouncerT2_handgun";
}

animals_grunt2_ranged2_pulsar_mb : animals_base_mb
{
	primaryEquipment = 
	{
		equipmentItems = 
		[
			{
			} : AnimalsSMGPool
		];
	};
	secondaryEquipment = 
	{
		equipmentItems = 
		[
			{
			} : AnimalsSecondaryHandgunPool
		];
	};
	visualTags += 
	[
		"Grunt", "Lvl2"
	];
	rarity = "NPCRarity.Normal";
	archetypeData = 
	{
		type = 
		{
			localizedName = "LocKey#22494";
		} : ArchetypeType.GenericRangedT2;
	} : ArchetypeData.GenericRangedT2;
	lootDrop = "Loot.AnimalsGenericRangedGruntT2";
}

animals_bouncer2_ranged2_burya_mb : animals_base_mb
{
	primaryEquipment = 
	{
		equipmentItems = 
		[
			{
			} : AnimalsPrimaryHandgunPool
		];
	};
	secondaryEquipment = 
	{
		equipmentItems = 
		[
			{
			} : AnimalsSecondaryHandgunPool
		];
	};
	visualTags += 
	[
		"Bouncer", "Lvl2"
	];
	rarity = "NPCRarity.Normal";
	archetypeData = 
	{
		type = 
		{
			localizedName = "LocKey#22494";
		} : ArchetypeType.GenericRangedT2;
	} : ArchetypeData.GenericRangedT2;
	lootDrop = "Loot.AnimalsGenericRangedBouncerT2_handgunTech";
}

animals_bouncer2_ranged2_omaha_mb : animals_base_mb
{
	primaryEquipment = 
	{
		equipmentItems = 
		[
			{
			} : AnimalsPrimaryHandgunPool
		];
	};
	secondaryEquipment = 
	{
		equipmentItems = 
		[
			{
			} : AnimalsSecondaryHandgunPool
		];
	};
	visualTags += 
	[
		"Bouncer", "Lvl2"
	];
	rarity = "NPCRarity.Normal";
	archetypeData = 
	{
		type = 
		{
			localizedName = "LocKey#22494";
		} : ArchetypeType.GenericRangedT2;
	} : ArchetypeData.GenericRangedT2;
	lootDrop = "Loot.AnimalsGenericRangedBouncerT2_handgunTech";
}

animals_elite2_ranged3_burya_mba_rare : animals_base_mba
{
	primaryEquipment = 
	{
		equipmentItems = 
		[
			{
			} : AnimalsPrimaryHandgunPool
		];
	};
	secondaryEquipment = 
	{
		equipmentItems = 
		[
			{
			} : AnimalsSecondaryHandgunPool
		];
	};
	rarity = "NPCRarity.Rare";
	visualTags += 
	[
		"Lvl2", "Elite"
	];
	archetypeData = 
	{
		type = 
		{
			localizedName = "LocKey#42602";
		} : ArchetypeType.GenericRangedT3;
	} : ArchetypeData.GenericRangedT3;
	lootDrop = "Loot.AnimalsGenericRangedEliteT3";
}

animals_grunt1_melee1_fists_mb : animals_base_mb
{
	primaryEquipment = 
	{
		equipmentItems = 
		[
			{
				item = "Items.w_melee_004__fists_a";
				equipSlot = "AttachmentSlots.WeaponRight";
				equipCondition = 
				[
					"WeaponConditions.BaseMeleePrimaryWeaponEquipCondition"
				];
				unequipCondition = 
				[
					"WeaponConditions.BaseMeleePrimaryWeaponUnequipCondition"
				];
			} : NPCEquipmentItem
		];
	};
	secondaryEquipment = 
	{
		equipmentItems = 
		[
			{
			} : AnimalsSecondaryHandgunPool
		];
	};
	visualTags += 
	[
		"Grunt", "Lvl1"
	];
	rarity = "NPCRarity.Weak";
	archetypeData = 
	{
		type = 
		{
			localizedName = "LocKey#22496";
		} : ArchetypeType.GenericMeleeT2;
	} : ArchetypeData.GenericMeleeT2;
	lootDrop = "Loot.AnimalsGenericMeleeGruntT1_fist";
	dropsWeaponOnDeath = false;
}

animals_grunt1_melee1_baseball_mb : animals_base_mb
{
	primaryEquipment = 
	{
		equipmentItems = 
		[
			{
				item = "Items.Preset_Baseball_Bat_Pimp";
				equipSlot = "AttachmentSlots.WeaponRight";
				equipCondition = 
				[
					"WeaponConditions.BaseMeleePrimaryWeaponEquipCondition"
				];
				unequipCondition = 
				[
					"WeaponConditions.BaseMeleePrimaryWeaponUnequipCondition"
				];
			} : NPCEquipmentItem
		];
	};
	secondaryEquipment = 
	{
		equipmentItems = 
		[
			{
			} : AnimalsSecondaryHandgunPool
		];
	};
	visualTags += 
	[
		"Grunt", "Lvl1"
	];
	rarity = "NPCRarity.Weak";
	archetypeData = 
	{
		type = 
		{
			localizedName = "LocKey#22496";
		} : ArchetypeType.GenericMeleeT1;
	} : ArchetypeData.GenericMeleeT1;
	lootDrop = "Loot.AnimalsGenericMeleeGruntT1_blunt";
}

animals_bouncer1_melee1_baton_mb : animals_base_mb
{
	primaryEquipment = 
	{
		equipmentItems = 
		[
			{
				item = "Items.Preset_Baton_Alpha";
				equipSlot = "AttachmentSlots.WeaponRight";
				equipCondition = 
				[
					"WeaponConditions.BaseMeleePrimaryWeaponEquipCondition"
				];
				unequipCondition = 
				[
					"WeaponConditions.BaseMeleePrimaryWeaponUnequipCondition"
				];
			} : NPCEquipmentItem
		];
	};
	secondaryEquipment = 
	{
		equipmentItems = 
		[
			{
			} : AnimalsSecondaryHandgunPool
		];
	};
	visualTags += 
	[
		"Bouncer", "Lvl1"
	];
	rarity = "NPCRarity.Weak";
	archetypeData = 
	{
		type = 
		{
			localizedName = "LocKey#22496";
		} : ArchetypeType.GenericMeleeT1;
	} : ArchetypeData.GenericMeleeT1;
	lootDrop = "Loot.AnimalsGenericMeleeBouncerT1";
}

animals_bouncer1_melee1_fists_mb : animals_base_mb
{
	primaryEquipment = 
	{
		equipmentItems = 
		[
			{
				item = "Items.w_melee_004__fists_a";
				equipSlot = "AttachmentSlots.WeaponRight";
				equipCondition = 
				[
					"WeaponConditions.BaseMeleePrimaryWeaponEquipCondition"
				];
				unequipCondition = 
				[
					"WeaponConditions.BaseMeleePrimaryWeaponUnequipCondition"
				];
			} : NPCEquipmentItem
		];
	};
	secondaryEquipment = 
	{
		equipmentItems = 
		[
			{
			} : AnimalsSecondaryHandgunPool
		];
	};
	visualTags += 
	[
		"Bouncer", "Lvl1"
	];
	rarity = "NPCRarity.Weak";
	archetypeData = 
	{
		type = 
		{
			localizedName = "LocKey#22496";
		} : ArchetypeType.GenericMeleeT1;
	} : ArchetypeData.GenericMeleeT1;
	lootDrop = "Loot.AnimalsGenericMeleeBouncerT1";
	dropsWeaponOnDeath = false;
}

animals_grunt2_melee2_machete_mb : animals_base_mb
{
	primaryEquipment = 
	{
		equipmentItems = 
		[
			{
				item = "Items.Preset_Machete_Default";
				equipSlot = "AttachmentSlots.WeaponRight";
				equipCondition = 
				[
					"WeaponConditions.BaseMeleePrimaryWeaponEquipCondition"
				];
				unequipCondition = 
				[
					"WeaponConditions.BaseMeleePrimaryWeaponUnequipCondition"
				];
			} : NPCEquipmentItem
		];
	};
	secondaryEquipment = 
	{
		equipmentItems = 
		[
			{
			} : AnimalsSecondaryHandgunPool
		];
	};
	visualTags += 
	[
		"Grunt", "Lvl2"
	];
	rarity = "NPCRarity.Normal";
	archetypeData = 
	{
		type = 
		{
			localizedName = "LocKey#22498";
		} : ArchetypeType.GenericMeleeT2;
	} : ArchetypeData.GenericMeleeT2;
	lootDrop = "Loot.AnimalsGenericMeleeGruntT2_blade";
}

animals_grunt2_melee2_hammer_mb : animals_base_mb
{
	primaryEquipment = 
	{
		equipmentItems = 
		[
			{
				item = "Items.w_melee_hammer2h";
				equipSlot = "AttachmentSlots.WeaponRight";
				onBodySlot = "AttachmentSlots.ItemSlotKnifeRight";
				equipCondition = 
				[
					"WeaponConditions.BaseMeleePrimaryWeaponEquipCondition"
				];
				unequipCondition = 
				[
					"WeaponConditions.BaseMeleePrimaryWeaponUnequipCondition"
				];
			} : NPCEquipmentItem
		];
	};
	secondaryEquipment = 
	{
		equipmentItems = 
		[
			{
			} : AnimalsSecondaryHandgunPool
		];
	};
	visualTags += 
	[
		"Grunt", "Lvl2"
	];
	rarity = "NPCRarity.Normal";
	archetypeData = 
	{
		type = 
		{
			localizedName = "LocKey#22498";
		} : ArchetypeType.GenericMeleeT2;
	} : ArchetypeData.GenericMeleeT2;
	lootDrop = "Loot.AnimalsGenericMeleeGruntT2_blunt";
}

animals_bouncer2_melee2_fists_mb : animals_base_mb
{
	primaryEquipment = 
	{
		equipmentItems = 
		[
			{
				item = "Items.w_melee_004__fists_a";
				equipSlot = "AttachmentSlots.WeaponRight";
				equipCondition = 
				[
					"WeaponConditions.BaseMeleePrimaryWeaponEquipCondition"
				];
				unequipCondition = 
				[
					"WeaponConditions.BaseMeleePrimaryWeaponUnequipCondition"
				];
			} : NPCEquipmentItem
		];
	};
	secondaryEquipment = 
	{
		equipmentItems = 
		[
			{
			} : AnimalsSecondaryHandgunPool
		];
	};
	visualTags += 
	[
		"Bouncer", "Lvl2"
	];
	rarity = "NPCRarity.Normal";
	archetypeData = 
	{
		type = 
		{
			localizedName = "LocKey#22498";
		} : ArchetypeType.GenericMeleeT2;
	} : ArchetypeData.GenericMeleeT2;
	lootDrop = "Loot.AnimalsGenericMeleeBouncerT2";
	dropsWeaponOnDeath = false;
}

animals_bouncer2_hmelee2_fists_mba_rare : animals_base_mba
{
	primaryEquipment = 
	{
		equipmentItems = 
		[
			{
				item = "Items.NPC_Strong_Arms";
				equipSlot = "AttachmentSlots.WeaponRight";
				equipCondition = 
				[
					"WeaponConditions.BaseMeleePrimaryWeaponEquipCondition"
				];
				unequipCondition = 
				[
					"WeaponConditions.BaseMeleePrimaryWeaponUnequipCondition"
				];
			} : NPCEquipmentItem
		];
	};
	secondaryEquipment = 
	{
		equipmentItems = 
		[
			{
			} : AnimalsSecondaryHandgunPool
		];
	};
	abilities += 
	[
		"Ability.HasSandevistan"
	];
	archetypeData = 
	{
		type = 
		{
			localizedName = "LocKey#22501";
		} : ArchetypeType.HeavyMeleeT2;
	} : ArchetypeData.HeavyMeleeT2;
	lootDrop = "Loot.AnimalsHeavyMeleeBouncerT2_fist";
	rarity = "NPCRarity.Rare";
	visualTags += 
	[
		"Bouncer", "Lvl2"
	];
}

animals_elite2_hmelee2_fists_mba_rare : animals_base_mba
{
	primaryEquipment = 
	{
		equipmentItems = 
		[
			{
				item = "Items.NPC_Strong_Arms";
				equipSlot = "AttachmentSlots.WeaponRight";
				equipCondition = 
				[
					"WeaponConditions.BaseMeleePrimaryWeaponEquipCondition"
				];
				unequipCondition = 
				[
					"WeaponConditions.BaseMeleePrimaryWeaponUnequipCondition"
				];
			} : NPCEquipmentItem
		];
	};
	secondaryEquipment = 
	{
		equipmentItems = 
		[
			{
			} : AnimalsSecondaryHandgunPool
		];
	};
	abilities += 
	[
		"Ability.HasSandevistan"
	];
	rarity = "NPCRarity.Rare";
	archetypeData = 
	{
		type = 
		{
			localizedName = "LocKey#22501";
		} : ArchetypeType.HeavyMeleeT2;
	} : ArchetypeData.HeavyMeleeT2;
	lootDrop = "Loot.AnimalsHeavyMeleeEliteT2_fist";
	visualTags += 
	[
		"Elite", "Lvl2"
	];
	dropsWeaponOnDeath = false;
}

animals_bouncer2_hmelee2_hammer_mba_rare : animals_base_mba
{
	primaryEquipment = 
	{
		equipmentItems = 
		[
			{
				item = "Items.w_melee_hammer2h";
				equipSlot = "AttachmentSlots.WeaponRight";
				onBodySlot = "AttachmentSlots.ItemSlotHammer";
				equipCondition = 
				[
					"WeaponConditions.BaseMeleePrimaryWeaponEquipCondition"
				];
				unequipCondition = 
				[
					"WeaponConditions.BaseMeleePrimaryWeaponUnequipCondition"
				];
			} : NPCEquipmentItem
		];
	};
	secondaryEquipment = 
	{
		equipmentItems = 
		[
			{
			} : AnimalsSecondaryHandgunPool
		];
	};
	abilities += 
	[
		"Ability.HasSandevistan"
	];
	rarity = "NPCRarity.Rare";
	archetypeData = 
	{
		type = 
		{
			localizedName = "LocKey#22501";
		} : ArchetypeType.HeavyMeleeT2;
	} : ArchetypeData.HeavyMeleeT2;
	lootDrop = "Loot.AnimalsHeavyMeleeBouncerT2_blunt";
	visualTags += 
	[
		"Bouncer", "Lvl2"
	];
}

animals_elite2_hmelee2_hammer_mba_rare : animals_base_mba
{
	primaryEquipment = 
	{
		equipmentItems = 
		[
			{
				item = "Items.w_melee_hammer2h";
				equipSlot = "AttachmentSlots.WeaponRight";
				onBodySlot = "AttachmentSlots.ItemSlotHammer";
				equipCondition = 
				[
					"WeaponConditions.BaseMeleePrimaryWeaponEquipCondition"
				];
				unequipCondition = 
				[
					"WeaponConditions.BaseMeleePrimaryWeaponUnequipCondition"
				];
			} : NPCEquipmentItem
		];
	};
	secondaryEquipment = 
	{
		equipmentItems = 
		[
			{
			} : AnimalsSecondaryHandgunPool
		];
	};
	abilities += 
	[
		"Ability.HasSandevistan"
	];
	rarity = "NPCRarity.Rare";
	archetypeData = 
	{
		type = 
		{
			localizedName = "LocKey#22501";
		} : ArchetypeType.HeavyMeleeT2;
	} : ArchetypeData.HeavyMeleeT2;
	lootDrop = "Loot.AnimalsHeavyMeleeEliteT2_blunt";
	visualTags += 
	[
		"Elite", "Lvl2"
	];
}

animals_grunt2_hmelee2_hammer_wba_rare : animals_base_wba
{
	primaryEquipment = 
	{
		equipmentItems = 
		[
			{
				item = "Items.w_melee_hammer2h";
				equipSlot = "AttachmentSlots.WeaponRight";
				onBodySlot = "AttachmentSlots.ItemSlotHammer";
				equipCondition = 
				[
					"WeaponConditions.BaseMeleePrimaryWeaponEquipCondition"
				];
				unequipCondition = 
				[
					"WeaponConditions.BaseMeleePrimaryWeaponUnequipCondition"
				];
			} : NPCEquipmentItem
		];
	};
	abilities += 
	[
		"Ability.HasSandevistan"
	];
	secondaryEquipment = 
	{
		equipmentItems = 
		[
			{
			} : AnimalsSecondaryHandgunPool
		];
	};
	rarity = "NPCRarity.Rare";
	archetypeData = 
	{
		type = 
		{
			localizedName = "LocKey#42603";
		} : ArchetypeType.HeavyMeleeT2;
	} : ArchetypeData.HeavyMeleeT2;
	lootDrop = "Loot.AnimalsHeavyMeleeGruntT2_blunt";
	visualTags += 
	[
		"Grunt", "Lvl2"
	];
}

animals_grunt2_hmelee2_fists_wba_rare : animals_base_wba
{
	primaryEquipment = 
	{
		equipmentItems = 
		[
			{
				item = "Items.NPC_Strong_Arms";
				equipSlot = "AttachmentSlots.WeaponRight";
				equipCondition = 
				[
					"WeaponConditions.BaseMeleePrimaryWeaponEquipCondition"
				];
				unequipCondition = 
				[
					"WeaponConditions.BaseMeleePrimaryWeaponUnequipCondition"
				];
			} : NPCEquipmentItem
		];
	};
	abilities += 
	[
		"Ability.HasSandevistan"
	];
	secondaryEquipment = 
	{
		equipmentItems = 
		[
			{
			} : AnimalsSecondaryHandgunPool
		];
	};
	rarity = "NPCRarity.Rare";
	archetypeData = 
	{
		type = 
		{
			localizedName = "LocKey#42603";
		} : ArchetypeType.HeavyMeleeT2;
	} : ArchetypeData.HeavyMeleeT2;
	lootDrop = "Loot.AnimalsHeavyMeleeGruntT2_fist";
	visualTags += 
	[
		"Lvl2", "Grunt"
	];
	dropsWeaponOnDeath = false;
}

animals_elite3_hmelee3_fists_mba_elite : animals_base_mba
{
	primaryEquipment = 
	{
		equipmentItems = 
		[
			{
				item = "Items.NPC_Strong_Arms";
				equipSlot = "AttachmentSlots.WeaponRight";
				equipCondition = 
				[
					"WeaponConditions.BaseMeleePrimaryWeaponEquipCondition"
				];
				unequipCondition = 
				[
					"WeaponConditions.BaseMeleePrimaryWeaponUnequipCondition"
				];
			} : NPCEquipmentItem
		];
	};
	secondaryEquipment = 
	{
		equipmentItems = 
		[
			{
			} : AnimalsSecondaryHandgunPool
		];
	};
	abilities += 
	[
		"Ability.HasSandevistan"
	];
	rarity = "NPCRarity.Elite";
	archetypeData = 
	{
		type = 
		{
			localizedName = "LocKey#42604";
		} : ArchetypeType.HeavyMeleeT3;
	} : ArchetypeData.HeavyMeleeT3;
	lootDrop = "Loot.AnimalsHeavyMeleeEliteT3";
	visualTags += 
	[
		"Lvl3", "Elite"
	];
	dropsWeaponOnDeath = false;
}

animals_bouncer3_hmelee3_fists_mba_elite : animals_base_mba
{
	primaryEquipment = 
	{
		equipmentItems = 
		[
			{
				item = "Items.NPC_Strong_Arms";
				equipSlot = "AttachmentSlots.WeaponRight";
				equipCondition = 
				[
					"WeaponConditions.BaseMeleePrimaryWeaponEquipCondition"
				];
				unequipCondition = 
				[
					"WeaponConditions.BaseMeleePrimaryWeaponUnequipCondition"
				];
			} : NPCEquipmentItem
		];
	};
	abilities += 
	[
		"Ability.HasSandevistan"
	];
	secondaryEquipment = 
	{
		equipmentItems = 
		[
			{
			} : AnimalsSecondaryHandgunPool
		];
	};
	rarity = "NPCRarity.Elite";
	archetypeData = 
	{
		type = 
		{
			localizedName = "LocKey#42604";
		} : ArchetypeType.HeavyMeleeT3;
	} : ArchetypeData.HeavyMeleeT3;
	lootDrop = "Loot.AnimalsHeavyMeleeBouncerT3";
	visualTags += 
	[
		"Lvl3", "Bouncer"
	];
	dropsWeaponOnDeath = false;
}

animals_grunt2_shotgun2_testera_wba_rare : animals_grunt2_shotgun2_igla_wba_rare
{
}

animals_grunt2_shotgun2_igla_wba_rare : animals_base_wba
{
	primaryEquipment = 
	{
		equipmentItems = 
		[
			{
			} : AnimalsShotgunPool
		];
	};
	secondaryEquipment = 
	{
		equipmentItems = 
		[
			{
			} : AnimalsSecondaryHandgunPool
		];
	};
	visualTags += 
	[
		"Lvl2", "Grunt"
	];
	rarity = "NPCRarity.Rare";
	archetypeData = 
	{
		type = 
		{
			localizedName = "LocKey#22502";
		} : ArchetypeType.ShotgunnerT2;
	} : ArchetypeData.ShotgunnerT2;
	lootDrop = "Loot.AnimalsShotgunGruntT2";
}

animals_elite2_shotgun3_carnage_wba_elite : animals_base_wba
{
	primaryEquipment = 
	{
		equipmentItems = 
		[
			{
			} : AnimalsShotgunPool
		];
	};
	secondaryEquipment = 
	{
		equipmentItems = 
		[
			{
			} : AnimalsSecondaryHandgunPool
		];
	};
	visualTags += 
	[
		"Lvl2", "Elite"
	];
	rarity = "NPCRarity.Elite";
	archetypeData = 
	{
		type = 
		{
			localizedName = "LocKey#22505";
		} : ArchetypeType.ShotgunnerT3;
	} : ArchetypeData.ShotgunnerT3;
	lootDrop = "Loot.AnimalsShotgunEliteT3";
}

animals_elite3_shotgun3_carnage_mba_elite : animals_base_mba
{
	primaryEquipment = 
	{
		equipmentItems = 
		[
			{
			} : AnimalsShotgunPool
		];
	};
	secondaryEquipment = 
	{
		equipmentItems = 
		[
			{
			} : AnimalsSecondaryHandgunPool
		];
	};
	visualTags += 
	[
		"Lvl2", "Elite"
	];
	rarity = "NPCRarity.Elite";
	archetypeData = 
	{
		type = 
		{
			localizedName = "LocKey#42605";
		} : ArchetypeType.ShotgunnerT3;
	} : ArchetypeData.ShotgunnerT3;
	lootDrop = "Loot.AnimalsShotgunEliteT3";
}

animals_elite2_shotgun3_testera_wba_elite : animals_base_wba
{
	primaryEquipment = 
	{
		equipmentItems = 
		[
			{
			} : AnimalsShotgunPool
		];
	};
	secondaryEquipment = 
	{
		equipmentItems = 
		[
			{
			} : AnimalsSecondaryHandgunPool
		];
	};
	visualTags += 
	[
		"Lvl2", "Elite"
	];
	rarity = "NPCRarity.Elite";
	archetypeData = 
	{
		type = 
		{
			localizedName = "LocKey#22505";
		} : ArchetypeType.ShotgunnerT3;
	} : ArchetypeData.ShotgunnerT3;
	lootDrop = "Loot.AnimalsShotgunEliteT3";
}

animals_grunt3_gunner2_defender_mb_rare : animals_base_mb
{
	primaryEquipment = 
	{
		equipmentItems = 
		[
			{
				item = "Items.Preset_Defender_Pimp";
				equipSlot = "AttachmentSlots.WeaponRight";
			} : NPCEquipmentItem
		];
	};
	secondaryEquipment = 
	{
		equipmentItems = 
		[
			{
			} : AnimalsSecondaryHandgunPool
		];
	};
	archetypeData = 
	{
		type = 
		{
			localizedName = "LocKey#22508";
		} : ArchetypeType.HeavyRangedT2;
	} : ArchetypeData.HeavyRangedT2;
	lootDrop = "Loot.AnimalsGunnerGruntT2";
	visualTags += 
	[
		"Lvl3", "Grunt"
	];
	rarity = "NPCRarity.Rare";
	useForcedTBHZOffset = true;
	forcedTBHZOffset = -0.3f;
}

animals_elite3_gunner3_hmg_mba_elite : animals_base_mba
{
	displayName = "HMG";
	bool hide_nametag_displayname = false;
	uiNameplate = "UINameplate.QuestSettings";
	primaryEquipment = 
	{
		equipmentItems = 
		[
			{
				item = "Items.Preset_HMG_Pimp";
				equipSlot = "AttachmentSlots.WeaponRight";
			} : NPCEquipmentItem
		];
	};
	secondaryEquipment = 
	{
		equipmentItems = 
		[
			{
			} : AnimalsSecondaryHandgunPool
		];
	};
	rarity = "NPCRarity.Elite";
	archetypeData = 
	{
		type = 
		{
			localizedName = "LocKey#22510";
		} : ArchetypeType.HeavyRangedT3;
	} : ArchetypeData.HeavyRangedT3;
	lootDrop = "Loot.AnimalsGunnerEliteT3";
	visualTags += 
	[
		"Lvl3", "Elite"
	];
	useForcedTBHZOffset = true;
	forcedTBHZOffset = -0.3f;
}

animals_test_fast_melee : animals_base_mb
{
	baseAttitudeGroup = "hostile";
	fk< GameplayAbility >[] abilities += 
	[
		"Ability.HasDodge", "Ability.HasSandevistan", "Ability.CanParry", "Ability.CanPickUpWeapon"
	];
	primaryEquipment = 
	{
		equipmentItems = 
		[
			{
				item = "Items.w_melee_004__fists_a";
				equipSlot = "AttachmentSlots.WeaponRight";
			} : NPCEquipmentItem
		];
	};
	secondaryEquipment = 
	{
		equipmentItems = 
		[
			{
				item = "Items.Preset_Testera_Pimp";
				equipSlot = "AttachmentSlots.WeaponRight";
				onBodySlot = "AttachmentSlots.ItemSlotHandgunLeft";
			} : NPCEquipmentItem
		];
	};
	fk< StatModifier >[] statModifiers += 
	[
		{
			statType = "BaseStats.Health";
			modifierType = "Multiplier";
			value = 1.5f;
		} : ConstantStatModifier
	];
	dropsWeaponOnDeath = false;
}

[ Debug ]
animals_test_strong_melee2 : animals_base_mba
{
	baseAttitudeGroup = "hostile";
	fk< GameplayAbility >[] abilities += 
	[
		"Ability.HasDodge", "Ability.HasChargeJump", "Ability.CanBlock", "Ability.CanPickUpWeapon"
	];
	primaryEquipment = 
	{
		equipmentItems = 
		[
			{
				item = "Items.w_melee_004__fists_a";
				equipSlot = "AttachmentSlots.WeaponRight";
			} : NPCEquipmentItem
		];
	};
	secondaryEquipment = 
	{
		equipmentItems = 
		[
			{
				item = "Items.Preset_Testera_Pimp";
				equipSlot = "AttachmentSlots.WeaponRight";
				onBodySlot = "AttachmentSlots.ItemSlotHandgunLeft";
			} : NPCEquipmentItem
		];
	};
	fk< StatModifier >[] statModifiers += 
	[
		{
			statType = "BaseStats.Health";
			modifierType = "Multiplier";
			value = 2.5f;
		} : ConstantStatModifier
	];
}

[ Debug ]
animals_test_deflect_melee : animals_base_mba
{
	baseAttitudeGroup = "hostile";
	fk< GameplayAbility >[] abilities += 
	[
		"Ability.CanParry"
	];
	primaryEquipment = 
	{
		equipmentItems = 
		[
			{
				item = "Items.w_melee_004__fists_a";
				equipSlot = "AttachmentSlots.WeaponRight";
			} : NPCEquipmentItem
		];
	};
	secondaryEquipment = 
	{
		equipmentItems = 
		[
			{
				item = "Items.Preset_Testera_Pimp";
				equipSlot = "AttachmentSlots.WeaponRight";
				onBodySlot = "AttachmentSlots.ItemSlotHandgunLeft";
			} : NPCEquipmentItem
		];
	};
	fk< StatModifier >[] statModifiers += 
	[
		{
			statType = "BaseStats.Health";
			modifierType = "Multiplier";
			value = 2.5f;
		} : ConstantStatModifier
	];
}

AnimalsSMGPool : NPCEquipmentItemPool
{
	pool = 
	[
		{
			items = 
			[
				{
					item = "Items.Preset_Guillotine_Pimp";
					equipSlot = "AttachmentSlots.WeaponRight";
					onBodySlot = "AttachmentSlots.ItemSlotHandgunRight";
					equipCondition = 
					[
						"WeaponConditions.BaseRangedPrimaryWeaponEquipCondition"
					];
					unequipCondition = 
					[
						"WeaponConditions.BaseRangedPrimaryWeaponUnequipCondition"
					];
				} : NPCEquipmentItem
			];
		} : NPCEquipmentItemsPoolEntry, 
		{
			items = 
			[
				{
					item = "Items.Preset_Saratoga_Pimp";
					equipSlot = "AttachmentSlots.WeaponRight";
					onBodySlot = "AttachmentSlots.ItemSlotHandgunRight";
					equipCondition = 
					[
						"WeaponConditions.BaseRangedPrimaryWeaponEquipCondition"
					];
					unequipCondition = 
					[
						"WeaponConditions.BaseRangedPrimaryWeaponUnequipCondition"
					];
				} : NPCEquipmentItem
			];
			weight = 1.5f;
			minLevel = 17;
		} : NPCEquipmentItemsPoolEntry, 
		{
			items = 
			[
				{
					item = "Items.Preset_Dian_Pimp";
					equipSlot = "AttachmentSlots.WeaponRight";
					onBodySlot = "AttachmentSlots.ItemSlotHandgunRight";
					equipCondition = 
					[
						"WeaponConditions.BaseRangedPrimaryWeaponEquipCondition"
					];
					unequipCondition = 
					[
						"WeaponConditions.BaseRangedPrimaryWeaponUnequipCondition"
					];
				} : NPCEquipmentItem
			];
			weight = 1.5f;
			minLevel = 33;
		} : NPCEquipmentItemsPoolEntry
	];
}

AnimalsPrimaryHandgunPool : NPCEquipmentItemPool
{
	pool = 
	[
		{
			items = 
			[
				{
					item = "Items.Preset_Kappa_Pimp";
					equipSlot = "AttachmentSlots.WeaponRight";
					onBodySlot = "AttachmentSlots.ItemSlotHandgunRight";
					equipCondition = 
					[
						"WeaponConditions.BaseRangedPrimaryWeaponEquipCondition"
					];
					unequipCondition = 
					[
						"WeaponConditions.BaseRangedPrimaryWeaponUnequipCondition"
					];
				} : NPCEquipmentItem
			];
			weight = 10.0f;
			minLevel = 33;
		} : NPCEquipmentItemsPoolEntry, 
		{
			items = 
			[
				{
					item = "Items.Preset_Burya_Pimp";
					equipSlot = "AttachmentSlots.WeaponRight";
					onBodySlot = "AttachmentSlots.ItemSlotHandgunRight";
					equipCondition = 
					[
						"WeaponConditions.BaseRangedPrimaryWeaponEquipCondition"
					];
					unequipCondition = 
					[
						"WeaponConditions.BaseRangedPrimaryWeaponUnequipCondition"
					];
				} : NPCEquipmentItem
			];
			weight = 10.0f;
			minLevel = 33;
		} : NPCEquipmentItemsPoolEntry, 
		{
			items = 
			[
				{
					item = "Items.Preset_Overture_Pimp";
					equipSlot = "AttachmentSlots.WeaponRight";
					onBodySlot = "AttachmentSlots.ItemSlotHandgunRight";
					equipCondition = 
					[
						"WeaponConditions.BaseRangedPrimaryWeaponEquipCondition"
					];
					unequipCondition = 
					[
						"WeaponConditions.BaseRangedPrimaryWeaponUnequipCondition"
					];
				} : NPCEquipmentItem
			];
			weight = 10.0f;
			minLevel = 33;
		} : NPCEquipmentItemsPoolEntry, 
		{
			items = 
			[
				{
					item = "Items.Preset_Quasar_Pimp";
					equipSlot = "AttachmentSlots.WeaponRight";
					onBodySlot = "AttachmentSlots.ItemSlotHandgunRight";
					equipCondition = 
					[
						"WeaponConditions.BaseRangedPrimaryWeaponEquipCondition"
					];
					unequipCondition = 
					[
						"WeaponConditions.BaseRangedPrimaryWeaponUnequipCondition"
					];
				} : NPCEquipmentItem
			];
			weight = 5.0f;
			minLevel = 17;
		} : NPCEquipmentItemsPoolEntry, 
		{
			items = 
			[
				{
					item = "Items.Preset_Omaha_Pimp";
					equipSlot = "AttachmentSlots.WeaponRight";
					onBodySlot = "AttachmentSlots.ItemSlotHandgunRight";
					equipCondition = 
					[
						"WeaponConditions.BaseRangedPrimaryWeaponEquipCondition"
					];
					unequipCondition = 
					[
						"WeaponConditions.BaseRangedPrimaryWeaponUnequipCondition"
					];
				} : NPCEquipmentItem
			];
			weight = 10.0f;
			minLevel = 17;
		} : NPCEquipmentItemsPoolEntry, 
		{
			items = 
			[
				{
					item = "Items.Preset_Lexington_Pimp";
					equipSlot = "AttachmentSlots.WeaponRight";
					onBodySlot = "AttachmentSlots.ItemSlotHandgunRight";
					equipCondition = 
					[
						"WeaponConditions.BaseRangedPrimaryWeaponEquipCondition"
					];
					unequipCondition = 
					[
						"WeaponConditions.BaseRangedPrimaryWeaponUnequipCondition"
					];
				} : NPCEquipmentItem
			];
			weight = 10.0f;
			minLevel = 17;
		} : NPCEquipmentItemsPoolEntry, 
		{
			items = 
			[
				{
					item = "Items.Preset_Nova_Pimp";
					equipSlot = "AttachmentSlots.WeaponRight";
					onBodySlot = "AttachmentSlots.ItemSlotHandgunRight";
					equipCondition = 
					[
						"WeaponConditions.BaseRangedPrimaryWeaponEquipCondition"
					];
					unequipCondition = 
					[
						"WeaponConditions.BaseRangedPrimaryWeaponUnequipCondition"
					];
				} : NPCEquipmentItem
			];
		} : NPCEquipmentItemsPoolEntry, 
		{
			items = 
			[
				{
					item = "Items.Preset_Liberty_Pimp";
					equipSlot = "AttachmentSlots.WeaponRight";
					onBodySlot = "AttachmentSlots.ItemSlotHandgunRight";
					equipCondition = 
					[
						"WeaponConditions.BaseRangedPrimaryWeaponEquipCondition"
					];
					unequipCondition = 
					[
						"WeaponConditions.BaseRangedPrimaryWeaponUnequipCondition"
					];
				} : NPCEquipmentItem
			];
		} : NPCEquipmentItemsPoolEntry
	];
}

AnimalsShotgunPool : NPCEquipmentItemPool
{
	pool = 
	[
		{
			items = 
			[
				{
					item = "Items.Preset_Carnage_Pimp";
					equipSlot = "AttachmentSlots.WeaponRight";
					onBodySlot = "AttachmentSlots.ItemSlotGenericRanged";
					equipCondition = 
					[
						"WeaponConditions.BaseRangedPrimaryWeaponEquipCondition"
					];
					unequipCondition = 
					[
						"WeaponConditions.BaseRangedPrimaryWeaponUnequipCondition"
					];
				} : NPCEquipmentItem
			];
		} : NPCEquipmentItemsPoolEntry, 
		{
			items = 
			[
				{
					item = "Items.Preset_Testera_Pimp";
					equipSlot = "AttachmentSlots.WeaponRight";
					onBodySlot = "AttachmentSlots.ItemSlotGenericRanged";
					equipCondition = 
					[
						"WeaponConditions.BaseRangedPrimaryWeaponEquipCondition"
					];
					unequipCondition = 
					[
						"WeaponConditions.BaseRangedPrimaryWeaponUnequipCondition"
					];
				} : NPCEquipmentItem
			];
		} : NPCEquipmentItemsPoolEntry, 
		{
			items = 
			[
				{
					item = "Items.Preset_Satara_Pimp";
					equipSlot = "AttachmentSlots.WeaponRight";
					onBodySlot = "AttachmentSlots.ItemSlotGenericRanged";
					equipCondition = 
					[
						"WeaponConditions.BaseRangedPrimaryWeaponEquipCondition"
					];
					unequipCondition = 
					[
						"WeaponConditions.BaseRangedPrimaryWeaponUnequipCondition"
					];
				} : NPCEquipmentItem
			];
			weight = 5.0f;
			minLevel = 17;
		} : NPCEquipmentItemsPoolEntry, 
		{
			items = 
			[
				{
					item = "Items.Preset_Palica_Pimp";
					equipSlot = "AttachmentSlots.WeaponRight";
					onBodySlot = "AttachmentSlots.ItemSlotGenericRanged";
					equipCondition = 
					[
						"WeaponConditions.BaseRangedPrimaryWeaponEquipCondition"
					];
					unequipCondition = 
					[
						"WeaponConditions.BaseRangedPrimaryWeaponUnequipCondition"
					];
				} : NPCEquipmentItem
			];
			weight = 5.0f;
			minLevel = 17;
		} : NPCEquipmentItemsPoolEntry, 
		{
			items = 
			[
				{
					item = "Items.Preset_Pozhar_Pimp";
					equipSlot = "AttachmentSlots.WeaponRight";
					onBodySlot = "AttachmentSlots.ItemSlotGenericRanged";
					equipCondition = 
					[
						"WeaponConditions.BaseRangedPrimaryWeaponEquipCondition"
					];
					unequipCondition = 
					[
						"WeaponConditions.BaseRangedPrimaryWeaponUnequipCondition"
					];
				} : NPCEquipmentItem
			];
			weight = 5.0f;
			minLevel = 33;
		} : NPCEquipmentItemsPoolEntry, 
		{
			items = 
			[
				{
					item = "Items.Preset_Zhuo_Pimp";
					equipSlot = "AttachmentSlots.WeaponRight";
					onBodySlot = "AttachmentSlots.ItemSlotGenericRanged";
					equipCondition = 
					[
						"WeaponConditions.BaseRangedPrimaryWeaponEquipCondition"
					];
					unequipCondition = 
					[
						"WeaponConditions.BaseRangedPrimaryWeaponUnequipCondition"
					];
				} : NPCEquipmentItem
			];
			weight = 5.0f;
			minLevel = 33;
		} : NPCEquipmentItemsPoolEntry
	];
}

AnimalsSecondaryHandgunPool : NPCEquipmentItemPool
{
	pool = 
	[
		{
			items = 
			[
				{
					item = "Items.Preset_Nova_Pimp";
					equipSlot = "AttachmentSlots.WeaponRight";
				} : NPCEquipmentItem
			];
		} : NPCEquipmentItemsPoolEntry, 
		{
			items = 
			[
				{
					item = "Items.Preset_Quasar_Pimp";
					equipSlot = "AttachmentSlots.WeaponRight";
				} : NPCEquipmentItem
			];
			weight = 6;
			minLevel = 17;
		} : NPCEquipmentItemsPoolEntry, 
		{
			items = 
			[
				{
					item = "Items.Preset_Burya_Pimp";
					equipSlot = "AttachmentSlots.WeaponRight";
				} : NPCEquipmentItem
			];
			weight = 12;
			minLevel = 33;
		} : NPCEquipmentItemsPoolEntry
	];
}

