diff options
Diffstat (limited to 'server/api')
| -rw-r--r-- | server/api/game.go | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/server/api/game.go b/server/api/game.go index d830d71..e6235b9 100644 --- a/server/api/game.go +++ b/server/api/game.go @@ -1,6 +1,7 @@ package api import ( + "fmt" "net/http" "sakura/data/cirno" "sakura/engine" @@ -66,11 +67,9 @@ func GameConnect(w http.ResponseWriter, r *http.Request) { func Bind(g *engine.Game, w http.ResponseWriter, r *http.Request) (*engine.Player, *http.Cookie) { cookie, err := r.Cookie("User") - newUser := false var id string if err != nil { - newUser = true uid := uuid.NewV7() id = uid.String() cookie = &http.Cookie{ @@ -88,10 +87,10 @@ func Bind(g *engine.Game, w http.ResponseWriter, r *http.Request) (*engine.Playe } switch { - case newUser && g.Yin.Cookie == "": + case g.Yin.Cookie == "" && g.Yang.Cookie != id: g.Yin.Cookie = id return g.Yin, cookie - case newUser && g.Yang.Cookie == "": + case g.Yang.Cookie == "" && g.Yin.Cookie != id: g.Yang.Cookie = id return g.Yang, cookie case g.Yang.Cookie == id: @@ -106,7 +105,11 @@ func Bind(g *engine.Game, w http.ResponseWriter, r *http.Request) (*engine.Playe func Update(id uuid.UUID, g *engine.Game) { for _, c := range connections[id] { - _ = c.Socket.WriteJSON(g) + err := c.Socket.WriteJSON(g) + if err != nil { + fmt.Printf("%v\n", err) + } + } } |
