Beispiel #1
0
 public void NextStep(Connection client, QuestStep step)
 {
     byte stepIndex = step.StepNumber;
     stepIndex++;
     if (stepIndex < _steps.Length)
     {
         // Valid next step, activate it
         client.Character.SetActiveQuestStep(_questID, stepIndex);
         _steps[stepIndex].Activate(client);
     }
     else
     {
         // Done with this quest!
         client.Character.CompleteQuest(_questID);
     }
 }
Beispiel #2
0
 public void AddStep(QuestStep step)
 {
     _steps[step.StepNumber] = step;
     if( step.StepNumber > _lastStep )
         _lastStep = step.StepNumber;
 }
Beispiel #3
0
 public Builder(uint quest, byte step, uint owner, CompletionType type, uint completionCount, uint completionID = 0)
 {
     _step = new QuestStep(quest, step, type, completionCount, completionID, owner);
     _lastLine = 0;
     _lines = new Dictionary<int, QuestLine>();
     _rewards = new List<QuestReward>();
 }