diff options
author | Nicola Mettifogo | 2007-04-23 21:31:03 +0000 |
---|---|---|
committer | Nicola Mettifogo | 2007-04-23 21:31:03 +0000 |
commit | c1d8a1a01c0f5dd7e0ac13022d18d21a15ca055e (patch) | |
tree | a2d06d4e0209c64315613e6f6cf885a32c2c9cce | |
parent | 0782fc544859fc7cbd9e6326687c7673aca61806 (diff) | |
download | scummvm-rg350-c1d8a1a01c0f5dd7e0ac13022d18d21a15ca055e.tar.gz scummvm-rg350-c1d8a1a01c0f5dd7e0ac13022d18d21a15ca055e.tar.bz2 scummvm-rg350-c1d8a1a01c0f5dd7e0ac13022d18d21a15ca055e.zip |
Fixed paths. (Short comment for big achievement).
svn-id: r26586
-rw-r--r-- | engines/parallaction/walk.cpp | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/engines/parallaction/walk.cpp b/engines/parallaction/walk.cpp index a4f2a312c0..bd3d5945e0 100644 --- a/engines/parallaction/walk.cpp +++ b/engines/parallaction/walk.cpp @@ -420,11 +420,13 @@ uint16 checkDoor() { uint16 queryPath(uint16 x, uint16 y) { - byte _al = _buffer[y*40 + x/8]; - byte _dl = 1 << (x % 8); + // NOTE: a better solution would have us mirror each byte in the mask in the loading routine + // AmigaDisk::loadPath() instead of doing it here. - return _al & _dl; + byte _al = _buffer[y*40 + x/8]; + byte _dl = (_vm->getPlatform() == Common::kPlatformPC) ? (x & 7) : (7 - (x & 7)); + return _al & (1 << _dl); } void setPath(byte *path) { |