diff options
author | James Brown | 2002-08-20 09:58:35 +0000 |
---|---|---|
committer | James Brown | 2002-08-20 09:58:35 +0000 |
commit | ca4789c2ffff32213aaf90f656524f44f83d5830 (patch) | |
tree | a752532146bea5e2d8d1a319801e3b09c5a0e782 /simon | |
parent | f3ceaf7f81246a3ddc5e09b2710d2627a3a412ba (diff) | |
download | scummvm-rg350-ca4789c2ffff32213aaf90f656524f44f83d5830.tar.gz scummvm-rg350-ca4789c2ffff32213aaf90f656524f44f83d5830.tar.bz2 scummvm-rg350-ca4789c2ffff32213aaf90f656524f44f83d5830.zip |
Fix lighting on actors in V6+ games (eg, Sam and Max)
Move boxflags debug to debug level 2 (we default to 1)
Apply patches:
595414: Simon 2 lockup workarounds
595875: Simon 2 save/load dialog fix
597422: Preliminary support for CREA sound format (for FT)
597627: Use savedir for save/load-string opcodes
svn-id: r4779
Diffstat (limited to 'simon')
-rw-r--r-- | simon/simon.cpp | 26 |
1 files changed, 15 insertions, 11 deletions
diff --git a/simon/simon.cpp b/simon/simon.cpp index c7e34ccbcb..a60234d7a2 100644 --- a/simon/simon.cpp +++ b/simon/simon.cpp @@ -2707,16 +2707,14 @@ void SimonState::timer_proc1() timer_vga_sprites_2(); #endif - if (!(_game & GAME_SIMON2)) { - if (_copy_partial_mode == 1) { - dx_copy_from_2_to_attached(80, 46, 208 - 80, 94 - 46); - } + if (_copy_partial_mode == 1) { + dx_copy_from_2_to_attached(80, 46, 208 - 80, 94 - 46); + } - if (_copy_partial_mode == 2) { - /* copy partial from attached to 2 */ - dx_copy_from_attached_to_2(176, 61, 320 - 176, 134 - 61); - _copy_partial_mode = 0; - } + if (_copy_partial_mode == 2) { + /* copy partial from attached to 2 */ + dx_copy_from_attached_to_2(176, 61, 320 - 176, 134 - 61); + _copy_partial_mode = 0; } /* XXX: more stuff here */ @@ -3206,6 +3204,7 @@ void SimonState::video_toggle_colors(HitArea * ha, byte a, byte b, byte c, byte if (!(h > 0 && w > 0 && ha->x + w <= 320 && ha->y + h <= 200)) { warning("Invalid coordinates in video_toggle_colors (%d,%d,%d,%d)", ha->x, ha->y, ha->width, ha->height); + _lock_word &= ~0x8000; return; } @@ -4453,8 +4452,10 @@ bool SimonState::save_game(uint slot, const char *caption) #endif f = fopen(gen_savename(slot), "wb"); - if (f == NULL) + if (f == NULL) { + _lock_word &= ~0x100; return false; + } fwrite(caption, 1, 0x12, f); @@ -4559,8 +4560,10 @@ bool SimonState::load_game(uint slot) #endif f = fopen(gen_savename(slot), "rb"); - if (f == NULL) + if (f == NULL) { + _lock_word &= ~0x100; return false; + } fread(ident, 1, 18, f); @@ -4568,6 +4571,7 @@ bool SimonState::load_game(uint slot) if (fileReadBE32(f) != 0xFFFFFFFF || num != _itemarray_inited - 1) { fclose(f); + _lock_word &= ~0x100; return false; } |