1
This commit is contained in:
parent
1b45056fed
commit
6d75fe9387
@ -10,7 +10,6 @@ import (
|
||||
)
|
||||
|
||||
type ChatMgr struct {
|
||||
gm *GuildMgr
|
||||
|
||||
worldMsgRec *ChatMsgRec
|
||||
guildMsgRec map[int64]*ChatMsgRec
|
||||
@ -22,9 +21,8 @@ type ChatMgr struct {
|
||||
//tmpMsgId uint64
|
||||
}
|
||||
|
||||
func NewChatMgr(gm *GuildMgr) *ChatMgr {
|
||||
func NewChatMgr() *ChatMgr {
|
||||
cm := &ChatMgr{
|
||||
gm: gm,
|
||||
worldMsgRec: &ChatMsgRec{},
|
||||
guildMsgRec: make(map[int64]*ChatMsgRec),
|
||||
privateChatUsers: make(map[string]*ChatUserRec),
|
||||
@ -57,7 +55,7 @@ func (cm *ChatMgr) FillSMUpdateChatRedPointNotify(p common.Player, msg *cs.SMUpd
|
||||
if cm.worldMsgRec.CurrID > p.GetWorldChannelLastId() {
|
||||
msg.HasUnreadMsgChannels = append(msg.HasUnreadMsgChannels, constant.CCWorld)
|
||||
}
|
||||
guildId := cm.gm.GetGuildIdByAccountId(p.GetAccountId())
|
||||
guildId := GetGuildMgr().GetGuildIdByAccountId(p.GetAccountId())
|
||||
if guildId > 0 {
|
||||
if msgRec, exists := cm.guildMsgRec[guildId]; exists {
|
||||
if msgRec.CurrID > p.GetGuildChannelLastId() {
|
||||
@ -105,7 +103,7 @@ func (cm *ChatMgr) ProcWorldChat(p common.Player, msg *cs.CMSendChatMsg) {
|
||||
}
|
||||
|
||||
func (cm *ChatMgr) ProcGuildChat(p common.Player, msg *cs.CMSendChatMsg) {
|
||||
guild := cm.gm.GetGuildByAccountId(p.GetAccountId())
|
||||
guild := GetGuildMgr().GetGuildByAccountId(p.GetAccountId())
|
||||
if guild == nil {
|
||||
return
|
||||
}
|
||||
@ -125,7 +123,7 @@ func (cm *ChatMgr) ProcGuildChat(p common.Player, msg *cs.CMSendChatMsg) {
|
||||
}
|
||||
|
||||
// TraverseMember
|
||||
for _, member := range guild.Members {
|
||||
for _, member := range guild.GetMembers() {
|
||||
guildMember := GetPlayerMgr().GetPlayerByAccountId(member.GetAccountId())
|
||||
if guildMember != nil {
|
||||
cm.SyncGuildChatMsg(guildMember)
|
||||
@ -223,7 +221,7 @@ func (cm *ChatMgr) SyncPrivateChatMsg(p common.Player) {
|
||||
}
|
||||
|
||||
func (cm *ChatMgr) SyncGuildChatMsg(p common.Player) {
|
||||
guildId := cm.gm.GetGuildIdByAccountId(p.GetAccountId())
|
||||
guildId := GetGuildMgr().GetGuildIdByAccountId(p.GetAccountId())
|
||||
if guildId <= 0 {
|
||||
return
|
||||
}
|
||||
|
@ -54,5 +54,19 @@ type User interface {
|
||||
}
|
||||
|
||||
type FriendMgr interface {
|
||||
GetFriendByAccountId(account1Id, account2Id string) *User
|
||||
GetFriendByAccountId(account1Id, account2Id string) User
|
||||
}
|
||||
|
||||
type Guild interface {
|
||||
GetGuildId() int64
|
||||
GetMembers() map[string]GuildMember
|
||||
}
|
||||
|
||||
type GuildMember interface {
|
||||
GetAccountId() string
|
||||
}
|
||||
|
||||
type GuildMgr interface {
|
||||
GetGuildByAccountId(string) Guild
|
||||
GetGuildIdByAccountId(string) int64
|
||||
}
|
||||
|
@ -3,6 +3,4 @@ package main
|
||||
var handlerMgr = new(HandlerMgr)
|
||||
var cacheMgr = new(CacheMgr)
|
||||
|
||||
// var guildMgr = new(GuildMgr)
|
||||
var guildMgr = NewGuildMgr()
|
||||
var chatMgr = NewChatMgr(guildMgr)
|
||||
var chatMgr = NewChatMgr()
|
||||
|
@ -20,6 +20,7 @@ var app common.App
|
||||
var playerMgr common.PlayerMgr
|
||||
var wspListener common.WspListener
|
||||
var friendMgr common.FriendMgr
|
||||
var guildMgr common.GuildMgr
|
||||
|
||||
func GetPlayerMgr() common.PlayerMgr {
|
||||
return playerMgr
|
||||
@ -29,6 +30,10 @@ func GetFriendMgr() common.FriendMgr {
|
||||
return friendMgr
|
||||
}
|
||||
|
||||
func GetGuildMgr() common.GuildMgr {
|
||||
return guildMgr
|
||||
}
|
||||
|
||||
func GetWspListener() common.WspListener {
|
||||
return wspListener
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user