aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorMatan Shukry <matanshukry@gmail.com>2021-01-17 18:08:22 +0200
committerjackpoz <giacomopoz@gmail.com>2021-01-17 17:45:00 +0100
commitcdfa85957e2726472f8afa70c66a7dfe57cf8ca6 (patch)
treec510d241d4a9a80176b9af315b738e6a4b931b67 /src
parentee330be5c8653d8d7422336cfb313e16a23f96f9 (diff)
Core/logs: added xp info on login & logout (#25867)
* Core/logs: added xp info on login & logout * - Moved getters to header - Changed %s to %u (cherry picked from commit bb24c6a11b2410f6dd4ef34f2b7fb87e4b01ba37) # Conflicts: # src/server/game/Entities/Player/Player.h # src/server/game/Handlers/CharacterHandler.cpp # src/server/game/Server/WorldSession.cpp
Diffstat (limited to 'src')
-rw-r--r--src/server/game/Entities/Player/Player.h1
-rw-r--r--src/server/game/Handlers/CharacterHandler.cpp5
-rw-r--r--src/server/game/Server/WorldSession.cpp5
3 files changed, 7 insertions, 4 deletions
diff --git a/src/server/game/Entities/Player/Player.h b/src/server/game/Entities/Player/Player.h
index 6d0ccc7bc37..1c9dd9e4a0f 100644
--- a/src/server/game/Entities/Player/Player.h
+++ b/src/server/game/Entities/Player/Player.h
@@ -966,6 +966,7 @@ class TC_GAME_API Player : public Unit, public GridObject<Player>
void SetPvPDeath(bool on) { if (on) m_ExtraFlags |= PLAYER_EXTRA_PVP_DEATH; else m_ExtraFlags &= ~PLAYER_EXTRA_PVP_DEATH; }
uint32 GetXP() const { return GetUInt32Value(PLAYER_XP); }
+ uint32 GetXPForNextLevel() const { return GetUInt32Value(PLAYER_NEXT_LEVEL_XP); }
void SetXP(uint32 xp) { SetUInt32Value(PLAYER_XP, xp); }
void GiveXP(uint32 xp, Unit* victim, float group_rate = 1.0f);
void GiveLevel(uint8 level);
diff --git a/src/server/game/Handlers/CharacterHandler.cpp b/src/server/game/Handlers/CharacterHandler.cpp
index 4810a24ce29..2253540eb16 100644
--- a/src/server/game/Handlers/CharacterHandler.cpp
+++ b/src/server/game/Handlers/CharacterHandler.cpp
@@ -992,8 +992,9 @@ void WorldSession::HandlePlayerLogin(LoginQueryHolder const& holder)
SendNotification(LANG_GM_ON);
std::string IP_str = GetRemoteAddress();
- TC_LOG_INFO("entities.player.character", "Account: %d (IP: %s) Login Character:[%s] %s Level: %d",
- GetAccountId(), IP_str.c_str(), pCurrChar->GetName().c_str(), pCurrChar->GetGUID().ToString().c_str(), pCurrChar->GetLevel());
+ TC_LOG_INFO("entities.player.character", "Account: %d (IP: %s) Login Character:[%s] %s Level: %d, XP: %u/%u (%u left)",
+ GetAccountId(), IP_str.c_str(), pCurrChar->GetName().c_str(), pCurrChar->GetGUID().ToString().c_str(), pCurrChar->GetLevel(),
+ _player->GetXP(), _player->GetXPForNextLevel(), _player->GetXPForNextLevel() - _player->GetXP());
if (!pCurrChar->IsStandState() && !pCurrChar->HasUnitState(UNIT_STATE_STUNNED))
pCurrChar->SetStandState(UNIT_STAND_STATE_STAND);
diff --git a/src/server/game/Server/WorldSession.cpp b/src/server/game/Server/WorldSession.cpp
index b4b22776e8f..36dfae06034 100644
--- a/src/server/game/Server/WorldSession.cpp
+++ b/src/server/game/Server/WorldSession.cpp
@@ -588,8 +588,9 @@ void WorldSession::LogoutPlayer(bool save)
// e.g if he got disconnected during a transfer to another map
// calls to GetMap in this case may cause crashes
_player->CleanupsBeforeDelete();
- TC_LOG_INFO("entities.player.character", "Account: %d (IP: %s) Logout Character:[%s] %s Level: %d",
- GetAccountId(), GetRemoteAddress().c_str(), _player->GetName().c_str(), _player->GetGUID().ToString().c_str(), _player->GetLevel());
+ TC_LOG_INFO("entities.player.character", "Account: %d (IP: %s) Logout Character:[%s] %s Level: %d, XP: %u/%u (%u left)",
+ GetAccountId(), GetRemoteAddress().c_str(), _player->GetName().c_str(), _player->GetGUID().ToString().c_str(), _player->GetLevel(),
+ _player->GetXP(), _player->GetXPForNextLevel(), _player->GetXPForNextLevel() - _player->GetXP());
if (Map* _map = _player->FindMap())
_map->RemovePlayerFromMap(_player, true);