diff options
author | Erik Schilling <ablu.erikschilling@googlemail.com> | 2012-10-11 20:12:07 +0200 |
---|---|---|
committer | Erik Schilling <ablu.erikschilling@googlemail.com> | 2012-10-11 20:26:15 +0200 |
commit | acaab21e301cb91b1098db311bdd9ce66ab678dd (patch) | |
tree | 445c7134c3fd162177a03d490d426bee9547eeb9 /src/net/manaserv/beinghandler.cpp | |
parent | 03a14c66c3ad45cc6fed417a78e9f4648f1df073 (diff) | |
download | mana-acaab21e301cb91b1098db311bdd9ce66ab678dd.tar.gz mana-acaab21e301cb91b1098db311bdd9ce66ab678dd.tar.bz2 mana-acaab21e301cb91b1098db311bdd9ce66ab678dd.tar.xz mana-acaab21e301cb91b1098db311bdd9ce66ab678dd.zip |
Client side patch for change of sending order of gender
Reviewed-by: Stefan Beller.
Diffstat (limited to 'src/net/manaserv/beinghandler.cpp')
-rw-r--r-- | src/net/manaserv/beinghandler.cpp | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/src/net/manaserv/beinghandler.cpp b/src/net/manaserv/beinghandler.cpp index b744e53c..52f6dab4 100644 --- a/src/net/manaserv/beinghandler.cpp +++ b/src/net/manaserv/beinghandler.cpp @@ -117,6 +117,14 @@ void BeingHandler::handleBeingEnterMessage(MessageIn &msg) int px = msg.readInt16(); int py = msg.readInt16(); BeingDirection direction = (BeingDirection)msg.readInt8(); + Gender gender; + int genderAsInt = msg.readInt8(); + if (genderAsInt == ::GENDER_FEMALE) + gender = ::GENDER_FEMALE; + else if (genderAsInt == ::GENDER_MALE) + gender = ::GENDER_MALE; + else + gender = ::GENDER_UNSPECIFIED; Being *being; switch (type) @@ -138,8 +146,6 @@ void BeingHandler::handleBeingEnterMessage(MessageIn &msg) int hs = msg.readInt8(), hc = msg.readInt8(); being->setSprite(SPRITE_LAYER_HAIR, hs * -1, hairDB.getHairColor(hc)); - being->setGender(msg.readInt8() == ManaServ::GENDER_MALE ? - ::GENDER_MALE : ::GENDER_FEMALE); handleLooks(being, msg); } break; @@ -151,8 +157,6 @@ void BeingHandler::handleBeingEnterMessage(MessageIn &msg) ? ActorSprite::MONSTER : ActorSprite::NPC, subtype); std::string name = msg.readString(); if (name.length() > 0) being->setName(name); - being->setGender(msg.readInt8() == ManaServ::GENDER_MALE ? - ::GENDER_MALE : ::GENDER_FEMALE); } break; default: @@ -163,6 +167,7 @@ void BeingHandler::handleBeingEnterMessage(MessageIn &msg) being->setDestination(px, py); being->setDirection(direction); being->setAction(action); + being->setGender(gender); } void BeingHandler::handleBeingLeaveMessage(MessageIn &msg) |