diff options
-rw-r--r-- | engines/drascula/animation.cpp | 70 | ||||
-rw-r--r-- | engines/drascula/drascula.h | 2 | ||||
-rw-r--r-- | engines/drascula/rooms.cpp | 14 | ||||
-rw-r--r-- | engines/drascula/talk.cpp | 18 |
4 files changed, 59 insertions, 45 deletions
diff --git a/engines/drascula/animation.cpp b/engines/drascula/animation.cpp index ea4431fca8..a2cd43eac2 100644 --- a/engines/drascula/animation.cpp +++ b/engines/drascula/animation.cpp @@ -543,23 +543,23 @@ void DrasculaEngine::animation_2_1() { hare_x = 100; hare_y = 95; - talk_bj(_textbj[_lang][2], "BJ2.als"); - talk(_text[_lang][215], "215.als"); - talk_bj(_textbj[_lang][3], "BJ3.als"); - talk(_text[_lang][216], "216.als"); - talk_bj(_textbj[_lang][4], "BJ4.als"); - talk_bj(_textbj[_lang][5], "BJ5.als"); - talk_bj(_textbj[_lang][6], "BJ6.als"); - talk(_text[_lang][217], "217.als"); - talk_bj(_textbj[_lang][7], "BJ7.als"); - talk(_text[_lang][218], "218.als"); - talk_bj(_textbj[_lang][8], "BJ8.als"); - talk(_text[_lang][219], "219.als"); - talk_bj(_textbj[_lang][9], "BJ9.als"); - talk(_text[_lang][220], "220.als"); - talk(_text[_lang][221], "221.als"); - talk_bj(_textbj[_lang][10], "BJ10.als"); - talk(_text[_lang][222], "222.als"); + talk_bj(2); + talk(215); + talk_bj(3); + talk(216); + talk_bj(4); + talk_bj(5); + talk_bj(6); + talk(217); + talk_bj(7); + talk(218); + talk_bj(8); + talk(219); + talk_bj(9); + talk(220); + talk(221); + talk_bj(10); + talk(222); if (anima("gaf.bin", 15)) break; if (anima("bjb.bin", 14)) @@ -603,10 +603,10 @@ void DrasculaEngine::animation_2_1() { pause(60); if ((term_int == 1) || (getscan() == Common::KEYCODE_ESCAPE)) break; - talk(_text[_lang][224], "224.als"); + talk(224); if ((term_int == 1) || (getscan() == Common::KEYCODE_ESCAPE)) break; - talk_bj(_textbj[_lang][12], "BJ12.als"); + talk_bj(12); lleva_al_hare(157, 98 + alto_hare); if ((term_int == 1) || (getscan() == Common::KEYCODE_ESCAPE)) break; @@ -630,14 +630,14 @@ void DrasculaEngine::animation_2_1() { pause(8); updateRoom(); updateScreen(0, 0, 0, 0, 320, 200, dir_zona_pantalla); - talk(_text[_lang][225], "225.als"); + talk(225); pause(76); if ((term_int == 1) || (getscan() == Common::KEYCODE_ESCAPE)) break; sentido_hare = 1; updateRoom(); updateScreen(0, 0, 0, 0, 320, 200, dir_zona_pantalla); - talk(_text[_lang][226], "226.als"); + talk(226); if ((term_int == 1) || (getscan() == Common::KEYCODE_ESCAPE)) break; updateRoom(); @@ -645,7 +645,7 @@ void DrasculaEngine::animation_2_1() { pause(30); if ((term_int == 1) || (getscan() == Common::KEYCODE_ESCAPE)) break; - talk(_text[_lang][227],"227.als"); + talk(227); FundeAlNegro(0); break; } @@ -1863,26 +1863,26 @@ void DrasculaEngine::animation_7_4() { void DrasculaEngine::animation_1_5() { if (flags[0] == 0) { talk(_text[_lang][430], "430.als"); - talk_bj(_textbj[_lang][16], "BJ16.als"); - talk_bj(_textbj[_lang][17], "BJ17.als"); - talk_bj(_textbj[_lang][18], "BJ18.als"); - talk(_text[_lang][217], "217.als"); - talk_bj(_textbj[_lang][19], "BJ19.als"); - talk(_text[_lang][229], "229.als"); + talk_bj(16); + talk_bj(17); + talk_bj(18); + talk(217); + talk_bj(19); + talk(229); pause(5); lleva_al_hare(114, 170); sentido_hare = 3; - talk(_text[_lang][431], "431.als"); - talk_bj(_textbj[_lang][20], "BJ20.als"); + talk(431); + talk_bj(20); sentido_hare = 2; pause(4); - talk(_text[_lang][438], "438.als"); + talk(438); sitio_x = 120; sitio_y = 157; anda_a_objeto = 1; sentido_final = 1; empieza_andar(); - talk_bj(_textbj[_lang][21], "BJ21.als"); + talk_bj(21); for (;;) { if (hare_se_mueve == 0) @@ -1892,7 +1892,7 @@ void DrasculaEngine::animation_1_5() { } sentido_hare = 1; - talk(_text[_lang][229], "229.als"); + talk(229); flags[0] = 1; } @@ -1901,11 +1901,11 @@ void DrasculaEngine::animation_1_5() { } void DrasculaEngine::animation_2_5() { - talk_bj(_textbj[_lang][22], "BJ22.als"); + talk_bj(22); } void DrasculaEngine::animation_3_5() { - talk_bj(_textbj[_lang][23], "BJ23.als"); + talk_bj(23); pickObject(10); rompo_y_salgo = 1; } diff --git a/engines/drascula/drascula.h b/engines/drascula/drascula.h index 6170dc92c4..512ebb9950 100644 --- a/engines/drascula/drascula.h +++ b/engines/drascula/drascula.h @@ -542,6 +542,7 @@ public: void talk_igor_peluca(const char *said, const char *filename); void hipo(int); void stopSound(); + void talk_bj(int); void talk_bj(const char *, const char *); void talk_baul(const char *said, const char *filename); void talk(int); @@ -749,6 +750,7 @@ public: void talk_pen(const char *, const char *); void talk_pen2(const char *, const char *); void talk_taber2(const char *, const char *); + void talk_bj_cama(int); void talk_bj_cama(const char *said, const char * filename); void talk_htel(const char *said, const char *filename); diff --git a/engines/drascula/rooms.cpp b/engines/drascula/rooms.cpp index 8af3f7c952..50f1110c23 100644 --- a/engines/drascula/rooms.cpp +++ b/engines/drascula/rooms.cpp @@ -1140,14 +1140,14 @@ void DrasculaEngine::room_58(int fl) { void DrasculaEngine::room_59(int fl) { if ((pickedObject == kVerbTalk && fl == 51) || (pickedObject == kVerbLook && fl == 51)) { flags[9] = 1; - talk(_text[_lang][259], "259.als"); - talk_bj_cama(_textbj[_lang][13], "bj13.als"); - talk(_text[_lang][263], "263.als"); - talk_bj_cama(_textbj[_lang][14], "bj14.als"); + talk(259); + talk_bj_cama(13); + talk(263); + talk_bj_cama(14); pause(40); - talk(_text[_lang][264], "264.als"); - talk_bj_cama(_textbj[_lang][15], "BJ15.als"); - talk(_text[_lang][265], "265.als"); + talk(264); + talk_bj_cama(15); + talk(265); flags[9] = 0; if (flags[11] == 0) { playSound("s12.als"); diff --git a/engines/drascula/talk.cpp b/engines/drascula/talk.cpp index 549d930c53..d6f393aa2a 100644 --- a/engines/drascula/talk.cpp +++ b/engines/drascula/talk.cpp @@ -393,6 +393,12 @@ bucless: updateScreen(0, 0, 0, 0, 320, 200, dir_zona_pantalla); } +void DrasculaEngine::talk_bj(int index) { + char name[20]; + sprintf(name, "BJ%i.als", index); + talk_bj(_textbj[_lang][index], name); +} + void DrasculaEngine::talk_bj(const char *said, const char *filename) { int x_talk[5] = { 64, 92, 120, 148, 176 }; int cara; @@ -457,7 +463,7 @@ bucless: } void DrasculaEngine::talk(int index) { - char name[100]; + char name[20]; sprintf(name, "%i.als", index); talk(_text[_lang][index], name); } @@ -728,7 +734,7 @@ bucless: } void DrasculaEngine::talk_vb(int index) { - char name[100]; + char name[20]; sprintf(name, "VB%i.als", index); talk_vb(_textvb[_lang][index], name); } @@ -789,7 +795,7 @@ bucless: } void DrasculaEngine::talk_vbpuerta(int index) { - char name[100]; + char name[20]; sprintf(name, "VB%i.als", index); talk_vb(_textvb[_lang][index], name); } @@ -1194,6 +1200,12 @@ bucless: updateScreen(0, 0, 0, 0, 320, 200, dir_zona_pantalla); } +void DrasculaEngine::talk_bj_cama(int index) { + char name[20]; + sprintf(name, "BJ%i.als", index); + talk_bj_cama(_textbj[_lang][index], name); +} + void DrasculaEngine::talk_bj_cama(const char *said, const char *filename) { int x_talk[5] = {51, 101, 151, 201, 251}; int cara; |