[8728] Store current realmid for online account in realm Db account table.

* Replace old `account`.`online` field by `account`.`active_realm_id`.
  It have 0 if account offline.

NOTE: this break all scripts that use `online` field for seelct online characters, and it required update.
But from other side this reolve
* Bug with reset online state active realm at restart another realm.
* Let easy select online accounts for some specific realm if need.

Signed-off-by: VladimirMangos <vladimir@getmangos.com>
This commit is contained in:
Andeeria 2009-10-25 02:38:57 +04:00 committed by VladimirMangos
parent b078ceb76c
commit 8baee4a73f
8 changed files with 15 additions and 9 deletions

View file

@ -705,7 +705,7 @@ void WorldSession::HandlePlayerLogin(LoginQueryHolder *holder)
pCurrChar->SendInitialPacketsAfterAddToMap();
CharacterDatabase.PExecute("UPDATE characters SET online = 1 WHERE guid = '%u'", pCurrChar->GetGUIDLow());
loginDatabase.PExecute("UPDATE account SET online = 1 WHERE id = '%u'", GetAccountId());
loginDatabase.PExecute("UPDATE account SET active_realm_id = %d WHERE id = '%u'", realmID, GetAccountId());
pCurrChar->SetInGameTime( getMSTime() );
// announce group about member online (must be after add to player list to receive announce to self)