summaryrefslogtreecommitdiff
path: root/internal/api/database/models.go
diff options
context:
space:
mode:
Diffstat (limited to 'internal/api/database/models.go')
-rw-r--r--internal/api/database/models.go46
1 files changed, 27 insertions, 19 deletions
diff --git a/internal/api/database/models.go b/internal/api/database/models.go
index f065a8c..82a2649 100644
--- a/internal/api/database/models.go
+++ b/internal/api/database/models.go
@@ -17,24 +17,32 @@ const (
PairGameType GameType = "pair"
)
+type MoveChooseType string
+
+const (
+ SequentialChooseType MoveChooseType = "sequential"
+ RandomChooseType MoveChooseType = "random"
+)
+
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"`
- UpdatedAt time.Time `json:"updated_at"`
+ ID int `json:"id"`
+ Type GameType `json:"type"`
+ MoveChoose MoveChooseType `json:"move_choose_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"`
+ UpdatedAt time.Time `json:"updated_at"`
}