diff options
Diffstat (limited to 'src/net/tmwserv')
-rw-r--r-- | src/net/tmwserv/generalhandler.cpp | 23 | ||||
-rw-r--r-- | src/net/tmwserv/inventoryhandler.cpp | 3 | ||||
-rw-r--r-- | src/net/tmwserv/partyhandler.cpp | 2 | ||||
-rw-r--r-- | src/net/tmwserv/playerhandler.cpp | 3 | ||||
-rw-r--r-- | src/net/tmwserv/tradehandler.cpp | 2 |
5 files changed, 17 insertions, 16 deletions
diff --git a/src/net/tmwserv/generalhandler.cpp b/src/net/tmwserv/generalhandler.cpp index 0a0ca346..5886aafb 100644 --- a/src/net/tmwserv/generalhandler.cpp +++ b/src/net/tmwserv/generalhandler.cpp @@ -20,6 +20,7 @@ */ #include "gui/inventorywindow.h" +#include "gui/partywindow.h" #include "net/tmwserv/generalhandler.h" @@ -77,20 +78,13 @@ GeneralHandler::GeneralHandler(): generalHandler = this; - std::list<ItemDB::Stat*> stats; - ItemDB::Stat stat; - stat.tag = "str"; stat.format = N_("Strength: %d"); - stats.push_back(&stat); - stat.tag = "agi"; stat.format = N_("Agility: %d"); - stats.push_back(&stat); - stat.tag = "dex"; stat.format = N_("Dexterity: %d"); - stats.push_back(&stat); - stat.tag = "vit"; stat.format = N_("Vitality: %d"); - stats.push_back(&stat); - stat.tag = "int"; stat.format = N_("Intelligence: %d"); - stats.push_back(&stat); - stat.tag = "will"; stat.format = N_("Willpower: %d"); - stats.push_back(&stat); + std::list<ItemDB::Stat> stats; + stats.push_back(ItemDB::Stat("str", N_("Strength %+d"))); + stats.push_back(ItemDB::Stat("agi", N_("Agility %+d"))); + stats.push_back(ItemDB::Stat("dex", N_("Dexterity %+d"))); + stats.push_back(ItemDB::Stat("vit", N_("Vitality %+d"))); + stats.push_back(ItemDB::Stat("int", N_("Intelligence %+d"))); + stats.push_back(ItemDB::Stat("will", N_("Willpower %+d"))); ItemDB::setStatsList(stats); } @@ -151,6 +145,7 @@ void GeneralHandler::tick() void GeneralHandler::guiWindowsLoaded() { inventoryWindow->setSplitAllowed(true); + partyWindow->clearPartyName(); } void GeneralHandler::guiWindowsUnloaded() diff --git a/src/net/tmwserv/inventoryhandler.cpp b/src/net/tmwserv/inventoryhandler.cpp index d78c8318..8110fdd2 100644 --- a/src/net/tmwserv/inventoryhandler.cpp +++ b/src/net/tmwserv/inventoryhandler.cpp @@ -100,6 +100,9 @@ void InventoryHandler::unequipItem(const Item *item) MessageOut msg(PGMSG_UNEQUIP); msg.writeInt8(item->getInvIndex()); Net::GameServer::connection->send(msg); + + // Tidy equipment directly to avoid weapon still shown bug, for instance + player_node->mEquipment->setEquipment(item->getInvIndex(), 0); } void InventoryHandler::useItem(const Item *item) diff --git a/src/net/tmwserv/partyhandler.cpp b/src/net/tmwserv/partyhandler.cpp index 01de1be8..47ef791c 100644 --- a/src/net/tmwserv/partyhandler.cpp +++ b/src/net/tmwserv/partyhandler.cpp @@ -99,7 +99,7 @@ void PartyHandler::handleMessage(MessageIn &msg) localChatTab->chatLog(name + " joined the party"); - if (!player_node->getInParty()) + if (!player_node->isInParty()) player_node->setInParty(true); partyWindow->updateMember(id, name); diff --git a/src/net/tmwserv/playerhandler.cpp b/src/net/tmwserv/playerhandler.cpp index c7769ede..b697e8a8 100644 --- a/src/net/tmwserv/playerhandler.cpp +++ b/src/net/tmwserv/playerhandler.cpp @@ -29,6 +29,7 @@ #include "net/messagein.h" #include "net/messageout.h" +#include "net/net.h" #include "effectmanager.h" #include "engine.h" @@ -81,7 +82,7 @@ namespace { { void action(const gcn::ActionEvent &event) { - player_node->revive(); + Net::getPlayerHandler()->respawn(); deathNotice = NULL; buyDialog->setVisible(false); sellDialog->setVisible(false); diff --git a/src/net/tmwserv/tradehandler.cpp b/src/net/tmwserv/tradehandler.cpp index 4c462a3f..74789a34 100644 --- a/src/net/tmwserv/tradehandler.cpp +++ b/src/net/tmwserv/tradehandler.cpp @@ -167,6 +167,8 @@ void TradeHandler::request(Being *being) void TradeHandler::respond(bool accept) { // TODO + if (!accept) + player_node->setTrading(false); } void TradeHandler::addItem(Item *item, int amount) |