diff options
author | Brian <runningnak3d@gmail.com> | 2010-07-24 16:30:48 -0600 |
---|---|---|
committer | Brian <runningnak3d@gmail.com> | 2010-07-24 16:30:48 -0600 |
commit | 356cd25e67746a73be39a836c2b550c7395a9f5d (patch) | |
tree | ae9729d711f892c2cef84fe762db365997a4f725 | |
parent | 0df91a8f9e023d27b4890075ac213702bccbfa0f (diff) |
* Added new specialflag in quest_template for auto-accept quests.
* SpecialFlags|4
* After much research it was determined that blizz does this serverside.
--HG--
branch : trunk
-rw-r--r-- | src/server/game/Entities/Player/Player.cpp | 2 | ||||
-rw-r--r-- | src/server/game/Quests/QuestDef.h | 6 | ||||
-rw-r--r-- | src/server/game/Scripting/ScriptMgr.h | 2 | ||||
-rw-r--r-- | src/server/game/Server/Protocol/Handlers/QuestHandler.cpp | 2 |
4 files changed, 7 insertions, 5 deletions
diff --git a/src/server/game/Entities/Player/Player.cpp b/src/server/game/Entities/Player/Player.cpp index 0dca7362322..8e810efd975 100644 --- a/src/server/game/Entities/Player/Player.cpp +++ b/src/server/game/Entities/Player/Player.cpp @@ -13904,7 +13904,7 @@ void Player::SendPreparedQuest(uint64 guid) return; } - if (pQuest->HasFlag(QUEST_FLAGS_AUTO_ACCEPT) && CanAddQuest(pQuest, true)) + if (pQuest->HasFlag(QUEST_TRINITY_FLAGS_AUTO_ACCEPT) && CanAddQuest(pQuest, true)) { AddQuest(pQuest, pObject); if (CanCompleteQuest(quest_id)) diff --git a/src/server/game/Quests/QuestDef.h b/src/server/game/Quests/QuestDef.h index 64c9b47627d..bdcb09bdf4b 100644 --- a/src/server/game/Quests/QuestDef.h +++ b/src/server/game/Quests/QuestDef.h @@ -141,11 +141,13 @@ enum __QuestFlags QUEST_FLAGS_AUTOCOMPLETE = 0x00010000, // auto complete QUEST_FLAGS_UNK5 = 0x00020000, // has something to do with ReqItemId and SrcItemId QUEST_FLAGS_UNK6 = 0x00040000, // use Objective text as Complete text - QUEST_FLAGS_AUTO_ACCEPT = 0x00080000, // quests in starting areas + QUEST_FLAGS_UNK7 = 0x00080000, // quests in starting areas // Trinity flags for set SpecialFlags in DB if required but used only at server QUEST_TRINITY_FLAGS_REPEATABLE = 0x00100000, // Set by 1 in SpecialFlags from DB QUEST_TRINITY_FLAGS_EXPLORATION_OR_EVENT = 0x00200000, // Set by 2 in SpecialFlags from DB (if reequired area explore, spell SPELL_EFFECT_QUEST_COMPLETE casting, table `*_script` command SCRIPT_COMMAND_QUEST_EXPLORED use, set from script) + QUEST_TRINITY_FLAGS_AUTO_ACCEPT = 0x00400000, // Set by 4 in SpecialFlags in DB if the quest is to be auto-accepted. + QUEST_TRINITY_FLAGS_DB_ALLOWED = 0xFFFFF | QUEST_TRINITY_FLAGS_REPEATABLE | QUEST_TRINITY_FLAGS_EXPLORATION_OR_EVENT, // Trinity flags for internal use only @@ -244,7 +246,7 @@ class Quest bool IsDaily() const { return QuestFlags & QUEST_FLAGS_DAILY; } bool IsWeekly() const { return QuestFlags & QUEST_FLAGS_WEEKLY; } bool IsDailyOrWeekly() const { return QuestFlags & (QUEST_FLAGS_DAILY | QUEST_FLAGS_WEEKLY); } - bool IsAutoAccept() const { return QuestFlags & QUEST_FLAGS_AUTO_ACCEPT; } + bool IsAutoAccept() const { return QuestFlags & QUEST_TRINITY_FLAGS_AUTO_ACCEPT; } bool IsRaidQuest() const { return Type == QUEST_TYPE_RAID || Type == QUEST_TYPE_RAID_10 || Type == QUEST_TYPE_RAID_25; } bool IsAllowedInRaid() const; diff --git a/src/server/game/Scripting/ScriptMgr.h b/src/server/game/Scripting/ScriptMgr.h index 58f52e95ac9..1a1fa3786ab 100644 --- a/src/server/game/Scripting/ScriptMgr.h +++ b/src/server/game/Scripting/ScriptMgr.h @@ -12,7 +12,7 @@ #include "CompilerDefs.h" #include "DBCStructure.h" #include "ConfigEnv.h" -#include "SpellScript.h" + class Player; class Creature; diff --git a/src/server/game/Server/Protocol/Handlers/QuestHandler.cpp b/src/server/game/Server/Protocol/Handlers/QuestHandler.cpp index d513dc4b84c..35cc582ccc2 100644 --- a/src/server/game/Server/Protocol/Handlers/QuestHandler.cpp +++ b/src/server/game/Server/Protocol/Handlers/QuestHandler.cpp @@ -246,7 +246,7 @@ void WorldSession::HandleQuestgiverQueryQuestOpcode(WorldPacket & recv_data) Quest const* pQuest = objmgr.GetQuestTemplate(quest); if (pQuest) { - if (pQuest->HasFlag(QUEST_FLAGS_AUTO_ACCEPT) && _player->CanAddQuest(pQuest, true)) + if (pQuest->HasFlag(QUEST_TRINITY_FLAGS_AUTO_ACCEPT) && _player->CanAddQuest(pQuest, true)) { _player->AddQuest(pQuest, pObject); if (_player->CanCompleteQuest(quest)) |