[Scummvm-git-logs] scummvm master -> 480d7fddbe4a217e1733fee7588be93fa95504d6
whiterandrek
whiterandrek at gmail.com
Fri Jun 5 16:33:48 UTC 2020
This automated email contains information about 1 new commit which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .
Summary:
480d7fddbe PINK: returned HandlerStartPage HandlerTimerSequences
Commit: 480d7fddbe4a217e1733fee7588be93fa95504d6
https://github.com/scummvm/scummvm/commit/480d7fddbe4a217e1733fee7588be93fa95504d6
Author: Andrei Prykhodko (whiterandrek at gmail.com)
Date: 2020-06-05T19:31:50+03:00
Commit Message:
PINK: returned HandlerStartPage HandlerTimerSequences
Changed paths:
engines/pink/archive.cpp
engines/pink/objects/handlers/handler.cpp
engines/pink/objects/handlers/handler.h
diff --git a/engines/pink/archive.cpp b/engines/pink/archive.cpp
index cdae516b82..355131d955 100644
--- a/engines/pink/archive.cpp
+++ b/engines/pink/archive.cpp
@@ -147,12 +147,12 @@ static Object *createObject(int objectId) {
case kHandlerLeftClick:
return new HandlerLeftClick;
case kHandlerStartPage:
- return new HandlerSequences(true, false);
+ return new HandlerStartPage;
case kHandlerTimer:
case kHandlerTimerActions:
return new HandlerTimerActions; // hack for Peril, but behavior is correct
case kHandlerTimerSequences:
- return new HandlerSequences(false, true);
+ return new HandlerTimerSequences;
case kHandlerUseClick:
return new HandlerUseClick;
case kInventoryActor:
diff --git a/engines/pink/objects/handlers/handler.cpp b/engines/pink/objects/handlers/handler.cpp
index 953f420f90..e74e33e1b8 100644
--- a/engines/pink/objects/handlers/handler.cpp
+++ b/engines/pink/objects/handlers/handler.cpp
@@ -81,18 +81,12 @@ void HandlerSequences::handle(Actor *actor) {
Sequence *sequence = sequencer->findSequence(_sequences[index]);
assert(sequence);
- if (_parallel)
- sequencer->authorParallelSequence(sequence, false);
- else
- sequencer->authorSequence(sequence, false);
- if (_startPage)
- sequence->allowSkipping();
+ authorSequence(sequencer, sequence);
}
-HandlerSequences::HandlerSequences(bool startPage, bool parallel) {
- _startPage = startPage;
- _parallel = parallel;
+void HandlerSequences::authorSequence(Sequencer *sequencer, Sequence *sequence) {
+ sequencer->authorSequence(sequence, false);
}
void HandlerLeftClick::toConsole() const {
@@ -173,4 +167,13 @@ void HandlerTimerActions::handle(Actor *actor) {
}
}
+void HandlerStartPage::authorSequence(Sequencer *sequencer, Sequence *sequence) {
+ HandlerSequences::authorSequence(sequencer, sequence);
+ sequence->allowSkipping();
+}
+
+void HandlerTimerSequences::authorSequence(Sequencer *sequencer, Sequence *sequence) {
+ sequencer->authorParallelSequence(sequence, false);
+}
+
} // End of namespace Pink
diff --git a/engines/pink/objects/handlers/handler.h b/engines/pink/objects/handlers/handler.h
index b7997ff05a..4eac5c076d 100644
--- a/engines/pink/objects/handlers/handler.h
+++ b/engines/pink/objects/handlers/handler.h
@@ -49,18 +49,22 @@ protected:
};
class Sequence;
+class Sequencer;
class HandlerSequences : public Handler {
public:
- HandlerSequences(bool startPage = false, bool parallel = false);
-
void deserialize(Archive &archive) override;
void handle(Actor *actor) override;
+protected:
+ virtual void authorSequence(Sequencer *sequencer, Sequence *sequence);
+
protected:
StringArray _sequences;
- bool _startPage;
- bool _parallel;
+};
+
+class HandlerStartPage : public HandlerSequences {
+ void authorSequence(Sequencer *sequencer, Sequence *sequence) override;
};
class HandlerLeftClick : public HandlerSequences {
@@ -91,6 +95,10 @@ private:
StringArray _actions;
};
+class HandlerTimerSequences : public HandlerSequences {
+ void authorSequence(Sequencer *sequencer, Sequence *sequence) override;
+};
+
} // End of namespace Pink
#endif
More information about the Scummvm-git-logs
mailing list