Ejemplo n.º 1
0
        public override void SendAllData(Player receiver)
        {
            foreach (var pair in _criteriaProgress)
            {
                CriteriaUpdate criteriaUpdate = new CriteriaUpdate();

                criteriaUpdate.CriteriaID = pair.Key;
                criteriaUpdate.Quantity   = pair.Value.Counter;
                criteriaUpdate.PlayerGUID = _owner.GetGUID();
                criteriaUpdate.Flags      = 0;

                criteriaUpdate.CurrentTime  = pair.Value.Date;
                criteriaUpdate.CreationTime = 0;

                SendPacket(criteriaUpdate);
            }
        }
Ejemplo n.º 2
0
        public override void SendCriteriaUpdate(Criteria criteria, CriteriaProgress progress, uint timeElapsed, bool timedCompleted)
        {
            CriteriaUpdate criteriaUpdate = new CriteriaUpdate();

            criteriaUpdate.CriteriaID = criteria.Id;
            criteriaUpdate.Quantity   = progress.Counter;
            criteriaUpdate.PlayerGUID = _owner.GetGUID();
            criteriaUpdate.Flags      = 0;
            if (criteria.Entry.StartTimer != 0)
            {
                criteriaUpdate.Flags = timedCompleted ? 1 : 0u; // 1 is for keeping the counter at 0 in client
            }
            criteriaUpdate.CurrentTime  = progress.Date;
            criteriaUpdate.ElapsedTime  = timeElapsed;
            criteriaUpdate.CreationTime = 0;

            SendPacket(criteriaUpdate);
        }