mirror of
https://port.numenaute.org/aleajactaest/khanat-opennel-code.git
synced 2024-11-25 16:46:17 +00:00
More verbose message, bad command usage now print a synopsis
--HG-- branch : item_group
This commit is contained in:
parent
65ae5b4ad1
commit
332a2b5a74
2 changed files with 54 additions and 12 deletions
|
@ -217,23 +217,59 @@ NLMISC_COMMAND(listGroup, "list all available group", "")
|
|||
|
||||
NLMISC_COMMAND(equipGroup, "equip group <name>", "name")
|
||||
{
|
||||
if(args.empty()) return false;
|
||||
return CItemGroupManager::getInstance()->equipGroup(args[0]);
|
||||
CInterfaceManager *pIM = CInterfaceManager::getInstance();
|
||||
|
||||
if(args.empty())
|
||||
{
|
||||
pIM->displaySystemInfo(ucstring("equipGroup command usage :"));
|
||||
pIM->displaySystemInfo(ucstring("/equipGroup group_name : Pull the items from the group group_name from available inventory and equip them."));
|
||||
return false;
|
||||
}
|
||||
if(CItemGroupManager::getInstance()->equipGroup(args[0]))
|
||||
{
|
||||
pIM->displaySystemInfo(ucstring(toString("Group %s successfully equipped.", args[0].c_str())));
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
pIM->displaySystemInfo(ucstring(toString("Could not equip group %s because no group named like this was found.", args[0].c_str())));
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
NLMISC_COMMAND(moveGroup, "move group <name> to <dst>", "name dst")
|
||||
{
|
||||
if(args.empty() || args.size() < 2) return false;
|
||||
CInterfaceManager *pIM = CInterfaceManager::getInstance();
|
||||
|
||||
return CItemGroupManager::getInstance()->moveGroup(args[0], INVENTORIES::toInventory(args[1]));
|
||||
if(args.empty() || args.size() < 2)
|
||||
{
|
||||
pIM->displaySystemInfo(ucstring("moveGroup command usage :"));
|
||||
pIM->displaySystemInfo(ucstring("/moveGroup group_name destination : move items from all available inventories to destination"));
|
||||
pIM->displaySystemInfo(ucstring("destination can be either bag, player_room, guild, pet_animal1, pet_animal2, pet_animal3, pet_animal4"));
|
||||
return false;
|
||||
}
|
||||
|
||||
if(CItemGroupManager::getInstance()->moveGroup(args[0], INVENTORIES::toInventory(args[1])))
|
||||
{
|
||||
pIM->displaySystemInfo(ucstring(toString("Group %s successfully moved to %s.", args[0].c_str(), args[1].c_str())));
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
pIM->displaySystemInfo(ucstring(toString("Could not move group %s to %s because no group named like this was found, and/or it wasn't a valid inventory.",
|
||||
args[0].c_str(), args[1].c_str())));
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
NLMISC_COMMAND(createGroup, "create group <name> [true](create a <remove> for every unequiped item)", "name [removeUnequiped]")
|
||||
{
|
||||
CInterfaceManager *pIM = CInterfaceManager::getInstance();
|
||||
if(args.empty())
|
||||
{
|
||||
CInterfaceManager *pIM = CInterfaceManager::getInstance();
|
||||
pIM->displaySystemInfo(ucstring("Cannot create a group without name."));
|
||||
pIM->displaySystemInfo(ucstring("createGroup command usage :"));
|
||||
pIM->displaySystemInfo(ucstring("/createGroup group_name : create a group named group_nam with all your equipped items"));
|
||||
pIM->displaySystemInfo(ucstring("/createGroup group_name true : create a group named group_nam with all your equipped items, and create a remove command for every empty slot"));
|
||||
return false;
|
||||
}
|
||||
bool removeUnequiped = false;
|
||||
|
@ -241,29 +277,30 @@ NLMISC_COMMAND(createGroup, "create group <name> [true](create a <remove> for ev
|
|||
removeUnequiped = !args[1].empty();
|
||||
if(!CItemGroupManager::getInstance()->createGroup(args[0], removeUnequiped))
|
||||
{
|
||||
CInterfaceManager *pIM = CInterfaceManager::getInstance();
|
||||
std::string msg = "A group named " + args[0] + "already exist, cannot create one with the same name.";
|
||||
std::string msg = toString("A group named %s already exist, cannot create one with the same name.", args[0].c_str());
|
||||
pIM->displaySystemInfo(ucstring(msg));
|
||||
return false;
|
||||
}
|
||||
pIM->displaySystemInfo(ucstring(toString("Group %s successfully created.", args[0].c_str())));
|
||||
return true;
|
||||
}
|
||||
|
||||
NLMISC_COMMAND(deleteGroup, "delete group <name>", "name")
|
||||
{
|
||||
CInterfaceManager *pIM = CInterfaceManager::getInstance();
|
||||
if(args.empty())
|
||||
{
|
||||
CInterfaceManager *pIM = CInterfaceManager::getInstance();
|
||||
pIM->displaySystemInfo(ucstring("Cannot delete a group without name."));
|
||||
pIM->displaySystemInfo(ucstring("deleteGroup command usage :"));
|
||||
pIM->displaySystemInfo(ucstring("/deleteGroup group_name : Remove the group named group_name if it exists."));
|
||||
return false;
|
||||
}
|
||||
if(!CItemGroupManager::getInstance()->deleteGroup(args[0]))
|
||||
{
|
||||
CInterfaceManager *pIM = CInterfaceManager::getInstance();
|
||||
std::string msg = "Cannot delete group " + args[0] + " : no group with this name found.";
|
||||
std::string msg = toString("Cannot delete group %s : no group with this name found.", args[0].c_str());
|
||||
pIM->displaySystemInfo(msg);
|
||||
return false;
|
||||
}
|
||||
pIM->displaySystemInfo(ucstring(toString("Group %s successfully deleted.", args[0].c_str())));
|
||||
return true;
|
||||
}
|
||||
|
||||
|
|
|
@ -323,6 +323,11 @@ bool CItemGroupManager::moveGroup(std::string name, INVENTORIES::TInventory dst)
|
|||
nlinfo("group %s not found", name.c_str());
|
||||
return false;
|
||||
}
|
||||
if(dst == INVENTORIES::UNDEFINED)
|
||||
{
|
||||
nlinfo("Destination inventory not found");
|
||||
return false;
|
||||
}
|
||||
CInventoryManager* pIM = CInventoryManager::getInstance();
|
||||
|
||||
std::string moveParams = "to=lists|nblist=1|listsheet0=" + toDbPath(dst);
|
||||
|
|
Loading…
Reference in a new issue