@page "/"
@inject FxService Fx
@inject IFaraonAI AI
@inject IJSRuntime JS
@if (IsInLobby || Engine == null)
{
}
else
{
@foreach (var opp in GetOpponents())
{
}
@Engine.State.DrawDeck.Count
@if (Engine.State.TopCard != null)
{
}
@if (Engine.State.PendingDrawCount > 0)
{
🔥 +@Engine.State.PendingDrawCount Kariet!
}
@if (Engine.State.ActiveSuit.HasValue)
{
var dummy = new Card(Engine.State.ActiveSuit.Value, Rank.OverKnave);
}
@if (IsViewingPlayerTurn && !ViewingPlayer.HasFinished && !ViewingPlayer.IsEliminated)
{
SI NA ŤAHU
}
@ViewingPlayer.Avatar
@ViewingPlayer.Name
(@ViewingPlayer.Hand.Count @(ViewingPlayer.Hand.Count == 1 ? "karta" : (ViewingPlayer.Hand.Count < 5 ? "karty" : "kariet")))
@if (Engine.State.Rules.OlympicMode)
{
🏅 @ViewingPlayer.OlympicCardsCount @(ViewingPlayer.OlympicCardsCount == 1 ? "karta" : (ViewingPlayer.OlympicCardsCount < 5 ? "karty" : "kariet"))
}
@if (!ViewingPlayer.IsEliminated)
{
}
else
{
☠️ Bol si vyradený z Olympijského turnaja. Sleduj zápas až do konca!
}
@if (IsViewingPlayerTurn && Engine.State.TurnState == TurnState.Playing && !ViewingPlayer.IsEliminated)
{
@if (CheckFourOfAKindRank(ViewingPlayer) is Rank burnRank)
{
}
}
@if (!string.IsNullOrEmpty(LastEventMessage))
{
@LastEventMessage
}
@if (Engine.State.TurnState == TurnState.SelectingSuit && Engine.State.PendingHornikPlayer == ViewingPlayer)
{
}
@if (Engine.State.TurnState == TurnState.PassScreen)
{
}
@if (Engine.State.TurnState == TurnState.RoundOver)
{
}
@if (Engine.State.IsGameOver)
{
}
}
@code {
private bool IsInLobby = true;
private bool IsMuted = false;
private GameEngine? Engine;
private string LastEventMessage = "";
private System.Threading.CancellationTokenSource? _aiCts;
private List