Core/Players: no longer allow Goblins and Worgen to leave their starting zones early and added their according error messages when trying to do so
This commit is contained in:
1 parent
597b4bb62f
commit
c72018b1a8
2 files changed
+24
-3
No files matched your search
@@ -1525,10 +1525,23 @@ bool Player::TeleportTo(uint32 mapid, float x, float y, float z, float orientati
|
||||
}
|
||||
else
|
||||
{
|
||||
if (getClass() == CLASS_DEATH_KNIGHT && GetMapId() == 609 && !IsGameMaster() && !HasSpell(50977))
|
||||
if (!IsGameMaster())
|
||||
{
|
||||
SendTransferAborted(mapid, TRANSFER_ABORT_UNIQUE_MESSAGE, 1);
|
||||
return false;
|
||||
if (getClass() == CLASS_DEATH_KNIGHT && GetMapId() == 609 && !HasSpell(50977))
|
||||
{
|
||||
SendTransferAborted(mapid, TRANSFER_ABORT_UNIQUE_MESSAGE, AsUnderlyingType(TransferAbortedUniqueMessageArgs::StillWithinTheLichKingsGrasp));
|
||||
return false;
|
||||
}
|
||||
else if (getRace() == RACE_GOBLIN && GetMapId() == 648 && GetQuestStatus(25265) != QUEST_STATUS_REWARDED)
|
||||
{
|
||||
SendTransferAborted(mapid, TRANSFER_ABORT_UNIQUE_MESSAGE, AsUnderlyingType(TransferAbortedUniqueMessageArgs::DestinyOfTheBilgewaterCartelStillUndecided));
|
||||
return false;
|
||||
}
|
||||
else if (getRace() == RACE_WORGEN && GetMapId() == 654 && GetQuestStatus(26706) != QUEST_STATUS_REWARDED)
|
||||
{
|
||||
SendTransferAborted(mapid, TRANSFER_ABORT_UNIQUE_MESSAGE, AsUnderlyingType(TransferAbortedUniqueMessageArgs::FateOfGilneasHasNotBeenDecidedYet));
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
// far teleport to another map
|
||||
|
||||
@@ -675,6 +675,14 @@ enum TransferAbortReason
|
||||
TRANSFER_ABORT_ALREADY_COMPLETED_ENCOUNTER = 0x13 // 4.2.2
|
||||
};
|
||||
|
||||
enum class TransferAbortedUniqueMessageArgs : uint8
|
||||
{
|
||||
None = 0,
|
||||
StillWithinTheLichKingsGrasp = 1,
|
||||
DestinyOfTheBilgewaterCartelStillUndecided = 2,
|
||||
FateOfGilneasHasNotBeenDecidedYet = 3
|
||||
};
|
||||
|
||||
enum InstanceResetWarningType
|
||||
{
|
||||
RAID_INSTANCE_WARNING_HOURS = 1, // WARNING! %s is scheduled to reset in %d hour(s).
|
||||
|
||||
Reference in new issue
Block a user