Exemple #1
0
        public void SendPointOfInterest(uint id)
        {
            PointOfInterest pointOfInterest = Global.ObjectMgr.GetPointOfInterest(id);

            if (pointOfInterest == null)
            {
                Log.outError(LogFilter.Sql, "Request to send non-existing PointOfInterest (Id: {0}), ignored.", id);
                return;
            }

            GossipPOI packet = new GossipPOI();

            packet.Id   = pointOfInterest.Id;
            packet.Name = pointOfInterest.Name;

            Locale locale = _session.GetSessionDbLocaleIndex();

            if (locale != Locale.enUS)
            {
                PointOfInterestLocale localeData = Global.ObjectMgr.GetPointOfInterestLocale(id);
                if (localeData != null)
                {
                    ObjectManager.GetLocaleString(localeData.Name, locale, ref packet.Name);
                }
            }

            packet.Flags      = pointOfInterest.Flags;
            packet.Pos        = pointOfInterest.Pos;
            packet.Icon       = pointOfInterest.Icon;
            packet.Importance = pointOfInterest.Importance;

            _session.SendPacket(packet);
        }
Exemple #2
0
        public static void HandleGossipPoi(Packet packet)
        {
            LastGossipPOIEntry++;

            var gossipPOI = new GossipPOI();

            gossipPOI.Flags = (uint)packet.ReadInt32E <UnknownFlags>("Flags");
            var pos = packet.ReadVector2("Coordinates");

            gossipPOI.Icon       = packet.ReadUInt32E <GossipPOIIcon>("Icon");
            gossipPOI.Importance = packet.ReadUInt32("Data");
            gossipPOI.Name       = packet.ReadCString("Icon Name");

            gossipPOI.PositionX = pos.X;
            gossipPOI.PositionY = pos.Y;

            Storage.GossipPOIs.Add(LastGossipPOIEntry, gossipPOI, packet.TimeSpan);
        }
        public static void HandleGossipPoi(Packet packet)
        {
            LastGossipPOIEntry++;

            var gossipPOI = new GossipPOI();

            gossipPOI.Flags = (uint)packet.ReadEnum <UnknownFlags>("Flags", TypeCode.Int32);
            var pos = packet.ReadVector2("Coordinates");

            gossipPOI.Icon     = packet.ReadEnum <GossipPOIIcon>("Icon", TypeCode.UInt32);
            gossipPOI.Data     = packet.ReadUInt32("Data");
            gossipPOI.IconName = packet.ReadCString("Icon Name");

            gossipPOI.XPos = pos.X;
            gossipPOI.YPos = pos.Y;

            Storage.GossipPOIs.Add(LastGossipPOIEntry, gossipPOI, packet.TimeSpan);
        }
Exemple #4
0
        public static void HandleGossipPoi(Packet packet)
        {
            ++LastGossipPOIEntry;

            var gossipPOI = new GossipPOI();

            gossipPOI.Flags = (uint)packet.ReadBits("Flags", 14);
            var bit84 = packet.ReadBits(6);
            var pos   = packet.ReadVector2("Coordinates");

            gossipPOI.Icon       = packet.ReadEnum <GossipPOIIcon>("Icon", TypeCode.UInt32);
            gossipPOI.Importance = packet.ReadUInt32("Data");
            gossipPOI.Name       = packet.ReadWoWString("Icon Name", bit84);

            gossipPOI.PositionX = pos.X;
            gossipPOI.PositionY = pos.Y;

            Storage.GossipPOIs.Add(LastGossipPOIEntry, gossipPOI, packet.TimeSpan);
        }