Skip to main content

Quest Actions

QuestActions wraps read-only access to RuneLite's Quest enum and QuestState.

Methods:

  • QuestActions.getState(Quest quest) - returns the QuestState (NOT_STARTED, IN_PROGRESS, or FINISHED); returns NOT_STARTED if quest is null or the player is not ready
  • QuestActions.isComplete(Quest quest) - true if state is FINISHED
  • QuestActions.isStarted(Quest quest) - true if state is IN_PROGRESS or FINISHED

All methods return a safe default (false / NOT_STARTED) when the local player is unavailable; none throw.

Example:

if (!QuestActions.isComplete(Quest.DRAGON_SLAYER_I)) {
log.warn("Dragon Slayer I required");
return;
}

Use QuestActions to gate plugin behavior on quest prerequisites. For more granular state (IN_PROGRESS), use getState() directly:

if (QuestActions.getState(Quest.RECIPE_FOR_DISASTER) == QuestState.IN_PROGRESS) {
// handle mid-quest state
}