diff options
Diffstat (limited to 'src/server/game/Entities')
| -rw-r--r-- | src/server/game/Entities/Player/Player.cpp | 25 | ||||
| -rw-r--r-- | src/server/game/Entities/Player/Player.h | 1 |
2 files changed, 14 insertions, 12 deletions
diff --git a/src/server/game/Entities/Player/Player.cpp b/src/server/game/Entities/Player/Player.cpp index f36f3162399..4165728ae7d 100644 --- a/src/server/game/Entities/Player/Player.cpp +++ b/src/server/game/Entities/Player/Player.cpp @@ -21689,14 +21689,9 @@ void Player::UpdateHomebindTime(uint32 time) // GMs never get homebind timer online if (m_InstanceValid || IsGameMaster()) { - if (m_HomebindTimer) // instance valid, but timer not reset - { - // hide reminder - WorldPacket data(SMSG_RAID_GROUP_ONLY, 4+4); - data << uint32(0); - data << uint32(0); - GetSession()->SendPacket(&data); - } + if (m_HomebindTimer) // instance valid, but timer not reset + SendRaidGroupOnlyMessage(RAID_GROUP_ERR_NONE, 0); + // instance is valid, reset homebind timer m_HomebindTimer = 0; } @@ -21715,10 +21710,7 @@ void Player::UpdateHomebindTime(uint32 time) // instance is invalid, start homebind timer m_HomebindTimer = 60000; // send message to player - WorldPacket data(SMSG_RAID_GROUP_ONLY, 4+4); - data << uint32(m_HomebindTimer); - data << uint32(1); - GetSession()->SendPacket(&data); + SendRaidGroupOnlyMessage(RAID_GROUP_ERR_REQUIREMENTS_UNMATCH, m_HomebindTimer); TC_LOG_DEBUG("maps", "PLAYER: Player '%s' (%s) will be teleported to homebind in 60 seconds", GetName().c_str(), GetGUID().ToString().c_str()); } } @@ -26766,3 +26758,12 @@ void Player::SendSpellCategoryCooldowns() SendDirectMessage(cooldowns.Write()); } + +void Player::SendRaidGroupOnlyMessage(RaidGroupReason reason, int32 delay) +{ + WorldPackets::Instance::RaidGroupOnly raidGroupOnly; + raidGroupOnly.Delay = delay; + raidGroupOnly.Reason = reason; + + GetSession()->SendPacket(raidGroupOnly.Write()); +} diff --git a/src/server/game/Entities/Player/Player.h b/src/server/game/Entities/Player/Player.h index 99f6154bede..50c2852ba6e 100644 --- a/src/server/game/Entities/Player/Player.h +++ b/src/server/game/Entities/Player/Player.h @@ -2051,6 +2051,7 @@ class Player : public Unit, public GridObject<Player> static Difficulty CheckLoadedDungeonDifficultyID(Difficulty difficulty); static Difficulty CheckLoadedRaidDifficultyID(Difficulty difficulty); static Difficulty CheckLoadedLegacyRaidDifficultyID(Difficulty difficulty); + void SendRaidGroupOnlyMessage(RaidGroupReason reason, int32 delay); bool UpdateSkill(uint32 skill_id, uint32 step); bool UpdateSkillPro(uint16 skillId, int32 chance, uint32 step); |
