aboutsummaryrefslogtreecommitdiff
path: root/src/game/CharacterHandler.cpp
diff options
context:
space:
mode:
authorBrian <runningnak3d@gmail.com>2010-02-14 19:13:14 -0700
committerBrian <runningnak3d@gmail.com>2010-02-14 19:13:14 -0700
commit486c00891ba34884e5b2cdd8d44b4d8496f11283 (patch)
tree7df304b9020ed21b87bd66978d2dc6e6683edce7 /src/game/CharacterHandler.cpp
parent7799ade4da0da17034039439d692122e976c0138 (diff)
* Core switch to client 3.3.2 (11403)
* Credits (in no particular order) to: * n0n4m3, raczman, manuel, Spp, Malcrom, Teacher, QAston, Tartalo, * thenecromancer, Xanadu, Trazom, Zor, kiper * Additional credits to: * TOM_RUS and NoFantasy from MaNGOS * Thanks for testing Aokromes and XTElite1 * SoTA still needs some work, but is very playable (huge thanks to raczman and * kiper) * To upgrade, you need to apply all SQL from sql/updates/3.2.2a_old from the * last rev you are on * and then apply all SQL from sql/updates/3.3.2_old to char / realmd / world * DBs * Known problem with guild banks. --HG-- branch : trunk
Diffstat (limited to 'src/game/CharacterHandler.cpp')
-rw-r--r--src/game/CharacterHandler.cpp25
1 files changed, 13 insertions, 12 deletions
diff --git a/src/game/CharacterHandler.cpp b/src/game/CharacterHandler.cpp
index bc2b4d97a4e..17b23b61e64 100644
--- a/src/game/CharacterHandler.cpp
+++ b/src/game/CharacterHandler.cpp
@@ -456,6 +456,8 @@ void WorldSession::HandleCharCreateOpcode( WorldPacket & recv_data )
if ((have_same_race && skipCinematics == 1) || skipCinematics == 2)
pNewChar->setCinematic(1); // not show intro
+ pNewChar->SetAtLoginFlag(AT_LOGIN_FIRST); // First login
+
// Player created, save it now
pNewChar->SaveToDB();
charcount+=1;
@@ -659,22 +661,21 @@ void WorldSession::HandlePlayerLogin(LoginQueryHolder * holder)
if(guild)
{
data.Initialize(SMSG_GUILD_EVENT, (2+guild->GetMOTD().size()+1));
- data << (uint8)GE_MOTD;
- data << (uint8)1;
+ data << uint8(GE_MOTD);
+ data << uint8(1);
data << guild->GetMOTD();
SendPacket(&data);
DEBUG_LOG( "WORLD: Sent guild-motd (SMSG_GUILD_EVENT)" );
+ guild->DisplayGuildBankTabsInfo(this);
+
data.Initialize(SMSG_GUILD_EVENT, (5+10)); // we guess size
- data<<(uint8)GE_SIGNED_ON;
- data<<(uint8)1;
- data<<pCurrChar->GetName();
- data<<pCurrChar->GetGUID();
+ data<<uint8(GE_SIGNED_ON);
+ data<<uint8(1);
+ data<< pCurrChar->GetName();
+ data<< pCurrChar->GetGUID();
guild->BroadcastPacket(&data);
DEBUG_LOG( "WORLD: Sent guild-signed-on (SMSG_GUILD_EVENT)" );
-
- // Increment online members of the guild
- guild->IncOnlineMemberCount();
}
else
{
@@ -689,9 +690,6 @@ void WorldSession::HandlePlayerLogin(LoginQueryHolder * holder)
data << uint32(0);
SendPacket(&data);
- if(!pCurrChar->isAlive())
- pCurrChar->SendCorpseReclaimDelay(true);
-
pCurrChar->SendInitialPacketsBeforeAddToMap();
//Show cinematic at the first time that player login
@@ -784,6 +782,9 @@ void WorldSession::HandlePlayerLogin(LoginQueryHolder * holder)
SendNotification(LANG_RESET_TALENTS);
}
+ if (pCurrChar->HasAtLoginFlag(AT_LOGIN_FIRST))
+ pCurrChar->RemoveAtLoginFlag(AT_LOGIN_FIRST);
+
// show time before shutdown if shutdown planned.
if(sWorld.IsShutdowning())
sWorld.ShutdownMsg(true,pCurrChar);