Age | Commit message (Collapse) | Author |
|
|
|
|
|
|
|
|
|
|
|
Thanks segra for finding how it works in the original interpreter. The plant is handled specially and 0 is used instead of its y-position.
|
|
|
|
- o5_breakHere() seems to be still needed. For example edna does not manage to walk up the ladder if this is not enabled.
- numLocalObjects seems to be big enough so that < instead of <= can be used. The original interpreter only uses the local ids 0 .. 44 whereas scummvm has _numLocalObjects set to 200.
|
|
|
|
This fixes the issue that a kid will not enter the front door after opening it with the key.
|
|
Otherwise the command will never be removed and the stack overflows
|
|
- execute sentence if verb was clicked twice
- reuse the first object if a new verb is selected (but no preposition is used yet)
|
|
|
|
Found by segra.
|
|
|
|
The kid names are now displayed in the sentence line (instead of the verb area) as it is done in the original.
|
|
- getVerbEntrypoint() should not handle walk-to differently (revert 0x0D handling back to original behavior)
- VAR_ACTIVE_ACTOR actually is VAR_ACTIVE_OBJECT2
- runSentenceScript(): "if (_cmdVerb == kVerbWalkTo)" must be "if (_cmdVerb != kVerbWalkTo)"
|
|
|
|
- MM C64 uses command stack (SentenceTab, doSentence()) now
- _cmdObject... added for current SentenceTab. The _active... variables are only used to build a sentence in the inventory but never by a script.
-> many routines are not needed anymore and are removed
|
|
|
|
|
|
|
|
|
|
- removed complicated and unnecessary _v0ObjectIndex, _v0ObjectInInventory, _v0ObjectFlag vars
- started to merge object id and type into one object value (type<<8|id)
- verb preposition ids do not dependent on language -> remove from VerbSettings
Note:
- objects with type=0 are foreground objects. They have a state, an owner and a bg overlay image.
- objects with type=1 are bg objects. They do not have a state or owner and are already contained in the bg image. The do not have an entry in objectState/OwnerTable
|
|
|
|
|
|
_activeObject(2)/_activeObject(2)Type
Note: the transition is not completed yet. The code compiles but is probably not runnable as not every occurrence of _activeInventory has been properly replaced.
The usage of _v0ObjectIndex and _v0ObjectInInventory should be revised too and both variables should be replaced by another mechanism (maybe by using a single variable "obj = (type << 8) | id").
- moved v0 only vars _activeInventory, _activeObject, _activeVerb from ScummEngine_v2 to ScummEngine_v0
- removed _activeActor, _activeInvExecute, _activeObject2Inv and _activeInventory. They are handled by _activeObject/_activeObjectType and _activeObject2/_activeObject2Type now.
- removed _activeObject(2)Index as they only bloat the code without any benefit (?)
- merge prep-name tables from ScummEngine_v2::drawPreposition() and ScummEngine_v0::drawSentenceWord() by introducing ScummEngine_v2::drawPreposition()
- rename ObjectData.flags -> obj_type (quick-fix only, needs review! Maybe obj_nr and obj_type can be merged into one var: obj_nr = (obj_type << 8) | obj_nr)
- o_unknown2 is negation of o_ifActiveObject (o_ifNotEqualActiveObject2)
- renamed o_ifActiveObject -> o_ifEqualActiveObject2 as it acts only on _activeObject2
- renamed ScummEngine_v0::drawSentenceWord() -> ScummEngine_v0::getObjectName()
|
|
|
|
|
|
MANIAC C64: Bug while getting the stamps from the parcel - ID: 3072094
MMC64: use stamps with envelope - ID: 3095595
|
|
- Now the correct actor name is shown with "give ... to meteor". Formerly the name was "".
- Add actor names that do not have a string assigned
|
|
Sounds are played that fast in fast-mode that the queue gets stuck.
This is just a workaround and only fixes the symptoms. Check the queue handling for a correct fix.
|
|
|
|
BenCastricum/5db023646a8c685469bfe9dc551a282f8240ae04
SCUMM: Use regular detection algorithms for FMTOWNS demos.
|
|
|
|
Thanks to LordHoto for reporting it
|
|
Thanks to LordHoto for reporting it
|
|
Thanks to Yotam for confirming that this isn't needed anymore.
|
|
|
|
The other uses seem to pass Common::Point via a pointer to the object too,
so this seems fine to do here too.
|
|
The workaround for the unused parameter warning caused a warning:
parameter 'patchNum' set but not used
|
|
|
|
Based on public domain code, and explanations from :
http://halicery.com/jpeg/idct.html
Thanks.
|
|
Patch by Scott and clone2727
|
|
The last incomplete packet is ignored
|
|
See https://ffmpeg.org/trac/ffmpeg/ticket/962
|
|
|
|
|
|
|
|
Several changes against original code were made. They were intentionally
kept to the minimum
|