@namespace Faraon.Client.Components

FARAÓN

Tradičná mariášová kartová hra s moderným nábojom
POČET HRÁČOV:
@for (int count = 2; count <= 4; count++) { var c = count; }
@for (int i = 0; i < SelectedPlayerCount; i++) { var idx = i; var p = PlayerConfigs[idx];
@p.Avatar
@if (p.Type == PlayerType.AI) { }
}
PRAVIDLÁ A NASTAVENIA:
❤️
Červená sedma (Oživenie / Resurrect)
Spôsob vrátenia skončeného hráča späť do hry
🍃
Zelený dolník (Rušenie sediem)
Zelený dolník zruší trest zo sedmy & pravidlá vykladania
Počiatočný počet kariet:
Rýchlosť hry:

🎨 Vizuálny štýl balíčka kariet

Original Mariáš Rub
Tradičný Mariáš 🎴
Autentický dvojhlavý Tell vzor (Piatnik)
Zbojníci Rub
Zbojníci & Legendy 🪓
Jánošík, Uhorčík, výšivky a tatranský folklór
SpongeBob Cartoon Rub
SpongeBob Cartoon 🧽
Bikini Bottom edícia (postavičky a veľké symboly)
Cyberpunk 2077 Rub
Cyberpunk 2077 ⚡
Neónový holografický štýl a kybernetickí hrdinovia
Fantasy RPG Rub
Fantasy RPG 🐉
Dračí lordi, mágovia, runy a rytieri
Staroveký Egypt Rub
Staroveký Egypt ⚔️
Zlatý papyrus, Tutanchamón, Anubis a pyramídy
Kráľovské zvieratká Rub
Kráľovské Zvieratká 🐱
Mačičky a psíkovia v kráľovských korunkách
Retro Pixel Rub
Retro 8-Bit Pixel 🕹️
Nostalgický arkádový štýl klasických hier
@code { [Parameter] public EventCallback<(List, RuleOptions)> OnStartGame { get; set; } private int SelectedPlayerCount = 4; private RuleOptions Rules = new(); private readonly string[] Avatars = ["👑", "🧙‍♂️", "🦊", "🦁", "🐯", "🤖", "🐉", "🥷", "👸", "🤠", "🦅", "🐺"]; private List PlayerConfigs = new() { new Player("Ty (Hráč 1)", PlayerType.Human, "👑"), new Player("AI Jano", PlayerType.AI, "🦊", AIDifficulty.Medium), new Player("AI Zuzka", PlayerType.AI, "👸", AIDifficulty.Hard), new Player("AI Mišo", PlayerType.AI, "🤖", AIDifficulty.Easy) }; private void SetPlayerCount(int count) { SelectedPlayerCount = count; } private void CycleAvatar(int index) { var currentAvatar = PlayerConfigs[index].Avatar; int nextIdx = (Array.IndexOf(Avatars, currentAvatar) + 1) % Avatars.Length; PlayerConfigs[index].Avatar = Avatars[nextIdx]; } private async Task StartGame() { var activePlayers = PlayerConfigs.Take(SelectedPlayerCount).Select(p => new Player(p.Name, p.Type, p.Avatar, p.Difficulty) ).ToList(); await OnStartGame.InvokeAsync((activePlayers, Rules)); } }