本文整理匯總了Golang中github.com/canopener/PongPlusPlus-Server/server/connection.Conn.Write方法的典型用法代碼示例。如果您正苦於以下問題:Golang Conn.Write方法的具體用法?Golang Conn.Write怎麽用?Golang Conn.Write使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類github.com/canopener/PongPlusPlus-Server/server/connection.Conn
的用法示例。
在下文中一共展示了Conn.Write方法的4個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Golang代碼示例。
示例1: RequestGameList
// RequestGameList handles the case where a player sends a RequestGameList message
func RequestGameList(conn *connection.Conn, allGames map[string]*games.Game, message messages.RequestGameListMessage) {
serverlog.General("Received RequestGameList message from", conn.Identification())
if !conn.Registered {
serverlog.General("Unregistered", conn.Identification(), "called RequestGameList")
return
}
serverlog.General("Sending Game list to", conn.Identification())
gameList := games.NewGameListMessage(allGames)
conn.Write(gameList.Bytes())
}
示例2: RequestAlias
// RequestAlias handles the situation when a client sends a RequestAlias message
func RequestAlias(message messages.RequestAliasMessage, conn *connection.Conn, al map[string]bool) {
serverlog.General("Received RequestAlias message from", conn.Identification())
if conn.Registered {
serverlog.General(conn.Identification(), "attempted to request new alias:", message.Alias)
denied := messages.NewAliasDeniedMessage("Already registered with alias: " + conn.Alias)
conn.Write(denied.Bytes())
return
}
if _, ok := al[message.Alias]; ok {
serverlog.General(conn.Identification(), "requested existing alias:", message.Alias)
denied := messages.NewAliasDeniedMessage("That alias is taken")
conn.Write(denied.Bytes())
return
}
if len(message.Alias) < 3 || len(message.Alias) > 10 {
serverlog.General(conn.Identification(), "requested too long or too short alias:", message.Alias)
denied := messages.NewAliasDeniedMessage("An alias needs to be between 3 and 10 characters long (inclusive)")
conn.Write(denied.Bytes())
return
}
serverlog.General("Successful registration under alias:", message.Alias)
conn.Alias = message.Alias
conn.Registered = true
serverlog.General("Adding:", message.Alias, "to takenAliases map")
al[message.Alias] = true
approved := messages.NewAliasApprovedMessage()
conn.Write(approved.Bytes())
}
示例3: JoinGame
// JoinGame handles the case where a player sends a JoinGame message
func JoinGame(conn *connection.Conn, allGames map[string]*games.Game, message messages.JoinGameMessage) {
serverlog.General("Received JoinGame message from conn:", conn.Alias)
if !conn.Registered {
serverlog.General("Unregistered", conn.Identification, "called JoinGame")
denied := messages.NewJoinGameDeniedMessage("You have not registered an Alias")
conn.Write(denied.Bytes())
return
}
if conn.InGame {
serverlog.General(conn.Identification(), "attempted to join a game but is already in game:", allGames[conn.GameID].Name)
denied := messages.NewJoinGameDeniedMessage("You re already in a game")
conn.Write(denied.Bytes())
return
}
if _, ok := allGames[message.GameID]; !ok {
serverlog.General(conn.Identification(), "attempted to join a non existing game:", message.GameID)
denied := messages.NewJoinGameDeniedMessage("No games with that ID")
conn.Write(denied.Bytes())
return
}
game := allGames[message.GameID]
serverlog.General(conn.Identification(), "Successfully joined", game.Identification())
conn.InGame = true
conn.GameID = game.ID
game.Start(conn)
go listenFinished(game, allGames)
}
示例4: CreateGame
// CreateGame handles the case where a player sends a CreateGame message
func CreateGame(conn *connection.Conn, allGames map[string]*games.Game, message messages.CreateGameMessage) {
serverlog.General("Received CreateGame message from", conn.Identification())
if !conn.Registered {
serverlog.General("Unregistered", conn.Identification(), "called createGame")
denied := messages.NewCreateGameDeniedMessage(message.GameName, "You are not registered")
conn.Write(denied.Bytes())
return
}
if conn.InGame {
serverlog.General(conn.Identification(), "tried to create a new game but is already in game:", allGames[conn.GameID].Name)
denied := messages.NewCreateGameDeniedMessage(message.GameName, "You are already in a game")
conn.Write(denied.Bytes())
return
}
serverlog.General("Creating game:", message.GameName, "by", conn.Identification())
game := games.NewGame(conn, message.GameName)
serverlog.General(conn.Identification(), "setting InGame to true and Game to the game:", game.Name)
conn.InGame = true
conn.GameID = game.ID
serverlog.General("Attatching", game.Identification(), "to games list")
allGames[game.ID] = game
approved := messages.NewCreateGameApprovedMessage(game.ID, game.Name)
conn.Write(approved.Bytes())
}