Fan website of IMMORTAL: Gates of Pyre.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

654 lines
35 KiB

using System.Collections.Generic;
using Model.Entity.Parts;
using Model.Types;
namespace Model.Entity.Data;
public partial class EntityData
{
public static Dictionary<string, EntityModel> GetResearchData()
{
return new Dictionary<string, EntityModel>
{
// Upgrades
// Q'Rath
{
DataType.UPGRADE_GreavesOfAhqar,
new EntityModel(DataType.UPGRADE_GreavesOfAhqar, EntityType.Tech)
.AddPart(new EntityInfoModel
{
Name = "Greaves Of Ahqar", Descriptive = DescriptiveType.Upgrade,
Description = "Increases the Sipari speed by 75."
})
.AddPart(new EntityHotkeyModel { Hotkey = "Q", HotkeyGroup = "X" })
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_QRath })
.AddPart(new EntityProductionModel
{ Alloy = 100, Ether = 100, BuildTime = 100, ProducedBy = DataType.BUILDING_Reliquary })
.AddPart(new EntityRequirementModel
{
Id = DataType.BUILDING_Reliquary,
Requirement = RequirementType.Production_Building
})
.AddPart(new EntityVanguardReplacedModel
{ ImmortalId = DataType.IMMORTAL_Orzum, ReplacedById = DataType.UPGRADE_FaithCastBlades })
},
{
DataType.UPGRADE_RadiantWard,
new EntityModel(DataType.UPGRADE_RadiantWard, EntityType.Tech)
.AddPart(new EntityInfoModel
{
Name = "Research Radiant Ward", Descriptive = DescriptiveType.Upgrade,
Description = "Unlocks the dervish's Radiant Ward ability"
})
.AddPart(new EntityHotkeyModel { Hotkey = "R", HoldSpace = true, HotkeyGroup = "X" })
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_QRath })
.AddPart(new EntityProductionModel
{ Alloy = 80, Ether = 80, BuildTime = 34, ProducedBy = DataType.BUILDING_HouseOfFadingSaints })
.AddPart(new EntityRequirementModel
{
Id = DataType.BUILDING_HouseOfFadingSaints,
Requirement = RequirementType.Production_Building
})
},
{
DataType.UPGRADE_FortifiedIcons,
new EntityModel(DataType.UPGRADE_FortifiedIcons, EntityType.Tech)
.AddPart(new EntityInfoModel
{
Name = "Fortified Icons", Descriptive = DescriptiveType.Upgrade,
Description =
"""
Sipari get more Shields.
Bonus Shields from <b style="color:white">Hallowed Ground</b>
"""
})
.AddPart(new EntityHotkeyModel { Hotkey = "Q", HotkeyGroup = "X", HoldSpace = true })
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_QRath })
.AddPart(new EntityProductionModel
{ Alloy = 125, Ether = 125, BuildTime = 60, ProducedBy = DataType.BUILDING_EyeOfAros })
.AddPart(new EntityRequirementModel
{
Id = DataType.BUILDING_EyeOfAros,
Requirement = RequirementType.Production_Building
})
.AddPart(new EntityRequirementModel
{
Id = DataType.BUILDING_Reliquary,
Requirement = RequirementType.Production_Building
})
.AddPart(new EntityVanguardReplacedModel
{ ImmortalId = DataType.IMMORTAL_Orzum, ReplacedById = DataType.UPGRADE_IconOfKhastEem })
},
{
DataType.UPGRADE_FaithCastBlades,
new EntityModel(DataType.UPGRADE_FaithCastBlades, EntityType.Tech)
.AddPart(new EntityInfoModel
{
Name = "Faith-Cast Blades", Descriptive = DescriptiveType.Upgrade,
Description =
"""
Zentari get more range attack when in Hallowed Ground.
"""
})
.AddPart(new EntityHotkeyModel { Hotkey = "Q", HotkeyGroup = "X" })
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_QRath })
.AddPart(new EntityProductionModel
{ Alloy = 50, Ether = 125, BuildTime = 60, ProducedBy = DataType.BUILDING_Reliquary })
.AddPart(new EntityRequirementModel
{ Id = DataType.BUILDING_Reliquary, Requirement = RequirementType.Research_Building })
.AddPart(new EntityVanguardAddedModel
{ ReplaceId = DataType.UPGRADE_GreavesOfAhqar, ImmortalId = DataType.IMMORTAL_Orzum })
},
{
DataType.UPGRADE_RelicOfTheWrathfulGaze,
new EntityModel(DataType.UPGRADE_RelicOfTheWrathfulGaze, EntityType.Tech)
.AddPart(new EntityInfoModel
{
Name = "Relic Of The Wrathful Gaze", Descriptive = DescriptiveType.Upgrade,
Description = "Increases the Castigator's anti-air weapon range."
})
.AddPart(new EntityHotkeyModel { Hotkey = "W", HotkeyGroup = "X", HoldSpace = true })
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_QRath })
.AddPart(new EntityProductionModel
{ Alloy = 75, Ether = 75, BuildTime = 29, ProducedBy = DataType.BUILDING_HouseOfFadingSaints })
.AddPart(new EntityRequirementModel
{
Id = DataType.BUILDING_HouseOfFadingSaints,
Requirement = RequirementType.Production_Building
})
},
{
DataType.UPGRADE_PsalmOfFire,
new EntityModel(DataType.UPGRADE_PsalmOfFire, EntityType.Tech)
.AddPart(new EntityInfoModel
{
Name = "Psalm of Fire", Descriptive = DescriptiveType.Upgrade,
Description = "Fire Singers get area damage."
})
.AddPart(new EntityHotkeyModel { Hotkey = "S", HotkeyGroup = "X", HoldSpace = true })
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_QRath })
.AddPart(new EntityProductionModel
{
Alloy = 125, Ether = 200, BuildTime = 64,
ProducedBy = DataType.BUILDING_KeeperOfTheHardenedFlames
})
.AddPart(new EntityRequirementModel
{
Id = DataType.BUILDING_KeeperOfTheHardenedFlames,
Requirement = RequirementType.Production_Building
})
},
{
DataType.UPGRADE_WindStep,
new EntityModel(DataType.UPGRADE_WindStep, EntityType.Tech)
.AddPart(new EntityInfoModel
{ Name = "Windstep", Descriptive = DescriptiveType.Upgrade, Description = "Unlocks windstep." })
.AddPart(new EntityHotkeyModel { Hotkey = "E", HotkeyGroup = "X" })
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_QRath })
.AddPart(new EntityProductionModel
{ Alloy = 125, Ether = 100, BuildTime = 75, ProducedBy = DataType.BUILDING_MonasteryOfIzur })
.AddPart(new EntityRequirementModel
{ Id = DataType.BUILDING_Reliquary, Requirement = RequirementType.Production_Building })
},
{
DataType.UPGRADE_ZephyrRange,
new EntityModel(DataType.UPGRADE_ZephyrRange, EntityType.Tech)
.AddPart(new EntityInfoModel
{
Name = "Zephyr Range", Descriptive = DescriptiveType.Upgrade,
Description = "Increases Zephyr's range by 100."
})
.AddPart(new EntityHotkeyModel { Hotkey = "W", HotkeyGroup = "X" })
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_QRath })
.AddPart(new EntityProductionModel
{ Alloy = 100, Ether = 50, BuildTime = 50, ProducedBy = DataType.BUILDING_Reliquary })
.AddPart(new EntityRequirementModel
{ Id = DataType.BUILDING_Reliquary, Requirement = RequirementType.Research_Building })
.AddPart(new EntityIdUpgradeModel { Id = DataType.UPGRADE_WindStep })
.AddPart(new EntityIdUpgradeModel { Id = DataType.UPGRADE_ZephyrRange })
},
{
DataType.UPGRADE_SiroccoScript,
new EntityModel(DataType.UPGRADE_SiroccoScript, EntityType.Tech)
.AddPart(new EntityInfoModel
{
Name = "Sirocco Script", Descriptive = DescriptiveType.Upgrade,
Description = "Grant's the Dervish Sirocco Script"
})
.AddPart(new EntityHotkeyModel { Hotkey = "R", HotkeyGroup = "X", HoldSpace = true })
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_QRath })
.AddPart(new EntityProductionModel
{
Alloy = 100, Ether = 125, BuildTime = 60, ProducedBy = DataType.BUILDING_HouseOfFadingSaints
})
.AddPart(new EntityRequirementModel
{
Id = DataType.BUILDING_HouseOfFadingSaints,
Requirement = RequirementType.Production_Building
})
},
{
DataType.UPGRADE_IconOfTheEnduringVigil,
new EntityModel(DataType.UPGRADE_IconOfTheEnduringVigil, EntityType.Tech)
.AddPart(new EntityInfoModel
{
Name = "Icon of the Enduring Vigil", Descriptive = DescriptiveType.Upgrade,
Description = "The Dervish's Radiant Wards become permanent."
})
.AddPart(new EntityHotkeyModel { Hotkey = "F", HotkeyGroup = "X", HoldSpace = true })
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_QRath })
.AddPart(new EntityProductionModel
{
Alloy = 100, Ether = 100, BuildTime = 34, ProducedBy = DataType.BUILDING_HouseOfFadingSaints
})
.AddPart(new EntityRequirementModel
{
Id = DataType.BUILDING_HouseOfFadingSaints,
Requirement = RequirementType.Production_Building
})
},
{
DataType.UPGRADE_AbsolverHealthUpgrade,
new EntityModel(DataType.UPGRADE_AbsolverHealthUpgrade, EntityType.Tech)
.AddPart(new EntityInfoModel
{
Name = "Absolver Health Upgrade", Descriptive = DescriptiveType.Upgrade,
Description = "Absolvers get more HP and damage reductions"
})
.AddPart(new EntityHotkeyModel { Hotkey = "F", HotkeyGroup = "X" })
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_QRath })
.AddPart(new EntityProductionModel
{
Alloy = 150, Ether = 150, BuildTime = 90, ProducedBy = DataType.BUILDING_HouseOfFadingSaints
})
.AddPart(new EntityRequirementModel
{
Id = DataType.BUILDING_HouseOfFadingSaints,
Requirement = RequirementType.Production_Building
})
},
{
DataType.UPGRADE_Awestrike,
new EntityModel(DataType.UPGRADE_Awestrike, EntityType.Tech)
.AddPart(new EntityInfoModel
{
Name = "Awestrike", Descriptive = DescriptiveType.Upgrade,
Description = "Unlocks a damage spell for Shar'u"
})
.AddPart(new EntityHotkeyModel { Hotkey = "R", HotkeyGroup = "X" })
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_QRath })
.AddPart(new EntityProductionModel
{
Alloy = 125, Ether = 150, BuildTime = 45, ProducedBy = DataType.BUILDING_HouseOfFadingSaints
})
.AddPart(new EntityRequirementModel
{
Id = DataType.BUILDING_EyeOfAros,
Requirement = RequirementType.Production_Building
})
},
{
DataType.UPGRADE_IconOfKhastEem,
new EntityModel(DataType.UPGRADE_IconOfKhastEem, EntityType.Tech)
.AddPart(new EntityInfoModel
{
Name = "Icon of Khast'Eem", Descriptive = DescriptiveType.Upgrade,
Description = "Grants the Zentari shields and flat armor reduction."
})
.AddPart(new EntityHotkeyModel { Hotkey = "Q", HoldSpace = true, HotkeyGroup = "X" })
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_QRath })
.AddPart(new EntityProductionModel
{ Alloy = 100, Ether = 100, BuildTime = 43, ProducedBy = DataType.BUILDING_EyeOfAros })
.AddPart(new EntityRequirementModel
{
Id = DataType.BUILDING_EyeOfAros,
Requirement = RequirementType.Production_Building
})
.AddPart(new EntityVanguardAddedModel
{ ReplaceId = DataType.UPGRADE_FortifiedIcons, ImmortalId = DataType.IMMORTAL_Orzum })
},
{
DataType.UPGRADE_WingsOfTheKenLatir,
new EntityModel(DataType.UPGRADE_WingsOfTheKenLatir, EntityType.Tech)
.AddPart(new EntityInfoModel
{
Name = "Wings of the Ken'Latir", Descriptive = DescriptiveType.Upgrade,
Description = "Wardens use their empowered attacks more often."
})
.AddPart(new EntityHotkeyModel { Hotkey = "E", HoldSpace = true, HotkeyGroup = "X" })
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_QRath })
.AddPart(new EntityProductionModel
{ Alloy = 150, Ether = 100, BuildTime = 60, ProducedBy = DataType.BUILDING_BearerOfTheCrown })
.AddPart(new EntityRequirementModel
{
Id = DataType.BUILDING_EyeOfAros, Requirement = RequirementType.Production_Building
})
},
{
DataType.UPGRADE_TitheBlades,
new EntityModel(DataType.UPGRADE_TitheBlades, EntityType.Tech)
.AddPart(new EntityInfoModel
{
Name = "Tithe Blades", Descriptive = DescriptiveType.Upgrade,
Description = "Unlocks a utility ability for Thrones."
})
.AddPart(new EntityHotkeyModel { Hotkey = "A", HoldSpace = true, HotkeyGroup = "X" })
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_QRath })
.AddPart(new EntityProductionModel
{ Alloy = 200, Ether = 200, BuildTime = 120, ProducedBy = DataType.BUILDING_BearerOfTheCrown })
.AddPart(new EntityRequirementModel
{
Id = DataType.BUILDING_BearerOfTheCrown, Requirement = RequirementType.Production_Building
})
},
// Upgrades
// Aru
{
DataType.UPGRADE_Offering,
new EntityModel(DataType.UPGRADE_Offering, EntityType.Tech)
.AddPart(new EntityInfoModel
{
Name = "Offering",
Descriptive = DescriptiveType.Upgrade,
Description = "Unlocks Offering"
})
.AddPart(new EntityHotkeyModel { Hotkey = "W", HotkeyGroup = "X" })
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_Aru })
.AddPart(new EntityRequirementModel
{
Id = DataType.BUILDING_AltarOfTheWorthy,
Requirement = RequirementType.Research_Building
})
.AddPart(new EntityRequirementModel
{
Id = DataType.BUILDING_Neurocyte,
Requirement = RequirementType.Production_Building
})
.AddPart(new EntityProductionModel
{ Alloy = 100, Ether = 75, BuildTime = 60, ProducedBy = DataType.BUILDING_Neurocyte })
},
{
DataType.UPGRADE_PursuitLigaments,
new EntityModel(DataType.UPGRADE_PursuitLigaments, EntityType.Tech)
.AddPart(new EntityInfoModel
{
Name = "Pursuit Ligaments",
Description =
"""
Ichors get more movement speed.
""",
Descriptive = DescriptiveType.Upgrade
})
.AddPart(new EntityHotkeyModel { Hotkey = "R", HotkeyGroup = "X" })
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_Aru })
.AddPart(new EntityRequirementModel
{
Id = DataType.BUILDING_Neurocyte,
Requirement = RequirementType.Research_Building
})
.AddPart(new EntityProductionModel
{ Alloy = 100, Ether = 100, BuildTime = 80, ProducedBy = DataType.BUILDING_Neurocyte })
},
{
DataType.UPGRADE_ResinantSpeed,
new EntityModel(DataType.UPGRADE_ResinantSpeed, EntityType.Tech)
.AddPart(new EntityInfoModel { Name = "Resinant Speed", Descriptive = DescriptiveType.Upgrade })
.AddPart(new EntityHotkeyModel { Hotkey = "F", HotkeyGroup = "X" })
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_Aru })
.AddPart(new EntityRequirementModel
{
Id = DataType.BUILDING_Neurocyte,
Requirement = RequirementType.Research_Building
})
.AddPart(new EntityRequirementModel
{
Id = DataType.BUILDING_AmberWomb,
Requirement = RequirementType.Research_Building
})
.AddPart(new EntityProductionModel
{ Alloy = 100, Ether = 100, BuildTime = 60, ProducedBy = DataType.BUILDING_Neurocyte })
},
{
DataType.UPGRADE_RootShepherdHidden,
new EntityModel(DataType.UPGRADE_RootShepherdHidden, EntityType.Tech)
.AddPart(new EntityInfoModel
{ Name = "Root Shepherd Hidden", Descriptive = DescriptiveType.Upgrade })
.AddPart(new EntityHotkeyModel { Hotkey = "R", HotkeyGroup = "X", HoldSpace = true })
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_Aru })
.AddPart(new EntityRequirementModel
{
Id = DataType.BUILDING_Neurocyte,
Requirement = RequirementType.Research_Building
})
.AddPart(new EntityRequirementModel
{
Id = DataType.BUILDING_AmberWomb,
Requirement = RequirementType.Research_Building
})
.AddPart(new EntityProductionModel
{ Alloy = 100, Ether = 100, BuildTime = 60, ProducedBy = DataType.BUILDING_Neurocyte })
},
{
DataType.UPGRADE_RootShepherdSpeed,
new EntityModel(DataType.UPGRADE_RootShepherdSpeed, EntityType.Tech)
.AddPart(new EntityInfoModel
{ Name = "Root Shepherd Speed", Descriptive = DescriptiveType.Upgrade })
.AddPart(new EntityHotkeyModel { Hotkey = "R", HotkeyGroup = "X", HoldSpace = true })
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_Aru })
.AddPart(new EntityRequirementModel
{
Id = DataType.BUILDING_Neurocyte,
Requirement = RequirementType.Research_Building
})
.AddPart(new EntityRequirementModel
{
Id = DataType.BUILDING_AmberWomb,
Requirement = RequirementType.Research_Building
})
.AddPart(new EntityProductionModel
{ Alloy = 100, Ether = 100, BuildTime = 80, ProducedBy = DataType.BUILDING_Neurocyte })
},
{
DataType.UPGRADE_EthericFibers,
new EntityModel(DataType.UPGRADE_EthericFibers, EntityType.Tech)
.AddPart(new EntityInfoModel { Name = "Etheric Fibers", Descriptive = DescriptiveType.Upgrade })
.AddPart(new EntityHotkeyModel { Hotkey = "Q", HotkeyGroup = "X" })
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_Aru })
.AddPart(new EntityRequirementModel
{
Id = DataType.BUILDING_Neurocyte,
Requirement = RequirementType.Research_Building
})
.AddPart(new EntityProductionModel
{ Alloy = 75, Ether = 100, BuildTime = 75, ProducedBy = DataType.BUILDING_Neurocyte })
},
{
DataType.UPGRADE_ObstructingSwarm,
new EntityModel(DataType.UPGRADE_ObstructingSwarm, EntityType.Tech)
.AddPart(new EntityInfoModel { Name = "Obstructing Swarm", Descriptive = DescriptiveType.Upgrade })
.AddPart(new EntityHotkeyModel { Hotkey = "E", HotkeyGroup = "X", HoldSpace = true })
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_Aru })
.AddPart(new EntityRequirementModel
{
Id = DataType.BUILDING_Neurocyte,
Requirement = RequirementType.Research_Building
})
.AddPart(new EntityRequirementModel
{
Id = DataType.BUILDING_AmberWomb,
Requirement = RequirementType.Research_Building
})
.AddPart(new EntityProductionModel
{ Alloy = 150, Ether = 100, BuildTime = 100, ProducedBy = DataType.BUILDING_Neurocyte })
},
{
DataType.UPGRADE_Hematoma,
new EntityModel(DataType.UPGRADE_Hematoma, EntityType.Tech)
.AddPart(new EntityInfoModel { Name = "Hematoma", Descriptive = DescriptiveType.Upgrade })
.AddPart(new EntityHotkeyModel { Hotkey = "E", HotkeyGroup = "X", HoldSpace = true })
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_Aru })
.AddPart(new EntityRequirementModel
{
Id = DataType.BUILDING_Neurocyte,
Requirement = RequirementType.Research_Building
})
.AddPart(new EntityRequirementModel
{
Id = DataType.BUILDING_AmberWomb,
Requirement = RequirementType.Research_Building
})
.AddPart(new EntityProductionModel
{ Alloy = 125, Ether = 125, BuildTime = 45, ProducedBy = DataType.BUILDING_Neurocyte })
},
{
DataType.UPGRADE_VitellineCysts,
new EntityModel(DataType.UPGRADE_VitellineCysts, EntityType.Tech)
.AddPart(new EntityInfoModel { Name = "Vitelline Cysts", Descriptive = DescriptiveType.Upgrade })
.AddPart(new EntityHotkeyModel { Hotkey = "A", HotkeyGroup = "X", HoldSpace = true })
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_Aru })
.AddPart(new EntityRequirementModel
{
Id = DataType.BUILDING_DeepNest,
Requirement = RequirementType.Research_Building
})
.AddPart(new EntityProductionModel
{ Alloy = 200, Ether = 200, BuildTime = 46, ProducedBy = DataType.BUILDING_DeepNest })
},
{
DataType.UPGRADE_HyperAdrenoceptors,
new EntityModel(DataType.UPGRADE_HyperAdrenoceptors, EntityType.Tech)
.AddPart(new EntityInfoModel
{ Name = "Hyper Adrenoceptors", Descriptive = DescriptiveType.Upgrade })
.AddPart(new EntityHotkeyModel { Hotkey = "F", HotkeyGroup = "X", HoldSpace = true })
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_Aru })
.AddPart(new EntityRequirementModel
{
Id = DataType.BUILDING_DeepNest,
Requirement = RequirementType.Research_Building
})
.AddPart(new EntityProductionModel
{ Alloy = 100, Ether = 100, BuildTime = 60, ProducedBy = DataType.BUILDING_DeepNest })
},
{
DataType.UPGRADE_EoxBowstring,
new EntityModel(DataType.UPGRADE_EoxBowstring, EntityType.Tech)
.AddPart(new EntityInfoModel
{
Name = "Eox Bowstring",
Description = "Increase's the range of the Wraith Bow anti-air attack.",
Descriptive = DescriptiveType.Upgrade
})
.AddPart(new EntityHotkeyModel { Hotkey = "W", HotkeyGroup = "X", HoldSpace = true })
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_Aru })
.AddPart(new EntityRequirementModel
{
Id = DataType.BUILDING_Neurocyte,
Requirement = RequirementType.Research_Building
})
.AddPart(new EntityProductionModel
{ Alloy = 50, Ether = 100, BuildTime = 29, ProducedBy = DataType.BUILDING_Neurocyte })
},
{
DataType.UPGRADE_SporeBurst,
new EntityModel(DataType.UPGRADE_SporeBurst, EntityType.Tech)
.AddPart(new EntityInfoModel
{
Name = "Spore Burst",
Description = "Aerovores and Omnivores get area damage vs air units.",
Descriptive = DescriptiveType.Upgrade
})
.AddPart(new EntityHotkeyModel { Hotkey = "S", HotkeyGroup = "X", HoldSpace = true })
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_Aru })
.AddPart(new EntityRequirementModel
{
Id = DataType.BUILDING_RootCradle,
Requirement = RequirementType.Research_Building
})
.AddPart(new EntityProductionModel
{ Alloy = 100, Ether = 150, BuildTime = 64, ProducedBy = DataType.BUILDING_RootCradle })
},
{
DataType.UPGRADE_Ambush,
new EntityModel(DataType.UPGRADE_Ambush, EntityType.Tech)
.AddPart(new EntityInfoModel
{
Name = "Research Ambush",
Description =
"""
Bone Stalkers get double damage for a few seconds after attack while Hidden.
""",
Descriptive = DescriptiveType.Upgrade
})
.AddPart(new EntityHotkeyModel { Hotkey = "W", HotkeyGroup = "X", HoldSpace = false })
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_Aru })
.AddPart(new EntityProductionModel
{ Alloy = 100, Ether = 75, BuildTime = 60, ProducedBy = DataType.BUILDING_RedVale })
.AddPart(new EntityRequirementModel
{
Id = DataType.BUILDING_RedVale,
Requirement = RequirementType.Research_Building
})
},
{
DataType.UPGRADE_BloodPlague,
new EntityModel(DataType.UPGRADE_BloodPlague, EntityType.Tech)
.AddPart(new EntityInfoModel
{
Name = "Blood Plague", Descriptive = DescriptiveType.Upgrade,
Description = "Unlocks Blood Plague"
})
.AddPart(new EntityHotkeyModel { Hotkey = "R", HotkeyGroup = "X", HoldSpace = true })
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_Aru })
.AddPart(new EntityRequirementModel
{
Id = DataType.BUILDING_RedVale,
Requirement = RequirementType.Research_Building
})
.AddPart(new EntityProductionModel
{ Alloy = 100, Ether = 150, BuildTime = 100, ProducedBy = DataType.BUILDING_RedVale })
.AddPart(new EntityVanguardReplacedModel
{ ImmortalId = DataType.IMMORTAL_Xol, ReplacedById = DataType.ABILITY_BirthingStorm })
},
{
DataType.UPGRADE_GodphageDamage,
new EntityModel(DataType.UPGRADE_GodphageDamage, EntityType.Tech)
.AddPart(new EntityInfoModel { Name = "Godphage Damage", Descriptive = DescriptiveType.Upgrade })
.AddPart(new EntityHotkeyModel { Hotkey = "E", HotkeyGroup = "X" })
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_Aru })
.AddPart(new EntityRequirementModel
{
Id = DataType.BUILDING_DeepNest,
Requirement = RequirementType.Research_Building
})
.AddPart(new EntityProductionModel
{ Alloy = 250, Ether = 250, BuildTime = 100, ProducedBy = DataType.BUILDING_DeepNest })
},
{
DataType.UPGRADE_BirthingStorm,
new EntityModel(DataType.UPGRADE_BirthingStorm, EntityType.Tech)
.AddPart(new EntityInfoModel { Name = "Birthing Storm", Descriptive = DescriptiveType.Upgrade })
.AddPart(new EntityHotkeyModel { Hotkey = "F", HotkeyGroup = "X", HoldSpace = true })
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_Aru })
.AddPart(new EntityRequirementModel
{
Id = DataType.BUILDING_RedVale,
Requirement = RequirementType.Research_Building
})
.AddPart(new EntityProductionModel
{ Alloy = 100, Ether = 150, BuildTime = 100, ProducedBy = DataType.BUILDING_RedVale })
.AddPart(new EntityVanguardAddedModel
{ ImmortalId = DataType.IMMORTAL_Mala, ReplaceId = DataType.ABILITY_BloodPlague })
},
{
DataType.UPGRADE_GENERIC_Attack1,
new EntityModel(DataType.UPGRADE_GENERIC_Attack1, EntityType.Tech)
.AddPart(new EntityInfoModel { Name = "Aru Attack Level 1", Descriptive = DescriptiveType.Upgrade })
.AddPart(new EntityHotkeyModel { Hotkey = "A", HotkeyGroup = "X", HoldSpace = true })
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_Aru })
.AddPart(new EntityRequirementModel
{
Id = DataType.BUILDING_RedVale,
Requirement = RequirementType.Research_Building
})
.AddPart(new EntityProductionModel
{ Alloy = 125, Ether = 125, BuildTime = 114, ProducedBy = DataType.BUILDING_RootCradle })
},
{
DataType.UPGRADE_GENERIC_Defense1,
new EntityModel(DataType.UPGRADE_GENERIC_Defense1, EntityType.Tech)
.AddPart(new EntityInfoModel
{ Name = "Aru Defense Level 1", Descriptive = DescriptiveType.Upgrade })
.AddPart(new EntityHotkeyModel { Hotkey = "S", HotkeyGroup = "X", HoldSpace = true })
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_Aru })
.AddPart(new EntityRequirementModel
{
Id = DataType.BUILDING_RedVale,
Requirement = RequirementType.Research_Building
})
.AddPart(new EntityProductionModel
{ Alloy = 125, Ether = 125, BuildTime = 114, ProducedBy = DataType.BUILDING_RootCradle })
}
};
}
}