aboutsummaryrefslogtreecommitdiff
path: root/engines/scumm/actor.cpp
AgeCommit message (Collapse)Author
2019-07-14SCUMM: Silence GCC memset() warningsTorbjörn Andersson
Recent GCC versions complain if you memset() a class or struct that contain non-POD data types. Get around that by either initializing the object when created, or by adding a reset() method.
2018-03-12SCUMM: MM V0: Fix regression from 038b3b178939f1bcc6714eda1b88c3e80e787c02 ↵Robert Crossfield
and comment/cleanup
2018-01-31COMMON: Move VER macro for serializer into common codeColin Snover
2018-01-31SCUMM: Replace UB-triggering serialization code with Common::SerializerColin Snover
Fixes Trac#10342.
2018-01-31SCUMM: Fix stack overflow initializing localsColin Snover
This happens when clicking on the triangular button in room 27 in The Dig. There are probably several other places where this overflow happens, since there are several different `int args[16]` in the code (and many more `int args[` of various sizes, not all of which are at least NUM_SCRIPT_LOCAL).
2018-01-31SCUMM: Fix stack overflow initializing localsColin Snover
This happens at least when trying to right click on the motorcycle at the start of Full Throttle.
2017-12-01SCUMM: Fix UB shifting negative integers in ActorColin Snover
2017-08-06JANITORIAL: Silence GCC warningTorbjörn Andersson
Since case 64 was added for "MM C64 Costume Animation", and considering the way it's written to only affect game version 0, it is clearly an intentional fall through.
2017-02-21SCUMM: MM V0: Fix actors skipping between certain walk-boxesRobert Crossfield
2017-02-15SCUMM: MM V0: Fix an issue with Sandy appearing to slide across a walkboxRobert Crossfield
2016-12-27SCUMM: Fix bug #4515 (Dr. Fred facing wrong way in lab cutscene)Robert Crossfield
2016-10-09JANITORIAL: Remove trailing spacesEugene Sandulenko
2016-07-19SCUMM: Maniac V0: Implement 'simulator' for CPU lag (as the original engine ↵Robert Crossfield
occasionally ran at less than 60Hz). Fix call to 'getClosestPtOnBox', whcih was being passed X * V12_X_MULTIPLIER and Y * V12_Y_MULTIPLIER, but the box coordinates, where not
2016-07-19SCUMM: Maniac V0: Implement original walkbox queue, Cleanup actor walk codeRobert Crossfield
2016-05-24SCUMM: Fix bug #3230 PAJAMA SAM 2: Background gfx glitch in intro.Kirben
2016-02-15JANITORIAL: Typos detected with lintian & grepAlexandre Detiste
2014-12-08SCUMM: Correct variable type in Actor_v0::adjustPosInBorderWalkbox, since ↵Kirben
variable can have negative value.
2014-12-08Merge pull request #542 from segrax/V1-V2_WalkAnimFixKirben
SCUMM V1-V2: Fix actor walk behavior (transitions between walk boxes, and changing destination issue)
2014-12-08SCUMM V1-V2: Fix actor walk behavior (transitions between walk boxes, and ↵Robert Crossfield
changing destination issue)
2014-12-08SCUMM: Maniac V0: Add support for D64 Demo Disk, Cleanup duplicate 'Talk' arrayRobert Crossfield
2014-12-07SCUMM: Correct spacing and warning in last Maniac V0 merge.Kirben
2014-12-02SCUMM: Maniac V0: Correctly handle 'slanted' walk-boxes, Add new variables ↵Robert Crossfield
to save-games, Bump the SaveGame Version number, remove obsolete V0 code in V2 functions
2014-11-29SCUMM: Maniac V0: If boxes are neighbors, walk directly to the new box. ↵Robert Crossfield
Remove extra call to 'animateCostume'. Remove now unnecessary V0 walk calc functions
2014-11-28SCUMM: Maniac V0: Implement the original Walk Code (to fix some anim ↵Robert Crossfield
glitches), fix opcode to use _moving correctly (as V0 is different)
2014-02-18SCUMM: Make GPL headers consistent in themselves.Johannes Schickel
2013-08-18SCUMM: Remove unnecessary NULL check, CID 1003629Torbjörn Andersson
Since _actors[i]->_sound is an array, it can't ever be NULL.
2013-05-02COMMON: Change kPlatformPC to kPlatformDOSMatthew Hoops
"PC" was very ambiguous and now it matches what we show in the GUI. This also corrects sword2's platform to Windows.
2012-09-26JANITORIAL: Remove trailing whitespaces.Johannes Schickel
Powered by: git ls-files "*.cpp" "*.h" "*.m" "*.mm" | xargs sed -i -e 's/[ \t]*$//'
2012-02-15JANITORIAL: Fix missing whitespace in pointer castTarek Soliman
find -name '*.h' -or -name '*.cpp' | xargs sed -r -i 's@\(([A-Za-z0-9]+)\*\)@(\1 *)@g' This seems to have caught some params as well which is not undesirable IMO. It also caught some strings containing this which is undesirable so I excluded them manually. (engines/sci/engine/kernel_tables.h)
2012-02-11Revert "SCUMM: revert savegame version to 89"Willem Jan Palenstijn
This reverts commit 65fc7225bb31e72120dcdf16e91ae377c657548d. Increasing the savegame version on a branch and then decreasing it again leads to problems with loading current savegames in old commits during a bisect.
2012-02-11SCUMM: revert savegame version to 89Tobias Gunkel
Previous versions 89-92 are merged into version 89.
2012-02-11SCUMM: remove unnecessary cast to Actor_v0Tobias Gunkel
2012-02-11SCUMM: replaced A with a0 to avoid upper-case local varsTobias Gunkel
2012-02-11SCUMM: cleanup and separation of objIsActor()/objToActor()/actorToObj() for ↵Tobias Gunkel
v0 and other engines
2012-02-11SCUMM: match style-guide, add missing spaces between some "if ()", "for ()"Tobias Gunkel
2012-02-11SCUMM: add support for diagonal walking between boxes (e.g. used for meteor ↵Tobias Gunkel
opening scene)
2012-02-11SCUMM: Remove old codeRobert Crossfield
2012-02-11SCUMM: Few changes for animations, dont move while turning & not necessary ↵Robert Crossfield
to call animateactor during startanimactor
2012-02-11SCUMM: replace "c64" with "v0" when it applies to both C64 and AppleII v0 ↵Tobias Gunkel
versions In addition some routines (e.g. the gfx ones) that are even used in v1.
2012-02-11SCUMM: save complete v0 state and initialize actors correctlyTobias Gunkel
2012-02-11SCUMM: remove the temporary variable _limb_currentTobias Gunkel
2012-02-11SCUMM: adjust to coding style-guideTobias Gunkel
2012-02-11SCUMM: Fix ActorStop, V0 needs to set the stop directionRobert Crossfield
2012-02-11SCUMM: isPlayer() is not supported by engine v0Tobias Gunkel
2012-02-11SCUMM: fix diagonal walking in at least MM v0Tobias Gunkel
The comparison "ABS((int)(deltaXFactor >> 16)) > _speedx)" does not work as "deltaXFactor >> 16" will clear the fractional part of deltaXFactor. As a result the deltaXFactor might be bigger than (_speedx<<16) and the actor moves faster than he should.
2012-02-11SCUMM: Fix V0 Sound, and a direction issue (affected walking down the ladder)Robert Crossfield
2012-02-11SCUMM: V0 always turns actor towards camera when entering room, remove ↵Robert Crossfield
unnecessary loadcostume
2012-02-11SCUMM: Remove unnecessary calls to animateActorRobert Crossfield
2012-02-11SCUMM: Fix Tentacle issue, and possibly some other animation issuesRobert Crossfield
2012-02-11SCUMM: fix actor climbing on plant or swimming pool ladderTobias Gunkel
Before, the actor will descend the ladder of the pool and maybe even into the the pool. Another issue fixed by this is the actor climbing onto the plant pot if you give something to it.