Поясняю для чего, пример - на офф сервере заканчивается лунный фестиваль, у предков есть госсипы с подсказками - где искать других, когда находиш и сдаеш квест - строчка подсказки, указывающая на конкретного из меню исчезает. Посмотрел
тут и перенес к нам, проверил, работает..))
Автор коммита - Brian
Код:
diff --git a/src/game/ObjectMgr.cpp b/src/game/ObjectMgr.cpp
index b1540da..0ea938d 100644
--- a/src/game/ObjectMgr.cpp
+++ b/src/game/ObjectMgr.cpp
@@ -7409,6 +7409,11 @@ bool PlayerCondition::Meets(Player const * player) const
QuestStatus status = player->GetQuestStatus(value1);
return (status == QUEST_STATUS_INCOMPLETE);
}
+ case CONDITION_QUEST_NONE:
+ {
+ QuestStatus status = player->GetQuestStatus(value1);
+ return (status == QUEST_STATUS_NONE);
+ }
case CONDITION_AD_COMMISSION_AURA:
{
Unit::AuraMap const& auras = player->GetAuras();
diff --git a/src/game/ObjectMgr.h b/src/game/ObjectMgr.h
index 4442f56..dd85ab7 100644
--- a/src/game/ObjectMgr.h
+++ b/src/game/ObjectMgr.h
@@ -313,9 +313,10 @@ enum ConditionType
CONDITION_AREA_FLAG = 13, // area_flag area_flag_not
CONDITION_RACE_CLASS = 14, // race_mask class_mask
CONDITION_LEVEL = 15, // player_level 0, 1 or 2 (0: equal to, 1: equal or higher than, 2: equal or less than)
+ CONDITION_QUEST_NONE = 16, // quest_id 0
};
-#define MAX_CONDITION 16 // maximum value in ConditionType enum
+#define MAX_CONDITION 17 // maximum value in ConditionType enum
struct PlayerCondition
{
Как бы Нофантази показать...)