29 static std::vector<ChatCommand> listCommandTable =
37 static std::vector<ChatCommand> commandTable =
54 uint32 creatureId = atol(
id);
70 char* countStr = strtok(NULL,
" ");
71 uint32 count = countStr ? atol(countStr) : 10;
79 result =
WorldDatabase.PQuery(
"SELECT COUNT(guid) FROM creature WHERE id='%u'", creatureId);
81 creatureCount = (*result)[0].GetUInt64();
86 result =
WorldDatabase.PQuery(
"SELECT guid, position_x, position_y, position_z, map, (POW(position_x - '%f', 2) + POW(position_y - '%f', 2) + POW(position_z - '%f', 2)) AS order_ FROM creature WHERE id = '%u' ORDER BY order_ ASC LIMIT %u",
90 result =
WorldDatabase.PQuery(
"SELECT guid, position_x, position_y, position_z, map FROM creature WHERE id = '%u' LIMIT %u",
97 Field* fields = result->Fetch();
108 }
while (result->NextRow());
141 char* countStr = strtok(NULL,
" ");
142 uint32 count = countStr ? atol(countStr) : 10;
150 uint32 inventoryCount = 0;
157 inventoryCount = (*result)[0].GetUInt64();
168 Field* fields = result->Fetch();
174 std::string ownerName = fields[5].
GetString();
176 char const* itemPos = 0;
178 itemPos =
"[equipped]";
180 itemPos =
"[in inventory]";
182 itemPos =
"[in bank]";
187 }
while (result->NextRow());
191 if (count > resultCount)
192 count -= resultCount;
205 mailCount = (*result)[0].GetUInt64();
221 Field* fields = result->Fetch();
226 std::string itemSenderName = fields[4].
GetString();
228 std::string itemReceiverName = fields[6].
GetString();
230 char const* itemPos =
"[in mail]";
232 handler->
PSendSysMessage(
LANG_ITEMLIST_MAIL, itemGuid, itemSenderName.c_str(), itemSender, itemSenderAccountId, itemReceiverName.c_str(), itemReceiver, itemReceiverAccount, itemPos);
233 }
while (result->NextRow());
237 if (count > resultCount)
238 count -= resultCount;
251 auctionCount = (*result)[0].GetUInt64();
267 Field* fields = result->Fetch();
271 std::string ownerName = fields[3].
GetString();
273 char const* itemPos =
"[in auction]";
276 }
while (result->NextRow());
287 guildCount = (*result)[0].GetUInt64();
298 Field* fields = result->Fetch();
301 std::string guildName = fields[2].
GetString();
303 char const* itemPos =
"[in guild bank]";
306 }
while (result->NextRow());
310 if (count > resultCount)
311 count -= resultCount;
316 if (inventoryCount + mailCount + auctionCount + guildCount == 0)
338 uint32 gameObjectId = atol(
id);
354 char* countStr = strtok(NULL,
" ");
355 uint32 count = countStr ? atol(countStr) : 10;
363 result =
WorldDatabase.PQuery(
"SELECT COUNT(guid) FROM gameobject WHERE id='%u'", gameObjectId);
365 objectCount = (*result)[0].GetUInt64();
370 result =
WorldDatabase.PQuery(
"SELECT guid, position_x, position_y, position_z, map, id, (POW(position_x - '%f', 2) + POW(position_y - '%f', 2) + POW(position_z - '%f', 2)) AS order_ FROM gameobject WHERE id = '%u' ORDER BY order_ ASC LIMIT %u",
374 result =
WorldDatabase.PQuery(
"SELECT guid, position_x, position_y, position_z, map, id FROM gameobject WHERE id = '%u' LIMIT %u",
375 gameObjectId, count);
381 Field* fields = result->Fetch();
393 }
while (result->NextRow());
416 for (Unit::AuraApplicationMap::const_iterator itr = auras.begin(); itr != auras.end(); ++itr)
424 std::ostringstream ss_name;
425 ss_name <<
"|cffffffff|Hspell:" << aura->
GetId() <<
"|h[" << name <<
"]|h|r";
437 if (auraList.empty())
442 for (Unit::AuraEffectList::const_iterator itr = auraList.begin(); itr != auraList.end(); ++itr)
453 std::string targetName;
460 if (
sObjectMgr->GetPlayerNameByGUID(parseGUID, targetName))
462 target =
sObjectMgr->GetPlayerByLowGUID(parseGUID);
463 targetGuid = parseGUID;
473 Field* fields = result->Fetch();
475 std::string nameLink = handler->
playerLink(targetName);
485 Field* fields = result->Fetch();
488 std::string sender = fields[2].
GetString();
490 std::string receiver = fields[4].
GetString();
491 std::string subject = fields[5].
GetString();
499 std::string receiverStr = handler->
playerLink(receiver);
500 std::string senderStr = handler->
playerLink(sender);
507 result2 =
CharacterDatabase.PQuery(
"SELECT item_guid FROM mail_items WHERE mail_id = '%u'", messageId);
512 uint32 item_guid = (*result2)[0].GetUInt32();
520 Field* fields = result3->Fetch();
524 result4 =
WorldDatabase.PQuery(
"SELECT name, quality FROM item_template WHERE entry = '%u'", item_entry);
525 Field* fields1 = result4->Fetch();
526 std::string item_name = fields1[0].
GetString();
527 int item_quality = fields1[1].
GetUInt8();
531 std::ostringstream itemStr;
532 itemStr <<
"|c" << std::hex << color <<
"|Hitem:" << item_entry <<
":0:0:0:0:0:0:0:0:0|h[" << item_name <<
"]|h|r";
537 }
while (result3->NextRow());
539 }
while (result2->NextRow());
543 }
while (result->NextRow());
@ CHAR_SEL_CHAR_INVENTORY_ITEM_BY_ENTRY
@ CHAR_SEL_MAIL_LIST_COUNT
@ CHAR_SEL_MAIL_LIST_ITEMS
@ CHAR_SEL_MAIL_LIST_INFO
@ CHAR_SEL_MAIL_COUNT_ITEM
@ CHAR_SEL_AUCTIONHOUSE_COUNT_ITEM
@ CHAR_SEL_GUILD_BANK_COUNT_ITEM
@ CHAR_SEL_AUCTIONHOUSE_ITEM_BY_ENTRY
@ CHAR_SEL_GUILD_BANK_ITEM_BY_ENTRY
@ CHAR_SEL_CHAR_INVENTORY_COUNT_ITEM
@ CHAR_SEL_MAIL_ITEMS_BY_ENTRY
uint32 GetTalentSpellCost(uint32 spellId)
@ LANG_COMMAND_TARGET_LISTAURAS
@ LANG_LIST_MAIL_INFO_ITEM
@ LANG_CREATURE_LIST_CONSOLE
@ LANG_COMMAND_NOITEMFOUND
@ LANG_LIST_MAIL_NOT_FOUND
@ LANG_COMMAND_LISTOBJMESSAGE
@ LANG_COMMAND_TARGET_AURADETAIL
@ LANG_SELECT_CHAR_OR_CREATURE
@ LANG_COMMAND_INVALIDCREATUREID
@ LANG_COMMAND_LISTCREATUREMESSAGE
@ LANG_CREATURE_LIST_CHAT
@ LANG_COMMAND_TARGET_AURASIMPLE
@ LANG_COMMAND_LISTITEMMESSAGE
@ LANG_COMMAND_TARGET_LISTAURATYPE
@ LANG_COMMAND_LISTOBJINVALIDID
@ LANG_COMMAND_ITEMIDINVALID
uint32 GUID_LOPART(uint64 x)
uint64 MAKE_NEW_GUID(uint32 l, uint32 e, uint32 h)
bool IS_PLAYER_GUID(uint64 guid)
Skyfire::AutoPtr< PreparedResultSet, Skyfire::Mutex > PreparedQueryResult
Skyfire::AutoPtr< ResultSet, Skyfire::Mutex > QueryResult
const uint32 ItemQualityColors[MAX_ITEM_QUALITY]
std::string TimeToTimestampStr(time_t t)
uint32 GetEffectMask() const
uint64 GetCasterGUID() const
int32 GetMaxDuration() const
int32 GetDuration() const
uint8 GetStackAmount() const
SpellInfo const * GetSpellInfo() const
std::string playerLink(std::string const &name) const
WorldSession * GetSession()
char * extractKeyFromLink(char *text, char const *linkType, char **something1=NULL)
void PSendSysMessage(const char *format,...) ATTR_PRINTF(2
void SetSentErrorMessage(bool val)
bool extractPlayerTarget(char *args, Player **player, uint64 *player_guid=NULL, std::string *player_name=NULL)
virtual void SendSysMessage(const char *str)
virtual const char * GetSkyFireString(int32 entry) const
CommandScript(const char *name)
std::string GetString() const
static bool IsEquipmentPos(uint16 pos)
static bool IsInventoryPos(uint16 pos)
static bool IsBankPos(uint16 pos)
void setUInt32(const uint8 index, const uint32 value)
AuraEffectList const & GetAuraEffectsByType(AuraType type) const
std::multimap< uint32, AuraApplication * > AuraApplicationMap
AuraApplicationMap & GetAppliedAuras()
std::list< AuraEffect * > AuraEffectList
Player * GetPlayer() const
std::vector< ChatCommand > GetCommands() const OVERRIDE
static bool HandleListItemCommand(ChatHandler *handler, char const *args)
static bool HandleListCreatureCommand(ChatHandler *handler, char const *args)
static bool HandleListObjectCommand(ChatHandler *handler, char const *args)
static bool HandleListMailCommand(ChatHandler *handler, char const *args)
static bool HandleListAurasCommand(ChatHandler *handler, char const *)
void AddSC_list_commandscript()
CharacterDatabaseWorkerPool CharacterDatabase
Accessor to the character database.
WorldDatabaseWorkerPool WorldDatabase
Accessor to the world database.
@ RBAC_PERM_COMMAND_LIST_MAIL
@ RBAC_PERM_COMMAND_LIST_ITEM
@ RBAC_PERM_COMMAND_LIST_CREATURE
@ RBAC_PERM_COMMAND_LIST_OBJECT
@ RBAC_PERM_COMMAND_LIST_AURAS
float GetPositionZ() const
float GetPositionX() const
float GetPositionY() const