aboutsummaryrefslogtreecommitdiff
path: root/src/server/game/DungeonFinding/LFGScripts.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/server/game/DungeonFinding/LFGScripts.cpp')
-rw-r--r--src/server/game/DungeonFinding/LFGScripts.cpp11
1 files changed, 9 insertions, 2 deletions
diff --git a/src/server/game/DungeonFinding/LFGScripts.cpp b/src/server/game/DungeonFinding/LFGScripts.cpp
index bedf2e7c43e..49a14ff8896 100644
--- a/src/server/game/DungeonFinding/LFGScripts.cpp
+++ b/src/server/game/DungeonFinding/LFGScripts.cpp
@@ -141,9 +141,9 @@ void LFGScripts::OnInviteMember(Group* group, uint64 guid)
sLFGMgr->Leave(NULL, group);
}
-void LFGScripts::OnLevelChanged(Player* /*player*/, uint8 /*newLevel*/)
+void LFGScripts::OnLevelChanged(Player* player, uint8 /*newLevel*/)
{
- // TODO - Invalidate LockStatus from cache
+ sLFGMgr->InitializeLockedDungeons(player);
}
void LFGScripts::OnLogout(Player* player)
@@ -163,3 +163,10 @@ void LFGScripts::OnLogin(Player* player)
sLFGMgr->InitializeLockedDungeons(player);
// TODO - Restore LfgPlayerData and send proper status to player if it was in a group
}
+
+void LFGScripts::OnBindToInstance(Player* player, Difficulty difficulty, uint32 mapId, bool permanent)
+{
+ MapEntry const* mapEntry = sMapStore.LookupEntry(mapId);
+ if (mapEntry->IsDungeon() && difficulty > DUNGEON_DIFFICULTY_NORMAL)
+ sLFGMgr->InitializeLockedDungeons(player);
+} \ No newline at end of file