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 "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 ,
  Expansion = 32 , ExpansionToRecipient = 33 , NotGarrisonOwner = 34 , NotGarrisonOwnerToRecipient = 35 ,
  WrongCovenant = 36 , WrongCovenantToRecipient = 37 , NewPlayerExperience = 38 , NewPlayerExperienceToRecipient = 39 ,
  WrongFaction = 40 , WrongFactionToRecipient = 41
}
 
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 = 0x000000000 , Future = 0x000000002 , Trivial = 0x000000004 , TrivialRepeatableTurnin = 0x000000008 ,
  TrivialDailyQuest = 0x000000010 , Reward = 0x000000020 , JourneyReward = 0x000000040 , CovenantCallingReward = 0x000000080 ,
  RepeatableTurnin = 0x000000100 , DailyQuest = 0x000000200 , Quest = 0x000000400 , RewardCompleteNoPOI = 0x000000800 ,
  RewardCompletePOI = 0x000001000 , LegendaryQuest = 0x000002000 , LegendaryRewardCompleteNoPOI = 0x000004000 , LegendaryRewardCompletePOI = 0x000008000 ,
  JourneyQuest = 0x000010000 , JourneyRewardCompleteNoPOI = 0x000020000 , JourneyRewardCompletePOI = 0x000040000 , CovenantCallingQuest = 0x000080000 ,
  CovenantCallingRewardCompleteNoPOI = 0x000100000 , CovenantCallingRewardCompletePOI = 0x000200000 , TrivialLegendaryQuest = 0x000400000 , FutureLegendaryQuest = 0x000800000 ,
  LegendaryReward = 0x001000000 , ImportantQuest = 0x002000000 , ImportantReward = 0x004000000 , TrivialImportantQuest = 0x008000000 ,
  FutureImportantQuest = 0x010000000 , ImportantQuestRewardCompleteNoPOI = 0x020000000 , ImportantQuestRewardCompletePOI = 0x040000000 , TrivialJourneyQuest = 0x080000000 ,
  FutureJourneyQuest = 0x100000000
}
 
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
}
 
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
}
 

Functions

 DEFINE_ENUM_FLAG (QuestGiverStatus)
 

Macro Definition Documentation

◆ MAX_QUEST_LOG_SIZE

#define MAX_QUEST_LOG_SIZE   35

Definition at line 43 of file QuestDef.h.

◆ QUEST_DEPLINK_COUNT

#define QUEST_DEPLINK_COUNT   10

Definition at line 48 of file QuestDef.h.

◆ QUEST_EMOTE_COUNT

#define QUEST_EMOTE_COUNT   4

Definition at line 50 of file QuestDef.h.

◆ QUEST_ITEM_DROP_COUNT

#define QUEST_ITEM_DROP_COUNT   4

Definition at line 45 of file QuestDef.h.

◆ QUEST_REWARD_CHOICES_COUNT

#define QUEST_REWARD_CHOICES_COUNT   6

Definition at line 46 of file QuestDef.h.

◆ QUEST_REWARD_CURRENCY_COUNT

#define QUEST_REWARD_CURRENCY_COUNT   4

Definition at line 51 of file QuestDef.h.

◆ QUEST_REWARD_DISPLAY_SPELL_COUNT

#define QUEST_REWARD_DISPLAY_SPELL_COUNT   3

Definition at line 52 of file QuestDef.h.

◆ QUEST_REWARD_ITEM_COUNT

#define QUEST_REWARD_ITEM_COUNT   4

Definition at line 47 of file QuestDef.h.

◆ QUEST_REWARD_REPUTATIONS_COUNT

#define QUEST_REWARD_REPUTATIONS_COUNT   5

Definition at line 49 of file QuestDef.h.

Typedef Documentation

◆ QuestObjectives

using QuestObjectives = std::vector<QuestObjective>

Definition at line 515 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 376 of file QuestDef.h.

377{
378 LegacyBehavior = 0,
379 Follower = 1,
380 Tradeskill = 2,
381 Ability = 3,
382 Aura = 4,
383 Spell = 5,
384 Unlock = 6,
385 Companion = 7,
386 Max
387};
Definition: Spell.h:254

◆ 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 55 of file QuestDef.h.

56{
58 QUEST_ERR_FAILED_LOW_LEVEL = 1, // DESCRIPTION "You are not high enough level for that quest.""
59 QUEST_ERR_FAILED_WRONG_RACE = 6, // DESCRIPTION "That quest is not available to your race."
60 QUEST_ERR_ALREADY_DONE = 7, // DESCRIPTION "You have completed that daily quest today."
61 QUEST_ERR_ONLY_ONE_TIMED = 12, // DESCRIPTION "You can only be on one timed quest at a time"
62 QUEST_ERR_ALREADY_ON1 = 13, // DESCRIPTION "You are already on that quest"
63 QUEST_ERR_FAILED_EXPANSION = 16, // DESCRIPTION "This quest requires an expansion enabled account."
64 QUEST_ERR_ALREADY_ON2 = 18, // DESCRIPTION "You are already on that quest"
65 QUEST_ERR_FAILED_MISSING_ITEMS = 21, // DESCRIPTION "You don't have the required items with you. Check storage."
66 QUEST_ERR_FAILED_NOT_ENOUGH_MONEY = 23, // DESCRIPTION "You don't have enough money for that quest"
67 QUEST_ERR_FAILED_CAIS = 24, // DESCRIPTION "You cannot complete quests once you have reached tired time"
68 QUEST_ERR_ALREADY_DONE_DAILY = 26, // DESCRIPTION "You have completed that daily quest today."
69 QUEST_ERR_FAILED_SPELL = 28, // DESCRIPTION "You haven't learned the required spell."
70 QUEST_ERR_HAS_IN_PROGRESS = 30 // DESCRIPTION "Progress Bar objective not completed"
71};
@ QUEST_ERR_ALREADY_DONE
Definition: QuestDef.h:60
@ QUEST_ERR_FAILED_EXPANSION
Definition: QuestDef.h:63
@ QUEST_ERR_FAILED_WRONG_RACE
Definition: QuestDef.h:59
@ QUEST_ERR_ALREADY_ON2
Definition: QuestDef.h:64
@ QUEST_ERR_ONLY_ONE_TIMED
Definition: QuestDef.h:61
@ QUEST_ERR_ALREADY_DONE_DAILY
Definition: QuestDef.h:68
@ QUEST_ERR_FAILED_LOW_LEVEL
Definition: QuestDef.h:58
@ QUEST_ERR_FAILED_NOT_ENOUGH_MONEY
Definition: QuestDef.h:66
@ QUEST_ERR_FAILED_MISSING_ITEMS
Definition: QuestDef.h:65
@ QUEST_ERR_NONE
Definition: QuestDef.h:57
@ QUEST_ERR_HAS_IN_PROGRESS
Definition: QuestDef.h:70
@ QUEST_ERR_FAILED_SPELL
Definition: QuestDef.h:69
@ QUEST_ERR_ALREADY_ON1
Definition: QuestDef.h:62
@ QUEST_ERR_FAILED_CAIS
Definition: QuestDef.h:67

◆ 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 190 of file QuestDef.h.

191{
192 QUEST_FLAGS_NONE = 0x00000000,
194 QUEST_FLAGS_COMPLETION_EVENT = 0x00000002,
196 QUEST_FLAGS_SHARABLE = 0x00000008, // Can be shared: Player::CanShareQuest()
197 QUEST_FLAGS_HAS_CONDITION = 0x00000010, // Not used currently
198 QUEST_FLAGS_HIDE_REWARD_POI = 0x00000020, // Hides questgiver turn-in minimap icon
199 QUEST_FLAGS_RAID_GROUP_OK = 0x00000040, // Can be completed while in raid
200 QUEST_FLAGS_WAR_MODE_REWARDS_OPT_IN = 0x00000080, // Not used currently
201 QUEST_FLAGS_NO_MONEY_FOR_XP = 0x00000100, // Experience is not converted to gold at max level
202 QUEST_FLAGS_HIDE_REWARD = 0x00000200, // Items and money rewarded only sent in SMSG_QUESTGIVER_OFFER_REWARD (not in SMSG_QUEST_GIVER_QUEST_DETAILS or in client quest log(SMSG_QUEST_QUERY_RESPONSE))
203 QUEST_FLAGS_TRACKING_EVENT = 0x00000400, // These quests are automatically rewarded on quest complete and they will never appear in quest log client side.
204 QUEST_FLAGS_DEPRECATE_REPUTATION = 0x00000800, // Not used currently
205 QUEST_FLAGS_DAILY = 0x00001000, // Used to know quest is Daily one
206 QUEST_FLAGS_FLAGS_PVP = 0x00002000, // Having this quest in log forces PvP flag
207 QUEST_FLAGS_DEPRECATED = 0x00004000, // Used on quests that are not generally available
208 QUEST_FLAGS_WEEKLY = 0x00008000,
209 QUEST_FLAGS_AUTO_COMPLETE = 0x00010000, // Quests with this flag player submit automatically by special button in player gui
210 QUEST_FLAGS_DISPLAY_ITEM_IN_TRACKER = 0x00020000, // Displays usable item in quest tracker
211 QUEST_FLAGS_DISABLE_COMPLETION_TEXT = 0x00040000, // use Objective text as Complete text
212 QUEST_FLAGS_AUTO_ACCEPT = 0x00080000, // The client recognizes this flag as auto-accept.
213 QUEST_FLAGS_PLAYER_CAST_ACCEPT = 0x00100000, // Accept Spell Player Cast
214 QUEST_FLAGS_PLAYER_CAST_COMPLETE = 0x00200000, // Complete Spell Player Cast
215 QUEST_FLAGS_UPDATE_PHASESHIFT = 0x00400000, // Update Phase Shift
216 QUEST_FLAGS_SOR_WHITELIST = 0x00800000, // Scroll of Resurrection Whitelist
217 QUEST_FLAGS_LAUNCH_GOSSIP_COMPLETE = 0x01000000, // Gossip on Quest Completion - Force Gossip
218 QUEST_FLAGS_REMOVE_SURPLUS_ITEMS = 0x02000000, // Remove all items from inventory that have the same id as the objective, not just the amount required by quest
219 QUEST_FLAGS_WELL_KNOWN = 0x04000000, // Well-Known
220 QUEST_FLAGS_PORTRAIT_IN_QUEST_LOG = 0x08000000, // Portrait from Log
221 QUEST_FLAGS_SHOW_ITEM_WHEN_COMPLETED = 0x10000000, // Show Item When Completed
222 QUEST_FLAGS_LAUNCH_GOSSIP_ACCEPT = 0x20000000, // Gossip on Quest Accept - Force Gossip
223 QUEST_FLAGS_ITEMS_GLOW_WHEN_COMPLETE = 0x40000000, // Items Glow When Done
224 QUEST_FLAGS_FAIL_ON_LOGOUT = 0x80000000 // Fail on Logout
225};
@ QUEST_FLAGS_DISABLE_COMPLETION_TEXT
Definition: QuestDef.h:211
@ QUEST_FLAGS_FLAGS_PVP
Definition: QuestDef.h:206
@ QUEST_FLAGS_DAILY
Definition: QuestDef.h:205
@ QUEST_FLAGS_NONE
Definition: QuestDef.h:192
@ QUEST_FLAGS_HIDE_REWARD_POI
Definition: QuestDef.h:198
@ QUEST_FLAGS_AUTO_COMPLETE
Definition: QuestDef.h:209
@ QUEST_FLAGS_REMOVE_SURPLUS_ITEMS
Definition: QuestDef.h:218
@ QUEST_FLAGS_LAUNCH_GOSSIP_ACCEPT
Definition: QuestDef.h:222
@ QUEST_FLAGS_DEPRECATED
Definition: QuestDef.h:207
@ QUEST_FLAGS_WEEKLY
Definition: QuestDef.h:208
@ QUEST_FLAGS_DISPLAY_ITEM_IN_TRACKER
Definition: QuestDef.h:210
@ QUEST_FLAGS_HAS_CONDITION
Definition: QuestDef.h:197
@ QUEST_FLAGS_COMPLETION_AREA_TRIGGER
Definition: QuestDef.h:195
@ QUEST_FLAGS_RAID_GROUP_OK
Definition: QuestDef.h:199
@ QUEST_FLAGS_AUTO_ACCEPT
Definition: QuestDef.h:212
@ QUEST_FLAGS_UPDATE_PHASESHIFT
Definition: QuestDef.h:215
@ QUEST_FLAGS_COMPLETION_NO_DEATH
Definition: QuestDef.h:193
@ QUEST_FLAGS_SOR_WHITELIST
Definition: QuestDef.h:216
@ QUEST_FLAGS_HIDE_REWARD
Definition: QuestDef.h:202
@ QUEST_FLAGS_WAR_MODE_REWARDS_OPT_IN
Definition: QuestDef.h:200
@ QUEST_FLAGS_SHOW_ITEM_WHEN_COMPLETED
Definition: QuestDef.h:221
@ QUEST_FLAGS_PORTRAIT_IN_QUEST_LOG
Definition: QuestDef.h:220
@ QUEST_FLAGS_SHARABLE
Definition: QuestDef.h:196
@ QUEST_FLAGS_PLAYER_CAST_COMPLETE
Definition: QuestDef.h:214
@ QUEST_FLAGS_DEPRECATE_REPUTATION
Definition: QuestDef.h:204
@ QUEST_FLAGS_COMPLETION_EVENT
Definition: QuestDef.h:194
@ QUEST_FLAGS_ITEMS_GLOW_WHEN_COMPLETE
Definition: QuestDef.h:223
@ QUEST_FLAGS_LAUNCH_GOSSIP_COMPLETE
Definition: QuestDef.h:217
@ QUEST_FLAGS_FAIL_ON_LOGOUT
Definition: QuestDef.h:224
@ QUEST_FLAGS_WELL_KNOWN
Definition: QuestDef.h:219
@ QUEST_FLAGS_PLAYER_CAST_ACCEPT
Definition: QuestDef.h:213
@ QUEST_FLAGS_NO_MONEY_FOR_XP
Definition: QuestDef.h:201
@ QUEST_FLAGS_TRACKING_EVENT
Definition: QuestDef.h:203

◆ 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 228 of file QuestDef.h.

229{
230 QUEST_FLAGS_EX_NONE = 0x00000000,
231 QUEST_FLAGS_EX_NO_ITEM_REMOVAL = 0x00000001, // Keep Additional Items
232 QUEST_FLAGS_EX_SUPPRESS_GOSSIP_COMPLETE = 0x00000002, // Gossip on Quest Completion - Suppress Gossip
233 QUEST_FLAGS_EX_SUPPRESS_GOSSIP_ACCEPT = 0x00000004, // Gossip on Quest Accept - Suppress Gossip
234 QUEST_FLAGS_EX_DENY_PLAYER_QUESTGIVER = 0x00000008, // Disallow Player as Questgiver (advanced)
235 QUEST_FLAGS_EX_DISPLAY_CLASS_CHOICE_REWARDS = 0x00000010, // Choice Reward Filter - Matches Class
236 QUEST_FLAGS_EX_DISPLAY_SPEC_CHOICE_REWARDS = 0x00000020, // Choice Reward Filter - Matches Spec
237 QUEST_FLAGS_EX_REMOVE_ON_PERIODIC_RESET = 0x00000040, // Remove from Log on Periodic Reset
238 QUEST_FLAGS_EX_ACCOUNT = 0x00000080, // Account-Level Quest
239 QUEST_FLAGS_EX_LEGENDARY = 0x00000100, // Legendary Quest
240 QUEST_FLAGS_EX_NO_GUILD_XP = 0x00000200, // No Guild XP
241 QUEST_FLAGS_EX_RESET_CACHE_ON_ACCEPT = 0x00000400, // Reset Cache on Accept (internal)
242 QUEST_FLAGS_EX_NO_ABANDON_ONCE_BEGUN = 0x00000800, // No Abandon Once Any Objective Complete
243 QUEST_FLAGS_EX_RECAST_ACCEPT_SPELL_ON_LOGIN = 0x00001000, // Recast accept spell on login
244 QUEST_FLAGS_EX_UPDATE_ZONE_AURAS = 0x00002000, // Update Zone Auras
245 QUEST_FLAGS_EX_NO_CREDIT_FOR_PROXY = 0x00004000, // No Credit for Proxy Creatures
246 QUEST_FLAGS_EX_DISPLAY_AS_DAILY = 0x00008000, // Display As Daily Quest
248 QUEST_FLAGS_EX_INTERNAL_BUILDS_ONLY = 0x00020000, // Quest for Internal Builds ONLY
249 QUEST_FLAGS_EX_SUPPRESS_SPELL_LEARN_TEXT = 0x00040000, // Suppress spell learn text line (for followers)
250 QUEST_FLAGS_EX_DISPLAY_AS_OBJECTIVE = 0x00080000, // Display Header as Objective for Tasks
251 QUEST_FLAGS_EX_ALLOW_ALL_IN_GARRISON = 0x00100000, // Garrison non-owners allowed
252 QUEST_FLAGS_EX_REMOVE_ON_WEEKLY_RESET = 0x00200000, // Remove quest on weekly reset
253 QUEST_FLAGS_EX_SUPPRESS_GREETINGS_ON_ACCEPT = 0x00400000, // Suppress farewell audio after quest accept
254 QUEST_FLAGS_EX_REWARDS_IGNORE_CAPS = 0x00800000, // Rewards bypass weekly caps and Season Total
255 QUEST_FLAGS_EX_IS_WORLD_QUEST = 0x01000000, // Is a World Quest
256 QUEST_FLAGS_EX_NOT_IGNORABLE = 0x02000000, // Not Ignorable
257 QUEST_FLAGS_EX_AUTO_PUSH = 0x04000000, // Auto Push
258 QUEST_FLAGS_EX_NO_SPELL_COMPLETE_EFFECTS = 0x08000000, // No Complete Quest Spell Effect
259 QUEST_FLAGS_EX_DO_NOT_TOAST_HONOR_REWARD = 0x10000000, // Do Not Toast Honor Reward
260 QUEST_FLAGS_EX_KEEP_REPEATABLE_QUEST_ON_FACTION_CHANGE = 0x20000000, // Keep repeatable quest on faction change
261 QUEST_FLAGS_EX_KEEP_PROGRESS_ON_FACTION_CHANGE = 0x40000000, // Keep quest progress on faction change
263};
@ QUEST_FLAGS_EX_NO_ITEM_REMOVAL
Definition: QuestDef.h:231
@ QUEST_FLAGS_EX_LEGENDARY
Definition: QuestDef.h:239
@ QUEST_FLAGS_EX_DISPLAY_AS_OBJECTIVE
Definition: QuestDef.h:250
@ QUEST_FLAGS_EX_NO_SPELL_COMPLETE_EFFECTS
Definition: QuestDef.h:258
@ QUEST_FLAGS_EX_KEEP_PROGRESS_ON_FACTION_CHANGE
Definition: QuestDef.h:261
@ QUEST_FLAGS_EX_DISPLAY_QUEST_LINE
Definition: QuestDef.h:247
@ QUEST_FLAGS_EX_ACCOUNT
Definition: QuestDef.h:238
@ QUEST_FLAGS_EX_REWARDS_IGNORE_CAPS
Definition: QuestDef.h:254
@ QUEST_FLAGS_EX_DENY_PLAYER_QUESTGIVER
Definition: QuestDef.h:234
@ QUEST_FLAGS_EX_SUPPRESS_SPELL_LEARN_TEXT
Definition: QuestDef.h:249
@ QUEST_FLAGS_EX_AUTO_PUSH
Definition: QuestDef.h:257
@ QUEST_FLAGS_EX_DO_NOT_TOAST_HONOR_REWARD
Definition: QuestDef.h:259
@ QUEST_FLAGS_EX_SUPPRESS_GOSSIP_ACCEPT
Definition: QuestDef.h:233
@ QUEST_FLAGS_EX_DISPLAY_AS_DAILY
Definition: QuestDef.h:246
@ QUEST_FLAGS_EX_INTERNAL_BUILDS_ONLY
Definition: QuestDef.h:248
@ QUEST_FLAGS_EX_SUPPRESS_GREETINGS_ON_ACCEPT
Definition: QuestDef.h:253
@ QUEST_FLAGS_EX_REMOVE_ON_PERIODIC_RESET
Definition: QuestDef.h:237
@ QUEST_FLAGS_EX_PUSH_TEAM_QUEST_USING_MAP_CONTROLLER
Definition: QuestDef.h:262
@ QUEST_FLAGS_EX_NO_CREDIT_FOR_PROXY
Definition: QuestDef.h:245
@ QUEST_FLAGS_EX_UPDATE_ZONE_AURAS
Definition: QuestDef.h:244
@ QUEST_FLAGS_EX_IS_WORLD_QUEST
Definition: QuestDef.h:255
@ QUEST_FLAGS_EX_NONE
Definition: QuestDef.h:230
@ QUEST_FLAGS_EX_DISPLAY_CLASS_CHOICE_REWARDS
Definition: QuestDef.h:235
@ QUEST_FLAGS_EX_DISPLAY_SPEC_CHOICE_REWARDS
Definition: QuestDef.h:236
@ QUEST_FLAGS_EX_NO_ABANDON_ONCE_BEGUN
Definition: QuestDef.h:242
@ QUEST_FLAGS_EX_SUPPRESS_GOSSIP_COMPLETE
Definition: QuestDef.h:232
@ QUEST_FLAGS_EX_REMOVE_ON_WEEKLY_RESET
Definition: QuestDef.h:252
@ QUEST_FLAGS_EX_NO_GUILD_XP
Definition: QuestDef.h:240
@ QUEST_FLAGS_EX_RECAST_ACCEPT_SPELL_ON_LOGIN
Definition: QuestDef.h:243
@ QUEST_FLAGS_EX_NOT_IGNORABLE
Definition: QuestDef.h:256
@ QUEST_FLAGS_EX_RESET_CACHE_ON_ACCEPT
Definition: QuestDef.h:241
@ QUEST_FLAGS_EX_KEEP_REPEATABLE_QUEST_ON_FACTION_CHANGE
Definition: QuestDef.h:260
@ QUEST_FLAGS_EX_ALLOW_ALL_IN_GARRISON
Definition: QuestDef.h:251

◆ 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 

Definition at line 265 of file QuestDef.h.

266{
291};
@ QUEST_FLAGS_EX2_HIDE_REQUIRED_ITEMS_PRE_TURN_IN
Definition: QuestDef.h:290
@ QUEST_FLAGS_EX2_DISPLAY_TIME_REMAINING
Definition: QuestDef.h:284
@ QUEST_FLAGS_EX2_RESET_ON_GAME_MILESTONE
Definition: QuestDef.h:267
@ QUEST_FLAGS_EX2_NOT_REPLAYABLE
Definition: QuestDef.h:270
@ QUEST_FLAGS_EX2_AWARD_HIGHEST_PROFESSION
Definition: QuestDef.h:269
@ QUEST_FLAGS_EX2_HIDE_REQUIRED_ITEMS_ON_TURN_IN
Definition: QuestDef.h:287
@ QUEST_FLAGS_EX2_SUPPRESS_GREETINGS_ON_COMPLETE
Definition: QuestDef.h:286
@ QUEST_FLAGS_EX2_SKIP_DISABLED_CHECK
Definition: QuestDef.h:281
@ QUEST_FLAGS_EX2_ENFORCE_MAXIMUM_QUEST_LEVEL
Definition: QuestDef.h:282
@ QUEST_FLAGS_EX2_HIDE_TASK_ON_MAIN_MAP
Definition: QuestDef.h:279
@ QUEST_FLAGS_EX2_NO_REPLAY_REWARDS
Definition: QuestDef.h:271
@ QUEST_FLAGS_EX2_DISABLE_WAYPOINT_PATHING
Definition: QuestDef.h:272
@ QUEST_FLAGS_EX2_IGNORE_SOULBOUND_ITEMS
Definition: QuestDef.h:288
@ QUEST_FLAGS_EX2_BONUS_LOOT_ALWAYS
Definition: QuestDef.h:278
@ QUEST_FLAGS_EX2_RESET_ON_MYTHIC_PLUS_SEASON
Definition: QuestDef.h:273
@ QUEST_FLAGS_EX2_FORCE_STARTING_LOC_ON_ZONE_MAP
Definition: QuestDef.h:276
@ QUEST_FLAGS_EX2_WAR_MODE_REWARDS_OPT_OUT
Definition: QuestDef.h:268
@ QUEST_FLAGS_EX2_CONTENT_ALERT
Definition: QuestDef.h:283
@ QUEST_FLAGS_EX2_RESET_ON_PVP_SEASON
Definition: QuestDef.h:274
@ QUEST_FLAGS_EX2_DONT_DEFER_START_EFFECTS
Definition: QuestDef.h:289
@ QUEST_FLAGS_EX2_HIDE_TASK_IN_TRACKER
Definition: QuestDef.h:280
@ QUEST_FLAGS_EX2_CLEAR_TASK_PROGRESS_WHEN_ABANDONED
Definition: QuestDef.h:285
@ QUEST_FLAGS_EX2_ENABLE_OVERRIDE_SORT_ORDER
Definition: QuestDef.h:275
@ QUEST_FLAGS_EX2_BONUS_LOOT_NEVER
Definition: QuestDef.h:277

◆ QuestGiverStatus

enum class QuestGiverStatus : uint64
strong
Enumerator
None 
Future 
Trivial 
TrivialRepeatableTurnin 
TrivialDailyQuest 
Reward 
JourneyReward 
CovenantCallingReward 
RepeatableTurnin 
DailyQuest 
Quest 
RewardCompleteNoPOI 
RewardCompletePOI 
LegendaryQuest 
LegendaryRewardCompleteNoPOI 
LegendaryRewardCompletePOI 
JourneyQuest 
JourneyRewardCompleteNoPOI 
JourneyRewardCompletePOI 
CovenantCallingQuest 
CovenantCallingRewardCompleteNoPOI 
CovenantCallingRewardCompletePOI 
TrivialLegendaryQuest 
FutureLegendaryQuest 
LegendaryReward 
ImportantQuest 
ImportantReward 
TrivialImportantQuest 
FutureImportantQuest 
ImportantQuestRewardCompleteNoPOI 
ImportantQuestRewardCompletePOI 
TrivialJourneyQuest 
FutureJourneyQuest 

Definition at line 151 of file QuestDef.h.

152{
153 None = 0x000000000,
154 Future = 0x000000002,
155 Trivial = 0x000000004,
156 TrivialRepeatableTurnin = 0x000000008,
157 TrivialDailyQuest = 0x000000010,
158 Reward = 0x000000020,
159 JourneyReward = 0x000000040,
160 CovenantCallingReward = 0x000000080,
161 RepeatableTurnin = 0x000000100,
162 DailyQuest = 0x000000200,
163 Quest = 0x000000400,
164 RewardCompleteNoPOI = 0x000000800,
165 RewardCompletePOI = 0x000001000,
166 LegendaryQuest = 0x000002000,
167 LegendaryRewardCompleteNoPOI = 0x000004000,
168 LegendaryRewardCompletePOI = 0x000008000,
169 JourneyQuest = 0x000010000,
170 JourneyRewardCompleteNoPOI = 0x000020000,
171 JourneyRewardCompletePOI = 0x000040000,
172 CovenantCallingQuest = 0x000080000,
175 TrivialLegendaryQuest = 0x000400000,
176 FutureLegendaryQuest = 0x000800000,
177 LegendaryReward = 0x001000000,
178 ImportantQuest = 0x002000000,
179 ImportantReward = 0x004000000,
180 TrivialImportantQuest = 0x008000000,
181 FutureImportantQuest = 0x010000000,
184 TrivialJourneyQuest = 0x080000000,
185 FutureJourneyQuest = 0x100000000,
186};
@ ImportantQuestRewardCompletePOI
@ CovenantCallingRewardCompletePOI
@ ImportantQuestRewardCompleteNoPOI
@ CovenantCallingRewardCompleteNoPOI

◆ 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 357 of file QuestDef.h.

358{
359 QUEST_OBJECTIVE_FLAG_TRACKED_ON_MINIMAP = 0x0001, // client displays large yellow blob on minimap for creature/gameobject
360 QUEST_OBJECTIVE_FLAG_SEQUENCED = 0x0002, // client will not see the objective displayed until all previous objectives are completed
361 QUEST_OBJECTIVE_FLAG_OPTIONAL = 0x0004, // not required to complete the quest
362 QUEST_OBJECTIVE_FLAG_HIDDEN = 0x0008, // never displayed in quest log
363 QUEST_OBJECTIVE_FLAG_HIDE_CREDIT_MSG = 0x0010, // skip showing item objective progress
365 QUEST_OBJECTIVE_FLAG_PART_OF_PROGRESS_BAR = 0x0040, // hidden objective used to calculate progress bar percent (quests are limited to a single progress bar objective)
369};
@ QUEST_OBJECTIVE_FLAG_SEQUENCED
Definition: QuestDef.h:360
@ QUEST_OBJECTIVE_FLAG_KILL_PLAYERS_SAME_FACTION
Definition: QuestDef.h:366
@ QUEST_OBJECTIVE_FLAG_IGNORE_SOULBOUND_ITEMS
Definition: QuestDef.h:368
@ QUEST_OBJECTIVE_FLAG_PRESERVE_QUEST_ITEMS
Definition: QuestDef.h:364
@ QUEST_OBJECTIVE_FLAG_HIDDEN
Definition: QuestDef.h:362
@ QUEST_OBJECTIVE_FLAG_PART_OF_PROGRESS_BAR
Definition: QuestDef.h:365
@ QUEST_OBJECTIVE_FLAG_TRACKED_ON_MINIMAP
Definition: QuestDef.h:359
@ QUEST_OBJECTIVE_FLAG_NO_SHARE_PROGRESS
Definition: QuestDef.h:367
@ QUEST_OBJECTIVE_FLAG_OPTIONAL
Definition: QuestDef.h:361
@ QUEST_OBJECTIVE_FLAG_HIDE_CREDIT_MSG
Definition: QuestDef.h:363

◆ QuestObjectiveFlags2

Enumerator
QUEST_OBJECTIVE_FLAG_2_QUEST_BOUND_ITEM 

Definition at line 371 of file QuestDef.h.

372{
373 QUEST_OBJECTIVE_FLAG_2_QUEST_BOUND_ITEM = 0x1 // Item is bound to a single objective, only increments the counter for one quest if multiple require the same item and is not stored in inventory
374};
@ QUEST_OBJECTIVE_FLAG_2_QUEST_BOUND_ITEM
Definition: QuestDef.h:373

◆ 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 329 of file QuestDef.h.

330{
347 QUEST_OBJECTIVE_HAVE_CURRENCY = 16, // requires the player to have X currency when turning in but does not consume it
348 QUEST_OBJECTIVE_OBTAIN_CURRENCY = 17, // requires the player to gain X currency after starting the quest but not required to keep it until the end (does not consume)
349 QUEST_OBJECTIVE_INCREASE_REPUTATION = 18, // requires the player to gain X reputation with a faction
353
355};
@ QUEST_OBJECTIVE_DEFEATBATTLEPET
Definition: QuestDef.h:343
@ QUEST_OBJECTIVE_WINPVPPETBATTLES
Definition: QuestDef.h:344
@ QUEST_OBJECTIVE_INCREASE_REPUTATION
Definition: QuestDef.h:349
@ MAX_QUEST_OBJECTIVE_TYPE
Definition: QuestDef.h:354
@ QUEST_OBJECTIVE_HAVE_CURRENCY
Definition: QuestDef.h:347
@ QUEST_OBJECTIVE_WINPETBATTLEAGAINSTNPC
Definition: QuestDef.h:342
@ QUEST_OBJECTIVE_MONSTER
Definition: QuestDef.h:331
@ QUEST_OBJECTIVE_TALKTO
Definition: QuestDef.h:334
@ QUEST_OBJECTIVE_KILL_WITH_LABEL
Definition: QuestDef.h:352
@ QUEST_OBJECTIVE_CRITERIA_TREE
Definition: QuestDef.h:345
@ QUEST_OBJECTIVE_OBTAIN_CURRENCY
Definition: QuestDef.h:348
@ QUEST_OBJECTIVE_PROGRESS_BAR
Definition: QuestDef.h:346
@ QUEST_OBJECTIVE_PLAYERKILLS
Definition: QuestDef.h:340
@ QUEST_OBJECTIVE_ITEM
Definition: QuestDef.h:332
@ QUEST_OBJECTIVE_MONEY
Definition: QuestDef.h:339
@ QUEST_OBJECTIVE_MAX_REPUTATION
Definition: QuestDef.h:338
@ QUEST_OBJECTIVE_AREA_TRIGGER_EXIT
Definition: QuestDef.h:351
@ QUEST_OBJECTIVE_AREATRIGGER
Definition: QuestDef.h:341
@ QUEST_OBJECTIVE_CURRENCY
Definition: QuestDef.h:335
@ QUEST_OBJECTIVE_LEARNSPELL
Definition: QuestDef.h:336
@ QUEST_OBJECTIVE_AREA_TRIGGER_ENTER
Definition: QuestDef.h:350
@ QUEST_OBJECTIVE_GAMEOBJECT
Definition: QuestDef.h:333
@ QUEST_OBJECTIVE_MIN_REPUTATION
Definition: QuestDef.h:337

◆ 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 
Expansion 
ExpansionToRecipient 
NotGarrisonOwner 
NotGarrisonOwnerToRecipient 
WrongCovenant 
WrongCovenantToRecipient 
NewPlayerExperience 
NewPlayerExperienceToRecipient 
WrongFaction 
WrongFactionToRecipient 

Definition at line 74 of file QuestDef.h.

75{
76 Success = 0, // "Sharing quest with %s..."
77 Invalid = 1, // "%s is not eligible for that quest"
78 InvalidToRecipient = 2, // "%s's attempt to share quest "%s" failed. You are not eligible for that quest."
79 Accepted = 3, // "%s has accepted your quest"
80 Declined = 4, // "%s has declined your quest"
81 Busy = 5, // "%s is busy"
82 Dead = 6, // "%s is dead."
83 DeadToRecipient = 7, // "%s's attempt to share quest "%s" failed. You are dead."
84 LogFull = 8, // "%s's quest log is full"
85 LogFullToRecipient = 9, // "%s's attempt to share quest "%s" failed. Your quest log is full."
86 OnQuest = 10, // "%s is already on that quest"
87 OnQuestToRecipient = 11, // "%s's attempt to share quest "%s" failed. You are already on that quest."
88 AlreadyDone = 12, // "%s has completed that quest"
89 AlreadyDoneToRecipient = 13, // "%s's attempt to share quest "%s" failed. You have completed that quest."
90 NotDaily = 14, // "That quest cannot be shared today"
91 TimerExpired = 15, // "Quest sharing timer has expired"
92 NotInParty = 16, // "You are not in a party"
93 DifferentServerDaily = 17, // "%s is not eligible for that quest today"
94 DifferentServerDailyToRecipient = 18, // "%s's attempt to share quest "%s" failed. You are not eligible for that quest today."
95 NotAllowed = 19, // "That quest cannot be shared"
96 Prerequisite = 20, // "%s hasn't completed all of the prerequisite quests required for that quest."
97 PrerequisiteToRecipient = 21, // "%s's attempt to share quest "%s" failed. You must complete all of the prerequisite quests first."
98 LowLevel = 22, // "%s is too low level for that quest."
99 LowLevelToRecipient = 23, // "%s's attempt to share quest "%s" failed. You are too low level for that quest."
100 HighLevel = 24, // "%s is too high level for that quest."
101 HighLevelToRecipient = 25, // "%s's attempt to share quest "%s" failed. You are too high level for that quest."
102 Class = 26, // "%s is the wrong class for that quest."
103 ClassToRecipient = 27, // "%s's attempt to share quest "%s" failed. You are the wrong class for that quest."
104 Race = 28, // "%s is the wrong race for that quest."
105 RaceToRecipient = 29, // "%s's attempt to share quest "%s" failed. You are the wrong race for that quest."
106 LowFaction = 30, // "%s's reputation is too low for that quest."
107 LowFactionToRecipient = 31, // "%s's attempt to share quest "%s" failed. Your reputation is too low for that quest."
108 Expansion = 32, // "%s doesn't own the required expansion for that quest."
109 ExpansionToRecipient = 33, // "%s's attempt to share quest "%s" failed. You do not own the required expansion for that quest."
110 NotGarrisonOwner = 34, // "%s must own a garrison to accept that quest."
111 NotGarrisonOwnerToRecipient = 35, // "%s's attempt to share quest "%s" failed. You must own a garrison to accept that quest."
112 WrongCovenant = 36, // "%s is in the wrong covenant for that quest."
113 WrongCovenantToRecipient = 37, // "%s's attempt to share quest "%s" failed. You are in the wrong covenant for that quest."
114 NewPlayerExperience = 38, // "%s must complete Exile's Reach to accept that quest."
115 NewPlayerExperienceToRecipient = 39, // "%s's attempt to share quest "%s" failed. You must complete Exile's Reach to accept that quest."
116 WrongFaction = 40, // "%s is the wrong faction for that quest."
117 WrongFactionToRecipient = 41 // "%s's attempt to share quest "%s" failed. You are the wrong faction for that quest."
118};
@ NewPlayerExperienceToRecipient
@ DifferentServerDailyToRecipient

◆ 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 293 of file QuestDef.h.

294{
296 // Trinity flags for set SpecialFlags in DB if required but used only at server
297 QUEST_SPECIAL_FLAGS_REPEATABLE = 0x001, // Set by 1 in SpecialFlags from DB
298 QUEST_SPECIAL_FLAGS_AUTO_PUSH_TO_PARTY = 0x002, // Set by 2 in SpecialFlags from DB will make quest be pushed to entire party when one member accepts it
299 QUEST_SPECIAL_FLAGS_AUTO_ACCEPT = 0x004, // Set by 4 in SpecialFlags in DB if the quest is to be auto-accepted.
300 QUEST_SPECIAL_FLAGS_DF_QUEST = 0x008, // Set by 8 in SpecialFlags in DB if the quest is used by Dungeon Finder.
301 QUEST_SPECIAL_FLAGS_MONTHLY = 0x010, // Set by 16 in SpecialFlags in DB if the quest is reset at the begining of the month
302 // room for more custom flags
303
305
306 QUEST_SPECIAL_FLAGS_SEQUENCED_OBJECTIVES = 0x020, // Internal flag computed only
307};
@ QUEST_SPECIAL_FLAGS_SEQUENCED_OBJECTIVES
Definition: QuestDef.h:306
@ QUEST_SPECIAL_FLAGS_AUTO_ACCEPT
Definition: QuestDef.h:299
@ QUEST_SPECIAL_FLAGS_REPEATABLE
Definition: QuestDef.h:297
@ QUEST_SPECIAL_FLAGS_DB_ALLOWED
Definition: QuestDef.h:304
@ QUEST_SPECIAL_FLAGS_AUTO_PUSH_TO_PARTY
Definition: QuestDef.h:298
@ QUEST_SPECIAL_FLAGS_DF_QUEST
Definition: QuestDef.h:300
@ QUEST_SPECIAL_FLAGS_NONE
Definition: QuestDef.h:295
@ QUEST_SPECIAL_FLAGS_MONTHLY
Definition: QuestDef.h:301

◆ QuestStatus

Enumerator
QUEST_STATUS_NONE 
QUEST_STATUS_COMPLETE 
QUEST_STATUS_INCOMPLETE 
QUEST_STATUS_FAILED 
QUEST_STATUS_REWARDED 
MAX_QUEST_STATUS 

Definition at line 139 of file QuestDef.h.

140{
143 //QUEST_STATUS_UNAVAILABLE = 2,
145 //QUEST_STATUS_AVAILABLE = 4,
147 QUEST_STATUS_REWARDED = 6, // Not used in DB
149};
@ QUEST_STATUS_REWARDED
Definition: QuestDef.h:147
@ QUEST_STATUS_FAILED
Definition: QuestDef.h:146
@ QUEST_STATUS_INCOMPLETE
Definition: QuestDef.h:144
@ QUEST_STATUS_NONE
Definition: QuestDef.h:141
@ MAX_QUEST_STATUS
Definition: QuestDef.h:148
@ QUEST_STATUS_COMPLETE
Definition: QuestDef.h:142

◆ 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 309 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 120 of file QuestDef.h.

121{
137};
@ QUEST_TRSKILL_ALCHEMY
Definition: QuestDef.h:123
@ QUEST_TRSKILL_FISHING
Definition: QuestDef.h:134
@ QUEST_TRSKILL_BLACKSMITHING
Definition: QuestDef.h:124
@ QUEST_TRSKILL_TAILORING
Definition: QuestDef.h:132
@ QUEST_TRSKILL_MINING
Definition: QuestDef.h:133
@ QUEST_TRSKILL_HERBALISM
Definition: QuestDef.h:129
@ QUEST_TRSKILL_JEWELCRAFTING
Definition: QuestDef.h:136
@ QUEST_TRSKILL_SKINNING
Definition: QuestDef.h:135
@ QUEST_TRSKILL_COOKING
Definition: QuestDef.h:125
@ QUEST_TRSKILL_NONE
Definition: QuestDef.h:122
@ QUEST_TRSKILL_ENGINEERING
Definition: QuestDef.h:127
@ QUEST_TRSKILL_FIRSTAID
Definition: QuestDef.h:128
@ QUEST_TRSKILL_ENCHANTING
Definition: QuestDef.h:126
@ QUEST_TRSKILL_LEATHERWORKING
Definition: QuestDef.h:130
@ QUEST_TRSKILL_POISONS
Definition: QuestDef.h:131

Function Documentation

◆ DEFINE_ENUM_FLAG()

DEFINE_ENUM_FLAG ( QuestGiverStatus  )