diff options
Diffstat (limited to 'engines/drascula/animation.cpp')
-rw-r--r-- | engines/drascula/animation.cpp | 174 |
1 files changed, 87 insertions, 87 deletions
diff --git a/engines/drascula/animation.cpp b/engines/drascula/animation.cpp index 10f1bf4651..f939a033d3 100644 --- a/engines/drascula/animation.cpp +++ b/engines/drascula/animation.cpp @@ -52,54 +52,54 @@ void DrasculaEngine::animation_1_1() { int l, l2, p; //int pixelPos[6]; - while (term_int == 0) { + while (term_int == 0 && !shouldQuit()) { playMusic(29); playFLI("logoddm.bin", 9); - if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE)) + if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE) || shouldQuit()) break; delay(600); - if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE)) + if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE) || shouldQuit()) break; clearRoom(); delay(340); - if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE)) + if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE) || shouldQuit()) break; playMusic(26); delay(500); - if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE)) + if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE) || shouldQuit()) break; playFLI("logoalc.bin", 8); - if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE)) + if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE) || shouldQuit()) break; clearRoom(); loadPic("cielo.alg", screenSurface, COMPLETE_PAL); black(); updateScreen(); fadeFromBlack(2); - if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE)) + if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE) || shouldQuit()) break; delay(900); - if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE)) + if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE) || shouldQuit()) break; color_abc(kColorRed); centerText(_textmisc[1], 160, 100); updateScreen(); - if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE)) + if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE) || shouldQuit()) break; delay(1000); - if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE)) + if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE) || shouldQuit()) break; delay(1200); - if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE)) + if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE) || shouldQuit()) break; playFLI("scrollb.bin", 9); - if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE)) + if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE) || shouldQuit()) break; clearRoom(); playSound(5); - if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE)) + if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE) || shouldQuit()) break; if (animate("scr2.bin", 17)) break; @@ -108,10 +108,10 @@ void DrasculaEngine::animation_1_1() { break; loadPic("cielo2.alg", screenSurface, COMPLETE_PAL); updateScreen(); - if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE)) + if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE) || shouldQuit()) break; fadeToBlack(1); - if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE)) + if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE) || shouldQuit()) break; clearRoom(); @@ -121,10 +121,10 @@ void DrasculaEngine::animation_1_1() { loadPic("aux104.alg", drawSurface2); playMusic(4); - if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE)) + if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE) || shouldQuit()) break; delay(400); - if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE)) + if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE) || shouldQuit()) break; for (l2 = 0; l2 < 3; l2++) @@ -132,13 +132,13 @@ void DrasculaEngine::animation_1_1() { copyBackground(); copyBackground(interf_x[l], interf_y[l], 156, 45, 63, 31, drawSurface2, screenSurface); updateScreen(); - if (getScan() == Common::KEYCODE_ESCAPE) { + if (getScan() == Common::KEYCODE_ESCAPE || shouldQuit()) { term_int = 1; break; } pause(3); } - if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE)) + if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE) || shouldQuit()) break; l2 = 0; p = 0; @@ -157,17 +157,17 @@ void DrasculaEngine::animation_1_1() { } if (l2 == 7) l2 = 0; - if (getScan() == Common::KEYCODE_ESCAPE) { + if (getScan() == Common::KEYCODE_ESCAPE || shouldQuit()) { term_int = 1; break; } } - if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE)) + if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE) || shouldQuit()) break; copyBackground(0, 0, 0, 0, 320, 200, screenSurface, bgSurface); talk_drascula_big(1); - if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE)) + if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE) || shouldQuit()) break; clearRoom(); @@ -187,17 +187,17 @@ void DrasculaEngine::animation_1_1() { placeDrascula(); updateScreen(); talk_igor(8, kIgorDch); - if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE)) + if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE) || shouldQuit()) break; copyBackground(); placeIgor(); placeDrascula(); updateScreen(); talk_drascula(2); - if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE)) + if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE) || shouldQuit()) break; talk_drascula(3); - if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE)) + if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE) || shouldQuit()) break; if (animate("lib.bin", 16)) break; @@ -209,12 +209,12 @@ void DrasculaEngine::animation_1_1() { updateScreen(); pause(10); talk_solo(_textd[4],"d4.als"); - if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE)) + if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE) || shouldQuit()) break; loadPic("plan1.alg", screenSurface, HALF_PAL); updateScreen(); talk_solo(_textd[5], "d5.als"); - if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE)) + if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE) || shouldQuit()) break; if (animate("lib2.bin", 16)) break; @@ -223,7 +223,7 @@ void DrasculaEngine::animation_1_1() { updateScreen(); pause(20); talk_solo(_textd[6], "d6.als"); - if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE)) + if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE) || shouldQuit()) break; if (animate("lib2.bin", 16)) break; @@ -231,34 +231,34 @@ void DrasculaEngine::animation_1_1() { loadPic("plan3.alg", screenSurface, HALF_PAL); updateScreen(); pause(20); - if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE)) + if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE) || shouldQuit()) break; talk_solo(_textd[7], "d7.als"); - if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE)) + if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE) || shouldQuit()) break; loadPic("plan3.alg", screenSurface, HALF_PAL); updateScreen(); talk_solo(_textd[8], "d8.als"); - if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE)) + if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE) || shouldQuit()) break; clearRoom(); loadPic(100, bgSurface, HALF_PAL); MusicFadeout(); stopMusic(); - if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE)) + if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE) || shouldQuit()) break; talk_igor(9, kIgorDch); - if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE)) + if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE) || shouldQuit()) break; talk_drascula(9); - if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE)) + if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE) || shouldQuit()) break; talk_igor(10, kIgorDch); - if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE)) + if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE) || shouldQuit()) break; playMusic(11); talk_drascula(10); - if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE)) + if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE) || shouldQuit()) break; if (animate("rayo1.bin", 16)) break; @@ -276,14 +276,14 @@ void DrasculaEngine::animation_1_1() { black(); playMusic(23); fadeFromBlack(0); - if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE)) + if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE) || shouldQuit()) break; trackDrascula = 1; talk_igor(1, kIgorDch); - if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE)) + if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE) || shouldQuit()) break; talk_drascula(11, 1); - if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE)) + if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE) || shouldQuit()) break; trackDrascula = 3; copyBackground(); @@ -297,7 +297,7 @@ void DrasculaEngine::animation_1_1() { placeDrascula(); updateScreen(); talk_drascula(12); - if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE)) + if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE) || shouldQuit()) break; trackDrascula = 3; copyBackground(); @@ -311,11 +311,11 @@ void DrasculaEngine::animation_1_1() { placeDrascula(); updateScreen(); talk_igor(2, kIgorDch); - if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE)) + if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE) || shouldQuit()) break; pause(13); talk_drascula(13, 1); - if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE)) + if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE) || shouldQuit()) break; trackDrascula = 3; copyBackground(); @@ -329,35 +329,35 @@ void DrasculaEngine::animation_1_1() { placeDrascula(); updateScreen(); talk_drascula(14); - if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE)) + if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE) || shouldQuit()) break; talk_igor(3, kIgorDch); - if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE)) + if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE) || shouldQuit()) break; talk_drascula(15); - if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE)) + if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE) || shouldQuit()) break; talk_igor(4, kIgorDch); - if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE)) + if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE) || shouldQuit()) break; talk_drascula(16); - if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE)) + if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE) || shouldQuit()) break; talk_igor(5, kIgorDch); - if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE)) + if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE) || shouldQuit()) break; trackIgor = 3; talk_drascula(17); - if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE)) + if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE) || shouldQuit()) break; pause(18); - if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE)) + if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE) || shouldQuit()) break; talk_igor(6, kIgorFront); - if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE)) + if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE) || shouldQuit()) break; fadeToBlack(0); - if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE)) + if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE) || shouldQuit()) break; clearRoom(); @@ -386,30 +386,30 @@ void DrasculaEngine::animation_2_1() { term_int = 0; - for (;;) { - if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE)) + while (!shouldQuit()) { + if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE) || shouldQuit()) break; if (animate("ag.bin", 14)) break; loadPic("an11y13.alg", extraSurface); - if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE)) + if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE) || shouldQuit()) break; talk_bartender(22); - if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE)) + if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE) || shouldQuit()) break; loadPic(97, extraSurface); - if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE)) + if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE) || shouldQuit()) break; pause(4); playSound(1); hiccup(18); finishSound(); - if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE)) + if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE) || shouldQuit()) break; clearRoom(); @@ -419,36 +419,36 @@ void DrasculaEngine::animation_2_1() { color_solo = kColorWhite; pause(80); - if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE)) + if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE) || shouldQuit()) break; talk_solo(_textbj[1], "BJ1.als"); - if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE)) + if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE) || shouldQuit()) break; clearRoom(); loadPic("bj.alg", screenSurface, HALF_PAL); - if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE)) + if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE) || shouldQuit()) break; black(); updateScreen(); fadeFromBlack(1); - if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE)) + if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE) || shouldQuit()) break; color_solo = kColorYellow; talk_solo(_text[214], "214.als"); - if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE)) + if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE) || shouldQuit()) break; clearRoom(); loadPic(16, bgSurface, HALF_PAL); - if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE)) + if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE) || shouldQuit()) break; loadPic("auxbj.alg", drawSurface3); - if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE)) + if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE) || shouldQuit()) break; roomNumber = 16; - if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE)) + if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE) || shouldQuit()) break; for (l = 0; l < 200; l++) factor_red[l] = 99; @@ -459,18 +459,18 @@ void DrasculaEngine::animation_2_1() { curY = 95; trackProtagonist = 1; hare_se_ve = 1; - if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE)) + if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE) || shouldQuit()) break; loadPic("97g.alg", extraSurface); - if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE)) + if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE) || shouldQuit()) break; if (animate("lev.bin", 15)) break; gotoObject(100 + curWidth / 2, 99 + curHeight); - if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE)) + if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE) || shouldQuit()) break; trackProtagonist = 1; curX = 100; @@ -484,46 +484,46 @@ void DrasculaEngine::animation_2_1() { break; playMusic(9); loadPic(97, extraSurface); - if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE)) + if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE) || shouldQuit()) break; updateRoom(); updateScreen(); - if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE)) + if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE) || shouldQuit()) break; pause(120); - if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE)) + if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE) || shouldQuit()) break; talk_solo(_text[223], "223.als"); - if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE)) + if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE) || shouldQuit()) break; color_solo = kColorWhite; updateRoom(); - if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE)) + if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE) || shouldQuit()) break; updateScreen(); pause(110); talk_solo(_textbj[11], "BJ11.als"); - if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE)) + if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE) || shouldQuit()) break; updateRoom(); - if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE)) + if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE) || shouldQuit()) break; updateScreen(); - if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE)) + if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE) || shouldQuit()) break; pause(118); - if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE)) + if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE) || shouldQuit()) break; gotoObject(132, 97 + curHeight); pause(60); - if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE)) + if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE) || shouldQuit()) break; talk(224); - if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE)) + if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE) || shouldQuit()) break; talk_bj(12); gotoObject(157, 98 + curHeight); - if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE)) + if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE) || shouldQuit()) break; if (animate("bes.bin", 16)) break; @@ -540,25 +540,25 @@ void DrasculaEngine::animation_2_1() { // Also check animation_9_6(), where the same hack was used by // the original roomNumber = -1; - if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE)) + if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE) || shouldQuit()) break; pause(8); updateRoom(); updateScreen(); talk(225); pause(76); - if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE)) + if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE) || shouldQuit()) break; trackProtagonist = 1; updateRoom(); updateScreen(); talk(226); - if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE)) + if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE) || shouldQuit()) break; updateRoom(); updateScreen(); pause(30); - if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE)) + if ((term_int == 1) || (getScan() == Common::KEYCODE_ESCAPE) || shouldQuit()) break; talk(227); fadeToBlack(0); @@ -1259,7 +1259,7 @@ void DrasculaEngine::animation_1_5() { startWalking(); talk_bj(21); - for (;;) { + while (!shouldQuit()) { if (characterMoved == 0) break; updateRoom(); @@ -1496,7 +1496,7 @@ void DrasculaEngine::animation_13_5() { playMusic(18); - for (;;) { + while (!shouldQuit()) { updateRoom(); copyRect(frus_x[frame], frus_y[frame], frank_x, 81, 44, 87, backSurface, screenSurface); updateScreen(); |