diff options
author | Andrei Karas <akaras@inbox.ru> | 2011-07-30 01:02:50 +0300 |
---|---|---|
committer | Andrei Karas <akaras@inbox.ru> | 2011-07-30 05:02:46 +0300 |
commit | 0e9ef0640cab30431bef8a4683a5da549d5c8f88 (patch) | |
tree | b3866e49869019a3278a71290fc78209bac51972 /src/net/tmwa/gui/partytab.cpp | |
parent | c8b18b47abbb325b6cc4b34abbad52b03825e4f9 (diff) | |
download | manaplus-0e9ef0640cab30431bef8a4683a5da549d5c8f88.tar.gz manaplus-0e9ef0640cab30431bef8a4683a5da549d5c8f88.tar.bz2 manaplus-0e9ef0640cab30431bef8a4683a5da549d5c8f88.tar.xz manaplus-0e9ef0640cab30431bef8a4683a5da549d5c8f88.zip |
Extract shared logic from guildhandler and partyhandler netcode to ea namespace.
Diffstat (limited to 'src/net/tmwa/gui/partytab.cpp')
-rw-r--r-- | src/net/tmwa/gui/partytab.cpp | 188 |
1 files changed, 1 insertions, 187 deletions
diff --git a/src/net/tmwa/gui/partytab.cpp b/src/net/tmwa/gui/partytab.cpp index fc8ec138d..d15f4754f 100644 --- a/src/net/tmwa/gui/partytab.cpp +++ b/src/net/tmwa/gui/partytab.cpp @@ -47,199 +47,13 @@ namespace TmwAthena { PartyTab::PartyTab() : - ChatTab(_("Party")) + Ea::PartyTab() { - setTabColor(&Theme::getThemeColor(Theme::PARTY_CHAT_TAB)); } PartyTab::~PartyTab() { } -void PartyTab::handleInput(const std::string &msg) -{ - if (chatWindow) - Net::getPartyHandler()->chat(chatWindow->doReplace(msg)); - else - Net::getPartyHandler()->chat(msg); -} - -void PartyTab::showHelp() -{ - chatLog(_("/help > Display this help.")); - chatLog(_("/invite > Invite a player to your party")); - chatLog(_("/leave > Leave the party you are in")); - chatLog(_("/kick > Kick some one from the party you are in")); - chatLog(_("/item > Show/change party item sharing options")); - chatLog(_("/exp > Show/change party experience sharing options")); -} - -bool PartyTab::handleCommand(const std::string &type, const std::string &args) -{ - if (type == "help") - { - if (args == "invite") - { - chatLog(_("Command: /invite <nick>")); - chatLog(_("This command invites <nick> to party with you.")); - chatLog(_("If the <nick> has spaces in it, enclose it in " - "double quotes (\").")); - } - else if (args == "leave") - { - chatLog(_("Command: /leave")); - chatLog(_("This command causes the player to leave the party.")); - } - else if (args == "item") - { - chatLog(_("Command: /item <policy>")); - chatLog( - _("This command changes the party's item sharing policy.")); - chatLog(_("<policy> can be one of \"1\", \"yes\", \"true\" to " - "enable item sharing, or \"0\", \"no\", \"false\" to " - "disable item sharing.")); - chatLog(_("Command: /item")); - chatLog(_("This command displays the party's" - " current item sharing policy.")); - } - else if (args == "exp") - { - chatLog(_("Command: /exp <policy>")); - chatLog(_("This command changes the party's " - "experience sharing policy.")); - chatLog(_("<policy> can be one of \"1\", \"yes\", \"true\" to " - "enable experience sharing, or \"0\"," - " \"no\", \"false\" to disable experience sharing.")); - chatLog(_("Command: /exp")); - chatLog(_("This command displays the party's current " - "experience sharing policy.")); - } - else - { - return false; - } - } - else if (type == "create" || type == "new") - { - if (args.empty()) - chatLog(_("Party name is missing."), BY_SERVER); - else - Net::getPartyHandler()->create(args); - } - else if (type == "invite") - { - Net::getPartyHandler()->invite(args); - } - else if (type == "leave") - { - Net::getPartyHandler()->leave(); - } - else if (type == "kick") - { - Net::getPartyHandler()->kick(args); - } - else if (type == "item") - { - if (args.empty()) - { - switch (Net::getPartyHandler()->getShareItems()) - { - case PARTY_SHARE: - chatLog(_("Item sharing enabled."), BY_SERVER); - return true; - case PARTY_SHARE_NO: - chatLog(_("Item sharing disabled."), BY_SERVER); - return true; - case PARTY_SHARE_NOT_POSSIBLE: - chatLog(_("Item sharing not possible."), BY_SERVER); - return true; - case PARTY_SHARE_UNKNOWN: - chatLog(_("Item sharing unknown."), BY_SERVER); - return true; - default: - break; - } - } - - char opt = CommandHandler::parseBoolean(args); - - switch (opt) - { - case 1: - Net::getPartyHandler()->setShareItems(PARTY_SHARE); - break; - case 0: - Net::getPartyHandler()->setShareItems(PARTY_SHARE_NO); - break; - case -1: - chatLog(strprintf(BOOLEAN_OPTIONS, "item")); - default: - break; - } - } - else if (type == "exp") - { - if (args.empty()) - { - switch (Net::getPartyHandler()->getShareExperience()) - { - case PARTY_SHARE: - chatLog(_("Experience sharing enabled."), BY_SERVER); - return true; - case PARTY_SHARE_NO: - chatLog(_("Experience sharing disabled."), BY_SERVER); - return true; - case PARTY_SHARE_NOT_POSSIBLE: - chatLog(_("Experience sharing not possible."), BY_SERVER); - return true; - case PARTY_SHARE_UNKNOWN: - chatLog(_("Experience sharing unknown."), BY_SERVER); - return true; - default: - break; - } - } - - char opt = CommandHandler::parseBoolean(args); - - switch (opt) - { - case 1: - Net::getPartyHandler()->setShareExperience(PARTY_SHARE); - break; - case 0: - Net::getPartyHandler()->setShareExperience(PARTY_SHARE_NO); - break; - case -1: - chatLog(strprintf(BOOLEAN_OPTIONS, "exp")); - default: - break; - } - } - else - { - return false; - } - - return true; -} - -void PartyTab::getAutoCompleteList(std::vector<std::string> &names) const -{ - if (!player_node) - return; - - Party *p = player_node->getParty(); - - if (p) - p->getNames(names); -} - -void PartyTab::saveToLogFile(std::string &msg) -{ - if (chatLogger) - chatLogger->log("#Party", msg); -} - } // namespace TmwAthena |