summaryrefslogtreecommitdiff
path: root/src/actormanager.cpp
diff options
context:
space:
mode:
authorAndrei Karas <akaras@inbox.ru>2016-05-27 23:28:11 +0300
committerAndrei Karas <akaras@inbox.ru>2016-05-27 23:28:11 +0300
commitf6e76f469a81ff2d9e3714d39d1a8f4012cda2b8 (patch)
treecf512c32dbc37283ce8c16901fb4df0082508d28 /src/actormanager.cpp
parentcd327e877804a824db51d1e0831ad9e13b0e18b3 (diff)
downloadmanaplus-f6e76f469a81ff2d9e3714d39d1a8f4012cda2b8.tar.gz
manaplus-f6e76f469a81ff2d9e3714d39d1a8f4012cda2b8.tar.bz2
manaplus-f6e76f469a81ff2d9e3714d39d1a8f4012cda2b8.tar.xz
manaplus-f6e76f469a81ff2d9e3714d39d1a8f4012cda2b8.zip
Fix some false positive asserts in working with hair style equal to zero.
Diffstat (limited to 'src/actormanager.cpp')
-rw-r--r--src/actormanager.cpp12
1 files changed, 10 insertions, 2 deletions
diff --git a/src/actormanager.cpp b/src/actormanager.cpp
index 020d3a9f5..82be50ea8 100644
--- a/src/actormanager.cpp
+++ b/src/actormanager.cpp
@@ -2043,8 +2043,16 @@ Being *ActorManager::cloneBeing(const Being *const srcBeing,
const int hairSlot = charServerHandler->hairSprite();
const int hairStyle = -srcBeing->getSpriteID(hairSlot);
const ItemColor hairColor = srcBeing->getHairColor();
- dstBeing->setSprite(hairSlot, hairStyle * -1,
- ItemDB::get(-hairStyle).getDyeColorsString(hairColor));
+ if (hairStyle != 0)
+ {
+ dstBeing->setSprite(hairSlot,
+ hairStyle * -1,
+ ItemDB::get(-hairStyle).getDyeColorsString(hairColor));
+ }
+ else
+ {
+ dstBeing->setSprite(hairSlot, 0, std::string());
+ }
dstBeing->setHairColor(hairColor);
return dstBeing;
}