feat(BuildCalc) Waits now work

This commit is contained in:
2022-04-18 19:18:00 -04:00
parent b806424b05
commit 1a5b68fc19
4 changed files with 69 additions and 15 deletions
@@ -9,17 +9,31 @@
<FormDisplayComponent Label="Time">
<Display>@BuildOrderService.GetLastRequestInterval() | T @Interval.ToTime(BuildOrderService.GetLastRequestInterval())</Display>
</FormDisplayComponent>
<FormDisplayComponent Label="Alloy">
<Display>@economy.Alloy</Display>
</FormDisplayComponent>
<FormDisplayComponent Label="Ether">
<Display>@economy.Ether</Display>
</FormDisplayComponent>
<FormDisplayComponent Label="Supply">
<Display>@supplyTaken / @supplyGranted (@(supplyGranted / 16)@(extraBuildings > 0 ? "+" + extraBuildings : ""))</Display>
</FormDisplayComponent>
<div class="bankRow">
<FormDisplayComponent Label="Alloy">
<Display>@economy.Alloy</Display>
</FormDisplayComponent>
<FormDisplayComponent Label="Ether">
<Display>@economy.Ether</Display>
</FormDisplayComponent>
</div>
<div class="bankRow">
<FormDisplayComponent Label="Pyre">
<Display>@economy.Pyre</Display>
</FormDisplayComponent>
<FormDisplayComponent Label="Supply">
<Display>@supplyTaken / @supplyGranted (@(supplyGranted / 16)@(extraBuildings > 0 ? "+" + extraBuildings : ""))</Display>
</FormDisplayComponent>
</div>
</FormLayoutComponent>
<style>
.bankRow {
display: flex;
gap: 8px;
}
</style>
@code {
[Inject]
@@ -61,6 +75,8 @@
void OnBuildOrderChanged()
{
Console.WriteLine("OnBuildOrderChanged()");
economy = EconomyService.GetEconomy(BuildOrderService.GetLastRequestInterval());
var ordersOverTime = BuildOrderService.GetOrders();
@@ -16,7 +16,7 @@
<FormNumberComponent Max="600"
Min="0"
Value="30"
Value="@WaitTime"
OnChange="@OnWaitTimeChanged">
<FormLabelComponent>Wait Time</FormLabelComponent>
<FormInfoComponent>Not implemented</FormInfoComponent>
@@ -36,12 +36,15 @@
void OnWaitTimeChanged(ChangeEventArgs changeEventArgs)
{
toastService.AddToast(new ToastModel { Title = "Not Implemented", SeverityType = SeverityType.Warning, Message = "The ability to wait for X seconds in a build order hasn't been implemented yet." });
WaitTime = (int)changeEventArgs.Value!;
}
public void OnWaitClicked()
{
toastService.AddToast(new ToastModel { Title = "Not Implemented", SeverityType = SeverityType.Warning, Message = "The ability to wait for X seconds in a build order hasn't been implemented yet." });
if (buildOrderService.AddWait(WaitTime))
{
economyService.Calculate(buildOrderService, timingService, buildOrderService.GetLastRequestInterval());
}
}
protected override bool ShouldRender()
@@ -60,4 +63,6 @@
#endif
}
public int WaitTime { get; set; } = 30;
}