summaryrefslogtreecommitdiff
path: root/src/net/tmwa/charserverhandler.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/net/tmwa/charserverhandler.cpp')
-rw-r--r--src/net/tmwa/charserverhandler.cpp12
1 files changed, 8 insertions, 4 deletions
diff --git a/src/net/tmwa/charserverhandler.cpp b/src/net/tmwa/charserverhandler.cpp
index 773a9d060..10be5edf8 100644
--- a/src/net/tmwa/charserverhandler.cpp
+++ b/src/net/tmwa/charserverhandler.cpp
@@ -159,7 +159,8 @@ void CharServerHandler::readPlayerData(Net::MessageIn &msg,
msg.readInt16(); // speed
tempPlayer->setSubtype(msg.readInt16()); // class (used for race)
- const int hairStyle = msg.readInt16();
+ const int hairStyle = msg.readInt8();
+ msg.readInt8(); // free
const uint16_t weapon = msg.readInt16(); // unused on server. need use?
tempPlayer->setSprite(SPRITE_WEAPON, weapon, "", 1, true);
@@ -172,9 +173,10 @@ void CharServerHandler::readPlayerData(Net::MessageIn &msg,
const int hat = msg.readInt16(); // head option top
const int topClothes = msg.readInt16();
- int hairColor = msg.readInt16();
+ int hairColor = msg.readInt8();
if (hairColor > 255)
hairColor = 255;
+ msg.readInt8(); // free
tempPlayer->setSprite(SPRITE_HAIR, hairStyle * -1,
ItemDB::get(-hairStyle).getDyeColorsString(hairColor));
tempPlayer->setHairColor(static_cast<unsigned char>(hairColor));
@@ -253,8 +255,10 @@ void CharServerHandler::newCharacter(const std::string &name, const int slot,
outMsg.writeInt8(static_cast<unsigned char>(stats[i]));
outMsg.writeInt8(static_cast<unsigned char>(slot));
- outMsg.writeInt16(static_cast<int16_t>(hairColor));
- outMsg.writeInt16(static_cast<int16_t>(hairstyle));
+ outMsg.writeInt8(static_cast<int8_t>(hairColor));
+ outMsg.writeInt8(0); // unused
+ outMsg.writeInt8(static_cast<int8_t>(hairstyle));
+ outMsg.writeInt8(0); // unused
if (serverVersion >= 2)
outMsg.writeInt8(race);
}