Scripts/Commands: Add guild info to .pinfo

Original patch by @secharles, modified

Closes #8946
This commit is contained in:
Nay
2013-01-26 21:31:48 +00:00
parent e591f886ff
commit 1b551cc157
5 changed files with 31 additions and 0 deletions

View File

@@ -0,0 +1,5 @@
DELETE FROM `trinity_string` WHERE `entry`=749;
INSERT INTO `trinity_string` (`entry`, `content_default`) VALUES
(749, 'Guild: %s (%u) Rank: %s Note: %s OffNote: %s');
UPDATE `command` SET `help`='Syntax: .pinfo [$player_name/#GUID]\r\n\r\nOutput account information and guild information for selected player or player find by $player_name or #GUID.' WHERE `name`='pinfo';

View File

@@ -522,6 +522,7 @@ enum TrinityStrings
LANG_PINFO_BAN = 453,
LANG_PINFO_MAP_ONLINE = 714,
LANG_PINFO_MAP_OFFLINE = 716,
LANG_PINFO_GUILD_INFO = 749,
LANG_YOU_SET_EXPLORE_ALL = 551,
LANG_YOU_SET_EXPLORE_NOTHING = 552,

View File

@@ -1734,6 +1734,29 @@ public:
else
handler->PSendSysMessage(LANG_PINFO_MAP_OFFLINE, map->name[locale], areaName.c_str());
stmt = CharacterDatabase.GetPreparedStatement(CHAR_SEL_GUILD_MEMBER_EXTENDED);
stmt->setUInt32(0, GUID_LOPART(targetGuid));
result = CharacterDatabase.Query(stmt);
if (result)
{
uint32 guildId = 0;
std::string guildName = "";
std::string guildRank = "";
std::string note = "";
std::string officeNote = "";
Field* fields = result->Fetch();
guildId = fields[0].GetUInt32();
guildName = fields[1].GetString();
//rankId = fields[2].GetUInt8();
guildRank = fields[3].GetString();
note = fields[4].GetString();
officeNote = fields[5].GetString();
handler->PSendSysMessage(LANG_PINFO_GUILD_INFO, guildName.c_str(), guildId, guildRank.c_str(), note.c_str(), officeNote.c_str());
}
return true;
}

View File

@@ -101,6 +101,7 @@ void CharacterDatabaseConnection::DoPrepareStatements()
PrepareStatement(CHAR_SEL_CHARACTER_SPELLCOOLDOWNS, "SELECT spell, item, time FROM character_spell_cooldown WHERE guid = ?", CONNECTION_ASYNC);
PrepareStatement(CHAR_SEL_CHARACTER_DECLINEDNAMES, "SELECT genitive, dative, accusative, instrumental, prepositional FROM character_declinedname WHERE guid = ?", CONNECTION_ASYNC);
PrepareStatement(CHAR_SEL_GUILD_MEMBER, "SELECT guildid, rank FROM guild_member WHERE guid = ?", CONNECTION_BOTH);
PrepareStatement(CHAR_SEL_GUILD_MEMBER_EXTENDED, "SELECT g.guildid, g.name, gm.rank, gr.rname, gm.pnote, gm.offnote FROM guild g JOIN guild_member gm ON g.guildid = gm.guildid JOIN guild_rank gr ON g.guildid = gr.guildid WHERE gm.guid = ?", CONNECTION_BOTH);
PrepareStatement(CHAR_SEL_CHARACTER_ACHIEVEMENTS, "SELECT achievement, date FROM character_achievement WHERE guid = ?", CONNECTION_ASYNC);
PrepareStatement(CHAR_SEL_CHARACTER_CRITERIAPROGRESS, "SELECT criteria, counter, date FROM character_achievement_progress WHERE guid = ?", CONNECTION_ASYNC);
PrepareStatement(CHAR_SEL_CHARACTER_EQUIPMENTSETS, "SELECT setguid, setindex, name, iconname, ignore_mask, item0, item1, item2, item3, item4, item5, item6, item7, item8, "

View File

@@ -105,6 +105,7 @@ enum CharacterDatabaseStatements
CHAR_SEL_CHARACTER_SPELLCOOLDOWNS,
CHAR_SEL_CHARACTER_DECLINEDNAMES,
CHAR_SEL_GUILD_MEMBER,
CHAR_SEL_GUILD_MEMBER_EXTENDED,
CHAR_SEL_CHARACTER_ARENAINFO,
CHAR_SEL_CHARACTER_ACHIEVEMENTS,
CHAR_SEL_CHARACTER_CRITERIAPROGRESS,