Exemplo n.º 1
0
        public override void Write()
        {
            _worldPacket.WritePackedGuid(QuestGiverGUID);
            _worldPacket.WriteUInt32(GreetEmoteDelay);
            _worldPacket.WriteUInt32(GreetEmoteType);
            _worldPacket.WriteUInt32(QuestDataText.Count);
            _worldPacket.WriteBits(Greeting.GetByteCount(), 11);
            _worldPacket.FlushBits();

            foreach (GossipText gossip in QuestDataText)
            {
                _worldPacket.WriteUInt32(gossip.QuestID);
                _worldPacket.WriteUInt32(gossip.QuestType);
                _worldPacket.WriteUInt32(gossip.QuestLevel);
                _worldPacket.WriteUInt32(gossip.QuestMaxScalingLevel);
                _worldPacket.WriteUInt32(gossip.QuestFlags);
                _worldPacket.WriteUInt32(gossip.QuestFlagsEx);

                _worldPacket.WriteBit(gossip.Repeatable);
                _worldPacket.WriteBits(gossip.QuestTitle.GetByteCount(), 9);
                _worldPacket.FlushBits();

                _worldPacket.WriteString(gossip.QuestTitle);
            }

            _worldPacket.WriteString(Greeting);
        }
Exemplo n.º 2
0
        public override void Write()
        {
            _worldPacket.WritePackedGuid(TrainerGUID);
            _worldPacket.WriteInt32(TrainerType);
            _worldPacket.WriteInt32(TrainerID);

            _worldPacket.WriteInt32(Spells.Count);
            foreach (TrainerListSpell spell in Spells)
            {
                _worldPacket.WriteUInt32(spell.SpellID);
                _worldPacket.WriteUInt32(spell.MoneyCost);
                _worldPacket.WriteUInt32(spell.ReqSkillLine);
                _worldPacket.WriteUInt32(spell.ReqSkillRank);

                for (uint i = 0; i < SharedConst.MaxTrainerspellAbilityReqs; ++i)
                {
                    _worldPacket.WriteUInt32(spell.ReqAbility[i]);
                }

                _worldPacket.WriteUInt8((byte)spell.Usable);
                _worldPacket.WriteUInt8(spell.ReqLevel);
            }

            _worldPacket.WriteBits(Greeting.GetByteCount(), 11);
            _worldPacket.FlushBits();
            _worldPacket.WriteString(Greeting);
        }
Exemplo n.º 3
0
        public override void Write()
        {
            _worldPacket.WritePackedGuid(QuestGiverGUID);
            _worldPacket.WriteUInt32(GreetEmoteDelay);
            _worldPacket.WriteUInt32(GreetEmoteType);
            _worldPacket.WriteInt32(QuestDataText.Count);
            _worldPacket.WriteBits(Greeting.GetByteCount(), 11);
            _worldPacket.FlushBits();

            foreach (ClientGossipText gossip in QuestDataText)
            {
                gossip.Write(_worldPacket);
            }

            _worldPacket.WriteString(Greeting);
        }