aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRob Blanckaert <rob@withpiper.com>2017-10-22 11:41:57 -0700
committersfan5 <sfan5@live.de>2017-12-25 15:00:25 +0100
commit787cd15c14b65f50b06c6b9ccecf28e937318430 (patch)
treee1af40e2921627460a6cb0b8ce28f42925531659
parent8037eda42c89dbc81e99199c2ae49309a9439ac3 (diff)
downloadminetest-787cd15c14b65f50b06c6b9ccecf28e937318430.tar.gz
minetest-787cd15c14b65f50b06c6b9ccecf28e937318430.tar.bz2
minetest-787cd15c14b65f50b06c6b9ccecf28e937318430.zip
- Clear colors when reading property info.
- Set vertex colors on upright_sprites.
-rw-r--r--src/content_cao.cpp2
-rw-r--r--src/object_properties.cpp1
2 files changed, 3 insertions, 0 deletions
diff --git a/src/content_cao.cpp b/src/content_cao.cpp
index 9d87c733e..a8b4ae2e1 100644
--- a/src/content_cao.cpp
+++ b/src/content_cao.cpp
@@ -1134,10 +1134,12 @@ void GenericCAO::updateTextures(std::string mod)
buf->getMaterial().AmbientColor = m_prop.colors[1];
buf->getMaterial().DiffuseColor = m_prop.colors[1];
buf->getMaterial().SpecularColor = m_prop.colors[1];
+ setMeshColor(mesh, m_prop.colors[1]);
} else if (!m_prop.colors.empty()) {
buf->getMaterial().AmbientColor = m_prop.colors[0];
buf->getMaterial().DiffuseColor = m_prop.colors[0];
buf->getMaterial().SpecularColor = m_prop.colors[0];
+ setMeshColor(mesh, m_prop.colors[0]);
}
buf->getMaterial().setFlag(video::EMF_TRILINEAR_FILTER, use_trilinear_filter);
diff --git a/src/object_properties.cpp b/src/object_properties.cpp
index 26a19a082..e330bc24a 100644
--- a/src/object_properties.cpp
+++ b/src/object_properties.cpp
@@ -145,6 +145,7 @@ void ObjectProperties::deSerialize(std::istream &is)
makes_footstep_sound = readU8(is);
automatic_rotate = readF1000(is);
mesh = deSerializeString(is);
+ colors.clear();
u32 color_count = readU16(is);
for (u32 i = 0; i < color_count; i++){
colors.push_back(readARGB8(is));