summaryrefslogtreecommitdiff
path: root/SpriteObjects.cpp
diff options
context:
space:
mode:
authorPetr Mrázek2011-07-22 00:45:54 +0000
committerPetr Mrázek2011-07-22 00:45:54 +0000
commitbf89e3ad6b98442dca909e327b80c5e292db6092 (patch)
tree27f28ac93518f26fd099bf07340e9d7fe9f11f1c /SpriteObjects.cpp
parent650c5593bfd90afc93720b06fe74ee4ec7abf73e (diff)
downloadstonesense-bf89e3ad6b98442dca909e327b80c5e292db6092.tar.gz
stonesense-bf89e3ad6b98442dca909e327b80c5e292db6092.tar.bz2
stonesense-bf89e3ad6b98442dca909e327b80c5e292db6092.tar.xz
Update stonesense for current dfhack, make sure it's buildable as a plugin.
Diffstat (limited to 'SpriteObjects.cpp')
-rw-r--r--SpriteObjects.cpp15
1 files changed, 9 insertions, 6 deletions
diff --git a/SpriteObjects.cpp b/SpriteObjects.cpp
index 4445578..c598696 100644
--- a/SpriteObjects.cpp
+++ b/SpriteObjects.cpp
@@ -831,20 +831,23 @@ ALLEGRO_COLOR c_sprite::get_color(void* block)
dayofLife = b->creature->birth_year*12*28 + b->creature->birth_time/1200;
if((!config.skipCreatureTypes) && (!config.skipCreatureTypesEx) && (!config.skipDescriptorColors))
{
+ t_creaturecaste & caste = contentLoader.Mats->raceEx[b->creature->race].castes[b->creature->caste];
+ std::vector<t_colormodifier> & colormods =caste.ColorModifier;
for(unsigned int j = 0; j<b->creature->nbcolors ; j++)
{
- if(strcmp(contentLoader.Mats->raceEx[b->creature->race].castes[b->creature->caste].ColorModifier[j].part, bodypart) == 0)
+ t_colormodifier & colormod = colormods[j];
+ if(colormods[j].part == bodypart)
{
- if(contentLoader.Mats->raceEx.at(b->creature->race).castes.at(b->creature->caste).ColorModifier.at(j).colorlist.size() > b->creature->color[j])
+ if(colormods[j].colorlist.size() > b->creature->color[j])
{
- uint32_t cr_color = contentLoader.Mats->raceEx.at(b->creature->race).castes.at(b->creature->caste).ColorModifier.at(j).colorlist.at(b->creature->color[j]);
+ uint32_t cr_color = colormod.colorlist.at(b->creature->color[j]);
if(cr_color < contentLoader.Mats->color.size())
{
- if(contentLoader.Mats->raceEx[b->creature->race].castes[b->creature->caste].ColorModifier[j].startdate > 0)
+ if(colormod.startdate > 0)
{
- if((contentLoader.Mats->raceEx[b->creature->race].castes[b->creature->caste].ColorModifier[j].startdate <= dayofLife) &&
- (contentLoader.Mats->raceEx[b->creature->race].castes[b->creature->caste].ColorModifier[j].enddate > dayofLife))
+ if((colormod.startdate <= dayofLife) &&
+ (colormod.enddate > dayofLife))
{
return al_map_rgb_f(
contentLoader.Mats->color[cr_color].red,