summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrei Karas <akaras@inbox.ru>2015-01-04 17:56:56 +0300
committerAndrei Karas <akaras@inbox.ru>2015-01-04 17:56:56 +0300
commitfa2383b7cb1fb53c2411af6bd04c4dbda4c7d3cb (patch)
tree1ccb15b3076cccc671f1a4fb351845e1f19d4003
parentd0adcf0e3c8a1db5e06bbbb8ae950ea5ebeeb8eb (diff)
downloadplus-fa2383b7cb1fb53c2411af6bd04c4dbda4c7d3cb.tar.gz
plus-fa2383b7cb1fb53c2411af6bd04c4dbda4c7d3cb.tar.bz2
plus-fa2383b7cb1fb53c2411af6bd04c4dbda4c7d3cb.tar.xz
plus-fa2383b7cb1fb53c2411af6bd04c4dbda4c7d3cb.zip
eathena: allow set race in char creation dialog.
-rw-r--r--src/net/eathena/charserverhandler.cpp3
-rw-r--r--src/net/eathena/serverfeatures.cpp2
2 files changed, 4 insertions, 1 deletions
diff --git a/src/net/eathena/charserverhandler.cpp b/src/net/eathena/charserverhandler.cpp
index 4bb2c6533..49cde4480 100644
--- a/src/net/eathena/charserverhandler.cpp
+++ b/src/net/eathena/charserverhandler.cpp
@@ -36,6 +36,7 @@
#include "net/character.h"
#include "net/logindata.h"
+#include "net/serverfeatures.h"
#include "net/eathena/gamehandler.h"
#include "net/eathena/loginhandler.h"
@@ -280,6 +281,8 @@ void CharServerHandler::newCharacter(const std::string &name, const int slot,
outMsg.writeInt8(static_cast<unsigned char>(slot), "slot");
outMsg.writeInt16(static_cast<int16_t>(hairColor), "hair color");
outMsg.writeInt16(static_cast<int16_t>(hairstyle), "hair style");
+ if (serverFeatures->haveRaceSelection())
+ outMsg.writeInt16(static_cast<int16_t>(race), "race");
}
void CharServerHandler::deleteCharacter(Net::Character *const character)
diff --git a/src/net/eathena/serverfeatures.cpp b/src/net/eathena/serverfeatures.cpp
index f787c638f..fca96cc4f 100644
--- a/src/net/eathena/serverfeatures.cpp
+++ b/src/net/eathena/serverfeatures.cpp
@@ -87,7 +87,7 @@ bool ServerFeatures::haveIncompleteChatMessages() const
bool ServerFeatures::haveRaceSelection() const
{
- return false;
+ return serverVersion >= 4;
}
bool ServerFeatures::haveLookSelection() const