diff options
author | Andrei Karas <akaras@inbox.ru> | 2012-05-31 17:31:46 +0300 |
---|---|---|
committer | Andrei Karas <akaras@inbox.ru> | 2012-05-31 17:31:46 +0300 |
commit | 02677a3b9b3abefb84e24023697466c892c6ded4 (patch) | |
tree | 4e563d4fb0af1a8fb8e99a5b97c58281a21d3182 /src/net | |
parent | d4e5b8fb2b9b72e750845b874f3e60d3aea31543 (diff) | |
download | manaplus-02677a3b9b3abefb84e24023697466c892c6ded4.tar.gz manaplus-02677a3b9b3abefb84e24023697466c892c6ded4.tar.bz2 manaplus-02677a3b9b3abefb84e24023697466c892c6ded4.tar.xz manaplus-02677a3b9b3abefb84e24023697466c892c6ded4.zip |
Add support for each hair style own palete.
Diffstat (limited to 'src/net')
-rw-r--r-- | src/net/ea/beinghandler.cpp | 4 | ||||
-rw-r--r-- | src/net/tmwa/beinghandler.cpp | 8 | ||||
-rw-r--r-- | src/net/tmwa/charserverhandler.cpp | 4 |
3 files changed, 11 insertions, 5 deletions
diff --git a/src/net/ea/beinghandler.cpp b/src/net/ea/beinghandler.cpp index a773ef0b1..1e73f5670 100644 --- a/src/net/ea/beinghandler.cpp +++ b/src/net/ea/beinghandler.cpp @@ -50,6 +50,8 @@ #include "net/net.h" #include "resources/colordb.h" +#include "resources/itemdb.h" +#include "resources/iteminfo.h" #include <iostream> @@ -264,7 +266,7 @@ void BeingHandler::processBeingVisibleOrMove(Net::MessageIn &msg, bool visible) dstBeing->setGender(Being::intToGender(gender)); // Set these after the gender, as the sprites may be gender-specific setSprite(dstBeing, EA_SPRITE_HAIR, hairStyle * -1, - ColorDB::getHairColor(hairColor)); + ItemDB::get(-hairStyle).getDyeColorsString(hairColor)); setSprite(dstBeing, EA_SPRITE_BOTTOMCLOTHES, headBottom); setSprite(dstBeing, EA_SPRITE_TOPCLOTHES, headMid); setSprite(dstBeing, EA_SPRITE_HAT, headTop); diff --git a/src/net/tmwa/beinghandler.cpp b/src/net/tmwa/beinghandler.cpp index 5eb02d299..61924f1f4 100644 --- a/src/net/tmwa/beinghandler.cpp +++ b/src/net/tmwa/beinghandler.cpp @@ -49,6 +49,8 @@ #include "net/tmwa/protocol.h" #include "resources/colordb.h" +#include "resources/itemdb.h" +#include "resources/iteminfo.h" #include <iostream> @@ -325,8 +327,8 @@ void BeingHandler::processBeingChangeLook(Net::MessageIn &msg, bool look2) player_node->imitateOutfit(dstBeing, SPRITE_TOPCLOTHES); break; case 6: // eAthena LOOK_HAIR_COLOR - dstBeing->setSpriteColor(SPRITE_HAIR, - ColorDB::getHairColor(id)); + dstBeing->setSpriteColor(SPRITE_HAIR, ItemDB::get( + dstBeing->getSpriteID(SPRITE_HAIR)).getDyeColorsString(id)); break; case 7: // Clothes color // ignoring it @@ -540,7 +542,7 @@ void BeingHandler::processPlayerMoveUpdate(Net::MessageIn &msg, int msgType) //dstBeing->setSprite(SPRITE_MISC1, misc1); //dstBeing->setSprite(SPRITE_MISC2, misc2); dstBeing->setSprite(SPRITE_HAIR, hairStyle * -1, - ColorDB::getHairColor(hairColor)); + ItemDB::get(-hairStyle).getDyeColorsString(hairColor)); player_node->imitateOutfit(dstBeing); diff --git a/src/net/tmwa/charserverhandler.cpp b/src/net/tmwa/charserverhandler.cpp index 04274a70b..e18c33a5a 100644 --- a/src/net/tmwa/charserverhandler.cpp +++ b/src/net/tmwa/charserverhandler.cpp @@ -38,6 +38,8 @@ #include "net/tmwa/protocol.h" #include "resources/colordb.h" +#include "resources/itemdb.h" +#include "resources/iteminfo.h" #include "utils/dtor.h" @@ -214,7 +216,7 @@ void CharServerHandler::readPlayerData(Net::MessageIn &msg, int topClothes = msg.readInt16(); tempPlayer->setSprite(SPRITE_HAIR, hairStyle * -1, - ColorDB::getHairColor(msg.readInt16())); + ItemDB::get(-hairStyle).getDyeColorsString(msg.readInt16())); int misc2 = msg.readInt16(); tempPlayer->setName(msg.readString(24)); |