You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

34 lines
1.1 KiB
Go

package model
// PublicUser is the "public" version of the "User" struct, this excludes private information
type PublicUser struct {
Username string `json:"username"`
}
// User represents a user in the database
type User struct {
Username string `json:"username"`
PasswordBCrypt []byte `json:"passwordBCrypt"`
}
func (u User) PublicUser() PublicUser {
return PublicUser{
Username: u.Username,
}
}
type PartitaConfig struct {
// NumeroGiocatori indica il numero totale di giocatori (per capire quanto tutti sono entrati nella partita)
NumeroGiocatori int
// NumeroPerRuolo indica quanti giocatori di un certo ruolo ci dovrebbero essere
NumeroPerRuolo map[string]int
}
type Partita struct {
Uid string // Uid è il codice identificativo della partita.
Config PartitaConfig // Config è la configurazione iniziale della partita.
Players []string // Players è la lista di giocatori che sono entrati in questa partita.
Iniziata bool // Iniziata indica se la partita è iniziata, quando lo è c'è una tabella corrispondente StatoPartita con le informazioni sui vari giocatori e sullo stato attuale del gioco.
}