diff options
author | Oliver Kiehl | 2002-11-02 09:23:30 +0000 |
---|---|---|
committer | Oliver Kiehl | 2002-11-02 09:23:30 +0000 |
commit | 130d898c7f250f938675b3380b5f301ff4004a2e (patch) | |
tree | 75c95b81df7ff75b75cc16f1c12594debcd83e22 | |
parent | 1c975ba92ed9bec19de6f2652888aa1df9808a94 (diff) | |
download | scummvm-rg350-130d898c7f250f938675b3380b5f301ff4004a2e.tar.gz scummvm-rg350-130d898c7f250f938675b3380b5f301ff4004a2e.tar.bz2 scummvm-rg350-130d898c7f250f938675b3380b5f301ff4004a2e.zip |
Ludde's fix for simon2 movement problem
svn-id: r5374
-rw-r--r-- | simon/simon.cpp | 2 | ||||
-rw-r--r-- | simon/verb.cpp | 14 |
2 files changed, 7 insertions, 9 deletions
diff --git a/simon/simon.cpp b/simon/simon.cpp index 33736906d2..0a214223a9 100644 --- a/simon/simon.cpp +++ b/simon/simon.cpp @@ -2883,8 +2883,6 @@ void SimonState::o_pathfind(int x, int y, uint var_1, uint var_2) uint x_diff, y_diff; uint best_i = 0, best_j = 0, best_dist = 0xFFFFFFFF; -/* FIXME */ -/* Causes movement problems in Simon 2 games, often unable to move left */ if (_game & GAME_SIMON2) { x += _x_scroll * 8; } diff --git a/simon/verb.cpp b/simon/verb.cpp index 563089a454..f9785adcd5 100644 --- a/simon/verb.cpp +++ b/simon/verb.cpp @@ -319,19 +319,19 @@ void SimonState::handle_unk_hitarea(FillOrCopyStruct *fcs) void SimonState::setup_hitarea_from_pos(uint x, uint y, uint mode) { - if (_game & GAME_SIMON2) { - if (_bit_array[4] & 0x8000 || y < 134) { - x += _x_scroll * 8; - } - } - HitArea *best_ha; HitArea *ha = _hit_areas; uint count = ARRAYSIZE(_hit_areas); uint16 layer = 0; - const uint16 x_ = x; + uint16 x_ = x; const uint16 y_ = y; + if (_game & GAME_SIMON2) { + if (_bit_array[4] & 0x8000 || y < 134) { + x += _x_scroll * 8; + } + } + best_ha = NULL; do { |