Merge branch 'develop' into sdk
This commit is contained in:
commit
b880ac07a7
@ -156,7 +156,7 @@ func (w *fileLogWriter) doRotate() error {
|
||||
|
||||
// return error if the last file checked still existed
|
||||
if err == nil {
|
||||
return fmt.Errorf("rotate: cannot find free log number to rename %s", w.Filename)
|
||||
//return fmt.Errorf("rotate: cannot find free log number to rename %s", w.Filename)
|
||||
}
|
||||
|
||||
w.fileWriter.Close()
|
||||
|
||||
@ -926,12 +926,24 @@ func Destroy() {
|
||||
log.Debug("palyer %d 断开连接 写入数据", k)
|
||||
return true
|
||||
})
|
||||
if G_GameLogicPtr.FriendMgr != nil {
|
||||
G_GameLogicPtr.FriendMgr.SaveData()
|
||||
G_GameLogicPtr.RankMgr.SaveData()
|
||||
G_GameLogicPtr.ChampshipMgr.SaveData()
|
||||
G_GameLogicPtr.MailMgr.SaveData()
|
||||
}
|
||||
if G_GameLogicPtr.MessageMgr != nil {
|
||||
G_GameLogicPtr.MessageMgr.SaveData()
|
||||
}
|
||||
if G_GameLogicPtr.VarMgr != nil {
|
||||
G_GameLogicPtr.VarMgr.SaveData()
|
||||
G_GameLogicPtr.MLogManager.Close()
|
||||
}
|
||||
if G_GameLogicPtr.ChampshipMgr != nil {
|
||||
G_GameLogicPtr.ChampshipMgr.SaveData()
|
||||
}
|
||||
if G_GameLogicPtr.MailMgr != nil {
|
||||
G_GameLogicPtr.MailMgr.SaveData()
|
||||
}
|
||||
if G_GameLogicPtr.RankMgr != nil {
|
||||
G_GameLogicPtr.RankMgr.SaveData()
|
||||
}
|
||||
}
|
||||
log.Debug("服务器下线完成")
|
||||
}
|
||||
|
||||
@ -119,6 +119,7 @@ func HandleClientReq(args []interface{}) {
|
||||
G_GameLogicPtr.SendServerVersion(a)
|
||||
case "ReqRegisterAccount":
|
||||
detail := &msg.ReqRegisterAccount{}
|
||||
log.Debug("player %s start login", detail.UserName)
|
||||
proto.Unmarshal(buf, detail)
|
||||
gl := G_getGameLogic()
|
||||
defer func() {
|
||||
@ -181,16 +182,18 @@ func HandleClientReq(args []interface{}) {
|
||||
db.UpdateAccountInfoDeviceToDb(accountInfo)
|
||||
p, _ := internal.Agents.Load(a)
|
||||
if p != nil {
|
||||
p.(*Player).lock.Lock() //加锁
|
||||
defer p.(*Player).lock.Unlock() //解锁
|
||||
log.Debug("player %s login success", detail.UserName)
|
||||
p.(*Player).PlayMod.getBaseMod().DiviceId = detail.Device //加锁
|
||||
p.(*Player).PushClientRes(ResLogin)
|
||||
p.(*Player).LoginBackData()
|
||||
p.(*Player).TeLog("Login_log", nil)
|
||||
p.(*Player).ProcessTrigger()
|
||||
}
|
||||
if newPlayer {
|
||||
log.Debug("uid : %d, init user process : %s, execTime : %v , isNew: %v", p.(*Player).M_DwUin, m.GetFunc(), time.Since(start), newPlayer)
|
||||
}
|
||||
p.(*Player).ProcessTrigger()
|
||||
case "ReqServerTime": // 获取服务器时间
|
||||
detail := &msg.ReqServerTime{}
|
||||
proto.Unmarshal(buf, detail)
|
||||
|
||||
@ -286,6 +286,9 @@ func ComsumerMsgHandler(data *msg.Msg) (interface{}, error) {
|
||||
messages.mu.Lock()
|
||||
defer messages.mu.Unlock()
|
||||
for i, msgItem := range messages.Messages {
|
||||
if msgItem == nil {
|
||||
continue
|
||||
}
|
||||
if msgItem.UniKey == data.UniKey {
|
||||
// 删除消息
|
||||
messages.Messages = append(messages.Messages[:i], messages.Messages[i+1:]...)
|
||||
@ -766,6 +769,12 @@ func FriendMgrSend(m1 *msg.Msg) error {
|
||||
|
||||
// 异步发送消息到指定节点 节点不在线则保存消息
|
||||
func sendMessageAsync(m *msg.Msg, node int) error {
|
||||
defer func() {
|
||||
if r := recover(); r != nil {
|
||||
log.Error("message_mgr fatal : sendMessageAsync err:%s", fmt.Sprintf("fatal : %s", r))
|
||||
GoUtil.SendFeishuFatal(0, "sendMessageAsync", fmt.Sprintf("fatal : %s", r))
|
||||
}
|
||||
}()
|
||||
log.Debug("[Middleware] Send Async message to node: %d, message: %v", node, m)
|
||||
err := mergeCluster.SendServerMsg(m, node)
|
||||
if err != nil && GoUtil.InArray(m.HandleType, save_msg_type) {
|
||||
@ -778,6 +787,12 @@ func sendMessageAsync(m *msg.Msg, node int) error {
|
||||
|
||||
// 同步消息到指定节点 节点不在线则保存消息
|
||||
func sendMessageSync(m *msg.Msg, node int) (*msg.Msg, error) {
|
||||
defer func() {
|
||||
if r := recover(); r != nil {
|
||||
log.Error("message_mgr fatal : sendMessageSync err:%s", fmt.Sprintf("fatal : %s", r))
|
||||
GoUtil.SendFeishuFatal(0, "sendMessageSync", fmt.Sprintf("fatal : %s", r))
|
||||
}
|
||||
}()
|
||||
log.Debug("[Middleware] Send Sync message to node: %d, message: %v", node, m)
|
||||
msg, err := mergeCluster.CallServerMsg(m, node)
|
||||
if err != nil && conf.Server.ServerType == "center" && GoUtil.InArray(m.HandleType, save_msg_type) {
|
||||
|
||||
@ -152,7 +152,7 @@ func (player *Player) TriggerShippingOrderOrigin(req *msg.ReqShippingOrder) {
|
||||
"Price": OrderData.Price,
|
||||
"PayType": OrderData.PayType,
|
||||
}
|
||||
player.Kafka("pay", orderDataMap)
|
||||
player.TeLog("pay", orderDataMap)
|
||||
player.PushClientRes(&msg.ResShippingOrder{
|
||||
Code: msg.RES_CODE_SUCCESS,
|
||||
})
|
||||
|
||||
Loading…
Reference in New Issue
Block a user