TrinityCore
QuestDef.h File Reference
#include "Common.h"
#include "DatabaseEnvFwd.h"
#include "EnumFlag.h"
#include "LootItemType.h"
#include "Optional.h"
#include "RaceMask.h"
#include "SharedDefines.h"
#include "UniqueTrackablePtr.h"
#include "WorldPacket.h"
#include <bitset>
#include <vector>
+ Include dependency graph for QuestDef.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  QuestGreeting
 
struct  QuestGreetingLocale
 
struct  QuestTemplateLocale
 
struct  QuestRequestItemsLocale
 
struct  QuestObjectivesLocale
 
struct  QuestOfferRewardLocale
 
struct  QuestObjectiveAction
 
struct  QuestObjective
 
struct  QuestRewardDisplaySpell
 
struct  QuestConditionalText
 
class  Quest
 
struct  QuestStatusData
 

Namespaces

namespace  WorldPackets
 
namespace  WorldPackets::Quest
 

Macros

#define MAX_QUEST_LOG_SIZE   35
 
#define QUEST_ITEM_DROP_COUNT   4
 
#define QUEST_REWARD_CHOICES_COUNT   6
 
#define QUEST_REWARD_ITEM_COUNT   4
 
#define QUEST_DEPLINK_COUNT   10
 
#define QUEST_REWARD_REPUTATIONS_COUNT   5
 
#define QUEST_EMOTE_COUNT   4
 
#define QUEST_REWARD_CURRENCY_COUNT   4
 
#define QUEST_REWARD_DISPLAY_SPELL_COUNT   3
 

Typedefs

using QuestObjectives = std::vector< QuestObjective >
 

Enumerations

enum  QuestFailedReason : uint32 {
  QUEST_ERR_NONE = 0 , QUEST_ERR_FAILED_LOW_LEVEL = 1 , QUEST_ERR_FAILED_WRONG_RACE = 6 , QUEST_ERR_ALREADY_DONE = 7 ,
  QUEST_ERR_ONLY_ONE_TIMED = 12 , QUEST_ERR_ALREADY_ON1 = 13 , QUEST_ERR_FAILED_EXPANSION = 16 , QUEST_ERR_ALREADY_ON2 = 18 ,
  QUEST_ERR_FAILED_MISSING_ITEMS = 21 , QUEST_ERR_FAILED_NOT_ENOUGH_MONEY = 23 , QUEST_ERR_FAILED_CAIS = 24 , QUEST_ERR_ALREADY_DONE_DAILY = 26 ,
  QUEST_ERR_FAILED_SPELL = 28 , QUEST_ERR_HAS_IN_PROGRESS = 30
}
 
enum class  QuestPushReason : uint8 {
  Success = 0 , Invalid = 1 , InvalidToRecipient = 2 , Accepted = 3 ,
  Declined = 4 , Busy = 5 , Dead = 6 , DeadToRecipient = 7 ,
  LogFull = 8 , LogFullToRecipient = 9 , OnQuest = 10 , OnQuestToRecipient = 11 ,
  AlreadyDone = 12 , AlreadyDoneToRecipient = 13 , NotDaily = 14 , TimerExpired = 15 ,
  NotInParty = 16 , DifferentServerDaily = 17 , DifferentServerDailyToRecipient = 18 , NotAllowed = 19 ,
  Prerequisite = 20 , PrerequisiteToRecipient = 21 , LowLevel = 22 , LowLevelToRecipient = 23 ,
  HighLevel = 24 , HighLevelToRecipient = 25 , Class = 26 , ClassToRecipient = 27 ,
  Race = 28 , RaceToRecipient = 29 , LowFaction = 30 , LowFactionToRecipient = 31 ,
  HighFaction = 32 , HighFactionToRecipient = 33 , Expansion = 34 , ExpansionToRecipient = 35 ,
  NotGarrisonOwner = 36 , NotGarrisonOwnerToRecipient = 37 , WrongCovenant = 38 , WrongCovenantToRecipient = 39 ,
  NewPlayerExperience = 40 , NewPlayerExperienceToRecipient = 41 , WrongFaction = 42 , WrongFactionToRecipient = 43 ,
  CrossFactionRestricted = 44
}
 
enum  QuestTradeSkill {
  QUEST_TRSKILL_NONE = 0 , QUEST_TRSKILL_ALCHEMY = 1 , QUEST_TRSKILL_BLACKSMITHING = 2 , QUEST_TRSKILL_COOKING = 3 ,
  QUEST_TRSKILL_ENCHANTING = 4 , QUEST_TRSKILL_ENGINEERING = 5 , QUEST_TRSKILL_FIRSTAID = 6 , QUEST_TRSKILL_HERBALISM = 7 ,
  QUEST_TRSKILL_LEATHERWORKING = 8 , QUEST_TRSKILL_POISONS = 9 , QUEST_TRSKILL_TAILORING = 10 , QUEST_TRSKILL_MINING = 11 ,
  QUEST_TRSKILL_FISHING = 12 , QUEST_TRSKILL_SKINNING = 13 , QUEST_TRSKILL_JEWELCRAFTING = 14
}
 
enum  QuestStatus : uint8 {
  QUEST_STATUS_NONE = 0 , QUEST_STATUS_COMPLETE = 1 , QUEST_STATUS_INCOMPLETE = 3 , QUEST_STATUS_FAILED = 5 ,
  QUEST_STATUS_REWARDED = 6 , MAX_QUEST_STATUS
}
 
enum class  QuestGiverStatus : uint64 {
  None = 0x000000000000 , Future = 0x000000000002 , FutureJourneyQuest = 0x000000000004 , FutureLegendaryQuest = 0x000000000008 ,
  FutureImportantQuest = 0x000000000010 , TrivialRepeatableTurnin = 0x000000000020 , Trivial = 0x000000000040 , TrivialDailyQuest = 0x000000000080 ,
  TrivialRepeatableQuest = 0x000000000100 , TrivialMetaQuest = 0x000000000200 , TrivialJourneyQuest = 0x000000000400 , TrivialLegendaryQuest = 0x000000000800 ,
  TrivialImportantQuest = 0x000000001000 , Reward = 0x000000002000 , RepeatableReward = 0x000000004000 , MetaReward = 0x000000008000 ,
  JourneyReward = 0x000000010000 , CovenantCallingReward = 0x000000020000 , LegendaryReward = 0x000000040000 , ImportantReward = 0x000000080000 ,
  RepeatableTurnin = 0x000000100000 , QuestAccountCompleted = 0x000000200000 , Quest = 0x000000400000 , DailyQuest = 0x000000800000 ,
  RepeatableQuest = 0x000001000000 , MetaQuest = 0x000002000000 , CovenantCallingQuest = 0x000004000000 , JourneyQuestAccountCompleted = 0x000008000000 ,
  JourneyQuest = 0x000010000000 , LegendaryQuestAccountCompleted = 0x000020000000 , LegendaryQuest = 0x000040000000 , ImportantQuestAccountCompleted = 0x000080000000 ,
  ImportantQuest = 0x000100000000 , RewardCompleteNoPOI = 0x000200000000 , RewardCompletePOI = 0x000400000000 , RepeatableRewardCompleteNoPOI = 0x000800000000 ,
  RepeatableRewardCompletePOI = 0x001000000000 , MetaQuestRewardCompleteNoPOI = 0x002000000000 , MetaQuestRewardCompletePOI = 0x004000000000 , CovenantCallingRewardCompleteNoPOI = 0x008000000000 ,
  CovenantCallingRewardCompletePOI = 0x010000000000 , JourneyRewardCompleteNoPOI = 0x020000000000 , JourneyRewardCompletePOI = 0x040000000000 , LegendaryRewardCompleteNoPOI = 0x080000000000 ,
  LegendaryRewardCompletePOI = 0x100000000000 , ImportantQuestRewardCompleteNoPOI = 0x200000000000 , ImportantQuestRewardCompletePOI = 0x400000000000
}
 
enum  QuestFlags : uint32 {
  QUEST_FLAGS_NONE = 0x00000000 , QUEST_FLAGS_COMPLETION_NO_DEATH = 0x00000001 , QUEST_FLAGS_COMPLETION_EVENT = 0x00000002 , QUEST_FLAGS_COMPLETION_AREA_TRIGGER = 0x00000004 ,
  QUEST_FLAGS_SHARABLE = 0x00000008 , QUEST_FLAGS_HAS_CONDITION = 0x00000010 , QUEST_FLAGS_HIDE_REWARD_POI = 0x00000020 , QUEST_FLAGS_RAID_GROUP_OK = 0x00000040 ,
  QUEST_FLAGS_WAR_MODE_REWARDS_OPT_IN = 0x00000080 , QUEST_FLAGS_NO_MONEY_FOR_XP = 0x00000100 , QUEST_FLAGS_HIDE_REWARD = 0x00000200 , QUEST_FLAGS_TRACKING_EVENT = 0x00000400 ,
  QUEST_FLAGS_DEPRECATE_REPUTATION = 0x00000800 , QUEST_FLAGS_DAILY = 0x00001000 , QUEST_FLAGS_FLAGS_PVP = 0x00002000 , QUEST_FLAGS_DEPRECATED = 0x00004000 ,
  QUEST_FLAGS_WEEKLY = 0x00008000 , QUEST_FLAGS_AUTO_COMPLETE = 0x00010000 , QUEST_FLAGS_DISPLAY_ITEM_IN_TRACKER = 0x00020000 , QUEST_FLAGS_DISABLE_COMPLETION_TEXT = 0x00040000 ,
  QUEST_FLAGS_AUTO_ACCEPT = 0x00080000 , QUEST_FLAGS_PLAYER_CAST_ACCEPT = 0x00100000 , QUEST_FLAGS_PLAYER_CAST_COMPLETE = 0x00200000 , QUEST_FLAGS_UPDATE_PHASESHIFT = 0x00400000 ,
  QUEST_FLAGS_SOR_WHITELIST = 0x00800000 , QUEST_FLAGS_LAUNCH_GOSSIP_COMPLETE = 0x01000000 , QUEST_FLAGS_REMOVE_SURPLUS_ITEMS = 0x02000000 , QUEST_FLAGS_WELL_KNOWN = 0x04000000 ,
  QUEST_FLAGS_PORTRAIT_IN_QUEST_LOG = 0x08000000 , QUEST_FLAGS_SHOW_ITEM_WHEN_COMPLETED = 0x10000000 , QUEST_FLAGS_LAUNCH_GOSSIP_ACCEPT = 0x20000000 , QUEST_FLAGS_ITEMS_GLOW_WHEN_COMPLETE = 0x40000000 ,
  QUEST_FLAGS_FAIL_ON_LOGOUT = 0x80000000
}
 
enum  QuestFlagsEx : uint32 {
  QUEST_FLAGS_EX_NONE = 0x00000000 , QUEST_FLAGS_EX_NO_ITEM_REMOVAL = 0x00000001 , QUEST_FLAGS_EX_SUPPRESS_GOSSIP_COMPLETE = 0x00000002 , QUEST_FLAGS_EX_SUPPRESS_GOSSIP_ACCEPT = 0x00000004 ,
  QUEST_FLAGS_EX_DENY_PLAYER_QUESTGIVER = 0x00000008 , QUEST_FLAGS_EX_DISPLAY_CLASS_CHOICE_REWARDS = 0x00000010 , QUEST_FLAGS_EX_DISPLAY_SPEC_CHOICE_REWARDS = 0x00000020 , QUEST_FLAGS_EX_REMOVE_ON_PERIODIC_RESET = 0x00000040 ,
  QUEST_FLAGS_EX_ACCOUNT = 0x00000080 , QUEST_FLAGS_EX_LEGENDARY = 0x00000100 , QUEST_FLAGS_EX_NO_GUILD_XP = 0x00000200 , QUEST_FLAGS_EX_RESET_CACHE_ON_ACCEPT = 0x00000400 ,
  QUEST_FLAGS_EX_NO_ABANDON_ONCE_BEGUN = 0x00000800 , QUEST_FLAGS_EX_RECAST_ACCEPT_SPELL_ON_LOGIN = 0x00001000 , QUEST_FLAGS_EX_UPDATE_ZONE_AURAS = 0x00002000 , QUEST_FLAGS_EX_NO_CREDIT_FOR_PROXY = 0x00004000 ,
  QUEST_FLAGS_EX_DISPLAY_AS_DAILY = 0x00008000 , QUEST_FLAGS_EX_DISPLAY_QUEST_LINE = 0x00010000 , QUEST_FLAGS_EX_INTERNAL_BUILDS_ONLY = 0x00020000 , QUEST_FLAGS_EX_SUPPRESS_SPELL_LEARN_TEXT = 0x00040000 ,
  QUEST_FLAGS_EX_DISPLAY_AS_OBJECTIVE = 0x00080000 , QUEST_FLAGS_EX_ALLOW_ALL_IN_GARRISON = 0x00100000 , QUEST_FLAGS_EX_REMOVE_ON_WEEKLY_RESET = 0x00200000 , QUEST_FLAGS_EX_SUPPRESS_GREETINGS_ON_ACCEPT = 0x00400000 ,
  QUEST_FLAGS_EX_REWARDS_IGNORE_CAPS = 0x00800000 , QUEST_FLAGS_EX_IS_WORLD_QUEST = 0x01000000 , QUEST_FLAGS_EX_NOT_IGNORABLE = 0x02000000 , QUEST_FLAGS_EX_AUTO_PUSH = 0x04000000 ,
  QUEST_FLAGS_EX_NO_SPELL_COMPLETE_EFFECTS = 0x08000000 , QUEST_FLAGS_EX_DO_NOT_TOAST_HONOR_REWARD = 0x10000000 , QUEST_FLAGS_EX_KEEP_REPEATABLE_QUEST_ON_FACTION_CHANGE = 0x20000000 , QUEST_FLAGS_EX_KEEP_PROGRESS_ON_FACTION_CHANGE = 0x40000000 ,
  QUEST_FLAGS_EX_PUSH_TEAM_QUEST_USING_MAP_CONTROLLER = 0x80000000
}
 
enum  QuestFlagsEx2 : uint32 {
  QUEST_FLAGS_EX2_RESET_ON_GAME_MILESTONE = 0x00000001 , QUEST_FLAGS_EX2_WAR_MODE_REWARDS_OPT_OUT = 0x00000002 , QUEST_FLAGS_EX2_AWARD_HIGHEST_PROFESSION = 0x00000004 , QUEST_FLAGS_EX2_NOT_REPLAYABLE = 0x00000008 ,
  QUEST_FLAGS_EX2_NO_REPLAY_REWARDS = 0x00000010 , QUEST_FLAGS_EX2_DISABLE_WAYPOINT_PATHING = 0x00000020 , QUEST_FLAGS_EX2_RESET_ON_MYTHIC_PLUS_SEASON = 0x00000040 , QUEST_FLAGS_EX2_RESET_ON_PVP_SEASON = 0x00000080 ,
  QUEST_FLAGS_EX2_ENABLE_OVERRIDE_SORT_ORDER = 0x00000100 , QUEST_FLAGS_EX2_FORCE_STARTING_LOC_ON_ZONE_MAP = 0x00000200 , QUEST_FLAGS_EX2_BONUS_LOOT_NEVER = 0x00000400 , QUEST_FLAGS_EX2_BONUS_LOOT_ALWAYS = 0x00000800 ,
  QUEST_FLAGS_EX2_HIDE_TASK_ON_MAIN_MAP = 0x00001000 , QUEST_FLAGS_EX2_HIDE_TASK_IN_TRACKER = 0x00002000 , QUEST_FLAGS_EX2_SKIP_DISABLED_CHECK = 0x00004000 , QUEST_FLAGS_EX2_ENFORCE_MAXIMUM_QUEST_LEVEL = 0x00008000 ,
  QUEST_FLAGS_EX2_CONTENT_ALERT = 0x00010000 , QUEST_FLAGS_EX2_DISPLAY_TIME_REMAINING = 0x00020000 , QUEST_FLAGS_EX2_CLEAR_TASK_PROGRESS_WHEN_ABANDONED = 0x00040000 , QUEST_FLAGS_EX2_SUPPRESS_GREETINGS_ON_COMPLETE = 0x00080000 ,
  QUEST_FLAGS_EX2_HIDE_REQUIRED_ITEMS_ON_TURN_IN = 0x00100000 , QUEST_FLAGS_EX2_IGNORE_SOULBOUND_ITEMS = 0x00200000 , QUEST_FLAGS_EX2_DONT_DEFER_START_EFFECTS = 0x00400000 , QUEST_FLAGS_EX2_HIDE_REQUIRED_ITEMS_PRE_TURN_IN = 0x00800000 ,
  QUEST_FLAGS_EX2_ABANDON_ON_DISABLE = 0x04000000
}
 
enum  QuestSpecialFlags {
  QUEST_SPECIAL_FLAGS_NONE = 0x000 , QUEST_SPECIAL_FLAGS_REPEATABLE = 0x001 , QUEST_SPECIAL_FLAGS_AUTO_PUSH_TO_PARTY = 0x002 , QUEST_SPECIAL_FLAGS_AUTO_ACCEPT = 0x004 ,
  QUEST_SPECIAL_FLAGS_DF_QUEST = 0x008 , QUEST_SPECIAL_FLAGS_MONTHLY = 0x010 , QUEST_SPECIAL_FLAGS_DB_ALLOWED = QUEST_SPECIAL_FLAGS_REPEATABLE | QUEST_SPECIAL_FLAGS_AUTO_PUSH_TO_PARTY | QUEST_SPECIAL_FLAGS_AUTO_ACCEPT | QUEST_SPECIAL_FLAGS_DF_QUEST | QUEST_SPECIAL_FLAGS_MONTHLY , QUEST_SPECIAL_FLAGS_SEQUENCED_OBJECTIVES = 0x020
}
 
enum class  QuestTagType {
  Tag , Profession , Normal , Pvp ,
  PetBattle , Bounty , Dungeon , Invasion ,
  Raid , Contribution , RatedRreward , InvasionWrapper ,
  FactionAssault , Islands , Threat , CovenantCalling
}
 
enum  QuestObjectiveType {
  QUEST_OBJECTIVE_MONSTER = 0 , QUEST_OBJECTIVE_ITEM = 1 , QUEST_OBJECTIVE_GAMEOBJECT = 2 , QUEST_OBJECTIVE_TALKTO = 3 ,
  QUEST_OBJECTIVE_CURRENCY = 4 , QUEST_OBJECTIVE_LEARNSPELL = 5 , QUEST_OBJECTIVE_MIN_REPUTATION = 6 , QUEST_OBJECTIVE_MAX_REPUTATION = 7 ,
  QUEST_OBJECTIVE_MONEY = 8 , QUEST_OBJECTIVE_PLAYERKILLS = 9 , QUEST_OBJECTIVE_AREATRIGGER = 10 , QUEST_OBJECTIVE_WINPETBATTLEAGAINSTNPC = 11 ,
  QUEST_OBJECTIVE_DEFEATBATTLEPET = 12 , QUEST_OBJECTIVE_WINPVPPETBATTLES = 13 , QUEST_OBJECTIVE_CRITERIA_TREE = 14 , QUEST_OBJECTIVE_PROGRESS_BAR = 15 ,
  QUEST_OBJECTIVE_HAVE_CURRENCY = 16 , QUEST_OBJECTIVE_OBTAIN_CURRENCY = 17 , QUEST_OBJECTIVE_INCREASE_REPUTATION = 18 , QUEST_OBJECTIVE_AREA_TRIGGER_ENTER = 19 ,
  QUEST_OBJECTIVE_AREA_TRIGGER_EXIT = 20 , QUEST_OBJECTIVE_KILL_WITH_LABEL = 21 , MAX_QUEST_OBJECTIVE_TYPE
}
 
enum  QuestObjectiveFlags {
  QUEST_OBJECTIVE_FLAG_TRACKED_ON_MINIMAP = 0x0001 , QUEST_OBJECTIVE_FLAG_SEQUENCED = 0x0002 , QUEST_OBJECTIVE_FLAG_OPTIONAL = 0x0004 , QUEST_OBJECTIVE_FLAG_HIDDEN = 0x0008 ,
  QUEST_OBJECTIVE_FLAG_HIDE_CREDIT_MSG = 0x0010 , QUEST_OBJECTIVE_FLAG_PRESERVE_QUEST_ITEMS = 0x0020 , QUEST_OBJECTIVE_FLAG_PART_OF_PROGRESS_BAR = 0x0040 , QUEST_OBJECTIVE_FLAG_KILL_PLAYERS_SAME_FACTION = 0x0080 ,
  QUEST_OBJECTIVE_FLAG_NO_SHARE_PROGRESS = 0x0100 , QUEST_OBJECTIVE_FLAG_IGNORE_SOULBOUND_ITEMS = 0x0200
}
 
enum  QuestObjectiveFlags2 { QUEST_OBJECTIVE_FLAG_2_QUEST_BOUND_ITEM = 0x1 }
 
enum class  QuestCompleteSpellType : uint32 {
  LegacyBehavior = 0 , Follower = 1 , Tradeskill = 2 , Ability = 3 ,
  Aura = 4 , Spell = 5 , Unlock = 6 , Companion = 7 ,
  Max
}
 
enum class  QuestRewardContextFlags : int32 { None = 0x0 , FirstCompletionBonus = 0x1 , RepeatCompletionBonus = 0x2 }
 

Functions

 DEFINE_ENUM_FLAG (QuestGiverStatus)
 

Macro Definition Documentation

◆ MAX_QUEST_LOG_SIZE

#define MAX_QUEST_LOG_SIZE   35

Definition at line 44 of file QuestDef.h.

◆ QUEST_DEPLINK_COUNT

#define QUEST_DEPLINK_COUNT   10

Definition at line 49 of file QuestDef.h.

◆ QUEST_EMOTE_COUNT

#define QUEST_EMOTE_COUNT   4

Definition at line 51 of file QuestDef.h.

◆ QUEST_ITEM_DROP_COUNT

#define QUEST_ITEM_DROP_COUNT   4

Definition at line 46 of file QuestDef.h.

◆ QUEST_REWARD_CHOICES_COUNT

#define QUEST_REWARD_CHOICES_COUNT   6

Definition at line 47 of file QuestDef.h.

◆ QUEST_REWARD_CURRENCY_COUNT

#define QUEST_REWARD_CURRENCY_COUNT   4

Definition at line 52 of file QuestDef.h.

◆ QUEST_REWARD_DISPLAY_SPELL_COUNT

#define QUEST_REWARD_DISPLAY_SPELL_COUNT   3

Definition at line 53 of file QuestDef.h.

◆ QUEST_REWARD_ITEM_COUNT

#define QUEST_REWARD_ITEM_COUNT   4

Definition at line 48 of file QuestDef.h.

◆ QUEST_REWARD_REPUTATIONS_COUNT

#define QUEST_REWARD_REPUTATIONS_COUNT   5

Definition at line 50 of file QuestDef.h.

Typedef Documentation

◆ QuestObjectives

using QuestObjectives = std::vector<QuestObjective>

Definition at line 542 of file QuestDef.h.

Enumeration Type Documentation

◆ QuestCompleteSpellType

enum class QuestCompleteSpellType : uint32
strong
Enumerator
LegacyBehavior 
Follower 
Tradeskill 
Ability 
Aura 
Spell 
Unlock 
Companion 
Max 

Definition at line 396 of file QuestDef.h.

◆ QuestFailedReason

Enumerator
QUEST_ERR_NONE 
QUEST_ERR_FAILED_LOW_LEVEL 
QUEST_ERR_FAILED_WRONG_RACE 
QUEST_ERR_ALREADY_DONE 
QUEST_ERR_ONLY_ONE_TIMED 
QUEST_ERR_ALREADY_ON1 
QUEST_ERR_FAILED_EXPANSION 
QUEST_ERR_ALREADY_ON2 
QUEST_ERR_FAILED_MISSING_ITEMS 
QUEST_ERR_FAILED_NOT_ENOUGH_MONEY 
QUEST_ERR_FAILED_CAIS 
QUEST_ERR_ALREADY_DONE_DAILY 
QUEST_ERR_FAILED_SPELL 
QUEST_ERR_HAS_IN_PROGRESS 

Definition at line 56 of file QuestDef.h.

◆ QuestFlags

Enumerator
QUEST_FLAGS_NONE 
QUEST_FLAGS_COMPLETION_NO_DEATH 
QUEST_FLAGS_COMPLETION_EVENT 
QUEST_FLAGS_COMPLETION_AREA_TRIGGER 
QUEST_FLAGS_SHARABLE 
QUEST_FLAGS_HAS_CONDITION 
QUEST_FLAGS_HIDE_REWARD_POI 
QUEST_FLAGS_RAID_GROUP_OK 
QUEST_FLAGS_WAR_MODE_REWARDS_OPT_IN 
QUEST_FLAGS_NO_MONEY_FOR_XP 
QUEST_FLAGS_HIDE_REWARD 
QUEST_FLAGS_TRACKING_EVENT 
QUEST_FLAGS_DEPRECATE_REPUTATION 
QUEST_FLAGS_DAILY 
QUEST_FLAGS_FLAGS_PVP 
QUEST_FLAGS_DEPRECATED 
QUEST_FLAGS_WEEKLY 
QUEST_FLAGS_AUTO_COMPLETE 
QUEST_FLAGS_DISPLAY_ITEM_IN_TRACKER 
QUEST_FLAGS_DISABLE_COMPLETION_TEXT 
QUEST_FLAGS_AUTO_ACCEPT 
QUEST_FLAGS_PLAYER_CAST_ACCEPT 
QUEST_FLAGS_PLAYER_CAST_COMPLETE 
QUEST_FLAGS_UPDATE_PHASESHIFT 
QUEST_FLAGS_SOR_WHITELIST 
QUEST_FLAGS_LAUNCH_GOSSIP_COMPLETE 
QUEST_FLAGS_REMOVE_SURPLUS_ITEMS 
QUEST_FLAGS_WELL_KNOWN 
QUEST_FLAGS_PORTRAIT_IN_QUEST_LOG 
QUEST_FLAGS_SHOW_ITEM_WHEN_COMPLETED 
QUEST_FLAGS_LAUNCH_GOSSIP_ACCEPT 
QUEST_FLAGS_ITEMS_GLOW_WHEN_COMPLETE 
QUEST_FLAGS_FAIL_ON_LOGOUT 

Definition at line 208 of file QuestDef.h.

◆ QuestFlagsEx

Enumerator
QUEST_FLAGS_EX_NONE 
QUEST_FLAGS_EX_NO_ITEM_REMOVAL 
QUEST_FLAGS_EX_SUPPRESS_GOSSIP_COMPLETE 
QUEST_FLAGS_EX_SUPPRESS_GOSSIP_ACCEPT 
QUEST_FLAGS_EX_DENY_PLAYER_QUESTGIVER 
QUEST_FLAGS_EX_DISPLAY_CLASS_CHOICE_REWARDS 
QUEST_FLAGS_EX_DISPLAY_SPEC_CHOICE_REWARDS 
QUEST_FLAGS_EX_REMOVE_ON_PERIODIC_RESET 
QUEST_FLAGS_EX_ACCOUNT 
QUEST_FLAGS_EX_LEGENDARY 
QUEST_FLAGS_EX_NO_GUILD_XP 
QUEST_FLAGS_EX_RESET_CACHE_ON_ACCEPT 
QUEST_FLAGS_EX_NO_ABANDON_ONCE_BEGUN 
QUEST_FLAGS_EX_RECAST_ACCEPT_SPELL_ON_LOGIN 
QUEST_FLAGS_EX_UPDATE_ZONE_AURAS 
QUEST_FLAGS_EX_NO_CREDIT_FOR_PROXY 
QUEST_FLAGS_EX_DISPLAY_AS_DAILY 
QUEST_FLAGS_EX_DISPLAY_QUEST_LINE 
QUEST_FLAGS_EX_INTERNAL_BUILDS_ONLY 
QUEST_FLAGS_EX_SUPPRESS_SPELL_LEARN_TEXT 
QUEST_FLAGS_EX_DISPLAY_AS_OBJECTIVE 
QUEST_FLAGS_EX_ALLOW_ALL_IN_GARRISON 
QUEST_FLAGS_EX_REMOVE_ON_WEEKLY_RESET 
QUEST_FLAGS_EX_SUPPRESS_GREETINGS_ON_ACCEPT 
QUEST_FLAGS_EX_REWARDS_IGNORE_CAPS 
QUEST_FLAGS_EX_IS_WORLD_QUEST 
QUEST_FLAGS_EX_NOT_IGNORABLE 
QUEST_FLAGS_EX_AUTO_PUSH 
QUEST_FLAGS_EX_NO_SPELL_COMPLETE_EFFECTS 
QUEST_FLAGS_EX_DO_NOT_TOAST_HONOR_REWARD 
QUEST_FLAGS_EX_KEEP_REPEATABLE_QUEST_ON_FACTION_CHANGE 
QUEST_FLAGS_EX_KEEP_PROGRESS_ON_FACTION_CHANGE 
QUEST_FLAGS_EX_PUSH_TEAM_QUEST_USING_MAP_CONTROLLER 

Definition at line 246 of file QuestDef.h.

◆ QuestFlagsEx2

Enumerator
QUEST_FLAGS_EX2_RESET_ON_GAME_MILESTONE 
QUEST_FLAGS_EX2_WAR_MODE_REWARDS_OPT_OUT 
QUEST_FLAGS_EX2_AWARD_HIGHEST_PROFESSION 
QUEST_FLAGS_EX2_NOT_REPLAYABLE 
QUEST_FLAGS_EX2_NO_REPLAY_REWARDS 
QUEST_FLAGS_EX2_DISABLE_WAYPOINT_PATHING 
QUEST_FLAGS_EX2_RESET_ON_MYTHIC_PLUS_SEASON 
QUEST_FLAGS_EX2_RESET_ON_PVP_SEASON 
QUEST_FLAGS_EX2_ENABLE_OVERRIDE_SORT_ORDER 
QUEST_FLAGS_EX2_FORCE_STARTING_LOC_ON_ZONE_MAP 
QUEST_FLAGS_EX2_BONUS_LOOT_NEVER 
QUEST_FLAGS_EX2_BONUS_LOOT_ALWAYS 
QUEST_FLAGS_EX2_HIDE_TASK_ON_MAIN_MAP 
QUEST_FLAGS_EX2_HIDE_TASK_IN_TRACKER 
QUEST_FLAGS_EX2_SKIP_DISABLED_CHECK 
QUEST_FLAGS_EX2_ENFORCE_MAXIMUM_QUEST_LEVEL 
QUEST_FLAGS_EX2_CONTENT_ALERT 
QUEST_FLAGS_EX2_DISPLAY_TIME_REMAINING 
QUEST_FLAGS_EX2_CLEAR_TASK_PROGRESS_WHEN_ABANDONED 
QUEST_FLAGS_EX2_SUPPRESS_GREETINGS_ON_COMPLETE 
QUEST_FLAGS_EX2_HIDE_REQUIRED_ITEMS_ON_TURN_IN 
QUEST_FLAGS_EX2_IGNORE_SOULBOUND_ITEMS 
QUEST_FLAGS_EX2_DONT_DEFER_START_EFFECTS 
QUEST_FLAGS_EX2_HIDE_REQUIRED_ITEMS_PRE_TURN_IN 
QUEST_FLAGS_EX2_ABANDON_ON_DISABLE 

Definition at line 283 of file QuestDef.h.

◆ QuestGiverStatus

enum class QuestGiverStatus : uint64
strong
Enumerator
None 
Future 
FutureJourneyQuest 
FutureLegendaryQuest 
FutureImportantQuest 
TrivialRepeatableTurnin 
Trivial 
TrivialDailyQuest 
TrivialRepeatableQuest 
TrivialMetaQuest 
TrivialJourneyQuest 
TrivialLegendaryQuest 
TrivialImportantQuest 
Reward 
RepeatableReward 
MetaReward 
JourneyReward 
CovenantCallingReward 
LegendaryReward 
ImportantReward 
RepeatableTurnin 
QuestAccountCompleted 
Quest 
DailyQuest 
RepeatableQuest 
MetaQuest 
CovenantCallingQuest 
JourneyQuestAccountCompleted 
JourneyQuest 
LegendaryQuestAccountCompleted 
LegendaryQuest 
ImportantQuestAccountCompleted 
ImportantQuest 
RewardCompleteNoPOI 
RewardCompletePOI 
RepeatableRewardCompleteNoPOI 
RepeatableRewardCompletePOI 
MetaQuestRewardCompleteNoPOI 
MetaQuestRewardCompletePOI 
CovenantCallingRewardCompleteNoPOI 
CovenantCallingRewardCompletePOI 
JourneyRewardCompleteNoPOI 
JourneyRewardCompletePOI 
LegendaryRewardCompleteNoPOI 
LegendaryRewardCompletePOI 
ImportantQuestRewardCompleteNoPOI 
ImportantQuestRewardCompletePOI 

Definition at line 155 of file QuestDef.h.

◆ QuestObjectiveFlags

Enumerator
QUEST_OBJECTIVE_FLAG_TRACKED_ON_MINIMAP 
QUEST_OBJECTIVE_FLAG_SEQUENCED 
QUEST_OBJECTIVE_FLAG_OPTIONAL 
QUEST_OBJECTIVE_FLAG_HIDDEN 
QUEST_OBJECTIVE_FLAG_HIDE_CREDIT_MSG 
QUEST_OBJECTIVE_FLAG_PRESERVE_QUEST_ITEMS 
QUEST_OBJECTIVE_FLAG_PART_OF_PROGRESS_BAR 
QUEST_OBJECTIVE_FLAG_KILL_PLAYERS_SAME_FACTION 
QUEST_OBJECTIVE_FLAG_NO_SHARE_PROGRESS 
QUEST_OBJECTIVE_FLAG_IGNORE_SOULBOUND_ITEMS 

Definition at line 377 of file QuestDef.h.

◆ QuestObjectiveFlags2

Enumerator
QUEST_OBJECTIVE_FLAG_2_QUEST_BOUND_ITEM 

Definition at line 391 of file QuestDef.h.

◆ QuestObjectiveType

Enumerator
QUEST_OBJECTIVE_MONSTER 
QUEST_OBJECTIVE_ITEM 
QUEST_OBJECTIVE_GAMEOBJECT 
QUEST_OBJECTIVE_TALKTO 
QUEST_OBJECTIVE_CURRENCY 
QUEST_OBJECTIVE_LEARNSPELL 
QUEST_OBJECTIVE_MIN_REPUTATION 
QUEST_OBJECTIVE_MAX_REPUTATION 
QUEST_OBJECTIVE_MONEY 
QUEST_OBJECTIVE_PLAYERKILLS 
QUEST_OBJECTIVE_AREATRIGGER 
QUEST_OBJECTIVE_WINPETBATTLEAGAINSTNPC 
QUEST_OBJECTIVE_DEFEATBATTLEPET 
QUEST_OBJECTIVE_WINPVPPETBATTLES 
QUEST_OBJECTIVE_CRITERIA_TREE 
QUEST_OBJECTIVE_PROGRESS_BAR 
QUEST_OBJECTIVE_HAVE_CURRENCY 
QUEST_OBJECTIVE_OBTAIN_CURRENCY 
QUEST_OBJECTIVE_INCREASE_REPUTATION 
QUEST_OBJECTIVE_AREA_TRIGGER_ENTER 
QUEST_OBJECTIVE_AREA_TRIGGER_EXIT 
QUEST_OBJECTIVE_KILL_WITH_LABEL 
MAX_QUEST_OBJECTIVE_TYPE 

Definition at line 349 of file QuestDef.h.

◆ QuestPushReason

enum class QuestPushReason : uint8
strong
Enumerator
Success 
Invalid 
InvalidToRecipient 
Accepted 
Declined 
Busy 
Dead 
DeadToRecipient 
LogFull 
LogFullToRecipient 
OnQuest 
OnQuestToRecipient 
AlreadyDone 
AlreadyDoneToRecipient 
NotDaily 
TimerExpired 
NotInParty 
DifferentServerDaily 
DifferentServerDailyToRecipient 
NotAllowed 
Prerequisite 
PrerequisiteToRecipient 
LowLevel 
LowLevelToRecipient 
HighLevel 
HighLevelToRecipient 
Class 
ClassToRecipient 
Race 
RaceToRecipient 
LowFaction 
LowFactionToRecipient 
HighFaction 
HighFactionToRecipient 
Expansion 
ExpansionToRecipient 
NotGarrisonOwner 
NotGarrisonOwnerToRecipient 
WrongCovenant 
WrongCovenantToRecipient 
NewPlayerExperience 
NewPlayerExperienceToRecipient 
WrongFaction 
WrongFactionToRecipient 
CrossFactionRestricted 

Definition at line 75 of file QuestDef.h.

◆ QuestRewardContextFlags

enum class QuestRewardContextFlags : int32
strong
Enumerator
None 
FirstCompletionBonus 
RepeatCompletionBonus 

Definition at line 409 of file QuestDef.h.

◆ QuestSpecialFlags

Enumerator
QUEST_SPECIAL_FLAGS_NONE 
QUEST_SPECIAL_FLAGS_REPEATABLE 
QUEST_SPECIAL_FLAGS_AUTO_PUSH_TO_PARTY 
QUEST_SPECIAL_FLAGS_AUTO_ACCEPT 
QUEST_SPECIAL_FLAGS_DF_QUEST 
QUEST_SPECIAL_FLAGS_MONTHLY 
QUEST_SPECIAL_FLAGS_DB_ALLOWED 
QUEST_SPECIAL_FLAGS_SEQUENCED_OBJECTIVES 

Definition at line 313 of file QuestDef.h.

◆ QuestStatus

Enumerator
QUEST_STATUS_NONE 
QUEST_STATUS_COMPLETE 
QUEST_STATUS_INCOMPLETE 
QUEST_STATUS_FAILED 
QUEST_STATUS_REWARDED 
MAX_QUEST_STATUS 

Definition at line 143 of file QuestDef.h.

◆ QuestTagType

enum class QuestTagType
strong
Enumerator
Tag 
Profession 
Normal 
Pvp 
PetBattle 
Bounty 
Dungeon 
Invasion 
Raid 
Contribution 
RatedRreward 
InvasionWrapper 
FactionAssault 
Islands 
Threat 
CovenantCalling 

Definition at line 329 of file QuestDef.h.

◆ QuestTradeSkill

Enumerator
QUEST_TRSKILL_NONE 
QUEST_TRSKILL_ALCHEMY 
QUEST_TRSKILL_BLACKSMITHING 
QUEST_TRSKILL_COOKING 
QUEST_TRSKILL_ENCHANTING 
QUEST_TRSKILL_ENGINEERING 
QUEST_TRSKILL_FIRSTAID 
QUEST_TRSKILL_HERBALISM 
QUEST_TRSKILL_LEATHERWORKING 
QUEST_TRSKILL_POISONS 
QUEST_TRSKILL_TAILORING 
QUEST_TRSKILL_MINING 
QUEST_TRSKILL_FISHING 
QUEST_TRSKILL_SKINNING 
QUEST_TRSKILL_JEWELCRAFTING 

Definition at line 124 of file QuestDef.h.

Function Documentation

◆ DEFINE_ENUM_FLAG()

DEFINE_ENUM_FLAG ( QuestGiverStatus  )