[11169] Implemented pool system related commands.

.lookup pool $pooldescpart - list of pools (anywhere) with substring in description
.pool list   - list of pools with spawn in current map (only work in instances)
               Non-instanceable maps share pool system state os useless attempt get all pols at all continents.
.pool spawns - list current creatures/objects listed in pools and spawned (added to grid data, not meaning show in world).
.pool spawns #pool_id - list current creatures/objects listed in #pool_id and spawned (added to grid data, not meaning show in world).
.pool #pool_id - pool information and full list creatures/gameobjects included in pool
This commit is contained in:
VladimirMangos 2011-02-15 13:34:18 +03:00
parent 8feaf211f1
commit a6584c4401
12 changed files with 429 additions and 8 deletions

View file

@ -53,6 +53,7 @@
// - client, item icon shift click
// |color|Hitemset:itemset_id|h[name]|h|r
// |color|Hplayer:name|h[name]|h|r - client, in some messages, at click copy only name instead link, so no way generate it in client string send to server
// |color|Hpool:pool_id|h[name]|h|r
// |color|Hquest:quest_id:quest_level|h[name]|h|r - client, quest list name shift-click
// |color|Hskill:skill_id|h[name]|h|r
// |color|Hspell:spell_id|h[name]|h|r - client, spellbook spell icon shift-click
@ -346,6 +347,7 @@ ChatCommand * ChatHandler::getCommandTable()
{ "object", SEC_ADMINISTRATOR, true, &ChatHandler::HandleLookupObjectCommand, "", NULL },
{ "quest", SEC_ADMINISTRATOR, true, &ChatHandler::HandleLookupQuestCommand, "", NULL },
{ "player", SEC_GAMEMASTER, true, NULL, "", lookupPlayerCommandTable },
{ "pool", SEC_GAMEMASTER, true, &ChatHandler::HandleLookupPoolCommand, "", NULL },
{ "skill", SEC_ADMINISTRATOR, true, &ChatHandler::HandleLookupSkillCommand, "", NULL },
{ "spell", SEC_ADMINISTRATOR, true, &ChatHandler::HandleLookupSpellCommand, "", NULL },
{ "taxinode", SEC_ADMINISTRATOR, true, &ChatHandler::HandleLookupTaxiNodeCommand, "", NULL },
@ -427,6 +429,14 @@ ChatCommand * ChatHandler::getCommandTable()
{ NULL, 0, false, NULL, "", NULL }
};
static ChatCommand poolCommandTable[] =
{
{ "list", SEC_GAMEMASTER, false, &ChatHandler::HandlePoolListCommand, "", NULL },
{ "spawns", SEC_GAMEMASTER, false, &ChatHandler::HandlePoolSpawnsCommand, "", NULL },
{ "", SEC_GAMEMASTER, true, &ChatHandler::HandlePoolInfoCommand, "", NULL },
{ NULL, 0, false, NULL, "", NULL }
};
static ChatCommand questCommandTable[] =
{
{ "add", SEC_ADMINISTRATOR, false, &ChatHandler::HandleQuestAddCommand, "", NULL },
@ -688,6 +698,7 @@ ChatCommand * ChatHandler::getCommandTable()
{ "lookup", SEC_MODERATOR, true, NULL, "", lookupCommandTable },
{ "modify", SEC_MODERATOR, false, NULL, "", modifyCommandTable },
{ "npc", SEC_MODERATOR, false, NULL, "", npcCommandTable },
{ "pool", SEC_GAMEMASTER, true, NULL, "", poolCommandTable },
{ "pdump", SEC_ADMINISTRATOR, true, NULL, "", pdumpCommandTable },
{ "quest", SEC_ADMINISTRATOR, false, NULL, "", questCommandTable },
{ "reload", SEC_ADMINISTRATOR, true, NULL, "", reloadCommandTable },