Exemple #1
0
        public override bool Update(object obj)
        {
            if (m_Delivery == null || m_Destination == null)
            {
                return(false);
            }

            if (Failed)
            {
                Quest.Owner.SendLocalizedMessage(1074813);  // You have failed to complete your delivery.
                return(false);
            }

            if (obj is BaseVendor)
            {
                if (Quest.StartingItem != null)
                {
                    Complete();
                    return(true);
                }
                else if (m_Destination.IsAssignableFrom(obj.GetType()))
                {
                    if (MaxProgress < QuestHelper.CountQuestItems(Quest.Owner, Delivery))
                    {
                        Quest.Owner.SendLocalizedMessage(1074813);  // You have failed to complete your delivery.
                        Fail();
                    }
                    else
                    {
                        Complete();
                    }

                    return(true);
                }
            }

            return(false);
        }