public static void AddGolbalTest() { NMessageInfo nMessageInfo = new NMessageInfo() { Title = "新手福利", Message = "这是新手福利", Exp = 200, Gold = 10000, }; nMessageInfo.Items.Add(new NItemInfo() { Id = 1, Count = 10 }); nMessageInfo.Items.Add(new NItemInfo() { Id = 2, Count = 10 }); TGlobalMessage tmessage = GetTGlobalMessage(nMessageInfo, 0); DBService.Instance.Entities.GlobalMessages.Add(tmessage); DBService.Instance.Save(false); SessionManager.Instance.ForeachSession(session => { session.Session.Character.messageManager.SetDirty(); MessageService.Instance.SendMessageReceive(session); }); Log.Info("SendGlobalCompleted"); }
public void MessageInit() { AllMessages.Clear(); foreach (var Tmessage in Owner.Data.Messages.Where(x => x.Status < 2)) { AllMessages.Add(GetMessageInfo(Tmessage)); } UpdateGloBalMessage(); foreach (var TGlobalMessageStatus in Owner.Data.CharacterGlobalStatus.Where(x => x.Status < 2)) { TGlobalMessage message = DBService.Instance.Entities.GlobalMessages.Where(x => x.Id == TGlobalMessageStatus.MessageID).FirstOrDefault(); AllMessages.Add(GetMessageInfo(message, TGlobalMessageStatus.Status)); } }
private NMessageInfo GetMessageInfo(TGlobalMessage tmessage, int Status) { NMessageInfo info = new NMessageInfo() { Id = tmessage.Id, Type = MessageType.Global, Status = Status, Title = tmessage.Title ?? "", Message = tmessage.Message ?? "", Gold = tmessage.Gold ?? 0, Exp = tmessage.Exp ?? 0, Time = tmessage.Time }; info.FromInfo = GetMessageCharInfo(tmessage.FromID, MessageType.Global); GetBinary2Items(info.Items, tmessage.Items ?? new byte[0]); GetBinary2Equips(info.Equips, tmessage.Equips ?? new byte[0]); return(info); }