fixed the most basic test version

This commit is contained in:
2024-11-13 11:40:32 +01:00
parent d16fe9a5cb
commit 9a17f33f90
4 changed files with 157 additions and 20 deletions

View File

@@ -1,49 +1,62 @@
package main
import (
"github.com/gin-gonic/gin"
"net/http"
"github.com/gin-gonic/gin"
)
type Player struct {
name string
Name string `json:"name"`
}
func NewPlayer(name string) Player {
return Player{name}
}
type Settings struct{}
type Settings struct {
Set0 string `json:"set0" :"set_0"`
}
func defSettings() Settings {
return Settings{}
func DefSettings() *Settings {
return &Settings{Set0: "ich bin ein Test Setting"}
}
type Lobby struct {
id int `json:"id"`
teams [2]Player `json:"players"`
settings Settings `json:"settings"`
ID int `json:"id"`
Teams *[2]Player `json:"teams"`
Settings *Settings `json:"settings"`
}
func NewLobby(id int, teams [2]Player, settings Settings) (*Lobby, error) {
return &Lobby{id, teams, settings}, nil
func NewLobby(ID int, teams *[2]Player, settings *Settings) *Lobby {
return &Lobby{ID: ID, Teams: teams, Settings: settings}
}
func getLobbies(c *gin.Context) {
func GetLobbies(c *gin.Context) {
c.IndentedJSON(http.StatusOK, lobbies)
}
var lobbycount = 0
var players map[string]Player
var lobbies map[int]*Lobby
func GetPlayers(c *gin.Context) {
c.IndentedJSON(http.StatusOK, players)
}
var players = make(map[string]*Player) //nolint:gochecknoglobals
var lobbies = make(map[int]*Lobby) //nolint:gochecknoglobals
func main() {
lobbyc := 0
router := gin.Default()
router.GET("/ping", func(c *gin.Context) {
c.JSON(http.StatusOK, gin.H{
"message": "pong",
})
})
router.GET("/GET/lobby", GetLobbies)
router.GET("/GET/player", GetPlayers)
var tmpPlayer = [2]Player{NewPlayer("Abc"), NewPlayer("Xyz")}
players["cookie0"] = tmpPlayer[0]
players["cookie1"] = tmpPlayer[1]
var err error
lobbies[lobbycount], err = NewLobby(lobbycount, tmpPlayer, defSettings())
if err != nil {
}
players["cookie0"] = &tmpPlayer[0]
players["cookie1"] = &tmpPlayer[1]
lobbies[lobbyc] = NewLobby(lobbyc, &tmpPlayer, DefSettings())
router.Run("localhost:8080")
}