diff options
author | whiterandrek | 2018-04-05 08:15:14 +0300 |
---|---|---|
committer | Eugene Sandulenko | 2018-06-28 23:51:32 +0200 |
commit | cad72b1532faa96c68848392766f25a4a58398ab (patch) | |
tree | 04d5e0cbda2aadb79fce35a1ddd45f0f0798f60f /engines/pink/objects/walk/walk_mgr.h | |
parent | 4b7c75607a5d54d95c383fabf381d82d4ac77b94 (diff) | |
download | scummvm-rg350-cad72b1532faa96c68848392766f25a4a58398ab.tar.gz scummvm-rg350-cad72b1532faa96c68848392766f25a4a58398ab.tar.bz2 scummvm-rg350-cad72b1532faa96c68848392766f25a4a58398ab.zip |
PINK: basic walk, left click and seqTimer implementation
Diffstat (limited to 'engines/pink/objects/walk/walk_mgr.h')
-rw-r--r-- | engines/pink/objects/walk/walk_mgr.h | 31 |
1 files changed, 30 insertions, 1 deletions
diff --git a/engines/pink/objects/walk/walk_mgr.h b/engines/pink/objects/walk/walk_mgr.h index 0ae7ef6194..403cc7ee2e 100644 --- a/engines/pink/objects/walk/walk_mgr.h +++ b/engines/pink/objects/walk/walk_mgr.h @@ -25,20 +25,49 @@ #include <common/array.h> #include "engines/pink/objects/object.h" +#include "walk_shortest_path.h" namespace Pink { class WalkLocation; class LeadActor; +class WalkAction; class WalkMgr : public Object { public: + WalkMgr(); virtual void deserialize(Archive &archive); - WalkLocation *findLocation(Common::String &name); + void toConsole() override; + + WalkLocation *findLocation(const Common::String &name); + void start(WalkLocation *destination); + void update(); + + double getLengthBetweenLocations(WalkLocation *first, WalkLocation *second); + void setCurrentWayPoint(WalkLocation *location); private: + struct Coordinates { + int x; + int y; + int z; + }; + struct WayPoint { + Common::String name; + Coordinates coord; + }; + + Coordinates getLocationCoordinates(const Common::String &locationName); + void end(); + void initNextWayPoint(WalkLocation *location); + WalkAction *getWalkAction(); + LeadActor *_leadActor; + WalkLocation *_destination; Common::Array<WalkLocation*> _locations; + WayPoint _current; + WayPoint _next; + bool _isWalking; }; } // End of namespace Pink |