代码拉取完成,页面将自动刷新
package cache
import (
proto "gitee.com/liuxuezhan/mylib/Protocol"
"gitee.com/liuxuezhan/mylib/common"
"gitee.com/liuxuezhan/mylib/wtime"
)
//战斗通知(右下角提示框)
type Asset_BattleNotice struct {
Basic
AssetData map[int64]*proto.ST_BattleNotice_PB
}
func (this *Asset_BattleNotice) ReUse() {
this.Lock()
defer this.Unlock()
this.AssetData = make(map[int64]*proto.ST_BattleNotice_PB)
}
func (this *Asset_BattleNotice) ToServerPB() proto.Message {
battleNoticeAsset := &proto.ST_BattleNoticesAsset_PB{}
for _, v := range this.AssetData {
if int64(0) == v.GetNoticeUID() {
continue
}
battleNoticeAsset.Notices = append(battleNoticeAsset.Notices, v)
}
return battleNoticeAsset
}
func (this *Asset_BattleNotice) ToClientString() []byte {
strData := common.AddVersionInfoBeforeData(this.ToServerString(), this.versionid)
//数据同步给客户端后重置
this.ReUse()
return strData
}
func (this *Asset_BattleNotice) ToServerString() []byte {
this.RLock()
defer this.RUnlock()
return proto.Marshal(this.ToServerPB())
}
/**
@brief 创建战斗通知
*/
func (userData *Info) CreateBattleNotice(BIUID int64, battleNotice *proto.ST_BattleNotice_PB) {
battleNotice.Timestamp = proto.SetUint64(wtime.GetNow())
battleNotice.NoticeUID = proto.SetInt64(BIUID)
assetData := userData.info.AssetData_BattleNotice
assetData.Lock()
defer assetData.Unlock()
assetData.AssetData[BIUID] = battleNotice
assetData.Dirty()
userData.DirtyAll()
}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。