Quest Actions
QuestActions wraps read-only access to RuneLite's Quest enum and QuestState.
Methods:
QuestActions.getState(Quest quest)- returns theQuestState(NOT_STARTED, IN_PROGRESS, or FINISHED); returnsNOT_STARTEDif quest is null or the player is not readyQuestActions.isComplete(Quest quest)- true if state is FINISHEDQuestActions.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
}