public void SendMessage(UInt16 Oid, string NameSender, string Text, SystemData.ChatLogFilters Filter) { if (Text.IndexOf("<LINK") >= 0 && Text.IndexOf("ITEM:") > 0) { int Pos = Text.IndexOf("ITEM:") + 5; int LastPos = Text.IndexOf(" ", Pos) - 1; string Value = Text.Substring(Pos, LastPos - Pos); uint ItemId = uint.Parse(Value); Item_Info Info = WorldMgr.GetItem_Info(ItemId); if (Info != null) { } } PacketOut Out = new PacketOut((byte)Opcodes.F_CHAT); Out.WriteUInt16(Oid); Out.WriteByte((byte)Filter); Out.Fill(0, 4); Out.WritePascalString(NameSender); Out.WriteByte(0); Out.WritePascalString(Text); Out.WriteByte(0); SendPacket(Out); }
public virtual void Say(string Msg, SystemData.ChatLogFilters Filter) { foreach (Player Plr in _PlayerRanged.ToArray()) { Plr.SendMessage(this, Msg, Filter); } if (IsPlayer()) { GetPlayer().SendMessage(this, Msg, Filter); } }
public virtual void Say(string Msg, SystemData.ChatLogFilters Filter) { foreach (Player Plr in _PlayerRanged.ToArray()) { if (Plr.Realm == GameData.Realms.REALMS_REALM_ORDER && GetPlayer().Realm == GameData.Realms.REALMS_REALM_ORDER) { Plr.SendMessage(this, Msg, Filter); } else if (Plr.Realm == GameData.Realms.REALMS_REALM_DESTRUCTION && GetPlayer().Realm == GameData.Realms.REALMS_REALM_DESTRUCTION) { Plr.SendMessage(this, Msg, Filter); } } GetPlayer().SendMessage(this, Msg, Filter); }
public void SendMessage(UInt16 Oid, string NameSender, string Text, SystemData.ChatLogFilters Filter) { PacketOut Out = new PacketOut((byte)Opcodes.F_CHAT); Out.WriteUInt16(Oid); Out.WriteByte((byte)Filter); Out.Fill(0, 4); Out.WritePascalString(NameSender); Out.WriteUInt16((ushort)(Text.Length + 1)); Out.WriteStringBytes(Text); Out.WriteByte(0); int a = Text.IndexOf("<LINK"); int b = Text.IndexOf("ITEM:"); if (a >= 0 && b > 0) { Out.WriteByte(1); long p = Out.Position; Out.WriteByte(0); int Count = 0; while (a >= 0 && b >= 0) { int Pos = b + 5; int LastPos = Text.IndexOf(" ", Pos) - 1; string Value = Text.Substring(Pos, LastPos - Pos); uint ItemId = uint.Parse(Value); Item_Info Info = WorldMgr.GetItem_Info(ItemId); if (Info != null) { ++Count; Out.WriteByte(3); Item.BuildItem(ref Out, null, Info, 0, 1); } a = Text.IndexOf("<LINK", Pos); b = Text.IndexOf("ITEM:", Pos); } Out.Position = p; Out.WriteByte((byte)Count); Out.Position = Out.Length; } SendPacket(Out); }
public virtual void Say(string Msg, SystemData.ChatLogFilters Filter) { if (Msg == null || Msg.Length == 0) { return; } foreach (Player Plr in _PlayerRanged.ToArray()) { if (Plr.GmLevel != 0 || GetPlayer().GmLevel != 0 || Program.Config.ChatBetweenRealms || Plr.Realm == GetPlayer().Realm) { Plr.SendMessage(this, Msg, Filter); } } if (IsPlayer()) { GetPlayer().SendMessage(this, Msg, Filter); } }
public void SendMessage(Object Sender, string Text, SystemData.ChatLogFilters Filter) { SendMessage(Sender != null ? Sender.Oid : (UInt16)0, Sender != null ? Sender.Name : "", Text, Filter); }