社區leaf學習筆記|05. 遊戲玩家註冊、登錄(上)

Leaf遊戲框架--玩家登錄協議定義

首先 咱們須要增長玩家註冊、登錄的協議,消息結構定義在server\msg\msg.go中,可是爲了便於查找建議單獨創建文件 例如 以下圖 創建目錄:server\msg\protocolfile\protocol.gogit

protocol.go 內容github

package Protocol
// 用戶登錄協議
type UserLogin struct {
   LoginName string // 用戶名
   LoginPW   string // 密碼
}
// 註冊協議
type UserRegister struct {
   LoginName string // 用戶名
   LoginPW   string // 密碼
   // Mobi      string // 手機號
   // Email      string // 郵箱
}
// 玩家的臨時結構
// 玩家有角色的狀況
type UserST struct {
   UID      string // 帳號ID
   ServerID string // 服務器ID
   RoleUID  string // 角色UID
   RoleName string // 角色名字
   RoleLev  string // 角色等級
   Coin     string // 金幣
   // 其餘的暫時不作定義
}

登錄路由配置

路由配置方式請參照前幾節文章,本節及後面只是歸納
路徑:server\gate\router.gojson

router.go :服務器

package gate
import (
   _ "server/game"
   "server/login"
   "server/msg"
   "server/msg/protocolfile"
)
func init() {
   msg.Processor.SetRouter(&Protocol.UserLogin{}, login.ChanRPC)
}

註冊消息
路徑:server\msg\msg.go
msg.go:app

package msg
import (
   "server/msg/protocolfile"
   "github.com/name5566/leaf/network"
   "github.com/name5566/leaf/network/json"
)
var Processorbak network.Processor
// 使用默認的 JSON 消息處理器(默認還提供了 protobuf 消息處理器)
var Processor = json.NewProcessor()
func init() {
   // 這裏咱們註冊了一個 JSON 消息 Test
   Processor.Register(&Protocol.UserLogin{})
}

以上配置完成後,消息註冊及路由配置就OK了,總結下 以下:
1 msg.go      消息註冊使用
2 protocol.go 消息定義框架

相關文章
相關標籤/搜索