aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorVincent-Michael <Vincent_Michael@gmx.de>2014-06-22 00:58:08 +0200
committerVincent-Michael <Vincent_Michael@gmx.de>2014-06-22 00:58:08 +0200
commite5606c6f6f49a7adca719d6f70475743fce76919 (patch)
tree5c563e3dd1fd390fe46ede72cc1596b6a9f4c623 /src
parentec49d510fc1ba0eb902ab38ba76388ffc99b935c (diff)
parentac343c72cc954b7af78ab131811fc8e73907efef (diff)
Merge branch 'master' of github.com:TrinityCore/TrinityCore into 4.3.4
Conflicts: src/server/game/Handlers/CharacterHandler.cpp
Diffstat (limited to 'src')
-rw-r--r--src/server/game/DungeonFinding/LFGScripts.cpp2
-rw-r--r--src/server/game/DungeonFinding/LFGScripts.h2
-rw-r--r--src/server/game/Handlers/CharacterHandler.cpp6
-rw-r--r--src/server/game/Scripting/ScriptMgr.cpp4
-rw-r--r--src/server/game/Scripting/ScriptMgr.h4
5 files changed, 10 insertions, 8 deletions
diff --git a/src/server/game/DungeonFinding/LFGScripts.cpp b/src/server/game/DungeonFinding/LFGScripts.cpp
index 49264dff039..6a38afb398d 100644
--- a/src/server/game/DungeonFinding/LFGScripts.cpp
+++ b/src/server/game/DungeonFinding/LFGScripts.cpp
@@ -46,7 +46,7 @@ void LFGPlayerScript::OnLogout(Player* player)
}
}
-void LFGPlayerScript::OnLogin(Player* player)
+void LFGPlayerScript::OnLogin(Player* player, bool /*loginFirst*/)
{
if (!sLFGMgr->isOptionEnabled(LFG_OPTION_ENABLE_DUNGEON_FINDER | LFG_OPTION_ENABLE_RAID_BROWSER))
return;
diff --git a/src/server/game/DungeonFinding/LFGScripts.h b/src/server/game/DungeonFinding/LFGScripts.h
index 87881ed7524..1ed37bd9d05 100644
--- a/src/server/game/DungeonFinding/LFGScripts.h
+++ b/src/server/game/DungeonFinding/LFGScripts.h
@@ -36,7 +36,7 @@ class LFGPlayerScript : public PlayerScript
// Player Hooks
void OnLogout(Player* player);
- void OnLogin(Player* player);
+ void OnLogin(Player* player, bool loginFirst);
void OnMapChanged(Player* player);
};
diff --git a/src/server/game/Handlers/CharacterHandler.cpp b/src/server/game/Handlers/CharacterHandler.cpp
index 5345113d106..86f978f1848 100644
--- a/src/server/game/Handlers/CharacterHandler.cpp
+++ b/src/server/game/Handlers/CharacterHandler.cpp
@@ -1092,7 +1092,8 @@ void WorldSession::HandlePlayerLogin(LoginQueryHolder* holder)
SendNotification(LANG_RESET_TALENTS);
}
- if (pCurrChar->HasAtLoginFlag(AT_LOGIN_FIRST))
+ bool firstLogin = pCurrChar->HasAtLoginFlag(AT_LOGIN_FIRST);
+ if (firstLogin)
{
pCurrChar->RemoveAtLoginFlag(AT_LOGIN_FIRST);
@@ -1140,7 +1141,8 @@ void WorldSession::HandlePlayerLogin(LoginQueryHolder* holder)
// Handle Login-Achievements (should be handled after loading)
_player->UpdateAchievementCriteria(ACHIEVEMENT_CRITERIA_TYPE_ON_LOGIN, 1);
- sScriptMgr->OnPlayerLogin(pCurrChar);
+ sScriptMgr->OnPlayerLogin(pCurrChar, firstLogin);
+
delete holder;
}
diff --git a/src/server/game/Scripting/ScriptMgr.cpp b/src/server/game/Scripting/ScriptMgr.cpp
index d99975e72d8..82189485ee6 100644
--- a/src/server/game/Scripting/ScriptMgr.cpp
+++ b/src/server/game/Scripting/ScriptMgr.cpp
@@ -1242,9 +1242,9 @@ void ScriptMgr::OnPlayerSpellCast(Player* player, Spell* spell, bool skipCheck)
FOREACH_SCRIPT(PlayerScript)->OnSpellCast(player, spell, skipCheck);
}
-void ScriptMgr::OnPlayerLogin(Player* player)
+void ScriptMgr::OnPlayerLogin(Player* player, bool firstLogin)
{
- FOREACH_SCRIPT(PlayerScript)->OnLogin(player);
+ FOREACH_SCRIPT(PlayerScript)->OnLogin(player, firstLogin);
}
void ScriptMgr::OnPlayerLogout(Player* player)
diff --git a/src/server/game/Scripting/ScriptMgr.h b/src/server/game/Scripting/ScriptMgr.h
index a8c7b899916..a0845b4c3d1 100644
--- a/src/server/game/Scripting/ScriptMgr.h
+++ b/src/server/game/Scripting/ScriptMgr.h
@@ -743,7 +743,7 @@ class PlayerScript : public UnitScript
virtual void OnSpellCast(Player* /*player*/, Spell* /*spell*/, bool /*skipCheck*/) { }
// Called when a player logs in.
- virtual void OnLogin(Player* /*player*/) { }
+ virtual void OnLogin(Player* /*player*/, bool /*firstLogin*/) { }
// Called when a player logs out.
virtual void OnLogout(Player* /*player*/) { }
@@ -1033,7 +1033,7 @@ class ScriptMgr
void OnPlayerEmote(Player* player, uint32 emote);
void OnPlayerTextEmote(Player* player, uint32 textEmote, uint32 emoteNum, uint64 guid);
void OnPlayerSpellCast(Player* player, Spell* spell, bool skipCheck);
- void OnPlayerLogin(Player* player);
+ void OnPlayerLogin(Player* player, bool firstLogin);
void OnPlayerLogout(Player* player);
void OnPlayerCreate(Player* player);
void OnPlayerDelete(uint64 guid);