summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorXienDev <XienDev@gmail.com>2013-04-29 13:51:37 +0300
committerXienDev <XienDev@gmail.com>2013-04-29 13:51:37 +0300
commit658ebe015f98b8f11f8d46110b5e089323f7d8cb (patch)
tree04fd8d67ae89e2635a05dd51ac98f23ed7d89f85
parentfc28a8e8406e4b5fd810a09ed3b9524af8d69482 (diff)
downloadcolobot-658ebe015f98b8f11f8d46110b5e089323f7d8cb.tar.gz
colobot-658ebe015f98b8f11f8d46110b5e089323f7d8cb.tar.bz2
colobot-658ebe015f98b8f11f8d46110b5e089323f7d8cb.zip
Fix for shadows (bugs #176 and #132)
-rw-r--r--src/graphics/engine/engine.cpp2
-rw-r--r--src/object/motion/motionvehicle.cpp1
2 files changed, 2 insertions, 1 deletions
diff --git a/src/graphics/engine/engine.cpp b/src/graphics/engine/engine.cpp
index 274e179..5d77e29 100644
--- a/src/graphics/engine/engine.cpp
+++ b/src/graphics/engine/engine.cpp
@@ -3651,7 +3651,7 @@ void CEngine::DrawShadow()
float lastIntensity = -1.0f;
for (int i = 0; i < static_cast<int>( m_shadows.size() ); i++)
{
- if (m_shadows[i].hide)
+ if (m_shadows[i].hide || !m_shadows[i].used)
continue;
Math::Vector pos = m_shadows[i].pos; // pos = center of the shadow on the ground
diff --git a/src/object/motion/motionvehicle.cpp b/src/object/motion/motionvehicle.cpp
index 44b8fdd..2eed83e 100644
--- a/src/object/motion/motionvehicle.cpp
+++ b/src/object/motion/motionvehicle.cpp
@@ -931,6 +931,7 @@ bool CMotionVehicle::Create(Math::Vector pos, float angle, ObjectType type,
rank = m_engine->CreateObject();
m_engine->SetObjectType(rank, Gfx::ENG_OBJTYPE_FIX);
pPower->SetObjectRank(0, rank);
+ pPower->CreateShadowCircle(1.5f, 1.0f); //create a shadow for battary
if ( power <= 1.0f ) modelManager->AddModelCopy("power.mod", false, rank);
else modelManager->AddModelCopy("atomic.mod", false, rank);