fix(BuildCalc) Now shows locked entities as gray text. Added some missing data
This commit is contained in:
@@ -26,11 +26,11 @@
|
||||
var y = hotkey.PositionY * Size;
|
||||
|
||||
var border = "1px solid black";
|
||||
if (hotkey.KeyText.Equals(_key))
|
||||
if (hotkey.KeyText.Equals(key))
|
||||
{
|
||||
border = "5px solid black";
|
||||
}
|
||||
if (hotkey.KeyText.Equals(_controlGroup))
|
||||
if (hotkey.KeyText.Equals(controlGroup))
|
||||
{
|
||||
border = "5px solid green";
|
||||
}
|
||||
@@ -56,17 +56,18 @@
|
||||
@hotkey.KeyText
|
||||
@foreach (var entity in data.Values)
|
||||
{
|
||||
if (buildOrderService.WillMeetRequirements(entity) == null)
|
||||
{
|
||||
continue;
|
||||
}
|
||||
|
||||
if (InvalidKey(entity, hotkey) || InvalidKeyGroup(entity, hotkey) || InvalidHoldSpace(entity))
|
||||
{
|
||||
continue;
|
||||
}
|
||||
|
||||
if (InvalidFaction(entity) || InvalidVanguard(entity) || InvalidNonVanguard(entity))
|
||||
if (InvalidFaction(entity))
|
||||
{
|
||||
continue;
|
||||
}
|
||||
|
||||
if (InvalidVanguard(entity) || InvalidNonVanguard(entity))
|
||||
{
|
||||
continue;
|
||||
}
|
||||
@@ -74,6 +75,12 @@
|
||||
var isVanguard = entity.VanguardAdded() != null;
|
||||
var style = isVanguard ? "font-weight: bold;" : "";
|
||||
|
||||
if (buildOrderService.WillMeetRequirements(entity) == null)
|
||||
{
|
||||
style += "color:gray; font-style: italic;";
|
||||
}
|
||||
|
||||
|
||||
<div style="@style">@entity.Info()?.Name</div>
|
||||
}
|
||||
</div>
|
||||
@@ -110,8 +117,8 @@
|
||||
readonly Dictionary<string, EntityModel> data = EntityModel.GetDictionary();
|
||||
readonly List<HotkeyModel> hotkeys = HotkeyModel.GetAll();
|
||||
|
||||
public string _controlGroup = "C";
|
||||
public string _key = "";
|
||||
private string controlGroup = "C";
|
||||
private string key = "";
|
||||
|
||||
protected override void OnInitialized()
|
||||
{
|
||||
@@ -211,7 +218,7 @@
|
||||
|
||||
bool InvalidKeyGroup(EntityModel entity, HotkeyModel key)
|
||||
{
|
||||
if (entity.Hotkey()?.HotkeyGroup == _controlGroup)
|
||||
if (entity.Hotkey()?.HotkeyGroup == controlGroup)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
@@ -221,7 +228,7 @@
|
||||
|
||||
bool InvalidKey(EntityModel entity)
|
||||
{
|
||||
if (entity.Hotkey()?.Hotkey == _key)
|
||||
if (entity.Hotkey()?.Hotkey == key)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
@@ -230,7 +237,7 @@
|
||||
|
||||
bool InvalidKeyGroup(EntityModel entity)
|
||||
{
|
||||
if (entity.Hotkey()?.HotkeyGroup == _controlGroup)
|
||||
if (entity.Hotkey()?.HotkeyGroup == controlGroup)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
@@ -249,53 +256,51 @@
|
||||
void OnKeyPressed()
|
||||
{
|
||||
|
||||
string controlGroupWas = _controlGroup;
|
||||
string keyWas = _key;
|
||||
string controlGroupWas = controlGroup;
|
||||
string keyWas = key;
|
||||
|
||||
|
||||
if (keyService.GetAllPressedKeys().Contains("Z"))
|
||||
{
|
||||
_controlGroup = "Z";
|
||||
controlGroup = "Z";
|
||||
}
|
||||
if (keyService.GetAllPressedKeys().Contains("TAB"))
|
||||
{
|
||||
_controlGroup = "TAB";
|
||||
controlGroup = "TAB";
|
||||
}
|
||||
if (keyService.GetAllPressedKeys().Contains("C"))
|
||||
{
|
||||
_controlGroup = "C";
|
||||
controlGroup = "C";
|
||||
}
|
||||
if (keyService.GetAllPressedKeys().Contains("D"))
|
||||
{
|
||||
_controlGroup = "D";
|
||||
controlGroup = "D";
|
||||
}
|
||||
if (keyService.GetAllPressedKeys().Contains("1"))
|
||||
{
|
||||
_controlGroup = "1";
|
||||
controlGroup = "1";
|
||||
}
|
||||
//TODO This could be better. Duplicated code
|
||||
if (keyService.GetAllPressedKeys().Contains("2"))
|
||||
{
|
||||
_controlGroup = "2";
|
||||
controlGroup = "2";
|
||||
}
|
||||
if (keyService.GetAllPressedKeys().Contains("SHIFT"))
|
||||
{
|
||||
_controlGroup = "SHIFT";
|
||||
controlGroup = "SHIFT";
|
||||
}
|
||||
|
||||
if (keyService.GetAllPressedKeys().Contains("CONTROL"))
|
||||
{
|
||||
_controlGroup = "CONTROL";
|
||||
controlGroup = "CONTROL";
|
||||
}
|
||||
|
||||
if (keyService.GetAllPressedKeys().Count > 0)
|
||||
{
|
||||
_key = keyService.GetAllPressedKeys().First();
|
||||
key = keyService.GetAllPressedKeys().First();
|
||||
}
|
||||
|
||||
// HandleClick();
|
||||
|
||||
if (controlGroupWas != _controlGroup || keyWas != _key)
|
||||
if (controlGroupWas != controlGroup || keyWas != key)
|
||||
{
|
||||
|
||||
StateHasChanged();
|
||||
|
||||
@@ -1435,9 +1435,13 @@ public class DATA
|
||||
.AddPart(new EntityHotkeyModel { Hotkey = "Q", HotkeyGroup = "TAB" })
|
||||
.AddPart(new EntityFactionModel { Faction = FactionType.QRath })
|
||||
.AddPart(new EntityProductionModel { Alloy = 100, Ether = 100, BuildTime = 100 })
|
||||
.AddPart(new EntityRequirementModel
|
||||
{
|
||||
Id = DataType.BUILDING_Reliquary,
|
||||
Requirement = RequirementType.Production_Building
|
||||
})
|
||||
|
||||
},
|
||||
|
||||
{
|
||||
DataType.UPGRADE_RadiantWard,
|
||||
new EntityModel(DataType.UPGRADE_RadiantWard, EntityType.Tech)
|
||||
@@ -1449,6 +1453,11 @@ public class DATA
|
||||
.AddPart(new EntityHotkeyModel { Hotkey = "V", HotkeyGroup = "TAB" })
|
||||
.AddPart(new EntityFactionModel { Faction = FactionType.QRath })
|
||||
.AddPart(new EntityProductionModel { Alloy = 80, Ether = 80, BuildTime = 34 })
|
||||
.AddPart(new EntityRequirementModel
|
||||
{
|
||||
Id = DataType.BUILDING_HouseOfFadingSaints,
|
||||
Requirement = RequirementType.Production_Building
|
||||
})
|
||||
},
|
||||
|
||||
{
|
||||
@@ -1462,6 +1471,11 @@ public class DATA
|
||||
.AddPart(new EntityHotkeyModel { Hotkey = "Q", HotkeyGroup = "TAB", HoldSpace = true})
|
||||
.AddPart(new EntityFactionModel { Faction = FactionType.QRath })
|
||||
.AddPart(new EntityProductionModel { Alloy = 100, Ether = 100, BuildTime = 43 })
|
||||
.AddPart(new EntityRequirementModel
|
||||
{
|
||||
Id = DataType.BUILDING_EyeOfAros,
|
||||
Requirement = RequirementType.Production_Building
|
||||
})
|
||||
|
||||
},
|
||||
|
||||
@@ -1476,6 +1490,8 @@ public class DATA
|
||||
.AddPart(new EntityHotkeyModel { Hotkey = "Q", HotkeyGroup = "TAB" })
|
||||
.AddPart(new EntityFactionModel { Faction = FactionType.QRath })
|
||||
.AddPart(new EntityProductionModel { Alloy = 50, Ether = 100, BuildTime = 60 })
|
||||
.AddPart(new EntityVanguardAddedModel
|
||||
{ ReplaceId = DataType.UPGRADE_GreavesOfAhqar, ImmortalId = DataType.IMMORTAL_Orzum })
|
||||
|
||||
},
|
||||
{
|
||||
@@ -1528,7 +1544,7 @@ public class DATA
|
||||
Name = "Sirocco Script", Descriptive = DescriptiveType.Upgrade,
|
||||
Description = "Grant's the Dervish Sirocco Script"
|
||||
})
|
||||
.AddPart(new EntityHotkeyModel { Hotkey = "F", HotkeyGroup = "TAB" })
|
||||
.AddPart(new EntityHotkeyModel { Hotkey = "R", HotkeyGroup = "TAB" })
|
||||
.AddPart(new EntityFactionModel { Faction = FactionType.QRath })
|
||||
.AddPart(new EntityProductionModel { Alloy = 75, Ether = 100, BuildTime = 60 })
|
||||
.AddPart(new EntityRequirementModel
|
||||
@@ -1553,6 +1569,10 @@ public class DATA
|
||||
Id = DataType.BUILDING_EyeOfAros,
|
||||
Requirement = RequirementType.Production_Building
|
||||
})
|
||||
.AddPart(new EntityVanguardAddedModel
|
||||
{ ReplaceId = DataType.UPGRADE_FortifiedIcons, ImmortalId = DataType.IMMORTAL_Orzum })
|
||||
|
||||
|
||||
},
|
||||
{
|
||||
DataType.UPGRADE_BladesOfTheGodhead,
|
||||
@@ -1735,6 +1755,9 @@ public class DATA
|
||||
Requirement = RequirementType.Research_Building
|
||||
})
|
||||
.AddPart(new EntityProductionModel { Alloy = 100, Ether = 80, BuildTime = 60 })
|
||||
.AddPart(new EntityVanguardAddedModel
|
||||
{ ReplaceId = DataType.UPGRADE_Offering, ImmortalId = DataType.IMMORTAL_Xol })
|
||||
|
||||
},
|
||||
|
||||
{
|
||||
@@ -1748,12 +1771,14 @@ public class DATA
|
||||
})
|
||||
.AddPart(new EntityHotkeyModel { Hotkey = "V", HotkeyGroup = "TAB", HoldSpace = false })
|
||||
.AddPart(new EntityFactionModel { Faction = FactionType.Aru })
|
||||
.AddPart(new EntityProductionModel { Alloy = 100, Ether = 125, BuildTime = 80 })
|
||||
.AddPart(new EntityRequirementModel
|
||||
{
|
||||
Id = DataType.BUILDING_RedVale,
|
||||
Requirement = RequirementType.Research_Building
|
||||
})
|
||||
.AddPart(new EntityProductionModel { Alloy = 100, Ether = 125, BuildTime = 80 })
|
||||
.AddPart(new EntityVanguardAddedModel
|
||||
{ ReplaceId = DataType.UPGRADE_BloodMothersFevor, ImmortalId = DataType.IMMORTAL_Xol })
|
||||
},
|
||||
|
||||
|
||||
@@ -1911,6 +1936,7 @@ public class DATA
|
||||
})
|
||||
.AddPart(new EntityRequirementModel(){ Id = DataType.UPGRADE_FaithCastBlades, Requirement = RequirementType.Research_Upgrade})
|
||||
.AddPart(new EntityFactionModel { Faction = FactionType.QRath })
|
||||
|
||||
},
|
||||
|
||||
{
|
||||
@@ -2329,6 +2355,11 @@ public class DATA
|
||||
.AddPart(new EntityProductionModel { DefensiveLayer = 30, Cooldown = 40} )
|
||||
.AddPart(new EntityRequirementModel { Id = DataType.UPGRADE_RadiantWard })
|
||||
.AddPart(new EntityVitalityModel {Health = 30, DefenseLayer = 30, Lasts = 30, Armor = ArmorType.Light, IsStructure = true})
|
||||
.AddPart(new EntityRequirementModel
|
||||
{
|
||||
Id = DataType.BUILDING_HouseOfFadingSaints,
|
||||
Requirement = RequirementType.Production_Building
|
||||
})
|
||||
},
|
||||
|
||||
{
|
||||
|
||||
@@ -21,6 +21,7 @@ public class EntityFilterService : IEntityFilterService {
|
||||
private string _selectedFaction = FactionType.Any;
|
||||
private string _selectedImmortal = ImmortalType.Any;
|
||||
|
||||
private event EntityFilterAction OnChange = null!;
|
||||
|
||||
public EntityFilterService() {
|
||||
RefreshImmortalChoices();
|
||||
@@ -28,11 +29,11 @@ public class EntityFilterService : IEntityFilterService {
|
||||
}
|
||||
|
||||
public void Subscribe(EntityFilterAction action) {
|
||||
_onChange += action;
|
||||
OnChange += action;
|
||||
}
|
||||
|
||||
public void Unsubscribe(EntityFilterAction action) {
|
||||
_onChange -= action;
|
||||
OnChange -= action;
|
||||
}
|
||||
|
||||
public string GetEntityType() {
|
||||
@@ -159,14 +160,8 @@ public class EntityFilterService : IEntityFilterService {
|
||||
}
|
||||
|
||||
|
||||
private event EntityFilterAction _onChange = null!;
|
||||
|
||||
private void NotifyDataChanged(EntityFilterEvent entityFilterEvent) {
|
||||
_onChange?.Invoke(entityFilterEvent);
|
||||
}
|
||||
|
||||
public EntityFilterAction OnChange() {
|
||||
return _onChange;
|
||||
OnChange?.Invoke(entityFilterEvent);
|
||||
}
|
||||
|
||||
public void Subscribe(Action action) {
|
||||
|
||||
Reference in New Issue
Block a user