improvements

This commit is contained in:
Michal Vrba
2026-08-28 16:34:40 +02:00
parent 4803bc22a6
commit 02bca7c34a
212 changed files with 622 additions and 112 deletions
+48 -6
View File
@@ -2,14 +2,36 @@
<div class="game-over-overlay">
<div class="game-over-card">
<div class="game-over-title">Výsledky Hry 👑</div>
<div class="game-over-title">
@if (IsOlympicMode)
{
<span>🏆 OLYMPIJSKÝ ŠAMPIÓN 👑</span>
}
else
{
<span>Výsledky Hry 👑</span>
}
</div>
@if (IsOlympicMode && MatchWinner != null)
{
<div style="background: linear-gradient(135deg, rgba(245, 176, 65, 0.25), rgba(212, 172, 13, 0.15)); border: 2px solid var(--gold); border-radius: 14px; padding: 14px; margin-bottom: 18px; text-align: center;">
<div style="font-size: 2.2rem; margin-bottom: 4px;">🥇👑</div>
<div style="font-size: 1.35rem; font-weight: 900; color: var(--gold);">
@MatchWinner.Avatar @MatchWinner.Name
</div>
<div style="font-size: 0.9rem; color: #f1f5f9; margin-top: 4px;">
Prežil všetky kolá ako jediný hráč a zvíťazil v Olympijskom turnaji!
</div>
</div>
}
<div class="podium-list">
@foreach (var player in Players.OrderBy(p => p.FinishedPosition ?? 99))
@foreach (var player in Players.OrderBy(p => p.IsEliminated ? 1 : 0).ThenBy(p => p.FinishedPosition ?? 99))
{
<div class="podium-row @(player.FinishedPosition == 1 ? "winner" : "")">
<div class="podium-row @((MatchWinner != null && player == MatchWinner) || (!IsOlympicMode && player.FinishedPosition == 1) ? "winner" : "")">
<div class="podium-pos">
@if (player.FinishedPosition == 1) { <span>🥇</span> }
@if ((MatchWinner != null && player == MatchWinner) || (!IsOlympicMode && player.FinishedPosition == 1)) { <span>🥇</span> }
else if (player.FinishedPosition == 2) { <span>🥈</span> }
else if (player.FinishedPosition == 3) { <span>🥉</span> }
else { <span>#@(player.FinishedPosition ?? 4)</span> }
@@ -22,8 +44,26 @@
<span style="font-size: 0.75rem; opacity: 0.7;">(AI)</span>
}
</div>
<div>
@(player.FinishedPosition == 1 ? "Víťaz! 🎉" : $"{player.FinishedPosition}. miesto")
<div style="font-weight: 800;">
@if (IsOlympicMode)
{
if (player == MatchWinner)
{
<span style="color: var(--gold);">Šampión! 🏆</span>
}
else if (player.IsEliminated)
{
<span style="color: #ef4444;">Vyradený ☠️</span>
}
else
{
<span>@player.OlympicCardsCount kariet</span>
}
}
else
{
<span>@(player.FinishedPosition == 1 ? "Víťaz! 🎉" : $"{player.FinishedPosition}. miesto")</span>
}
</div>
</div>
}
@@ -42,6 +82,8 @@
@code {
[Parameter] public List<Player> Players { get; set; } = new();
[Parameter] public bool IsOlympicMode { get; set; } = false;
[Parameter] public Player? MatchWinner { get; set; }
[Parameter] public EventCallback OnPlayAgain { get; set; }
[Parameter] public EventCallback OnBackToLobby { get; set; }
}