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); }