54 {
"objective", objectiveCommandTable },
60 {
"quest", questCommandTable }
84 auto itr = std::find_if(std::begin(itc), std::end(itc), [quest](ItemTemplateContainer::value_type
const& value)
86 return value.second.GetStartQuest() == quest->
GetQuestId();
89 if (itr != std::end(itc))
@ CHAR_UPD_QUEST_TRACK_GM_COMPLETE
DB2Storage< FactionEntry > sFactionStore("Faction.db2", &FactionLoadInfo::Instance)
DatabaseWorkerPool< CharacterDatabaseConnection > CharacterDatabase
Accessor to the character database.
@ LANG_COMMAND_QUEST_STARTFROMITEM
@ LANG_COMMAND_QUEST_REMOVED
@ LANG_COMMAND_QUEST_OBJECTIVE_NOTFOUND
@ LANG_COMMAND_QUEST_NOTFOUND
std::unordered_map< uint32, ItemTemplate > ItemTemplateContainer
std::vector< ItemPosCount > ItemPosCountVec
@ QUEST_OBJECTIVE_MONSTER
@ QUEST_OBJECTIVE_PLAYERKILLS
@ QUEST_OBJECTIVE_MAX_REPUTATION
@ QUEST_OBJECTIVE_GAMEOBJECT
@ QUEST_OBJECTIVE_MIN_REPUTATION
#define MAX_QUEST_LOG_SIZE
Role Based Access Control related classes definition.
Player * getSelectedPlayerOrSelf()
Player * getSelectedPlayer()
void PSendSysMessage(const char *fmt, Args &&... args)
void SetSentErrorMessage(bool val)
virtual void SendSysMessage(std::string_view str, bool escapeCharacters=false)
LowType GetCounter() const
static ObjectGuid const Empty
static ObjectGuid GetGUID(Object const *o)
Item * StoreNewItem(ItemPosCountVec const &pos, uint32 itemId, bool update, ItemRandomBonusListId randomBonusListId=0, GuidSet const &allowedLooters=GuidSet(), ItemContext context=ItemContext::NONE, std::vector< int32 > const *bonusListIDs=nullptr, bool addToCollection=true)
bool HasPvPForcingQuest() const
bool ModifyMoney(int64 amount, bool sendError=true)
void DespawnPersonalSummonsForQuest(uint32 questId)
void UpdatePvPState(bool onlyFFA=false)
bool CanAddQuest(Quest const *quest, bool msg) const
uint32 GetItemCount(uint32 item, bool inBankAlso=false, Item *skipItem=nullptr) const
void KilledMonster(CreatureTemplate const *cInfo, ObjectGuid guid)
void CompleteQuest(uint32 quest_id)
void KilledPlayerCredit(ObjectGuid victimGuid)
uint32 GetQuestSlotQuestId(uint16 slot) const
bool IsActiveQuest(uint32 quest_id) const
void SetQuestSlot(uint16 slot, uint32 quest_id)
void AddQuestAndCheckCompletion(Quest const *quest, Object *questGiver)
bool TakeQuestSourceItem(uint32 questId, bool msg)
void RemoveActiveQuest(uint32 questId, bool update=true)
QuestStatus GetQuestStatus(uint32 quest_id) const
void KillCreditGO(uint32 entry, ObjectGuid guid=ObjectGuid::Empty)
void RemoveRewardedQuest(uint32 questId, bool update=true)
InventoryResult CanStoreNewItem(uint8 bag, uint8 slot, ItemPosCountVec &dest, uint32 item, uint32 count, uint32 *no_space_count=nullptr) const
ReputationMgr & GetReputationMgr()
void RewardQuest(Quest const *quest, LootItemType rewardType, uint32 rewardId, Object *questGiver, bool announce=true)
void SendNewItem(Item *item, uint32 quantity, bool received, bool created, bool broadcast=false, uint32 dungeonEncounterId=0)
void setUInt32(const uint8 index, const uint32 value)
void setUInt64(const uint8 index, const uint64 value)
QuestObjectives Objectives
uint32 GetQuestId() const
bool HasFlag(QuestFlags flag) const
int32 GetReputation(uint32 faction_id) const
bool SetReputation(FactionEntry const *factionEntry, int32 standing)
static bool HandleQuestReward(ChatHandler *handler, Quest const *quest)
static bool HandleQuestRemove(ChatHandler *handler, Quest const *quest)
static void CompleteObjective(Player *player, QuestObjective const &obj)
static bool HandleQuestObjectiveComplete(ChatHandler *handler, uint32 objectiveId)
static bool HandleQuestAdd(ChatHandler *handler, Quest const *quest)
static bool HandleQuestComplete(ChatHandler *handler, Quest const *quest)
ChatCommandTable GetCommands() const override
void AddSC_quest_commandscript()
@ CONFIG_QUEST_ENABLE_QUEST_TRACKER
bool IsDisabledFor(DisableType type, uint32 entry, WorldObject const *ref, uint8 flags)
std::vector< ChatCommandBuilder > ChatCommandTable
@ RBAC_PERM_COMMAND_QUEST_REMOVE
@ RBAC_PERM_COMMAND_QUEST_OBJECTIVE_COMPLETE
@ RBAC_PERM_COMMAND_QUEST_REWARD
@ RBAC_PERM_COMMAND_QUEST_COMPLETE
@ RBAC_PERM_COMMAND_QUEST_ADD