summaryrefslogtreecommitdiffstats
path: root/src/object/task
diff options
context:
space:
mode:
authorPiotr Dziwinski <piotrdz@gmail.com>2013-06-24 21:37:15 +0200
committerPiotr Dziwinski <piotrdz@gmail.com>2013-06-24 21:37:15 +0200
commit7c2e955e1552a9c4e412ea2c936be61fc78ba010 (patch)
treeee506dfbec54f998d10c385bde3a1c3fa04e66b2 /src/object/task
parente218dcfdf2c58f8841e7ebd220527d08e870a6d5 (diff)
parentb376486fd74fa02b0297ceef6d0f977b32358e5e (diff)
downloadcolobot-7c2e955e1552a9c4e412ea2c936be61fc78ba010.tar.gz
colobot-7c2e955e1552a9c4e412ea2c936be61fc78ba010.tar.bz2
colobot-7c2e955e1552a9c4e412ea2c936be61fc78ba010.zip
Colobot Gold 0.1.0-alpha
Diffstat (limited to 'src/object/task')
-rw-r--r--src/object/task/task.cpp1
-rw-r--r--src/object/task/task.h4
-rw-r--r--src/object/task/taskadvance.cpp1
-rw-r--r--src/object/task/taskbuild.cpp2
-rw-r--r--src/object/task/taskgoto.cpp24
-rw-r--r--src/object/task/taskmanager.cpp1
-rw-r--r--src/object/task/tasksearch.cpp8
-rw-r--r--src/object/task/taskshield.cpp2
-rw-r--r--src/object/task/tasktake.cpp1
-rw-r--r--src/object/task/taskturn.cpp1
-rw-r--r--src/object/task/taskwait.cpp1
11 files changed, 18 insertions, 28 deletions
diff --git a/src/object/task/task.cpp b/src/object/task/task.cpp
index 39fdccf..5ec6f8a 100644
--- a/src/object/task/task.cpp
+++ b/src/object/task/task.cpp
@@ -81,4 +81,3 @@ bool CTask::Abort()
return true;
}
-
diff --git a/src/object/task/task.h b/src/object/task/task.h
index 12961ef..41b3d3b 100644
--- a/src/object/task/task.h
+++ b/src/object/task/task.h
@@ -34,7 +34,7 @@ class CSoundInterface;
namespace Ui {
class CDisplayText;
-} /* Ui */
+} /* Ui */
namespace Gfx {
class CEngine;
@@ -43,7 +43,7 @@ class CParticle;
class CTerrain;
class CWater;
class CCamera;
-} /* Gfx */
+} /* Gfx */
const float TAKE_DIST = 6.0f; // distance to an object to pick it
diff --git a/src/object/task/taskadvance.cpp b/src/object/task/taskadvance.cpp
index 58eb939..885e100 100644
--- a/src/object/task/taskadvance.cpp
+++ b/src/object/task/taskadvance.cpp
@@ -139,4 +139,3 @@ Error CTaskAdvance::IsEnded()
return ERR_CONTINUE;
}
-
diff --git a/src/object/task/taskbuild.cpp b/src/object/task/taskbuild.cpp
index b9af475..39479a6 100644
--- a/src/object/task/taskbuild.cpp
+++ b/src/object/task/taskbuild.cpp
@@ -557,7 +557,7 @@ Error CTaskBuild::FlatFloor()
ObjectType type;
Math::Vector center, pos, oPos, bPos;
Math::Point c, p;
- float radius, max, oRadius, bRadius, angle, dist;
+ float radius, max, oRadius, bRadius = 0.0f, angle, dist;
int i, j;
bool bLittleFlat, bBase;
diff --git a/src/object/task/taskgoto.cpp b/src/object/task/taskgoto.cpp
index c4a2939..01ff38b 100644
--- a/src/object/task/taskgoto.cpp
+++ b/src/object/task/taskgoto.cpp
@@ -90,8 +90,11 @@ bool CTaskGoto::EventProcess(const Event &event)
rot.x = m_leakPos.x-pos.x;
rot.y = m_leakPos.z-pos.z;
dist = Math::Point(rot.x, rot.y).Length();
- rot.x /= dist;
- rot.y /= dist;
+ if (dist != 0)
+ {
+ rot.x /= dist;
+ rot.y /= dist;
+ }
a = m_object->GetAngleY(0);
g = Math::RotateAngle(rot.x, -rot.y); // CW !
@@ -754,7 +757,7 @@ Error CTaskGoto::Start(Math::Vector goal, float altitude,
Error CTaskGoto::IsEnded()
{
Math::Vector pos;
- float limit, angle, dist, h, level;
+ float limit, angle = 0.0f, dist, h, level;
if ( m_engine->GetPause() ) return ERR_CONTINUE;
if ( m_error != ERR_OK ) return m_error;
@@ -1308,16 +1311,6 @@ bool CTaskGoto::GetHotPoint(CObject *pObj, Math::Vector &pos,
return true;
}
- if ( type == OBJECT_DESTROYER )
- {
- mat = pObj->GetWorldMatrix(0);
- pos.x += 0.0f;
- if ( bTake && distance != 0.0f ) suppl = 4.0f;
- if ( bTake ) pos.x += TAKE_DIST+distance+suppl;
- pos = Transform(*mat, pos);
- return true;
- }
-
if ( type == OBJECT_PARA && m_physics->GetType() == TYPE_FLYING )
{
mat = pObj->GetWorldMatrix(0);
@@ -1336,7 +1329,7 @@ bool CTaskGoto::GetHotPoint(CObject *pObj, Math::Vector &pos,
bool CTaskGoto::LeakSearch(Math::Vector &pos, float &delay)
{
- CObject *pObj, *pObstacle;
+ CObject *pObj, *pObstacle = nullptr;
Math::Vector iPos, oPos, bPos;
float iRadius, oRadius, bRadius, dist, min, dir;
int i, j;
@@ -1453,7 +1446,7 @@ void CTaskGoto::ComputeRepulse(Math::Point &dir)
// The worm goes everywhere and through everything!
iType = m_object->GetType();
- if ( iType == OBJECT_WORM ) return;
+ if ( iType == OBJECT_WORM || iType == OBJECT_CONTROLLER ) return;
m_object->GetCrashSphere(0, iPos, iRadius);
gDist = Math::Distance(iPos, m_goal);
@@ -2239,4 +2232,3 @@ bool CTaskGoto::BitmapTestDot(int rank, int x, int y)
return m_bmArray[rank*m_bmLine*m_bmSize + m_bmLine*y + x/8] & (1<<x%8);
}
-
diff --git a/src/object/task/taskmanager.cpp b/src/object/task/taskmanager.cpp
index a2ce8b8..11fba6c 100644
--- a/src/object/task/taskmanager.cpp
+++ b/src/object/task/taskmanager.cpp
@@ -271,4 +271,3 @@ bool CTaskManager::Abort()
return m_task->Abort();
}
-
diff --git a/src/object/task/tasksearch.cpp b/src/object/task/tasksearch.cpp
index b219185..974a53d 100644
--- a/src/object/task/tasksearch.cpp
+++ b/src/object/task/tasksearch.cpp
@@ -218,6 +218,13 @@ Error CTaskSearch::IsEnded()
bool CTaskSearch::Abort()
{
+ m_hand = TSH_UP;
+ InitAngle();
+ for (int i = 0; i < 3; i++)
+ {
+ m_object->SetAngleZ(i+1, m_finalAngle[i]);
+ }
+
m_camera->StopCentering(m_object, 2.0f);
m_physics->SetFreeze(false); // is moving again
return true;
@@ -319,4 +326,3 @@ void CTaskSearch::DeleteMark(ObjectType type)
}
}
-
diff --git a/src/object/task/taskshield.cpp b/src/object/task/taskshield.cpp
index 929dd5c..fe6eaeb 100644
--- a/src/object/task/taskshield.cpp
+++ b/src/object/task/taskshield.cpp
@@ -552,5 +552,3 @@ float CTaskShield::GetRadius()
return RADIUS_SHIELD_MIN + (RADIUS_SHIELD_MAX-RADIUS_SHIELD_MIN)*m_object->GetParam();
}
-
-
diff --git a/src/object/task/tasktake.cpp b/src/object/task/tasktake.cpp
index 0037f85..c7f0530 100644
--- a/src/object/task/tasktake.cpp
+++ b/src/object/task/tasktake.cpp
@@ -598,4 +598,3 @@ bool CTaskTake::IsFreeDeposeObject(Math::Vector pos)
return true; // location free
}
-
diff --git a/src/object/task/taskturn.cpp b/src/object/task/taskturn.cpp
index 7a924cb..bf9d593 100644
--- a/src/object/task/taskturn.cpp
+++ b/src/object/task/taskturn.cpp
@@ -126,4 +126,3 @@ Error CTaskTurn::IsEnded()
return ERR_CONTINUE;
}
-
diff --git a/src/object/task/taskwait.cpp b/src/object/task/taskwait.cpp
index 3e201e0..5b9fdb3 100644
--- a/src/object/task/taskwait.cpp
+++ b/src/object/task/taskwait.cpp
@@ -64,4 +64,3 @@ Error CTaskWait::IsEnded()
return ERR_CONTINUE;
}
-