diff options
author | Mihapro <miha.penger@siol.net> | 2013-05-10 20:39:15 +0200 |
---|---|---|
committer | Mihapro <miha.penger@siol.net> | 2013-05-11 22:12:11 +0200 |
commit | 090951ba71eef0b27ff6d4c152f79c417f0ab3f0 (patch) | |
tree | d1ae739381e44fcdc6525ae8e10fb3a38e34d8f6 /src/server/game/Handlers/CharacterHandler.cpp | |
parent | f04bddcbd0cb7ca5bbef8bf7fea061c7d704a22f (diff) |
Core/Players: Cast Summon Pet on first login, relocate created pets
*Casts a proper Summon Pet spell on a hunter logging in for the first
time (depending on his race).
*Relocates created tamed pets before they're added to map.
Diffstat (limited to 'src/server/game/Handlers/CharacterHandler.cpp')
-rw-r--r-- | src/server/game/Handlers/CharacterHandler.cpp | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/src/server/game/Handlers/CharacterHandler.cpp b/src/server/game/Handlers/CharacterHandler.cpp index 90b8ae93661..8ad49724b2e 100644 --- a/src/server/game/Handlers/CharacterHandler.cpp +++ b/src/server/game/Handlers/CharacterHandler.cpp @@ -1089,8 +1089,31 @@ void WorldSession::HandlePlayerLogin(LoginQueryHolder* holder) } if (pCurrChar->HasAtLoginFlag(AT_LOGIN_FIRST)) + { pCurrChar->RemoveAtLoginFlag(AT_LOGIN_FIRST); + if (pCurrChar->getClass() == CLASS_HUNTER) + { + static uint32 const HunterCreatePetSpells[MAX_RACES] = + { + 0, /* None */ 79597, /* Human - Young Wolf */ + 79598, /* Orc - Young Boar */ 79593, /* Dwarf - Young Bear */ + 79602, /* Night Elf - Young Cat */ 79600, /* Undead - Young Widow */ + 79603, /* Tauren - Young Tallstrider */ 0, /* Gnome */ + 79599, /* Troll - Young Raptor */ 79595, /* Goblin - Young Crab */ + 79594, /* Blood Elf - Young Dragonhawk */ 79601, /* Draenei - Young Moth */ + 0, /* Fel Orc */ 0, /* Naga */ + 0, /* Broken */ 0, /* Skeleton */ + 0, /* Vrykul */ 0, /* Tuskarr */ + 0, /* Forest Troll */ 0, /* Taunka */ + 0, /* Northrend Skeleton */ 0, /* Ice Troll */ + 79596, /* Worgen - Young Mastiff */ + }; + + pCurrChar->CastSpell(pCurrChar, HunterCreatePetSpells[pCurrChar->getRace()], true); + } + } + // show time before shutdown if shutdown planned. if (sWorld->IsShuttingDown()) sWorld->ShutdownMsg(true, pCurrChar); |