Browse Source

More data plus example flavour text UI

main
Jonathan 11 months ago
parent
commit
4b2fe6d551
  1. 11
      IGP/Pages/Database/Entity/Parts/EntityHeaderComponent.razor
  2. 15
      IGP/Pages/Database/Entity/Parts/EntityInfoComponent.razor
  3. 460
      Model/Entity/Data/DATA.cs
  4. 57
      Model/Entity/Data/Ids_Entity.cs
  5. 9
      Model/Entity/Types/DescriptiveType.cs

11
IGP/Pages/Database/Entity/Parts/EntityHeaderComponent.razor

@ -23,6 +23,17 @@ else
</span>
}
</div>
<div>
@if (Entity.Info().FlavorText != "")
{
<div>
<i> @((MarkupString)Entity.Info().FlavorText)</i>
</div>
}
</div>
</div>
<style>

15
IGP/Pages/Database/Entity/Parts/EntityInfoComponent.razor

@ -14,6 +14,17 @@
</div>
}
@if (Entity.Info().FlavorText != "")
{
<div>
<i>@((MarkupString)Entity.Info().FlavorText)</i>
</div>
}
<div>
Test
</div>
<div class="infoDisplayContainer">
<div>
@ -64,7 +75,6 @@ else
</div>
}
<div class="infoDisplayContainer">
<div>
@if (Entity.Faction() != null)
@ -96,8 +106,11 @@ else
</div>
}
</div>
</EntityDisplayComponent>
<style>
.infoDisplayContainer {
display: flex;

460
Model/Entity/Data/DATA.cs

@ -6,7 +6,7 @@ using Newtonsoft.Json;
namespace Model.Entity.Data;
public class DATA
public abstract class DATA
{
public static string AsJson()
{
@ -240,6 +240,23 @@ public class DATA
},
// Immortals
// Aru
{
DataType.IMMORTAL_Atzlan,
new EntityModel(DataType.IMMORTAL_Atzlan, EntityType.Immortal)
.AddPart(new EntityInfoModel { Name = "Aru" })
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_Aru })
.AddPart(new EntityHarvestModel
{
Resource = ResourceType.Pyre, HarvestedPerInterval = 1, HarvestDelay = 3,
RequiresWorker = false, Slots = 1, TotalAmount = -1
})
.AddPart(new EntityIdPyreSpellModel { Id = DataType.ISPELL_SummonCitadel })
.AddPart(new EntityIdPyreSpellModel { Id = DataType.ISPELL_ProphetOfTheRoots })
.AddPart(new EntityIdPyreSpellModel { Id = DataType.ISPELL_WallOfRoots })
.AddPart(new EntityIdPyreSpellModel { Id = DataType.ISPELL_SummonDeepWyrm })
.AddPart(new EntityIdVanguardModel { Id = DataType.VANGUARD_RootShepard_Atzlan })
.AddPart(new EntityIdVanguardModel { Id = DataType.VANGUARD_Resinant_Atzlan })
},
{
DataType.IMMORTAL_Mala,
new EntityModel(DataType.IMMORTAL_Mala, EntityType.Immortal)
@ -425,7 +442,7 @@ public class DATA
DataType.STARTING_TownHall_Aru,
new EntityModel(DataType.STARTING_TownHall_Aru, EntityType.Building, true)
.AddPart(new EntityInfoModel
{ Name = "Grove Heart (Starting)", Descriptive = DescriptiveType.Town_Hall_Starting })
{ Name = "Grove Heart (Starting)", Descriptive = DescriptiveType.TownHall_Starting })
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_Aru })
.AddPart(new EntityVitalityModel
{ Health = 2000, DefenseLayer = 400, Armor = ArmorType.Heavy, IsStructure = true })
@ -442,7 +459,7 @@ public class DATA
DataType.STARTING_TownHall_QRath,
new EntityModel(DataType.STARTING_TownHall_QRath, EntityType.Building, true)
.AddPart(new EntityInfoModel
{ Name = "Acropolis (Starting)", Descriptive = DescriptiveType.Town_Hall_Starting })
{ Name = "Acropolis (Starting)", Descriptive = DescriptiveType.TownHall_Starting })
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_QRath })
.AddPart(new EntityVitalityModel
{ Health = 1600, DefenseLayer = 800, Armor = ArmorType.Heavy, IsStructure = true })
@ -510,19 +527,17 @@ public class DATA
.AddPart(new EntityHotkeyModel { Hotkey = "R", HoldSpace = true, HotkeyGroup = "Z" })
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_QRath })
.AddPart(new EntityProductionModel
{ Alloy = 200, Ether = 125, BuildTime = 32, ProducedBy = DataType.BUILDING_Angelarium })
.AddPart(new EntityVitalityModel { Health = 350, DefenseLayer = 120, Armor = ArmorType.Heavy })
{ 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 = 30, MediumDamage = 35, HeavyDamage = 40, Range = 600, SecondsBetweenAttacks = 1.8f,
AttacksPerSecond = 0.637f,
Damage = 35, MediumDamage = 40, HeavyDamage = 45, Range = 450, SecondsBetweenAttacks = 2.1f,
Targets = TargetType.Ground
})
.AddPart(new EntityWeaponModel
{
Damage = 40, MediumDamage = 45, HeavyDamage = 50, Range = 600, SecondsBetweenAttacks = 1.8f,
AttacksPerSecond = 0.637f,
Damage = 125, Range = 450, SecondsBetweenAttacks = 2f,
Targets = TargetType.Ground, HasSplash = true
})
.AddPart(new EntityRequirementModel
@ -610,7 +625,7 @@ public class DATA
{
DataType.VANGUARD_Incubator_Mala,
new EntityModel(DataType.VANGUARD_Incubator_Mala, EntityType.Army)
.AddPart(new EntityInfoModel { Name = "Incubator", Descriptive = DescriptiveType.Force_Multiplier })
.AddPart(new EntityInfoModel { Name = "Incubator", Descriptive = DescriptiveType.Support })
.AddPart(new EntityTierModel { Tier = 2 })
.AddPart(new EntityRequirementModel
{
@ -625,17 +640,18 @@ public class DATA
{ Alloy = 175, Ether = 50, BuildTime = 28, ProducedBy = DataType.BUILDING_AmberWomb })
.AddPart(new EntitySupplyModel { Takes = 5 })
.AddPart(new EntityVitalityModel
{ Health = 160, DefenseLayer = 40, Armor = ArmorType.Medium, IsEtheric = false })
{ 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, AttacksPerSecond = 0.606f, Targets = TargetType.Ground })
{ 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.Elite_Caster })
.AddPart(new EntityInfoModel { Name = "Dread Sister", Descriptive = DescriptiveType.EliteCaster })
.AddPart(new EntityTierModel { Tier = 3 })
.AddPart(new EntityRequirementModel
{
@ -652,19 +668,28 @@ public class DATA
.AddPart(new EntityVanguardAddedModel
{ ReplaceId = DataType.UNIT_RedSeer, ImmortalId = DataType.IMMORTAL_Mala })
.AddPart(new EntityProductionModel
{ Alloy = 60, Ether = 150, BuildTime = 45, ProducedBy = DataType.BUILDING_AltarOfTheWorthy })
{ Alloy = 60, Ether = 150, BuildTime = 36, ProducedBy = DataType.BUILDING_AltarOfTheWorthy })
.AddPart(new EntitySupplyModel { Takes = 4 })
.AddPart(new EntityVitalityModel
{
Energy = 100, Health = 60, DefenseLayer = 75, Armor = ArmorType.Light,
Energy = 100, Health = 90, DefenseLayer = 110, Armor = ArmorType.Light,
Defense = DefenseType.Overgrowth, IsEtheric = false
})
.AddPart(new EntityMovementModel { Speed = 315, Movement = MovementType.Ground })
.AddPart(new EntityMovementModel { Speed = 360, Movement = MovementType.Ground })
.AddPart(new EntityWeaponModel
{ Damage = 14, Range = 750, AttacksPerSecond = 0.714f, Targets = TargetType.Ground })
{ 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_SummonSiegeMaw })
.AddPart(new EntityIdAbilityModel { Id = DataType.ABILITY_DeployDreadSister })
.AddPart(new EntityIdUpgradeModel { Id = DataType.UPGRADE_BirthingStorm })
.AddPart(new EntityIdPassiveModel { Id = DataType.PASSIVE_CastingFromBlood })
},
@ -701,7 +726,7 @@ public class DATA
{
DataType.VANGUARD_Resinant_Atzlan,
new EntityModel(DataType.VANGUARD_Resinant_Atzlan, EntityType.Army)
.AddPart(new EntityInfoModel { Name = "Resinant", Descriptive = DescriptiveType.Zone_Control })
.AddPart(new EntityInfoModel { Name = "Resinant", Descriptive = DescriptiveType.ZoneControl })
.AddPart(new EntityTierModel { Tier = 2.5f })
.AddPart(new EntityRequirementModel
{
@ -794,7 +819,6 @@ public class DATA
Damage = 40, Range = 100, AttacksPerSecond = 1,
Targets = TargetType.Ground
})
.AddPart(new EntityIdAbilityModel { Id = DataType.ABILITY_LethalBond })
.AddPart(new EntityIdPassiveModel { Id = DataType.PASSIVE_CastingFromBlood })
},
// Units
@ -852,14 +876,18 @@ public class DATA
{
Name = "Magi", Descriptive = DescriptiveType.Force_Multiplier,
Description =
"Support Caster (Ground Unit) - Heal allies. Can deploy to create Hallowed Ground."
"""
Ground Spellcaster. Casts healing/utility spells. Protector.<br/>
<br/>
Deploy to get Sheilds and create <b style="color:white">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 = 75, Ether = 75, BuildTime = 28, ProducedBy = DataType.BUILDING_LegionHall })
.AddPart(new EntitySupplyModel { Takes = 3 })
{ 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
@ -873,12 +901,12 @@ public class DATA
Requirement = RequirementType.Production_Building
})
.AddPart(new EntityVitalityModel
{ Energy = 100, Health = 50, DefenseLayer = 50, Armor = ArmorType.Light })
.AddPart(new EntityMovementModel { Speed = 335, Movement = MovementType.Ground })
{ Energy = 100, Health = 75, DefenseLayer = 75, Armor = ArmorType.Light })
.AddPart(new EntityMovementModel { Speed = 420, Movement = MovementType.Ground })
.AddPart(new EntityWeaponModel
{
Damage = 7, Range = 600, SecondsBetweenAttacks = 0.94f, AttacksPerSecond = 1.408f, Targets =
TargetType.All
Damage = 6, Range = 600, SecondsBetweenAttacks = 1.5f,
Targets = TargetType.All
})
.AddPart(new EntityIdAbilityModel { Id = DataType.ABILITY_DeployMagi })
.AddPart(new EntityIdAbilityModel { Id = DataType.ABILITY_MobilizeQrath })
@ -957,7 +985,7 @@ public class DATA
new EntityModel(DataType.UNIT_Absolver, EntityType.Army)
.AddPart(new EntityInfoModel
{
Name = "Absolver", Descriptive = DescriptiveType.Zone_Control,
Name = "Absolver", Descriptive = DescriptiveType.ZoneControl,
Description =
"Zone Control (Ground Unit) - Deploys to gain increased rate of fire to hold a position. Can only attack ground.",
Notes = "Deploy time is 2 seconds. Mobilize time is 1.5 seconds."
@ -994,7 +1022,7 @@ public class DATA
new EntityModel(DataType.UNIT_Castigator, EntityType.Army)
.AddPart(new EntityInfoModel
{
Name = "Castigator", Descriptive = DescriptiveType.Air_Denial,
Name = "Castigator", Descriptive = DescriptiveType.AirDenial,
Description =
"Air Denial (Ground Unit) - A tough walker with a powerful, long-range anti-air attack."
})
@ -1029,7 +1057,9 @@ public class DATA
{
Name = "Hallower", Descriptive = DescriptiveType.Dislodger,
Description =
"Dislodger (Ground Unit) - Long range artillery that can break entrenched enemy positions. Can only attack ground."
"""
Ground Unit. Attack ground targets. Long-range attack.
"""
})
.AddPart(new EntityTierModel { Tier = 2.5f })
.AddPart(new EntityHotkeyModel { Hotkey = "Q", HoldSpace = true, HotkeyGroup = "Z" })
@ -1037,7 +1067,7 @@ public class DATA
{ ImmortalId = DataType.IMMORTAL_Ajari, ReplacedById = DataType.VANGUARD_ArkMother_Ajari })
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_QRath })
.AddPart(new EntityProductionModel
{ Alloy = 125, Ether = 100, BuildTime = 28, ProducedBy = DataType.BUILDING_SoulFoundry })
{ Alloy = 150, Ether = 100, BuildTime = 32, ProducedBy = DataType.BUILDING_SoulFoundry })
.AddPart(new EntitySupplyModel { Takes = 5 })
.AddPart(new EntityRequirementModel
{
@ -1116,8 +1146,8 @@ public class DATA
Damage = 120, Range = 500, SecondsBetweenAttacks = 2.5f,
Targets = TargetType.All
})
.AddPart(new EntityIdAbilityModel { Id = DataType.ABILITY_BladesOfTheGodhead })
.AddPart(new EntityIdUpgradeModel { Id = DataType.UPGRADE_BladesOfTheGodhead })
.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 })
},
@ -1154,7 +1184,7 @@ public class DATA
{
DataType.UNIT_SharU,
new EntityModel(DataType.UNIT_SharU, EntityType.Army)
.AddPart(new EntityInfoModel { Name = "Shar'U", Descriptive = DescriptiveType.Elite_Caster })
.AddPart(new EntityInfoModel { Name = "Shar'U", Descriptive = DescriptiveType.EliteCaster })
.AddPart(new EntityTierModel { Tier = 3.5f })
.AddPart(new EntityHotkeyModel { Hotkey = "F", HoldSpace = true, HotkeyGroup = "Z" })
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_QRath })
@ -1296,13 +1326,43 @@ public class DATA
Targets = TargetType.Ground
})
.AddPart(new EntityIdPassiveModel { Id = DataType.PASSIVE_QuenchingScythes })
.AddPart(new EntityIdPassiveModel { Id = DataType.ABILITY_CullingStrike })
.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 })
.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.Elite_Caster })
.AddPart(new EntityInfoModel { Name = "Red Seer", Descriptive = DescriptiveType.EliteCaster })
.AddPart(new EntityTierModel { Tier = 3 })
.AddPart(new EntityVanguardReplacedModel
{ ImmortalId = DataType.IMMORTAL_Mala, ReplacedById = DataType.VANGUARD_DreadSister_Mala })
@ -1342,7 +1402,7 @@ public class DATA
Name = "Underspine", Descriptive = DescriptiveType.Force_Multiplier,
Notes = ""
})
.AddPart(new EntityTierModel { Tier = 2 })
.AddPart(new EntityTierModel { Tier = 1.5f })
.AddPart(new EntityVanguardReplacedModel
{ ImmortalId = DataType.IMMORTAL_Mala, ReplacedById = DataType.VANGUARD_Incubator_Mala })
.AddPart(new EntityRequirementModel
@ -1367,9 +1427,9 @@ public class DATA
Damage = 2, Range = 600, SecondsBetweenAttacks = 1.253f, Targets =
TargetType.All
})
.AddPart(new EntityIdAbilityModel { Id = DataType.ABILITY_DeployMobilizeUnderSpine })
.AddPart(new EntityIdAbilityModel { Id = DataType.ABILITY_MobilizeAru })
.AddPart(new EntityIdPassiveModel { Id = DataType.PASSIVE_OssifyingSwarm })
.AddPart(new EntityIdAbilityModel { Id = DataType.ABILITY_ObstructingSwarm})
},
{
DataType.UNIT_Ichor,
@ -1393,7 +1453,6 @@ public class DATA
Damage = 18, LightDamage = 38, MediumDamage = 28, Range = 500, AttacksPerSecond = 0.7f,
Targets = TargetType.Ground, SecondsBetweenAttacks = 1.429f
})
.AddPart(new EntityIdUpgradeModel { Id = DataType.UPGRADE_DenInstinct })
.AddPart(new EntityIdUpgradeModel { Id = DataType.UPGRADE_PursuitLigaments })
.AddPart(new EntityIdPassiveModel { Id = DataType.PASSIVE_ExternalDigestion })
.AddPart(new EntityIdPassiveModel { Id = DataType.PASSIVE_PursuitLigaments })
@ -1457,7 +1516,7 @@ public class DATA
{
DataType.UNIT_WraithBow,
new EntityModel(DataType.UNIT_WraithBow, EntityType.Army)
.AddPart(new EntityInfoModel { Name = "Wraith Bow", Descriptive = DescriptiveType.Air_Denial })
.AddPart(new EntityInfoModel { Name = "Wraith Bow", Descriptive = DescriptiveType.AirDenial })
.AddPart(new EntityTierModel { Tier = 2 })
.AddPart(new EntityRequirementModel
{
@ -1604,12 +1663,15 @@ public class DATA
.AddPart(new EntityInfoModel
{
Name = "Faith-Cast Blades", Descriptive = DescriptiveType.Upgrade,
Description = "Increases the range of the Zentari's ranged weapon."
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 = 100, BuildTime = 60, ProducedBy = DataType.BUILDING_Reliquary })
{ Alloy = 50, Ether = 125, BuildTime = 60, ProducedBy = DataType.BUILDING_Reliquary })
.AddPart(new EntityRequirementModel
{ Id = DataType.BUILDING_Reliquary, Requirement = RequirementType.Research_Building })
.AddPart(new EntityVanguardAddedModel
@ -1789,23 +1851,6 @@ public class DATA
.AddPart(new EntityVanguardAddedModel
{ ReplaceId = DataType.UPGRADE_FortifiedIcons, ImmortalId = DataType.IMMORTAL_Orzum })
},
{
DataType.UPGRADE_BladesOfTheGodhead,
new EntityModel(DataType.UPGRADE_BladesOfTheGodhead, EntityType.Tech)
.AddPart(new EntityInfoModel
{
Name = "Blades of the Godhead", Descriptive = DescriptiveType.Upgrade,
Description = "Unlocks Blades of the Godhead"
})
.AddPart(new EntityHotkeyModel { Hotkey = "A", HoldSpace = true, HotkeyGroup = "X" })
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_QRath })
.AddPart(new EntityProductionModel
{ Alloy = 100, Ether = 75, BuildTime = 45, ProducedBy = DataType.BUILDING_BearerOfTheCrown })
.AddPart(new EntityRequirementModel
{
Id = DataType.BUILDING_BearerOfTheCrown, Requirement = RequirementType.Production_Building
})
},
{
DataType.UPGRADE_WingsOfTheKenLatir,
new EntityModel(DataType.UPGRADE_WingsOfTheKenLatir, EntityType.Tech)
@ -1853,8 +1898,6 @@ public class DATA
})
.AddPart(new EntityHotkeyModel { Hotkey = "W", HotkeyGroup = "X" })
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_Aru })
.AddPart(new EntityVanguardReplacedModel
{ ImmortalId = DataType.IMMORTAL_Xol, ReplacedById = DataType.UPGRADE_Stalk })
.AddPart(new EntityRequirementModel
{
Id = DataType.BUILDING_AltarOfTheWorthy,
@ -1890,33 +1933,16 @@ public class DATA
.AddPart(new EntityProductionModel
{ Alloy = 100, Ether = 150, BuildTime = 100, ProducedBy = DataType.BUILDING_RedVale })
},
{
DataType.UPGRADE_DenInstinct,
new EntityModel(DataType.UPGRADE_DenInstinct, EntityType.Tech)
.AddPart(new EntityInfoModel
{
Name = "Den Instinct",
Description =
"Allows the Ichor to Stabilize to gain bonus shields and leave behind a region of difficult ground.",
Descriptive = DescriptiveType.Upgrade
})
.AddPart(new EntityHotkeyModel { Hotkey = "E", 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 = 120, BuildTime = 45, ProducedBy = DataType.BUILDING_Neurocyte })
},
{
DataType.UPGRADE_PursuitLigaments,
new EntityModel(DataType.UPGRADE_PursuitLigaments, EntityType.Tech)
.AddPart(new EntityInfoModel
{
Name = "Pursuit Ligaments",
Description = "Significantly increases the Ichor's movement speed.",
Description =
"""
Ichors get more movement speed.
""",
Descriptive = DescriptiveType.Upgrade
})
.AddPart(new EntityHotkeyModel { Hotkey = "R", HotkeyGroup = "X" })
@ -1927,7 +1953,7 @@ public class DATA
Requirement = RequirementType.Research_Building
})
.AddPart(new EntityProductionModel
{ Alloy = 75, Ether = 100, BuildTime = 60, ProducedBy = DataType.BUILDING_Neurocyte })
{ Alloy = 100, Ether = 100, BuildTime = 80, ProducedBy = DataType.BUILDING_Neurocyte })
},
{
DataType.UPGRADE_ResinantSpeed,
@ -2027,6 +2053,26 @@ public class DATA
{ 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)
@ -2041,6 +2087,22 @@ public class DATA
.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)
@ -2074,35 +2136,12 @@ public class DATA
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_Aru })
.AddPart(new EntityRequirementModel
{
Id = DataType.BUILDING_Neurocyte,
Id = DataType.BUILDING_RootCradle,
Requirement = RequirementType.Research_Building
})
.AddPart(new EntityProductionModel
{ Alloy = 100, Ether = 150, BuildTime = 64, ProducedBy = DataType.BUILDING_RootCradle })
},
{
DataType.UPGRADE_Stalk,
new EntityModel(DataType.UPGRADE_Stalk, EntityType.Tech)
.AddPart(new EntityInfoModel
{
Name = "Research Stalk",
Description = "Unlocks the Bone Stalker's Stabilize",
Descriptive = DescriptiveType.Upgrade
})
.AddPart(new EntityHotkeyModel { Hotkey = "W", HotkeyGroup = "X", HoldSpace = false })
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_Aru })
.AddPart(new EntityRequirementModel
{
Id = DataType.BUILDING_Neurocyte,
Requirement = RequirementType.Research_Building
})
.AddPart(new EntityProductionModel
{ Alloy = 100, Ether = 80, BuildTime = 60, ProducedBy = DataType.BUILDING_Neurocyte })
.AddPart(new EntityVanguardAddedModel
{ ReplaceId = DataType.UPGRADE_Offering, ImmortalId = DataType.IMMORTAL_Xol })
},
{
DataType.UPGRADE_Ambush,
new EntityModel(DataType.UPGRADE_Ambush, EntityType.Tech)
@ -2110,13 +2149,15 @@ public class DATA
{
Name = "Research Ambush",
Description =
"When Hidden, the Bone Stalker's next attack deals 200% damage. Attack range is permanetly increased by 100.",
"""
Bone Stalkers get double damage for a few seconds after attack while Hidden.
""",
Descriptive = DescriptiveType.Upgrade
})
.AddPart(new EntityHotkeyModel { Hotkey = "CAPSLOCK", HotkeyGroup = "X", HoldSpace = false })
.AddPart(new EntityHotkeyModel { Hotkey = "W", HotkeyGroup = "X", HoldSpace = false })
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_Aru })
.AddPart(new EntityProductionModel
{ Alloy = 100, Ether = 125, BuildTime = 80, ProducedBy = DataType.BUILDING_RedVale })
{ Alloy = 100, Ether = 75, BuildTime = 60, ProducedBy = DataType.BUILDING_RedVale })
.AddPart(new EntityRequirementModel
{
Id = DataType.BUILDING_RedVale,
@ -2125,8 +2166,6 @@ public class DATA
.AddPart(new EntityVanguardAddedModel
{ ReplaceId = DataType.UPGRADE_BloodMothersFevor, ImmortalId = DataType.IMMORTAL_Xol })
},
{
DataType.UPGRADE_BloodPlague,
new EntityModel(DataType.UPGRADE_BloodPlague, EntityType.Tech)
@ -2135,7 +2174,7 @@ public class DATA
Name = "Blood Plague", Descriptive = DescriptiveType.Upgrade,
Description = "Unlocks Blood Plague"
})
.AddPart(new EntityHotkeyModel { Hotkey = "F", HotkeyGroup = "X", HoldSpace = true })
.AddPart(new EntityHotkeyModel { Hotkey = "R", HotkeyGroup = "X", HoldSpace = true })
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_Aru })
.AddPart(new EntityRequirementModel
{
@ -2143,7 +2182,7 @@ public class DATA
Requirement = RequirementType.Research_Building
})
.AddPart(new EntityProductionModel
{ Alloy = 75, Ether = 120, BuildTime = 80, ProducedBy = DataType.BUILDING_RedVale })
{ Alloy = 100, Ether = 150, BuildTime = 100, ProducedBy = DataType.BUILDING_RedVale })
.AddPart(new EntityVanguardReplacedModel
{ ImmortalId = DataType.IMMORTAL_Xol, ReplacedById = DataType.ABILITY_BirthingStorm })
},
@ -2173,7 +2212,7 @@ public class DATA
Requirement = RequirementType.Research_Building
})
.AddPart(new EntityProductionModel
{ Alloy = 75, Ether = 120, BuildTime = 80, ProducedBy = DataType.BUILDING_RedVale })
{ Alloy = 100, Ether = 150, BuildTime = 100, ProducedBy = DataType.BUILDING_RedVale })
.AddPart(new EntityVanguardAddedModel
{ ImmortalId = DataType.IMMORTAL_Mala, ReplaceId = DataType.ABILITY_BloodPlague })
},
@ -2524,21 +2563,6 @@ public class DATA
.AddPart(new EntityRequirementModel
{ Id = DataType.UPGRADE_PursuitLigaments, Requirement = RequirementType.Research_Upgrade })
},
{
DataType.PASSIVE_DenInstinct,
new EntityModel(DataType.PASSIVE_DenInstinct, EntityType.Passive)
.AddPart(new EntityInfoModel
{
Name = "Den Instinct", Descriptive = DescriptiveType.Passive,
Description =
@"After remaining stationary for a short time, gain a hude pool of bonus shields. For a short time, this leaves behind a den that slows non-hover units while moving over it."
})
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_Aru })
.AddPart(new EntityRequirementModel
{ Id = DataType.UPGRADE_DenInstinct, Requirement = RequirementType.Research_Upgrade })
},
{
DataType.PASSIVE_Temporary,
new EntityModel(DataType.PASSIVE_Temporary, EntityType.Passive)
@ -2562,7 +2586,6 @@ public class DATA
Notes = "Lose hidden on attacking"
})
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_Aru })
.AddPart(new EntityRequirementModel { Id = DataType.UPGRADE_Stalk })
},
{
@ -2850,20 +2873,6 @@ public class DATA
})
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_QRath })
},
{
DataType.ABILITY_BladesOfTheGodhead,
new EntityModel(DataType.ABILITY_BladesOfTheGodhead, EntityType.Ability)
.AddPart(new EntityInfoModel
{
Name = "Blades of the Godhead", Descriptive = DescriptiveType.Ability,
Description =
@"The Throne loses some of its shields and fires all four of its swords at the target location to <b style=""color:orange"">deal damage</b> in a small area of effect. This only affects ground units."
})
.AddPart(new EntityHotkeyModel { Hotkey = "Q", HotkeyGroup = "D" })
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_QRath })
.AddPart(new EntityProductionModel { Cooldown = 40 })
},
{
DataType.ABILITY_Windstep,
new EntityModel(DataType.ABILITY_Windstep, EntityType.Ability)
@ -2922,7 +2931,7 @@ public class DATA
Description =
@"Deploying the Absolver drastically <b style=""color: orange"">increases its attack speed</b>."
})
.AddPart(new EntityHotkeyModel { Hotkey = "CAPSLOCK", HotkeyGroup = "D" })
.AddPart(new EntityHotkeyModel { Hotkey = "F", HotkeyGroup = "D" })
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_QRath })
},
{
@ -2932,9 +2941,9 @@ public class DATA
{
Name = "Deploy Magi", Descriptive = DescriptiveType.Ability,
Description =
@"Deploys the Magic to project <b style=""color:white"">Hallowed Ground</b> around it."
"""Deploys the Magi to project <b style="color:white">Hallowed Ground</b> around it."""
})
.AddPart(new EntityHotkeyModel { Hotkey = "E", HotkeyGroup = "D" })
.AddPart(new EntityHotkeyModel { Hotkey = "R", HotkeyGroup = "D" })
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_QRath })
},
@ -3021,9 +3030,9 @@ public class DATA
{
Name = "Mobilize Q'Rath", Descriptive = DescriptiveType.Ability,
Description =
@"Mobilize all deployed Q'Rath units."
"Mobilize all deployed Q'Rath units."
})
.AddPart(new EntityHotkeyModel { Hotkey = "F", HotkeyGroup = "D" })
.AddPart(new EntityHotkeyModel { Hotkey = "TAB", HotkeyGroup = "D" })
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_QRath })
},
// Abilities
@ -3066,34 +3075,6 @@ public class DATA
.AddPart(new EntityHotkeyModel { Hotkey = "Q", HotkeyGroup = "D" })
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_Aru })
},
{
DataType.ABILITY_CullingStrike,
new EntityModel(DataType.ABILITY_CullingStrike, EntityType.Ability)
.AddPart(new EntityInfoModel
{
Name = "Culling Strike", Descriptive = DescriptiveType.Ability,
Description =
"Teleports to target location, and deals massive damage to the nearest ground unit."
})
.AddPart(new EntityHotkeyModel { Hotkey = "R", HotkeyGroup = "D" })
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_Aru })
.AddPart(new EntityProductionModel { Energy = 40, Cooldown = 3 })
},
{
DataType.ABILITY_LethalBond,
new EntityModel(DataType.ABILITY_LethalBond, EntityType.Ability)
.AddPart(new EntityInfoModel
{
Name = "Lethal Bond", Descriptive = DescriptiveType.Ability,
Description =
"After a short delay, enemy units in the target area receive a debuff which causes them to take double damage from all attacks for a duration. Also gives the White Wood Reaper invisibility if it affects at least 1 enemy"
})
.AddPart(new EntityHotkeyModel { Hotkey = "R", HotkeyGroup = "D" })
.AddPart(new EntityVanguardAddedModel
{ ImmortalId = DataType.IMMORTAL_Xol, ReplaceId = DataType.ABILITY_CullingStrike })
.AddPart(new EntityProductionModel { Energy = 60, Cooldown = 4 })
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_Aru })
},
{
DataType.ABILITY_DrainingEmbrace,
new EntityModel(DataType.ABILITY_DrainingEmbrace, EntityType.Ability)
@ -3120,8 +3101,8 @@ public class DATA
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_Aru })
},
{
DataType.ABILITY_DeployMobilizeResinant,
new EntityModel(DataType.ABILITY_DeployMobilizeResinant, EntityType.Ability)
DataType.ABILITY_DeployResinant,
new EntityModel(DataType.ABILITY_DeployResinant, EntityType.Ability)
.AddPart(new EntityInfoModel
{
Name = "Deploy Resinant", Descriptive = DescriptiveType.Ability,
@ -3132,18 +3113,22 @@ public class DATA
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_Aru })
},
{
DataType.ABILITY_DeployMobilizeUnderSpine,
new EntityModel(DataType.ABILITY_DeployMobilizeUnderSpine, EntityType.Ability)
DataType.ABILITY_DeployBloodAnchor,
new EntityModel(DataType.ABILITY_DeployBloodAnchor, EntityType.Ability)
.AddPart(new EntityInfoModel
{
Name = "Deploy Underspine", Descriptive = DescriptiveType.Ability,
Name = "Deploy Blood Anchor", Descriptive = DescriptiveType.Ability,
Description =
"Burrow into the ground to generate rootway and attack air units. Enemies near your attack target will be slowed for a short duration."
"""
Activate to deploy and begin spawning Cystic Crawlers.<br/>
<br/>
Generates Rootway. Cystic Crawlers are temporary units that cannot survive off Rootway and self-destruct to deal
area damage. Deployed units cannot move. Use Mobilize to move again.
"""
})
.AddPart(new EntityHotkeyModel { Hotkey = "E", HoldSpace = true, HotkeyGroup = "D" })
.AddPart(new EntityHotkeyModel { Hotkey = "F", HotkeyGroup = "D" })
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_Aru })
},
{
DataType.ABILITY_BloodyRebound,
new EntityModel(DataType.ABILITY_BloodyRebound, EntityType.Ability)
@ -3184,40 +3169,38 @@ public class DATA
{
Name = "Birthing Storm", Descriptive = DescriptiveType.Ability,
Description =
"Deals damage over time in an area and marks affected units for several seconds. Units that die while marked spawn a quitl.",
"""
Target an area to deal damage and Seed enemies.
""",
Notes =
"Deals 10 damage + 5% of max life of the target immediately upon affecting the enemy unit. It deals 15 damage + 15% after 8 seconds. If the unit dies during those 8 seconds (including the final burst), spawns 1 quitl every 2 supply of the dead unit, rounded up. Stacking only refreshes duration of debuff."
"""
Deals 10 damage + 5% of max life of the target immediately upon affecting the enemy unit. <br/>
It deals 15 damage + 15% after 8 seconds. If the unit dies during those 8 seconds (including the final burst),
spawns 1 quitl every 2 supply of the dead unit, rounded up. Stacking only refreshes duration of debuff.
"""
})
.AddPart(new EntityHotkeyModel { Hotkey = "W", HotkeyGroup = "D" })
.AddPart(new EntityVanguardAddedModel { ImmortalId = DataType.IMMORTAL_Mala })
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_Aru })
.AddPart(new EntityProductionModel { Energy = 80, Cooldown = 8 })
.AddPart(new EntityProductionModel { Energy = 95, Cooldown = 8 })
},
{
DataType.ABILITY_SummonSiegeMaw,
new EntityModel(DataType.ABILITY_SummonSiegeMaw, EntityType.Ability)
DataType.ABILITY_DeployDreadSister,
new EntityModel(DataType.ABILITY_DeployDreadSister, EntityType.Ability)
.AddPart(new EntityInfoModel
{
Name = "Summon Siege Maw", Descriptive = DescriptiveType.Dislodger,
Description = "Summons a temporary long-range siege structure at the target location."
Name = "Deploy Dread Sister", Descriptive = DescriptiveType.Dislodger,
Description =
"""
Deploy to get more damage and more range.<br/>
<br/>
Can only attack ground. Each shot cost Energy. Use Mobilize to move again.
"""
})
.AddPart(new EntityHotkeyModel { Hotkey = "R", HoldSpace = true, HotkeyGroup = "D" })
.AddPart(new EntityHotkeyModel { Hotkey = "F", HoldSpace = true, HotkeyGroup = "D" })
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_Aru })
.AddPart(new EntityVanguardAddedModel
{ ImmortalId = DataType.IMMORTAL_Mala, ReplaceId = DataType.UNIT_Godphage })
.AddPart(new EntityProductionModel { Energy = 80, BuildTime = 10, Cooldown = 45 })
.AddPart(new EntitySupplyModel { Takes = 0 })
.AddPart(new EntityVitalityModel
{
Health = 300, DefenseLayer = 100, Armor = ArmorType.Heavy,
Lasts = 75, Vision = 1000
})
.AddPart(new EntityMovementModel { Speed = 0, Movement = MovementType.Ground })
.AddPart(new EntityWeaponModel
{
Damage = 40, Range = 1300, Targets = TargetType.Ground, MediumDamage = 50,
HeavyDamage = 60
})
},
{
DataType.ABILITY_MorphToGodphage,
@ -3262,6 +3245,16 @@ public class DATA
.AddPart(new EntityHotkeyModel { Hotkey = "E", HoldSpace = true, HotkeyGroup = "D" })
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_Aru })
},
{
DataType.ABILITY_Hematoma,
new EntityModel(DataType.ABILITY_Hematoma, EntityType.Ability)
.AddPart(new EntityInfoModel
{
Name = "Hematoma"
})
.AddPart(new EntityHotkeyModel { Hotkey = "E", HoldSpace = true, HotkeyGroup = "D" })
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_Aru })
},
// Pyre Spells
// Q'Rath
@ -3664,35 +3657,14 @@ public class DATA
Id = DataType.BUILDING_Acropolis,
Requirement = RequirementType.Morph
})
.AddPart(new EntityProductionModel { Alloy = 75, BuildTime = 20, RequiresWorker = false })
.AddPart(new EntityHarvestModel
{
HarvestedPerInterval = 1, RequiresWorker = true, Resource = ResourceType.Alloy, Slots = 2,
TotalAmount = 3600
})
},
{
DataType.BUPGRADE_MiningLevel3_QRath,
new EntityModel(DataType.BUPGRADE_MiningLevel3_QRath, EntityType.Building_Upgrade)
.AddPart(new EntityInfoModel
{
Name = "Mining Level 3", Descriptive = DescriptiveType.Upgrade,
Description = "Upgrades the nearest resource cluster to allow more workers to mine from it."
})
.AddPart(new EntityHotkeyModel { Hotkey = "R", HotkeyGroup = "CONTROL" })
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_QRath })
.AddPart(new EntityRequirementModel
{
Id = DataType.BUPGRADE_MiningLevel2_QRath,
Requirement = RequirementType.Morph
})
.AddPart(new EntityProductionModel { Alloy = 125, BuildTime = 20, RequiresWorker = false })
.AddPart(new EntityProductionModel { Alloy = 400, BuildTime = 20, RequiresWorker = false })
.AddPart(new EntityHarvestModel
{
HarvestedPerInterval = 1, RequiresWorker = true, Resource = ResourceType.Alloy, Slots = 2,
HarvestedPerInterval = 1, RequiresWorker = true, Resource = ResourceType.Alloy, Slots = 4,
TotalAmount = 3600
})
},
{
DataType.BUILDING_ApostleOfBinding,
new EntityModel(DataType.BUILDING_ApostleOfBinding, EntityType.Building)
@ -3979,29 +3951,7 @@ public class DATA
Id = DataType.BUILDING_GroveHeart,
Requirement = RequirementType.Morph
})
.AddPart(new EntityProductionModel { Alloy = 75, BuildTime = 20, RequiresWorker = false })
.AddPart(new EntityHarvestModel
{
HarvestedPerInterval = 1, RequiresWorker = true, Resource = ResourceType.Alloy, Slots = 2,
TotalAmount = 3600
})
},
{
DataType.BUPGRADE_MiningLevel3_Aru,
new EntityModel(DataType.BUPGRADE_MiningLevel3_Aru, EntityType.Building_Upgrade)
.AddPart(new EntityInfoModel
{
Name = "Mining Level 3", Descriptive = DescriptiveType.Upgrade,
Description = "Upgrades the nearest resource cluster to allow more workers to mine from it."
})
.AddPart(new EntityHotkeyModel { Hotkey = "R", HotkeyGroup = "CONTROL" })
.AddPart(new EntityFactionModel { Faction = DataType.FACTION_Aru })
.AddPart(new EntityRequirementModel
{
Id = DataType.BUPGRADE_MiningLevel2_Aru,
Requirement = RequirementType.Morph
})
.AddPart(new EntityProductionModel { Alloy = 125, BuildTime = 20, RequiresWorker = false })
.AddPart(new EntityProductionModel { Alloy = 400, BuildTime = 20, RequiresWorker = false })
.AddPart(new EntityHarvestModel
{
HarvestedPerInterval = 1, RequiresWorker = true, Resource = ResourceType.Alloy, Slots = 2,

57
Model/Entity/Data/Ids_Entity.cs

@ -118,7 +118,7 @@ public static class DataType
public static string UPGRADE_FortifiedIcons = nameof(UPGRADE_FortifiedIcons);
public static string UPGRADE_PsalmOfFire = nameof(UPGRADE_PsalmOfFire);
public static string UPGRADE_FaithCastBlades = "32087a66-900e-4f25-95f7-de56d5b424c7";
public static string UPGRADE_FaithCastBlades = nameof(UPGRADE_FaithCastBlades);
public static string UPGRADE_RelicOfTheWrathfulGaze = nameof(UPGRADE_RelicOfTheWrathfulGaze);
public static string UPGRADE_WindStep = nameof(UPGRADE_WindStep);
public static string UPGRADE_ZephyrRange = nameof(UPGRADE_ZephyrRange);
@ -126,25 +126,25 @@ public static class DataType
public static string UPGRADE_IconOfTheEnduringVigil = nameof(UPGRADE_IconOfTheEnduringVigil);
public static string UPGRADE_AbsolverHealthUpgrade = nameof(UPGRADE_AbsolverHealthUpgrade);
public static string UPGRADE_Awestrike = nameof(UPGRADE_Awestrike);
public static string UPGRADE_IconOfKhastEem = "2919a2e2-0602-4969-a381-7689ce0a1ee5";
public static string UPGRADE_BladesOfTheGodhead = "d3758f7d-4043-4027-a476-7653c52201d9";
public static string UPGRADE_IconOfKhastEem = nameof(UPGRADE_IconOfKhastEem);
public static string UPGRADE_WingsOfTheKenLatir = nameof(UPGRADE_WingsOfTheKenLatir);
public static string UPGRADE_TitheBlades = nameof(UPGRADE_TitheBlades);
public static string UPGRADE_Offering = nameof(UPGRADE_Offering);
public static string UPGRADE_BloodMothersFevor = nameof(UPGRADE_BloodMothersFevor);
public static string UPGRADE_DenInstinct = "1a3c6180-9c43-43f9-b1a4-8499ffda4f2b";
public static string UPGRADE_PursuitLigaments = "51a4e848-ae67-4182-9c1f-27cb24e9c531";
public static string UPGRADE_PursuitLigaments = nameof(UPGRADE_PursuitLigaments);
public static string UPGRADE_EthericFibers = nameof(UPGRADE_EthericFibers);
public static string UPGRADE_ObstructingSwarm = nameof(UPGRADE_ObstructingSwarm);
public static string UPGRADE_Hematoma = nameof(UPGRADE_Hematoma);
public static string UPGRADE_ResinantSpeed = nameof(UPGRADE_ResinantSpeed);
public static string UPGRADE_RootShepherdHidden = nameof(UPGRADE_RootShepherdHidden);
public static string UPGRADE_RootShepherdSpeed = nameof(UPGRADE_RootShepherdSpeed);
public static string UPGRADE_EoxBowstring = nameof(UPGRADE_EoxBowstring);
public static string UPGRADE_SporeBurst = nameof(UPGRADE_SporeBurst);
public static string UPGRADE_VitellineCysts = nameof(UPGRADE_VitellineCysts);
public static string UPGRADE_BloodPlague = "9c207e21-f595-49d0-967d-f30ca8cc3745";
public static string UPGRADE_BirthingStorm = "0cb2f1a4-03b3-491b-9db3-d2d4590ede3a";
public static string UPGRADE_HyperAdrenoceptors = nameof(UPGRADE_HyperAdrenoceptors);
public static string UPGRADE_BloodPlague = nameof(UPGRADE_BloodPlague);
public static string UPGRADE_BirthingStorm = nameof(UPGRADE_BirthingStorm);
public static string UPGRADE_GodphageDamage = nameof(UPGRADE_GodphageDamage);
public static string UPGRADE_GENERIC_Attack1 = nameof(UPGRADE_GENERIC_Attack1);
@ -153,17 +153,14 @@ public static class DataType
public static string UPGRADE_RadiantWard = nameof(UPGRADE_RadiantWard);
public static string UPGRADE_Stalk = "36fbc2c0-e9e3-4f54-a79a-981db908c25c";
public static string UPGRADE_Ambush = "6cf83dc9-717f-4fa9-b417-a3371474a1da";
public static string UPGRADE_Ambush = nameof(UPGRADE_Ambush);
public static string PASSIVE_Detection = "434468fa-83b2-4fc9-a38c-1a3d00bcf055";
public static string PASSIVE_WraithBowRange = "196dd8a6-2044-44e1-aac4-fbaa40552699";
public static string PASSIVE_HiddenX = "7b819996-ffc0-4e07-9c11-c91c5f9d467b";
public static string PASSIVE_Respite = "607c39f4-a957-4a7a-8fc6-a239f9e570ec";
public static string PASSIVE_BastionPassives = "ea42b9cb-2456-4ed2-b490-fcfde12c6153";
public static string PASSIVE_HallowedWarrior = "fea43ced-33f3-4531-af7d-740c1789fec1";
@ -188,7 +185,7 @@ public static class DataType
public static string PASSIVE_HallowingRites = "9c8ae47b-954e-4a17-8f35-f128c9114b61";
public static string PASSIVE_RegentsWrath = "f111f004-6548-4430-9d13-ef44ab108ae7";
public static string PASSIVE_PsalmOfFire = "d28f6b7c-d319-4fb8-bdd4-92ede40a0751";
public static string PASSIVE_PsalmOfFire = nameof(PASSIVE_PsalmOfFire);
public static string PASSIVE_HallowedWeapons = "f9ac4b3e-d02d-42d4-8d9d-beb9c5d7edcb";
@ -235,34 +232,32 @@ public static class DataType
public static string PASSIVE_Maledictions = "6cdc109c-157d-433a-b225-192e39c0b613";
public static string ABILITY_BladesOfTheGodhead = "000154ac-faf5-483d-b0bd-e84335891a27";
public static string ABILITY_Windstep = nameof(ABILITY_Windstep);
public static string ABILITY_Intervention = nameof(ABILITY_Intervention);
public static string ABILITY_OrdainedPassage = nameof(ABILITY_OrdainedPassage);
public static string ABILITY_DeployMagi = "5d5bc595-54b7-42e4-a6f5-b000c2128fa9";
public static string ABILITY_DeployAbsolver = "c9b5c9c3-6336-4ffe-86d2-e0a9344726c8";
public static string ABILITY_DeployMagi = nameof(ABILITY_DeployMagi);
public static string ABILITY_DeployAbsolver = nameof(ABILITY_DeployAbsolver);
public static string ABILITY_DeploySentinel = nameof(ABILITY_DeploySentinel);
public static string ABILITY_Smite = nameof(ABILITY_Smite);
public static string ABILITY_Awestrike = nameof(ABILITY_Awestrike);
public static string ABILITY_TitheBlades = nameof(ABILITY_TitheBlades);
public static string ABILITY_MobilizeQrath = "5b64793e-55eb-4fa2-86d8-ccc5db55465c";
public static string ABILITY_MobilizeQrath = nameof(ABILITY_MobilizeQrath);
public static string ABILITY_Offering = nameof(ABILITY_Offering);
public static string ABILITY_DiveBomb = nameof(ABILITY_DiveBomb);
public static string ABILITY_CullingStrike = "b43396de-b7e4-4b87-af74-21522a888af3";
public static string ABILITY_LethalBond = "07a4ff49-3f19-4c9d-8b86-a3374eb9a139";
public static string ABILITY_DrainingEmbrace = nameof(ABILITY_DrainingEmbrace);
public static string ABILITY_BloodPlague = nameof(ABILITY_BloodPlague);
public static string ABILITY_DeployMobilizeResinant = "15fb784f-8cb7-4693-9485-242a6003e4da";
public static string ABILITY_DeployMobilizeUnderSpine = "e79f3483-cca0-4de3-9a09-4d98fdbaf792";
public static string ABILITY_MobilizeAru = "c911d368-55b0-4f16-a75d-65759f56e688";
public static string ABILITY_DeployResinant = nameof(ABILITY_DeployResinant);
public static string ABILITY_DeployBloodAnchor = nameof(ABILITY_DeployBloodAnchor);
public static string ABILITY_MobilizeAru = nameof(ABILITY_MobilizeAru);
public static string ABILITY_BloodyRebound = nameof(ABILITY_BloodyRebound);
public static string ABILITY_RootVice = "b3d7099e-5034-4416-b1e9-2f34eb2d30a9";
public static string ABILITY_BirthingStorm = "ba85a10c-eeff-4f44-abd7-09fc976c558c";
public static string ABILITY_SummonSiegeMaw = "26196eef-906d-4aeb-b51b-d6cdc717618c";
public static string ABILITY_RootVice = nameof(ABILITY_RootVice);
public static string ABILITY_BirthingStorm = nameof(ABILITY_BirthingStorm);
public static string ABILITY_DeployDreadSister = nameof(ABILITY_DeployDreadSister);
public static string ABILITY_MorphToGodphage = nameof(ABILITY_MorphToGodphage);
public static string ABILITY_DeepTunnel = nameof(ABILITY_DeepTunnel);
public static string ABILITY_ObstructingSwarm = nameof(ABILITY_ObstructingSwarm);
public static string ABILITY_Hematoma = nameof(ABILITY_Hematoma);
public static string VANGUARD_Zentari_Orzum = nameof(VANGUARD_Zentari_Orzum);
public static string VANGUARD_Sceptre_Orzum = nameof(VANGUARD_Sceptre_Orzum);
@ -270,15 +265,17 @@ public static class DataType
public static string VANGUARD_Saoshin_Ajari = nameof(VANGUARD_Saoshin_Ajari);
public static string VANGUARD_RootShepard_Atzlan = nameof(VANGUARD_RootShepard_Atzlan);
public static string VANGUARD_Resinant_Atzlan = nameof(VANGUARD_Resinant_Atzlan);
public static string VANGUARD_BoneStalker_Xol = "150543a6-7704-4749-9038-f4db157f3f79";
public static string VANGUARD_WhiteWoodReaper_Xol = "bce39fea-3423-4079-9dac-5f506b850861";
public static string VANGUARD_DreadSister_Mala = "7999270f-365b-4ddd-b3b7-6e214a4c1249";
public static string VANGUARD_Incubator_Mala = "60d7957e-66a3-4f58-8e8f-46df134e580d";
public static string WORKER_Mote = "a02a0194-2a36-4d61-aa2a-52ae918347d4";
public static string VANGUARD_BoneStalker_Xol = nameof(VANGUARD_BoneStalker_Xol);
public static string VANGUARD_WhiteWoodReaper_Xol = nameof(VANGUARD_WhiteWoodReaper_Xol);
public static string VANGUARD_DreadSister_Mala = nameof(VANGUARD_DreadSister_Mala);
public static string VANGUARD_Incubator_Mala = nameof(VANGUARD_Incubator_Mala);
public static string WORKER_Mote = nameof(WORKER_Mote);
public static string WORKER_Symbiote = nameof(WORKER_Symbiote);
public static string UNIT_Sipari = nameof(UNIT_Sipari);
public static string UNIT_Zephyr = nameof(UNIT_Zephyr);
public static string UNIT_Magi = "5516ffc4-2e07-4f2a-bf40-52a1beb7c247";
public static string UNIT_Magi = nameof(UNIT_Magi);
public static string UNIT_Dervish = nameof(UNIT_Dervish);
public static string UNIT_Absolver = nameof(UNIT_Absolver);
public static string UNIT_Hallower = nameof(UNIT_Hallower);

9
Model/Entity/Types/DescriptiveType.cs

@ -5,17 +5,18 @@ public static class DescriptiveType
public static string None = "None";
public static string Frontliner = "Frontliner";
public static string Force_Multiplier = "Force_Multiplier";
public static string Support = "Support";
public static string Assassin = "Assassin";
public static string Generalist = "Generalist";
public static string Harrier = "Harrier";
public static string Zone_Control = "Zone_Control";
public static string Air_Denial = "Air_Denial";
public static string ZoneControl = "Zone_Control";
public static string AirDenial = "Air_Denial";
public static string Dislodger = "Dislodger";
public static string Air_Superiority = "Air_Superiority";
public static string Elite_Caster = "Elite_Caster";
public static string EliteCaster = "Elite_Caster";
public static string Worker = "Worker";
public static string Skirmisher = "Skirmisher";
public static string Town_Hall_Starting = "Town_Hall_Starting";
public static string TownHall_Starting = "Town_Hall_Starting";
public static string Town_Hall = "Town_Hall";
public static string Ether_Extractor = "Ether_Extractor";
public static string Production = "Production";

Loading…
Cancel
Save