aboutsummaryrefslogtreecommitdiff
path: root/engines/bladerunner/actor.h
diff options
context:
space:
mode:
authorPeter Kohaut2017-04-01 08:56:30 +0200
committerPeter Kohaut2017-04-01 08:57:57 +0200
commit1740c490d710ec01d41c0b248eb43b782f383705 (patch)
tree5ebdd10e3ad59751889ca92d0cd630e097857d0a /engines/bladerunner/actor.h
parent25fcb52d7017b49d4f17542aa99be9504fd04db2 (diff)
downloadscummvm-rg350-1740c490d710ec01d41c0b248eb43b782f383705.tar.gz
scummvm-rg350-1740c490d710ec01d41c0b248eb43b782f383705.tar.bz2
scummvm-rg350-1740c490d710ec01d41c0b248eb43b782f383705.zip
BLADERUNNER: improvements to the walking code
path finding is still missing video player has audio preloading small fixes
Diffstat (limited to 'engines/bladerunner/actor.h')
-rw-r--r--engines/bladerunner/actor.h27
1 files changed, 14 insertions, 13 deletions
diff --git a/engines/bladerunner/actor.h b/engines/bladerunner/actor.h
index ea77e881e8..cf93a7f2e0 100644
--- a/engines/bladerunner/actor.h
+++ b/engines/bladerunner/actor.h
@@ -153,18 +153,19 @@ public:
int getSetId();
void setSetId(int setId);
- BoundingBox *getBoundingBox() { return _bbox; }
+ BoundingBox *getBoundingBox() const { return _bbox; }
Common::Rect *getScreenRectangle() { return &_screenRectangle; }
- int getWalkbox() { return _walkboxId; }
- bool isRetired() { return _isRetired; }
- bool isTargetable() { return _isTargetable; }
+ int getWalkbox() const { return _walkboxId; }
+ bool isRetired()const { return _isRetired; }
+ bool isTargetable() const { return _isTargetable; }
void setTargetable(bool targetable);
- bool isImmuneToObstacles() { return _isImmuneToObstacles; }
- bool inCombat() { return _inCombat; }
- bool isMoving() { return _isMoving; }
+ bool isImmuneToObstacles() const { return _isImmuneToObstacles; }
+ bool inCombat() const { return _inCombat; }
+ bool isMoving() const { return _isMoving; }
void setMoving(bool value) { _isMoving = value; }
- bool isWalking();
- bool isRunning();
+ bool inWalkLoop() const { return _inWalkLoop; }
+ bool isWalking() const;
+ bool isRunning() const;
void stopWalking(bool value);
void faceActor(int otherActorId, bool animate);
@@ -212,19 +213,19 @@ public:
bool hasClue(int clueId);
void copyClues(int actorId);
- int soundVolume();
- int soundBalance();
+ int soundVolume() const;
+ int soundBalance() const;
private:
void setFacing(int facing, bool halfOrSet = true);
void setBoundingBox(const Vector3 &position, bool retired);
- float distanceFromView(View* view);
+ float distanceFromView(View* view) const;
bool loopWalk(const Vector3 &destination, int destinationOffset, bool a3, bool run, const Vector3 &start, float a6, float a7, bool a8, bool *isRunning, bool async);
bool walkTo(bool run, const Vector3 &destination, bool a3);
bool walkFindU1(const Vector3 &startPosition, const Vector3 &targetPosition, float a3, Vector3 *newDestination);
bool walkFindU2(Vector3 *newDestination, float targetWidth, int destinationOffset, float targetSize, const Vector3 &startPosition, const Vector3 &targetPosition);
- bool walkToU(const Vector3 &destination, float distance);
+ bool walkToNearestPoint(const Vector3 &destination, float distance);
//bool walkFindU3(int actorId, Vector3 from, int distance, Vector3 *out);
};