1329 lines
76 KiB
C#
1329 lines
76 KiB
C#
using System.Collections.Generic;
|
|
using Model.Entity.Parts;
|
|
using Model.Entity.Types;
|
|
using Model.Types;
|
|
|
|
namespace Model.Entity.Data;
|
|
|
|
public partial class EntityData
|
|
{
|
|
public static Dictionary<string, EntityModel> GetArmyData()
|
|
{
|
|
return new Dictionary<string, EntityModel>
|
|
{
|
|
// Vanguard
|
|
// Q'Rath
|
|
{
|
|
DataType.VANGUARD_Zentari_Orzum,
|
|
new EntityModel(DataType.VANGUARD_Zentari_Orzum, EntityType.Army)
|
|
.AddPart(new EntityInfoModel
|
|
{
|
|
Name =
|
|
"Zentari",
|
|
Descriptive = DescriptiveType.Frontliner,
|
|
Description =
|
|
"""
|
|
Ground unit. Attacks ground targets. Ranged attack in Hallowed Ground.
|
|
""",
|
|
FlavorText =
|
|
"""
|
|
"Through our faith and duty bid us part, know that I will be here to protect you for the
|
|
rest of yours days."<br/>
|
|
—Zentari Lord Orz'Abin
|
|
"""
|
|
})
|
|
.AddPart(new EntityTierModel { Tier = 1 })
|
|
.AddPart(new EntityHotkeyModel { Hotkey = "Q", HotkeyGroup = "Z" })
|
|
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_QRath })
|
|
.AddPart(new EntityVanguardAddedModel
|
|
{ ReplaceId = DataType.UNIT_Sipari, ImmortalId = DataType.IMMORTAL_Orzum })
|
|
.AddPart(new EntityProductionModel
|
|
{ Alloy = 100, BuildTime = 20, ProducedBy = DataType.BUILDING_LegionHall })
|
|
.AddPart(new EntitySupplyModel { Takes = 4 })
|
|
.AddPart(new EntityVitalityModel { Health = 180, DefenseLayer = 100, Armor = ArmorType.Light })
|
|
.AddPart(new EntityWeaponModel
|
|
{ Damage = 26, Range = 100, AttacksPerSecond = 0.699f, Targets = TargetType.Ground })
|
|
.AddPart(new EntityWeaponModel
|
|
{ Damage = 26, Range = 300, AttacksPerSecond = 0.699f, Targets = TargetType.Ground })
|
|
.AddPart(new EntityRequirementModel
|
|
{
|
|
Id = DataType.BUILDING_LegionHall,
|
|
Requirement = RequirementType.Production_Building
|
|
})
|
|
.AddPart(new EntityMovementModel { Speed = 380, Movement = MovementType.Ground })
|
|
.AddPart(new EntityIdUpgradeModel { Id = DataType.UPGRADE_FaithCastBlades })
|
|
.AddPart(new EntityIdUpgradeModel { Id = DataType.UPGRADE_IconOfKhastEem })
|
|
.AddPart(new EntityIdPassiveModel { Id = DataType.PASSIVE_IconOfKhastEem })
|
|
.AddPart(new EntityIdPassiveModel { Id = DataType.PASSIVE_FaithCastBlades })
|
|
},
|
|
{
|
|
DataType.VANGUARD_Sceptre_Orzum,
|
|
new EntityModel(DataType.VANGUARD_Sceptre_Orzum, EntityType.Army)
|
|
.AddPart(new EntityInfoModel
|
|
{
|
|
Name = "Sceptre",
|
|
Descriptive = DescriptiveType.Skirmisher,
|
|
Description =
|
|
"""
|
|
Air unit. Attacks ground targets. Anti-ground specialist.<br/>
|
|
Empowered attack does bonus damage and Burns adjacent enemies, dealing damage over time.
|
|
"""
|
|
})
|
|
.AddPart(new EntityTierModel { Tier = 3 })
|
|
.AddPart(new EntityHotkeyModel { Hotkey = "R", HoldSpace = true, HotkeyGroup = "Z" })
|
|
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_QRath })
|
|
.AddPart(new EntityProductionModel
|
|
{ Alloy = 200, Ether = 175, BuildTime = 32, ProducedBy = DataType.BUILDING_Angelarium })
|
|
.AddPart(new EntityVitalityModel { Health = 435, DefenseLayer = 150, Armor = ArmorType.Heavy })
|
|
.AddPart(new EntitySupplyModel { Takes = 6 })
|
|
.AddPart(new EntityWeaponModel
|
|
{
|
|
Damage = 35, MediumDamage = 40, HeavyDamage = 45, Range = 450, SecondsBetweenAttacks = 2.1f,
|
|
Targets = TargetType.Ground
|
|
})
|
|
.AddPart(new EntityWeaponModel
|
|
{
|
|
Damage = 125, Range = 450, SecondsBetweenAttacks = 2f,
|
|
Targets = TargetType.Ground, HasSplash = true
|
|
})
|
|
.AddPart(new EntityRequirementModel
|
|
{
|
|
Id = DataType.BUILDING_Angelarium,
|
|
Requirement = RequirementType.Production_Building
|
|
})
|
|
.AddPart(new EntityVanguardAddedModel
|
|
{ ReplaceId = DataType.UNIT_Warden, ImmortalId = DataType.IMMORTAL_Orzum })
|
|
.AddPart(new EntityMovementModel { Speed = 340, Movement = MovementType.Air })
|
|
.AddPart(new EntityIdPassiveModel { Id = DataType.PASSIVE_RegentsWrath })
|
|
},
|
|
{
|
|
DataType.VANGUARD_Saoshin_Ajari,
|
|
new EntityModel(DataType.VANGUARD_Saoshin_Ajari, EntityType.Army)
|
|
.AddPart(new EntityInfoModel
|
|
{
|
|
Name = "Saoshin",
|
|
Descriptive = DescriptiveType.Support,
|
|
Description =
|
|
"""
|
|
Ground Spell Caster. Casts a healing/utility spell. Protector.
|
|
""",
|
|
FlavorText =
|
|
"""
|
|
"You will hold fast the lost, dragging them to salvation. For only
|
|
your hearts can hold the boundless love of Q'rath"<br/>
|
|
—Ajari, Arash of Deliverance
|
|
"""
|
|
})
|
|
.AddPart(new EntityTierModel { Tier = 1.5f })
|
|
.AddPart(new EntityHotkeyModel { Hotkey = "E", HotkeyGroup = "Z" })
|
|
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_QRath })
|
|
.AddPart(new EntityVanguardAddedModel
|
|
{ ReplaceId = DataType.UNIT_Magi, ImmortalId = DataType.IMMORTAL_Ajari })
|
|
.AddPart(new EntityProductionModel
|
|
{ Alloy = 75, Ether = 75, BuildTime = 28, ProducedBy = DataType.BUILDING_LegionHall })
|
|
.AddPart(new EntitySupplyModel { Takes = 4 })
|
|
.AddPart(new EntityVitalityModel
|
|
{ Health = 210, DefenseLayer = 105, Armor = ArmorType.Light, IsEtheric = true })
|
|
.AddPart(new EntityMovementModel { Speed = 460, Movement = MovementType.Ground })
|
|
.AddPart(new EntityRequirementModel
|
|
{
|
|
Id = DataType.BUILDING_LegionHall,
|
|
Requirement = RequirementType.Production_Building
|
|
})
|
|
.AddPart(new EntityRequirementModel
|
|
{
|
|
Id = DataType.BUILDING_Reliquary,
|
|
Requirement = RequirementType.Production_Building
|
|
})
|
|
.AddPart(new EntityWeaponModel
|
|
{ Damage = 18, Range = 400, SecondsBetweenAttacks = 1.4f, Targets = TargetType.Ground })
|
|
.AddPart(new EntityIdAbilityModel { Id = DataType.ABILITY_Intervention })
|
|
.AddPart(new EntityIdPassiveModel { Id = DataType.PASSIVE_Invervention })
|
|
},
|
|
{
|
|
DataType.VANGUARD_ArkMother_Ajari,
|
|
new EntityModel(DataType.VANGUARD_ArkMother_Ajari, EntityType.Army)
|
|
.AddPart(new EntityInfoModel
|
|
{
|
|
Name = "Ark Mother",
|
|
Descriptive = DescriptiveType.Support,
|
|
Description =
|
|
"""
|
|
Ground Spellcaster. Casts a utility spell. Protector.<br/>
|
|
Creates <b>Hallowed Ground</b> when still for a few seconds.
|
|
"""
|
|
})
|
|
.AddPart(new EntityTierModel { Tier = 2.5f })
|
|
.AddPart(new EntityHotkeyModel { Hotkey = "Q", HoldSpace = true, HotkeyGroup = "Z" })
|
|
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_QRath })
|
|
.AddPart(new EntityVanguardAddedModel
|
|
{ ReplaceId = DataType.UNIT_Hallower, ImmortalId = DataType.IMMORTAL_Ajari })
|
|
.AddPart(new EntityProductionModel
|
|
{ Alloy = 125, Ether = 100, BuildTime = 32, ProducedBy = DataType.BUILDING_SoulFoundry })
|
|
.AddPart(new EntitySupplyModel { Takes = 5 })
|
|
.AddPart(new EntityVitalityModel
|
|
{ Energy = 100, Health = 150, DefenseLayer = 150, Armor = ArmorType.Medium, IsEtheric = true })
|
|
.AddPart(new EntityRequirementModel
|
|
{
|
|
Id = DataType.BUILDING_SoulFoundry,
|
|
Requirement = RequirementType.Production_Building
|
|
})
|
|
.AddPart(new EntityRequirementModel
|
|
{
|
|
Id = DataType.BUILDING_HouseOfFadingSaints,
|
|
Requirement = RequirementType.Research_Building
|
|
})
|
|
.AddPart(new EntityMovementModel { Speed = 390, Movement = MovementType.Hover })
|
|
.AddPart(new EntityWeaponModel
|
|
{ Damage = 25, Range = 1100, SecondsBetweenAttacks = 2.5f, Targets = TargetType.Ground })
|
|
.AddPart(new EntityIdAbilityModel { Id = DataType.ABILITY_OrdainedPassage })
|
|
.AddPart(new EntityIdPassiveModel { Id = DataType.PASSIVE_HallowingRites })
|
|
},
|
|
// Vanguards
|
|
// Aru
|
|
{
|
|
DataType.VANGUARD_Incubator_Mala,
|
|
new EntityModel(DataType.VANGUARD_Incubator_Mala, EntityType.Army)
|
|
.AddPart(new EntityInfoModel
|
|
{
|
|
Name = "Incubator",
|
|
Descriptive = DescriptiveType.Support,
|
|
Description =
|
|
"""
|
|
Ground unit. Can only attack ground. Mala Vanguard. Replaces Underspine.
|
|
""",
|
|
FlavorText =
|
|
"""
|
|
"We cannot understand their pain when they lose their motherhood, nor can we judge their measures to regain it."<br/>
|
|
—Atzlan, to Om'loch
|
|
"""
|
|
})
|
|
.AddPart(new EntityTierModel { Tier = 2 })
|
|
.AddPart(new EntityRequirementModel
|
|
{
|
|
Id = DataType.BUILDING_AmberWomb,
|
|
Requirement = RequirementType.Production_Building
|
|
})
|
|
.AddPart(new EntityHotkeyModel { Hotkey = "Q", HoldSpace = true, HotkeyGroup = "Z" })
|
|
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_Aru })
|
|
.AddPart(new EntityVanguardAddedModel
|
|
{ ReplaceId = DataType.UNIT_Underspine, ImmortalId = DataType.IMMORTAL_Mala })
|
|
.AddPart(new EntityProductionModel
|
|
{ Alloy = 75, Ether = 100, BuildTime = 28, ProducedBy = DataType.BUILDING_AmberWomb })
|
|
.AddPart(new EntitySupplyModel { Takes = 5 })
|
|
.AddPart(new EntityVitalityModel
|
|
{ Energy = 150, Health = 180, DefenseLayer = 40, Armor = ArmorType.Medium, IsEtheric = false })
|
|
.AddPart(new EntityMovementModel { Speed = 340, Movement = MovementType.Ground })
|
|
.AddPart(new EntityWeaponModel
|
|
{ Damage = 16, Range = 700, SecondsBetweenAttacks = 1.65f, Targets = TargetType.Ground })
|
|
.AddPart(new EntityIdPassiveModel { Id = DataType.PASSIVE_ProjectileGestation })
|
|
.AddPart(new EntityIdPassiveModel { Id = DataType.PASSIVE_FallenHarvest })
|
|
.AddPart(new EntityIdAbilityModel { Id = DataType.ABILITY_Hematoma })
|
|
},
|
|
{
|
|
DataType.VANGUARD_DreadSister_Mala,
|
|
new EntityModel(DataType.VANGUARD_DreadSister_Mala, EntityType.Army)
|
|
.AddPart(new EntityInfoModel { Name = "Dread Sister", Descriptive = DescriptiveType.EliteCaster })
|
|
.AddPart(new EntityTierModel { Tier = 3 })
|
|
.AddPart(new EntityRequirementModel
|
|
{
|
|
Id = DataType.BUILDING_AltarOfTheWorthy,
|
|
Requirement = RequirementType.Production_Building
|
|
})
|
|
.AddPart(new EntityRequirementModel
|
|
{
|
|
Id = DataType.BUILDING_RedVale,
|
|
Requirement = RequirementType.Research_Building
|
|
})
|
|
.AddPart(new EntityHotkeyModel { Hotkey = "F", HoldSpace = true, HotkeyGroup = "Z" })
|
|
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_Aru })
|
|
.AddPart(new EntityVanguardAddedModel
|
|
{ ReplaceId = DataType.UNIT_RedSeer, ImmortalId = DataType.IMMORTAL_Mala })
|
|
.AddPart(new EntityProductionModel
|
|
{ Alloy = 60, Ether = 150, BuildTime = 36, ProducedBy = DataType.BUILDING_AltarOfTheWorthy })
|
|
.AddPart(new EntitySupplyModel { Takes = 4 })
|
|
.AddPart(new EntityVitalityModel
|
|
{
|
|
Energy = 100, Health = 90, DefenseLayer = 110, Armor = ArmorType.Light,
|
|
Defense = DefenseType.Overgrowth, IsEtheric = false
|
|
})
|
|
.AddPart(new EntityMovementModel { Speed = 360, Movement = MovementType.Ground })
|
|
.AddPart(new EntityWeaponModel
|
|
{ Damage = 14, Range = 750, SecondsBetweenAttacks = 1.4f, Targets = TargetType.Ground })
|
|
.AddPart(new EntityWeaponModel
|
|
{
|
|
Damage = 120,
|
|
MediumDamage = 160,
|
|
HeavyDamage = 200,
|
|
Range = 1400,
|
|
SecondsBetweenAttacks = 4.0f,
|
|
Targets = TargetType.Ground
|
|
})
|
|
.AddPart(new EntityIdAbilityModel { Id = DataType.ABILITY_RootVice })
|
|
.AddPart(new EntityIdAbilityModel { Id = DataType.ABILITY_BirthingStorm })
|
|
.AddPart(new EntityIdAbilityModel { Id = DataType.ABILITY_DeployDreadSister })
|
|
.AddPart(new EntityIdUpgradeModel { Id = DataType.UPGRADE_BirthingStorm })
|
|
.AddPart(new EntityIdPassiveModel { Id = DataType.PASSIVE_CastingFromBlood })
|
|
},
|
|
|
|
{
|
|
DataType.VANGUARD_RootShepard_Atzlan,
|
|
new EntityModel(DataType.VANGUARD_RootShepard_Atzlan, EntityType.Army)
|
|
.AddPart(new EntityInfoModel
|
|
{
|
|
Name = "Root Shepard",
|
|
Descriptive = DescriptiveType.Skirmisher,
|
|
Description = "Can generate rootway."
|
|
})
|
|
.AddPart(new EntityTierModel { Tier = 2 })
|
|
.AddPart(new EntityRequirementModel
|
|
{
|
|
Id = DataType.BUILDING_AltarOfTheWorthy,
|
|
Requirement = RequirementType.Production_Building
|
|
})
|
|
.AddPart(new EntityHotkeyModel { Hotkey = "W", HotkeyGroup = "Z" })
|
|
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_Aru })
|
|
.AddPart(new EntityVanguardAddedModel
|
|
{ ReplaceId = DataType.UNIT_Ichor, ImmortalId = DataType.IMMORTAL_Atzlan })
|
|
.AddPart(new EntityProductionModel
|
|
{ Alloy = 80, Ether = 0, BuildTime = 24, ProducedBy = DataType.BUILDING_AltarOfTheWorthy })
|
|
.AddPart(new EntitySupplyModel { Takes = 3 })
|
|
.AddPart(new EntityVitalityModel
|
|
{ Health = 125, DefenseLayer = 100, Armor = ArmorType.Medium, IsEtheric = false })
|
|
.AddPart(new EntityMovementModel { Speed = 540, Movement = MovementType.Ground })
|
|
.AddPart(new EntityWeaponModel
|
|
{
|
|
Damage = 15, MediumDamage = 12, HeavyDamage = 9, Range = 400, AttacksPerSecond = 2.4f,
|
|
Targets = TargetType.Ground
|
|
})
|
|
//.AddPart(new EntityIdPassiveModel { Id = DataType.PASSIVE_Stalk })
|
|
},
|
|
|
|
|
|
{
|
|
DataType.VANGUARD_Resinant_Atzlan,
|
|
new EntityModel(DataType.VANGUARD_Resinant_Atzlan, EntityType.Army)
|
|
.AddPart(new EntityInfoModel
|
|
{
|
|
Name = "Resinant",
|
|
Descriptive = DescriptiveType.ZoneControl,
|
|
Description = "Ground unit. Can only attack ground."
|
|
})
|
|
.AddPart(new EntityTierModel { Tier = 2.5f })
|
|
.AddPart(new EntityRequirementModel
|
|
{
|
|
Id = DataType.BUILDING_AmberWomb,
|
|
Requirement = RequirementType.Production_Building
|
|
})
|
|
.AddPart(new EntityRequirementModel
|
|
{
|
|
Id = DataType.BUILDING_Neurocyte,
|
|
Requirement = RequirementType.Research_Building
|
|
})
|
|
.AddPart(new EntityHotkeyModel { Hotkey = "F", HotkeyGroup = "Z" })
|
|
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_Aru })
|
|
.AddPart(new EntityVanguardAddedModel
|
|
{ ReplaceId = DataType.UNIT_BloodAnchor, ImmortalId = DataType.IMMORTAL_Atzlan })
|
|
.AddPart(new EntityProductionModel
|
|
{ Alloy = 150, Ether = 125, BuildTime = 32, ProducedBy = DataType.BUILDING_AmberWomb })
|
|
.AddPart(new EntitySupplyModel { Takes = 6 })
|
|
.AddPart(new EntityVitalityModel { Health = 260, DefenseLayer = 90, Armor = ArmorType.Heavy })
|
|
.AddPart(new EntityMovementModel { Speed = 360, Movement = MovementType.Ground })
|
|
.AddPart(new EntityWeaponModel
|
|
{
|
|
Damage = 25, MediumDamage = 35, HeavyDamage = 45, Range = 800, SecondsBetweenAttacks = 1.429f,
|
|
Targets = TargetType.Ground
|
|
})
|
|
.AddPart(new EntityWeaponModel
|
|
{
|
|
Damage = 85, MediumDamage = 100, HeavyDamage = 115, Range = 1000, SecondsBetweenAttacks = 2.5f,
|
|
MinimumRange = 500,
|
|
Targets = TargetType.Ground
|
|
})
|
|
.AddPart(new EntityIdUpgradeModel { Id = DataType.UPGRADE_ResinantSpeed })
|
|
.AddPart(new EntityIdAbilityModel { Id = DataType.ABILITY_MobilizeAru })
|
|
.AddPart(new EntityIdPassiveModel { Id = DataType.PASSIVE_EngorgedArteries })
|
|
},
|
|
|
|
{
|
|
DataType.VANGUARD_BoneStalker_Xol,
|
|
new EntityModel(DataType.VANGUARD_BoneStalker_Xol, EntityType.Army)
|
|
.AddPart(new EntityInfoModel
|
|
{
|
|
Name = "Bone Stalker",
|
|
Descriptive = DescriptiveType.Generalist,
|
|
Description = "Ground unit. Attacks ground/air targets. Stealthy.",
|
|
FlavorText =
|
|
"""
|
|
"They will come in deathy silence, awaiting the Great Hunt. In time, the 'Bone-Takers' shall
|
|
be without equal."<br/>
|
|
—Xol, Prophecies of the Icta'nuat
|
|
"""
|
|
})
|
|
.AddPart(new EntityTierModel { Tier = 1 })
|
|
.AddPart(new EntityRequirementModel
|
|
{
|
|
Id = DataType.BUILDING_AltarOfTheWorthy,
|
|
Requirement = RequirementType.Production_Building
|
|
})
|
|
.AddPart(new EntityHotkeyModel { Hotkey = "W", HotkeyGroup = "Z" })
|
|
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_Aru })
|
|
.AddPart(new EntityVanguardAddedModel
|
|
{ ReplaceId = DataType.UNIT_MaskedHunter, ImmortalId = DataType.IMMORTAL_Xol })
|
|
.AddPart(new EntityProductionModel
|
|
{ Alloy = 50, Ether = 0, BuildTime = 16, ProducedBy = DataType.BUILDING_AltarOfTheWorthy })
|
|
.AddPart(new EntitySupplyModel { Takes = 2 })
|
|
.AddPart(new EntityVitalityModel
|
|
{ Health = 85, DefenseLayer = 10, Armor = ArmorType.Light, IsEtheric = false })
|
|
.AddPart(new EntityMovementModel { Speed = 380, Movement = MovementType.Ground })
|
|
.AddPart(new EntityWeaponModel
|
|
{ Damage = 11, Range = 400, AttacksPerSecond = 1.02f, Targets = TargetType.All })
|
|
.AddPart(new EntityIdPassiveModel { Id = DataType.PASSIVE_Stalk })
|
|
.AddPart(new EntityIdPassiveModel { Id = DataType.PASSIVE_Ambush })
|
|
},
|
|
{
|
|
DataType.VANGUARD_WhiteWoodReaper_Xol,
|
|
new EntityModel(DataType.VANGUARD_WhiteWoodReaper_Xol, EntityType.Army)
|
|
.AddPart(new EntityInfoModel
|
|
{
|
|
Name = "White Wood Reaper",
|
|
Descriptive = DescriptiveType.Skirmisher,
|
|
Description = "Ground unit. Attacks ground targets. Permanently Hidden."
|
|
})
|
|
.AddPart(new EntityTierModel { Tier = 3 })
|
|
.AddPart(new EntityRequirementModel
|
|
{
|
|
Id = DataType.BUILDING_AltarOfTheWorthy,
|
|
Requirement = RequirementType.Production_Building
|
|
})
|
|
.AddPart(new EntityRequirementModel
|
|
{
|
|
Id = DataType.BUILDING_RedVale,
|
|
Requirement = RequirementType.Research_Building
|
|
})
|
|
.AddPart(new EntityHotkeyModel { Hotkey = "E", HotkeyGroup = "Z" })
|
|
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_Aru })
|
|
.AddPart(new EntityVanguardAddedModel
|
|
{ ReplaceId = DataType.UNIT_Bloodbound, ImmortalId = DataType.IMMORTAL_Xol })
|
|
.AddPart(new EntityProductionModel
|
|
{ Alloy = 80, Ether = 80, BuildTime = 28, ProducedBy = DataType.BUILDING_AltarOfTheWorthy })
|
|
.AddPart(new EntitySupplyModel { Takes = 4 })
|
|
.AddPart(new EntityVitalityModel
|
|
{
|
|
Energy = 60, Health = 80, DefenseLayer = 40, Defense = DefenseType.Overgrowth,
|
|
Armor = ArmorType.Medium, IsEtheric = false
|
|
})
|
|
.AddPart(new EntityMovementModel { Speed = 448, Movement = MovementType.Ground })
|
|
.AddPart(new EntityWeaponModel
|
|
{
|
|
Damage = 40, Range = 100, AttacksPerSecond = 1,
|
|
Targets = TargetType.Ground
|
|
})
|
|
.AddPart(new EntityIdPassiveModel { Id = DataType.PASSIVE_CastingFromBlood })
|
|
},
|
|
// Units
|
|
// Q'Rath
|
|
{
|
|
DataType.WORKER_Mote,
|
|
new EntityModel(DataType.WORKER_Mote, EntityType.Worker)
|
|
.AddPart(new EntityInfoModel { Name = "Mote", Descriptive = DescriptiveType.Worker })
|
|
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_QRath })
|
|
.AddPart(new EntityProductionModel { Alloy = 50, BuildTime = 20 })
|
|
.AddPart(new EntityVitalityModel { Health = 45, DefenseLayer = 45, Armor = ArmorType.Light })
|
|
.AddPart(new EntityMovementModel { Speed = 400, Movement = MovementType.Ground })
|
|
.AddPart(new EntityWeaponModel
|
|
{ Damage = 5, Range = 50, AttacksPerSecond = 1.887f, Targets = TargetType.Ground })
|
|
.AddPart(new EntityIdPassiveModel { Id = DataType.PASSIVE_HarvestAlloy })
|
|
},
|
|
{
|
|
DataType.UNIT_Sipari,
|
|
new EntityModel(DataType.UNIT_Sipari, EntityType.Army)
|
|
.AddPart(new EntityInfoModel
|
|
{
|
|
Name = "Sipari", Descriptive = DescriptiveType.Frontliner,
|
|
Description =
|
|
"""
|
|
Ground unit. Attacks ground targets. Durable melee fighter.<br/>
|
|
Gets Shields in <b>Hallowed Ground</b>.<br/>
|
|
""",
|
|
FlavorText =
|
|
"""
|
|
"From the ranks of the faithful shall the true-hearted step forward. They shall
|
|
be My spear, My shield, pointed forever outward against Wicked and Beast!"<br/>
|
|
—Holy Aros, "Utterances 16.9"
|
|
"""
|
|
})
|
|
.AddPart(new EntityTierModel { Tier = 1 })
|
|
.AddPart(new EntityHotkeyModel { Hotkey = "Q", HotkeyGroup = "Z" })
|
|
.AddPart(new EntityVanguardReplacedModel
|
|
{ ImmortalId = DataType.IMMORTAL_Orzum, ReplacedById = DataType.VANGUARD_Zentari_Orzum })
|
|
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_QRath })
|
|
.AddPart(new EntityProductionModel
|
|
{ Alloy = 75, BuildTime = 20, ProducedBy = DataType.BUILDING_LegionHall })
|
|
.AddPart(new EntitySupplyModel { Takes = 3 })
|
|
.AddPart(new EntityVitalityModel { Health = 210, DefenseLayer = 135, Armor = ArmorType.Light })
|
|
.AddPart(new EntityRequirementModel
|
|
{
|
|
Id = DataType.BUILDING_LegionHall,
|
|
Requirement = RequirementType.Production_Building
|
|
})
|
|
.AddPart(new EntityMovementModel { Speed = 440, Movement = MovementType.Ground })
|
|
.AddPart(new EntityWeaponModel
|
|
{
|
|
Damage = 20, HeavyDamage = 18, Range = 180,
|
|
SecondsBetweenAttacks = 1.43f, Targets = TargetType.Ground
|
|
})
|
|
.AddPart(new EntityIdUpgradeModel { Id = DataType.UPGRADE_GreavesOfAhqar })
|
|
.AddPart(new EntityIdUpgradeModel { Id = DataType.UPGRADE_FortifiedIcons })
|
|
.AddPart(new EntityIdPassiveModel { Id = DataType.PASSIVE_GreavesOfAhqar })
|
|
.AddPart(new EntityIdPassiveModel { Id = DataType.PASSIVE_FortifiedIcons })
|
|
},
|
|
{
|
|
DataType.UNIT_Magi,
|
|
new EntityModel(DataType.UNIT_Magi, EntityType.Army)
|
|
.AddPart(new EntityInfoModel
|
|
{
|
|
Name = "Magi", Descriptive = DescriptiveType.Support,
|
|
Description =
|
|
"""
|
|
Ground Spellcaster. Casts healing/utility spells. Protector.<br/>
|
|
Deploy to get Shields and create <b>Hallowed Ground</b>.
|
|
"""
|
|
})
|
|
.AddPart(new EntityTierModel { Tier = 1.5f })
|
|
.AddPart(new EntityHotkeyModel { Hotkey = "E", HotkeyGroup = "Z" })
|
|
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_QRath })
|
|
.AddPart(new EntityProductionModel
|
|
{ Alloy = 50, Ether = 75, BuildTime = 28, ProducedBy = DataType.BUILDING_LegionHall })
|
|
.AddPart(new EntitySupplyModel { Takes = 2 })
|
|
.AddPart(new EntityVanguardReplacedModel
|
|
{ ImmortalId = DataType.IMMORTAL_Ajari, ReplacedById = DataType.VANGUARD_Saoshin_Ajari })
|
|
.AddPart(new EntityRequirementModel
|
|
{
|
|
Id = DataType.BUILDING_LegionHall,
|
|
Requirement = RequirementType.Production_Building
|
|
})
|
|
.AddPart(new EntityRequirementModel
|
|
{
|
|
Id = DataType.BUILDING_Reliquary,
|
|
Requirement = RequirementType.Production_Building
|
|
})
|
|
.AddPart(new EntityVitalityModel
|
|
{ Energy = 100, Health = 75, DefenseLayer = 75, Armor = ArmorType.Light })
|
|
.AddPart(new EntityMovementModel { Speed = 420, Movement = MovementType.Ground })
|
|
.AddPart(new EntityWeaponModel
|
|
{
|
|
Damage = 6, Range = 600, SecondsBetweenAttacks = 1.5f,
|
|
Targets = TargetType.All
|
|
})
|
|
.AddPart(new EntityIdAbilityModel { Id = DataType.ABILITY_DeployMagi })
|
|
.AddPart(new EntityIdAbilityModel { Id = DataType.ABILITY_MobilizeQrath })
|
|
.AddPart(new EntityIdPassiveModel { Id = DataType.PASSIVE_MendingDecree })
|
|
},
|
|
{
|
|
DataType.UNIT_Zephyr,
|
|
new EntityModel(DataType.UNIT_Zephyr, EntityType.Army)
|
|
.AddPart(new EntityInfoModel
|
|
{
|
|
Name = "Zephyr",
|
|
Descriptive = DescriptiveType.Generalist,
|
|
Description =
|
|
"""
|
|
Ground unit. Attacks ground/air targets. Can teleport.
|
|
""",
|
|
FlavorText =
|
|
"""
|
|
Once named, the bound between zephyr and pilot cannot be broken.
|
|
"""
|
|
})
|
|
.AddPart(new EntityTierModel { Tier = 1.5f })
|
|
.AddPart(new EntityHotkeyModel { Hotkey = "W", HotkeyGroup = "Z" })
|
|
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_QRath })
|
|
.AddPart(new EntityProductionModel
|
|
{ Alloy = 100, Ether = 40, BuildTime = 24, ProducedBy = DataType.BUILDING_LegionHall })
|
|
.AddPart(new EntitySupplyModel { Takes = 4 })
|
|
.AddPart(new EntityRequirementModel
|
|
{
|
|
Id = DataType.BUILDING_LegionHall,
|
|
Requirement = RequirementType.Production_Building
|
|
})
|
|
.AddPart(new EntityRequirementModel
|
|
{
|
|
Id = DataType.BUILDING_MonasteryOfIzur,
|
|
Requirement = RequirementType.Production_Building
|
|
})
|
|
.AddPart(new EntityVitalityModel { Health = 255, DefenseLayer = 105, Armor = ArmorType.Heavy })
|
|
.AddPart(new EntityMovementModel { Speed = 400, Movement = MovementType.Ground })
|
|
.AddPart(new EntityWeaponModel
|
|
{
|
|
Damage = 22, MediumDamage = 27, HeavyDamage = 32, Range = 500, SecondsBetweenAttacks = 1.5f,
|
|
Targets = TargetType.All
|
|
})
|
|
.AddPart(new EntityIdUpgradeModel { Id = DataType.UPGRADE_WindStep })
|
|
.AddPart(new EntityIdUpgradeModel { Id = DataType.UPGRADE_ZephyrRange })
|
|
.AddPart(new EntityIdAbilityModel { Id = DataType.ABILITY_Windstep })
|
|
},
|
|
{
|
|
DataType.UNIT_Dervish,
|
|
new EntityModel(DataType.UNIT_Dervish, EntityType.Army)
|
|
.AddPart(new EntityInfoModel
|
|
{
|
|
Name = "Dervish",
|
|
Descriptive = DescriptiveType.Skirmisher,
|
|
Description =
|
|
"""
|
|
Ground unit. Attacks ground targets. Fragile and agile.<br/>
|
|
Can use Radiant Ward to lay mines. Has damage reduction.
|
|
"""
|
|
})
|
|
.AddPart(new EntityTierModel { Tier = 2 })
|
|
.AddPart(new EntityHotkeyModel { Hotkey = "R", HotkeyGroup = "Z" })
|
|
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_QRath })
|
|
.AddPart(new EntityProductionModel
|
|
{ Alloy = 125, Ether = 10, BuildTime = 24, ProducedBy = DataType.BUILDING_SoulFoundry })
|
|
.AddPart(new EntitySupplyModel { Takes = 4 })
|
|
.AddPart(new EntityVitalityModel { Health = 180, DefenseLayer = 150, Armor = ArmorType.Medium })
|
|
.AddPart(new EntityRequirementModel
|
|
{
|
|
Id = DataType.BUILDING_SoulFoundry,
|
|
Requirement = RequirementType.Production_Building
|
|
})
|
|
.AddPart(new EntityMovementModel { Speed = 500, Movement = MovementType.Hover })
|
|
.AddPart(new EntityWeaponModel
|
|
{
|
|
Damage = 10, LightDamage = 26, MediumDamage = 18, Range = 350, SecondsBetweenAttacks = 2.0f,
|
|
Targets = TargetType.Ground
|
|
})
|
|
.AddPart(new EntityIdUpgradeModel { Id = DataType.UPGRADE_SiroccoScript })
|
|
.AddPart(new EntityIdUpgradeModel { Id = DataType.UPGRADE_RadiantWard })
|
|
.AddPart(new EntityIdAbilityModel { Id = DataType.ABILITY_RadiantWard })
|
|
.AddPart(new EntityIdPassiveModel { Id = DataType.PASSIVE_SiroccoScript })
|
|
},
|
|
{
|
|
DataType.UNIT_Absolver,
|
|
new EntityModel(DataType.UNIT_Absolver, EntityType.Army)
|
|
.AddPart(new EntityInfoModel
|
|
{
|
|
Name = "Absolver",
|
|
Descriptive = DescriptiveType.ZoneControl,
|
|
Description =
|
|
"""
|
|
Ground unit. Attacks ground targets. Deploys for area damage.
|
|
""",
|
|
Notes =
|
|
"""
|
|
Has a higher DPS against structures when unmobilized.
|
|
"""
|
|
})
|
|
.AddPart(new EntityTierModel { Tier = 2 })
|
|
.AddPart(new EntityHotkeyModel { Hotkey = "F", HotkeyGroup = "Z" })
|
|
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_QRath })
|
|
.AddPart(new EntityProductionModel
|
|
{ Alloy = 150, Ether = 75, BuildTime = 28, ProducedBy = DataType.BUILDING_SoulFoundry })
|
|
.AddPart(new EntitySupplyModel { Takes = 5 })
|
|
.AddPart(new EntityVitalityModel { Health = 230, DefenseLayer = 150, Armor = ArmorType.Medium })
|
|
.AddPart(new EntityRequirementModel
|
|
{
|
|
Id = DataType.BUILDING_SoulFoundry,
|
|
Requirement = RequirementType.Production_Building
|
|
})
|
|
.AddPart(new EntityMovementModel { Speed = 400, Movement = MovementType.Ground })
|
|
.AddPart(new EntityWeaponModel
|
|
{
|
|
Damage = 11, MediumDamage = 13, HeavyDamage = 15, StructureDamageBonus = 8, Range = 800,
|
|
AttacksPerSecond = 1.25f, Targets = TargetType.Ground
|
|
})
|
|
.AddPart(new EntityWeaponModel
|
|
{
|
|
Damage = 6, MediumDamage = 7, HeavyDamage = 8, Range = 800, AttacksPerSecond = 2.222f,
|
|
Targets = TargetType.Ground
|
|
})
|
|
.AddPart(new EntityIdAbilityModel { Id = DataType.ABILITY_DeployAbsolver })
|
|
.AddPart(new EntityIdAbilityModel { Id = DataType.ABILITY_MobilizeQrath })
|
|
.AddPart(new EntityPassiveModel { Name = "?", Description = "Hits multiple units when deployed." })
|
|
},
|
|
{
|
|
DataType.UNIT_Castigator,
|
|
new EntityModel(DataType.UNIT_Castigator, EntityType.Army)
|
|
.AddPart(new EntityInfoModel
|
|
{
|
|
Name = "Castigator", Descriptive = DescriptiveType.AirKiller,
|
|
Description =
|
|
"""
|
|
Ground unit. Can attack air and ground.
|
|
"""
|
|
})
|
|
.AddPart(new EntityTierModel { Tier = 2 })
|
|
.AddPart(new EntityHotkeyModel { Hotkey = "W", HoldSpace = true, HotkeyGroup = "Z" })
|
|
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_QRath })
|
|
.AddPart(new EntityProductionModel
|
|
{ Alloy = 150, Ether = 75, BuildTime = 28, ProducedBy = DataType.BUILDING_SoulFoundry })
|
|
.AddPart(new EntitySupplyModel { Takes = 5 })
|
|
.AddPart(new EntityVitalityModel { Health = 300, DefenseLayer = 150, Armor = ArmorType.Heavy })
|
|
.AddPart(new EntityMovementModel { Speed = 390, Movement = MovementType.Ground })
|
|
.AddPart(new EntityRequirementModel
|
|
{
|
|
Id = DataType.BUILDING_SoulFoundry,
|
|
Requirement = RequirementType.Production_Building
|
|
})
|
|
.AddPart(new EntityWeaponModel
|
|
{
|
|
Damage = 20,
|
|
MediumDamage = 30,
|
|
HeavyDamage = 40,
|
|
Range = 800,
|
|
SecondsBetweenAttacks = 1.42f,
|
|
Targets = TargetType.Air,
|
|
HasSplash = true
|
|
})
|
|
.AddPart(new EntityWeaponModel
|
|
{ Damage = 16, Range = 500, SecondsBetweenAttacks = 1.5f, Targets = TargetType.Ground })
|
|
.AddPart(new EntityIdUpgradeModel { Id = DataType.UPGRADE_RelicOfTheWrathfulGaze })
|
|
.AddPart(new EntityIdAbilityModel { Id = DataType.PASSIVE_Maledictions })
|
|
.AddPart(new EntityIdPassiveModel { Id = DataType.PASSIVE_RelicOfTheWrathfulGaze })
|
|
},
|
|
{
|
|
DataType.UNIT_Hallower,
|
|
new EntityModel(DataType.UNIT_Hallower, EntityType.Army)
|
|
.AddPart(new EntityInfoModel
|
|
{
|
|
Name = "Hallower", Descriptive = DescriptiveType.Dislodger,
|
|
Description =
|
|
"""
|
|
Ground Unit. Attack ground targets. Long-range attack.
|
|
"""
|
|
})
|
|
.AddPart(new EntityTierModel { Tier = 2.5f })
|
|
.AddPart(new EntityHotkeyModel { Hotkey = "Q", HoldSpace = true, HotkeyGroup = "Z" })
|
|
.AddPart(new EntityVanguardReplacedModel
|
|
{ ImmortalId = DataType.IMMORTAL_Ajari, ReplacedById = DataType.VANGUARD_ArkMother_Ajari })
|
|
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_QRath })
|
|
.AddPart(new EntityProductionModel
|
|
{ Alloy = 150, Ether = 100, BuildTime = 32, ProducedBy = DataType.BUILDING_SoulFoundry })
|
|
.AddPart(new EntitySupplyModel { Takes = 5 })
|
|
.AddPart(new EntityRequirementModel
|
|
{
|
|
Id = DataType.BUILDING_SoulFoundry,
|
|
Requirement = RequirementType.Production_Building
|
|
})
|
|
.AddPart(new EntityRequirementModel
|
|
{
|
|
Id = DataType.BUILDING_HouseOfFadingSaints,
|
|
Requirement = RequirementType.Production_Building
|
|
})
|
|
.AddPart(new EntityVitalityModel { Health = 100, DefenseLayer = 130, Armor = ArmorType.Heavy })
|
|
.AddPart(new EntityMovementModel { Speed = 335, Movement = MovementType.Ground })
|
|
.AddPart(new EntityWeaponModel
|
|
{
|
|
Damage = 60, MediumDamage = 80, HeavyDamage = 100, Range = 1300, AttacksPerSecond = 0.143f,
|
|
Targets = TargetType.Ground
|
|
})
|
|
.AddPart(new EntityIdPassiveModel { Id = DataType.PASSIVE_HallowedRuin })
|
|
},
|
|
{
|
|
DataType.UNIT_Sentinel,
|
|
new EntityModel(DataType.UNIT_Sentinel, EntityType.Army)
|
|
.AddPart(new EntityInfoModel
|
|
{
|
|
Name = "Sentinel",
|
|
Descriptive = DescriptiveType.AirKiller,
|
|
Description =
|
|
"""
|
|
Air unit. Attacks air targets. Anti-air specialist.
|
|
"""
|
|
})
|
|
.AddPart(new EntityTierModel { Tier = 3 })
|
|
.AddPart(new EntityHotkeyModel { Hotkey = "E", HoldSpace = true, HotkeyGroup = "Z" })
|
|
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_QRath })
|
|
.AddPart(new EntityProductionModel
|
|
{ Alloy = 150, Ether = 75, BuildTime = 28, ProducedBy = DataType.BUILDING_Angelarium })
|
|
.AddPart(new EntitySupplyModel { Takes = 4 })
|
|
.AddPart(new EntityVitalityModel { Health = 150, DefenseLayer = 100, Armor = ArmorType.Medium })
|
|
.AddPart(new EntityMovementModel { Speed = 525, Movement = MovementType.Air })
|
|
.AddPart(new EntityRequirementModel
|
|
{
|
|
Id = DataType.BUILDING_Angelarium,
|
|
Requirement = RequirementType.Production_Building
|
|
})
|
|
.AddPart(new EntityWeaponModel
|
|
{
|
|
Damage = 28, Range = 500, AttacksPerSecond = 0.714f, Targets = TargetType.Air
|
|
})
|
|
//TODO: Connect Sentinel mobilize ability
|
|
},
|
|
{
|
|
DataType.UNIT_Throne,
|
|
new EntityModel(DataType.UNIT_Throne, EntityType.Army)
|
|
.AddPart(new EntityInfoModel
|
|
{
|
|
Name = "Throne",
|
|
Descriptive = DescriptiveType.Generalist,
|
|
Description =
|
|
"""
|
|
Air unit. Attacks ground/air targets. Ultimate unit.
|
|
""",
|
|
FlavorText =
|
|
"""
|
|
The Godhead Aros left silvers of itself in them, and no sight is more fearsome
|
|
to its enemies.
|
|
"""
|
|
})
|
|
.AddPart(new EntityTierModel { Tier = 3.5f })
|
|
.AddPart(new EntityHotkeyModel { Hotkey = "A", HoldSpace = true, HotkeyGroup = "Z" })
|
|
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_QRath })
|
|
.AddPart(new EntityProductionModel
|
|
{ Alloy = 350, Ether = 200, BuildTime = 70, ProducedBy = DataType.BUILDING_Angelarium })
|
|
.AddPart(new EntitySupplyModel { Takes = 10 })
|
|
.AddPart(new EntityVitalityModel { Health = 550, DefenseLayer = 350, Armor = ArmorType.Heavy })
|
|
.AddPart(new EntityRequirementModel
|
|
{
|
|
Id = DataType.BUILDING_Angelarium,
|
|
Requirement = RequirementType.Production_Building
|
|
})
|
|
.AddPart(new EntityRequirementModel
|
|
{
|
|
Id = DataType.BUILDING_BearerOfTheCrown,
|
|
Requirement = RequirementType.Research_Building
|
|
})
|
|
.AddPart(new EntityMovementModel { Speed = 300, Movement = MovementType.Air })
|
|
.AddPart(new EntityWeaponModel
|
|
{
|
|
Damage = 120, Range = 500, SecondsBetweenAttacks = 2.5f,
|
|
Targets = TargetType.All
|
|
})
|
|
.AddPart(new EntityIdAbilityModel { Id = DataType.ABILITY_TitheBlades })
|
|
.AddPart(new EntityIdUpgradeModel { Id = DataType.UPGRADE_TitheBlades })
|
|
.AddPart(new EntityIdPassiveModel { Id = DataType.PASSIVE_GodstoneBulwark })
|
|
.AddPart(new EntityIdPassiveModel { Id = DataType.PASSIVE_ThroneMovingShot })
|
|
},
|
|
{
|
|
DataType.UNIT_Warden,
|
|
new EntityModel(DataType.UNIT_Warden, EntityType.Army)
|
|
.AddPart(new EntityInfoModel
|
|
{
|
|
Name = "Warden",
|
|
Descriptive = DescriptiveType.Skirmisher,
|
|
Description =
|
|
"""
|
|
Air unit. Attacks ground targets. Anti-ground specialist.
|
|
"""
|
|
})
|
|
.AddPart(new EntityTierModel { Tier = 3 })
|
|
.AddPart(new EntityHotkeyModel { Hotkey = "R", HoldSpace = true, HotkeyGroup = "Z" })
|
|
.AddPart(new EntityVanguardReplacedModel
|
|
{ ImmortalId = DataType.IMMORTAL_Orzum, ReplacedById = DataType.VANGUARD_Sceptre_Orzum })
|
|
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_QRath })
|
|
.AddPart(new EntityProductionModel
|
|
{ Alloy = 175, Ether = 100, BuildTime = 32, ProducedBy = DataType.BUILDING_Angelarium })
|
|
.AddPart(new EntitySupplyModel { Takes = 6 })
|
|
.AddPart(new EntityRequirementModel
|
|
{
|
|
Id = DataType.BUILDING_Angelarium,
|
|
Requirement = RequirementType.Production_Building
|
|
})
|
|
.AddPart(new EntityVitalityModel { Health = 375, DefenseLayer = 100, Armor = ArmorType.Heavy })
|
|
.AddPart(new EntityMovementModel { Speed = 480, Movement = MovementType.Air })
|
|
.AddPart(new EntityWeaponModel
|
|
{ Damage = 32, Range = 500, SecondsBetweenAttacks = 1.8f, Targets = TargetType.Ground })
|
|
.AddPart(new EntityIdUpgradeModel { Id = DataType.UPGRADE_WingsOfTheKenLatir })
|
|
.AddPart(new EntityIdPassiveModel { Id = DataType.PASSIVE_WingsOfTheKenLatir })
|
|
.AddPart(new EntityIdPassiveModel { Id = DataType.PASSIVE_ExecutionRites })
|
|
},
|
|
{
|
|
DataType.UNIT_SharU,
|
|
new EntityModel(DataType.UNIT_SharU, EntityType.Army)
|
|
.AddPart(new EntityInfoModel
|
|
{
|
|
Name = "Shar'U",
|
|
Descriptive = DescriptiveType.DamageCaster
|
|
})
|
|
.AddPart(new EntityTierModel { Tier = 3.5f })
|
|
.AddPart(new EntityHotkeyModel { Hotkey = "F", HoldSpace = true, HotkeyGroup = "Z" })
|
|
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_QRath })
|
|
.AddPart(new EntityProductionModel
|
|
{ Alloy = 110, Ether = 250, BuildTime = 55, ProducedBy = DataType.BUILDING_Angelarium })
|
|
.AddPart(new EntitySupplyModel { Takes = 6 })
|
|
.AddPart(new EntityRequirementModel
|
|
{
|
|
Id = DataType.BUILDING_Angelarium,
|
|
Requirement = RequirementType.Production_Building
|
|
})
|
|
.AddPart(new EntityRequirementModel
|
|
{
|
|
Id = DataType.BUILDING_EyeOfAros,
|
|
Requirement = RequirementType.Research_Building
|
|
})
|
|
.AddPart(new EntityVitalityModel
|
|
{ Health = 300, DefenseLayer = 155, Energy = 150, IsEtheric = true, Armor = ArmorType.Heavy })
|
|
.AddPart(new EntityMovementModel { Speed = 360, Movement = MovementType.Air })
|
|
.AddPart(new EntityWeaponModel
|
|
{
|
|
Damage = 10, Range = 650, SecondsBetweenAttacks = 1.4f,
|
|
Targets = TargetType.All
|
|
})
|
|
.AddPart(new EntityIdAbilityModel { Id = DataType.ABILITY_Awestrike })
|
|
},
|
|
// Units
|
|
// Aru
|
|
{
|
|
DataType.WORKER_Symbiote,
|
|
new EntityModel(DataType.WORKER_Symbiote, EntityType.Worker)
|
|
.AddPart(new EntityInfoModel { Name = "Symbiote", Descriptive = DescriptiveType.Worker })
|
|
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_Aru })
|
|
.AddPart(new EntityProductionModel { Alloy = 50, BuildTime = 20 })
|
|
.AddPart(new EntityRequirementModel
|
|
{
|
|
Id = DataType.BUILDING_GroveHeart,
|
|
Requirement = RequirementType.Production_Building
|
|
})
|
|
.AddPart(new EntityVitalityModel { Health = 75, DefenseLayer = 15, Armor = ArmorType.Light })
|
|
.AddPart(new EntityMovementModel { Speed = 400, Movement = MovementType.Hover })
|
|
.AddPart(new EntityWeaponModel
|
|
{ Damage = 8, Range = 40, AttacksPerSecond = 1.25f, Targets = TargetType.Ground })
|
|
.AddPart(new EntityIdPassiveModel { Id = DataType.PASSIVE_HarvestAlloy })
|
|
},
|
|
{
|
|
DataType.UNIT_MaskedHunter,
|
|
new EntityModel(DataType.UNIT_MaskedHunter, EntityType.Army)
|
|
.AddPart(new EntityInfoModel
|
|
{
|
|
Name = "Masked Hunter",
|
|
Descriptive = DescriptiveType.Generalist,
|
|
Description =
|
|
"""
|
|
Ground Unit. Can attack ground and air.
|
|
"""
|
|
})
|
|
.AddPart(new EntityTierModel { Tier = 1 })
|
|
.AddPart(new EntityHotkeyModel { Hotkey = "W", HotkeyGroup = "Z" })
|
|
.AddPart(new EntityVanguardReplacedModel
|
|
{ ImmortalId = DataType.IMMORTAL_Xol, ReplacedById = DataType.VANGUARD_BoneStalker_Xol })
|
|
.AddPart(new EntityRequirementModel
|
|
{
|
|
Id = DataType.BUILDING_AltarOfTheWorthy,
|
|
Requirement = RequirementType.Production_Building
|
|
})
|
|
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_Aru })
|
|
.AddPart(new EntityProductionModel
|
|
{ Alloy = 50, BuildTime = 16, ProducedBy = DataType.BUILDING_AltarOfTheWorthy })
|
|
.AddPart(new EntitySupplyModel { Takes = 2 })
|
|
.AddPart(new EntityVitalityModel
|
|
{ Health = 125, DefenseLayer = 40, Defense = DefenseType.Overgrowth, Armor = ArmorType.Light })
|
|
.AddPart(new EntityMovementModel { Speed = 400, Movement = MovementType.Ground })
|
|
.AddPart(new EntityWeaponModel
|
|
{
|
|
Damage = 7, Range = 400, AttacksPerSecond = 1.4f, Targets = TargetType.All, MediumDamage = 6,
|
|
HeavyDamage = 5
|
|
})
|
|
.AddPart(new EntityIdUpgradeModel { Id = DataType.UPGRADE_Offering })
|
|
.AddPart(new EntityIdPassiveModel { Id = DataType.ABILITY_Offering })
|
|
},
|
|
{
|
|
DataType.UNIT_Xacal,
|
|
new EntityModel(DataType.UNIT_Xacal, EntityType.Army)
|
|
.AddPart(new EntityInfoModel
|
|
{
|
|
Name = "Xacal",
|
|
Descriptive = DescriptiveType.Skirmisher,
|
|
Description =
|
|
"""
|
|
Ground unit. Attacks ground targets. Anti-Armor specialist.
|
|
"""
|
|
})
|
|
.AddPart(new EntityTierModel { Tier = 1.5f })
|
|
.AddPart(new EntityRequirementModel
|
|
{
|
|
Id = DataType.BUILDING_AltarOfTheWorthy,
|
|
Requirement = RequirementType.Production_Building
|
|
})
|
|
.AddPart(new EntityRequirementModel
|
|
{
|
|
Id = DataType.BUILDING_Neurocyte,
|
|
Requirement = RequirementType.Research_Building
|
|
})
|
|
.AddPart(new EntityHotkeyModel { Hotkey = "Q", HotkeyGroup = "Z" })
|
|
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_Aru })
|
|
.AddPart(new EntityProductionModel
|
|
{ Alloy = 80, Ether = 30, BuildTime = 20, ProducedBy = DataType.BUILDING_AltarOfTheWorthy })
|
|
.AddPart(new EntitySupplyModel { Takes = 3 })
|
|
.AddPart(new EntityVitalityModel { Health = 210, DefenseLayer = 110, Armor = ArmorType.Medium })
|
|
.AddPart(new EntityMovementModel { Speed = 516, Movement = MovementType.Ground })
|
|
.AddPart(new EntityWeaponModel
|
|
{
|
|
Damage = 14, MediumDamage = 21, HeavyDamage = 28, Range = 600, SecondsBetweenAttacks = 1.786f,
|
|
Targets = TargetType.Ground
|
|
})
|
|
.AddPart(new EntityIdUpgradeModel { Id = DataType.UPGRADE_EthericFibers })
|
|
.AddPart(new EntityIdPassiveModel { Id = DataType.PASSIVE_XacalDamage })
|
|
.AddPart(new EntityIdPassiveModel { Id = DataType.PASSIVE_XacalDefense })
|
|
},
|
|
{
|
|
DataType.UNIT_Bloodbound,
|
|
new EntityModel(DataType.UNIT_Bloodbound, EntityType.Army)
|
|
.AddPart(new EntityInfoModel
|
|
{
|
|
Name = "Bloodbound",
|
|
Descriptive = DescriptiveType.Frontliner,
|
|
Description =
|
|
"""
|
|
Ground unit. Attacks ground targets. Hard to kill.
|
|
""",
|
|
FlavorText =
|
|
"""
|
|
"With this act, I sever myself from families proud and pleasures fickle. My hands shall
|
|
clutch no babe nor trophy, for I am Laculathon's hungering blade."
|
|
<br/>
|
|
—Bloodbound initiation Rites
|
|
"""
|
|
})
|
|
.AddPart(new EntityTierModel { Tier = 3 })
|
|
.AddPart(new EntityVanguardReplacedModel
|
|
{ ImmortalId = DataType.IMMORTAL_Xol, ReplacedById = DataType.VANGUARD_WhiteWoodReaper_Xol })
|
|
.AddPart(new EntityRequirementModel
|
|
{
|
|
Id = DataType.BUILDING_AltarOfTheWorthy,
|
|
Requirement = RequirementType.Production_Building
|
|
})
|
|
.AddPart(new EntityRequirementModel
|
|
{
|
|
Id = DataType.BUILDING_RedVale,
|
|
Requirement = RequirementType.Research_Building
|
|
})
|
|
.AddPart(new EntityHotkeyModel { Hotkey = "E", HotkeyGroup = "Z" })
|
|
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_Aru })
|
|
.AddPart(new EntityProductionModel
|
|
{ Alloy = 80, Ether = 80, BuildTime = 24, ProducedBy = DataType.BUILDING_AltarOfTheWorthy })
|
|
.AddPart(new EntitySupplyModel { Takes = 4 })
|
|
.AddPart(new EntityVitalityModel
|
|
{ Energy = 60, Health = 150, DefenseLayer = 75, Armor = ArmorType.Light })
|
|
.AddPart(new EntityMovementModel { Speed = 500, Movement = MovementType.Ground })
|
|
.AddPart(new EntityWeaponModel
|
|
{
|
|
Damage = 30, MediumDamage = 40, LightDamage = 50, Range = 80, AttacksPerSecond = 1.4f,
|
|
Targets = TargetType.Ground
|
|
})
|
|
.AddPart(new EntityIdPassiveModel { Id = DataType.PASSIVE_QuenchingScythes })
|
|
.AddPart(new EntityIdPassiveModel { Id = DataType.ABILITY_BloodyRebound })
|
|
.AddPart(new EntityIdPassiveModel { Id = DataType.PASSIVE_CastingFromBlood })
|
|
},
|
|
|
|
{
|
|
DataType.UNIT_BloodAnchor,
|
|
new EntityModel(DataType.UNIT_BloodAnchor, EntityType.Army)
|
|
.AddPart(new EntityInfoModel
|
|
{
|
|
Name = "Blood Anchor",
|
|
Descriptive = DescriptiveType.ZoneControl,
|
|
Description =
|
|
"""
|
|
Ground unit. Can't attack. Deploys to spawn Cystic Crawlers and Rootway.
|
|
"""
|
|
})
|
|
.AddPart(new EntityTierModel { Tier = 2 })
|
|
.AddPart(new EntityVanguardReplacedModel
|
|
{ ImmortalId = DataType.IMMORTAL_Atzlan, ReplacedById = DataType.VANGUARD_Resinant_Atzlan })
|
|
.AddPart(new EntityRequirementModel
|
|
{
|
|
Id = DataType.BUILDING_AmberWomb,
|
|
Requirement = RequirementType.Production_Building
|
|
})
|
|
.AddPart(new EntityRequirementModel
|
|
{
|
|
Id = DataType.BUILDING_RedVale,
|
|
Requirement = RequirementType.Research_Building
|
|
})
|
|
.AddPart(new EntityHotkeyModel { Hotkey = "F", HotkeyGroup = "Z" })
|
|
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_Aru })
|
|
.AddPart(new EntityProductionModel
|
|
{ Alloy = 125, Ether = 100, BuildTime = 32, ProducedBy = DataType.BUILDING_AltarOfTheWorthy })
|
|
.AddPart(new EntitySupplyModel { Takes = 5 })
|
|
.AddPart(new EntityVitalityModel
|
|
{ Health = 150, DefenseLayer = 75, Armor = ArmorType.Light })
|
|
.AddPart(new EntityMovementModel { Speed = 500, Movement = MovementType.Ground })
|
|
.AddPart(new EntityIdPassiveModel { Id = DataType.ABILITY_MobilizeAru })
|
|
.AddPart(new EntityIdPassiveModel { Id = DataType.ABILITY_DeployBloodAnchor })
|
|
},
|
|
|
|
{
|
|
DataType.UNIT_RedSeer,
|
|
new EntityModel(DataType.UNIT_RedSeer, EntityType.Army)
|
|
.AddPart(new EntityInfoModel
|
|
{
|
|
Name = "Red Seer",
|
|
Descriptive = DescriptiveType.DamageCaster,
|
|
Description =
|
|
"""
|
|
Ground Spellcaster. Casts damage and utility spells. Ultimate Spellcaster.
|
|
"""
|
|
})
|
|
.AddPart(new EntityTierModel { Tier = 3 })
|
|
.AddPart(new EntityVanguardReplacedModel
|
|
{ ImmortalId = DataType.IMMORTAL_Mala, ReplacedById = DataType.VANGUARD_DreadSister_Mala })
|
|
.AddPart(new EntityRequirementModel
|
|
{
|
|
Id = DataType.BUILDING_AltarOfTheWorthy,
|
|
Requirement = RequirementType.Production_Building
|
|
})
|
|
.AddPart(new EntityRequirementModel
|
|
{
|
|
Id = DataType.BUILDING_RedVale,
|
|
Requirement = RequirementType.Research_Building
|
|
})
|
|
.AddPart(new EntityHotkeyModel { Hotkey = "F", HoldSpace = true, HotkeyGroup = "Z" })
|
|
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_Aru })
|
|
.AddPart(new EntityProductionModel
|
|
{ Alloy = 40, Ether = 140, BuildTime = 32, ProducedBy = DataType.BUILDING_AltarOfTheWorthy })
|
|
.AddPart(new EntitySupplyModel { Takes = 3 })
|
|
.AddPart(new EntityVitalityModel
|
|
{
|
|
Energy = 100, Health = 90, DefenseLayer = 75, Defense = DefenseType.Overgrowth,
|
|
IsEtheric = true, Armor = ArmorType.Light
|
|
})
|
|
.AddPart(new EntityMovementModel { Speed = 360, Movement = MovementType.Ground })
|
|
.AddPart(new EntityWeaponModel
|
|
{ Damage = 9, Range = 700, AttacksPerSecond = 1.253f, Targets = TargetType.All })
|
|
.AddPart(new EntityIdUpgradeModel { Id = DataType.UPGRADE_BloodPlague })
|
|
.AddPart(new EntityIdAbilityModel { Id = DataType.ABILITY_DrainingEmbrace })
|
|
.AddPart(new EntityIdAbilityModel { Id = DataType.ABILITY_MorphToGodphage })
|
|
.AddPart(new EntityIdPassiveModel { Id = DataType.PASSIVE_CastingFromBlood })
|
|
},
|
|
{
|
|
DataType.UNIT_Underspine,
|
|
new EntityModel(DataType.UNIT_Underspine, EntityType.Army)
|
|
.AddPart(new EntityInfoModel
|
|
{
|
|
Name = "Underspine",
|
|
Descriptive = DescriptiveType.Support,
|
|
Description = "Ground unit. Can attack ground and air."
|
|
})
|
|
.AddPart(new EntityTierModel { Tier = 1.5f })
|
|
.AddPart(new EntityVanguardReplacedModel
|
|
{ ImmortalId = DataType.IMMORTAL_Mala, ReplacedById = DataType.VANGUARD_Incubator_Mala })
|
|
.AddPart(new EntityRequirementModel
|
|
{
|
|
Id = DataType.BUILDING_AltarOfTheWorthy,
|
|
Requirement = RequirementType.Production_Building
|
|
})
|
|
.AddPart(new EntityRequirementModel
|
|
{
|
|
Id = DataType.BUILDING_Neurocyte,
|
|
Requirement = RequirementType.Research_Building
|
|
})
|
|
.AddPart(new EntityHotkeyModel { Hotkey = "Q", HoldSpace = true, HotkeyGroup = "Z" })
|
|
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_Aru })
|
|
.AddPart(new EntityProductionModel
|
|
{ Alloy = 70, Ether = 50, BuildTime = 20, ProducedBy = DataType.BUILDING_AltarOfTheWorthy })
|
|
.AddPart(new EntitySupplyModel { Takes = 3 })
|
|
.AddPart(new EntityVitalityModel { Health = 210, DefenseLayer = 60, Armor = ArmorType.Medium })
|
|
.AddPart(new EntityMovementModel { Speed = 400, Movement = MovementType.Ground })
|
|
.AddPart(new EntityWeaponModel
|
|
{
|
|
Damage = 2, Range = 600, SecondsBetweenAttacks = 1.253f, Targets =
|
|
TargetType.All
|
|
})
|
|
.AddPart(new EntityIdPassiveModel { Id = DataType.PASSIVE_OssifyingSwarm })
|
|
.AddPart(new EntityIdAbilityModel { Id = DataType.ABILITY_ObstructingSwarm })
|
|
},
|
|
{
|
|
DataType.UNIT_Ichor,
|
|
new EntityModel(DataType.UNIT_Ichor, EntityType.Army)
|
|
.AddPart(new EntityInfoModel
|
|
{
|
|
Name = "Ichor",
|
|
Descriptive = DescriptiveType.Skirmisher,
|
|
Description =
|
|
"""
|
|
Ground unit. Attacks ground targets. Fragile and agile.
|
|
""",
|
|
FlavorText =
|
|
"""
|
|
"Kissed an ichor:" Aru phrase for "dying by one's own stupidity."
|
|
"""
|
|
})
|
|
.AddPart(new EntityTierModel { Tier = 1.5f })
|
|
.AddPart(new EntityRequirementModel
|
|
{
|
|
Id = DataType.BUILDING_AltarOfTheWorthy,
|
|
Requirement = RequirementType.Production_Building
|
|
})
|
|
.AddPart(new EntityHotkeyModel { Hotkey = "R", HotkeyGroup = "Z" })
|
|
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_Aru })
|
|
.AddPart(new EntityProductionModel
|
|
{ Alloy = 80, Ether = 0, BuildTime = 24, ProducedBy = DataType.BUILDING_AltarOfTheWorthy })
|
|
.AddPart(new EntityRequirementModel
|
|
{
|
|
Id = DataType.BUILDING_MurderHollow,
|
|
Requirement = RequirementType.Research_Building
|
|
})
|
|
.AddPart(new EntitySupplyModel { Takes = 3 })
|
|
.AddPart(new EntityVitalityModel { Health = 100, DefenseLayer = 40, Armor = ArmorType.Medium })
|
|
.AddPart(new EntityMovementModel { Speed = 424, Movement = MovementType.Ground })
|
|
.AddPart(new EntityWeaponModel
|
|
{
|
|
Damage = 18, LightDamage = 38, MediumDamage = 28, Range = 500, AttacksPerSecond = 0.7f,
|
|
Targets = TargetType.Ground, SecondsBetweenAttacks = 1.429f
|
|
})
|
|
.AddPart(new EntityIdUpgradeModel { Id = DataType.UPGRADE_PursuitLigaments })
|
|
.AddPart(new EntityIdPassiveModel { Id = DataType.PASSIVE_ExternalDigestion })
|
|
.AddPart(new EntityIdPassiveModel { Id = DataType.PASSIVE_PursuitLigaments })
|
|
},
|
|
{
|
|
DataType.UNIT_Aarox,
|
|
new EntityModel(DataType.UNIT_Aarox, EntityType.Army)
|
|
.AddPart(new EntityInfoModel
|
|
{
|
|
Name = "Aarox",
|
|
Descriptive = DescriptiveType.AirKiller,
|
|
Description =
|
|
"""
|
|
Air unit. Attacks air targets. Self-destructs to do area damage.
|
|
"""
|
|
})
|
|
.AddPart(new EntityTierModel { Tier = 3 })
|
|
.AddPart(new EntityRequirementModel
|
|
{
|
|
Id = DataType.BUILDING_BoneCanopy,
|
|
Requirement = RequirementType.Production_Building
|
|
})
|
|
.AddPart(new EntityRequirementModel
|
|
{
|
|
Id = DataType.BUILDING_Neurocyte,
|
|
Requirement = RequirementType.Research_Building
|
|
})
|
|
.AddPart(new EntityHotkeyModel { Hotkey = "E", HoldSpace = true, HotkeyGroup = "Z" })
|
|
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_Aru })
|
|
.AddPart(new EntityProductionModel
|
|
{ Alloy = 20, Ether = 20, BuildTime = 24, ProducedBy = DataType.BUILDING_BoneCanopy })
|
|
.AddPart(new EntitySupplyModel { Takes = 2 })
|
|
.AddPart(new EntityVitalityModel { Health = 55, DefenseLayer = 10, Armor = ArmorType.Light })
|
|
.AddPart(new EntityMovementModel { Speed = 490, Movement = MovementType.Air })
|
|
.AddPart(new EntityWeaponModel
|
|
{
|
|
Damage = 125, MediumDamage = 163, HeavyDamage = 200, Range = 20,
|
|
AttacksPerSecond = 1,
|
|
Targets =
|
|
TargetType.Air
|
|
})
|
|
.AddPart(new EntityIdAbilityModel { Id = DataType.ABILITY_DiveBomb })
|
|
},
|
|
{
|
|
DataType.UNIT_Thrum,
|
|
new EntityModel(DataType.UNIT_Thrum, EntityType.Army)
|
|
.AddPart(new EntityInfoModel
|
|
{
|
|
Name = "Thrum",
|
|
Descriptive = DescriptiveType.Skirmisher,
|
|
Description =
|
|
"""
|
|
Air unit. Attacks ground/air targets. Fragile and agile.<br/>
|
|
Thrums get attack speed when a Thrum kills an enemy.
|
|
"""
|
|
})
|
|
.AddPart(new EntityTierModel { Tier = 3 })
|
|
.AddPart(new EntityRequirementModel
|
|
{
|
|
Id = DataType.BUILDING_BoneCanopy,
|
|
Requirement = RequirementType.Production_Building
|
|
})
|
|
.AddPart(new EntityHotkeyModel { Hotkey = "R", HoldSpace = true, HotkeyGroup = "Z" })
|
|
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_Aru })
|
|
.AddPart(new EntityProductionModel
|
|
{ Alloy = 80, Ether = 65, BuildTime = 24, ProducedBy = DataType.BUILDING_BoneCanopy })
|
|
.AddPart(new EntitySupplyModel { Takes = 3 })
|
|
.AddPart(new EntityVitalityModel { Health = 150, DefenseLayer = 50, Armor = ArmorType.Light })
|
|
.AddPart(new EntityMovementModel { Speed = 580, Movement = MovementType.Air })
|
|
.AddPart(new EntityWeaponModel
|
|
{
|
|
Damage = 11, LightDamage = 15, MediumDamage = 13, Range = 350, SecondsBetweenAttacks = 1.25f,
|
|
Targets = TargetType.All
|
|
})
|
|
.AddPart(new EntityIdPassiveModel { Id = DataType.PASSIVE_BloodFrenzy })
|
|
},
|
|
{
|
|
DataType.UNIT_WraithBow,
|
|
new EntityModel(DataType.UNIT_WraithBow, EntityType.Army)
|
|
.AddPart(new EntityInfoModel
|
|
{
|
|
Name = "Wraith Bow",
|
|
Descriptive = DescriptiveType.AirKiller,
|
|
Description =
|
|
"""
|
|
Ground unit. Attacks ground/air targets. Anti-air specialist.
|
|
"""
|
|
})
|
|
.AddPart(new EntityTierModel { Tier = 2 })
|
|
.AddPart(new EntityRequirementModel
|
|
{
|
|
Id = DataType.BUILDING_AmberWomb,
|
|
Requirement = RequirementType.Production_Building
|
|
})
|
|
.AddPart(new EntityHotkeyModel { Hotkey = "W", HoldSpace = true, HotkeyGroup = "Z" })
|
|
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_Aru })
|
|
.AddPart(new EntityProductionModel
|
|
{ Alloy = 80, Ether = 40, BuildTime = 24, ProducedBy = DataType.BUILDING_AmberWomb })
|
|
.AddPart(new EntitySupplyModel { Takes = 3 })
|
|
.AddPart(new EntityVitalityModel { Health = 180, DefenseLayer = 65, Armor = ArmorType.Medium })
|
|
.AddPart(new EntityMovementModel { Speed = 500, Movement = MovementType.Ground })
|
|
.AddPart(new EntityWeaponModel
|
|
{ Damage = 22, Range = 700, AttacksPerSecond = 1.4f, Targets = TargetType.Air })
|
|
.AddPart(new EntityWeaponModel
|
|
{ Damage = 9, Range = 500, AttacksPerSecond = 1.4f, Targets = TargetType.Ground })
|
|
.AddPart(new EntityIdPassiveModel { Id = DataType.PASSIVE_GuidingAmber })
|
|
.AddPart(new EntityIdPassiveModel { Id = DataType.PASSIVE_WraithBowRange })
|
|
},
|
|
{
|
|
DataType.UNIT_Behemoth,
|
|
new EntityModel(DataType.UNIT_Behemoth, EntityType.Army)
|
|
.AddPart(new EntityInfoModel
|
|
{
|
|
Name = "Behemoth",
|
|
Descriptive = DescriptiveType.Skirmisher,
|
|
Description =
|
|
"""
|
|
Air unit. Attacks ground targets. Long-range attack.
|
|
"""
|
|
})
|
|
.AddPart(new EntityTierModel { Tier = 3.5f })
|
|
.AddPart(new EntityRequirementModel
|
|
{
|
|
Id = DataType.BUILDING_BoneCanopy,
|
|
Requirement = RequirementType.Production_Building
|
|
})
|
|
.AddPart(new EntityRequirementModel
|
|
{
|
|
Id = DataType.BUILDING_Neurocyte,
|
|
Requirement = RequirementType.Research_Building
|
|
})
|
|
.AddPart(new EntityHotkeyModel { Hotkey = "A", HoldSpace = true, HotkeyGroup = "Z" })
|
|
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_Aru })
|
|
.AddPart(new EntityProductionModel
|
|
{ Alloy = 190, Ether = 150, BuildTime = 40, ProducedBy = DataType.BUILDING_BoneCanopy })
|
|
.AddPart(new EntitySupplyModel { Takes = 8 })
|
|
.AddPart(new EntityVitalityModel { Health = 350, DefenseLayer = 100, Armor = ArmorType.Heavy })
|
|
.AddPart(new EntityMovementModel { Speed = 210, Movement = MovementType.Air })
|
|
.AddPart(new EntityWeaponModel
|
|
{
|
|
Damage = 21,
|
|
Range = 600, AttacksPerSecond = 0.588f, SecondsBetweenAttacks = 1.7f,
|
|
Cooldown = 6, Charges = 1,
|
|
Targets = TargetType.Ground
|
|
})
|
|
.AddPart(new EntityIdUpgradeModel { Id = DataType.UPGRADE_VitellineCysts })
|
|
.AddPart(new EntityIdPassiveModel { Id = DataType.PASSIVE_BehemothCapacity })
|
|
.AddPart(new EntityIdPassiveModel { Id = DataType.PASSIVE_QuitlStorage2 })
|
|
.AddPart(new EntityIdPassiveModel { Id = DataType.PASSIVE_FireQuitl })
|
|
},
|
|
{
|
|
DataType.SUMMON_Quitl,
|
|
new EntityModel(DataType.SUMMON_Quitl, EntityType.Army)
|
|
.AddPart(new EntityInfoModel { Name = "Quitl", Descriptive = DescriptiveType.Summon })
|
|
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_Aru })
|
|
.AddPart(new EntityVitalityModel { Health = 65, Armor = ArmorType.Light, Lasts = 8 })
|
|
.AddPart(new EntityMovementModel { Speed = 168, Movement = MovementType.Ground })
|
|
.AddPart(new EntityWeaponModel
|
|
{ Damage = 10, Range = 300, AttacksPerSecond = 1.124f, Targets = TargetType.Ground })
|
|
.AddPart(new EntityIdPassiveModel { Id = DataType.PASSIVE_Temporary })
|
|
}
|
|
};
|
|
}
|
|
} |