Skip to content

Latest commit

 

History

3 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 

Repository files navigation

Sah

O aplicație web interactivă de șah dezvoltată în Blazor WebAssembly (.NET 8), ce oferă o experiență de joc completă, animații fluide și funcționalități moderne, precum controlul prin comenzi scrise (text).

🚀 Funcționalități Principale

1. Logică de Joc și Reguli Oficiale

  • Implementare completă a regulilor de șah: Aplicația validează mișcările geometrice ale fiecărei piese (Pion, Cal, Nebun, Turn, Regină, Rege).
  • Protecția Regelui: Sunt blocate mutările care ar pune propriul rege în șah. Regele nu poate fi capturat direct de pe tablă.
  • Mutări Speciale: Suport complet pentru Rocadă (mică/mare) și Promovarea Pionului într-o piesă superioară la atingerea ultimei linii.
  • Stări de Final de Joc: Detectarea automată a situațiilor de Șah Mat și Remiză (Pat).

2. Interfață Vizuală și Experiență Interactivă

  • Design Modern & Clasic: Tablă de șah randată dinamic, optimizată cu ajutorul Bootstrap și CSS personalizat.
  • Feedback Vizual: Pătrățelul piesei selectate pulsează cu verde transparent, iar piesele adverse care pot fi capturate pulsează cu roșu.
  • Animații Fluide: Mișcările pieselor sunt animate nativ prin CSS Transitions (transform), oferind o glisare lină pe tablă.
  • Panou Piese Pierdute: Contorizarea și afișarea vizuală separată a pieselor capturate pentru fiecare jucător.

3. Game Control & Cronometrare

  • Sistem de Clopoțel/Cronometru: Timp dedicat pentru fiecare jucător, implementat prin System.Timers.Timer, care scade în timp real doar pentru jucătorul aflat la rând și se oprește la finalul partidei.
  • Resetare Completă: Buton dedicat pentru reinițializarea rapidă a tablei și a ceasurilor de joc.

4. Integrare Text AI (Consolă Command Chat)

  • Proiectul include o consolă text inteligentă care permite utilizatorului să efectueze mutări tastând comenzi libere (ex: "Muta E2 la E4" sau "Cal B1 la C3").
  • Sistemul folosește expresii regulate (Regex) pentru a interpreta textul și execută automat mutarea pe tablă, rulând aceleași animații și validări ca la click-ul clasic.

🛠️ Tehnologii Utilizate

  • Framework: Blazor WebAssembly (.NET 8.0)
  • Limbaj de programare: C# (Logica din spate, simulări de șah în memorie și temporizatoare)
  • Frontend/Stilizare: HTML5, CSS3 (Animații @keyframes și transitions), Bootstrap 5
  • Stocare date / Structură: Matrice bidimensională în C# pentru gestionarea stării tablei

About

O aplicație interactivă de șah construită cu Blazor WebAssembly (.NET 8) care include reguli oficiale (șah-mat, rocadă), animații CSS fluide, cronometre pe ture și o consolă de chat cu comenzi AI bazată pe text.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages