diff options
| author | Nicola Mettifogo | 2008-05-09 01:42:25 +0000 | 
|---|---|---|
| committer | Nicola Mettifogo | 2008-05-09 01:42:25 +0000 | 
| commit | c7c8bb99eefa3b19bc25fa921cd93255489656c5 (patch) | |
| tree | 186a3b4faf75b85455a01410edc7aaa9d9c7fded | |
| parent | 1d025957caad81aef5504b8e505b835ce106cf1b (diff) | |
| download | scummvm-rg350-c7c8bb99eefa3b19bc25fa921cd93255489656c5.tar.gz scummvm-rg350-c7c8bb99eefa3b19bc25fa921cd93255489656c5.tar.bz2 scummvm-rg350-c7c8bb99eefa3b19bc25fa921cd93255489656c5.zip | |
Tiny cleanup to ease extraction of the program parser code.
svn-id: r31959
| -rw-r--r-- | engines/parallaction/exec_br.cpp | 2 | ||||
| -rw-r--r-- | engines/parallaction/exec_ns.cpp | 12 | ||||
| -rw-r--r-- | engines/parallaction/objects.cpp | 10 | ||||
| -rw-r--r-- | engines/parallaction/objects.h | 2 | ||||
| -rw-r--r-- | engines/parallaction/parallaction.h | 1 | 
5 files changed, 14 insertions, 13 deletions
| diff --git a/engines/parallaction/exec_br.cpp b/engines/parallaction/exec_br.cpp index e4859a8851..9484c99585 100644 --- a/engines/parallaction/exec_br.cpp +++ b/engines/parallaction/exec_br.cpp @@ -399,7 +399,7 @@ DECLARE_INSTRUCTION_OPCODE(inc) {  	}  	if (inst->_opA._flags & kParaLocal) { -		wrapLocalVar(inst->_opA._local); +		inst->_opA._local->wrap();  	}  } diff --git a/engines/parallaction/exec_ns.cpp b/engines/parallaction/exec_ns.cpp index b1889daa21..06969fd01d 100644 --- a/engines/parallaction/exec_ns.cpp +++ b/engines/parallaction/exec_ns.cpp @@ -107,7 +107,7 @@ DECLARE_INSTRUCTION_OPCODE(inc) {  	}  	if (inst->_opA._flags & kParaLocal) { -		wrapLocalVar(inst->_opA._local); +		inst->_opA._local->wrap();  	}  } @@ -189,16 +189,6 @@ DECLARE_INSTRUCTION_OPCODE(endscript) { -void Parallaction_ns::wrapLocalVar(LocalVariable *local) { - -	if (local->_value >= local->_max) -		local->_value = local->_min; -	if (local->_value < local->_min) -		local->_value = local->_max - 1; - -	return; -} -  DECLARE_COMMAND_OPCODE(invalid) {  	error("Can't execute invalid command '%i'", _cmdRunCtxt.cmd->_id); diff --git a/engines/parallaction/objects.cpp b/engines/parallaction/objects.cpp index 0491c5c3c7..cac31911f4 100644 --- a/engines/parallaction/objects.cpp +++ b/engines/parallaction/objects.cpp @@ -116,6 +116,16 @@ int16 Program::addLocal(const char *name, int16 value, int16 min, int16 max) {  	return _numLocals++;  } +void LocalVariable::wrap() { + +	if (_value >= _max) +		_value = _min; +	if (_value < _min) +		_value = _max - 1; + +	return; +} +  Zone::Zone() { diff --git a/engines/parallaction/objects.h b/engines/parallaction/objects.h index da9eaac95f..afa6cc5ed5 100644 --- a/engines/parallaction/objects.h +++ b/engines/parallaction/objects.h @@ -316,6 +316,8 @@ struct LocalVariable {  		_min = -10000;  		_max = 10000;  	} + +	void wrap();  };  enum ParaFlags { diff --git a/engines/parallaction/parallaction.h b/engines/parallaction/parallaction.h index b32278bfaa..b3e93ee83f 100644 --- a/engines/parallaction/parallaction.h +++ b/engines/parallaction/parallaction.h @@ -683,7 +683,6 @@ protected:  	void		loadProgram(AnimationPtr a, const char *filename);  	void		parseLValue(ScriptVar &var, const char *str);  	virtual void	parseRValue(ScriptVar &var, const char *str); -	void		wrapLocalVar(LocalVariable *local);  	DECLARE_UNQUALIFIED_COMMAND_OPCODE(invalid);  	DECLARE_UNQUALIFIED_COMMAND_OPCODE(set); | 
