Interface IQuest

All Known Implementing Classes:
AbstractQuest, AdMemoriaInPortfolio, AdosDeathmatch, AmazonPrincess, AntivenomRing, ArmorForDagobert, BalloonForBobby, BeerForHayunn, Blackjack, BowsForOuchit, Campfire, CaptureFlagQuest, ChocolateForElisabeth, CleanAthorsUnderground, CleanStorageSpace, CloakCollector, CloakCollector2, CloaksForBario, ClubOfThorns, CoalForHaunchy, CodedMessageFromFinnFarmer, CollectEnemyData, CrownForTheWannaBeKing, DailyItemQuest, DailyMonsterQuest, DiceGambling, DragonLair, EasterGiftsForChildren, EggsForMarianne, ElfPrincess, ElvishArmor, EmotionCrystals, FindGhosts, FindJefsMom, FindRatChildren, FishermansLicenseCollector, FishermansLicenseQuiz, FishSoup, FishSoupForHughie, FruitsForCoralia, GoodiesForRudolph, GuessKills, HatForMonogenes, HelpMrsYeti, HelpTomi, HelpWithTheHarvest, HerbsForCarmen, HerbsForJynath, HouseBuying, HungryJoshua, IcecreamForAnnie, ImperialPrincess, JailedBarbarian, JailedDwarf, KanmararnSoldiers, KillBlordroughs, KillDarkElves, KillDhohrNuggetcutter, KillEnemyArmy, KillGnomes, KillMonks, KillSpiders, KoboldishTorcibud, LearnAboutKarma, LearnAboutOrbs, LookBookforCeryl, LookUpQuote, Marriage, Maze, McPeglegIOU, MealForGroongo, MedicineForTad, MeetBunny, MeetHackim, MeetHayunn, MeetIo, MeetKetteh, MeetMarieHenri, MeetMonogenes, MeetSanta, MeetZynn, MineTownRevivalWeeks, MineTownRevivalWeeksConstruction, MithrilCloak, MixtureForOrtiv, MuseumEntranceFee, NewsFromHackim, ObsidianKnife, PaperChase, PizzaDelivery, PlinksToy, RainbowBeans, RestockFlowerShop, ReverseArrow, RingMaker, SadScientist, ScubaLicenseQuiz, SevenCherubs, SheepGrowing, SimpleQuestCreator.SimpleQuest, Snowballs, SolveRiddles, Soup, StuffForBaldemar, StuffForVulcanus, SuntanCreamForZara, SuppliesForPhalk, TakeGoldforGrafindle, TheMissingBooks, ThePiedPiper, ToysCollector, TrapsForKlaas, TutorialIsland, UltimateCollector, VampireSword, WaterForXhiphin, WeaponsCollector, WeaponsCollector2, WeeklyItemQuest, WizardBank, ZekielsPracticalTestQuest, ZooFood

public interface IQuest
All quests MUST implement this interface or extend the abstract class AbstractQuest in order for the loader to recognize them.
  • Method Details

    • getQuestInfo

      QuestInfo getQuestInfo(Player player)
      function will return information about this quest
      Parameters:
      player - - player for whom required quest info
      Returns:
      - QuestInfo object with info about this quest
    • updatePlayer

      void updatePlayer(Player player)
      Parameters:
      player - Player
    • addToWorld

      void addToWorld()
      adds the quest to the game world (e.g. by placing SpeakerNPCs there)
    • removeFromWorld

      boolean removeFromWorld()
      removes a quest from the world.
      Returns:
      true if the quest could be unloaded, false otherwise
    • isStarted

      boolean isStarted(Player player)
      Was the quest started?
      Parameters:
      player - Player
      Returns:
      true, if it was started, false otherwise
    • isCompleted

      boolean isCompleted(Player player)
      Was the quest completed? Note: A quest can be completed without its status being "Done" (e. g. rejected, failed).
      Parameters:
      player - Player
      Returns:
      true, if it was completed, false otherwise
    • isRepeatable

      boolean isRepeatable(Player player)
      May the quest be repeated?
      Parameters:
      player - Player
      Returns:
      true, if it can be repeated, false otherwise
    • getHistory

      List<String> getHistory(Player player)
      Gets a the quest history for the given player, written in the first person.
      Parameters:
      player - Player
      Returns:
      list of history item-names
    • getFormattedHistory

      List<String> getFormattedHistory(Player player)
    • getHint

      List<String> getHint(Player player)
      Gets a list of possible hint-names.

      The hint system will ensure that the same hint is not displayed twice. This class creates a list of useful hints (without hints about already completed parts).

      Parameters:
      player - Player
      Returns:
      list of history item-names
    • getName

      String getName()
      Returns the name of the quest.
      Returns:
      name
    • getMinLevel

      int getMinLevel()
      Returns the minimum level of player expected to start the quest. Used for choosing which hints to give. To set a hard minimum level requirement for doing the quest, use level related ChatConditions in the quest methods
      Returns:
      level
    • getSlotName

      String getSlotName()
      Returns the slot name of the quest.
      Returns:
      slot name
    • isVisibleOnQuestStatus

      boolean isVisibleOnQuestStatus()
      Determines whether the quest should be shown in the Quest Status/Progress log
      Returns:
      true, if the quest is visible, false otherwise
    • getRegion

      String getRegion()
      Returns the region where the quest adventure takes place (or begins), or null for global quests
      Returns:
      region, or null for global quests
    • getNPCName

      String getNPCName()
      Returns the starter NPC for the quest, or null if there is none
      Returns:
      NPC name, or null for quests with no starter NPC