aboutsummaryrefslogtreecommitdiff
path: root/engines/bladerunner/movement_track.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'engines/bladerunner/movement_track.cpp')
-rw-r--r--engines/bladerunner/movement_track.cpp169
1 files changed, 86 insertions, 83 deletions
diff --git a/engines/bladerunner/movement_track.cpp b/engines/bladerunner/movement_track.cpp
index 01dff24422..0913e77fa2 100644
--- a/engines/bladerunner/movement_track.cpp
+++ b/engines/bladerunner/movement_track.cpp
@@ -23,102 +23,105 @@
#include "bladerunner/movement_track.h"
namespace BladeRunner {
- MovementTrack::MovementTrack()
- {
- reset();
- }
- MovementTrack::~MovementTrack()
- {
- reset();
- }
+MovementTrack::MovementTrack()
+{
+ reset();
+}
- void MovementTrack::reset()
- {
- _currentIndex = -1;
- _lastIndex = -1;
- _hasNext = 0;
- _paused = 0;
- for (int i = 0; i < 100; i++)
- {
- _entries[i].waypointId = -1;
- _entries[i].delay = -1;
- _entries[i].angle = -1;
- _entries[i].running = 0;
- }
- }
+MovementTrack::~MovementTrack()
+{
+ reset();
+}
- int MovementTrack::append(int waypointId, int delay, int running)
+void MovementTrack::reset()
+{
+ _currentIndex = -1;
+ _lastIndex = -1;
+ _hasNext = 0;
+ _paused = 0;
+ for (int i = 0; i < 100; i++)
{
- return append(waypointId, delay, -1, running);
+ _entries[i].waypointId = -1;
+ _entries[i].delay = -1;
+ _entries[i].angle = -1;
+ _entries[i].running = 0;
}
+}
- int MovementTrack::append(int waypointId, int delay, int angle, int running)
- {
- if (_lastIndex > sizeof(_entries))
- return 0;
- _entries[_lastIndex].waypointId = waypointId;
- _entries[_lastIndex].delay = delay;
- _entries[_lastIndex].angle = angle;
- _entries[_lastIndex].running = running;
-
- _lastIndex++;
- _hasNext = 1;
- _currentIndex = 0;
- return 1;
- }
+int MovementTrack::append(int waypointId, int delay, int running)
+{
+ return append(waypointId, delay, -1, running);
+}
- void MovementTrack::flush()
- {
- reset();
- }
+int MovementTrack::append(int waypointId, int delay, int angle, int running)
+{
+ if (_lastIndex > ARRAYSIZE(_entries))
+ return 0;
- void MovementTrack::repeat()
- {
- _currentIndex = 0;
- _hasNext = 1;
- }
+ _entries[_lastIndex].waypointId = waypointId;
+ _entries[_lastIndex].delay = delay;
+ _entries[_lastIndex].angle = angle;
+ _entries[_lastIndex].running = running;
- int MovementTrack::pause()
- {
- _paused = 1;
- return 1;
- }
+ _lastIndex++;
+ _hasNext = 1;
+ _currentIndex = 0;
+ return 1;
+}
- int MovementTrack::unpause()
- {
- _paused = 0;
- return 1;
- }
+void MovementTrack::flush()
+{
+ reset();
+}
- int MovementTrack::isPaused()
- {
- return _paused;
- }
+void MovementTrack::repeat()
+{
+ _currentIndex = 0;
+ _hasNext = 1;
+}
+
+int MovementTrack::pause()
+{
+ _paused = 1;
+ return 1;
+}
- int MovementTrack::hasNext()
+int MovementTrack::unpause()
+{
+ _paused = 0;
+ return 1;
+}
+
+int MovementTrack::isPaused()
+{
+ return _paused;
+}
+
+int MovementTrack::hasNext()
+{
+ return _hasNext;
+}
+
+int MovementTrack::next(int *waypointId, int *delay, int *angle, int *running)
+{
+ if (_currentIndex < _lastIndex && this->_hasNext)
{
- return _hasNext;
+ *waypointId = _entries[_currentIndex].waypointId;
+ *delay = _entries[_currentIndex].delay;
+ *angle = _entries[_currentIndex].angle;
+ *running = _entries[_currentIndex++].running;
+ return 1;
}
-
- int MovementTrack::next(int *waypointId, int *delay, int *angle, int *running)
+ else
{
- if (_currentIndex < _lastIndex && this->_hasNext)
- {
- *waypointId = _entries[_currentIndex].waypointId;
- *delay = _entries[_currentIndex].delay;
- *angle = _entries[_currentIndex].angle;
- *running = _entries[_currentIndex++].running;
- return 1;
- }
- else
- {
- *waypointId = -1;
- *delay = -1;
- *angle = -1;
- *running = 0;
- _hasNext = 0;
- return 0;
- }
+ *waypointId = -1;
+ *delay = -1;
+ *angle = -1;
+ *running = 0;
+ _hasNext = 0;
+ return 0;
}
-} \ No newline at end of file
+}
+
+} // End of namespace BladeRunner