- New WebGL build (data +6MB, wasm +92KB) with all bug fixes
- Fix MapSchema foreach: iterate via .Keys with explicit casts
- Fix sbyte->int cast for playersAlive Listen callback
- Updated Tutorial.unity scene
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- CameraOrbitKeyboard: clic droit = unlock, clic gauche = re-lock (coherent avec PlayerController)
- CameraOrbitKeyboard: bloque les inputs quand ChatUI est ouvert
- CameraOrbitKeyboard: OnEnable ne verrouille plus la souris si un panel UI est ouvert
- NetworkManager: alimente GameHUD.SetPlayersAlive via Listen(playersAlive)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- PlayerController: block WASD/jump callbacks when ChatUI is open
- PlayerController: clic droit = unlock souris, clic gauche = re-lock (n'est plus un toggle)
- PlayerController: ajoute ResetInputs() appelé à l'ouverture du chat
- ChatUI: appelle ResetInputs() quand le panel s'ouvre pour éviter les touches collées
- NetworkManager: seed les joueurs déjà présents dans la room à la connexion
(les OnAdd Colyseus peuvent être manqués si l'état est décodé avant l'enregistrement des callbacks)
- NetworkManager: garde anti-doublon dans OnPlayerAdd
- NetworkManager: fallback sphere si remotePlayerPrefab est null
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Backend:
- GET /rooms via matchMaker.query() pour lister les salles actives
- ArenaRoom: setMetadata avec nom de salle (Salle #<id6>)
NetworkManager:
- FetchRooms() / OnRoomsRefreshed event (UnityWebRequest GET /rooms)
- JoinByRoomId(), CreateRoom() en plus de JoinArena()
- Refactoring: PrepareJoin/FinishJoin/HandleJoinError pour eviter duplication
LobbyUI:
- Redesign: panel 620x520 avec setup perso (gauche) + liste rooms (droite)
- Bouton Rejoindre par salle, Creer une salle, Rejoindre n importe
- Pseudo pre-rempli depuis PlayerPrefs
- Refresh automatique toutes les 4s
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
NetworkManager: inverser ordre OnDisconnected/Cleanup pour que les listeners
aient encore acces a LocalPlayerName au moment du callback.
StatsTracker: mettre en cache le nom a la connexion comme fallback supplementaire.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- ChatUI: PlayerName utilise PlayerPrefs comme fallback si non connecte
- NetworkManager: sauvegarde le nom dans PlayerPrefs a la connexion
- GameCanvas: version build bump -> 20260517b (cache bust)
- Nouveaux fichiers build_mai (data + wasm mis a jour)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
rolld.io pointe sur CloudFront sans exposer le port 2567.
Le game server Coolify est accessible via game.rolld.kerboul.me (Traefik).
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>