68 lines
2.4 KiB
Plaintext
68 lines
2.4 KiB
Plaintext
@namespace Faraon.Client.Components
|
|
|
|
<div class="player-slot @PositionClass @(IsCurrentTurn ? "active-turn-slot" : "")">
|
|
<div class="avatar-badge @(IsCurrentTurn ? "active-turn" : "") @(Player.IsSkipped ? "is-skipped" : "") @(Player.HasFinished ? "is-finished" : "")">
|
|
@if (IsCurrentTurn && !Player.HasFinished && !Player.IsEliminated)
|
|
{
|
|
<div class="turn-indicator-badge">
|
|
<span class="turn-indicator-dot"></span>
|
|
<span class="turn-indicator-text">NA ŤAHU</span>
|
|
</div>
|
|
}
|
|
|
|
@if (Player.HasFinished)
|
|
{
|
|
<div class="badge-finished-pos">
|
|
@Player.FinishedPosition
|
|
</div>
|
|
}
|
|
|
|
<div class="avatar-icon">@Player.Avatar</div>
|
|
<div class="avatar-name">
|
|
@Player.Name
|
|
@if (Player.Type == PlayerType.AI)
|
|
{
|
|
<span style="font-size: 0.7rem; opacity: 0.8;">(AI)</span>
|
|
}
|
|
</div>
|
|
<div class="avatar-card-count">
|
|
@if (Player.IsEliminated)
|
|
{
|
|
<span style="color: #ef4444; font-weight: 800;">☠️ Vyradený</span>
|
|
}
|
|
else if (Player.HasFinished)
|
|
{
|
|
<span>Skončil 🏆</span>
|
|
}
|
|
else
|
|
{
|
|
<span>@Player.Hand.Count @(Player.Hand.Count == 1 ? "karta" : (Player.Hand.Count < 5 ? "karty" : "kariet"))</span>
|
|
}
|
|
@if (IsOlympicMode)
|
|
{
|
|
<div style="font-size: 0.72rem; color: var(--gold); margin-top: 2px;">
|
|
🏅 @Player.OlympicCardsCount @(Player.OlympicCardsCount == 1 ? "karta" : (Player.OlympicCardsCount < 5 ? "karty" : "kariet"))
|
|
</div>
|
|
}
|
|
</div>
|
|
</div>
|
|
|
|
<!-- Mini karty pre vizuálny odpočet kariet v ruke -->
|
|
@if (!Player.HasFinished && !Player.IsEliminated)
|
|
{
|
|
<div class="opponent-mini-cards">
|
|
@for (int i = 0; i < Math.Min(Player.Hand.Count, 8); i++)
|
|
{
|
|
<div class="mini-card-back"></div>
|
|
}
|
|
</div>
|
|
}
|
|
</div>
|
|
|
|
@code {
|
|
[Parameter, EditorRequired] public Player Player { get; set; } = default!;
|
|
[Parameter] public bool IsCurrentTurn { get; set; } = false;
|
|
[Parameter] public bool IsOlympicMode { get; set; } = false;
|
|
[Parameter] public string PositionClass { get; set; } = "slot-top";
|
|
}
|