aboutsummaryrefslogtreecommitdiff
path: root/src/game/QuestDef.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/game/QuestDef.h')
-rw-r--r--src/game/QuestDef.h29
1 files changed, 0 insertions, 29 deletions
diff --git a/src/game/QuestDef.h b/src/game/QuestDef.h
index 264acff95b8..f95e984e204 100644
--- a/src/game/QuestDef.h
+++ b/src/game/QuestDef.h
@@ -17,22 +17,15 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
-
#ifndef TRINITYCORE_QUEST_H
#define TRINITYCORE_QUEST_H
-
#include "Platform/Define.h"
#include "Database/DatabaseEnv.h"
-
#include <string>
#include <vector>
-
class Player;
-
class ObjectMgr;
-
#define MAX_QUEST_LOG_SIZE 25
-
#define QUEST_OBJECTIVES_COUNT 4
#define QUEST_SOURCE_ITEM_IDS_COUNT 4
#define QUEST_REWARD_CHOICES_COUNT 6
@@ -40,7 +33,6 @@ class ObjectMgr;
#define QUEST_DEPLINK_COUNT 10
#define QUEST_REPUTATIONS_COUNT 5
#define QUEST_EMOTE_COUNT 4
-
enum QuestFailedReasons
{
INVALIDREASON_DONT_HAVE_REQ = 0,
@@ -57,7 +49,6 @@ enum QuestFailedReasons
INVALIDREASON_QUEST_FAILED_CAIS = 27, // You cannot complete quests once you have reached tired time.
INVALIDREASON_DAILY_QUEST_COMPLETED_TODAY = 29 // You have completed that daily quest today.
};
-
enum QuestShareMessages
{
QUEST_PARTY_MSG_SHARING_QUEST = 0,
@@ -72,7 +63,6 @@ enum QuestShareMessages
QUEST_PARTY_MSG_SHARING_TIMER_EXPIRED = 9,
QUEST_PARTY_MSG_NOT_IN_PARTY = 10
};
-
enum __QuestTradeSkill
{
QUEST_TRSKILL_NONE = 0,
@@ -91,7 +81,6 @@ enum __QuestTradeSkill
QUEST_TRSKILL_SKINNING = 13,
QUEST_TRSKILL_JEWELCRAFTING = 14,
};
-
enum QuestStatus
{
QUEST_STATUS_NONE = 0,
@@ -102,7 +91,6 @@ enum QuestStatus
QUEST_STATUS_FAILED = 5,
MAX_QUEST_STATUS
};
-
enum __QuestGiverStatus
{
DIALOG_STATUS_NONE = 0,
@@ -117,7 +105,6 @@ enum __QuestGiverStatus
DIALOG_STATUS_REWARD2 = 9, // no yellow dot on minimap
DIALOG_STATUS_REWARD = 10 // yellow dot on minimap
};
-
enum __QuestFlags
{
// Flags used at server and sent to client
@@ -135,23 +122,19 @@ enum __QuestFlags
QUEST_FLAGS_TBC_RACES = 0x00000800, // Not used currently: Blood elf/Draenei starting zone quests
QUEST_FLAGS_DAILY = 0x00001000, // Used to know quest is Daily one
QUEST_FLAGS_WEEKLY = 0x00008000,
-
// Trinity flags for set SpecialFlags in DB if required but used only at server
QUEST_TRINITY_FLAGS_REPEATABLE = 0x010000, // Set by 1 in SpecialFlags from DB
QUEST_TRINITY_FLAGS_EXPLORATION_OR_EVENT = 0x020000, // 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 DLL)
QUEST_TRINITY_FLAGS_DB_ALLOWED = 0xFFFF | QUEST_TRINITY_FLAGS_REPEATABLE | QUEST_TRINITY_FLAGS_EXPLORATION_OR_EVENT,
-
// Trinity flags for internal use only
QUEST_TRINITY_FLAGS_DELIVER = 0x040000, // Internal flag computed only
QUEST_TRINITY_FLAGS_SPEAKTO = 0x080000, // Internal flag computed only
QUEST_TRINITY_FLAGS_KILL_OR_CAST = 0x100000, // Internal flag computed only
QUEST_TRINITY_FLAGS_TIMED = 0x200000, // Internal flag computed only
};
-
struct QuestLocale
{
QuestLocale() { ObjectiveText.resize(QUEST_OBJECTIVES_COUNT); }
-
std::vector<std::string> Title;
std::vector<std::string> Details;
std::vector<std::string> Objectives;
@@ -160,7 +143,6 @@ struct QuestLocale
std::vector<std::string> EndText;
std::vector< std::vector<std::string> > ObjectiveText;
};
-
// This Quest class provides a convenient way to access a few pretotaled (cached) quest details,
// all base quest information, and any utility functions such as generating the amount of
// xp to give
@@ -170,10 +152,8 @@ class Quest
public:
Quest(Field * questRecord);
uint32 XPValue( Player *pPlayer ) const;
-
bool HasFlag( uint32 flag ) const { return ( QuestFlags & flag ) != 0; }
void SetFlag( uint32 flag ) { QuestFlags |= flag; }
-
// table data accessors:
uint32 GetQuestId() const { return QuestId; }
uint32 GetQuestMethod() const { return QuestMethod; }
@@ -228,7 +208,6 @@ class Quest
bool IsAutoComplete() const { return QuestMethod ? false : true; }
uint32 GetFlags() const { return QuestFlags; }
bool IsDaily() const { return QuestFlags & (QUEST_FLAGS_DAILY | QUEST_FLAGS_WEEKLY); }
-
// multiple values
std::string ObjectiveText[QUEST_OBJECTIVES_COUNT];
uint32 ReqItemId[QUEST_OBJECTIVES_COUNT];
@@ -248,24 +227,20 @@ class Quest
uint32 DetailsEmoteDelay[QUEST_EMOTE_COUNT];
uint32 OfferRewardEmote[QUEST_EMOTE_COUNT];
uint32 OfferRewardEmoteDelay[QUEST_EMOTE_COUNT];
-
uint32 GetReqItemsCount() const { return m_reqitemscount; }
uint32 GetReqCreatureOrGOcount() const { return m_reqCreatureOrGOcount; }
uint32 GetRewChoiceItemsCount() const { return m_rewchoiceitemscount; }
uint32 GetRewItemsCount() const { return m_rewitemscount; }
-
typedef std::vector<int32> PrevQuests;
PrevQuests prevQuests;
typedef std::vector<uint32> PrevChainQuests;
PrevChainQuests prevChainQuests;
-
// cached data
private:
uint32 m_reqitemscount;
uint32 m_reqCreatureOrGOcount;
uint32 m_rewchoiceitemscount;
uint32 m_rewitemscount;
-
// table data
protected:
uint32 QuestId;
@@ -318,14 +293,12 @@ class Quest
uint32 QuestStartScript;
uint32 QuestCompleteScript;
};
-
enum QuestUpdateState
{
QUEST_UNCHANGED = 0,
QUEST_CHANGED = 1,
QUEST_NEW = 2
};
-
struct QuestStatusData
{
QuestStatusData()
@@ -335,13 +308,11 @@ struct QuestStatusData
memset(m_itemcount, 0, QUEST_OBJECTIVES_COUNT * sizeof(uint32));
memset(m_creatureOrGOcount, 0, QUEST_OBJECTIVES_COUNT * sizeof(uint32));
}
-
QuestStatus m_status;
bool m_rewarded;
bool m_explored;
uint32 m_timer;
QuestUpdateState uState;
-
uint32 m_itemcount[ QUEST_OBJECTIVES_COUNT ];
uint32 m_creatureOrGOcount[ QUEST_OBJECTIVES_COUNT ];
};