1
This commit is contained in:
parent
6405a233fd
commit
c2b32f4d1b
@ -65,7 +65,7 @@ func (this *app) Update() {
|
||||
}
|
||||
}
|
||||
|
||||
func (this *app) addNetMsg(hdr *f5.MsgHdr) {
|
||||
func (this *app) AddNetMsg(hdr *f5.MsgHdr) {
|
||||
this.netMsgQueue.Push(&hdr.Entry)
|
||||
f5.GetApp().NotifyLoopCond()
|
||||
}
|
||||
|
@ -1,5 +1,12 @@
|
||||
package app
|
||||
|
||||
func GetApp() *app {
|
||||
return nil
|
||||
import (
|
||||
"main/constant"
|
||||
"main/global"
|
||||
)
|
||||
|
||||
var _app = new(app)
|
||||
|
||||
func init() {
|
||||
global.RegModule(constant.APP_MODULE_IDX, _app)
|
||||
}
|
||||
|
@ -10,11 +10,6 @@ import (
|
||||
proto "github.com/golang/protobuf/proto"
|
||||
)
|
||||
|
||||
type Module interface {
|
||||
Init()
|
||||
UnInit()
|
||||
}
|
||||
|
||||
type Room interface {
|
||||
|
||||
}
|
||||
@ -42,4 +37,5 @@ type HttpListener interface {
|
||||
|
||||
type App interface {
|
||||
SetCb(func(), func())
|
||||
AddNetMsg(*f5.MsgHdr)
|
||||
}
|
||||
|
@ -1,9 +1,9 @@
|
||||
package constant
|
||||
|
||||
const (
|
||||
PLAYER_MGR_HANDLER_ID = 1
|
||||
PLAYER_HANDLER_ID = 2
|
||||
WSP_LISTENER_HANDLER_ID = 3
|
||||
PLAYER_MGR_HANDLER_ID = iota
|
||||
PLAYER_HANDLER_ID
|
||||
WSP_LISTENER_HANDLER_ID
|
||||
)
|
||||
|
||||
const (
|
||||
@ -14,3 +14,12 @@ const (
|
||||
GAME_DB = "gamedb"
|
||||
FRIEND_DB = "firenddb"
|
||||
)
|
||||
|
||||
const (
|
||||
ROOMMGR_MODULE_IDX = iota
|
||||
APP_MODULE_IDX
|
||||
WSPLISTENER_MODULE_IDX
|
||||
HANDLER_MGR_MODULE_IDX
|
||||
HTTP_LISTENER_MODULE_IDX
|
||||
MAX_MODULE_IDX
|
||||
)
|
||||
|
@ -1,9 +1,14 @@
|
||||
package global
|
||||
|
||||
import (
|
||||
"q5"
|
||||
"main/constant"
|
||||
"main/common"
|
||||
)
|
||||
|
||||
var modules [constant.MAX_MODULE_IDX]q5.Module
|
||||
|
||||
var app common.App
|
||||
var roomMgr common.RoomMgr
|
||||
var playerMgr common.PlayerMgr
|
||||
var wspListener common.WspListener
|
||||
@ -12,22 +17,18 @@ func GetRoomMgr() common.RoomMgr {
|
||||
return roomMgr
|
||||
}
|
||||
|
||||
func SetRoomMgr(mgr common.RoomMgr) {
|
||||
roomMgr = mgr
|
||||
}
|
||||
|
||||
func GetPlayerMgr() common.PlayerMgr {
|
||||
return playerMgr
|
||||
}
|
||||
|
||||
func SetPlayerMgr(mgr common.PlayerMgr) {
|
||||
playerMgr = mgr
|
||||
}
|
||||
|
||||
func GetWspListener() common.WspListener {
|
||||
return wspListener
|
||||
}
|
||||
|
||||
func SetWspListener(mgr common.WspListener) {
|
||||
wspListener = mgr
|
||||
func GetApp() common.App {
|
||||
return app
|
||||
}
|
||||
|
||||
func RegModule(idx int32, m q5.Module) {
|
||||
modules[idx] = m
|
||||
}
|
||||
|
@ -1,5 +1,6 @@
|
||||
package initialize
|
||||
|
||||
/*
|
||||
import (
|
||||
"f5"
|
||||
|
||||
@ -9,13 +10,15 @@ import (
|
||||
"main/listener"
|
||||
"main/app"
|
||||
)
|
||||
*/
|
||||
|
||||
func Init() {
|
||||
app.GetApp().SetCb(initApp, unInitApp)
|
||||
f5.Run(app.GetApp())
|
||||
//app.GetApp().SetCb(initApp, unInitApp)
|
||||
//f5.Run(app.GetApp())
|
||||
}
|
||||
|
||||
func initApp() {
|
||||
/*
|
||||
global.SetPlayerMgr(player.GetPlayerMgr())
|
||||
global.SetRoomMgr(room.GetRoomMgr())
|
||||
global.SetWspListener(listener.GetWspListener())
|
||||
@ -25,11 +28,14 @@ func initApp() {
|
||||
room.GetRoomMgr().Init()
|
||||
listener.GetWspListener().Init()
|
||||
listener.GetHttpListener().Init()
|
||||
*/
|
||||
}
|
||||
|
||||
func unInitApp() {
|
||||
/*
|
||||
listener.GetHttpListener().UnInit()
|
||||
listener.GetWspListener().UnInit()
|
||||
room.GetRoomMgr().UnInit()
|
||||
player.GetPlayerMgr().UnInit()
|
||||
*/
|
||||
}
|
||||
|
@ -1,28 +1,16 @@
|
||||
package listener
|
||||
|
||||
var g = struct {
|
||||
wspListener *WSPListener
|
||||
handlerMgr *HandlerMgr
|
||||
httpListener *httpListener
|
||||
}{}
|
||||
import (
|
||||
"main/constant"
|
||||
"main/global"
|
||||
)
|
||||
|
||||
func GetWspListener() *WSPListener {
|
||||
if g.wspListener == nil {
|
||||
g.wspListener = new(WSPListener)
|
||||
}
|
||||
return g.wspListener
|
||||
}
|
||||
var _wspListener = new(WSPListener)
|
||||
var _handlerMgr = new(HandlerMgr)
|
||||
var _httpListener = new(httpListener)
|
||||
|
||||
func GetHandlerMgr() *HandlerMgr {
|
||||
if g.handlerMgr == nil {
|
||||
g.handlerMgr = new(HandlerMgr)
|
||||
}
|
||||
return g.handlerMgr
|
||||
}
|
||||
|
||||
func GetHttpListener() *httpListener {
|
||||
if g.httpListener == nil {
|
||||
g.httpListener = new(httpListener)
|
||||
}
|
||||
return g.httpListener
|
||||
func init() {
|
||||
global.RegModule(constant.WSPLISTENER_MODULE_IDX, _wspListener)
|
||||
global.RegModule(constant.HANDLER_MGR_MODULE_IDX, _handlerMgr)
|
||||
global.RegModule(constant.HTTP_LISTENER_MODULE_IDX, _httpListener)
|
||||
}
|
||||
|
@ -12,6 +12,7 @@ import (
|
||||
|
||||
proto "github.com/golang/protobuf/proto"
|
||||
"main/constant"
|
||||
. "main/global"
|
||||
)
|
||||
|
||||
type WSPListener struct {
|
||||
@ -139,13 +140,13 @@ func (this *WSPListener) parseNetPkt() {
|
||||
hdr.Msg = ss.ParsePb(hdr.MsgId, hdr.Data)
|
||||
if hdr.Msg != nil {
|
||||
hdr.Entry.Init(hdr)
|
||||
//app.addNetMsg(hdr)
|
||||
GetApp().AddNetMsg(hdr)
|
||||
}
|
||||
} else {
|
||||
hdr.Msg = cs.ParsePb(hdr.MsgId, hdr.Data)
|
||||
if hdr.Msg != nil {
|
||||
hdr.Entry.Init(hdr)
|
||||
//app.addNetMsg(hdr)
|
||||
GetApp().AddNetMsg(hdr)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user