diff options
author | Santo Cariotti <santo@dcariotti.me> | 2025-04-24 13:53:54 +0200 |
---|---|---|
committer | Santo Cariotti <santo@dcariotti.me> | 2025-04-24 13:53:54 +0200 |
commit | b35829071ab0d0f3479021eac151b90e49a2fca5 (patch) | |
tree | 0e2af88ed2732e2211ffbf5689488e010174783a /internal/api/database/models.go | |
parent | 4ae96a216eb50ccec7712fa9ed0d4dc8d9950f68 (diff) |
Play co-op 2 vs 2
Diffstat (limited to 'internal/api/database/models.go')
-rw-r--r-- | internal/api/database/models.go | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/internal/api/database/models.go b/internal/api/database/models.go index 4acbca5..f065a8c 100644 --- a/internal/api/database/models.go +++ b/internal/api/database/models.go @@ -10,15 +10,29 @@ type User struct { UpdatedAt time.Time `json:"updated_at"` } +type GameType string + +const ( + SingleGameType GameType = "single" + PairGameType GameType = "pair" +) + type Game struct { ID int `json:"id"` + Type GameType `json:"type"` Player1ID int `json:"-"` Player1 User `gorm:"foreignKey:Player1ID" json:"player1"` Player2ID *int `json:"-"` Player2 *User `gorm:"foreignKey:Player2ID;null" json:"player2"` + Player3ID *int `json:"-"` + Player3 *User `gorm:"foreignKey:Player3ID;null" json:"player3"` + Player4ID *int `json:"-"` + Player4 *User `gorm:"foreignKey:Player4ID;null" json:"player4"` Name string `json:"name"` IP1 string `json:"ip1"` IP2 string `json:"ip2"` + IP3 string `json:"ip3"` + IP4 string `json:"ip4"` Outcome string `json:"outcome"` LastPlayer int `json:"last_player"` // Last player entered in game CreatedAt time.Time `json:"created_at"` |