27 lines
635 B
Plaintext
27 lines
635 B
Plaintext
@using System.Threading.Tasks
|
|
@inherits PanelComponent
|
|
|
|
<root class="interaction-panel">
|
|
<div class="label">@InteractionString</div>
|
|
|
|
@if (IsHoldInteraction)
|
|
{
|
|
<div class="progress-bar">
|
|
<div class="progress-fill" style="width: @(ProgressionHold * 100)%"></div>
|
|
</div>
|
|
}
|
|
</root>
|
|
|
|
@code {
|
|
[Property] public string InteractionString { get; set; } = "Interact";
|
|
[Property] public bool IsHoldInteraction { get; set; } = false;
|
|
[Property] public float ProgressionHold { get; set; } = 0f;
|
|
|
|
public async Task TriggerInteractAnimation()
|
|
{
|
|
AddClass("interacted");
|
|
await Task.Delay(300);
|
|
RemoveClass("interacted");
|
|
}
|
|
}
|