Example #1
0
        public override void OnEnterZone(Player player, Section section)
        {
            if(section == null)
            {
                Logger.WriteLine(LogState.Warn,"QStepMovePc: Warning, current player section is NULL!");
                return;
            }

            if (Task.TargetArea == null
                || Task.TargetArea.Length < 2
                || !TaskAreaIdSectionNameIdMap.ContainsKey(Task.TargetArea[1]))
                return;

            if (TaskAreaIdSectionNameIdMap[Task.TargetArea[1]] == section.NameId)
                Processor.FinishStep(player);
        }
Example #2
0
        private void SortSections(Section section)
        {
            if (section.Sections == null)
                section.Sections = new List<Section>();

            section.Sections.Sort((s1, s2) =>
                {
                    if (s1.Priority == s2.Priority)
                        return 0;

                    return s1.Priority > s2.Priority
                               ? -1
                               : 1;
                });

            foreach (var section2 in section.Sections)
                SortSections(section2);
        }
Example #3
0
 public void OnPlayerEnterZone(Player player, Section section)
 {
     foreach (var data in player.Quests)
         if (data.Value.Status == QuestStatus.Start)
             Quests[data.Key].GetNowStep(player).OnEnterZone(player, section);
 }
Example #4
0
        public virtual void OnEnterZone(Player player, Section section)
        {

        }