diff options
Diffstat (limited to 'src/net/eathena/beinghandler.cpp')
-rw-r--r-- | src/net/eathena/beinghandler.cpp | 64 |
1 files changed, 19 insertions, 45 deletions
diff --git a/src/net/eathena/beinghandler.cpp b/src/net/eathena/beinghandler.cpp index a178a244b..1a5adcaf9 100644 --- a/src/net/eathena/beinghandler.cpp +++ b/src/net/eathena/beinghandler.cpp @@ -1031,21 +1031,7 @@ void BeingHandler::processBeingVisible(Net::MessageIn &msg) } else if (dstBeing->getType() == ActorType::NPC) { - switch (gender) - { - case 2: - dstBeing->setGender(Gender::FEMALE); - break; - case 3: - dstBeing->setGender(Gender::MALE); - break; - case 4: - dstBeing->setGender(Gender::OTHER); - break; - default: - dstBeing->setGender(Gender::UNSPECIFIED); - break; - } + setServerGender(dstBeing, gender); } uint8_t dir; @@ -1208,21 +1194,7 @@ void BeingHandler::processBeingMove(Net::MessageIn &msg) } else if (dstBeing->getType() == ActorType::NPC) { - switch (gender) - { - case 2: - dstBeing->setGender(Gender::FEMALE); - break; - case 3: - dstBeing->setGender(Gender::MALE); - break; - case 4: - dstBeing->setGender(Gender::OTHER); - break; - default: - dstBeing->setGender(Gender::UNSPECIFIED); - break; - } + setServerGender(dstBeing, gender); } uint16_t srcX, srcY, dstX, dstY; @@ -1387,21 +1359,7 @@ void BeingHandler::processBeingSpawn(Net::MessageIn &msg) } else if (dstBeing->getType() == ActorType::NPC) { - switch (gender) - { - case 2: - dstBeing->setGender(Gender::FEMALE); - break; - case 3: - dstBeing->setGender(Gender::MALE); - break; - case 4: - dstBeing->setGender(Gender::OTHER); - break; - default: - dstBeing->setGender(Gender::UNSPECIFIED); - break; - } + setServerGender(dstBeing, gender); } uint8_t dir; @@ -1685,4 +1643,20 @@ void BeingHandler::processBeingChangeDirection(Net::MessageIn &msg) const BLOCK_END("BeingHandler::processBeingChangeDirection") } +void BeingHandler::setServerGender(Being *const being, const uint8_t gender) +{ + switch (gender) + { + case 2: + being->setGender(Gender::FEMALE); + break; + case 3: + being->setGender(Gender::MALE); + break; + default: + being->setGender(Gender::UNSPECIFIED); + break; + } +} + } // namespace EAthena |