[3.3.5] Commands: lookup player shows which character is online (#23039)

* Show 'online' for every online player in lookup player commands

(cherry picked from commit a0056951f7)
This commit is contained in:
TheWinchesters
2019-02-15 16:18:58 -03:00
committed by Shauren
parent 31dca39c05
commit 47adf2e4c8
4 changed files with 8 additions and 3 deletions

View File

@@ -0,0 +1,4 @@
-- Show if player is online in lookup player commands
DELETE FROM `trinity_string` WHERE `entry` = '48';
INSERT INTO `trinity_string` (`entry`, `content_default`) VALUES ('48', '(online)');
UPDATE `trinity_string` SET `content_default` = ' %s (%s) %s' WHERE (`entry` = '329');

View File

@@ -552,7 +552,7 @@ void CharacterDatabaseConnection::DoPrepareStatements()
//0: lowGUID
PrepareStatement(CHAR_SEL_PINFO_XP, "SELECT a.xp, b.guid FROM characters a LEFT JOIN guild_member b ON a.guid = b.guid WHERE a.guid = ?", CONNECTION_SYNCH);
PrepareStatement(CHAR_SEL_CHAR_HOMEBIND, "SELECT mapId, zoneId, posX, posY, posZ, orientation FROM character_homebind WHERE guid = ?", CONNECTION_SYNCH);
PrepareStatement(CHAR_SEL_CHAR_GUID_NAME_BY_ACC, "SELECT guid, name FROM characters WHERE account = ?", CONNECTION_SYNCH);
PrepareStatement(CHAR_SEL_CHAR_GUID_NAME_BY_ACC, "SELECT guid, name, online FROM characters WHERE account = ?", CONNECTION_SYNCH);
PrepareStatement(CHAR_SEL_POOL_QUEST_SAVE, "SELECT quest_id FROM pool_quest_save WHERE pool_id = ?", CONNECTION_SYNCH);
PrepareStatement(CHAR_SEL_CHAR_CUSTOMIZE_INFO, "SELECT name, race, class, gender, at_login FROM characters WHERE guid = ?", CONNECTION_ASYNC);
PrepareStatement(CHAR_SEL_CHAR_RACE_OR_FACTION_CHANGE_INFOS, "SELECT at_login, knownTitles FROM characters WHERE guid = ?", CONNECTION_ASYNC);

View File

@@ -77,7 +77,7 @@ enum TrinityStrings
LANG_UNKNOWN = 45,
LANG_ERROR = 46,
LANG_NON_EXIST_CHARACTER = 47,
LANG_ONLINE = 48, // 3.3.5 RESERVED
LANG_ONLINE = 48,
LANG_LEVEL_MINREQUIRED = 49,
LANG_LEVEL_MINREQUIRED_AND_ITEM = 50,
LANG_NPC_TAINER_HELLO = 51,

View File

@@ -1400,8 +1400,9 @@ public:
Field* characterFields = result2->Fetch();
ObjectGuid guid = ObjectGuid::Create<HighGuid::Player>(characterFields[0].GetUInt64());
std::string name = characterFields[1].GetString();
uint8 online = characterFields[2].GetUInt8();
handler->PSendSysMessage(LANG_LOOKUP_PLAYER_CHARACTER, name.c_str(), guid.ToString().c_str());
handler->PSendSysMessage(LANG_LOOKUP_PLAYER_CHARACTER, name.c_str(), guid.ToString().c_str(), online ? handler->GetTrinityString(LANG_ONLINE) : "");
++counter;
}
while (result2->NextRow() && (limit == -1 || counter < limit));