summaryrefslogtreecommitdiff
path: root/src/net
diff options
context:
space:
mode:
Diffstat (limited to 'src/net')
-rw-r--r--src/net/ea/partyhandler.cpp7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/net/ea/partyhandler.cpp b/src/net/ea/partyhandler.cpp
index 6934dde0..030914b4 100644
--- a/src/net/ea/partyhandler.cpp
+++ b/src/net/ea/partyhandler.cpp
@@ -236,8 +236,8 @@ void PartyHandler::handleMessage(Net::MessageIn &msg)
msg.readInt8(); // fail
if (id == player_node->getId())
{
+ eaParty->removeFromMembers();
eaParty->clearMembers();
- player_node->setParty(NULL);
localChatTab->chatLog(_("You have left the party."),
BY_SERVER);
if (partyTab)
@@ -251,6 +251,11 @@ void PartyHandler::handleMessage(Net::MessageIn &msg)
{
partyTab->chatLog(strprintf(_("%s has left your party."),
nick.c_str()), BY_SERVER);
+ Player *p = dynamic_cast<Player*>(beingManager->findBeing(id));
+ if (p)
+ {
+ p->setParty(NULL);
+ }
eaParty->removeMember(id);
}
break;