Enha: leave one room model for now

This commit is contained in:
Grail Finder
2025-05-03 10:22:50 +03:00
parent 5cf1f1199e
commit b135356d3f
4 changed files with 21 additions and 36 deletions

View File

@ -5,7 +5,7 @@ import (
"golias/models"
)
func createRoom(ctx context.Context, req *models.RoomReq) (*models.RoomPublic, error) {
func createRoom(ctx context.Context, req *models.RoomReq) (*models.Room, error) {
return nil, nil
}

View File

@ -26,11 +26,16 @@ func init() {
}
var roundWords = map[string]string{
"hamster": "blue",
"child": "red",
"wheel": "white",
"condition": "black",
"test": "white",
"hamster": "blue",
"child": "red",
"wheel": "white",
"condition": "black",
"test": "white",
"ball": "blue",
"violin": "red",
"rat": "white",
"perplexity": "blue",
"notion": "red",
}
func HandlePing(w http.ResponseWriter, r *http.Request) {

View File

@ -43,6 +43,9 @@ type Room struct {
Cards []WordCard
GameSettings *GameSettings `json:"settings"`
Result uint8 // 0 for unknown; 1 is win for red; 2 if for blue;
BlueCounter uint8
RedCounter uint8
RedTurn bool // false is blue turn
}
type WordCard struct {
@ -51,34 +54,6 @@ type WordCard struct {
Revealed bool
}
type RoomPublic struct {
ID string `json:"id" db:"id"`
CreatedAt time.Time `json:"created_at" db:"created_at"`
PlayerList []string `json:"player_list"`
CreatorName string `json:"creator_name"`
GameSettings *GameSettings `json:"settings"`
RedMime string
TeamTurn string
BlueMime string
RedGuessers []string
BlueGuessers []string
Cards []WordCard
}
func (r Room) ToPublic() RoomPublic {
return RoomPublic{
ID: r.ID,
CreatedAt: r.CreatedAt,
PlayerList: r.PlayerList,
GameSettings: r.GameSettings,
CreatorName: r.CreatorName,
RedMime: r.RedMime,
BlueMime: r.BlueMime,
RedGuessers: r.RedGuessers,
BlueGuessers: r.BlueGuessers,
}
}
type GameSettings struct {
IsRunning bool `json:"is_running"`
Language string `json:"language" example:"en" form:"language"`

View File

@ -42,7 +42,7 @@ func StrToUserRole(s string) UserRole {
type UserState struct {
Username string
Room RoomPublic
Room Room
Team UserTeam
Role UserRole
}
@ -54,8 +54,13 @@ func MakeTestState() *UserState {
{Word: "wheel", Color: "white"},
{Word: "condition", Color: "black"},
{Word: "test", Color: "white"},
{Word: "ball", Color: "blue"},
{Word: "violin", Color: "red"},
{Word: "rat", Color: "white"},
{Word: "perplexity", Color: "blue"},
{Word: "notion", Color: "red"},
}
room := RoomPublic{
room := Room{
ID: "test-id",
CreatedAt: time.Now(),
CreatorName: "test-name",