public override void Execute(Level level) { var avatar = level.GetPlayerAvatar(); var allianceId = avatar.GetAllianceId(); if (allianceId > 0) { var alliance = ObjectManager.GetAlliance(allianceId); if (alliance != null) { var mail = new AllianceMailStreamEntry(); mail.SetId((int)DateTime.UtcNow.Subtract(new DateTime(1970, 1, 1)).TotalSeconds); mail.SetAvatar(avatar); mail.SetIsNew(2); mail.SetSenderId(avatar.GetId()); mail.SetAllianceId(allianceId); mail.SetAllianceBadgeData(alliance.GetAllianceBadgeData()); mail.SetAllianceName(alliance.GetAllianceName()); mail.SetMessage(m_vMailContent); foreach (var onlinePlayer in ResourcesManager.GetOnlinePlayers()) { if (onlinePlayer.GetPlayerAvatar().GetAllianceId() == allianceId) { var p = new AvatarStreamEntryMessage(onlinePlayer.GetClient()); p.SetAvatarStreamEntry(mail); PacketManager.ProcessOutgoingPacket(p); } } } } }
public override void Execute(Level level) { SendAllianceMailCommand allianceMailCommand = this; try { ClientAvatar avatar = level.GetPlayerAvatar(); long allianceId = avatar.GetAllianceId(); if (allianceId > 0L) { Alliance alliance = ObjectManager.GetAlliance(allianceId); if (alliance != null) { AllianceMailStreamEntry allianceMailStreamEntry1 = new AllianceMailStreamEntry(); allianceMailStreamEntry1.SetId((int)DateTime.UtcNow.Subtract(new DateTime(1970, 1, 1)).TotalSeconds); allianceMailStreamEntry1.SetAvatar(avatar); allianceMailStreamEntry1.SetIsNew((byte)2); allianceMailStreamEntry1.SetSenderId(avatar.GetId()); allianceMailStreamEntry1.SetAllianceId(allianceId); allianceMailStreamEntry1.SetAllianceBadgeData(alliance.GetAllianceBadgeData()); allianceMailStreamEntry1.SetAllianceName(alliance.GetAllianceName()); allianceMailStreamEntry1.SetMessage(m_vMailContent); foreach (Level onlinePlayer in ResourcesManager.GetOnlinePlayers()) { if (onlinePlayer.GetPlayerAvatar().GetAllianceId() == allianceId) { AvatarStreamEntryMessage Message = new AvatarStreamEntryMessage(onlinePlayer.GetClient()); AllianceMailStreamEntry allianceMailStreamEntry2 = allianceMailStreamEntry1; Message.SetAvatarStreamEntry((UCS.Logic.AvatarStreamEntry.AvatarStreamEntry)allianceMailStreamEntry2); Message.Send(); } } } } avatar = (ClientAvatar)null; } catch (Exception ex) { } }