summaryrefslogtreecommitdiff
path: root/src/net/beinghandler.cpp
diff options
context:
space:
mode:
authorIra Rice <irarice@gmail.com>2008-11-02 00:33:31 +0000
committerIra Rice <irarice@gmail.com>2008-11-02 00:33:31 +0000
commit5cf18a062ffca03196b83fe6fda8ea3e54079c57 (patch)
tree00fa520012a6ed4a0fee66a1d65364bf81ccaeb5 /src/net/beinghandler.cpp
parent494e35cda96863f676409d304a916d9308040eab (diff)
downloadmana-client-5cf18a062ffca03196b83fe6fda8ea3e54079c57.tar.gz
mana-client-5cf18a062ffca03196b83fe6fda8ea3e54079c57.tar.bz2
mana-client-5cf18a062ffca03196b83fe6fda8ea3e54079c57.tar.xz
mana-client-5cf18a062ffca03196b83fe6fda8ea3e54079c57.zip
Ported a patch from TMW by fate which de-hardcodes skills, as well as removes the server sending out view id's for
gloves and boots (which weren't needed.) Here's the full log: * Updated GUI table and model to better handle NULL widgets during initialisation * On SMSG_MOVE et al., ignore boots and glove information-- that information is incorrect and we're guaranteed to already have the correct information anyway. * Properly decode `is dead' information for PCs, so that dead players, when encountered, will be lying on the ground, dead, rather than standing. * Use `skills.xml' file from client data to determine skill names * Report client version number (hereby bumped to 1) in unused charserver slot (ignored by vanilla eAthena)
Diffstat (limited to 'src/net/beinghandler.cpp')
-rw-r--r--src/net/beinghandler.cpp14
1 files changed, 10 insertions, 4 deletions
diff --git a/src/net/beinghandler.cpp b/src/net/beinghandler.cpp
index 85e18e5a..f19fd39c 100644
--- a/src/net/beinghandler.cpp
+++ b/src/net/beinghandler.cpp
@@ -406,8 +406,8 @@ void BeingHandler::handleMessage(MessageIn *msg)
headTop = msg->readInt16();
headMid = msg->readInt16();
hairColor = msg->readInt16();
- shoes = msg->readInt16();
- gloves = msg->readInt16();
+ msg->readInt16(); // clothes color
+ msg->readInt16(); // head direction
msg->readInt32(); // guild
msg->readInt32(); // emblem
msg->readInt16(); // manner
@@ -450,9 +450,15 @@ void BeingHandler::handleMessage(MessageIn *msg)
if (msg->getId() == SMSG_PLAYER_UPDATE_1)
{
- if (msg->readInt8() == 2)
+ switch (msg->readInt8())
{
- dstBeing->setAction(Being::SIT);
+ case 1:
+ dstBeing->setAction(Being::DEAD);
+ break;
+
+ case 2:
+ dstBeing->setAction(Being::SIT);
+ break;
}
}
else if (msg->getId() == SMSG_PLAYER_MOVE)