Exemplo n.º 1
0
        public virtual void RemoveQuest(bool removeChain)
        {
            StopTimer();

            if (removeChain)
            {
                m_Owner.Chains.Remove(ChainID);
            }

            if (Completed && (RestartDelay > TimeSpan.Zero || ForceRemember || DoneOnce) && NextQuest == null)
            {
                Type type = GetType();

                if (ChainID != QuestChain.None)
                {
                    type = QuestHelper.FindFirstChainQuest(this);
                }

                QuestHelper.Delay(Owner, type, RestartDelay);
            }

            QuestHelper.RemoveAcceleratedSkillgain(Owner);

            for (int i = m_Owner.Quests.Count - 1; i >= 0; i--)
            {
                if (m_Owner.Quests[i] == this)
                {
                    m_Owner.Quests.RemoveAt(i);

                    break;
                }
            }
        }
Exemplo n.º 2
0
        public virtual void RemoveQuest(bool removeChain)
        {
            StopTimer();

            if (removeChain)
            {
                m_Owner.Chains.Remove(ChainID);
            }

            if (Completed && (RestartDelay > TimeSpan.Zero || ForceRemember || DoneOnce) && NextQuest == null && Owner.AccessLevel == AccessLevel.Player)
            {
                Type type = GetType();

                if (ChainID != QuestChain.None)
                {
                    type = QuestHelper.FindFirstChainQuest(this);
                }

                QuestHelper.Delay(Owner, type, RestartDelay);
            }

            QuestHelper.RemoveAcceleratedSkillgain(Owner);

            if (m_Owner.Quests.Contains(this))
            {
                m_Owner.Quests.Remove(this);
            }
        }
Exemplo n.º 3
0
        public override void OnCompleted()
        {
            if (Quest != null && Quest.Owner != null && Quest.Owner.Murderer && Quest.Owner.DoneQuests.FirstOrDefault(info => info.QuestType == typeof(ResponsibilityQuest)) == null)
            {
                QuestHelper.Delay(Quest.Owner, typeof(ResponsibilityQuest), Quest.RestartDelay);
            }

            base.OnCompleted();
        }
Exemplo n.º 4
0
        public void CompleteQuest()
        {
            TownCryerSystem.CompleteQuest(Owner, new RightingWrongQuest());

            OnCompleted();
            GiveRewards();

            QuestHelper.Delay(Owner, typeof(RightingWrongQuest2), RestartDelay);
        }
Exemplo n.º 5
0
        public void CompleteQuest()
        {
            TownCryerSystem.CompleteQuest(Owner, new PaladinsOfTrinsic());

            OnCompleted();
            GiveRewards();

            QuestHelper.Delay(Owner, typeof(PaladinsOfTrinsic), RestartDelay);
        }
Exemplo n.º 6
0
        public override void GiveRewards()
        {
            base.GiveRewards();

            QuestHelper.Delay(Owner, typeof(RightingWrongQuest), RestartDelay);
        }