diff options
| -rw-r--r-- | engines/director/lingo/lingo-funcs.cpp | 2 | ||||
| -rw-r--r-- | engines/director/lingo/lingo.cpp | 21 | ||||
| -rw-r--r-- | engines/director/lingo/lingo.h | 2 | 
3 files changed, 25 insertions, 0 deletions
| diff --git a/engines/director/lingo/lingo-funcs.cpp b/engines/director/lingo/lingo-funcs.cpp index a71eb3db77..d9e9ee4b92 100644 --- a/engines/director/lingo/lingo-funcs.cpp +++ b/engines/director/lingo/lingo-funcs.cpp @@ -179,6 +179,8 @@ void Lingo::func_goto(Datum &frame, Datum &movie) {  			return;  		} +		restartLingo(); +  		delete _vm->_currentScore;  		Archive *mov = _vm->openMainArchive(*movie.u.s); diff --git a/engines/director/lingo/lingo.cpp b/engines/director/lingo/lingo.cpp index 01b6207566..1416b14c93 100644 --- a/engines/director/lingo/lingo.cpp +++ b/engines/director/lingo/lingo.cpp @@ -306,6 +306,27 @@ void Lingo::processEvent(LEvent event, ScriptType st, int entityId) {  	}  } +void Lingo::restartLingo() { +	warning("STUB: restartLingo()"); + +	// TODO +	// +	// reset the following: +	// the keyDownScript +	// the mouseUpScript +	// the mouseDownScript +	// the beepOn +	// the constraint properties +	// the cursor +	// the immediate sprite properties +	// the puppetSprite +	// cursor commands +	// custom menus +	// +	// NOTE: +	// tuneousScript is not reset +} +  int Lingo::alignTypes(Datum &d1, Datum &d2) {  	int opType = INT; diff --git a/engines/director/lingo/lingo.h b/engines/director/lingo/lingo.h index 552a1d6253..a739ee77e7 100644 --- a/engines/director/lingo/lingo.h +++ b/engines/director/lingo/lingo.h @@ -509,6 +509,8 @@ private:  	void push(Datum d);  	Datum pop(void); +	void restartLingo(); +  	Common::HashMap<uint32, const char *> _eventHandlerTypes;  	Common::HashMap<Common::String, uint32> _eventHandlerTypeIds;  	Common::HashMap<Common::String, Audio::AudioStream *> _audioAliases; | 
