aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--engines/drascula/drascula.cpp714
-rw-r--r--engines/drascula/drascula.h9
2 files changed, 320 insertions, 403 deletions
diff --git a/engines/drascula/drascula.cpp b/engines/drascula/drascula.cpp
index 79f51fec55..eb676a7be4 100644
--- a/engines/drascula/drascula.cpp
+++ b/engines/drascula/drascula.cpp
@@ -118,7 +118,7 @@ static char mirar_t[3][88] = {TEXT100, TEXT101, TEXT54};
static char mirar_v[3][14] = {"100.als", "101.als", "54.als"};
static char poder_t[6][88] = {TEXT11, TEXT109, TEXT111, TEXT110, TEXT115, TEXT116};
static char poder_v[6][14] = {"11.als", "109.als", "111.als", "110.als", "115.als", "116.als"};
-
+
int DrasculaEngine::init() {
// Detect game
if (!initGame()) {
@@ -128,7 +128,7 @@ int DrasculaEngine::init() {
// Initialize backend
_system->beginGFXTransaction();
- initCommonGFX(false);
+ initCommonGFX(false);
_system->initSize(320, 200);
_system->endGFXTransaction();
@@ -162,7 +162,8 @@ int DrasculaEngine::go() {
frame_velas = 0;
cont_sv = 0;
term_int = 0;
- cual_ejec = 0; hay_que_load = 0;
+ con_voces = 1;
+ hay_que_load = 0;
corta_musica = 0;
hay_seleccion = 0;
Leng = 0;
@@ -185,45 +186,48 @@ int DrasculaEngine::go() {
if (num_ejec == 6)
dir_pendulo = dir_dibujo3;
- lee_dibujos("96.alg");
- descomprime_dibujo(dir_hare_frente, COMPLETA);
if (num_ejec == 1) {
con_voces = 0;
+ lee_dibujos("96.alg");
+ descomprime_dibujo(dir_hare_frente, COMPLETA);
lee_dibujos("99.alg");
descomprime_dibujo(dir_hare_fondo, 1);
lee_dibujos("97.alg");
descomprime_dibujo(dir_hare_dch, 1);
} else if (num_ejec == 2) {
- con_voces = 1;
+ lee_dibujos("96.alg");
+ descomprime_dibujo(dir_hare_frente, COMPLETA);
lee_dibujos("pts.alg");
descomprime_dibujo(dir_dibujo2, 1);
} else if (num_ejec == 3) {
- con_voces = 1;
lee_dibujos("aux13.alg");
descomprime_dibujo(dir_dibujo1, COMPLETA);
+ lee_dibujos("96.alg");
+ descomprime_dibujo(dir_hare_frente, 1);
lee_dibujos("97.alg");
descomprime_dibujo(dir_hare_dch, 1);
lee_dibujos("99.alg");
descomprime_dibujo(dir_hare_fondo, 1);
} else if (num_ejec == 4) {
- con_voces = 1;
+ lee_dibujos("96.alg");
+ descomprime_dibujo(dir_hare_frente, COMPLETA);
if (hay_que_load == 0)
animacion_rayo();
lee_dibujos("96.alg");
descomprime_dibujo(dir_hare_frente, 1);
borra_pantalla();
- lee_dibujos("97.alg");
- descomprime_dibujo(dir_hare_dch, 1);
lee_dibujos("99.alg");
descomprime_dibujo(dir_hare_fondo, 1);
+ lee_dibujos("97.alg");
+ descomprime_dibujo(dir_hare_dch, 1);
} else if (num_ejec == 5) {
- con_voces = 0;
+ lee_dibujos("96.alg");
+ descomprime_dibujo(dir_hare_frente, COMPLETA);
lee_dibujos("97.alg");
descomprime_dibujo(dir_hare_dch, 1);
lee_dibujos("99.alg");
descomprime_dibujo(dir_hare_fondo, 1);
} else if (num_ejec == 6) {
- con_voces = 1;
x_igor = 105, y_igor = 85, sentido_igor = 1;
x_dr = 62, y_dr = 99, sentido_dr = 1;
frame_pen = 0;
@@ -234,9 +238,9 @@ int DrasculaEngine::go() {
lee_dibujos("96.alg");
descomprime_dibujo(dir_hare_frente, COMPLETA);
lee_dibujos("99.alg");
- descomprime_dibujo(dir_hare_fondo,1);
+ descomprime_dibujo(dir_hare_fondo, 1);
lee_dibujos("97.alg");
- descomprime_dibujo(dir_hare_dch,1);
+ descomprime_dibujo(dir_hare_dch, 1);
lee_dibujos("95.alg");
descomprime_dibujo(dir_mesa, 1);
@@ -255,6 +259,7 @@ int DrasculaEngine::go() {
}
salir_al_dos(0);
}
+
return 0;
}
@@ -486,19 +491,21 @@ void DrasculaEngine::VUELCA_PANTALLA(int xorg, int yorg, int xdes, int ydes, int
}
bool DrasculaEngine::escoba() {
- int soc, l, n;
+ int n;
dir_texto = dir_mesa;
musica_antes = -1;
- soc = 0;
- for (l = 0; l < 6; l++) {
- soc = soc + ANCHO_PERSONAJE;
- frame_x[l] = soc;
+ if (num_ejec != 2) {
+ int soc = 0;
+ for (n = 0; n < 6; n++) {
+ soc = soc + ANCHO_PERSONAJE;
+ frame_x[n] = soc;
+ }
}
- for (n = 1; n < 43; n++)
+ for (n = 1; n < 50; n++)
objetos_que_tengo[n] = 0;
for (n = 0; n < NUM_BANDERAS; n++)
@@ -528,7 +535,7 @@ bool DrasculaEngine::escoba() {
if (hay_que_load != 0)
para_cargar(nom_partida);
else {
- carga_escoba_1("62.ald");
+ carga_escoba("62.ald");
hare_x = -20;
hare_y = 56;
lleva_al_hare(65, 145);
@@ -539,7 +546,7 @@ bool DrasculaEngine::escoba() {
sentido_hare = 3;
obj_saliendo = 162;
if (hay_que_load == 0)
- carga_escoba_2("14.ald");
+ carga_escoba("14.ald");
else
para_cargar(nom_partida);
} else if (num_ejec == 3) {
@@ -555,7 +562,7 @@ bool DrasculaEngine::escoba() {
sentido_hare = 1;
obj_saliendo = 99;
if (hay_que_load == 0)
- carga_escoba_1("20.ald");
+ carga_escoba("20.ald");
else
para_cargar(nom_partida);
} else if (num_ejec == 3) {
@@ -566,7 +573,7 @@ bool DrasculaEngine::escoba() {
buffer_teclado();
obj_saliendo = 100;
if (hay_que_load == 0) {
- carga_escoba_1("21.ald");
+ carga_escoba("21.ald");
sentido_hare = 0;
hare_x = 235;
hare_y = 164;
@@ -586,7 +593,7 @@ bool DrasculaEngine::escoba() {
sentido_hare = 1;
obj_saliendo = 100;
if (hay_que_load == 0) {
- carga_escoba_1("45.ald");
+ carga_escoba("45.ald");
} else
para_cargar(nom_partida);
} else if (num_ejec == 6) {
@@ -597,7 +604,7 @@ bool DrasculaEngine::escoba() {
sentido_hare = 1;
obj_saliendo = 104;
if (hay_que_load == 0)
- carga_escoba_1("58.ald");
+ carga_escoba("58.ald");
else
para_cargar(nom_partida);
if (hay_que_load == 0)
@@ -638,15 +645,16 @@ bucles:
comprueba_objetos();
if (boton_dch == 1 && menu_scr == 1) {
- if (num_ejec == 1)
- lee_dibujos("99.alg");
- else if (num_ejec == 2)
+ if (num_ejec == 2)
lee_dibujos(fondo_y_menu);
+ else
+ lee_dibujos("99.alg");
descomprime_dibujo(dir_hare_fondo, 1);
setvgapalette256((byte *)&palJuego);
menu_scr = 0;
espera_soltar();
- cont_sv = 0;
+ if (num_ejec != 3)
+ cont_sv = 0;
}
if (boton_dch == 1 && menu_scr == 0) {
hare_se_mueve = 0;
@@ -657,26 +665,30 @@ bucles:
else if (num_ejec == 5)
lee_dibujos("icons3.alg");
else if (num_ejec == 6)
- lee_dibujos("icons3.alg");
- else
lee_dibujos("iconsp.alg");
+ else
+ lee_dibujos("icons.alg");
descomprime_dibujo(dir_hare_fondo, 1);
menu_scr = 1;
espera_soltar();
sin_verbo();
- cont_sv = 0;
+ if (num_ejec != 3)
+ cont_sv = 0;
}
if (boton_izq == 1 && menu_bar == 1) {
elige_en_barra();
- cont_sv = 0;
+ if (num_ejec != 3)
+ cont_sv = 0;
} else if (boton_izq == 1 && lleva_objeto == 0) {
if (comprueba1())
return true;
- cont_sv = 0;
+ if (num_ejec != 3)
+ cont_sv = 0;
} else if (boton_izq == 1 && lleva_objeto == 1) {
comprueba2();
- cont_sv = 0;
+ if (num_ejec != 3)
+ cont_sv = 0;
}
if (y_raton < 24 && menu_scr == 0)
@@ -687,60 +699,75 @@ bucles:
Common::KeyCode key = getscan();
if (key == Common::KEYCODE_F1 && menu_scr == 0) {
elige_verbo(1);
- cont_sv = 0;
+ if (num_ejec != 3)
+ cont_sv = 0;
} else if (key == Common::KEYCODE_F2 && menu_scr == 0) {
elige_verbo(2);
- cont_sv = 0;
+ if (num_ejec != 3)
+ cont_sv = 0;
} else if (key == Common::KEYCODE_F3 && menu_scr == 0) {
elige_verbo(3);
- cont_sv = 0;
+ if (num_ejec != 3)
+ cont_sv = 0;
} else if (key == Common::KEYCODE_F4 && menu_scr == 0) {
elige_verbo(4);
cont_sv = 0;
} else if (key == Common::KEYCODE_F5 && menu_scr == 0) {
elige_verbo(5);
- cont_sv = 0;
+ if (num_ejec != 3)
+ cont_sv = 0;
} else if (key == Common::KEYCODE_F6 && menu_scr == 0) {
elige_verbo(6);
- cont_sv = 0;
+ if (num_ejec != 3)
+ cont_sv = 0;
} else if (key == Common::KEYCODE_F9) {
mesa();
- cont_sv = 0;
+ if (num_ejec != 3)
+ cont_sv = 0;
} else if (key == Common::KEYCODE_F10) {
saves();
- cont_sv = 0;
+ if (num_ejec != 3)
+ cont_sv = 0;
} else if (key == Common::KEYCODE_F8) {
sin_verbo();
- cont_sv = 0;
+ if (num_ejec != 3)
+ cont_sv = 0;
} else if (key == Common::KEYCODE_v) {
con_voces = 1;
print_abc(SYS2, 96, 86);
VUELCA_PANTALLA(0, 0, 0, 0, 320, 200, dir_zona_pantalla);
delay(1410);
- cont_sv = 0;
+ if (num_ejec != 3)
+ cont_sv = 0;
} else if (key == Common::KEYCODE_t) {
con_voces = 0;
print_abc(SYS3, 94, 86);
VUELCA_PANTALLA(0, 0, 0, 0, 320, 200, dir_zona_pantalla);
delay(1460);
- cont_sv = 0;
+ if (num_ejec != 3)
+ cont_sv = 0;
} else if (key == Common::KEYCODE_DELETE) {
if (num_ejec == 4)
carga_partida("gsave00");
else
confirma_go();
- cont_sv = 0;
+ if (num_ejec != 3)
+ cont_sv = 0;
} else if (key == Common::KEYCODE_ESCAPE) {
confirma_salir();
- cont_sv = 0;
- } else if (key == Common::KEYCODE_0 && !strcmp(num_room, "61.alg")) {
+ if (num_ejec != 3)
+ cont_sv = 0;
+ } else if (num_ejec == 6 && key == Common::KEYCODE_0 && !strcmp(num_room, "61.alg")) {
lee_dibujos("alcbar.alg");
descomprime_dibujo(dir_dibujo1, 255);
} else if (cont_sv == 1500) {
salva_pantallas();
- cont_sv = 0;
- } else
- cont_sv++;
+ if (num_ejec != 3)
+ cont_sv = 0;
+ } else {
+ if (num_ejec != 3)
+ cont_sv++;
+ }
goto bucles;
}
@@ -1377,10 +1404,10 @@ void DrasculaEngine::para_cargar(char nom_game[]) {
borra_pantalla();
carga_partida(nom_game);
if (num_ejec == 1 || num_ejec == 4) {
- carga_escoba_1(datos_actuales);
+ carga_escoba(datos_actuales);
} else if (num_ejec == 2 || num_ejec == 3) {
- ald->close();
- carga_escoba_2(datos_actuales);
+ delete ald;
+ carga_escoba(datos_actuales);
}
sin_verbo();
}
@@ -1410,10 +1437,11 @@ static char *getLine(Common::File *fp, char *buf, int len) {
return buf;
}
-void DrasculaEngine::carga_escoba_1(const char *nom_fich) {
- int l, obj_salir;
+void DrasculaEngine::carga_escoba(const char *nom_fich) {
+ int soc, l, martin, obj_salir;
float chiquez, pequegnez = 0;
- char para_codificar[13];
+ char pant1[20], pant2[20], pant3[20], pant4[20];
+ char para_codificar[20];
char buffer[256];
hay_nombre = 0;
@@ -1442,6 +1470,42 @@ void DrasculaEngine::carga_escoba_1(const char *nom_fich) {
getLine(ald, buffer, size);
sscanf(buffer, "%d", &nivel_osc);
+ if (num_ejec == 2) {
+ getLine(ald, buffer, size);
+ sscanf(buffer, "%d", &martin);
+ if (martin == 0)
+ goto martini;
+ ancho_hare = martin;
+ getLine(ald, buffer, size);
+ sscanf(buffer, "%d",&alto_hare);
+ getLine(ald, buffer, size);
+ sscanf(buffer, "%d",&alto_pies);
+ getLine(ald, buffer, size);
+ sscanf(buffer, "%d",&paso_x);
+ getLine(ald, buffer, size);
+ sscanf(buffer, "%d",&paso_y);
+
+ getLine(ald, buffer, size);
+ sscanf(buffer, "%s",pant1);
+ getLine(ald, buffer, size);
+ sscanf(buffer, "%s",pant2);
+ getLine(ald, buffer, size);
+ sscanf(buffer, "%s",pant3);
+ getLine(ald, buffer, size);
+ sscanf(buffer, "%s",pant4);
+
+ lee_dibujos(pant2);
+ descomprime_dibujo(dir_hare_dch, 1);
+ lee_dibujos(pant1);
+ descomprime_dibujo(dir_hare_frente, 1);
+ lee_dibujos(pant4);
+ descomprime_dibujo(dir_hare_fondo, 1);
+
+ strcpy(fondo_y_menu, pant4);
+ }
+
+martini:
+
getLine(ald, buffer, size);
sscanf(buffer, "%d", &objs_room);
@@ -1492,20 +1556,47 @@ void DrasculaEngine::carga_escoba_1(const char *nom_fich) {
getLine(ald, buffer, size);
sscanf(buffer, "%d", &suelo_y2);
- getLine(ald, buffer, size);
- sscanf(buffer, "%d", &lejos);
- getLine(ald, buffer, size);
- sscanf(buffer, "%d", &cerca);
+ if (num_ejec != 2) {
+ getLine(ald, buffer, size);
+ sscanf(buffer, "%d", &lejos);
+ getLine(ald, buffer, size);
+ sscanf(buffer, "%d", &cerca);
+ }
delete ald;
-
canal_p(para_codificar);
+ if (num_ejec == 2) {
+ if (martin == 0) {
+ paso_x = PASO_HARE_X;
+ paso_y = PASO_HARE_Y;
+ alto_hare = ALTO_PERSONAJE;
+ ancho_hare = ANCHO_PERSONAJE;
+ alto_pies = PIES_HARE;
+ lee_dibujos("97.alg");
+ descomprime_dibujo(dir_hare_dch, 1);
+ lee_dibujos("96.alg");
+ descomprime_dibujo(dir_hare_frente, 1);
+ lee_dibujos("99.alg");
+ descomprime_dibujo(dir_hare_fondo, 1);
+
+ strcpy(fondo_y_menu, "99.alg");
+ }
+ }
+
obj_salir = -1;
for (l = 0; l < objs_room; l++) {
if (num_obj[l] == obj_saliendo)
obj_salir = l;
}
+ if (num_ejec == 2) {
+ if (hare_x == -1) {
+ assert(obj_salir != -1);
+ hare_x = x_alakeva[obj_salir];
+ hare_y = y_alakeva[obj_salir] - alto_hare;
+ }
+ hare_se_mueve = 0;
+ }
lee_dibujos(pantalla_disco);
descomprime_dibujo(dir_dibujo3, 1);
@@ -1525,15 +1616,20 @@ void DrasculaEngine::carga_escoba_1(const char *nom_fich) {
hare_claro();
cambio_de_color = -1;
- for (l = 0; l <= suelo_y1; l++)
- factor_red[l] = lejos;
- for (l = suelo_y1; l <= 201; l++)
- factor_red[l] = cerca;
+ if (num_ejec == 2)
+ color_abc(VERDE_CLARO);
+
+ if (num_ejec != 2) {
+ for (l = 0; l <= suelo_y1; l++)
+ factor_red[l] = lejos;
+ for (l = suelo_y1; l <= 201; l++)
+ factor_red[l] = cerca;
- chiquez = (float)(cerca-lejos) / (float)(suelo_y2 - suelo_y1);
- for (l = suelo_y1; l <= suelo_y2; l++) {
- factor_red[l] = (int)(lejos + pequegnez);
- pequegnez = pequegnez + chiquez;
+ chiquez = (float)(cerca - lejos) / (float)(suelo_y2 - suelo_y1);
+ for (l = suelo_y1; l <= suelo_y2; l++) {
+ factor_red[l] = (int)(lejos + pequegnez);
+ pequegnez = pequegnez + chiquez;
+ }
}
if (!strcmp(num_room, "24.alg")) {
@@ -1550,221 +1646,37 @@ void DrasculaEngine::carga_escoba_1(const char *nom_fich) {
}
}
- if (hare_x == -1) {
- assert(obj_salir != -1);
- hare_x = x_alakeva[obj_salir];
- hare_y = y_alakeva[obj_salir];
- alto_hare = (ALTO_PERSONAJE * factor_red[hare_y]) / 100;
- ancho_hare = (ANCHO_PERSONAJE * factor_red[hare_y]) / 100;
- hare_y = hare_y - alto_hare;
- } else {
- alto_hare = (ALTO_PERSONAJE * factor_red[hare_y]) / 100;
- ancho_hare = (ANCHO_PERSONAJE * factor_red[hare_y]) / 100;
- }
- hare_se_mueve = 0;
- if (num_ejec == 5)
- hare_se_ve = 1;
-
- actualiza_datos();
-
- if (num_ejec <= 2)
- espuerta[7] = 0;
-
- if (!strcmp(num_room, "26.alg"))
- conta_ciego_vez = (int)vez();
-
- if (musica_antes != musica_room)
- playmusic(musica_room);
-
- if (!strcmp(num_room, "24.alg") && flags[29] == 1)
- animacion_7_4();
-
- if (!strcmp(num_room, "45.alg"))
- hare_se_ve = 0;
- if (!strcmp(num_room, "49.alg") && flags[7] == 0)
- animacion_4_5();
-
- refresca_pantalla();
-}
-
-void DrasculaEngine::carga_escoba_2(const char *nom_fich) {
- int soc, l, martin, obj_salir;
- char pant1[20], pant2[20], pant3[20], pant4[20];
- char para_codificar[20];
- char buffer[256];
-
- hay_nombre = 0;
-
- strcpy(para_codificar, nom_fich);
- canal_p(para_codificar);
- strcpy(datos_actuales, nom_fich);
-
- buffer_teclado();
-
- ald = new Common::File;
- ald->open(nom_fich);
- if (!ald->isOpen()) {
- error("missing data file");
- }
- int size = ald->size();
-
- getLine(ald, buffer, size);
- sscanf(buffer, "%s", num_room);
- strcat(num_room, ".alg");
-
- getLine(ald, buffer, size);
- sscanf(buffer, "%d", &musica_room);
- getLine(ald, buffer, size);
- sscanf(buffer, "%s", pantalla_disco);
- getLine(ald, buffer, size);
- sscanf(buffer, "%d", &nivel_osc);
-
- getLine(ald, buffer, size);
- sscanf(buffer, "%d", &martin);
- if (martin == 0)
- goto martini;
- ancho_hare = martin;
- getLine(ald, buffer, size);
- sscanf(buffer, "%d",&alto_hare);
- getLine(ald, buffer, size);
- sscanf(buffer, "%d",&alto_pies);
- getLine(ald, buffer, size);
- sscanf(buffer, "%d",&paso_x);
- getLine(ald, buffer, size);
- sscanf(buffer, "%d",&paso_y);
-
- getLine(ald, buffer, size);
- sscanf(buffer, "%s",pant1);
- getLine(ald, buffer, size);
- sscanf(buffer, "%s",pant2);
- getLine(ald, buffer, size);
- sscanf(buffer, "%s",pant3);
- getLine(ald, buffer, size);
- sscanf(buffer, "%s",pant4);
-
- lee_dibujos(pant2);
- descomprime_dibujo(dir_hare_dch, 1);
- lee_dibujos(pant1);
- descomprime_dibujo(dir_hare_frente, 1);
- lee_dibujos(pant4);
- descomprime_dibujo(dir_hare_fondo, 1);
-
- strcpy(fondo_y_menu, pant4);
-
-martini:
-
- getLine(ald, buffer, size);
- sscanf(buffer, "%d", &objs_room);
-
- for (l = 0; l < objs_room; l++) {
- getLine(ald, buffer, size);
- sscanf(buffer, "%d", &num_obj[l]);
- getLine(ald, buffer, size);
- sscanf(buffer, "%s", nombre_obj[l]);
- getLine(ald, buffer, size);
- sscanf(buffer, "%d", &x1[l]);
- getLine(ald, buffer, size);
- sscanf(buffer, "%d", &y1[l]);
- getLine(ald, buffer, size);
- sscanf(buffer, "%d", &x2[l]);
- getLine(ald, buffer, size);
- sscanf(buffer, "%d", &y2[l]);
- getLine(ald, buffer, size);
- sscanf(buffer, "%d", &sitiobj_x[l]);
- getLine(ald, buffer, size);
- sscanf(buffer, "%d", &sitiobj_y[l]);
- getLine(ald, buffer, size);
- sscanf(buffer, "%d", &sentidobj[l]);
- getLine(ald, buffer, size);
- sscanf(buffer, "%d", &visible[l]);
- getLine(ald, buffer, size);
- sscanf(buffer, "%d", &espuerta[l]);
- if (espuerta[l] != 0) {
- getLine(ald, buffer, size);
- sscanf(buffer, "%s", alapantallakeva[l]);
- getLine(ald, buffer, size);
- sscanf(buffer, "%d", &x_alakeva[l]);
- getLine(ald, buffer, size);
- sscanf(buffer, "%d", &y_alakeva[l]);
- getLine(ald, buffer, size);
- sscanf(buffer, "%d", &sentido_alkeva[l]);
- getLine(ald, buffer, size);
- sscanf(buffer, "%d", &alapuertakeva[l]);
- puertas_cerradas(l);
+ if (num_ejec != 2) {
+ if (hare_x == -1) {
+ assert(obj_salir != -1);
+ hare_x = x_alakeva[obj_salir];
+ hare_y = y_alakeva[obj_salir];
+ alto_hare = (ALTO_PERSONAJE * factor_red[hare_y]) / 100;
+ ancho_hare = (ANCHO_PERSONAJE * factor_red[hare_y]) / 100;
+ hare_y = hare_y - alto_hare;
+ } else {
+ alto_hare = (ALTO_PERSONAJE * factor_red[hare_y]) / 100;
+ ancho_hare = (ANCHO_PERSONAJE * factor_red[hare_y]) / 100;
}
+ hare_se_mueve = 0;
}
- getLine(ald, buffer, size);
- sscanf(buffer, "%d", &suelo_x1);
- getLine(ald, buffer, size);
- sscanf(buffer, "%d", &suelo_y1);
- getLine(ald, buffer, size);
- sscanf(buffer, "%d", &suelo_x2);
- getLine(ald, buffer, size);
- sscanf(buffer, "%d", &suelo_y2);
-
- delete ald;
-
- canal_p(para_codificar);
-
- if (martin == 0) {
- paso_x = PASO_HARE_X;
- paso_y = PASO_HARE_Y;
- alto_hare = ALTO_PERSONAJE;
- ancho_hare = ANCHO_PERSONAJE;
- alto_pies = PIES_HARE;
- lee_dibujos("97.alg");
- descomprime_dibujo(dir_hare_dch, 1);
- lee_dibujos("96.alg");
- descomprime_dibujo(dir_hare_frente, 1);
- lee_dibujos("99.alg");
- descomprime_dibujo(dir_hare_fondo, 1);
-
- strcpy(fondo_y_menu,"99.alg");
- }
-
- obj_salir = -1;
- for (l = 0; l < objs_room; l++) {
- if (num_obj[l] == obj_saliendo)
- obj_salir = l;
- }
-
- if (hare_x == -1) {
- assert(obj_salir != -1);
- hare_x = x_alakeva[obj_salir];
- hare_y = y_alakeva[obj_salir] - alto_hare;
+ if (num_ejec == 2) {
+ soc = 0;
+ for (l = 0; l < 6; l++) {
+ soc = soc + ancho_hare;
+ frame_x[l] = soc;
+ }
}
- hare_se_mueve = 0;
-
- lee_dibujos(pantalla_disco);
- descomprime_dibujo(dir_dibujo3, 1);
-
- lee_dibujos(num_room);
- descomprime_dibujo(dir_dibujo1, MEDIA);
-
- DIBUJA_FONDO(0, 171, 0, 0, ANCHOBJ, ALTOBJ, dir_hare_fondo, dir_dibujo3);
-
- color_hare();
- if (nivel_osc != 0)
- funde_hare(nivel_osc);
- paleta_hare_claro();
- color_hare();
- funde_hare(nivel_osc + 2);
- paleta_hare_oscuro();
-
- hare_claro();
- cambio_de_color = -1;
- color_abc(VERDE_CLARO);
-
- soc = 0;
- for (l = 0; l < 6; l++) {
- soc = soc + ancho_hare;
- frame_x[l] = soc;
- }
+ if (num_ejec == 5)
+ hare_se_ve = 1;
actualiza_datos();
+ if (num_ejec == 1)
+ espuerta[7] = 0;
+
if (!strcmp(num_room, "14.alg") && flags[39] == 1)
musica_room = 16;
else if (!strcmp(num_room, "15.alg") && flags[39] == 1)
@@ -1780,9 +1692,17 @@ martini:
stopmusic();
if ((!strcmp(num_room, "9.alg")) || (strcmp(num_room, "2.alg"))
- || (!strcmp(num_room, "14.alg")) || (!strcmp(num_room, "18.alg")))
+ || (!strcmp(num_room, "14.alg")) || (!strcmp(num_room, "18.alg"))
+ || (!strcmp(num_room, "26.alg")))
conta_ciego_vez = (int)vez();
+ if (!strcmp(num_room, "24.alg") && flags[29] == 1)
+ animacion_7_4();
+ if (!strcmp(num_room, "45.alg"))
+ hare_se_ve = 0;
+ if (!strcmp(num_room, "49.alg") && flags[7] == 0)
+ animacion_4_5();
+
refresca_pantalla();
}
@@ -1794,7 +1714,7 @@ void DrasculaEngine::borra_pantalla() {
void DrasculaEngine::lleva_al_hare(int punto_x, int punto_y) {
if (num_ejec == 5 || num_ejec == 6) {
- if (hare_se_ve==0) {
+ if (hare_se_ve == 0) {
hare_x = sitio_x;
hare_y = sitio_y;
goto fin;
@@ -1863,20 +1783,21 @@ void DrasculaEngine::comprueba_objetos() {
}
}
- if (num_ejec == 1)
+ if (num_ejec == 2) {
if (x_raton > hare_x + 2 && y_raton > hare_y + 2
- && x_raton < hare_x + ancho_hare - 2 && y_raton < hare_y + alto_hare - 2 && veo == 0) {
+ && x_raton < hare_x + ancho_hare - 2 && y_raton < hare_y + alto_hare - 2) {
strcpy(texto_nombre, "hacker");
hay_nombre = 1;
veo = 1;
}
- else if (num_ejec == 2)
+ } else {
if (x_raton > hare_x + 2 && y_raton > hare_y + 2
- && x_raton < hare_x + ancho_hare - 2 && y_raton < hare_y + alto_hare - 2) {
+ && x_raton < hare_x + ancho_hare - 2 && y_raton < hare_y + alto_hare - 2 && veo == 0) {
strcpy(texto_nombre, "hacker");
hay_nombre = 1;
veo = 1;
}
+ }
if (veo == 0)
hay_nombre = 0;
@@ -3608,14 +3529,13 @@ int DrasculaEngine::music_status() {
void DrasculaEngine::refresca_pantalla() {
DIBUJA_FONDO(0, 0, 0, 0, 320, 200, dir_dibujo1, dir_zona_pantalla);
actualiza_refresco_antes();
- if (num_ejec <= 2)
- pon_hare();
- else if (num_ejec == 3) {
+ if (num_ejec == 3) {
if (flags[0] == 0)
pon_hare();
else
DIBUJA_BLOQUE(113, 54, hare_x - 20, hare_y - 1, 77, 89, dir_dibujo3, dir_zona_pantalla);
- }
+ } else
+ pon_hare();
actualiza_refresco();
}
@@ -3687,11 +3607,39 @@ void DrasculaEngine::canal_p(const char *fich){
rename(fich2, fich);
}
-void DrasculaEngine::puertas_cerradas (int l) {
- if (num_ejec == 1)
+void DrasculaEngine::puertas_cerradas(int l) {
+ if (num_ejec == 1 || num_ejec == 3 || num_ejec == 5 || num_ejec == 6)
return;
-
- if (num_ejec == 4) {
+ else if (num_ejec == 2) {
+ if (num_obj[l] == 138 && flags[0] == 0)
+ espuerta[l] = 0;
+ else if (num_obj[l] == 138 && flags[0] == 1)
+ espuerta[l] = 1;
+ else if (num_obj[l] == 136 && flags[8] == 0)
+ espuerta[l] = 0;
+ else if (num_obj[l] == 136 && flags[8] == 1)
+ espuerta[l] = 1;
+ else if (num_obj[l] == 156 && flags[16] == 0)
+ espuerta[l] = 0;
+ else if (num_obj[l] == 156 && flags[16] == 1)
+ espuerta[l] = 1;
+ else if (num_obj[l] == 163 && flags[17] == 0)
+ espuerta[l] = 0;
+ else if (num_obj[l] == 163 && flags[17] == 1)
+ espuerta[l] = 1;
+ else if (num_obj[l] == 177 && flags[15] == 0)
+ espuerta[l] = 0;
+ else if (num_obj[l] == 177 && flags[15] == 1)
+ espuerta[l] = 1;
+ else if (num_obj[l] == 175 && flags[40] == 0)
+ espuerta[l] = 0;
+ else if (num_obj[l] == 175 && flags[40] == 1)
+ espuerta[l] = 1;
+ else if (num_obj[l] == 173 && flags[36] == 0)
+ espuerta[l] = 0;
+ else if (num_obj[l] == 173 && flags[36] == 1)
+ espuerta[l] = 1;
+ } else if (num_ejec == 4) {
if (num_obj[l] == 101 && flags[0] == 0)
espuerta[l] = 0;
else if (num_obj[l] == 101 && flags[0] == 1 && flags[28] == 1)
@@ -3744,37 +3692,7 @@ void DrasculaEngine::puertas_cerradas (int l) {
espuerta[l] = 0;
else if (num_obj[l] == 122 && flags[7] == 1)
espuerta[l] = 1;
- return;
}
-
- if (num_obj[l] == 138 && flags[0] == 0)
- espuerta[l] = 0;
- else if (num_obj[l] == 138 && flags[0] == 1)
- espuerta[l] = 1;
- else if (num_obj[l] == 136 && flags[8] == 0)
- espuerta[l] = 0;
- else if (num_obj[l] == 136 && flags[8] == 1)
- espuerta[l] = 1;
- else if (num_obj[l] == 156 && flags[16] == 0)
- espuerta[l] = 0;
- else if (num_obj[l] == 156 && flags[16] == 1)
- espuerta[l] = 1;
- else if (num_obj[l] == 163 && flags[17] == 0)
- espuerta[l] = 0;
- else if (num_obj[l] == 163 && flags[17] == 1)
- espuerta[l] = 1;
- else if (num_obj[l] == 177 && flags[15] == 0)
- espuerta[l] = 0;
- else if (num_obj[l] == 177 && flags[15] == 1)
- espuerta[l] = 1;
- else if (num_obj[l] == 175 && flags[40] == 0)
- espuerta[l] = 0;
- else if (num_obj[l] == 175 && flags[40] == 1)
- espuerta[l] = 1;
- else if (num_obj[l] == 173 && flags[36] == 0)
- espuerta[l] = 0;
- else if (num_obj[l] == 173 && flags[36] == 1)
- espuerta[l] = 1;
}
void DrasculaEngine::color_hare() {
@@ -3837,18 +3755,7 @@ void DrasculaEngine::empieza_andar() {
paso_x = PASO_HARE_X;
paso_y = PASO_HARE_Y;
- if (num_ejec == 1) {
- if ((sitio_x < hare_x + ancho_hare / 2 ) && (sitio_y <= (hare_y + alto_hare)))
- cuadrante_1();
- else if ((sitio_x < hare_x + ancho_hare / 2) && (sitio_y > (hare_y + alto_hare)))
- cuadrante_3();
- else if ((sitio_x > hare_x + ancho_hare / 2) && (sitio_y <= (hare_y + alto_hare)))
- cuadrante_2();
- else if ((sitio_x > hare_x + ancho_hare / 2) && (sitio_y > (hare_y + alto_hare)))
- cuadrante_4();
- else
- hare_se_mueve = 0;
- } else if (num_ejec == 2) {
+ if (num_ejec == 2) {
if ((sitio_x < hare_x) && (sitio_y <= (hare_y + alto_hare)))
cuadrante_1();
else if ((sitio_x < hare_x) && (sitio_y > (hare_y + alto_hare)))
@@ -3861,6 +3768,17 @@ void DrasculaEngine::empieza_andar() {
anda_parriba();
else if (sitio_y > hare_y + alto_hare)
anda_pabajo();
+ } else {
+ if ((sitio_x < hare_x + ancho_hare / 2 ) && (sitio_y <= (hare_y + alto_hare)))
+ cuadrante_1();
+ else if ((sitio_x < hare_x + ancho_hare / 2) && (sitio_y > (hare_y + alto_hare)))
+ cuadrante_3();
+ else if ((sitio_x > hare_x + ancho_hare / 2) && (sitio_y <= (hare_y + alto_hare)))
+ cuadrante_2();
+ else if ((sitio_x > hare_x + ancho_hare / 2) && (sitio_y > (hare_y + alto_hare)))
+ cuadrante_4();
+ else
+ hare_se_mueve = 0;
}
conta_vez = vez();
}
@@ -4001,7 +3919,7 @@ void DrasculaEngine::pon_hare() {
}
}
- if (num_ejec == 1)
+ if (num_ejec == 1 || num_ejec == 4 || num_ejec == 5 || num_ejec == 6)
if (hare_se_ve == 0)
goto no_vuelco;
@@ -4010,76 +3928,76 @@ void DrasculaEngine::pon_hare() {
pos_hare[1] = DIF_MASK_HARE;
pos_hare[2] = hare_x;
pos_hare[3] = hare_y;
- if (num_ejec == 1) {
- pos_hare[4] = ANCHO_PERSONAJE;
- pos_hare[5] = ALTO_PERSONAJE;
- } else if (num_ejec == 2) {
+ if (num_ejec == 2) {
pos_hare[4] = ancho_hare;
pos_hare[5] = alto_hare;
+ } else {
+ pos_hare[4] = ANCHO_PERSONAJE;
+ pos_hare[5] = ALTO_PERSONAJE;
}
if (sentido_hare == 0) {
pos_hare[1] = 0;
- if (num_ejec == 1)
+ if (num_ejec == 2)
+ DIBUJA_BLOQUE_CUT(pos_hare, dir_hare_dch, dir_zona_pantalla);
+ else
reduce_hare_chico(pos_hare[0], pos_hare[1], pos_hare[2], pos_hare[3], pos_hare[4], pos_hare[5],
factor_red[hare_y + alto_hare], dir_hare_dch, dir_zona_pantalla);
- else if (num_ejec == 2)
- DIBUJA_BLOQUE_CUT(pos_hare, dir_hare_dch, dir_zona_pantalla);
} else if (sentido_hare == 1)
- if (num_ejec == 1)
+ if (num_ejec == 2)
+ DIBUJA_BLOQUE_CUT(pos_hare, dir_hare_dch, dir_zona_pantalla);
+ else
reduce_hare_chico(pos_hare[0], pos_hare[1], pos_hare[2], pos_hare[3], pos_hare[4], pos_hare[5],
factor_red[hare_y + alto_hare], dir_hare_dch, dir_zona_pantalla);
- else if (num_ejec == 2)
- DIBUJA_BLOQUE_CUT(pos_hare, dir_hare_dch, dir_zona_pantalla);
else if (sentido_hare == 2)
- if (num_ejec == 1)
+ if (num_ejec == 2)
+ DIBUJA_BLOQUE_CUT(pos_hare, dir_hare_fondo, dir_zona_pantalla);
+ else
reduce_hare_chico(pos_hare[0], pos_hare[1], pos_hare[2], pos_hare[3], pos_hare[4], pos_hare[5],
factor_red[hare_y + alto_hare], dir_hare_fondo, dir_zona_pantalla);
- else if (num_ejec == 2)
- DIBUJA_BLOQUE_CUT(pos_hare, dir_hare_fondo, dir_zona_pantalla);
else
- if (num_ejec == 1)
+ if (num_ejec == 2)
+ DIBUJA_BLOQUE_CUT(pos_hare, dir_hare_frente, dir_zona_pantalla);
+ else
reduce_hare_chico( pos_hare[0], pos_hare[1], pos_hare[2], pos_hare[3], pos_hare[4], pos_hare[5],
factor_red[hare_y + alto_hare], dir_hare_frente, dir_zona_pantalla);
- else if (num_ejec == 2)
- DIBUJA_BLOQUE_CUT(pos_hare, dir_hare_frente, dir_zona_pantalla);
} else if (hare_se_mueve == 1) {
pos_hare[0] = frame_x[num_frame];
pos_hare[1] = frame_y + DIF_MASK_HARE;
pos_hare[2] = hare_x;
pos_hare[3] = hare_y;
- if (num_ejec == 1) {
- pos_hare[4] = ANCHO_PERSONAJE;
- pos_hare[5] = ALTO_PERSONAJE;
- } else if (num_ejec == 2) {
+ if (num_ejec == 2) {
pos_hare[4] = ancho_hare;
pos_hare[5] = alto_hare;
+ } else {
+ pos_hare[4] = ANCHO_PERSONAJE;
+ pos_hare[5] = ALTO_PERSONAJE;
}
if (sentido_hare == 0) {
pos_hare[1] = 0;
- if (num_ejec == 1)
+ if (num_ejec == 2)
+ DIBUJA_BLOQUE_CUT(pos_hare, dir_hare_dch, dir_zona_pantalla);
+ else
reduce_hare_chico(pos_hare[0], pos_hare[1], pos_hare[2], pos_hare[3], pos_hare[4], pos_hare[5],
factor_red[hare_y + alto_hare], dir_hare_dch, dir_zona_pantalla);
- else if (num_ejec == 2)
- DIBUJA_BLOQUE_CUT(pos_hare, dir_hare_dch, dir_zona_pantalla);
} else if (sentido_hare == 1)
if (num_ejec == 1)
+ DIBUJA_BLOQUE_CUT(pos_hare, dir_hare_dch, dir_zona_pantalla);
+ else
reduce_hare_chico(pos_hare[0], pos_hare[1], pos_hare[2], pos_hare[3], pos_hare[4], pos_hare[5],
factor_red[hare_y + alto_hare], dir_hare_dch, dir_zona_pantalla);
- else if (num_ejec == 2)
- DIBUJA_BLOQUE_CUT(pos_hare, dir_hare_dch, dir_zona_pantalla);
else if (sentido_hare == 2)
- if (num_ejec == 1)
+ if (num_ejec == 2)
+ DIBUJA_BLOQUE_CUT(pos_hare, dir_hare_fondo, dir_zona_pantalla);
+ else
reduce_hare_chico(pos_hare[0], pos_hare[1], pos_hare[2], pos_hare[3], pos_hare[4], pos_hare[5],
factor_red[hare_y + alto_hare], dir_hare_fondo, dir_zona_pantalla);
- else if (num_ejec == 2)
- DIBUJA_BLOQUE_CUT(pos_hare, dir_hare_fondo, dir_zona_pantalla);
else
- if (num_ejec == 1)
+ if (num_ejec == 2)
+ DIBUJA_BLOQUE_CUT(pos_hare, dir_hare_frente, dir_zona_pantalla);
+ else
reduce_hare_chico(pos_hare[0], pos_hare[1], pos_hare[2], pos_hare[3], pos_hare[4], pos_hare[5],
factor_red[hare_y + alto_hare], dir_hare_frente, dir_zona_pantalla);
- else if (num_ejec == 2)
- DIBUJA_BLOQUE_CUT(pos_hare, dir_hare_frente, dir_zona_pantalla);
no_vuelco:
aumenta_num_frame();
@@ -4097,12 +4015,12 @@ void DrasculaEngine::menu_sin_volcar() {
h = objetos_que_tengo[n];
if (h != 0)
- if (num_ejec < 6)
+ if (num_ejec == 6)
DIBUJA_FONDO(x_pol[n], y_pol[n], x_obj[n], y_obj[n],
- ANCHOBJ, ALTOBJ, dir_hare_frente, dir_zona_pantalla);
+ ANCHOBJ, ALTOBJ, dir_mesa, dir_zona_pantalla);
else
DIBUJA_FONDO(x_pol[n], y_pol[n], x_obj[n], y_obj[n],
- ANCHOBJ, ALTOBJ, dir_mesa, dir_zona_pantalla);
+ ANCHOBJ, ALTOBJ, dir_hare_frente, dir_zona_pantalla);
DIBUJA_BLOQUE(x1d_menu[h], y1d_menu[h], x_obj[n], y_obj[n],
ANCHOBJ, ALTOBJ, dir_hare_fondo, dir_zona_pantalla);
@@ -4171,7 +4089,7 @@ bool DrasculaEngine::sal_de_la_habitacion(int l) {
strcpy(salgo, alapantallakeva[l]);
strcat(salgo, ".ald");
hare_x = -1;
- carga_escoba_1(salgo);
+ carga_escoba(salgo);
}
}
} else if (num_ejec == 2) {
@@ -4182,13 +4100,13 @@ bool DrasculaEngine::sal_de_la_habitacion(int l) {
sentido_hare = sentido_alkeva[l];
obj_saliendo = alapuertakeva[l];
rompo = 1;
- musica_antes = musica_room;
+ musica_antes = musica_room;
if (num_obj[l] == 136)
animacion_2_2();
if (num_obj[l] == 124)
animacion_3_2();
if (num_obj[l] == 173)
- animacion_35();
+ animacion_35_2();
if (num_obj[l] == 146 && flags[39] == 1) {
flags[5] = 1;
flags[11] = 1;
@@ -4199,11 +4117,11 @@ bool DrasculaEngine::sal_de_la_habitacion(int l) {
suma_objeto(11);
}
borra_pantalla();
- ald->close();
+ delete ald;
strcpy(salgo, alapantallakeva[l]);
strcat(salgo, ".ald");
hare_x =- 1;
- carga_escoba_2(salgo);
+ carga_escoba(salgo);
}
} else if (num_ejec == 3) {
puertas_cerradas(l);
@@ -4221,7 +4139,7 @@ bool DrasculaEngine::sal_de_la_habitacion(int l) {
strcpy(salgo, alapantallakeva[l]);
strcat(salgo, ".ald");
hare_x =- 1;
- carga_escoba_2(salgo);
+ carga_escoba(salgo);
}
} else if (num_ejec == 4) {
puertas_cerradas(l);
@@ -4242,7 +4160,7 @@ bool DrasculaEngine::sal_de_la_habitacion(int l) {
strcpy(salgo, alapantallakeva[l]);
strcat(salgo, ".ald");
hare_x = -1;
- carga_escoba_1(salgo);
+ carga_escoba(salgo);
}
} else if (num_ejec == 5) {
puertas_cerradas(l);
@@ -4261,7 +4179,7 @@ bool DrasculaEngine::sal_de_la_habitacion(int l) {
strcpy(salgo, alapantallakeva[l]);
strcat(salgo, ".ald");
hare_x = -1;
- carga_escoba_1(salgo);
+ carga_escoba(salgo);
}
} else if (num_ejec == 6) {
puertas_cerradas(l);
@@ -4280,7 +4198,7 @@ bool DrasculaEngine::sal_de_la_habitacion(int l) {
strcpy(salgo, alapantallakeva[l]);
strcat(salgo, ".ald");
hare_x = -1;
- carga_escoba_1(salgo);
+ carga_escoba(salgo);
if (obj_saliendo == 105)
animacion_19_6();
@@ -4994,10 +4912,10 @@ char DrasculaEngine::codifica(char car) {
void DrasculaEngine::cuadrante_1() {
float distancia_x = 0, distancia_y;
- if (num_ejec == 1)
- distancia_x = hare_x + ancho_hare / 2 - sitio_x;
- else if (num_ejec == 2)
+ if (num_ejec == 2)
distancia_x = hare_x + ancho_hare - sitio_x;
+ else
+ distancia_x = hare_x + ancho_hare / 2 - sitio_x;
distancia_y = (hare_y + alto_hare) - sitio_y;
@@ -5015,10 +4933,10 @@ void DrasculaEngine::cuadrante_1() {
void DrasculaEngine::cuadrante_2() {
float distancia_x = 0, distancia_y;
- if (num_ejec == 1)
- distancia_x = abs(hare_x + ancho_hare / 2 - sitio_x);
- else if (num_ejec == 2)
+ if (num_ejec == 2)
distancia_x = abs(hare_x + ancho_hare - sitio_x);
+ else
+ distancia_x = abs(hare_x + ancho_hare / 2 - sitio_x);
distancia_y = (hare_y + alto_hare) - sitio_y;
@@ -5036,10 +4954,10 @@ void DrasculaEngine::cuadrante_2() {
void DrasculaEngine::cuadrante_3() {
float distancia_x = 0, distancia_y;
- if (num_ejec == 1)
- distancia_x = hare_x + ancho_hare / 2 - sitio_x;
- else if (num_ejec == 2)
+ if (num_ejec == 2)
distancia_x = hare_x + ancho_hare - sitio_x;
+ else
+ distancia_x = hare_x + ancho_hare / 2 - sitio_x;
distancia_y = sitio_y - (hare_y + alto_hare);
@@ -5057,10 +4975,10 @@ void DrasculaEngine::cuadrante_3() {
void DrasculaEngine::cuadrante_4() {
float distancia_x = 0, distancia_y;
- if (num_ejec == 1)
- distancia_x = abs(hare_x + ancho_hare / 2 - sitio_x);
- else if (num_ejec == 2)
+ if (num_ejec == 2)
distancia_x = abs(hare_x + ancho_hare - sitio_x);
+ else
+ distancia_x = abs(hare_x + ancho_hare / 2 - sitio_x);
distancia_y = sitio_y - (hare_y + alto_hare);
@@ -5206,7 +5124,7 @@ void DrasculaEngine::aumenta_num_frame() {
}
}
- if (num_ejec == 1) {
+ if (num_ejec != 2) {
diferencia_y = alto_hare - (int)nuevo_alto;
diferencia_x = ancho_hare - (int)nuevo_ancho;
hare_y = hare_y + diferencia_y;
@@ -6868,7 +6786,7 @@ void DrasculaEngine::animacion_31(){
suma_objeto(20);
}
-void DrasculaEngine::animacion_35() {
+void DrasculaEngine::animacion_35_2() {
int n, x = 0;
lleva_al_hare(96, 165);
@@ -7484,7 +7402,7 @@ void DrasculaEngine::refresca_6_antes() {
(hare_x > 75 && hare_y + alto_hare > 183 && hare_x < 145))
cambio_de_color = 0;
else
- cambio_de_color=1;
+ cambio_de_color = 1;
if (cambio_col_antes != cambio_de_color && cambio_de_color == 1)
hare_oscuro();
@@ -7519,7 +7437,7 @@ void DrasculaEngine::refresca_9_antes() {
if (frame_ciego == 9)
frame_ciego = 0;
} else
- frame_ciego=3;
+ frame_ciego = 3;
}
void DrasculaEngine::refresca_12_antes() {
@@ -8420,7 +8338,7 @@ void DrasculaEngine::animacion_12_5() {
hare_x = -1;
obj_saliendo = 104;
sin_verbo();
- carga_escoba_1("57.ald");
+ carga_escoba("57.ald");
}
void DrasculaEngine::animacion_13_5() {
@@ -8866,7 +8784,7 @@ void DrasculaEngine::animacion_1_6() {
sentido_dr = 0;
habla_dr_izq(TEXTD35,"d35.als");
borra_pantalla();
- carga_escoba_1("102.ald");
+ carga_escoba("102.ald");
activa_pendulo();
}
@@ -8926,7 +8844,7 @@ void DrasculaEngine::animacion_6_6() {
obj_saliendo = 104;
hare_x = -1;
sin_verbo();
- carga_escoba_1("58.ald");
+ carga_escoba("58.ald");
hare_se_ve = 1;
sentido_hare = 1;
anima("hbp.bin", 14);
@@ -8953,7 +8871,7 @@ void DrasculaEngine::animacion_9_6() {
borra_pantalla();
hare_x = -1;
obj_saliendo = 108;
- carga_escoba_1("59.ald");
+ carga_escoba("59.ald");
strcpy(num_room, "nada.alg");
lee_dibujos("nota2.alg");
descomprime_dibujo(dir_dibujo1, MEDIA);
diff --git a/engines/drascula/drascula.h b/engines/drascula/drascula.h
index 245dbe4ed2..229e6d71b3 100644
--- a/engines/drascula/drascula.h
+++ b/engines/drascula/drascula.h
@@ -419,7 +419,7 @@ public:
char alapantallakeva[40][20];
int x_alakeva[40], y_alakeva[40], sentido_alkeva[40], alapuertakeva[40];
int x1[40], y1[40], x2[40], y2[40];
- int lleva_objeto , objeto_que_lleva;
+ int lleva_objeto, objeto_que_lleva;
int con_voces;
int menu_bar, menu_scr, hay_nombre;
char texto_nombre[20];
@@ -462,7 +462,7 @@ public:
int cont_sv;
int term_int;
int num_ejec;
- int cual_ejec, hay_que_load;
+ int hay_que_load;
char nom_partida[13];
int _color;
int corta_musica;
@@ -525,7 +525,7 @@ public:
void animacion_32();
void animacion_33();
void animacion_34();
- void animacion_35();
+ void animacion_35_2();
void animacion_36();
void refresca_1_antes();
@@ -551,8 +551,7 @@ public:
void sin_verbo();
void para_cargar(char[]);
- void carga_escoba_1(const char *);
- void carga_escoba_2(const char *);
+ void carga_escoba(const char *);
void borra_pantalla();
void lleva_al_hare(int, int);
void mueve_cursor();