Core/Commands: Allow to search for other account/characters from a selected player without having to write the ip as argument (By Bizzy)

This commit is contained in:
Spp
2011-12-30 08:27:05 +01:00
parent b5a53a72d1
commit 57490ead83
2 changed files with 23 additions and 11 deletions
@@ -731,7 +731,7 @@ this method is called when group is inserted, or player / group is removed from
it must be called after fully adding the members of a group to ensure group joining it must be called after fully adding the members of a group to ensure group joining
should be called from Battleground::RemovePlayer function in some cases should be called from Battleground::RemovePlayer function in some cases
*/ */
void BattlegroundQueue::BattlegroundQueueUpdate(uint32 diff, BattlegroundTypeId bgTypeId, BattlegroundBracketId bracket_id, uint8 arenaType, bool isRated, uint32 arenaRating) void BattlegroundQueue::BattlegroundQueueUpdate(uint32 /*diff*/, BattlegroundTypeId bgTypeId, BattlegroundBracketId bracket_id, uint8 arenaType, bool isRated, uint32 arenaRating)
{ {
//if no players in queue - do nothing //if no players in queue - do nothing
if (m_QueuedGroups[bracket_id][BG_QUEUE_PREMADE_ALLIANCE].empty() && if (m_QueuedGroups[bracket_id][BG_QUEUE_PREMADE_ALLIANCE].empty() &&
+22 -10
View File
@@ -707,19 +707,31 @@ bool ChatHandler::HandleCombatStopCommand(const char* args)
bool ChatHandler::HandleLookupPlayerIpCommand(const char* args) bool ChatHandler::HandleLookupPlayerIpCommand(const char* args)
{ {
std::string ip;
int32 limit;
char* limit_str;
Player *chr = getSelectedPlayer();
if (chr == NULL)
{
if (!*args)
return false;
ip = strtok ((char*)args, " ");
limit_str = strtok (NULL, " ");
limit = limit_str ? atoi (limit_str) : -1;
}
else
{
ip = chr->GetSession()->GetRemoteAddress();
limit = -1;
}
if (!*args) LoginDatabase.EscapeString(ip);
return false;
std::string ip = strtok ((char*)args, " "); QueryResult result = LoginDatabase.PQuery("SELECT id, username FROM account WHERE last_ip = '%s'", ip.c_str());
char* limit_str = strtok (NULL, " ");
int32 limit = limit_str ? atoi (limit_str) : -1;
LoginDatabase.EscapeString (ip); return LookupPlayerSearchCommand(result, limit);
QueryResult result = LoginDatabase.PQuery ("SELECT id, username FROM account WHERE last_ip = '%s'", ip.c_str ());
return LookupPlayerSearchCommand (result, limit);
} }
bool ChatHandler::HandleLookupPlayerAccountCommand(const char* args) bool ChatHandler::HandleLookupPlayerAccountCommand(const char* args)