*Do not allow dk to teleport out of start map without completing required quests.

*Remove some useless quest status enum.

--HG--
branch : trunk
This commit is contained in:
megamage
2009-08-05 19:43:55 -05:00
parent f03cd942cd
commit 9a8c60dbc7
2 changed files with 8 additions and 4 deletions
+6 -2
View File
@@ -1737,6 +1737,10 @@ bool Player::TeleportTo(uint32 mapid, float x, float y, float z, float orientati
} }
else else
{ {
if(getClass() == CLASS_DEATH_KNIGHT && GetMapId() == 609 && !isGameMaster()
&& !IsActiveQuest(13188) && !IsActiveQuest(13189))
return false;
// far teleport to another map // far teleport to another map
Map* oldmap = IsInWorld() ? GetMap() : NULL; Map* oldmap = IsInWorld() ? GetMap() : NULL;
// check if we can enter before stopping combat / removing pet / totems / interrupting spells // check if we can enter before stopping combat / removing pet / totems / interrupting spells
@@ -12468,8 +12472,8 @@ void Player::PrepareQuestMenu( uint64 guid )
qm.AddMenuItem(quest_id, DIALOG_STATUS_UNK2); qm.AddMenuItem(quest_id, DIALOG_STATUS_UNK2);
else if ( status == QUEST_STATUS_INCOMPLETE ) else if ( status == QUEST_STATUS_INCOMPLETE )
qm.AddMenuItem(quest_id, DIALOG_STATUS_UNK2); qm.AddMenuItem(quest_id, DIALOG_STATUS_UNK2);
else if (status == QUEST_STATUS_AVAILABLE ) //else if (status == QUEST_STATUS_AVAILABLE )
qm.AddMenuItem(quest_id, DIALOG_STATUS_CHAT); // qm.AddMenuItem(quest_id, DIALOG_STATUS_CHAT);
} }
for(QuestRelations::const_iterator i = pObjectQR->lower_bound(pObject->GetEntry()); i != pObjectQR->upper_bound(pObject->GetEntry()); ++i) for(QuestRelations::const_iterator i = pObjectQR->lower_bound(pObject->GetEntry()); i != pObjectQR->upper_bound(pObject->GetEntry()); ++i)
+2 -2
View File
@@ -96,9 +96,9 @@ enum QuestStatus
{ {
QUEST_STATUS_NONE = 0, QUEST_STATUS_NONE = 0,
QUEST_STATUS_COMPLETE = 1, QUEST_STATUS_COMPLETE = 1,
QUEST_STATUS_UNAVAILABLE = 2, //QUEST_STATUS_UNAVAILABLE = 2,
QUEST_STATUS_INCOMPLETE = 3, QUEST_STATUS_INCOMPLETE = 3,
QUEST_STATUS_AVAILABLE = 4, //QUEST_STATUS_AVAILABLE = 4,
MAX_QUEST_STATUS MAX_QUEST_STATUS
}; };