diff --git a/src/game/Mail.cpp b/src/game/Mail.cpp index 98b85dbbd..f3077c168 100644 --- a/src/game/Mail.cpp +++ b/src/game/Mail.cpp @@ -28,6 +28,7 @@ #include "Unit.h" #include "Language.h" #include "DBCStores.h" +#include "BattleGroundMgr.h" enum MailShowFlags { @@ -823,6 +824,15 @@ void WorldSession::SendMailTo(Player* receiver, uint8 messageType, uint8 station expire_delay = HOUR; else expire_delay = (COD > 0) ? 3 * DAY : 30 * DAY; + if (messageType == MAIL_CREATURE) + { + // mail from battlemaster (rewardmarks) should last only one day + BattleGroundTypeId bgTypeId = sBattleGroundMgr.GetBattleMasterBG(sender_guidlow_or_entry); + if (bgTypeId != BATTLEGROUND_TYPE_NONE) + expire_delay = DAY; + } + + time_t expire_time = deliver_time + expire_delay; diff --git a/src/shared/revision_nr.h b/src/shared/revision_nr.h index 702f6cf17..fefeeb2af 100644 --- a/src/shared/revision_nr.h +++ b/src/shared/revision_nr.h @@ -1,4 +1,4 @@ #ifndef __REVISION_NR_H__ #define __REVISION_NR_H__ - #define REVISION_NR "8612" + #define REVISION_NR "8613" #endif // __REVISION_NR_H__