feat(rules): add game-specific metadata attachment and unify match metadata initialization

Added AttachGameMetadata to GameRules interface

Implemented metadata setup for Battleship (phase + readiness flags)

Implemented no-op metadata hook for TicTacToe

Moved generic phase/ready metadata out of MatchInit

Added game/mode metadata to match state

Fixed json:"metadata" tag in MatchState
This commit is contained in:
2025-12-03 22:02:24 +05:30
parent 0562d1e0c9
commit f1e85a72dd
5 changed files with 23 additions and 5 deletions

View File

@@ -7,5 +7,5 @@ type MatchState struct {
Turn int `json:"turn"` // index in Players[]
Winner int `json:"winner"` // -1 = none, >=0 = winner index
GameOver bool `json:"game_over"` // true when the match ends
Metadata map[string]interface{} `json:metadata` // metadata
Metadata map[string]interface{} `json:"metadata"` // metadata
}