summaryrefslogtreecommitdiffstats
path: root/src/task.h
diff options
context:
space:
mode:
authoradiblol <adiblol@1tbps.org>2012-03-08 19:32:05 +0100
committeradiblol <adiblol@1tbps.org>2012-03-08 19:32:05 +0100
commita4c804b49ec872b71bd5a0167c3ad45704a3cc30 (patch)
tree8c931235247d662ca46a99695beb328fdfc8e8a8 /src/task.h
downloadcolobot-a4c804b49ec872b71bd5a0167c3ad45704a3cc30.tar.gz
colobot-a4c804b49ec872b71bd5a0167c3ad45704a3cc30.tar.bz2
colobot-a4c804b49ec872b71bd5a0167c3ad45704a3cc30.zip
Initial commit, Copyright (C) 2001-2008, Daniel ROUX & EPSITEC SA, www.epsitec.ch
Diffstat (limited to 'src/task.h')
-rw-r--r--src/task.h70
1 files changed, 70 insertions, 0 deletions
diff --git a/src/task.h b/src/task.h
new file mode 100644
index 0000000..5b6041d
--- /dev/null
+++ b/src/task.h
@@ -0,0 +1,70 @@
+// task.h
+
+#ifndef _TASK_H_
+#define _TASK_H_
+
+
+class CInstanceManager;
+class CD3DEngine;
+class CEngine;
+class CLight;
+class CParticule;
+class CTerrain;
+class CWater;
+class CCamera;
+class CBrain;
+class CPhysics;
+class CMotion;
+class CObject;
+class CRobotMain;
+class CDisplayText;
+class CSound;
+
+
+#define TAKE_DIST 6.0f // distance d'un objet pour le prendre
+#define TAKE_DIST_OTHER 1.5f // distance supplémentaire si sur ami
+
+//?#define ARM_NEUTRAL_ANGLE1 155.0f*PI/180.0f
+//?#define ARM_NEUTRAL_ANGLE2 -125.0f*PI/180.0f
+//?#define ARM_NEUTRAL_ANGLE3 -45.0f*PI/180.0f
+#define ARM_NEUTRAL_ANGLE1 110.0f*PI/180.0f
+#define ARM_NEUTRAL_ANGLE2 -130.0f*PI/180.0f
+#define ARM_NEUTRAL_ANGLE3 -50.0f*PI/180.0f
+
+#define ARM_STOCK_ANGLE1 110.0f*PI/180.0f
+#define ARM_STOCK_ANGLE2 -100.0f*PI/180.0f
+#define ARM_STOCK_ANGLE3 -70.0f*PI/180.0f
+
+
+class CTask
+{
+public:
+ CTask(CInstanceManager* iMan, CObject* object);
+ virtual ~CTask();
+
+ virtual BOOL EventProcess(const Event &event);
+ virtual Error IsEnded();
+ virtual BOOL IsBusy();
+ virtual BOOL Abort();
+
+protected:
+
+protected:
+ CInstanceManager* m_iMan;
+ CD3DEngine* m_engine;
+ CLight* m_light;
+ CParticule* m_particule;
+ CTerrain* m_terrain;
+ CWater* m_water;
+ CCamera* m_camera;
+ CMotion* m_motion;
+ CBrain* m_brain;
+ CPhysics* m_physics;
+ CObject* m_object;
+ CRobotMain* m_main;
+ CDisplayText* m_displayText;
+ CSound* m_sound;
+};
+
+
+#endif //_TASK_H_