aboutsummaryrefslogtreecommitdiff
path: root/engines/tucker
AgeCommit message (Collapse)Author
2018-03-17TUCKER: Add comment about earlier commit e018efbc22 fixing Trac#6645Adrian Frühwirth
2018-03-17TUCKER: Fix incorrect transition of Lola animationAdrian Frühwirth
The original game unconditionally reads into _sprC02Table[] in updateSprite() which results in out-of-bounds reads when a sprite's _state is -1. To make sure that sprites update correctly under all circumstances we always reset a sprite's animation data when it is disabled (_state == -1). This most prominently fixes a bug where Lola's transition from dancing -> sitting happens too late. Fixes Trac#6644.
2018-03-16TUCKER: Remove trailing comma from enum listAdrian Frühwirth
2018-03-16TUCKER: Added missing check for minimum supported savegame versionAdrian Frühwirth
2018-03-16TUCKER: Add savegame metadata and autosave supportAdrian Frühwirth
2018-03-15TUCKER: Fix out-of-bounds access of _inputkeys[]Adrian Frühwirth
2018-03-15TUCKER: Comment out dead code, match disassemblyAdrian Frühwirth
Setting _mousePosY is only necessary if we actually set the cursor position which we currently don't do. I don't plan on enabling it but for the sake of matching disassembly let's add the required warpMouse() call and disable the whole code block for now.
2018-03-14TUCKER: Remove unnecessary variable from drawInfoString()Adrian Frühwirth
2018-03-14TUCKER: Use Verb enum in even more placesAdrian Frühwirth
2018-03-14TUCKER: Add TODO comment about discrepancy with disassemblyAdrian Frühwirth
2018-03-14TUCKER: Fix wrong sound effects being playedAdrian Frühwirth
Fixes Trac#6376, Trac#6377 and probably many more unreported instances of wrong audio samples being played.
2018-03-12TUCKER: Fix alleyway cellar location hotspot bugAdrian Frühwirth
Fixes Trac#6645.
2018-03-05TUCKER: Workaround capitalized "With"/"Con" in sentence barAdrian Frühwirth
infobar.txt contains all text used for the sentence bar and, among other things, the prepositions to use for the "Use" and "Give" verbs. In the English and Spanish versions of the game the preposition for "Use" ("With" and "Con", respectively) is incorrectly stored in capitalized form which this commit fixes. Fixes Trac#10445.
2018-03-05TUCKER: Add VerbPreposition enumAdrian Frühwirth
2018-03-02TUCKER: Use Verb enum in more placesAdrian Frühwirth
2018-03-02Add PanelState, PanelStyle and PanelType enumsAdrian Frühwirth
The new _panelState tells if the panel is currently in the process of being toggled between icon-style and text-style verbs and thus animated. The new _panelStyle tells wich verb-style the panel currently uses. The new _panelType tells which mode the panel currently is in: - verbs + inventory (normal) - empty (used for dialogs) - save, load, play, quit buttons - save/load savegame Also, switchPanelType() has been renamed to togglePanelStyle() and kInputKeyToggleInventory to kInputKeyTogglePanelStyle to better match the above changes. _switchPanelFlag has been dropped in favor of using the new _panelState. TODO: Store _panelStyle in savegames.
2018-03-02TUCKER: Add Part enumAdrian Frühwirth
2018-03-02TUCKER: Add CursorStyle and CursorState enumsAdrian Frühwirth
2018-02-25TUCKER: Allow skipping speechAdrian Frühwirth
Escape, period or right mouse click skips one sentence at a time.
2018-02-25TUCKER: Confine Bud to walkable area when entering clubAdrian Frühwirth
When Bud is walked to specific coordinates using the 'buw' opcode the walkable area is not enforced (_locationMaskIgnore == true). This is usually not a problem because the player is not allowed to click, however, when entering the club, this allows the player to move Bud to coordinates from which he can never return, leaving him stuck there. As a workaround, do not ignore the location mask during this specific action when entering the club. Fixes Trac#5838.
2018-02-25TUCKER: Fix theoretical out-of-bounds readAdrian Frühwirth
2018-02-24TUCKER: Work around background pixels being drawn in the foregroundAdrian Frühwirth
Some backgrounds use colors in the reserved range [0xE0-0xF8] in a walkable area which results in a number of pixels being falsely drawn in the foreground (on top of Bud). This fixes Trac#10423 to work around these original game bugs and also removes the workaround for location 14 which does not seem to be needed anymore.
2018-02-11TUCKER: Remove glue workaround clarificationAdrian Frühwirth
The glue actually _is_ a unary usage object in the original game so this was simply a miss in our implementation which is now fixed. In other words, this wasn't a workaround and the original game does behave the same as ours now.
2018-02-11TUCKER: Use verb enum in all placesAdrian Frühwirth
2018-02-11TUCKER: Fix original game glitch in Bud animation sequence 8Adrian Frühwirth
Fixes Trac#10430.
2018-02-11TUCKER: Remove superfluous arguments in loadBudSpr et alAdrian Frühwirth
2018-02-09Revert "TUCKER: Fix Bud drawn behind parts of statue in park"Adrian Frühwirth
This fixed the statue but broke the park entrance which I had missed.
2018-02-09TUCKER: Fix Bud drawn behind parts of statue in parkAdrian Frühwirth
Fixes Trac#10423.
2018-02-09TUCKER: Make the glue a "unary usage" objectAdrian Frühwirth
Workaround for Trac#5511.
2018-02-07TUCKER: Fix offset drawing bug in drawSprite()Adrian Frühwirth
Fixes Trac#6639.
2018-02-07TUCKER: Fix clipping handling when drawing textAdrian Frühwirth
Fixes Trac#10422.
2018-02-03TUCKER: Add inventory and save slot scrolling via mouse wheelAdrian Frühwirth
Fixes Trac#10424.
2018-02-03TUCKER: Fix default character width tableAdrian Frühwirth
Non-English versions of the game include a charsize.dta/charszgr.dta which specifies the width to use when printing glyphs from the character set to the screen. ScummVM includes a hard-coded lookup table for games which do not ship with such a file. For some reason, our current hard-coded table includes widths for all possible glyphs except one. This fix allows to properly play the German version, which needs the character 'ß' (eszett), even when charszgr.dta is missing. Fixes Trac#4602.
2018-01-31TUCKER: Print infobar string if no savegame existsAdrian Frühwirth
Before, the ingame load dialog pretended to allow loading savegames from all possible slots even if no savegames existed. This introduces the original interpreter's behavior which instead loads a resource string from infobar.txt informing the user that no savegames are available.
2018-01-31TUCKER: Fix sentence bar offsetsAdrian Frühwirth
Fixes Trac#10413 and Trac#10414.
2018-01-31TUCKER: Fix dirty rects drawing bug in drawStringInteger()Adrian Frühwirth
2018-01-31TUCKER: Use existing enum for verbsAdrian Frühwirth
2018-01-31TUCKER: Fix dentist music in mall being played incorrectlyAdrian Frühwirth
2018-01-31TUCKER: Fix bubbles in Plugs shopAdrian Frühwirth
Fixes Trac#6641.
2018-01-31TUCKER: Cure Bud's and Billy's seasicknessAdrian Frühwirth
This ensures that the calculated offsets for Bud and Billy are [0,2] px and follow the sequence 0px -> 1px -> 2px -> 1px -> 0px as opposed to the earlier 0px -> 1px -> 2px -> 3px -> 0px which resulted in them teleporting back to their original location and on top of that being out of sync with the boat. Fixes Trac#6643.
2018-01-31TUCKER: Fix walking Royston glitchAdrian Frühwirth
Fixes Trac#6640.
2018-01-31TUCKER: Clarify comment in room palette handling codeEugene Sandulenko
2018-01-31TUCKER: Fix color cycling in submarine roomAdrian Frühwirth
Fixes Trac#6378.
2018-01-31TUCKER: Fix font rendering bugAdrian Frühwirth
Fixes Trac#6370.
2017-10-07ENGINES: Remove default1x scaler flagColin Snover
This flag is removed for a few reasons: * Engines universally set this flag to true for widths > 320, which made it redundant everywhere; * This flag functioned primarily as a "force 1x scaler" flag, since its behaviour was almost completely undocumented and users would need to figure out that they'd need an explicit non-default scaler set to get a scaler to operate at widths > 320; * (Most importantly) engines should not be in the business of deciding how the backend may choose to render its virtual screen. The choice of rendering behaviour belongs to the user, and the backend, in that order. A nearby future commit restores the default1x scaler behaviour in the SDL backend code for the moment, but in the future it is my hope that there will be a better configuration UI to allow users to specify how they want scaling to work for high resolutions.
2016-05-17ALL: Change main engine header guard defines to <directory>_<engine>_HEugene Sandulenko
Recently we started to use this as new semantics, although in the past we used simly <engine>_H. Now these guard defines are consistent with rest of the files which are used in the engines.
2016-03-12TUCKER: Don't try parsing missing debug values in demoOri Avtalion
Fixes the demo thinking it's in debug mode and allowing ESC to quit.
2016-03-08ENGINES: Make variable names of AdvancedMetaEngine conform to our guidelines.Johannes Schickel
_singleid -> _singleId _gameids -> _gameIds _guioptions -> _guiOptions
2016-02-25TUCKER: Let listSaves return list sorted on slot numbers.Johannes Schickel
2016-02-24TUCKER: Hide cursor in cutscenesOri Avtalion