aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorwhitertandrek2018-03-20 14:01:17 +0200
committerEugene Sandulenko2018-06-28 23:51:32 +0200
commita49b399fbdbea1864dad20a793931bbb45f04e1c (patch)
treeb85792891b88f70f8389ebe09baa8610ace72e0e
parentf7c6830da9d135e0428e60d7db9405a761ff8749 (diff)
downloadscummvm-rg350-a49b399fbdbea1864dad20a793931bbb45f04e1c.tar.gz
scummvm-rg350-a49b399fbdbea1864dad20a793931bbb45f04e1c.tar.bz2
scummvm-rg350-a49b399fbdbea1864dad20a793931bbb45f04e1c.zip
PINK: implemented ActionHide completely
-rw-r--r--engines/pink/actions/action.h2
-rw-r--r--engines/pink/actions/action_hide.cpp10
-rw-r--r--engines/pink/actions/action_hide.h3
-rw-r--r--engines/pink/actors/actor.cpp4
-rw-r--r--engines/pink/actors/actor.h2
5 files changed, 20 insertions, 1 deletions
diff --git a/engines/pink/actions/action.h b/engines/pink/actions/action.h
index 5608b99232..1037181f44 100644
--- a/engines/pink/actions/action.h
+++ b/engines/pink/actions/action.h
@@ -32,6 +32,8 @@ class Actor;
class Action : public NamedObject {
public:
virtual void deserialize(Archive &archive);
+ virtual void play(bool unk_startNow) {}; //?? not sure about parameter
+ virtual void end() {};
protected:
Actor *_actor;
diff --git a/engines/pink/actions/action_hide.cpp b/engines/pink/actions/action_hide.cpp
index 9c99bc7cfb..a63cc49c25 100644
--- a/engines/pink/actions/action_hide.cpp
+++ b/engines/pink/actions/action_hide.cpp
@@ -21,6 +21,7 @@
*/
#include "action_hide.h"
+#include "../actors/actor.h"
#include <engines/pink/archive.h>
#include <common/debug.h>
@@ -32,4 +33,13 @@ void Pink::ActionHide::deserialize(Archive &archive) {
debug("\tActionHide: _name = %s", _name.c_str());
}
+void ActionHide::play(bool unk_startNow) {
+ debug("ActionHide %s is now in playing state", _name.c_str());
+ _actor->endAction();
+}
+
+void ActionHide::end() {
+ debug("ActionHide %s is ended", _name.c_str());
+}
+
} //End of namespace Pink \ No newline at end of file
diff --git a/engines/pink/actions/action_hide.h b/engines/pink/actions/action_hide.h
index 4662d5f139..e9b3294dab 100644
--- a/engines/pink/actions/action_hide.h
+++ b/engines/pink/actions/action_hide.h
@@ -31,7 +31,8 @@ class ActionHide : public Action {
public:
virtual void deserialize(Archive &archive);
-public:
+ virtual void play(bool unk_startNow);
+ virtual void end();
};
} //End of namespace Pink
diff --git a/engines/pink/actors/actor.cpp b/engines/pink/actors/actor.cpp
index d9363b6ea6..f92c1cb833 100644
--- a/engines/pink/actors/actor.cpp
+++ b/engines/pink/actors/actor.cpp
@@ -70,4 +70,8 @@ void Actor::setIdleAction(bool unk) {
}
}
+void Actor::endAction() {
+ _isActionEnd = 1;
+}
+
} // End of namespace Pink
diff --git a/engines/pink/actors/actor.h b/engines/pink/actors/actor.h
index fd9c25b813..4e494bddf5 100644
--- a/engines/pink/actors/actor.h
+++ b/engines/pink/actors/actor.h
@@ -46,6 +46,8 @@ public:
GamePage *getPage() const;
void setIdleAction(bool unk);
+ void endAction();
+
protected:
GamePage *_page;