Class QuestBuilder<T extends QuestTaskBuilder,O extends QuestOfferBuilder<O>,C extends QuestCompleteBuilder,H extends QuestHistoryBuilder>

java.lang.Object
games.stendhal.server.entity.npc.quest.QuestBuilder<T,O,C,H>
Type Parameters:
T - QuestTaskBuilder
Direct Known Subclasses:
BringItemQuestBuilder, DeliverItemQuestBuilder, KillCreaturesQuestBuilder

public class QuestBuilder<T extends QuestTaskBuilder,O extends QuestOfferBuilder<O>,C extends QuestCompleteBuilder,H extends QuestHistoryBuilder> extends Object
builds a quest
Author:
hendrik
  • Field Details

  • Constructor Details

    • QuestBuilder

      public QuestBuilder(T task)
      creates a QuestBuilder
      Parameters:
      task - QuestTaskBuilder
  • Method Details

    • info

      public QuestInfoBuilder info()
      defines general information about this quest
      Returns:
      QuestInfoBuilder
    • history

      public H history()
      defines the "history" of player progress as shown in the travel log
      Returns:
      QuestHistoryBuilder
    • offer

      public O offer()
      defines how the NPC offers the player the quest when the player says "quest"
      Returns:
      QuestOfferBuilder
    • task

      public T task()
      defines the task, which the player has to complete
      Returns:
      QuestTaskBuilder
    • complete

      public C complete()
      defines how the NPC react after the player completes the quest
      Returns:
      QuestCompleteBuilder
    • simulate

      public void simulate()
      simulates the quest
    • setupSimulator

      protected void setupSimulator(games.stendhal.server.entity.npc.quest.QuestSimulator simulator)
    • setCompletionsIndexes

      public void setCompletionsIndexes(Integer openIndex, Integer completeIndex)
      Sets quest slot indexes to check for completions count.
      Parameters:
      openIndex - Index where count is stored while quest is in open state.
      completeIndex - Index where count is stored while quest is in complete state.
    • setCompletionsIndexes

      public void setCompletionsIndexes(Integer index)
      Sets quest slot indexes to check for completions count.
      Parameters:
      index - Index where count is stored while quest in open or complete state.
    • getCompletionsIndexes

      public Pair<Integer,Integer> getCompletionsIndexes()
      Retrieves quest slot indexes where completions count are stored.
      Returns:
      A `marauroa.common.Pair` where `first` attribute represents slot index while quest is in open state and `second` represents slot index while quest is in complete state.