aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSpp <spp@jorge.gr>2011-12-30 08:27:05 +0100
committerSpp <spp@jorge.gr>2011-12-30 08:27:05 +0100
commit57490ead833074bd83ae38be8ee50e9f9813759a (patch)
treea5bf22d5f11019119d1b6621b8f94d1a2032cd5a
parentb5a53a72d1e52a25ab5aac429e9d9f793c4df5ba (diff)
Core/Commands: Allow to search for other account/characters from a selected player without having to write the ip as argument (By Bizzy)
-rwxr-xr-xsrc/server/game/Battlegrounds/BattlegroundQueue.cpp2
-rwxr-xr-xsrc/server/game/Chat/Commands/Level2.cpp32
2 files changed, 23 insertions, 11 deletions
diff --git a/src/server/game/Battlegrounds/BattlegroundQueue.cpp b/src/server/game/Battlegrounds/BattlegroundQueue.cpp
index 963a41435c7..82c01bd32f6 100755
--- a/src/server/game/Battlegrounds/BattlegroundQueue.cpp
+++ b/src/server/game/Battlegrounds/BattlegroundQueue.cpp
@@ -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
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 (m_QueuedGroups[bracket_id][BG_QUEUE_PREMADE_ALLIANCE].empty() &&
diff --git a/src/server/game/Chat/Commands/Level2.cpp b/src/server/game/Chat/Commands/Level2.cpp
index 5411b1364c0..9b13d1ce822 100755
--- a/src/server/game/Chat/Commands/Level2.cpp
+++ b/src/server/game/Chat/Commands/Level2.cpp
@@ -707,19 +707,31 @@ bool ChatHandler::HandleCombatStopCommand(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)
- return false;
-
- std::string ip = strtok ((char*)args, " ");
- char* limit_str = strtok (NULL, " ");
- int32 limit = limit_str ? atoi (limit_str) : -1;
-
- LoginDatabase.EscapeString (ip);
+ LoginDatabase.EscapeString(ip);
- QueryResult result = LoginDatabase.PQuery ("SELECT id, username FROM account WHERE last_ip = '%s'", ip.c_str ());
+ QueryResult result = LoginDatabase.PQuery("SELECT id, username FROM account WHERE last_ip = '%s'", ip.c_str());
- return LookupPlayerSearchCommand (result, limit);
+ return LookupPlayerSearchCommand(result, limit);
}
bool ChatHandler::HandleLookupPlayerAccountCommand(const char* args)