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.
 
 
 
 

69 lines
2.1 KiB

@inject IJSRuntime jsRuntime;
@inject IBuildOrderService buildOrderService
@inject IEconomyService economyService
@inject IToastService toastService
@inject ITimingService timingService
<FormLayoutComponent>
<FormNumberComponent ReadOnly="true"
Max="600"
Min="0"
Value="@timingService.GetTiming()"
OnChange="@OnTimingChanged">
<FormLabelComponent>Timing interval</FormLabelComponent>
<FormInfoComponent>Altering the time interval is currently disabled.</FormInfoComponent>
</FormNumberComponent>
<FormTextComponent Label="Name" Placeholder="Fast Thrones..." Value="@buildOrderService.GetName()" OnChange="OnNameChanged"/>
<FormTextAreaComponent Label="Notes"
Value="@buildOrderService.GetNotes()"
OnChange="@OnNotesChanged">
</FormTextAreaComponent>
<FormTextComponent Label="Color" Placeholder="red..." Value="@buildOrderService.GetColor()" OnChange="OnColorChanged"/>
</FormLayoutComponent>
@code {
void OnTimingChanged(ChangeEventArgs changeEventArgs)
{
timingService.SetTiming(int.Parse(changeEventArgs.Value!.ToString()!));
economyService.Calculate(buildOrderService, timingService, buildOrderService.GetLastRequestInterval());
}
void OnNameChanged(ChangeEventArgs changeEventArgs)
{
buildOrderService.SetName(changeEventArgs.Value!.ToString()!);
}
void OnColorChanged(ChangeEventArgs changeEventArgs)
{
buildOrderService.SetColor(changeEventArgs.Value!.ToString()!);
}
void OnNotesChanged(ChangeEventArgs changeEventArgs)
{
buildOrderService.SetNotes(changeEventArgs.Value!.ToString()!);
}
protected override bool ShouldRender()
{
#if DEBUG
jsRuntime.InvokeVoidAsync("console.time", "TimingComponent");
#endif
return true;
}
protected override void OnAfterRender(bool firstRender)
{
#if DEBUG
jsRuntime.InvokeVoidAsync("console.timeEnd", "TimingComponent");
#endif
}
}