CATUR GAME
### 🎮 Modalità di gioco
- **Solo (Vs IA)** — Sfida il computer con 5 livelli di intelligenza: Facile, Medio, Difficile, Esperto e Maestro.
- **Locale (2 giocatori)** — Gioca sullo stesso dispositivo con un amico.
- **Schermo diviso** — Schermo diviso per due giocatori sullo stesso dispositivo.
- **Cooperativa** — Gioca in squadra contro l'IA con chat.
- **Online** — Multigiocatore remoto tramite WebSocket/WebRTC con codice della lobby, ping/latenza e sistema di riconnessione.
### 🧠 IA intelligente e regole FIDE complete
- Motore scacchistico completo: en passant, promozione, arrocco, scacco/scacco matto, stallo, ripetizione tripla, regola delle 50 mosse, materiale insufficiente, patta, resa, annulla e ripristina.
- Minimax IA + potatura Alpha-Beta, tabella di trasposizione, libro delle aperture ed euristiche per i finali. L'IA non effettua mai mosse illegali.
### ✨ Grafica e audio moderni
- Effetti di bagliore, bloom, particelle, coriandoli, fuochi d'artificio, flash dello schermo e tremolio della telecamera.
- Animazioni fluide dei pedoni con un obiettivo di 60 FPS.
- Audio tramite file audio o sintesi automatica WebAudio (quando le risorse non sono disponibili).
- I pedoni visualizzano immagini PNG o, in alternativa, emoji scacchistiche Unicode.
### ⏱️ Altre funzionalità
- **Timer**: Blitz / Rapido / Illimitato + incremento e ritardo.
- Temi: 7 temi per la scacchiera e 7 temi per i pezzi (Classico, Legno, Marmo, Neon, Fantascienza, ecc.).
- Salvataggio/caricamento automatico nella memoria locale (FEN, cronologia, timer, statistiche).
- Statistiche: vittorie/sconfitte/pareggi, percentuale di vittorie, precisione, numero di mosse.
- Esportazione/importazione di file PGN e FEN (copia negli appunti).
- Controlli: touch, mouse, tastiera e gamepad.
- Lingue: Indonesiano e Inglese.
Funziona offline: non è necessaria una connessione internet per la modalità Solo/Locale.
### 🚀 Prestazioni
Ottimizzato con object pool, sprite cache e requestAnimationFrame per un'esperienza di gioco reattiva ed efficiente in termini di memoria su dispositivi Android.
