summaryrefslogtreecommitdiff
path: root/src/net
diff options
context:
space:
mode:
authorAndrei Karas <akaras@inbox.ru>2012-08-28 13:25:35 +0300
committerAndrei Karas <akaras@inbox.ru>2012-08-29 00:49:52 +0300
commit46696c84bad31e35e003b5c09998503119b128eb (patch)
tree7449b98a62fa7ff520d995b27511878d2605c7d4 /src/net
parentc79403e1341ac533df1771b866d1f5cee15e12b5 (diff)
downloadmanaplus-46696c84bad31e35e003b5c09998503119b128eb.tar.gz
manaplus-46696c84bad31e35e003b5c09998503119b128eb.tar.bz2
manaplus-46696c84bad31e35e003b5c09998503119b128eb.tar.xz
manaplus-46696c84bad31e35e003b5c09998503119b128eb.zip
Add to replace/reorder sprites pseudo direction "died"
It allow change sprites in dead players.
Diffstat (limited to 'src/net')
-rw-r--r--src/net/ea/beinghandler.cpp6
-rw-r--r--src/net/ea/playerhandler.cpp6
-rw-r--r--src/net/eathena/beinghandler.cpp6
-rw-r--r--src/net/tmwa/beinghandler.cpp6
4 files changed, 20 insertions, 4 deletions
diff --git a/src/net/ea/beinghandler.cpp b/src/net/ea/beinghandler.cpp
index 5a3ca3cc7..d8fd49fe2 100644
--- a/src/net/ea/beinghandler.cpp
+++ b/src/net/ea/beinghandler.cpp
@@ -401,7 +401,11 @@ void BeingHandler::processBeingRemove(Net::MessageIn &msg)
if (msg.readInt8() == 1)
{
- dstBeing->setAction(Being::DEAD);
+ if (dstBeing->getCurrentAction() != Being::DEAD)
+ {
+ dstBeing->setAction(Being::DEAD);
+ dstBeing->recalcSpritesOrder();
+ }
if (dstBeing->getName() == "Jack O" && killStats)
killStats->jackoDead(id);
}
diff --git a/src/net/ea/playerhandler.cpp b/src/net/ea/playerhandler.cpp
index aa998158c..b73782d3e 100644
--- a/src/net/ea/playerhandler.cpp
+++ b/src/net/ea/playerhandler.cpp
@@ -443,7 +443,11 @@ void PlayerHandler::processPlayerStatUpdate1(Net::MessageIn &msg)
deathNotice = new OkDialog(_("Message"),
randomDeathMessage(), DIALOG_OK, false);
deathNotice->addActionListener(&deathListener);
- player_node->setAction(Being::DEAD);
+ if (player_node->getCurrentAction() != Being::DEAD)
+ {
+ player_node->setAction(Being::DEAD);
+ player_node->recalcSpritesOrder();
+ }
}
}
diff --git a/src/net/eathena/beinghandler.cpp b/src/net/eathena/beinghandler.cpp
index 1af410632..cfe90f198 100644
--- a/src/net/eathena/beinghandler.cpp
+++ b/src/net/eathena/beinghandler.cpp
@@ -586,7 +586,11 @@ void BeingHandler::processPlayerMoveUpdate(Net::MessageIn &msg, int msgType)
break;
case 1:
- dstBeing->setAction(Being::DEAD);
+ if (dstBeing->getCurrentAction() != Being::DEAD)
+ {
+ dstBeing->setAction(Being::DEAD);
+ dstBeing->recalcSpritesOrder();
+ }
break;
case 2:
diff --git a/src/net/tmwa/beinghandler.cpp b/src/net/tmwa/beinghandler.cpp
index 9a2827ee5..a4ab0f48b 100644
--- a/src/net/tmwa/beinghandler.cpp
+++ b/src/net/tmwa/beinghandler.cpp
@@ -600,7 +600,11 @@ void BeingHandler::processPlayerMoveUpdate(Net::MessageIn &msg, int msgType)
break;
case 1:
- dstBeing->setAction(Being::DEAD);
+ if (dstBeing->getCurrentAction() != Being::DEAD)
+ {
+ dstBeing->setAction(Being::DEAD);
+ dstBeing->recalcSpritesOrder();
+ }
break;
case 2: