Forced text is now handled correctly. It's now possible to interact with the video screen in the elder's cave

svn-id: r27410
This commit is contained in:
Filippos Karapetis 2007-06-15 03:58:21 +00:00
parent 3b78d79ec0
commit 4f8f854ee6
2 changed files with 9 additions and 4 deletions

View File

@ -41,7 +41,7 @@ namespace Saga {
class HitZone;
//#define ACTOR_DEBUG //only for actor pathfinding debug!
// #define ACTOR_DEBUG 1 //only for actor pathfinding debug!
#define ACTOR_BARRIERS_MAX 16
@ -97,7 +97,8 @@ enum ActorActions {
enum SpeechFlags {
kSpeakNoAnimate = 1,
kSpeakAsync = 2,
kSpeakSlow = 4
kSpeakSlow = 4,
kSpeakForceText = 8
};
enum ActorFrameTypes {
@ -592,6 +593,10 @@ public:
return _activeSpeech.stringsCount > 0;
}
int isForcedTextShown() {
return _activeSpeech.speechFlags & kSpeakForceText;
}
void saveState(Common::OutSaveFile *out);
void loadState(Common::InSaveFile *in);

View File

@ -289,8 +289,8 @@ int SagaEngine::go() {
msec = MAX_TIME_DELTA;
}
// Since Puzzle is actorless, we do it here
if (_puzzle->isActive()) {
// Since Puzzle and forced text are actorless, we do them here
if (_puzzle->isActive() || _actor->isForcedTextShown()) {
_actor->handleSpeech(msec);
} else if (!_scene->isInIntro()) {
if (_interface->getMode() == kPanelMain ||