Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <conio.h>
- #include <iostream>
- #include <ctime>
- #include <stdlib.h>
- using namespace std;
- using namespace System;
- #define LIMITE_ANCHO 100
- #define LIMITE_ALTO 27
- #define LIMITER 20
- #define DISPARO 32
- enum Direccion { Arriba = 72, Abajo = 80, Izquierda = 75, Derecha = 77 };
- enum Color { Negro, Rojo, Verde, Azul, Blanco, Celeste, Amarillo, Gris, Magenta, DarkRed, DarkBlue, DarkGreen, DarkCyan, DarkYellow, DarkGray, DarkMagenta };
- int posicionx = 0;
- int posiciony = 0;
- int posicionnavex = 0;
- int posicionnavey = 0;
- int posicionestrellax = 0;
- int posicionestrellay = 0;
- short aleartorio(short ini, short fin) {
- return rand() % (fin - ini + 1) + ini;
- }
- void colorearCaracter(Color color) {
- switch (color) {
- case Negro: Console::ForegroundColor = ConsoleColor::Black; break;
- case Rojo: Console::ForegroundColor = ConsoleColor::Red; break;
- case Verde: Console::ForegroundColor = ConsoleColor::Green; break;
- case Azul: Console::ForegroundColor = ConsoleColor::Blue; break;
- case Blanco: Console::ForegroundColor = ConsoleColor::White; break;
- case Celeste:Console::ForegroundColor = ConsoleColor::Cyan; break;
- case Amarillo:Console::ForegroundColor = ConsoleColor::Yellow; break;
- case Gris:Console::ForegroundColor = ConsoleColor::Gray; break;
- case Magenta:Console::ForegroundColor = ConsoleColor::Magenta; break;
- case DarkRed:Console::ForegroundColor = ConsoleColor::DarkRed; break;
- case DarkBlue:Console::ForegroundColor = ConsoleColor::DarkBlue; break;
- case DarkGreen:Console::ForegroundColor = ConsoleColor::DarkGreen; break;
- case DarkCyan:Console::ForegroundColor = ConsoleColor::DarkCyan; break;
- case DarkYellow:Console::ForegroundColor = ConsoleColor::DarkYellow; break;
- case DarkGray:Console::ForegroundColor = ConsoleColor::DarkGray; break;
- case DarkMagenta:Console::ForegroundColor = ConsoleColor::DarkMagenta; break;
- }
- }
- void colorearFondo(Color color) {
- switch (color) {
- case Negro: Console::BackgroundColor = ConsoleColor::Black; break;
- case Rojo: Console::BackgroundColor = ConsoleColor::Red; break;
- case Verde: Console::BackgroundColor = ConsoleColor::Green; break;
- case Azul: Console::BackgroundColor = ConsoleColor::Blue; break;
- case Blanco: Console::BackgroundColor = ConsoleColor::White; break;
- case Celeste:Console::BackgroundColor = ConsoleColor::Cyan; break;
- case Amarillo:Console::BackgroundColor = ConsoleColor::Yellow; break;
- case Gris:Console::BackgroundColor = ConsoleColor::Gray; break;
- case Magenta:Console::BackgroundColor = ConsoleColor::Magenta; break;
- case DarkRed:Console::BackgroundColor = ConsoleColor::DarkRed; break;
- case DarkBlue:Console::BackgroundColor = ConsoleColor::DarkBlue; break;
- case DarkGreen:Console::BackgroundColor = ConsoleColor::DarkGreen; break;
- case DarkCyan:Console::BackgroundColor = ConsoleColor::DarkCyan; break;
- case DarkYellow:Console::BackgroundColor = ConsoleColor::DarkYellow; break;
- case DarkGray:Console::BackgroundColor = ConsoleColor::DarkGray; break;
- case DarkMagenta:Console::BackgroundColor = ConsoleColor::DarkMagenta; break;
- }
- }
- /************************************************************************************************************************/
- typedef struct Bala {
- short _x, _y;
- char _img;
- Bala(short x = 0, short y = 0) {
- _x = x;
- _y = y;
- _img = '|';
- }
- void animar() {
- borrar();
- mover();
- dibujar();
- }
- void borrar() {
- Console::SetCursorPosition(_x, _y);
- cout << ' ';
- }
- void mover() {
- if (_y > 1) _y--;
- }
- void dibujar() {
- Console::SetCursorPosition(_x, _y);
- if (_y == 1) {
- cout << " ";
- }
- else
- cout << _img;
- }
- };
- typedef struct Balaenemiga {
- short _x, _y;
- char _img;
- short retraso = 0;
- Balaenemiga(short x = 0, short y = 0) {
- _x = x;
- _y = y;
- _img = '|';
- }
- void animar() {
- borrar();
- mover();
- dibujar();
- }
- void borrar() {
- Console::SetCursorPosition(_x, _y);
- cout << ' ';
- }
- void mover() {
- if (_y <LIMITE_ALTO) _y++;
- }
- void dibujar() {
- Console::SetCursorPosition(_x, _y);
- if (_y == LIMITE_ALTO || _y == LIMITE_ALTO - 1) {
- cout << " ";
- }
- else
- cout << _img;
- }
- };
- typedef struct Nave {
- short _x, _y;
- short _n;
- short retraso = 0;
- short _vidas = 3;
- Bala** balas;
- const short _alto = 2, _ancho = 5;
- const char _img[2][5] = { { ' ', ' ', char(220), ' ', ' ' },
- { char(174), char(186), char(219), char(186), char(175) } };
- Nave(short x, short y, short n) {
- _x = x;
- _y = y;
- _n = n;
- cargarBalas();
- }
- ~Nave() {
- delete[] balas;
- }
- void animar(Direccion dir) {
- borrar();
- mover(dir);
- dibujar();
- }
- void borrar() {
- for (short f = 0; f < _alto; ++f) {
- Console::SetCursorPosition(_x, _y + f);
- for (short c = 0; c < _ancho; ++c) {
- cout << " ";
- }
- }
- }
- void mover(Direccion dir) {
- switch (dir) {
- case Arriba: if (_y - 1 > 0) _y--; break;
- case Abajo: if (_y + 1 < LIMITE_ALTO - 3) _y++; break;
- case Izquierda: if (_x - 1 > 0) _x--; break;
- case Derecha: if (_x + 1 < LIMITE_ANCHO) _x++; break;
- posicionnavey = _y;
- posicionnavex = _x;
- }
- }
- void dibujar() {
- for (short f = 0; f < _alto; ++f) {
- Console::SetCursorPosition(_x, _y + f);
- for (short c = 0; c < _ancho; ++c) {
- colorearCaracter(Azul);
- if (c == 2) {
- colorearCaracter(Rojo);
- }
- cout << _img[f][c];
- if (c == 2) {
- colorearCaracter(Blanco);
- }
- colorearCaracter(Blanco);
- }
- }
- }
- void cargarBalas() {
- balas = new Bala *[_n];
- for (short i = 0; i < _n; ++i)
- balas[i] = new Bala();
- }
- Bala* disparar() {
- if (_n == 0)
- return NULL;
- else {
- Bala* bala = balas[_n - 1];
- bala->_x = _x + 2;
- bala->_y = _y - 1;
- balas[_n - 1] = NULL;
- --_n;
- return bala;
- }
- }
- };
- typedef struct NaveEnemiga {
- short _x, _y, _dx, _dy, _retraso;
- char _img[1][5] = { '<','|','*', '|' ,'>' };
- short _vidas = 20;
- short _n;
- public:
- NaveEnemiga(short x = 0, short y = 0, short dx = 0, short dy = 0) {
- _x = x;
- _y = y;
- _dx = dx;
- _dy = dy;
- _retraso = 0;
- }
- void animar() {
- if (_retraso == 20) {
- borrar();
- mover();
- dibujar();
- _retraso = 0;
- }
- _retraso++;
- }
- void borrar() {
- for (short f = 0; f < 1; ++f) {
- Console::SetCursorPosition(_x, _y + f);
- for (short c = 0; c < 5; ++c) {
- cout << " ";
- }
- }
- }
- void mover() {
- if (_x + _dx < 1 || _x + _dx > LIMITE_ANCHO - 1) _dx *= -1;
- if (_y + _dy < 2 || _y + _dy > LIMITE_ALTO - 1) _dy *= -1;
- _x += _dx;
- _y += _dy;
- }
- void dibujar() {
- for (short f = 0; f < 1; ++f) {
- Console::SetCursorPosition(_x, _y + f);
- for (short c = 0; c < 5; ++c) {
- colorearCaracter(Rojo);
- cout << _img[f][c];
- colorearCaracter(Blanco);
- }
- }
- }
- };
- typedef struct NaveEnemiga1 {
- short _x, _y, _dx, _dy, _retraso;
- char _img[1][5] = { '<','|',char(176), '|' ,'>' };
- short _vidas = 20;
- short _n;
- public:
- NaveEnemiga1(short x, short y, short dx, short dy) {
- _x = x;
- _y = y;
- _dx = dx;
- _dy = dy;
- _retraso = 0;
- }
- void animar() {
- if (_retraso == 3) {
- borrar();
- mover();
- dibujar();
- _retraso = 0;
- }
- _retraso++;
- }
- void borrar() {
- for (short f = 0; f < 1; ++f) {
- Console::SetCursorPosition(_x, _y + f);
- for (short c = 0; c < 5; ++c) {
- cout << " ";
- }
- }
- }
- void mover() {
- if (_x + _dx < 1 || _x + _dx > LIMITE_ANCHO - 1) _dx *= -1;
- if (_y + _dy < 2 || _y + _dy > LIMITE_ALTO - 1) _dy *= -1;
- _x += _dx;
- _y += _dy;
- }
- void dibujar() {
- for (short f = 0; f < 1; ++f) {
- Console::SetCursorPosition(_x, _y + f);
- for (short c = 0; c < 5; ++c) {
- colorearCaracter(Amarillo);
- cout << _img[f][c];
- colorearCaracter(Blanco);
- }
- }
- }
- };
- typedef struct NaveEnemiga2 {
- short _x, _y, _dx, _dy, _retraso;
- char _img[1][5] = { '<','|',char(176), '|' ,'>' };
- short _vidas = 30;
- Balaenemiga** balasenemigas;
- short _n;
- public:
- NaveEnemiga2(short x, short y, short dx, short dy, short n) {
- _x = x;
- _y = y;
- _dx = dx;
- _dy = dy;
- _n = n;
- _retraso = 0;
- cargarBalas();
- }
- void animar() {
- if (_retraso == 7) {
- borrar();
- mover();
- dibujar();
- _retraso = 0;
- }
- _retraso++;
- }
- void borrar() {
- for (short f = 0; f < 1; ++f) {
- Console::SetCursorPosition(_x, _y + f);
- for (short c = 0; c < 5; ++c) {
- cout << " ";
- }
- }
- }
- void mover() {
- if (_x + _dx < 1 || _x + _dx > LIMITE_ANCHO - 1) _dx *= -1;
- if (_y + _dy < 2 || _y + _dy > LIMITE_ALTO - 9) _dy *= -1;
- _x += _dx;
- _y += _dy;
- }
- void dibujar() {
- for (short f = 0; f < 1; ++f) {
- Console::SetCursorPosition(_x, _y + f);
- for (short c = 0; c < 5; ++c) {
- colorearCaracter(Verde);
- if (_vidas == 29 || _vidas == 26 || _vidas == 23)
- colorearCaracter(DarkMagenta);
- cout << _img[f][c];
- colorearCaracter(Blanco);
- }
- }
- }
- void cargarBalas() {
- balasenemigas = new Balaenemiga *[_n];
- for (short i = 0; i < _n; ++i)
- balasenemigas[i] = new Balaenemiga();
- }
- Balaenemiga* disparar() {
- if (_n == 0)
- return NULL;
- else {
- Balaenemiga* balaenemiga = balasenemigas[_n - 1];
- balaenemiga->_x = _x + 2;
- balaenemiga->_y = _y + 1;
- balasenemigas[_n - 1] = NULL;
- --_n;
- return balaenemiga;
- }
- }
- };
- void Marco() {
- colorearCaracter(Magenta);
- for (int i = 0; i <= LIMITE_ALTO + 1; ++i) {
- for (int j = 0; j <= LIMITE_ANCHO + 4; ++j)
- if (i == 0 || i == LIMITE_ALTO + 1 || j == 0 || j == LIMITE_ANCHO + 4)
- cout << "*";
- else
- cout << " ";
- cout << endl;
- }
- colorearCaracter(Blanco);
- }
- void imprimirMensaje(Nave& nave, int& contador, short& score, int &tiempo) {
- Console::SetCursorPosition(LIMITE_ANCHO + 5, 0);
- cout << "Vidas: " << nave._vidas;
- Console::SetCursorPosition(LIMITE_ANCHO + 5, 2);
- if (contador <= 3)
- colorearCaracter(Rojo);
- cout << "Municion: " << contador;
- colorearCaracter(Blanco);
- Console::SetCursorPosition(LIMITE_ANCHO + 5, 4);
- cout << "Score: " << score;
- Console::SetCursorPosition(LIMITE_ANCHO + 5, 6);
- cout << "Tiempo: " << tiempo-- / 100 + 5;
- Console::SetCursorPosition(LIMITE_ANCHO + 17, 2);
- cout << " ";
- if (contador == 9) {
- Console::SetCursorPosition(LIMITE_ANCHO + 16, 2);
- cout << " ";
- }
- Console::SetCursorPosition(LIMITE_ANCHO + 15, 6);
- cout << " ";
- }
- inline bool choque(Nave& nave, NaveEnemiga& enemiga) {
- return nave._x == enemiga._x && nave._y == enemiga._y;
- }
- typedef struct Estrellas {
- short _x, _y, _dy, _retraso, _n;
- char _img = '*';
- public:
- Estrellas() {
- _x = aleartorio(1, 99);
- _y = aleartorio(1, 24);
- _dy = 1;
- _retraso = 0;
- }
- void animar() {
- if (_retraso == 3) {
- borrar();
- mover();
- dibujar();
- _retraso = 0;
- }
- _retraso++;
- }
- void borrar() {
- Console::SetCursorPosition(_x, _y);
- cout << " ";
- }
- void mover() {
- if (_y + _dy < 1 || _y + _dy > LIMITE_ALTO) _y = 1;
- _y += _dy;
- }
- void dibujar() {
- Console::SetCursorPosition(_x, _y);
- cout << _img;
- }
- };
- void Pantalla_de_Incio() {
- colorearCaracter(DarkCyan);
- Console::SetCursorPosition(11, 4);
- cout << "*************** ********** **** ********** *************** **********" << endl;
- Console::SetCursorPosition(10, 5);
- cout << "*************** *********** **** *********** *************** ***********" << endl;
- Console::SetCursorPosition(9, 6);
- cout << "**** **** **** **** **** **** **** **** ****" << endl;
- Console::SetCursorPosition(8, 7);
- cout << "**** **** **** **** **** **** **** **** ****" << endl;
- Console::SetCursorPosition(7, 8);
- cout << "**** **** **** **** **** **** **** **** ****" << endl;
- Console::SetCursorPosition(6, 9);
- cout << "*************** *************** **** *************** *************** ***************" << endl;
- Console::SetCursorPosition(5, 10);
- cout << "*************** **************** **** **************** *************** ****************" << endl;
- Console::SetCursorPosition(4, 11);
- cout << "**** **** **** **** **** **** **** **** **** **** ****" << endl;
- Console::SetCursorPosition(3, 12);
- cout << "**** **** **** **** **** **** **** **** **** **** ****" << endl;
- Console::SetCursorPosition(2, 13);
- cout << "*************** **** **** **************** **** **** *************** **** ****" << endl;
- Console::SetCursorPosition(1, 14);
- cout << "*************** **** **** **************** **** **** *************** **** ****" << endl << endl;
- colorearCaracter(Blanco);
- Console::SetCursorPosition(38, 16);
- cout << "Press any key to continue...";
- system("pause>0");
- system("cls");
- _getch;
- }
- /*************************************************************/
- void jugar() {
- int a, tiempo = 9500, algo = 0, algo1 = 0;
- short zzz = 30;
- short Nivel1 = 0, niv0 = 0, Nivel2 = 0, niv1 = 0, Nivel3 = 0, Niv2 = 0, niv3 = 0, Nivel4 = 0;
- short retraso = 0;
- short score = 0;
- short nEstrellas = 10;
- short nBalas = 100;
- short retrasobala = 0, retrasobala1 = 0, retrasobala2 = 0, retrasobala3 = 0, retrasobala4 = 0, retrasobala5 = 0, retrasobala6 = 0, retrasobala7 = 0, retrasobala8 = 0, retrasobala9 = 0;
- int municion = nBalas - 1;
- short nBalasActual = 0;
- short balasene = 1000;
- short balaseneActual = 0, balaseneActual1 = 0, balaseneActual2 = 0, balaseneActual3 = 0, balaseneActual4 = 0, balaseneActual5 = 0, balaseneActual6 = 0, balaseneActual7 = 0, balaseneActual8 = 0, balaseneActual9 = 0;
- Balaenemiga** balaenemigas = new Balaenemiga *[balasene];
- for (short i = 0; i < balasene; ++i) {
- balaenemigas[i] = NULL;
- }
- Balaenemiga** balaenemigas1 = new Balaenemiga *[balasene];
- for (short i = 0; i < balasene; ++i) {
- balaenemigas1[i] = NULL;
- }
- Balaenemiga** balaenemigas2 = new Balaenemiga *[balasene];
- for (short i = 0; i < balasene; ++i) {
- balaenemigas2[i] = NULL;
- }
- Balaenemiga** balaenemigas3 = new Balaenemiga *[balasene];
- for (short i = 0; i < balasene; ++i) {
- balaenemigas3[i] = NULL;
- }
- Balaenemiga** balaenemigas4 = new Balaenemiga *[balasene];
- for (short i = 0; i < balasene; ++i) {
- balaenemigas4[i] = NULL;
- }
- Balaenemiga** balaenemigas5 = new Balaenemiga *[balasene];
- for (short i = 0; i < balasene; ++i) {
- balaenemigas5[i] = NULL;
- }
- Balaenemiga** balaenemigas6 = new Balaenemiga *[balasene];
- for (short i = 0; i < balasene; ++i) {
- balaenemigas6[i] = NULL;
- }
- Balaenemiga** balaenemigas7 = new Balaenemiga *[balasene];
- for (short i = 0; i < balasene; ++i) {
- balaenemigas7[i] = NULL;
- }
- Balaenemiga** balaenemigas8 = new Balaenemiga *[balasene];
- for (short i = 0; i < balasene; ++i) {
- balaenemigas8[i] = NULL;
- }
- Balaenemiga** balaenemigas9 = new Balaenemiga *[balasene];
- for (short i = 0; i < balasene; ++i) {
- balaenemigas9[i] = NULL;
- }
- Bala * *balas = new Bala *[nBalas];
- for (short i = 0; i < nBalas; ++i)
- balas[i] = NULL;
- Nave* nave = new Nave(LIMITE_ANCHO / 2 - 3, LIMITE_ALTO - 3, nBalas);
- NaveEnemiga enemiga1 = NaveEnemiga(aleartorio(1, LIMITE_ANCHO - 5), aleartorio(2, LIMITE_ALTO - 10), -1, +1);
- NaveEnemiga enemiga2 = NaveEnemiga(aleartorio(1, LIMITE_ANCHO - 5), aleartorio(2, LIMITE_ALTO - 10), -1, +1);
- NaveEnemiga enemiga3 = NaveEnemiga(aleartorio(1, LIMITE_ANCHO - 5), aleartorio(2, LIMITE_ALTO - 10), -1, +1);
- NaveEnemiga enemiga4 = NaveEnemiga(aleartorio(1, LIMITE_ANCHO - 5), aleartorio(2, LIMITE_ALTO - 10), -1, +1);
- NaveEnemiga enemiga5 = NaveEnemiga(aleartorio(1, LIMITE_ANCHO - 5), aleartorio(2, LIMITE_ALTO - 10), -1, +1);
- NaveEnemiga enemiga6 = NaveEnemiga(aleartorio(1, LIMITE_ANCHO - 5), aleartorio(2, LIMITE_ALTO - 10), -1, +1);
- NaveEnemiga enemiga7 = NaveEnemiga(aleartorio(1, LIMITE_ANCHO - 5), aleartorio(2, LIMITE_ALTO - 10), -1, +1);
- NaveEnemiga enemiga8 = NaveEnemiga(aleartorio(1, LIMITE_ANCHO - 5), aleartorio(2, LIMITE_ALTO - 10), -1, +1);
- NaveEnemiga enemiga9 = NaveEnemiga(aleartorio(1, LIMITE_ANCHO - 5), aleartorio(2, LIMITE_ALTO - 10), -1, +1);
- NaveEnemiga1 ene1 = NaveEnemiga1(aleartorio(1, LIMITE_ANCHO - 5), aleartorio(2, LIMITE_ALTO - 10), -1, +1);
- NaveEnemiga1 ene2 = NaveEnemiga1(aleartorio(1, LIMITE_ANCHO - 5), aleartorio(2, LIMITE_ALTO - 10), -1, +1);
- NaveEnemiga1 ene3 = NaveEnemiga1(aleartorio(1, LIMITE_ANCHO - 5), aleartorio(2, LIMITE_ALTO - 10), -1, +1);
- NaveEnemiga1 ene4 = NaveEnemiga1(aleartorio(1, LIMITE_ANCHO - 5), aleartorio(2, LIMITE_ALTO - 10), -1, +1);
- NaveEnemiga1 ene5 = NaveEnemiga1(aleartorio(1, LIMITE_ANCHO - 5), aleartorio(2, LIMITE_ALTO - 10), -1, +1);
- NaveEnemiga1 ene6 = NaveEnemiga1(aleartorio(1, LIMITE_ANCHO - 5), aleartorio(2, LIMITE_ALTO - 10), -1, +1);
- NaveEnemiga1 ene7 = NaveEnemiga1(aleartorio(1, LIMITE_ANCHO - 5), aleartorio(2, LIMITE_ALTO - 10), -1, +1);
- NaveEnemiga1 ene8 = NaveEnemiga1(aleartorio(1, LIMITE_ANCHO - 5), aleartorio(2, LIMITE_ALTO - 10), -1, +1);
- NaveEnemiga1 ene9 = NaveEnemiga1(aleartorio(1, LIMITE_ANCHO - 5), aleartorio(2, LIMITE_ALTO - 10), -1, +1);
- NaveEnemiga1 ene10 = NaveEnemiga1(aleartorio(1, LIMITE_ANCHO - 5), aleartorio(2, LIMITE_ALTO - 10), -1, +1);
- NaveEnemiga2 e1 = NaveEnemiga2(aleartorio(1, LIMITE_ANCHO - 5), aleartorio(2, LIMITE_ALTO - 10), -1, +1, balasene);
- NaveEnemiga2 e2 = NaveEnemiga2(aleartorio(1, LIMITE_ANCHO - 5), aleartorio(2, LIMITE_ALTO - 10), -1, +1, balasene);
- NaveEnemiga2 e3 = NaveEnemiga2(aleartorio(1, LIMITE_ANCHO - 5), aleartorio(2, LIMITE_ALTO - 10), -1, +1, balasene);
- NaveEnemiga2 e4 = NaveEnemiga2(aleartorio(1, LIMITE_ANCHO - 5), aleartorio(2, LIMITE_ALTO - 10), -1, +1, balasene);
- NaveEnemiga2 e5 = NaveEnemiga2(aleartorio(1, LIMITE_ANCHO - 5), aleartorio(2, LIMITE_ALTO - 10), -1, +1, balasene);
- NaveEnemiga2 e6 = NaveEnemiga2(aleartorio(1, LIMITE_ANCHO - 5), aleartorio(2, LIMITE_ALTO - 10), -1, +1, balasene);
- NaveEnemiga2 e7 = NaveEnemiga2(aleartorio(1, LIMITE_ANCHO - 5), aleartorio(2, LIMITE_ALTO - 10), -1, +1, balasene);
- NaveEnemiga2 e8 = NaveEnemiga2(aleartorio(1, LIMITE_ANCHO - 5), aleartorio(2, LIMITE_ALTO - 10), -1, +1, balasene);
- NaveEnemiga2 e9 = NaveEnemiga2(aleartorio(1, LIMITE_ANCHO - 5), aleartorio(2, LIMITE_ALTO - 10), -1, +1, balasene);
- NaveEnemiga2 e10 = NaveEnemiga2(aleartorio(1, LIMITE_ANCHO - 5), aleartorio(2, LIMITE_ALTO - 10), -1, +1, balasene);
- Estrellas* es = new Estrellas[30];
- Pantalla_de_Incio();
- Marco();
- nave->animar(Direccion(Arriba));
- while (true) {
- if (score == 12500 && Nivel4 == 0) { //Nivel 2 a Nivel 3
- Console::SetCursorPosition(LIMITE_ANCHO / 2 - 5, LIMITE_ALTO / 2);
- cout << "Nivel 4";
- if (niv3 == 60) {
- Console::SetCursorPosition(LIMITE_ANCHO / 2 - 5, LIMITE_ALTO / 2);
- cout << " ";
- Nivel4 = 1;
- }
- niv3++;
- }
- if (score == 7500 && Nivel3 == 0) { //Nivel 2 a Nivel 3
- Console::SetCursorPosition(LIMITE_ANCHO / 2 - 5, LIMITE_ALTO / 2);
- cout << "Nivel 3";
- if (Niv2 == 60) {
- Console::SetCursorPosition(LIMITE_ANCHO / 2 - 5, LIMITE_ALTO / 2);
- cout << " ";
- Nivel3 = 1;
- }
- Niv2++;
- }
- if (score == 2500 && Nivel2 == 0) { //Nivel 1 a Nivel 2
- Console::SetCursorPosition(LIMITE_ANCHO / 2 - 5, LIMITE_ALTO / 2);
- cout << "Nivel 2";
- if (niv1 == 60) {
- Console::SetCursorPosition(LIMITE_ANCHO / 2 - 5, LIMITE_ALTO / 2);
- cout << " ";
- Nivel2 = 1;
- }
- niv1++;
- }
- if (score == 0 && Nivel1 == 0) { //Nivel 2 a Nivel 3
- Console::SetCursorPosition(LIMITE_ANCHO / 2 - 5, LIMITE_ALTO / 2);
- cout << "Nivel 1";
- if (niv0 == 60) {
- Console::SetCursorPosition(LIMITE_ANCHO / 2 - 5, LIMITE_ALTO / 2);
- cout << " ";
- Nivel1 = 1;
- }
- niv0++;
- }
- /*******************************************************************************/
- if (Nivel1 == 1) {
- if (enemiga1._vidas == 20) {
- enemiga1.animar();
- for (int i = 0; i < nBalas; ++i) {
- if (balas[i] != NULL) {
- if ((balas[i]->_x == enemiga1._x + 2 && balas[i]->_y == enemiga1._y) || (balas[i]->_x == enemiga1._x && balas[i]->_y == enemiga1._y) || (balas[i]->_x == enemiga1._x + 1 && balas[i]->_y == enemiga1._y) || (balas[i]->_x == enemiga1._x + 3 && balas[i]->_y == enemiga1._y) || (balas[i]->_x == enemiga1._x + 4 && balas[i]->_y == enemiga1._y)) {
- enemiga1._vidas = 19;
- score += 100;
- retraso = 0;
- }
- }
- }
- }
- if (enemiga1._vidas == 19) {
- enemiga1.borrar();
- Console::SetCursorPosition(enemiga1._x + 1, enemiga1._y);
- cout << "100";
- if (retraso == 30) {
- Console::SetCursorPosition(enemiga1._x + 1, enemiga1._y);
- cout << " ";
- enemiga1._vidas = 18;
- }
- retraso++;
- if (enemiga1._vidas == 18)
- retraso = 0;
- }
- if (enemiga2._vidas == 20) {
- enemiga2.animar();
- for (int i = 0; i < nBalas; ++i) {
- if (balas[i] != NULL) {
- if ((balas[i]->_x == enemiga2._x + 2 && balas[i]->_y == enemiga2._y) || (balas[i]->_x == enemiga2._x + 1 && balas[i]->_y == enemiga2._y) || (balas[i]->_x == enemiga2._x && balas[i]->_y == enemiga2._y) || (balas[i]->_x == enemiga2._x + 3 && balas[i]->_y == enemiga2._y) || (balas[i]->_x == enemiga2._x + 4 && balas[i]->_y == enemiga2._y)) {
- enemiga2._vidas = 19;
- score += 100;
- retraso = 0;
- }
- }
- }
- }
- if (enemiga2._vidas == 19) {
- enemiga2.borrar();
- Console::SetCursorPosition(enemiga2._x + 1, enemiga2._y);
- cout << "100";
- if (retraso == 30) {
- Console::SetCursorPosition(enemiga2._x + 1, enemiga2._y);
- cout << " ";
- enemiga2._vidas = 18;
- }
- retraso++;
- if (enemiga2._vidas == 18)
- retraso = 0;
- }
- if (enemiga3._vidas == 20) {
- enemiga3.animar();
- for (int i = 0; i < nBalas; ++i) {
- if (balas[i] != NULL) {
- if ((balas[i]->_x == enemiga3._x + 2 && balas[i]->_y == enemiga3._y) || (balas[i]->_x == enemiga3._x && balas[i]->_y == enemiga3._y) || (balas[i]->_x == enemiga3._x + 1 && balas[i]->_y == enemiga3._y) || (balas[i]->_x == enemiga3._x + 3 && balas[i]->_y == enemiga3._y) || (balas[i]->_x == enemiga3._x + 4 && balas[i]->_y == enemiga3._y)) {
- enemiga3._vidas = 19;
- score += 100;
- retraso = 0;
- }
- }
- }
- }
- if (enemiga3._vidas == 19) {
- enemiga3.borrar();
- Console::SetCursorPosition(enemiga3._x + 1, enemiga3._y);
- cout << "100";
- if (retraso == 30) {
- Console::SetCursorPosition(enemiga3._x + 1, enemiga3._y);
- cout << " ";
- enemiga3._vidas = 18;
- }
- retraso++;
- if (enemiga3._vidas == 18)
- retraso = 0;
- }
- if (enemiga4._vidas == 20) {
- enemiga4.animar();
- for (int i = 0; i < nBalas; ++i) {
- if (balas[i] != NULL) {
- if ((balas[i]->_x == enemiga4._x + 2 && balas[i]->_y == enemiga4._y) || (balas[i]->_x == enemiga4._x && balas[i]->_y == enemiga4._y) || (balas[i]->_x == enemiga4._x + 1 && balas[i]->_y == enemiga4._y) || (balas[i]->_x == enemiga4._x + 3 && balas[i]->_y == enemiga4._y) || (balas[i]->_x == enemiga4._x + 4 && balas[i]->_y == enemiga4._y)) {
- enemiga4._vidas = 19;
- score += 100;
- retraso = 0;
- }
- }
- }
- }
- if (enemiga4._vidas == 19) {
- enemiga4.borrar();
- Console::SetCursorPosition(enemiga4._x + 1, enemiga4._y);
- cout << "100";
- if (retraso == 30) {
- Console::SetCursorPosition(enemiga4._x + 1, enemiga4._y);
- cout << " ";
- enemiga4._vidas = 18;
- }
- retraso++;
- if (enemiga4._vidas == 18)
- retraso = 0;
- }
- if (enemiga5._vidas == 20) {
- enemiga5.animar();
- for (int i = 0; i < nBalas; ++i) {
- if (balas[i] != NULL) {
- if ((balas[i]->_x == enemiga5._x + 2 && balas[i]->_y == enemiga5._y) || (balas[i]->_x == enemiga5._x && balas[i]->_y == enemiga5._y) || (balas[i]->_x == enemiga5._x + 1 && balas[i]->_y == enemiga5._y) || (balas[i]->_x == enemiga5._x + 3 && balas[i]->_y == enemiga5._y) || (balas[i]->_x == enemiga5._x + 4 && balas[i]->_y == enemiga5._y)) {
- enemiga5._vidas = 19;
- score += 100;
- retraso = 0;
- }
- }
- }
- }
- if (enemiga5._vidas == 19) {
- enemiga5.borrar();
- Console::SetCursorPosition(enemiga5._x + 1, enemiga5._y);
- cout << "100";
- if (retraso == 30) {
- Console::SetCursorPosition(enemiga5._x + 1, enemiga5._y);
- cout << " ";
- enemiga5._vidas = 18;
- }
- retraso++;
- if (enemiga5._vidas == 18)
- retraso = 0;
- }
- if (enemiga6._vidas == 20) {
- enemiga6.animar();
- for (int i = 0; i < nBalas; ++i) {
- if (balas[i] != NULL) {
- if ((balas[i]->_x == enemiga6._x + 2 && balas[i]->_y == enemiga6._y) || (balas[i]->_x == enemiga6._x && balas[i]->_y == enemiga6._y) || (balas[i]->_x == enemiga6._x + 1 && balas[i]->_y == enemiga6._y) || (balas[i]->_x == enemiga6._x + 3 && balas[i]->_y == enemiga6._y) || (balas[i]->_x == enemiga6._x + 4 && balas[i]->_y == enemiga6._y)) {
- enemiga6._vidas = 19;
- score += 100;
- retraso = 0;
- }
- }
- }
- }
- if (enemiga6._vidas == 19) {
- enemiga6.borrar();
- Console::SetCursorPosition(enemiga6._x + 1, enemiga6._y);
- cout << "100";
- if (retraso == 30) {
- Console::SetCursorPosition(enemiga6._x + 1, enemiga6._y);
- cout << " ";
- enemiga6._vidas = 18;
- }
- retraso++;
- if (enemiga6._vidas == 18)
- retraso = 0;
- }
- if (enemiga7._vidas == 20) {
- enemiga7.animar();
- for (int i = 0; i < nBalas; ++i) {
- if (balas[i] != NULL) {
- if ((balas[i]->_x == enemiga7._x + 2 && balas[i]->_y == enemiga7._y) || (balas[i]->_x == enemiga7._x && balas[i]->_y == enemiga7._y) || (balas[i]->_x == enemiga7._x + 1 && balas[i]->_y == enemiga7._y) || (balas[i]->_x == enemiga7._x + 3 && balas[i]->_y == enemiga7._y) || (balas[i]->_x == enemiga7._x + 4 && balas[i]->_y == enemiga7._y)) {
- enemiga7._vidas = 19;
- score += 100;
- retraso = 0;
- }
- }
- }
- }
- if (enemiga7._vidas == 19) {
- enemiga7.borrar();
- Console::SetCursorPosition(enemiga7._x + 1, enemiga7._y);
- cout << "100";
- if (retraso == 30) {
- Console::SetCursorPosition(enemiga7._x + 1, enemiga7._y);
- cout << " ";
- enemiga7._vidas = 18;
- }
- retraso++;
- if (enemiga7._vidas == 18)
- retraso = 0;
- }
- if (enemiga8._vidas == 20) {
- enemiga8.animar();
- for (int i = 0; i < nBalas; ++i) {
- if (balas[i] != NULL) {
- if ((balas[i]->_x == enemiga8._x + 2 && balas[i]->_y == enemiga8._y) || (balas[i]->_x == enemiga8._x && balas[i]->_y == enemiga8._y) || (balas[i]->_x == enemiga8._x + 1 && balas[i]->_y == enemiga8._y) || (balas[i]->_x == enemiga8._x + 3 && balas[i]->_y == enemiga8._y) || (balas[i]->_x == enemiga8._x + 4 && balas[i]->_y == enemiga8._y)) {
- enemiga8._vidas = 19;
- score += 100;
- retraso = 0;
- }
- }
- }
- }
- if (enemiga8._vidas == 19) {
- enemiga8.borrar();
- Console::SetCursorPosition(enemiga8._x + 1, enemiga8._y);
- cout << "100";
- if (retraso == 30) {
- Console::SetCursorPosition(enemiga8._x + 1, enemiga8._y);
- cout << " ";
- enemiga8._vidas = 18;
- }
- retraso++;
- if (enemiga8._vidas == 18)
- retraso = 0;
- }
- if (enemiga9._vidas == 20) {
- enemiga9.animar();
- for (int i = 0; i < nBalas; ++i) {
- if (balas[i] != NULL) {
- if ((balas[i]->_x == enemiga9._x + 2 && balas[i]->_y == enemiga9._y) || (balas[i]->_x == enemiga9._x && balas[i]->_y == enemiga9._y) || (balas[i]->_x == enemiga9._x + 1 && balas[i]->_y == enemiga9._y) || (balas[i]->_x == enemiga9._x + 3 && balas[i]->_y == enemiga9._y) || (balas[i]->_x == enemiga9._x + 4 && balas[i]->_y == enemiga9._y)) {
- enemiga9._vidas = 19;
- score += 100;
- retraso = 0;
- }
- }
- }
- }
- if (enemiga9._vidas == 19) {
- enemiga9.borrar();
- Console::SetCursorPosition(enemiga9._x + 1, enemiga9._y);
- cout << "100";
- if (retraso == 30) {
- Console::SetCursorPosition(enemiga9._x + 1, enemiga9._y);
- cout << " ";
- enemiga9._vidas = 18;
- }
- retraso++;
- if (enemiga9._vidas == 18)
- retraso = 0;
- }
- /********************************************************************************/
- if (ene1._vidas == 20) {
- ene1.animar();
- for (int i = 0; i < nBalas; ++i) {
- if (balas[i] != NULL) {
- if ((balas[i]->_x == ene1._x + 2 && balas[i]->_y == ene1._y) || (balas[i]->_x == ene1._x && balas[i]->_y == ene1._y) || (balas[i]->_x == ene1._x + 1 && balas[i]->_y == ene1._y) ||
- (balas[i]->_x == ene1._x + 3 && balas[i]->_y == ene1._y) || (balas[i]->_x == ene1._x + 4 && balas[i]->_y == ene1._y)) {
- ene1._vidas = 19;
- score += 300;
- retraso = 0;
- }
- }
- }
- }
- if (ene1._vidas == 19) {
- ene1.borrar();
- Console::SetCursorPosition(ene1._x + 1, ene1._y);
- cout << "300";
- if (retraso == 30) {
- Console::SetCursorPosition(ene1._x + 1, ene1._y);
- cout << " ";
- ene1._vidas = 18;
- }
- retraso++;
- if (ene1._vidas == 18)
- retraso = 0;
- }
- if (ene2._vidas == 20) {
- ene2.animar();
- for (int i = 0; i < nBalas; ++i) {
- if (balas[i] != NULL) {
- if ((balas[i]->_x == ene2._x + 2 && balas[i]->_y == ene2._y) || (balas[i]->_x == ene2._x && balas[i]->_y == ene2._y) || (balas[i]->_x == ene2._x + 1 && balas[i]->_y == ene2._y) ||
- (balas[i]->_x == ene2._x + 3 && balas[i]->_y == ene2._y) || (balas[i]->_x == ene2._x + 4 && balas[i]->_y == ene2._y)) {
- ene2._vidas = 19;
- score += 300;
- retraso = 0;
- }
- }
- }
- }
- if (ene2._vidas == 19) {
- ene2.borrar();
- Console::SetCursorPosition(ene2._x + 1, ene2._y);
- cout << "300";
- if (retraso == 30) {
- Console::SetCursorPosition(ene2._x + 1, ene2._y);
- cout << " ";
- ene2._vidas = 18;
- }
- retraso++;
- if (ene2._vidas == 18)
- retraso = 0;
- }
- /****************************************************************************/
- if (e1._vidas == 30 || e1._vidas == 29) {
- e1.animar();
- if (e1._x == nave->_x && retrasobala == 0) {
- balaenemigas[balaseneActual] = e1.disparar();
- balaseneActual++;
- retrasobala = 1;
- }
- for (short i = 0; i < balaseneActual; ++i) {
- if (i == balaseneActual - 4)
- balaenemigas[i]->animar();
- retrasobala = 0;
- }
- for (int i = 0; i < nBalas; ++i) {
- if (balas[i] != NULL) {
- if ((balas[i]->_x == e1._x + 2 && balas[i]->_y == e1._y) || (balas[i]->_x == e1._x && balas[i]->_y == e1._y) || (balas[i]->_x == e1._x + 1 && balas[i]->_y == e1._y) ||
- (balas[i]->_x == e1._x + 3 && balas[i]->_y == e1._y) || (balas[i]->_x == e1._x + 4 && balas[i]->_y == e1._y)) {
- e1._vidas--;
- if (e1._vidas == 28)
- score += 500;
- retraso = 0;
- }
- }
- }
- for (int i = 0; i < balasene; ++i) {
- if (balaenemigas[i] != NULL) {
- if ((balaenemigas[i]->_x == nave->_x + 2 && balaenemigas[i]->_y == nave->_y) || (balaenemigas[i]->_x == nave->_x && balaenemigas[i]->_y == nave->_y) || (balaenemigas[i]->_x == nave->_x + 1 && balaenemigas[i]->_y == nave->_y) ||
- (balaenemigas[i]->_x == nave->_x + 3 && balaenemigas[i]->_y == nave->_y) || (balaenemigas[i]->_x == nave->_x + 4 && balaenemigas[i]->_y == nave->_y) && algo == 0) {
- nave->borrar();
- balaenemigas[i]->borrar();
- Console::SetCursorPosition(LIMITE_ANCHO / 2 - 3, LIMITE_ALTO - 3);
- nave->_x = LIMITE_ANCHO / 2 - 3; nave->_y = LIMITE_ALTO - 3;
- nave->dibujar();
- nave->_vidas--;
- retraso = 0;
- algo = 1;
- }
- else if (balaenemigas[i]->_y == LIMITE_ALTO) {
- balaenemigas[i]->borrar();
- }
- }
- }
- }
- if (e1._vidas == 28) {
- e1.borrar();
- Console::SetCursorPosition(e1._x + 1, e1._y);
- cout << "500";
- if (retraso == 30) {
- Console::SetCursorPosition(e1._x + 1, e1._y);
- cout << " ";
- e1._vidas = 27;
- }
- retraso++;
- if (e1._vidas == 27)
- retraso = 0;
- }
- if (e2._vidas == 30 || e2._vidas == 29) {
- e2.animar();
- if (e2._x == nave->_x && retrasobala1 == 0) {
- balaenemigas1[balaseneActual1] = e2.disparar();
- balaseneActual1++;
- retrasobala1 = 1;
- }
- for (short i = 0; i < balaseneActual1; ++i) {
- if (i == balaseneActual1 - 4)
- balaenemigas1[i]->animar();
- retrasobala1 = 0;
- }
- for (int i = 0; i < nBalas; ++i) {
- if (balas[i] != NULL) {
- if ((balas[i]->_x == e2._x + 2 && balas[i]->_y == e2._y) || (balas[i]->_x == e2._x && balas[i]->_y == e2._y) || (balas[i]->_x == e2._x + 1 && balas[i]->_y == e2._y) ||
- (balas[i]->_x == e2._x + 3 && balas[i]->_y == e2._y) || (balas[i]->_x == e2._x + 4 && balas[i]->_y == e2._y)) {
- e2._vidas--;
- if (e2._vidas == 28)
- score += 500;
- retraso = 0;
- }
- }
- }
- for (int i = 0; i < balasene; ++i) {
- if (balaenemigas1[i] != NULL) {
- if ((balaenemigas1[i]->_x == nave->_x + 2 && balaenemigas1[i]->_y == nave->_y) || (balaenemigas1[i]->_x == nave->_x && balaenemigas1[i]->_y == nave->_y) || (balaenemigas1[i]->_x == nave->_x + 1 && balaenemigas1[i]->_y == nave->_y) ||
- (balaenemigas1[i]->_x == nave->_x + 3 && balaenemigas1[i]->_y == nave->_y) || (balaenemigas1[i]->_x == nave->_x + 4 && balaenemigas1[i]->_y == nave->_y) && algo1 == 0) {
- nave->borrar();
- Console::SetCursorPosition(LIMITE_ANCHO / 2 - 3, LIMITE_ALTO - 3);
- nave->_x = LIMITE_ANCHO / 2 - 3; nave->_y = LIMITE_ALTO - 3;
- nave->dibujar();
- nave->_vidas--;
- retraso = 0;
- algo1 = 1;
- }
- }
- }
- }
- if (e2._vidas == 28) {
- e2.borrar();
- Console::SetCursorPosition(e2._x + 1, e2._y);
- cout << "500";
- if (retraso == 30) {
- Console::SetCursorPosition(e2._x + 1, e2._y);
- cout << " ";
- e2._vidas = 27;
- }
- retraso++;
- if (e2._vidas == 27)
- retraso = 0;
- }
- }
- if (Nivel2 == 1) {
- zzz = 25;
- if (ene4._vidas == 20) {
- ene4.animar();
- for (int i = 0; i < nBalas; ++i) {
- if (balas[i] != NULL) {
- if ((balas[i]->_x == ene4._x + 2 && balas[i]->_y == ene4._y) || (balas[i]->_x == ene4._x && balas[i]->_y == ene4._y) || (balas[i]->_x == ene4._x + 1 && balas[i]->_y == ene4._y) ||
- (balas[i]->_x == ene4._x + 3 && balas[i]->_y == ene4._y) || (balas[i]->_x == ene4._x + 4 && balas[i]->_y == ene4._y)) {
- ene4._vidas = 19;
- score += 300;
- retraso = 0;
- }
- }
- }
- }
- if (ene4._vidas == 19) {
- ene4.borrar();
- Console::SetCursorPosition(ene4._x + 1, ene4._y);
- cout << "300";
- if (retraso == 30) {
- Console::SetCursorPosition(ene4._x + 1, ene4._y);
- cout << " ";
- ene4._vidas = 18;
- }
- retraso++;
- if (ene4._vidas == 18)
- retraso = 0;
- }
- if (ene1._vidas == 18) {
- ene1.animar();
- for (int i = 0; i < nBalas; ++i) {
- if (balas[i] != NULL) {
- if ((balas[i]->_x == ene1._x + 2 && balas[i]->_y == ene1._y) || (balas[i]->_x == ene1._x && balas[i]->_y == ene1._y) || (balas[i]->_x == ene1._x + 1 && balas[i]->_y == ene1._y) ||
- (balas[i]->_x == ene1._x + 3 && balas[i]->_y == ene1._y) || (balas[i]->_x == ene1._x + 4 && balas[i]->_y == ene1._y)) {
- ene1._vidas = 17;
- score += 300;
- retraso = 0;
- }
- }
- }
- }
- if (ene1._vidas == 17) {
- ene1.borrar();
- Console::SetCursorPosition(ene1._x + 1, ene1._y);
- cout << "300";
- if (retraso == 30) {
- Console::SetCursorPosition(ene1._x + 1, ene1._y);
- cout << " ";
- ene1._vidas = 16;
- }
- retraso++;
- if (ene1._vidas == 16)
- retraso = 0;
- }
- if (ene2._vidas == 18) {
- ene2.animar();
- for (int i = 0; i < nBalas; ++i) {
- if (balas[i] != NULL) {
- if ((balas[i]->_x == ene2._x + 2 && balas[i]->_y == ene2._y) || (balas[i]->_x == ene2._x && balas[i]->_y == ene2._y) || (balas[i]->_x == ene2._x + 1 && balas[i]->_y == ene2._y) ||
- (balas[i]->_x == ene2._x + 3 && balas[i]->_y == ene2._y) || (balas[i]->_x == ene2._x + 4 && balas[i]->_y == ene2._y)) {
- ene2._vidas = 17;
- score += 300;
- retraso = 0;
- }
- }
- }
- }
- if (ene2._vidas == 17) {
- ene2.borrar();
- Console::SetCursorPosition(ene2._x + 1, ene2._y);
- cout << "300";
- if (retraso == 30) {
- Console::SetCursorPosition(ene2._x + 1, ene2._y);
- cout << " ";
- ene2._vidas = 16;
- }
- retraso++;
- if (ene2._vidas == 16)
- retraso = 0;
- }
- if (ene3._vidas == 20) {
- ene3.animar();
- for (int i = 0; i < nBalas; ++i) {
- if (balas[i] != NULL) {
- if ((balas[i]->_x == ene3._x + 2 && balas[i]->_y == ene3._y) || (balas[i]->_x == ene3._x && balas[i]->_y == ene3._y) || (balas[i]->_x == ene3._x + 1 && balas[i]->_y == ene3._y) ||
- (balas[i]->_x == ene3._x + 3 && balas[i]->_y == ene3._y) || (balas[i]->_x == ene3._x + 4 && balas[i]->_y == ene3._y)) {
- ene3._vidas = 19;
- score += 300;
- retraso = 0;
- }
- }
- }
- }
- if (ene3._vidas == 19) {
- ene3.borrar();
- Console::SetCursorPosition(ene3._x + 1, ene3._y);
- cout << "300";
- if (retraso == 30) {
- Console::SetCursorPosition(ene3._x + 1, ene3._y);
- cout << " ";
- ene3._vidas = 18;
- }
- retraso++;
- if (ene3._vidas == 18)
- retraso = 0;
- }
- if (ene5._vidas == 20) {
- ene5.animar();
- for (int i = 0; i < nBalas; ++i) {
- if (balas[i] != NULL) {
- if ((balas[i]->_x == ene5._x + 2 && balas[i]->_y == ene5._y) || (balas[i]->_x == ene5._x && balas[i]->_y == ene5._y) || (balas[i]->_x == ene5._x + 1 && balas[i]->_y == ene5._y) ||
- (balas[i]->_x == ene5._x + 3 && balas[i]->_y == ene5._y) || (balas[i]->_x == ene5._x + 4 && balas[i]->_y == ene5._y)) {
- ene5._vidas = 19;
- score += 300;
- retraso = 0;
- }
- }
- }
- }
- if (ene5._vidas == 19) {
- ene5.borrar();
- Console::SetCursorPosition(ene5._x + 1, ene5._y);
- cout << "300";
- if (retraso == 30) {
- Console::SetCursorPosition(ene5._x + 1, ene5._y);
- cout << " ";
- ene5._vidas = 18;
- }
- retraso++;
- if (ene5._vidas == 18)
- retraso = 0;
- }
- if (ene6._vidas == 20) {
- ene6.animar();
- for (int i = 0; i < nBalas; ++i) {
- if (balas[i] != NULL) {
- if ((balas[i]->_x == ene6._x + 2 && balas[i]->_y == ene6._y) || (balas[i]->_x == ene6._x && balas[i]->_y == ene6._y) || (balas[i]->_x == ene6._x + 1 && balas[i]->_y == ene6._y) ||
- (balas[i]->_x == ene6._x + 3 && balas[i]->_y == ene6._y) || (balas[i]->_x == ene6._x + 4 && balas[i]->_y == ene6._y)) {
- ene6._vidas = 19;
- score += 300;
- retraso = 0;
- }
- }
- }
- }
- if (ene6._vidas == 19) {
- ene6.borrar();
- Console::SetCursorPosition(ene6._x + 1, ene6._y);
- cout << "300";
- if (retraso == 30) {
- Console::SetCursorPosition(ene6._x + 1, ene6._y);
- cout << " ";
- ene6._vidas = 18;
- }
- retraso++;
- if (ene6._vidas == 18)
- retraso = 0;
- }
- if (ene7._vidas == 20) {
- ene7.animar();
- for (int i = 0; i < nBalas; ++i) {
- if (balas[i] != NULL) {
- if ((balas[i]->_x == ene7._x + 2 && balas[i]->_y == ene7._y) || (balas[i]->_x == ene7._x && balas[i]->_y == ene7._y) || (balas[i]->_x == ene7._x + 1 && balas[i]->_y == ene7._y) ||
- (balas[i]->_x == ene7._x + 3 && balas[i]->_y == ene7._y) || (balas[i]->_x == ene7._x + 4 && balas[i]->_y == ene7._y)) {
- ene7._vidas = 19;
- score += 300;
- retraso = 0;
- }
- }
- }
- }
- if (ene7._vidas == 19) {
- ene7.borrar();
- Console::SetCursorPosition(ene7._x + 1, ene7._y);
- cout << "300";
- if (retraso == 30) {
- Console::SetCursorPosition(ene7._x + 1, ene7._y);
- cout << " ";
- ene7._vidas = 18;
- }
- retraso++;
- if (ene7._vidas == 18)
- retraso = 0;
- }
- if (ene8._vidas == 20) {
- ene8.animar();
- for (int i = 0; i < nBalas; ++i) {
- if (balas[i] != NULL) {
- if ((balas[i]->_x == ene8._x + 2 && balas[i]->_y == ene8._y) || (balas[i]->_x == ene8._x && balas[i]->_y == ene8._y) || (balas[i]->_x == ene8._x + 1 && balas[i]->_y == ene8._y) ||
- (balas[i]->_x == ene8._x + 3 && balas[i]->_y == ene8._y) || (balas[i]->_x == ene8._x + 4 && balas[i]->_y == ene8._y)) {
- ene8._vidas = 19;
- score += 300;
- retraso = 0;
- }
- }
- }
- }
- if (ene8._vidas == 19) {
- ene8.borrar();
- Console::SetCursorPosition(ene8._x + 1, ene8._y);
- cout << "300";
- if (retraso == 30) {
- Console::SetCursorPosition(ene8._x + 1, ene8._y);
- cout << " ";
- ene8._vidas = 18;
- }
- retraso++;
- if (ene8._vidas == 18)
- retraso = 0;
- }
- if (ene9._vidas == 20) {
- ene9.animar();
- for (int i = 0; i < nBalas; ++i) {
- if (balas[i] != NULL) {
- if ((balas[i]->_x == ene9._x + 2 && balas[i]->_y == ene9._y) || (balas[i]->_x == ene9._x && balas[i]->_y == ene9._y) || (balas[i]->_x == ene9._x + 1 && balas[i]->_y == ene9._y) ||
- (balas[i]->_x == ene9._x + 3 && balas[i]->_y == ene9._y) || (balas[i]->_x == ene9._x + 4 && balas[i]->_y == ene9._y)) {
- ene9._vidas = 19;
- score += 300;
- retraso = 0;
- }
- }
- }
- }
- if (ene9._vidas == 19) {
- ene9.borrar();
- Console::SetCursorPosition(ene9._x + 1, ene9._y);
- cout << "300";
- if (retraso == 30) {
- Console::SetCursorPosition(ene9._x + 1, ene9._y);
- cout << " ";
- ene9._vidas = 18;
- }
- retraso++;
- if (ene9._vidas == 18)
- retraso = 0;
- }
- if (ene10._vidas == 20) {
- ene10.animar();
- for (int i = 0; i < nBalas; ++i) {
- if (balas[i] != NULL) {
- if ((balas[i]->_x == ene10._x + 2 && balas[i]->_y == ene10._y) || (balas[i]->_x == ene10._x && balas[i]->_y == ene10._y) || (balas[i]->_x == ene10._x + 1 && balas[i]->_y == ene10._y) ||
- (balas[i]->_x == ene10._x + 3 && balas[i]->_y == ene10._y) || (balas[i]->_x == ene10._x + 4 && balas[i]->_y == ene10._y)) {
- ene10._vidas = 19;
- score += 300;
- retraso = 0;
- }
- }
- }
- }
- if (ene10._vidas == 19) {
- ene10.borrar();
- Console::SetCursorPosition(ene10._x + 1, ene10._y);
- cout << "300";
- if (retraso == 30) {
- Console::SetCursorPosition(ene10._x + 1, ene10._y);
- cout << " ";
- ene10._vidas = 18;
- }
- retraso++;
- if (ene10._vidas == 18)
- retraso = 0;
- }
- /***********************************************************************/
- if (e1._vidas == 27 || e1._vidas == 26) {
- e1.animar();
- if (e1._x == nave->_x && retrasobala == 0) {
- balaenemigas[balaseneActual] = e1.disparar();
- balaseneActual++;
- retrasobala = 1;
- }
- for (short i = 0; i < balaseneActual; ++i) {
- if (i == balaseneActual - 4)
- balaenemigas[i]->animar();
- retrasobala = 0;
- }
- for (int i = 0; i < nBalas; ++i) {
- if (balas[i] != NULL) {
- if ((balas[i]->_x == e1._x + 2 && balas[i]->_y == e1._y) || (balas[i]->_x == e1._x && balas[i]->_y == e1._y) || (balas[i]->_x == e1._x + 1 && balas[i]->_y == e1._y) ||
- (balas[i]->_x == e1._x + 3 && balas[i]->_y == e1._y) || (balas[i]->_x == e1._x + 4 && balas[i]->_y == e1._y)) {
- e1._vidas--;
- if (e1._vidas == 25)
- score += 500;
- retraso = 0;
- }
- }
- }
- for (int i = 0; i < balasene; ++i) {
- if (balaenemigas[i] != NULL) {
- if ((balaenemigas[i]->_x == nave->_x + 2 && balaenemigas[i]->_y == nave->_y) || (balaenemigas[i]->_x == nave->_x && balaenemigas[i]->_y == nave->_y) || (balaenemigas[i]->_x == nave->_x + 1 && balaenemigas[i]->_y == nave->_y) ||
- (balaenemigas[i]->_x == nave->_x + 3 && balaenemigas[i]->_y == nave->_y) || (balaenemigas[i]->_x == nave->_x + 4 && balaenemigas[i]->_y == nave->_y) && algo == 0) {
- nave->borrar();
- balaenemigas[i]->borrar();
- Console::SetCursorPosition(LIMITE_ANCHO / 2 - 3, LIMITE_ALTO - 3);
- nave->_x = LIMITE_ANCHO / 2 - 3; nave->_y = LIMITE_ALTO - 3;
- nave->dibujar();
- nave->_vidas--;
- retraso = 0;
- algo = 1;
- }
- else if (balaenemigas[i]->_y == LIMITE_ALTO) {
- balaenemigas[i]->borrar();
- }
- }
- }
- }
- if (e1._vidas == 25) {
- e1.borrar();
- Console::SetCursorPosition(e1._x + 1, e1._y);
- cout << "500";
- if (retraso == 30) {
- Console::SetCursorPosition(e1._x + 1, e1._y);
- cout << " ";
- e1._vidas = 24;
- }
- retraso++;
- if (e1._vidas == 24)
- retraso = 0;
- }
- if (e2._vidas == 27 || e2._vidas == 26) {
- e2.animar();
- if (e2._x == nave->_x && retrasobala == 0) {
- balaenemigas1[balaseneActual1] = e2.disparar();
- balaseneActual1++;
- retrasobala = 1;
- }
- for (short i = 0; i < balaseneActual1; ++i) {
- if (i == balaseneActual1 - 4)
- balaenemigas1[i]->animar();
- retrasobala = 0;
- }
- for (int i = 0; i < nBalas; ++i) {
- if (balas[i] != NULL) {
- if ((balas[i]->_x == e2._x + 2 && balas[i]->_y == e2._y) || (balas[i]->_x == e2._x && balas[i]->_y == e2._y) || (balas[i]->_x == e2._x + 1 && balas[i]->_y == e2._y) ||
- (balas[i]->_x == e2._x + 3 && balas[i]->_y == e2._y) || (balas[i]->_x == e2._x + 4 && balas[i]->_y == e2._y)) {
- e2._vidas--;
- if (e2._vidas == 25)
- score += 500;
- retraso = 0;
- }
- }
- }
- for (int i = 0; i < balasene; ++i) {
- if (balaenemigas1[i] != NULL) {
- if ((balaenemigas1[i]->_x == nave->_x + 2 && balaenemigas1[i]->_y == nave->_y) || (balaenemigas1[i]->_x == nave->_x && balaenemigas1[i]->_y == nave->_y) || (balaenemigas1[i]->_x == nave->_x + 1 && balaenemigas1[i]->_y == nave->_y) ||
- (balaenemigas1[i]->_x == nave->_x + 3 && balaenemigas1[i]->_y == nave->_y) || (balaenemigas1[i]->_x == nave->_x + 4 && balaenemigas1[i]->_y == nave->_y) && algo == 0) {
- nave->borrar();
- balaenemigas1[i]->borrar();
- Console::SetCursorPosition(LIMITE_ANCHO / 2 - 3, LIMITE_ALTO - 3);
- nave->_x = LIMITE_ANCHO / 2 - 3; nave->_y = LIMITE_ALTO - 3;
- nave->dibujar();
- nave->_vidas--;
- retraso = 0;
- algo = 1;
- }
- else if (balaenemigas1[i]->_y == LIMITE_ALTO) {
- balaenemigas1[i]->borrar();
- }
- }
- }
- }
- if (e2._vidas == 25) {
- e2.borrar();
- Console::SetCursorPosition(e2._x + 1, e2._y);
- cout << "500";
- if (retraso == 30) {
- Console::SetCursorPosition(e2._x + 1, e2._y);
- cout << " ";
- e2._vidas = 24;
- }
- retraso++;
- if (e2._vidas == 24)
- retraso = 0;
- }
- if (e3._vidas == 30 || e3._vidas == 29) {
- e3.animar();
- if (e3._x == nave->_x && retrasobala == 0) {
- balaenemigas2[balaseneActual2] = e3.disparar();
- balaseneActual2++;
- retrasobala = 1;
- }
- for (short i = 0; i < balaseneActual2; ++i) {
- if (i == balaseneActual2 - 4)
- balaenemigas2[i]->animar();
- retrasobala = 0;
- }
- for (int i = 0; i < nBalas; ++i) {
- if (balas[i] != NULL) {
- if ((balas[i]->_x == e3._x + 2 && balas[i]->_y == e3._y) || (balas[i]->_x == e3._x && balas[i]->_y == e3._y) || (balas[i]->_x == e3._x + 1 && balas[i]->_y == e3._y) ||
- (balas[i]->_x == e3._x + 3 && balas[i]->_y == e3._y) || (balas[i]->_x == e3._x + 4 && balas[i]->_y == e3._y)) {
- e3._vidas--;
- if (e3._vidas == 28)
- score += 500;
- retraso = 0;
- }
- }
- }
- for (int i = 0; i < balasene; ++i) {
- if (balaenemigas2[i] != NULL) {
- if ((balaenemigas2[i]->_x == nave->_x + 2 && balaenemigas2[i]->_y == nave->_y) || (balaenemigas2[i]->_x == nave->_x && balaenemigas2[i]->_y == nave->_y) || (balaenemigas2[i]->_x == nave->_x + 1 && balaenemigas2[i]->_y == nave->_y) ||
- (balaenemigas2[i]->_x == nave->_x + 3 && balaenemigas2[i]->_y == nave->_y) || (balaenemigas2[i]->_x == nave->_x + 4 && balaenemigas2[i]->_y == nave->_y) && algo == 0) {
- nave->borrar();
- balaenemigas2[i]->borrar();
- Console::SetCursorPosition(LIMITE_ANCHO / 2 - 3, LIMITE_ALTO - 3);
- nave->_x = LIMITE_ANCHO / 2 - 3; nave->_y = LIMITE_ALTO - 3;
- nave->dibujar();
- nave->_vidas--;
- retraso = 0;
- algo = 1;
- }
- else if (balaenemigas2[i]->_y == LIMITE_ALTO) {
- balaenemigas2[i]->borrar();
- }
- }
- }
- }
- if (e3._vidas == 28) {
- e3.borrar();
- Console::SetCursorPosition(e3._x + 1, e3._y);
- cout << "500";
- if (retraso == 30) {
- Console::SetCursorPosition(e3._x + 1, e3._y);
- cout << " ";
- e3._vidas = 27;
- }
- retraso++;
- if (e3._vidas == 27)
- retraso = 0;
- }
- if (e4._vidas == 30 || e4._vidas == 29) {
- e4.animar();
- if (e4._x == nave->_x && retrasobala == 0) {
- balaenemigas3[balaseneActual3] = e4.disparar();
- balaseneActual3++;
- retrasobala = 1;
- }
- for (short i = 0; i < balaseneActual3; ++i) {
- if (i == balaseneActual3 - 4)
- balaenemigas3[i]->animar();
- retrasobala = 0;
- }
- for (int i = 0; i < nBalas; ++i) {
- if (balas[i] != NULL) {
- if ((balas[i]->_x == e4._x + 2 && balas[i]->_y == e4._y) || (balas[i]->_x == e4._x && balas[i]->_y == e4._y) || (balas[i]->_x == e4._x + 1 && balas[i]->_y == e4._y) ||
- (balas[i]->_x == e4._x + 3 && balas[i]->_y == e4._y) || (balas[i]->_x == e4._x + 4 && balas[i]->_y == e4._y)) {
- e4._vidas--;
- if (e4._vidas == 28)
- score += 500;
- retraso = 0;
- }
- }
- }
- for (int i = 0; i < balasene; ++i) {
- if (balaenemigas3[i] != NULL) {
- if ((balaenemigas3[i]->_x == nave->_x + 2 && balaenemigas3[i]->_y == nave->_y) || (balaenemigas3[i]->_x == nave->_x && balaenemigas3[i]->_y == nave->_y) || (balaenemigas3[i]->_x == nave->_x + 1 && balaenemigas3[i]->_y == nave->_y) ||
- (balaenemigas3[i]->_x == nave->_x + 3 && balaenemigas3[i]->_y == nave->_y) || (balaenemigas3[i]->_x == nave->_x + 4 && balaenemigas3[i]->_y == nave->_y) && algo == 0) {
- nave->borrar();
- balaenemigas3[i]->borrar();
- Console::SetCursorPosition(LIMITE_ANCHO / 2 - 3, LIMITE_ALTO - 3);
- nave->_x = LIMITE_ANCHO / 2 - 3; nave->_y = LIMITE_ALTO - 3;
- nave->dibujar();
- nave->_vidas--;
- retraso = 0;
- algo = 1;
- }
- else if (balaenemigas3[i]->_y == LIMITE_ALTO) {
- balaenemigas3[i]->borrar();
- }
- }
- }
- }
- if (e4._vidas == 28) {
- e4.borrar();
- Console::SetCursorPosition(e4._x + 1, e4._y);
- cout << "500";
- if (retraso == 30) {
- Console::SetCursorPosition(e4._x + 1, e4._y);
- cout << " ";
- e4._vidas = 27;
- }
- retraso++;
- if (e4._vidas == 27)
- retraso = 0;
- }
- }
- if (Nivel3 == 1) {
- zzz = 15;
- if (e1._vidas == 24 || e1._vidas == 23) {
- e1.animar();
- if (e1._x == nave->_x && retrasobala == 0) {
- balaenemigas[balaseneActual] = e1.disparar();
- balaseneActual++;
- retrasobala = 1;
- }
- for (short i = 0; i < balaseneActual; ++i) {
- if (i == balaseneActual - 4)
- balaenemigas[i]->animar();
- retrasobala = 0;
- }
- for (int i = 0; i < nBalas; ++i) {
- if (balas[i] != NULL) {
- if ((balas[i]->_x == e1._x + 2 && balas[i]->_y == e1._y) || (balas[i]->_x == e1._x && balas[i]->_y == e1._y) || (balas[i]->_x == e1._x + 1 && balas[i]->_y == e1._y) ||
- (balas[i]->_x == e1._x + 3 && balas[i]->_y == e1._y) || (balas[i]->_x == e1._x + 4 && balas[i]->_y == e1._y)) {
- e1._vidas--;
- if (e1._vidas == 22)
- score += 500;
- retraso = 0;
- }
- }
- }
- for (int i = 0; i < balasene; ++i) {
- if (balaenemigas[i] != NULL) {
- if ((balaenemigas[i]->_x == nave->_x + 2 && balaenemigas[i]->_y == nave->_y) || (balaenemigas[i]->_x == nave->_x && balaenemigas[i]->_y == nave->_y) || (balaenemigas[i]->_x == nave->_x + 1 && balaenemigas[i]->_y == nave->_y) ||
- (balaenemigas[i]->_x == nave->_x + 3 && balaenemigas[i]->_y == nave->_y) || (balaenemigas[i]->_x == nave->_x + 4 && balaenemigas[i]->_y == nave->_y) && algo == 0) {
- nave->borrar();
- balaenemigas[i]->borrar();
- Console::SetCursorPosition(LIMITE_ANCHO / 2 - 3, LIMITE_ALTO - 3);
- nave->_x = LIMITE_ANCHO / 2 - 3; nave->_y = LIMITE_ALTO - 3;
- nave->dibujar();
- nave->_vidas--;
- retraso = 0;
- algo = 1;
- }
- else if (balaenemigas[i]->_y == LIMITE_ALTO) {
- balaenemigas[i]->borrar();
- }
- }
- }
- }
- if (e1._vidas == 22) {
- e1.borrar();
- Console::SetCursorPosition(e1._x + 1, e1._y);
- cout << "500";
- if (retraso == 21) {
- Console::SetCursorPosition(e1._x + 1, e1._y);
- cout << " ";
- e1._vidas = 21;
- }
- retraso++;
- if (e1._vidas == 21)
- retraso = 0;
- }
- if (e2._vidas == 24 || e2._vidas == 23) {
- e2.animar();
- if (e2._x == nave->_x && retrasobala == 0) {
- balaenemigas1[balaseneActual1] = e2.disparar();
- balaseneActual1++;
- retrasobala = 1;
- }
- for (short i = 0; i < balaseneActual1; ++i) {
- if (i == balaseneActual1 - 4)
- balaenemigas1[i]->animar();
- retrasobala = 0;
- }
- for (int i = 0; i < nBalas; ++i) {
- if (balas[i] != NULL) {
- if ((balas[i]->_x == e2._x + 2 && balas[i]->_y == e2._y) || (balas[i]->_x == e2._x && balas[i]->_y == e2._y) || (balas[i]->_x == e2._x + 1 && balas[i]->_y == e2._y) ||
- (balas[i]->_x == e2._x + 3 && balas[i]->_y == e2._y) || (balas[i]->_x == e2._x + 4 && balas[i]->_y == e2._y)) {
- e2._vidas--;
- if (e2._vidas == 22)
- score += 500;
- retraso = 0;
- }
- }
- }
- for (int i = 0; i < balasene; ++i) {
- if (balaenemigas1[i] != NULL) {
- if ((balaenemigas1[i]->_x == nave->_x + 2 && balaenemigas1[i]->_y == nave->_y) || (balaenemigas1[i]->_x == nave->_x && balaenemigas1[i]->_y == nave->_y) || (balaenemigas1[i]->_x == nave->_x + 1 && balaenemigas1[i]->_y == nave->_y) ||
- (balaenemigas1[i]->_x == nave->_x + 3 && balaenemigas1[i]->_y == nave->_y) || (balaenemigas1[i]->_x == nave->_x + 4 && balaenemigas1[i]->_y == nave->_y) && algo == 0) {
- nave->borrar();
- balaenemigas1[i]->borrar();
- Console::SetCursorPosition(LIMITE_ANCHO / 2 - 3, LIMITE_ALTO - 3);
- nave->_x = LIMITE_ANCHO / 2 - 3; nave->_y = LIMITE_ALTO - 3;
- nave->dibujar();
- nave->_vidas--;
- retraso = 0;
- algo = 1;
- }
- else if (balaenemigas1[i]->_y == LIMITE_ALTO) {
- balaenemigas1[i]->borrar();
- }
- }
- }
- }
- if (e2._vidas == 22) {
- e2.borrar();
- Console::SetCursorPosition(e2._x + 1, e2._y);
- cout << "500";
- if (retraso == 21) {
- Console::SetCursorPosition(e2._x + 1, e2._y);
- cout << " ";
- e2._vidas = 21;
- }
- retraso++;
- if (e2._vidas == 21)
- retraso = 0;
- }
- if (e3._vidas == 27 || e3._vidas == 26) {
- e3.animar();
- if (e3._x == nave->_x && retrasobala == 0) {
- balaenemigas2[balaseneActual2] = e3.disparar();
- balaseneActual2++;
- retrasobala = 1;
- }
- for (short i = 0; i < balaseneActual2; ++i) {
- if (i == balaseneActual2 - 4)
- balaenemigas2[i]->animar();
- retrasobala = 0;
- }
- for (int i = 0; i < nBalas; ++i) {
- if (balas[i] != NULL) {
- if ((balas[i]->_x == e3._x + 2 && balas[i]->_y == e3._y) || (balas[i]->_x == e3._x && balas[i]->_y == e3._y) || (balas[i]->_x == e3._x + 1 && balas[i]->_y == e3._y) ||
- (balas[i]->_x == e3._x + 3 && balas[i]->_y == e3._y) || (balas[i]->_x == e3._x + 4 && balas[i]->_y == e3._y)) {
- e3._vidas--;
- if (e3._vidas == 25)
- score += 500;
- retraso = 0;
- }
- }
- }
- for (int i = 0; i < balasene; ++i) {
- if (balaenemigas2[i] != NULL) {
- if ((balaenemigas2[i]->_x == nave->_x + 2 && balaenemigas2[i]->_y == nave->_y) || (balaenemigas2[i]->_x == nave->_x && balaenemigas2[i]->_y == nave->_y) || (balaenemigas2[i]->_x == nave->_x + 1 && balaenemigas2[i]->_y == nave->_y) ||
- (balaenemigas2[i]->_x == nave->_x + 3 && balaenemigas2[i]->_y == nave->_y) || (balaenemigas2[i]->_x == nave->_x + 4 && balaenemigas2[i]->_y == nave->_y) && algo == 0) {
- nave->borrar();
- balaenemigas2[i]->borrar();
- Console::SetCursorPosition(LIMITE_ANCHO / 2 - 3, LIMITE_ALTO - 3);
- nave->_x = LIMITE_ANCHO / 2 - 3; nave->_y = LIMITE_ALTO - 3;
- nave->dibujar();
- nave->_vidas--;
- retraso = 0;
- algo = 1;
- }
- else if (balaenemigas2[i]->_y == LIMITE_ALTO) {
- balaenemigas2[i]->borrar();
- }
- }
- }
- }
- if (e3._vidas == 25) {
- e3.borrar();
- Console::SetCursorPosition(e3._x + 1, e3._y);
- cout << "500";
- if (retraso == 30) {
- Console::SetCursorPosition(e3._x + 1, e3._y);
- cout << " ";
- e3._vidas = 24;
- }
- retraso++;
- if (e3._vidas == 24)
- retraso = 0;
- }
- if (e4._vidas == 27 || e4._vidas == 26) {
- e4.animar();
- if (e4._x == nave->_x && retrasobala == 0) {
- balaenemigas3[balaseneActual3] = e4.disparar();
- balaseneActual3++;
- retrasobala = 1;
- }
- for (short i = 0; i < balaseneActual3; ++i) {
- if (i == balaseneActual3 - 4)
- balaenemigas3[i]->animar();
- retrasobala = 0;
- }
- for (int i = 0; i < nBalas; ++i) {
- if (balas[i] != NULL) {
- if ((balas[i]->_x == e4._x + 2 && balas[i]->_y == e4._y) || (balas[i]->_x == e4._x && balas[i]->_y == e4._y) || (balas[i]->_x == e4._x + 1 && balas[i]->_y == e4._y) ||
- (balas[i]->_x == e4._x + 3 && balas[i]->_y == e4._y) || (balas[i]->_x == e4._x + 4 && balas[i]->_y == e4._y)) {
- e4._vidas--;
- if (e4._vidas == 25)
- score += 500;
- retraso = 0;
- }
- }
- }
- for (int i = 0; i < balasene; ++i) {
- if (balaenemigas3[i] != NULL) {
- if ((balaenemigas3[i]->_x == nave->_x + 2 && balaenemigas3[i]->_y == nave->_y) || (balaenemigas3[i]->_x == nave->_x && balaenemigas3[i]->_y == nave->_y) || (balaenemigas3[i]->_x == nave->_x + 1 && balaenemigas3[i]->_y == nave->_y) ||
- (balaenemigas3[i]->_x == nave->_x + 3 && balaenemigas3[i]->_y == nave->_y) || (balaenemigas3[i]->_x == nave->_x + 4 && balaenemigas3[i]->_y == nave->_y) && algo == 0) {
- nave->borrar();
- balaenemigas3[i]->borrar();
- Console::SetCursorPosition(LIMITE_ANCHO / 2 - 3, LIMITE_ALTO - 3);
- nave->_x = LIMITE_ANCHO / 2 - 3; nave->_y = LIMITE_ALTO - 3;
- nave->dibujar();
- nave->_vidas--;
- retraso = 0;
- algo = 1;
- }
- else if (balaenemigas3[i]->_y == LIMITE_ALTO) {
- balaenemigas3[i]->borrar();
- }
- }
- }
- }
- if (e4._vidas == 25) {
- e4.borrar();
- Console::SetCursorPosition(e4._x + 1, e4._y);
- cout << "500";
- if (retraso == 30) {
- Console::SetCursorPosition(e4._x + 1, e4._y);
- cout << " ";
- e4._vidas = 24;
- }
- retraso++;
- if (e4._vidas == 24)
- retraso = 0;
- }
- if (e5._vidas == 30 || e5._vidas == 29) {
- e5.animar();
- if (e5._x == nave->_x && retrasobala == 0) {
- balaenemigas4[balaseneActual4] = e5.disparar();
- balaseneActual4++;
- retrasobala = 1;
- }
- for (short i = 0; i < balaseneActual4; ++i) {
- if (i == balaseneActual4 - 4)
- balaenemigas4[i]->animar();
- retrasobala = 0;
- }
- for (int i = 0; i < nBalas; ++i) {
- if (balas[i] != NULL) {
- if ((balas[i]->_x == e5._x + 2 && balas[i]->_y == e5._y) || (balas[i]->_x == e5._x && balas[i]->_y == e5._y) || (balas[i]->_x == e5._x + 1 && balas[i]->_y == e5._y) ||
- (balas[i]->_x == e5._x + 3 && balas[i]->_y == e5._y) || (balas[i]->_x == e5._x + 4 && balas[i]->_y == e5._y)) {
- e5._vidas--;
- if (e5._vidas == 28)
- score += 500;
- retraso = 0;
- }
- }
- }
- for (int i = 0; i < balasene; ++i) {
- if (balaenemigas4[i] != NULL) {
- if ((balaenemigas4[i]->_x == nave->_x + 2 && balaenemigas4[i]->_y == nave->_y) || (balaenemigas4[i]->_x == nave->_x && balaenemigas4[i]->_y == nave->_y) || (balaenemigas4[i]->_x == nave->_x + 1 && balaenemigas4[i]->_y == nave->_y) ||
- (balaenemigas4[i]->_x == nave->_x + 3 && balaenemigas4[i]->_y == nave->_y) || (balaenemigas4[i]->_x == nave->_x + 4 && balaenemigas4[i]->_y == nave->_y) && algo == 0) {
- nave->borrar();
- balaenemigas4[i]->borrar();
- Console::SetCursorPosition(LIMITE_ANCHO / 2 - 3, LIMITE_ALTO - 3);
- nave->_x = LIMITE_ANCHO / 2 - 3; nave->_y = LIMITE_ALTO - 3;
- nave->dibujar();
- nave->_vidas--;
- retraso = 0;
- algo = 1;
- }
- else if (balaenemigas4[i]->_y == LIMITE_ALTO) {
- balaenemigas4[i]->borrar();
- }
- }
- }
- }
- if (e5._vidas == 28) {
- e5.borrar();
- Console::SetCursorPosition(e5._x + 1, e5._y);
- cout << "500";
- if (retraso == 30) {
- Console::SetCursorPosition(e5._x + 1, e5._y);
- cout << " ";
- e5._vidas = 27;
- }
- retraso++;
- if (e5._vidas == 27)
- retraso = 0;
- }
- if (e6._vidas == 30 || e6._vidas == 29) {
- e6.animar();
- if (e6._x == nave->_x && retrasobala == 0) {
- balaenemigas5[balaseneActual5] = e6.disparar();
- balaseneActual5++;
- retrasobala = 1;
- }
- for (short i = 0; i < balaseneActual5; ++i) {
- if (i == balaseneActual5 - 4)
- balaenemigas5[i]->animar();
- retrasobala = 0;
- }
- for (int i = 0; i < nBalas; ++i) {
- if (balas[i] != NULL) {
- if ((balas[i]->_x == e6._x + 2 && balas[i]->_y == e6._y) || (balas[i]->_x == e6._x && balas[i]->_y == e6._y) || (balas[i]->_x == e6._x + 1 && balas[i]->_y == e6._y) ||
- (balas[i]->_x == e6._x + 3 && balas[i]->_y == e6._y) || (balas[i]->_x == e6._x + 4 && balas[i]->_y == e6._y)) {
- e6._vidas--;
- if (e6._vidas == 28)
- score += 500;
- retraso = 0;
- }
- }
- }
- for (int i = 0; i < balasene; ++i) {
- if (balaenemigas5[i] != NULL) {
- if ((balaenemigas5[i]->_x == nave->_x + 2 && balaenemigas5[i]->_y == nave->_y) || (balaenemigas5[i]->_x == nave->_x && balaenemigas5[i]->_y == nave->_y) || (balaenemigas5[i]->_x == nave->_x + 1 && balaenemigas5[i]->_y == nave->_y) ||
- (balaenemigas5[i]->_x == nave->_x + 3 && balaenemigas5[i]->_y == nave->_y) || (balaenemigas5[i]->_x == nave->_x + 4 && balaenemigas5[i]->_y == nave->_y) && algo == 0) {
- nave->borrar();
- balaenemigas5[i]->borrar();
- Console::SetCursorPosition(LIMITE_ANCHO / 2 - 3, LIMITE_ALTO - 3);
- nave->_x = LIMITE_ANCHO / 2 - 3; nave->_y = LIMITE_ALTO - 3;
- nave->dibujar();
- nave->_vidas--;
- retraso = 0;
- algo = 1;
- }
- else if (balaenemigas5[i]->_y == LIMITE_ALTO) {
- balaenemigas5[i]->borrar();
- }
- }
- }
- }
- if (e6._vidas == 28) {
- e6.borrar();
- Console::SetCursorPosition(e6._x + 1, e6._y);
- cout << "500";
- if (retraso == 30) {
- Console::SetCursorPosition(e6._x + 1, e6._y);
- cout << " ";
- e6._vidas = 27;
- }
- retraso++;
- if (e6._vidas == 27)
- retraso = 0;
- }
- if (e7._vidas == 30 || e7._vidas == 29) {
- e7.animar();
- if (e7._x == nave->_x && retrasobala == 0) {
- balaenemigas6[balaseneActual6] = e7.disparar();
- balaseneActual6++;
- retrasobala = 1;
- }
- for (short i = 0; i < balaseneActual6; ++i) {
- if (i == balaseneActual6 - 4)
- balaenemigas6[i]->animar();
- retrasobala = 0;
- }
- for (int i = 0; i < nBalas; ++i) {
- if (balas[i] != NULL) {
- if ((balas[i]->_x == e7._x + 2 && balas[i]->_y == e7._y) || (balas[i]->_x == e7._x && balas[i]->_y == e7._y) || (balas[i]->_x == e7._x + 1 && balas[i]->_y == e7._y) ||
- (balas[i]->_x == e7._x + 3 && balas[i]->_y == e7._y) || (balas[i]->_x == e7._x + 4 && balas[i]->_y == e7._y)) {
- e7._vidas--;
- if (e7._vidas == 28)
- score += 500;
- retraso = 0;
- }
- }
- }
- for (int i = 0; i < balasene; ++i) {
- if (balaenemigas6[i] != NULL) {
- if ((balaenemigas6[i]->_x == nave->_x + 2 && balaenemigas6[i]->_y == nave->_y) || (balaenemigas6[i]->_x == nave->_x && balaenemigas6[i]->_y == nave->_y) || (balaenemigas6[i]->_x == nave->_x + 1 && balaenemigas6[i]->_y == nave->_y) ||
- (balaenemigas6[i]->_x == nave->_x + 3 && balaenemigas6[i]->_y == nave->_y) || (balaenemigas6[i]->_x == nave->_x + 4 && balaenemigas6[i]->_y == nave->_y) && algo == 0) {
- nave->borrar();
- balaenemigas6[i]->borrar();
- Console::SetCursorPosition(LIMITE_ANCHO / 2 - 3, LIMITE_ALTO - 3);
- nave->_x = LIMITE_ANCHO / 2 - 3; nave->_y = LIMITE_ALTO - 3;
- nave->dibujar();
- nave->_vidas--;
- retraso = 0;
- algo = 1;
- }
- else if (balaenemigas6[i]->_y == LIMITE_ALTO) {
- balaenemigas6[i]->borrar();
- }
- }
- }
- }
- if (e7._vidas == 28) {
- e7.borrar();
- Console::SetCursorPosition(e7._x + 1, e7._y);
- cout << "500";
- if (retraso == 30) {
- Console::SetCursorPosition(e7._x + 1, e7._y);
- cout << " ";
- e7._vidas = 27;
- }
- retraso++;
- if (e7._vidas == 27)
- retraso = 0;
- }
- if (e8._vidas == 30 || e8._vidas == 29) {
- e8.animar();
- if (e8._x == nave->_x && retrasobala == 0) {
- balaenemigas7[balaseneActual7] = e8.disparar();
- balaseneActual7++;
- retrasobala = 1;
- }
- for (short i = 0; i < balaseneActual7; ++i) {
- if (i == balaseneActual7 - 4)
- balaenemigas7[i]->animar();
- retrasobala = 0;
- }
- for (int i = 0; i < nBalas; ++i) {
- if (balas[i] != NULL) {
- if ((balas[i]->_x == e8._x + 2 && balas[i]->_y == e8._y) || (balas[i]->_x == e8._x && balas[i]->_y == e8._y) || (balas[i]->_x == e8._x + 1 && balas[i]->_y == e8._y) ||
- (balas[i]->_x == e8._x + 3 && balas[i]->_y == e8._y) || (balas[i]->_x == e8._x + 4 && balas[i]->_y == e8._y)) {
- e8._vidas--;
- if (e8._vidas == 28)
- score += 500;
- retraso = 0;
- }
- }
- }
- for (int i = 0; i < balasene; ++i) {
- if (balaenemigas7[i] != NULL) {
- if ((balaenemigas7[i]->_x == nave->_x + 2 && balaenemigas7[i]->_y == nave->_y) || (balaenemigas7[i]->_x == nave->_x && balaenemigas7[i]->_y == nave->_y) || (balaenemigas7[i]->_x == nave->_x + 1 && balaenemigas7[i]->_y == nave->_y) ||
- (balaenemigas7[i]->_x == nave->_x + 3 && balaenemigas7[i]->_y == nave->_y) || (balaenemigas7[i]->_x == nave->_x + 4 && balaenemigas7[i]->_y == nave->_y) && algo == 0) {
- nave->borrar();
- balaenemigas7[i]->borrar();
- Console::SetCursorPosition(LIMITE_ANCHO / 2 - 3, LIMITE_ALTO - 3);
- nave->_x = LIMITE_ANCHO / 2 - 3; nave->_y = LIMITE_ALTO - 3;
- nave->dibujar();
- nave->_vidas--;
- retraso = 0;
- algo = 1;
- }
- else if (balaenemigas7[i]->_y == LIMITE_ALTO) {
- balaenemigas7[i]->borrar();
- }
- }
- }
- }
- if (e8._vidas == 28) {
- e8.borrar();
- Console::SetCursorPosition(e8._x + 1, e8._y);
- cout << "500";
- if (retraso == 30) {
- Console::SetCursorPosition(e8._x + 1, e8._y);
- cout << " ";
- e8._vidas = 27;
- }
- retraso++;
- if (e8._vidas == 27)
- retraso = 0;
- }
- if (e9._vidas == 30 || e9._vidas == 29) {
- e9.animar();
- if (e9._x == nave->_x && retrasobala == 0) {
- balaenemigas8[balaseneActual8] = e9.disparar();
- balaseneActual8++;
- retrasobala = 1;
- }
- for (short i = 0; i < balaseneActual8; ++i) {
- if (i == balaseneActual8 - 4)
- balaenemigas8[i]->animar();
- retrasobala = 0;
- }
- for (int i = 0; i < nBalas; ++i) {
- if (balas[i] != NULL) {
- if ((balas[i]->_x == e9._x + 2 && balas[i]->_y == e9._y) || (balas[i]->_x == e9._x && balas[i]->_y == e9._y) || (balas[i]->_x == e9._x + 1 && balas[i]->_y == e9._y) ||
- (balas[i]->_x == e9._x + 3 && balas[i]->_y == e9._y) || (balas[i]->_x == e9._x + 4 && balas[i]->_y == e9._y)) {
- e9._vidas--;
- if (e9._vidas == 28)
- score += 500;
- retraso = 0;
- }
- }
- }
- for (int i = 0; i < balasene; ++i) {
- if (balaenemigas8[i] != NULL) {
- if ((balaenemigas8[i]->_x == nave->_x + 2 && balaenemigas8[i]->_y == nave->_y) || (balaenemigas8[i]->_x == nave->_x && balaenemigas8[i]->_y == nave->_y) || (balaenemigas8[i]->_x == nave->_x + 1 && balaenemigas8[i]->_y == nave->_y) ||
- (balaenemigas8[i]->_x == nave->_x + 3 && balaenemigas8[i]->_y == nave->_y) || (balaenemigas8[i]->_x == nave->_x + 4 && balaenemigas8[i]->_y == nave->_y) && algo == 0) {
- nave->borrar();
- balaenemigas8[i]->borrar();
- Console::SetCursorPosition(LIMITE_ANCHO / 2 - 3, LIMITE_ALTO - 3);
- nave->_x = LIMITE_ANCHO / 2 - 3; nave->_y = LIMITE_ALTO - 3;
- nave->dibujar();
- nave->_vidas--;
- retraso = 0;
- algo = 1;
- }
- else if (balaenemigas8[i]->_y == LIMITE_ALTO) {
- balaenemigas8[i]->borrar();
- }
- }
- }
- }
- if (e9._vidas == 28) {
- e9.borrar();
- Console::SetCursorPosition(e9._x + 1, e9._y);
- cout << "500";
- if (retraso == 30) {
- Console::SetCursorPosition(e9._x + 1, e9._y);
- cout << " ";
- e9._vidas = 27;
- }
- retraso++;
- if (e9._vidas == 27)
- retraso = 0;
- }
- if (e10._vidas == 30 || e10._vidas == 29) {
- e10.animar();
- if (e10._x == nave->_x && retrasobala == 0) {
- balaenemigas9[balaseneActual9] = e10.disparar();
- balaseneActual9++;
- retrasobala = 1;
- }
- for (short i = 0; i < balaseneActual9; ++i) {
- if (i == balaseneActual9 - 4)
- balaenemigas9[i]->animar();
- retrasobala = 0;
- }
- for (int i = 0; i < nBalas; ++i) {
- if (balas[i] != NULL) {
- if ((balas[i]->_x == e10._x + 2 && balas[i]->_y == e10._y) || (balas[i]->_x == e10._x && balas[i]->_y == e10._y) || (balas[i]->_x == e10._x + 1 && balas[i]->_y == e10._y) ||
- (balas[i]->_x == e10._x + 3 && balas[i]->_y == e10._y) || (balas[i]->_x == e10._x + 4 && balas[i]->_y == e10._y)) {
- e10._vidas--;
- if (e10._vidas == 28)
- score += 500;
- retraso = 0;
- }
- }
- }
- for (int i = 0; i < balasene; ++i) {
- if (balaenemigas9[i] != NULL) {
- if ((balaenemigas9[i]->_x == nave->_x + 2 && balaenemigas9[i]->_y == nave->_y) || (balaenemigas9[i]->_x == nave->_x && balaenemigas9[i]->_y == nave->_y) || (balaenemigas9[i]->_x == nave->_x + 1 && balaenemigas9[i]->_y == nave->_y) ||
- (balaenemigas9[i]->_x == nave->_x + 3 && balaenemigas9[i]->_y == nave->_y) || (balaenemigas9[i]->_x == nave->_x + 4 && balaenemigas9[i]->_y == nave->_y) && algo == 0) {
- nave->borrar();
- balaenemigas9[i]->borrar();
- Console::SetCursorPosition(LIMITE_ANCHO / 2 - 3, LIMITE_ALTO - 3);
- nave->_x = LIMITE_ANCHO / 2 - 3; nave->_y = LIMITE_ALTO - 3;
- nave->dibujar();
- nave->_vidas--;
- retraso = 0;
- algo = 1;
- }
- else if (balaenemigas9[i]->_y == LIMITE_ALTO) {
- balaenemigas9[i]->borrar();
- }
- }
- }
- }
- if (e10._vidas == 28) {
- e10.borrar();
- Console::SetCursorPosition(e10._x + 1, e10._y);
- cout << "500";
- if (retraso == 30) {
- Console::SetCursorPosition(e10._x + 1, e10._y);
- cout << " ";
- e10._vidas = 27;
- }
- retraso++;
- if (e10._vidas == 27)
- retraso = 0;
- }
- }
- if (Nivel4 == 1) {
- zzz = 5;
- if (enemiga1._vidas == 18) {
- enemiga1.animar();
- for (int i = 0; i < nBalas; ++i) {
- if (balas[i] != NULL) {
- if ((balas[i]->_x == enemiga1._x + 2 && balas[i]->_y == enemiga1._y) || (balas[i]->_x == enemiga1._x && balas[i]->_y == enemiga1._y) || (balas[i]->_x == enemiga1._x + 1 && balas[i]->_y == enemiga1._y) || (balas[i]->_x == enemiga1._x + 3 && balas[i]->_y == enemiga1._y) || (balas[i]->_x == enemiga1._x + 4 && balas[i]->_y == enemiga1._y)) {
- enemiga1._vidas = 17;
- score += 100;
- retraso = 0;
- }
- }
- }
- }
- if (enemiga1._vidas == 17) {
- enemiga1.borrar();
- Console::SetCursorPosition(enemiga1._x + 1, enemiga1._y);
- cout << "100";
- if (retraso == 30) {
- Console::SetCursorPosition(enemiga1._x + 1, enemiga1._y);
- cout << " ";
- enemiga1._vidas = 16;
- }
- retraso++;
- if (enemiga1._vidas == 16)
- retraso = 0;
- }
- if (enemiga2._vidas == 18) {
- enemiga2.animar();
- for (int i = 0; i < nBalas; ++i) {
- if (balas[i] != NULL) {
- if ((balas[i]->_x == enemiga2._x + 2 && balas[i]->_y == enemiga2._y) || (balas[i]->_x == enemiga2._x && balas[i]->_y == enemiga2._y) || (balas[i]->_x == enemiga2._x + 1 && balas[i]->_y == enemiga2._y) || (balas[i]->_x == enemiga2._x + 3 && balas[i]->_y == enemiga2._y) || (balas[i]->_x == enemiga2._x + 4 && balas[i]->_y == enemiga2._y)) {
- enemiga2._vidas = 17;
- score += 100;
- retraso = 0;
- }
- }
- }
- }
- if (enemiga2._vidas == 17) {
- enemiga2.borrar();
- Console::SetCursorPosition(enemiga2._x + 1, enemiga2._y);
- cout << "100";
- if (retraso == 30) {
- Console::SetCursorPosition(enemiga2._x + 1, enemiga2._y);
- cout << " ";
- enemiga2._vidas = 16;
- }
- retraso++;
- if (enemiga2._vidas == 16)
- retraso = 0;
- }
- if (enemiga3._vidas == 18) {
- enemiga3.animar();
- for (int i = 0; i < nBalas; ++i) {
- if (balas[i] != NULL) {
- if ((balas[i]->_x == enemiga3._x + 2 && balas[i]->_y == enemiga3._y) || (balas[i]->_x == enemiga3._x && balas[i]->_y == enemiga3._y) || (balas[i]->_x == enemiga3._x + 1 && balas[i]->_y == enemiga3._y) || (balas[i]->_x == enemiga3._x + 3 && balas[i]->_y == enemiga3._y) || (balas[i]->_x == enemiga3._x + 4 && balas[i]->_y == enemiga3._y)) {
- enemiga3._vidas = 17;
- score += 100;
- retraso = 0;
- }
- }
- }
- }
- if (enemiga3._vidas == 17) {
- enemiga3.borrar();
- Console::SetCursorPosition(enemiga3._x + 1, enemiga3._y);
- cout << "100";
- if (retraso == 30) {
- Console::SetCursorPosition(enemiga3._x + 1, enemiga3._y);
- cout << " ";
- enemiga3._vidas = 16;
- }
- retraso++;
- if (enemiga3._vidas == 16)
- retraso = 0;
- }
- if (enemiga4._vidas == 18) {
- enemiga4.animar();
- for (int i = 0; i < nBalas; ++i) {
- if (balas[i] != NULL) {
- if ((balas[i]->_x == enemiga4._x + 2 && balas[i]->_y == enemiga4._y) || (balas[i]->_x == enemiga4._x && balas[i]->_y == enemiga4._y) || (balas[i]->_x == enemiga4._x + 1 && balas[i]->_y == enemiga4._y) || (balas[i]->_x == enemiga4._x + 3 && balas[i]->_y == enemiga4._y) || (balas[i]->_x == enemiga4._x + 4 && balas[i]->_y == enemiga4._y)) {
- enemiga4._vidas = 17;
- score += 100;
- retraso = 0;
- }
- }
- }
- }
- if (enemiga4._vidas == 17) {
- enemiga4.borrar();
- Console::SetCursorPosition(enemiga4._x + 1, enemiga4._y);
- cout << "100";
- if (retraso == 30) {
- Console::SetCursorPosition(enemiga4._x + 1, enemiga4._y);
- cout << " ";
- enemiga4._vidas = 16;
- }
- retraso++;
- if (enemiga4._vidas == 16)
- retraso = 0;
- }
- if (enemiga5._vidas == 18) {
- enemiga5.animar();
- for (int i = 0; i < nBalas; ++i) {
- if (balas[i] != NULL) {
- if ((balas[i]->_x == enemiga5._x + 2 && balas[i]->_y == enemiga5._y) || (balas[i]->_x == enemiga5._x && balas[i]->_y == enemiga5._y) || (balas[i]->_x == enemiga5._x + 1 && balas[i]->_y == enemiga5._y) || (balas[i]->_x == enemiga5._x + 3 && balas[i]->_y == enemiga5._y) || (balas[i]->_x == enemiga5._x + 4 && balas[i]->_y == enemiga5._y)) {
- enemiga5._vidas = 17;
- score += 100;
- retraso = 0;
- }
- }
- }
- }
- if (enemiga5._vidas == 17) {
- enemiga5.borrar();
- Console::SetCursorPosition(enemiga5._x + 1, enemiga5._y);
- cout << "100";
- if (retraso == 30) {
- Console::SetCursorPosition(enemiga5._x + 1, enemiga5._y);
- cout << " ";
- enemiga5._vidas = 16;
- }
- retraso++;
- if (enemiga5._vidas == 16)
- retraso = 0;
- }
- if (enemiga6._vidas == 18) {
- enemiga6.animar();
- for (int i = 0; i < nBalas; ++i) {
- if (balas[i] != NULL) {
- if ((balas[i]->_x == enemiga6._x + 2 && balas[i]->_y == enemiga6._y) || (balas[i]->_x == enemiga6._x && balas[i]->_y == enemiga6._y) || (balas[i]->_x == enemiga6._x + 1 && balas[i]->_y == enemiga6._y) || (balas[i]->_x == enemiga6._x + 3 && balas[i]->_y == enemiga6._y) || (balas[i]->_x == enemiga6._x + 4 && balas[i]->_y == enemiga6._y)) {
- enemiga6._vidas = 17;
- score += 100;
- retraso = 0;
- }
- }
- }
- }
- if (enemiga6._vidas == 17) {
- enemiga6.borrar();
- Console::SetCursorPosition(enemiga6._x + 1, enemiga6._y);
- cout << "100";
- if (retraso == 30) {
- Console::SetCursorPosition(enemiga6._x + 1, enemiga6._y);
- cout << " ";
- enemiga6._vidas = 16;
- }
- retraso++;
- if (enemiga6._vidas == 16)
- retraso = 0;
- }
- if (enemiga7._vidas == 18) {
- enemiga7.animar();
- for (int i = 0; i < nBalas; ++i) {
- if (balas[i] != NULL) {
- if ((balas[i]->_x == enemiga7._x + 2 && balas[i]->_y == enemiga7._y) || (balas[i]->_x == enemiga7._x && balas[i]->_y == enemiga7._y) || (balas[i]->_x == enemiga7._x + 1 && balas[i]->_y == enemiga7._y) || (balas[i]->_x == enemiga7._x + 3 && balas[i]->_y == enemiga7._y) || (balas[i]->_x == enemiga7._x + 4 && balas[i]->_y == enemiga7._y)) {
- enemiga7._vidas = 17;
- score += 100;
- retraso = 0;
- }
- }
- }
- }
- if (enemiga7._vidas == 17) {
- enemiga7.borrar();
- Console::SetCursorPosition(enemiga7._x + 1, enemiga7._y);
- cout << "100";
- if (retraso == 30) {
- Console::SetCursorPosition(enemiga7._x + 1, enemiga7._y);
- cout << " ";
- enemiga7._vidas = 16;
- }
- retraso++;
- if (enemiga7._vidas == 16)
- retraso = 0;
- }
- if (enemiga8._vidas == 18) {
- enemiga8.animar();
- for (int i = 0; i < nBalas; ++i) {
- if (balas[i] != NULL) {
- if ((balas[i]->_x == enemiga8._x + 2 && balas[i]->_y == enemiga8._y) || (balas[i]->_x == enemiga8._x && balas[i]->_y == enemiga8._y) || (balas[i]->_x == enemiga8._x + 1 && balas[i]->_y == enemiga8._y) || (balas[i]->_x == enemiga8._x + 3 && balas[i]->_y == enemiga8._y) || (balas[i]->_x == enemiga8._x + 4 && balas[i]->_y == enemiga8._y)) {
- enemiga8._vidas = 17;
- score += 100;
- retraso = 0;
- }
- }
- }
- }
- if (enemiga8._vidas == 17) {
- enemiga8.borrar();
- Console::SetCursorPosition(enemiga8._x + 1, enemiga8._y);
- cout << "100";
- if (retraso == 30) {
- Console::SetCursorPosition(enemiga8._x + 1, enemiga8._y);
- cout << " ";
- enemiga8._vidas = 16;
- }
- retraso++;
- if (enemiga8._vidas == 16)
- retraso = 0;
- }
- if (ene10._vidas == 18) {
- ene10.animar();
- for (int i = 0; i < nBalas; ++i) {
- if (balas[i] != NULL) {
- if ((balas[i]->_x == ene10._x + 2 && balas[i]->_y == ene10._y) || (balas[i]->_x == ene10._x && balas[i]->_y == ene10._y) || (balas[i]->_x == ene10._x + 1 && balas[i]->_y == ene10._y) ||
- (balas[i]->_x == ene10._x + 3 && balas[i]->_y == ene10._y) || (balas[i]->_x == ene10._x + 4 && balas[i]->_y == ene10._y)) {
- ene10._vidas = 17;
- score += 300;
- retraso = 0;
- }
- }
- }
- }
- if (ene10._vidas == 17) {
- ene10.borrar();
- Console::SetCursorPosition(ene10._x + 1, ene10._y);
- cout << "300";
- if (retraso == 30) {
- Console::SetCursorPosition(ene10._x + 1, ene10._y);
- cout << " ";
- ene10._vidas = 16;
- }
- retraso++;
- if (ene10._vidas == 16)
- retraso = 0;
- }
- if (ene9._vidas == 18) {
- ene9.animar();
- for (int i = 0; i < nBalas; ++i) {
- if (balas[i] != NULL) {
- if ((balas[i]->_x == ene9._x + 2 && balas[i]->_y == ene9._y) || (balas[i]->_x == ene9._x && balas[i]->_y == ene9._y) || (balas[i]->_x == ene9._x + 1 && balas[i]->_y == ene9._y) ||
- (balas[i]->_x == ene9._x + 3 && balas[i]->_y == ene9._y) || (balas[i]->_x == ene9._x + 4 && balas[i]->_y == ene9._y)) {
- ene9._vidas = 17;
- score += 300;
- retraso = 0;
- }
- }
- }
- }
- if (ene9._vidas == 17) {
- ene9.borrar();
- Console::SetCursorPosition(ene9._x + 1, ene9._y);
- cout << "300";
- if (retraso == 30) {
- Console::SetCursorPosition(ene9._x + 1, ene9._y);
- cout << " ";
- ene9._vidas = 16;
- }
- retraso++;
- if (ene9._vidas == 16)
- retraso = 0;
- }
- if (ene8._vidas == 18) {
- ene8.animar();
- for (int i = 0; i < nBalas; ++i) {
- if (balas[i] != NULL) {
- if ((balas[i]->_x == ene8._x + 2 && balas[i]->_y == ene8._y) || (balas[i]->_x == ene8._x && balas[i]->_y == ene8._y) || (balas[i]->_x == ene8._x + 1 && balas[i]->_y == ene8._y) ||
- (balas[i]->_x == ene8._x + 3 && balas[i]->_y == ene8._y) || (balas[i]->_x == ene8._x + 4 && balas[i]->_y == ene8._y)) {
- ene8._vidas = 17;
- score += 300;
- retraso = 0;
- }
- }
- }
- }
- if (ene8._vidas == 17) {
- ene8.borrar();
- Console::SetCursorPosition(ene8._x + 1, ene8._y);
- cout << "300";
- if (retraso == 30) {
- Console::SetCursorPosition(ene8._x + 1, ene8._y);
- cout << " ";
- ene8._vidas = 16;
- }
- retraso++;
- if (ene8._vidas == 16)
- retraso = 0;
- }
- if (ene7._vidas == 18) {
- ene7.animar();
- for (int i = 0; i < nBalas; ++i) {
- if (balas[i] != NULL) {
- if ((balas[i]->_x == ene7._x + 2 && balas[i]->_y == ene7._y) || (balas[i]->_x == ene7._x && balas[i]->_y == ene7._y) || (balas[i]->_x == ene7._x + 1 && balas[i]->_y == ene7._y) ||
- (balas[i]->_x == ene7._x + 3 && balas[i]->_y == ene7._y) || (balas[i]->_x == ene7._x + 4 && balas[i]->_y == ene7._y)) {
- ene7._vidas = 17;
- score += 300;
- retraso = 0;
- }
- }
- }
- }
- if (ene7._vidas == 17) {
- ene7.borrar();
- Console::SetCursorPosition(ene7._x + 1, ene7._y);
- cout << "300";
- if (retraso == 30) {
- Console::SetCursorPosition(ene7._x + 1, ene7._y);
- cout << " ";
- ene7._vidas = 16;
- }
- retraso++;
- if (ene7._vidas == 16)
- retraso = 0;
- }
- if (ene6._vidas == 18) {
- ene6.animar();
- for (int i = 0; i < nBalas; ++i) {
- if (balas[i] != NULL) {
- if ((balas[i]->_x == ene6._x + 2 && balas[i]->_y == ene6._y) || (balas[i]->_x == ene6._x && balas[i]->_y == ene6._y) || (balas[i]->_x == ene6._x + 1 && balas[i]->_y == ene6._y) ||
- (balas[i]->_x == ene6._x + 3 && balas[i]->_y == ene6._y) || (balas[i]->_x == ene6._x + 4 && balas[i]->_y == ene6._y)) {
- ene6._vidas = 17;
- score += 300;
- retraso = 0;
- }
- }
- }
- }
- if (ene6._vidas == 17) {
- ene6.borrar();
- Console::SetCursorPosition(ene6._x + 1, ene6._y);
- cout << "300";
- if (retraso == 30) {
- Console::SetCursorPosition(ene6._x + 1, ene6._y);
- cout << " ";
- ene6._vidas = 16;
- }
- retraso++;
- if (ene6._vidas == 16)
- retraso = 0;
- }
- if (ene5._vidas == 18) {
- ene5.animar();
- for (int i = 0; i < nBalas; ++i) {
- if (balas[i] != NULL) {
- if ((balas[i]->_x == ene5._x + 2 && balas[i]->_y == ene5._y) || (balas[i]->_x == ene5._x && balas[i]->_y == ene5._y) || (balas[i]->_x == ene5._x + 1 && balas[i]->_y == ene5._y) ||
- (balas[i]->_x == ene5._x + 3 && balas[i]->_y == ene5._y) || (balas[i]->_x == ene5._x + 4 && balas[i]->_y == ene5._y)) {
- ene5._vidas = 17;
- score += 300;
- retraso = 0;
- }
- }
- }
- }
- if (ene5._vidas == 17) {
- ene5.borrar();
- Console::SetCursorPosition(ene5._x + 1, ene5._y);
- cout << "300";
- if (retraso == 30) {
- Console::SetCursorPosition(ene5._x + 1, ene5._y);
- cout << " ";
- ene5._vidas = 16;
- }
- retraso++;
- if (ene5._vidas == 16)
- retraso = 0;
- }
- if (ene4._vidas == 18) {
- ene4.animar();
- for (int i = 0; i < nBalas; ++i) {
- if (balas[i] != NULL) {
- if ((balas[i]->_x == ene4._x + 2 && balas[i]->_y == ene4._y) || (balas[i]->_x == ene4._x && balas[i]->_y == ene4._y) || (balas[i]->_x == ene4._x + 1 && balas[i]->_y == ene4._y) ||
- (balas[i]->_x == ene4._x + 3 && balas[i]->_y == ene4._y) || (balas[i]->_x == ene4._x + 4 && balas[i]->_y == ene4._y)) {
- ene4._vidas = 17;
- score += 300;
- retraso = 0;
- }
- }
- }
- }
- if (ene4._vidas == 17) {
- ene4.borrar();
- Console::SetCursorPosition(ene4._x + 1, ene4._y);
- cout << "300";
- if (retraso == 30) {
- Console::SetCursorPosition(ene4._x + 1, ene4._y);
- cout << " ";
- ene4._vidas = 16;
- }
- retraso++;
- if (ene4._vidas == 16)
- retraso = 0;
- }
- if (ene3._vidas == 18) {
- ene3.animar();
- for (int i = 0; i < nBalas; ++i) {
- if (balas[i] != NULL) {
- if ((balas[i]->_x == ene3._x + 2 && balas[i]->_y == ene3._y) || (balas[i]->_x == ene3._x && balas[i]->_y == ene3._y) || (balas[i]->_x == ene3._x + 1 && balas[i]->_y == ene3._y) ||
- (balas[i]->_x == ene3._x + 3 && balas[i]->_y == ene3._y) || (balas[i]->_x == ene3._x + 4 && balas[i]->_y == ene3._y)) {
- ene3._vidas = 17;
- score += 300;
- retraso = 0;
- }
- }
- }
- }
- if (ene3._vidas == 17) {
- ene3.borrar();
- Console::SetCursorPosition(ene3._x + 1, ene3._y);
- cout << "300";
- if (retraso == 30) {
- Console::SetCursorPosition(ene3._x + 1, ene3._y);
- cout << " ";
- ene3._vidas = 16;
- }
- retraso++;
- if (ene3._vidas == 16)
- retraso = 0;
- }
- if (e3._vidas == 24 || e3._vidas == 23) {
- e3.animar();
- if (e3._x == nave->_x && retrasobala == 0) {
- balaenemigas2[balaseneActual2] = e3.disparar();
- balaseneActual2++;
- retrasobala = 1;
- }
- for (short i = 0; i < balaseneActual2; ++i) {
- if (i == balaseneActual2 - 4)
- balaenemigas2[i]->animar();
- retrasobala = 0;
- }
- for (int i = 0; i < nBalas; ++i) {
- if (balas[i] != NULL) {
- if ((balas[i]->_x == e3._x + 2 && balas[i]->_y == e3._y) || (balas[i]->_x == e3._x && balas[i]->_y == e3._y) || (balas[i]->_x == e3._x + 1 && balas[i]->_y == e3._y) ||
- (balas[i]->_x == e3._x + 3 && balas[i]->_y == e3._y) || (balas[i]->_x == e3._x + 4 && balas[i]->_y == e3._y)) {
- e3._vidas--;
- if (e3._vidas == 22)
- score += 500;
- retraso = 0;
- }
- }
- }
- for (int i = 0; i < balasene; ++i) {
- if (balaenemigas2[i] != NULL) {
- if ((balaenemigas2[i]->_x == nave->_x + 2 && balaenemigas2[i]->_y == nave->_y) || (balaenemigas2[i]->_x == nave->_x && balaenemigas2[i]->_y == nave->_y) || (balaenemigas2[i]->_x == nave->_x + 1 && balaenemigas2[i]->_y == nave->_y) ||
- (balaenemigas2[i]->_x == nave->_x + 3 && balaenemigas2[i]->_y == nave->_y) || (balaenemigas2[i]->_x == nave->_x + 4 && balaenemigas2[i]->_y == nave->_y) && algo == 0) {
- nave->borrar();
- balaenemigas2[i]->borrar();
- Console::SetCursorPosition(LIMITE_ANCHO / 2 - 3, LIMITE_ALTO - 3);
- nave->_x = LIMITE_ANCHO / 2 - 3; nave->_y = LIMITE_ALTO - 3;
- nave->dibujar();
- nave->_vidas--;
- retraso = 0;
- algo = 1;
- }
- else if (balaenemigas2[i]->_y == LIMITE_ALTO) {
- balaenemigas2[i]->borrar();
- }
- }
- }
- }
- if (e3._vidas == 22) {
- e3.borrar();
- Console::SetCursorPosition(e3._x + 1, e3._y);
- cout << "500";
- if (retraso == 21) {
- Console::SetCursorPosition(e3._x + 1, e3._y);
- cout << " ";
- e3._vidas = 21;
- }
- retraso++;
- if (e3._vidas == 21)
- retraso = 0;
- }
- if (e4._vidas == 24 || e4._vidas == 23) {
- e4.animar();
- if (e4._x == nave->_x && retrasobala == 0) {
- balaenemigas3[balaseneActual3] = e4.disparar();
- balaseneActual3++;
- retrasobala = 1;
- }
- for (short i = 0; i < balaseneActual3; ++i) {
- if (i == balaseneActual3 - 4)
- balaenemigas3[i]->animar();
- retrasobala = 0;
- }
- for (int i = 0; i < nBalas; ++i) {
- if (balas[i] != NULL) {
- if ((balas[i]->_x == e4._x + 2 && balas[i]->_y == e4._y) || (balas[i]->_x == e4._x && balas[i]->_y == e4._y) || (balas[i]->_x == e4._x + 1 && balas[i]->_y == e4._y) ||
- (balas[i]->_x == e4._x + 3 && balas[i]->_y == e4._y) || (balas[i]->_x == e4._x + 4 && balas[i]->_y == e4._y)) {
- e4._vidas--;
- if (e4._vidas == 22)
- score += 500;
- retraso = 0;
- }
- }
- }
- for (int i = 0; i < balasene; ++i) {
- if (balaenemigas3[i] != NULL) {
- if ((balaenemigas3[i]->_x == nave->_x + 2 && balaenemigas3[i]->_y == nave->_y) || (balaenemigas3[i]->_x == nave->_x && balaenemigas3[i]->_y == nave->_y) || (balaenemigas3[i]->_x == nave->_x + 1 && balaenemigas3[i]->_y == nave->_y) ||
- (balaenemigas3[i]->_x == nave->_x + 3 && balaenemigas3[i]->_y == nave->_y) || (balaenemigas3[i]->_x == nave->_x + 4 && balaenemigas3[i]->_y == nave->_y) && algo == 0) {
- nave->borrar();
- balaenemigas3[i]->borrar();
- Console::SetCursorPosition(LIMITE_ANCHO / 2 - 3, LIMITE_ALTO - 3);
- nave->_x = LIMITE_ANCHO / 2 - 3; nave->_y = LIMITE_ALTO - 3;
- nave->dibujar();
- nave->_vidas--;
- retraso = 0;
- algo = 1;
- }
- else if (balaenemigas3[i]->_y == LIMITE_ALTO) {
- balaenemigas3[i]->borrar();
- }
- }
- }
- }
- if (e4._vidas == 22) {
- e4.borrar();
- Console::SetCursorPosition(e4._x + 1, e4._y);
- cout << "500";
- if (retraso == 21) {
- Console::SetCursorPosition(e4._x + 1, e4._y);
- cout << " ";
- e4._vidas = 21;
- }
- retraso++;
- if (e4._vidas == 21)
- retraso = 0;
- }
- if (e5._vidas == 27 || e5._vidas == 26) {
- e5.animar();
- if (e5._x == nave->_x && retrasobala == 0) {
- balaenemigas4[balaseneActual4] = e5.disparar();
- balaseneActual4++;
- retrasobala = 1;
- }
- for (short i = 0; i < balaseneActual4; ++i) {
- if (i == balaseneActual4 - 4)
- balaenemigas4[i]->animar();
- retrasobala = 0;
- }
- for (int i = 0; i < nBalas; ++i) {
- if (balas[i] != NULL) {
- if ((balas[i]->_x == e5._x + 2 && balas[i]->_y == e5._y) || (balas[i]->_x == e5._x && balas[i]->_y == e5._y) || (balas[i]->_x == e5._x + 1 && balas[i]->_y == e5._y) ||
- (balas[i]->_x == e5._x + 3 && balas[i]->_y == e5._y) || (balas[i]->_x == e5._x + 4 && balas[i]->_y == e5._y)) {
- e5._vidas--;
- if (e5._vidas == 25)
- score += 500;
- retraso = 0;
- }
- }
- for (int i = 0; i < balasene; ++i) {
- if (balaenemigas4[i] != NULL) {
- if ((balaenemigas4[i]->_x == nave->_x + 2 && balaenemigas4[i]->_y == nave->_y) || (balaenemigas4[i]->_x == nave->_x && balaenemigas4[i]->_y == nave->_y) || (balaenemigas4[i]->_x == nave->_x + 1 && balaenemigas4[i]->_y == nave->_y) ||
- (balaenemigas4[i]->_x == nave->_x + 3 && balaenemigas4[i]->_y == nave->_y) || (balaenemigas4[i]->_x == nave->_x + 4 && balaenemigas4[i]->_y == nave->_y) && algo == 0) {
- nave->borrar();
- balaenemigas4[i]->borrar();
- Console::SetCursorPosition(LIMITE_ANCHO / 2 - 3, LIMITE_ALTO - 3);
- nave->_x = LIMITE_ANCHO / 2 - 3; nave->_y = LIMITE_ALTO - 3;
- nave->dibujar();
- nave->_vidas--;
- retraso = 0;
- algo = 1;
- }
- else if (balaenemigas4[i]->_y == LIMITE_ALTO) {
- balaenemigas4[i]->borrar();
- }
- }
- }
- }
- }
- if (e5._vidas == 25) {
- e5.borrar();
- Console::SetCursorPosition(e5._x + 1, e5._y);
- cout << "500";
- if (retraso == 30) {
- Console::SetCursorPosition(e5._x + 1, e5._y);
- cout << " ";
- e5._vidas = 24;
- }
- retraso++;
- if (e5._vidas == 24)
- retraso = 0;
- }
- if (e6._vidas == 27 || e6._vidas == 26) {
- e6.animar();
- if (e6._x == nave->_x && retrasobala == 0) {
- balaenemigas5[balaseneActual5] = e6.disparar();
- balaseneActual5++;
- retrasobala = 1;
- }
- for (short i = 0; i < balaseneActual5; ++i) {
- if (i == balaseneActual5 - 4)
- balaenemigas5[i]->animar();
- retrasobala = 0;
- }
- for (int i = 0; i < nBalas; ++i) {
- if (balas[i] != NULL) {
- if ((balas[i]->_x == e6._x + 2 && balas[i]->_y == e6._y) || (balas[i]->_x == e6._x && balas[i]->_y == e6._y) || (balas[i]->_x == e6._x + 1 && balas[i]->_y == e6._y) ||
- (balas[i]->_x == e6._x + 3 && balas[i]->_y == e6._y) || (balas[i]->_x == e6._x + 4 && balas[i]->_y == e6._y)) {
- e6._vidas--;
- if (e6._vidas == 25)
- score += 500;
- retraso = 0;
- }
- }
- }
- for (int i = 0; i < balasene; ++i) {
- if (balaenemigas5[i] != NULL) {
- if ((balaenemigas5[i]->_x == nave->_x + 2 && balaenemigas5[i]->_y == nave->_y) || (balaenemigas5[i]->_x == nave->_x && balaenemigas5[i]->_y == nave->_y) || (balaenemigas5[i]->_x == nave->_x + 1 && balaenemigas5[i]->_y == nave->_y) ||
- (balaenemigas5[i]->_x == nave->_x + 3 && balaenemigas5[i]->_y == nave->_y) || (balaenemigas5[i]->_x == nave->_x + 4 && balaenemigas5[i]->_y == nave->_y) && algo == 0) {
- nave->borrar();
- balaenemigas5[i]->borrar();
- Console::SetCursorPosition(LIMITE_ANCHO / 2 - 3, LIMITE_ALTO - 3);
- nave->_x = LIMITE_ANCHO / 2 - 3; nave->_y = LIMITE_ALTO - 3;
- nave->dibujar();
- nave->_vidas--;
- retraso = 0;
- algo = 1;
- }
- else if (balaenemigas5[i]->_y == LIMITE_ALTO) {
- balaenemigas5[i]->borrar();
- }
- }
- }
- }
- if (e6._vidas == 25) {
- e6.borrar();
- Console::SetCursorPosition(e6._x + 1, e6._y);
- cout << "500";
- if (retraso == 30) {
- Console::SetCursorPosition(e6._x + 1, e6._y);
- cout << " ";
- e6._vidas = 24;
- }
- retraso++;
- if (e6._vidas == 24)
- retraso = 0;
- }
- if (e7._vidas == 27 || e7._vidas == 26) {
- e7.animar();
- if (e7._x == nave->_x && retrasobala == 0) {
- balaenemigas6[balaseneActual6] = e7.disparar();
- balaseneActual6++;
- retrasobala = 1;
- }
- for (short i = 0; i < balaseneActual6; ++i) {
- if (i == balaseneActual6 - 4)
- balaenemigas6[i]->animar();
- retrasobala = 0;
- }
- for (int i = 0; i < nBalas; ++i) {
- if (balas[i] != NULL) {
- if ((balas[i]->_x == e7._x + 2 && balas[i]->_y == e7._y) || (balas[i]->_x == e7._x && balas[i]->_y == e7._y) || (balas[i]->_x == e7._x + 1 && balas[i]->_y == e7._y) ||
- (balas[i]->_x == e7._x + 3 && balas[i]->_y == e7._y) || (balas[i]->_x == e7._x + 4 && balas[i]->_y == e7._y)) {
- e7._vidas--;
- if (e7._vidas == 25)
- score += 500;
- retraso = 0;
- }
- }
- }
- for (int i = 0; i < balasene; ++i) {
- if (balaenemigas6[i] != NULL) {
- if ((balaenemigas6[i]->_x == nave->_x + 2 && balaenemigas6[i]->_y == nave->_y) || (balaenemigas6[i]->_x == nave->_x && balaenemigas6[i]->_y == nave->_y) || (balaenemigas6[i]->_x == nave->_x + 1 && balaenemigas6[i]->_y == nave->_y) ||
- (balaenemigas6[i]->_x == nave->_x + 3 && balaenemigas6[i]->_y == nave->_y) || (balaenemigas6[i]->_x == nave->_x + 4 && balaenemigas6[i]->_y == nave->_y) && algo == 0) {
- nave->borrar();
- balaenemigas6[i]->borrar();
- Console::SetCursorPosition(LIMITE_ANCHO / 2 - 3, LIMITE_ALTO - 3);
- nave->_x = LIMITE_ANCHO / 2 - 3; nave->_y = LIMITE_ALTO - 3;
- nave->dibujar();
- nave->_vidas--;
- retraso = 0;
- algo = 1;
- }
- else if (balaenemigas6[i]->_y == LIMITE_ALTO) {
- balaenemigas6[i]->borrar();
- }
- }
- }
- }
- if (e7._vidas == 25) {
- e7.borrar();
- Console::SetCursorPosition(e7._x + 1, e7._y);
- cout << "500";
- if (retraso == 30) {
- Console::SetCursorPosition(e7._x + 1, e7._y);
- cout << " ";
- e7._vidas = 24;
- }
- retraso++;
- if (e7._vidas == 24)
- retraso = 0;
- }
- if (e8._vidas == 27 || e8._vidas == 26) {
- e8.animar();
- if (e8._x == nave->_x && retrasobala == 0) {
- balaenemigas7[balaseneActual7] = e8.disparar();
- balaseneActual7++;
- retrasobala = 1;
- }
- for (short i = 0; i < balaseneActual7; ++i) {
- if (i == balaseneActual7 - 4)
- balaenemigas7[i]->animar();
- retrasobala = 0;
- }
- for (int i = 0; i < nBalas; ++i) {
- if (balas[i] != NULL) {
- if ((balas[i]->_x == e8._x + 2 && balas[i]->_y == e8._y) || (balas[i]->_x == e8._x && balas[i]->_y == e8._y) || (balas[i]->_x == e8._x + 1 && balas[i]->_y == e8._y) ||
- (balas[i]->_x == e8._x + 3 && balas[i]->_y == e8._y) || (balas[i]->_x == e8._x + 4 && balas[i]->_y == e8._y)) {
- e8._vidas--;
- if (e8._vidas == 25)
- score += 500;
- retraso = 0;
- }
- }
- }
- for (int i = 0; i < balasene; ++i) {
- if (balaenemigas7[i] != NULL) {
- if ((balaenemigas7[i]->_x == nave->_x + 2 && balaenemigas7[i]->_y == nave->_y) || (balaenemigas7[i]->_x == nave->_x && balaenemigas7[i]->_y == nave->_y) || (balaenemigas7[i]->_x == nave->_x + 1 && balaenemigas7[i]->_y == nave->_y) ||
- (balaenemigas7[i]->_x == nave->_x + 3 && balaenemigas7[i]->_y == nave->_y) || (balaenemigas7[i]->_x == nave->_x + 4 && balaenemigas7[i]->_y == nave->_y) && algo == 0) {
- nave->borrar();
- balaenemigas7[i]->borrar();
- Console::SetCursorPosition(LIMITE_ANCHO / 2 - 3, LIMITE_ALTO - 3);
- nave->_x = LIMITE_ANCHO / 2 - 3; nave->_y = LIMITE_ALTO - 3;
- nave->dibujar();
- nave->_vidas--;
- retraso = 0;
- algo = 1;
- }
- else if (balaenemigas7[i]->_y == LIMITE_ALTO) {
- balaenemigas7[i]->borrar();
- }
- }
- }
- }
- if (e8._vidas == 25) {
- e8.borrar();
- Console::SetCursorPosition(e8._x + 1, e8._y);
- cout << "500";
- if (retraso == 30) {
- Console::SetCursorPosition(e8._x + 1, e8._y);
- cout << " ";
- e8._vidas = 24;
- }
- retraso++;
- if (e8._vidas == 24)
- retraso = 0;
- }
- if (e9._vidas == 27 || e9._vidas == 26) {
- e9.animar();
- if (e9._x == nave->_x && retrasobala == 0) {
- balaenemigas8[balaseneActual8] = e9.disparar();
- balaseneActual8++;
- retrasobala = 1;
- }
- for (short i = 0; i < balaseneActual8; ++i) {
- if (i == balaseneActual8 - 4)
- balaenemigas8[i]->animar();
- retrasobala = 0;
- }
- for (int i = 0; i < nBalas; ++i) {
- if (balas[i] != NULL) {
- if ((balas[i]->_x == e9._x + 2 && balas[i]->_y == e9._y) || (balas[i]->_x == e9._x && balas[i]->_y == e9._y) || (balas[i]->_x == e9._x + 1 && balas[i]->_y == e9._y) ||
- (balas[i]->_x == e9._x + 3 && balas[i]->_y == e9._y) || (balas[i]->_x == e9._x + 4 && balas[i]->_y == e9._y)) {
- e9._vidas--;
- if (e9._vidas == 25)
- score += 500;
- retraso = 0;
- }
- }
- }
- for (int i = 0; i < balasene; ++i) {
- if (balaenemigas8[i] != NULL) {
- if ((balaenemigas8[i]->_x == nave->_x + 2 && balaenemigas8[i]->_y == nave->_y) || (balaenemigas8[i]->_x == nave->_x && balaenemigas8[i]->_y == nave->_y) || (balaenemigas8[i]->_x == nave->_x + 1 && balaenemigas8[i]->_y == nave->_y) ||
- (balaenemigas8[i]->_x == nave->_x + 3 && balaenemigas8[i]->_y == nave->_y) || (balaenemigas8[i]->_x == nave->_x + 4 && balaenemigas8[i]->_y == nave->_y) && algo == 0) {
- nave->borrar();
- balaenemigas8[i]->borrar();
- Console::SetCursorPosition(LIMITE_ANCHO / 2 - 3, LIMITE_ALTO - 3);
- nave->_x = LIMITE_ANCHO / 2 - 3; nave->_y = LIMITE_ALTO - 3;
- nave->dibujar();
- nave->_vidas--;
- retraso = 0;
- algo = 1;
- }
- else if (balaenemigas8[i]->_y == LIMITE_ALTO) {
- balaenemigas8[i]->borrar();
- }
- }
- }
- }
- if (e9._vidas == 25) {
- e9.borrar();
- Console::SetCursorPosition(e9._x + 1, e9._y);
- cout << "500";
- if (retraso == 30) {
- Console::SetCursorPosition(e9._x + 1, e9._y);
- cout << " ";
- e9._vidas = 24;
- }
- retraso++;
- if (e9._vidas == 24)
- retraso = 0;
- }
- }
- /*********************************************************************************/
- /**************************************************************************/
- if (nave->_x == enemiga1._x && nave->_y == enemiga1._y || nave->_x + 1 == enemiga1._x && nave->_y == enemiga1._y || nave->_x + 2 == enemiga1._x && nave->_y == enemiga1._y || nave->_x + 3 == enemiga1._x && nave->_y == enemiga1._y || nave->_x + 4 == enemiga1._x && nave->_y == enemiga1._y ||
- nave->_x == enemiga1._x + 2 && nave->_y - 1 == enemiga1._y || nave->_x == enemiga1._x + 1 && nave->_y == enemiga1._y || nave->_x + 1 == enemiga1._x + 1 && nave->_y == enemiga1._y || nave->_x + 2 == enemiga1._x + 1 && nave->_y == enemiga1._y || nave->_x + 3 == enemiga1._x + 1 && nave->_y == enemiga1._y || nave->_x + 4 == enemiga1._x && nave->_y == enemiga1._y ||
- nave->_x == enemiga1._x + 2 && nave->_y - 1 == enemiga1._y || nave->_x == enemiga2._x && nave->_y == enemiga2._y || nave->_x + 1 == enemiga2._x && nave->_y == enemiga2._y || nave->_x + 2 == enemiga2._x && nave->_y == enemiga2._y || nave->_x + 3 == enemiga2._x && nave->_y == enemiga2._y || nave->_x + 4 == enemiga2._x && nave->_y == enemiga2._y ||
- nave->_x == enemiga2._x + 2 && nave->_y - 1 == enemiga2._y || nave->_x == enemiga2._x + 1 && nave->_y == enemiga2._y || nave->_x + 1 == enemiga2._x + 1 && nave->_y == enemiga2._y || nave->_x + 2 == enemiga2._x + 1 && nave->_y == enemiga2._y ||
- nave->_x + 3 == enemiga2._x + 1 && nave->_y == enemiga2._y || nave->_x + 4 == enemiga2._x && nave->_y == enemiga2._y || nave->_x == enemiga2._x + 2 && nave->_y - 1 == enemiga2._y || nave->_x == enemiga3._x && nave->_y == enemiga3._y || nave->_x + 1 == enemiga3._x && nave->_y == enemiga3._y || nave->_x + 2 == enemiga3._x && nave->_y == enemiga3._y || nave->_x + 3 == enemiga3._x && nave->_y == enemiga3._y || nave->_x + 4 == enemiga3._x && nave->_y == enemiga3._y ||
- nave->_x == enemiga3._x + 2 && nave->_y - 1 == enemiga3._y || nave->_x == enemiga3._x + 1 && nave->_y == enemiga3._y || nave->_x + 1 == enemiga3._x + 1 && nave->_y == enemiga3._y || nave->_x + 2 == enemiga3._x + 1 && nave->_y == enemiga3._y || nave->_x + 3 == enemiga3._x + 1 && nave->_y == enemiga3._y || nave->_x + 4 == enemiga3._x && nave->_y == enemiga3._y ||
- nave->_x == enemiga3._x + 2 && nave->_y - 1 == enemiga3._y || nave->_x == enemiga4._x && nave->_y == enemiga4._y || nave->_x + 1 == enemiga4._x && nave->_y == enemiga4._y || nave->_x + 2 == enemiga4._x && nave->_y == enemiga4._y || nave->_x + 3 == enemiga4._x && nave->_y == enemiga4._y || nave->_x + 4 == enemiga4._x && nave->_y == enemiga4._y ||
- nave->_x == enemiga4._x + 2 && nave->_y - 1 == enemiga4._y || nave->_x == enemiga4._x + 1 && nave->_y == enemiga4._y || nave->_x + 1 == enemiga4._x + 1 && nave->_y == enemiga4._y || nave->_x + 2 == enemiga4._x + 1 && nave->_y == enemiga4._y || nave->_x + 3 == enemiga4._x + 1 && nave->_y == enemiga4._y || nave->_x + 4 == enemiga4._x && nave->_y == enemiga4._y ||
- nave->_x == enemiga4._x + 2 && nave->_y - 1 == enemiga4._y || nave->_x == enemiga5._x && nave->_y == enemiga5._y || nave->_x + 1 == enemiga5._x && nave->_y == enemiga5._y || nave->_x + 2 == enemiga5._x && nave->_y == enemiga5._y || nave->_x + 3 == enemiga5._x && nave->_y == enemiga5._y || nave->_x + 4 == enemiga5._x && nave->_y == enemiga5._y ||
- nave->_x == enemiga5._x + 2 && nave->_y - 1 == enemiga5._y || nave->_x == enemiga5._x + 1 && nave->_y == enemiga5._y || nave->_x + 1 == enemiga5._x + 1 && nave->_y == enemiga5._y || nave->_x + 2 == enemiga5._x + 1 && nave->_y == enemiga5._y || nave->_x + 3 == enemiga5._x + 1 && nave->_y == enemiga5._y || nave->_x + 4 == enemiga5._x && nave->_y == enemiga5._y ||
- nave->_x == enemiga5._x + 2 && nave->_y - 1 == enemiga5._y || nave->_x == enemiga6._x && nave->_y == enemiga6._y || nave->_x + 1 == enemiga6._x && nave->_y == enemiga6._y || nave->_x + 2 == enemiga6._x && nave->_y == enemiga6._y || nave->_x + 3 == enemiga6._x && nave->_y == enemiga6._y || nave->_x + 4 == enemiga6._x && nave->_y == enemiga6._y ||
- nave->_x == enemiga6._x + 2 && nave->_y - 1 == enemiga6._y || nave->_x == enemiga6._x + 1 && nave->_y == enemiga6._y || nave->_x + 1 == enemiga6._x + 1 && nave->_y == enemiga6._y || nave->_x + 2 == enemiga6._x + 1 && nave->_y == enemiga6._y || nave->_x + 3 == enemiga6._x + 1 && nave->_y == enemiga6._y || nave->_x + 4 == enemiga6._x && nave->_y == enemiga6._y ||
- nave->_x == enemiga6._x + 2 && nave->_y - 1 == enemiga6._y || nave->_x == enemiga7._x && nave->_y == enemiga7._y || nave->_x + 1 == enemiga7._x && nave->_y == enemiga7._y || nave->_x + 2 == enemiga7._x && nave->_y == enemiga7._y || nave->_x + 3 == enemiga7._x && nave->_y == enemiga7._y || nave->_x + 4 == enemiga7._x && nave->_y == enemiga7._y ||
- nave->_x == enemiga7._x + 2 && nave->_y - 1 == enemiga7._y || nave->_x == enemiga7._x + 1 && nave->_y == enemiga7._y || nave->_x + 1 == enemiga7._x + 1 && nave->_y == enemiga7._y || nave->_x + 2 == enemiga7._x + 1 && nave->_y == enemiga7._y || nave->_x + 3 == enemiga7._x + 1 && nave->_y == enemiga7._y || nave->_x + 4 == enemiga7._x && nave->_y == enemiga7._y ||
- nave->_x == enemiga7._x + 2 && nave->_y - 1 == enemiga7._y || nave->_x == enemiga8._x && nave->_y == enemiga8._y || nave->_x + 1 == enemiga8._x && nave->_y == enemiga8._y || nave->_x + 2 == enemiga8._x && nave->_y == enemiga8._y || nave->_x + 3 == enemiga8._x && nave->_y == enemiga8._y || nave->_x + 4 == enemiga8._x && nave->_y == enemiga8._y ||
- nave->_x == enemiga8._x + 2 && nave->_y - 1 == enemiga8._y || nave->_x == enemiga8._x + 1 && nave->_y == enemiga8._y || nave->_x + 1 == enemiga8._x + 1 && nave->_y == enemiga8._y || nave->_x + 2 == enemiga8._x + 1 && nave->_y == enemiga8._y || nave->_x + 3 == enemiga8._x + 1 && nave->_y == enemiga8._y || nave->_x + 4 == enemiga8._x && nave->_y == enemiga8._y ||
- nave->_x == enemiga8._x + 2 && nave->_y - 1 == enemiga8._y || nave->_x == enemiga9._x && nave->_y == enemiga9._y || nave->_x + 1 == enemiga9._x && nave->_y == enemiga9._y || nave->_x + 2 == enemiga9._x && nave->_y == enemiga9._y || nave->_x + 3 == enemiga9._x && nave->_y == enemiga9._y || nave->_x + 4 == enemiga9._x && nave->_y == enemiga9._y ||
- nave->_x == enemiga9._x + 2 && nave->_y - 1 == enemiga9._y || nave->_x == enemiga9._x + 1 && nave->_y == enemiga9._y || nave->_x + 1 == enemiga9._x + 1 && nave->_y == enemiga9._y || nave->_x + 2 == enemiga9._x + 1 && nave->_y == enemiga9._y || nave->_x + 3 == enemiga9._x + 1 && nave->_y == enemiga9._y || nave->_x + 4 == enemiga9._x && nave->_y == enemiga9._y ||
- nave->_x == enemiga9._x + 2 && nave->_y - 1 == enemiga9._y ||
- nave->_x == ene1._x && nave->_y == ene1._y || nave->_x + 1 == ene1._x && nave->_y == ene1._y || nave->_x + 2 == ene1._x && nave->_y == ene1._y || nave->_x + 3 == ene1._x && nave->_y == ene1._y || nave->_x + 4 == ene1._x && nave->_y == ene1._y ||
- nave->_x == ene1._x + 2 && nave->_y - 1 == ene1._y || nave->_x == ene1._x + 1 && nave->_y == ene1._y || nave->_x + 1 == ene1._x + 1 && nave->_y == ene1._y || nave->_x + 2 == ene1._x + 1 && nave->_y == ene1._y ||
- nave->_x + 3 == ene1._x + 1 && nave->_y == ene1._y || nave->_x + 4 == ene1._x && nave->_y == ene1._y || nave->_x == ene1._x + 2 && nave->_y - 1 == ene1._y || nave->_x == ene2._x && nave->_y == ene2._y || nave->_x + 1 == ene2._x && nave->_y == ene2._y || nave->_x + 2 == ene2._x && nave->_y == ene2._y || nave->_x + 3 == ene2._x && nave->_y == ene2._y || nave->_x + 4 == ene2._x && nave->_y == ene2._y ||
- nave->_x == ene2._x + 2 && nave->_y - 1 == ene2._y || nave->_x == ene2._x + 1 && nave->_y == ene2._y || nave->_x + 1 == ene2._x + 1 && nave->_y == ene2._y || nave->_x + 2 == ene2._x + 1 && nave->_y == ene2._y ||
- nave->_x + 3 == ene2._x + 1 && nave->_y == ene2._y || nave->_x + 4 == ene2._x && nave->_y == ene2._y || nave->_x == ene2._x + 2 && nave->_y - 1 == ene2._y || nave->_x == ene3._x && nave->_y == ene3._y || nave->_x + 1 == ene3._x && nave->_y == ene3._y || nave->_x + 2 == ene3._x && nave->_y == ene3._y || nave->_x + 3 == ene3._x && nave->_y == ene3._y || nave->_x + 4 == ene3._x && nave->_y == ene3._y ||
- nave->_x == ene3._x + 2 && nave->_y - 1 == ene3._y || nave->_x == ene3._x + 1 && nave->_y == ene3._y || nave->_x + 1 == ene3._x + 1 && nave->_y == ene3._y || nave->_x + 2 == ene3._x + 1 && nave->_y == ene3._y ||
- nave->_x + 3 == ene3._x + 1 && nave->_y == ene3._y || nave->_x + 4 == ene3._x && nave->_y == ene3._y || nave->_x == ene3._x + 2 && nave->_y - 1 == ene3._y || nave->_x == ene4._x && nave->_y == ene4._y || nave->_x + 1 == ene4._x && nave->_y == ene4._y || nave->_x + 2 == ene4._x && nave->_y == ene4._y || nave->_x + 3 == ene4._x && nave->_y == ene4._y || nave->_x + 4 == ene4._x && nave->_y == ene4._y ||
- nave->_x == ene4._x + 2 && nave->_y - 1 == ene4._y || nave->_x == ene4._x + 1 && nave->_y == ene4._y || nave->_x + 1 == ene4._x + 1 && nave->_y == ene4._y || nave->_x + 2 == ene4._x + 1 && nave->_y == ene4._y ||
- nave->_x + 3 == ene4._x + 1 && nave->_y == ene4._y || nave->_x + 4 == ene4._x && nave->_y == ene4._y || nave->_x == ene4._x + 2 && nave->_y - 1 == ene4._y || nave->_x == ene5._x && nave->_y == ene5._y || nave->_x + 1 == ene5._x && nave->_y == ene5._y || nave->_x + 2 == ene5._x && nave->_y == ene5._y || nave->_x + 3 == ene5._x && nave->_y == ene5._y || nave->_x + 4 == ene5._x && nave->_y == ene5._y ||
- nave->_x == ene5._x + 2 && nave->_y - 1 == ene5._y || nave->_x == ene5._x + 1 && nave->_y == ene5._y || nave->_x + 1 == ene5._x + 1 && nave->_y == ene5._y || nave->_x + 2 == ene5._x + 1 && nave->_y == ene5._y ||
- nave->_x + 3 == ene5._x + 1 && nave->_y == ene5._y || nave->_x + 4 == ene5._x && nave->_y == ene5._y || nave->_x == ene5._x + 2 && nave->_y - 1 == ene5._y || nave->_x == ene6._x && nave->_y == ene6._y || nave->_x + 1 == ene6._x && nave->_y == ene6._y || nave->_x + 2 == ene6._x && nave->_y == ene6._y || nave->_x + 3 == ene6._x && nave->_y == ene6._y || nave->_x + 4 == ene6._x && nave->_y == ene6._y ||
- nave->_x == ene6._x + 2 && nave->_y - 1 == ene6._y || nave->_x == ene6._x + 1 && nave->_y == ene6._y || nave->_x + 1 == ene6._x + 1 && nave->_y == ene6._y || nave->_x + 2 == ene6._x + 1 && nave->_y == ene6._y ||
- nave->_x + 3 == ene6._x + 1 && nave->_y == ene6._y || nave->_x + 4 == ene6._x && nave->_y == ene6._y || nave->_x == ene6._x + 2 && nave->_y - 1 == ene6._y || nave->_x == ene7._x && nave->_y == ene7._y || nave->_x + 1 == ene7._x && nave->_y == ene7._y || nave->_x + 2 == ene7._x && nave->_y == ene7._y || nave->_x + 3 == ene7._x && nave->_y == ene7._y || nave->_x + 4 == ene7._x && nave->_y == ene7._y ||
- nave->_x == ene7._x + 2 && nave->_y - 1 == ene7._y || nave->_x == ene7._x + 1 && nave->_y == ene7._y || nave->_x + 1 == ene7._x + 1 && nave->_y == ene7._y || nave->_x + 2 == ene7._x + 1 && nave->_y == ene7._y ||
- nave->_x + 3 == ene7._x + 1 && nave->_y == ene7._y || nave->_x + 4 == ene7._x && nave->_y == ene7._y || nave->_x == ene7._x + 2 && nave->_y - 1 == ene7._y || nave->_x == ene8._x && nave->_y == ene8._y || nave->_x + 1 == ene8._x && nave->_y == ene8._y || nave->_x + 2 == ene8._x && nave->_y == ene8._y || nave->_x + 3 == ene8._x && nave->_y == ene8._y || nave->_x + 4 == ene8._x && nave->_y == ene8._y ||
- nave->_x == ene8._x + 2 && nave->_y - 1 == ene8._y || nave->_x == ene8._x + 1 && nave->_y == ene8._y || nave->_x + 1 == ene8._x + 1 && nave->_y == ene8._y || nave->_x + 2 == ene8._x + 1 && nave->_y == ene8._y ||
- nave->_x + 3 == ene8._x + 1 && nave->_y == ene8._y || nave->_x + 4 == ene8._x && nave->_y == ene8._y || nave->_x == ene8._x + 2 && nave->_y - 1 == ene8._y || nave->_x == ene9._x && nave->_y == ene9._y || nave->_x + 1 == ene9._x && nave->_y == ene9._y || nave->_x + 2 == ene9._x && nave->_y == ene9._y || nave->_x + 3 == ene9._x && nave->_y == ene9._y || nave->_x + 4 == ene9._x && nave->_y == ene9._y ||
- nave->_x == ene9._x + 2 && nave->_y - 1 == ene9._y || nave->_x == ene9._x + 1 && nave->_y == ene9._y || nave->_x + 1 == ene9._x + 1 && nave->_y == ene9._y || nave->_x + 2 == ene9._x + 1 && nave->_y == ene9._y ||
- nave->_x + 3 == ene9._x + 1 && nave->_y == ene9._y || nave->_x + 4 == ene9._x && nave->_y == ene9._y || nave->_x == ene9._x + 2 && nave->_y - 1 == ene9._y || nave->_x == ene10._x && nave->_y == ene10._y || nave->_x + 1 == ene10._x && nave->_y == ene10._y || nave->_x + 2 == ene10._x && nave->_y == ene10._y || nave->_x + 3 == ene10._x && nave->_y == ene10._y || nave->_x + 4 == ene10._x && nave->_y == ene10._y ||
- nave->_x == ene10._x + 2 && nave->_y - 1 == ene10._y || nave->_x == ene10._x + 1 && nave->_y == ene10._y || nave->_x + 1 == ene10._x + 1 && nave->_y == ene10._y || nave->_x + 2 == ene10._x + 1 && nave->_y == ene10._y ||
- nave->_x + 3 == ene10._x + 1 && nave->_y == ene10._y || nave->_x + 4 == ene10._x && nave->_y == ene10._y || nave->_x == ene10._x + 2 && nave->_y - 1 == ene10._y ||
- nave->_x == e1._x && nave->_y == e1._y || nave->_x + 1 == e1._x && nave->_y == e1._y || nave->_x + 2 == e1._x && nave->_y == e1._y || nave->_x + 3 == e1._x && nave->_y == e1._y || nave->_x + 4 == e1._x && nave->_y == e1._y ||
- nave->_x == e1._x + 2 && nave->_y - 1 == e1._y || nave->_x == e1._x + 1 && nave->_y == e1._y || nave->_x + 1 == e1._x + 1 && nave->_y == e1._y || nave->_x + 2 == e1._x + 1 && nave->_y == e1._y ||
- nave->_x + 3 == e1._x + 1 && nave->_y == e1._y || nave->_x + 4 == e1._x && nave->_y == e1._y || nave->_x == e1._x + 2 && nave->_y - 1 == e1._y || nave->_x == e2._x && nave->_y == e2._y || nave->_x + 1 == e2._x && nave->_y == e2._y ||
- nave->_x + 2 == e2._x && nave->_y == e2._y || nave->_x + 3 == e2._x && nave->_y == e2._y || nave->_x + 4 == e2._x && nave->_y == e2._y ||
- nave->_x == e2._x + 2 && nave->_y - 1 == e2._y || nave->_x == e2._x + 1 && nave->_y == e2._y || nave->_x + 1 == e2._x + 1 && nave->_y == e2._y || nave->_x + 2 == e2._x + 1 && nave->_y == e2._y ||
- nave->_x + 3 == e2._x + 1 && nave->_y == e2._y || nave->_x + 4 == e2._x && nave->_y == e2._y || nave->_x == e2._x + 2 && nave->_y - 1 == e2._y || nave->_x == e3._x && nave->_y == e3._y || nave->_x + 1 == e3._x && nave->_y == e3._y || nave->_x + 2 == e3._x && nave->_y == e3._y || nave->_x + 3 == e3._x && nave->_y == e3._y || nave->_x + 4 == e3._x && nave->_y == e3._y ||
- nave->_x == e3._x + 2 && nave->_y - 1 == e3._y || nave->_x == e3._x + 1 && nave->_y == e3._y || nave->_x + 1 == e3._x + 1 && nave->_y == e3._y || nave->_x + 2 == e3._x + 1 && nave->_y == e3._y ||
- nave->_x + 3 == e3._x + 1 && nave->_y == e3._y || nave->_x + 4 == e3._x && nave->_y == e3._y || nave->_x == e3._x + 2 && nave->_y - 1 == e3._y || nave->_x == e4._x && nave->_y == e4._y || nave->_x + 1 == e4._x && nave->_y == e4._y || nave->_x + 2 == e4._x && nave->_y == e4._y || nave->_x + 3 == e4._x && nave->_y == e4._y || nave->_x + 4 == e4._x && nave->_y == e4._y ||
- nave->_x == e4._x + 2 && nave->_y - 1 == e4._y || nave->_x == e4._x + 1 && nave->_y == e4._y || nave->_x + 1 == e4._x + 1 && nave->_y == e4._y || nave->_x + 2 == e4._x + 1 && nave->_y == e4._y ||
- nave->_x + 3 == e4._x + 1 && nave->_y == e4._y || nave->_x + 4 == e4._x && nave->_y == e4._y || nave->_x == e4._x + 2 && nave->_y - 1 == e4._y || nave->_x == e5._x && nave->_y == e5._y || nave->_x + 1 == e5._x && nave->_y == e5._y || nave->_x + 2 == e5._x && nave->_y == e5._y || nave->_x + 3 == e5._x && nave->_y == e5._y || nave->_x + 4 == e5._x && nave->_y == e5._y ||
- nave->_x == e5._x + 2 && nave->_y - 1 == e5._y || nave->_x == e5._x + 1 && nave->_y == e5._y || nave->_x + 1 == e5._x + 1 && nave->_y == e5._y || nave->_x + 2 == e5._x + 1 && nave->_y == e5._y ||
- nave->_x + 3 == e5._x + 1 && nave->_y == e5._y || nave->_x + 4 == e5._x && nave->_y == e5._y || nave->_x == e5._x + 2 && nave->_y - 1 == e5._y || nave->_x == e6._x && nave->_y == e6._y || nave->_x + 1 == e6._x && nave->_y == e6._y || nave->_x + 2 == e6._x && nave->_y == e6._y || nave->_x + 3 == e6._x && nave->_y == e6._y || nave->_x + 4 == e6._x && nave->_y == e6._y ||
- nave->_x == e6._x + 2 && nave->_y - 1 == e6._y || nave->_x == e6._x + 1 && nave->_y == e6._y || nave->_x + 1 == e6._x + 1 && nave->_y == e6._y || nave->_x + 2 == e6._x + 1 && nave->_y == e6._y ||
- nave->_x + 3 == e6._x + 1 && nave->_y == e6._y || nave->_x + 4 == e6._x && nave->_y == e6._y || nave->_x == e6._x + 2 && nave->_y - 1 == e6._y || nave->_x == e7._x && nave->_y == e7._y || nave->_x + 1 == e7._x && nave->_y == e7._y || nave->_x + 2 == e7._x && nave->_y == e7._y || nave->_x + 3 == e7._x && nave->_y == e7._y || nave->_x + 4 == e7._x && nave->_y == e7._y ||
- nave->_x == e7._x + 2 && nave->_y - 1 == e7._y || nave->_x == e7._x + 1 && nave->_y == e7._y || nave->_x + 1 == e7._x + 1 && nave->_y == e7._y || nave->_x + 2 == e7._x + 1 && nave->_y == e7._y ||
- nave->_x + 3 == e7._x + 1 && nave->_y == e7._y || nave->_x + 4 == e7._x && nave->_y == e7._y || nave->_x == e7._x + 2 && nave->_y - 1 == e7._y || nave->_x == e8._x && nave->_y == e8._y || nave->_x + 1 == e8._x && nave->_y == e8._y || nave->_x + 2 == e8._x && nave->_y == e8._y || nave->_x + 3 == e8._x && nave->_y == e8._y || nave->_x + 4 == e8._x && nave->_y == e8._y ||
- nave->_x == e8._x + 2 && nave->_y - 1 == e8._y || nave->_x == e8._x + 1 && nave->_y == e8._y || nave->_x + 1 == e8._x + 1 && nave->_y == e8._y || nave->_x + 2 == e8._x + 1 && nave->_y == e8._y ||
- nave->_x + 3 == e8._x + 1 && nave->_y == e8._y || nave->_x + 4 == e8._x && nave->_y == e8._y || nave->_x == e8._x + 2 && nave->_y - 1 == e8._y || nave->_x == e9._x && nave->_y == e9._y || nave->_x + 1 == e9._x && nave->_y == e9._y || nave->_x + 2 == e9._x && nave->_y == e9._y || nave->_x + 3 == e9._x && nave->_y == e9._y || nave->_x + 4 == e9._x && nave->_y == e9._y ||
- nave->_x == e9._x + 2 && nave->_y - 1 == e9._y || nave->_x == e9._x + 1 && nave->_y == e9._y || nave->_x + 1 == e9._x + 1 && nave->_y == e9._y || nave->_x + 2 == e9._x + 1 && nave->_y == e9._y ||
- nave->_x + 3 == e9._x + 1 && nave->_y == e9._y || nave->_x + 4 == e9._x && nave->_y == e9._y || nave->_x == e9._x + 2 && nave->_y - 1 == e9._y || nave->_x == e10._x && nave->_y == e10._y || nave->_x + 1 == e10._x && nave->_y == e10._y || nave->_x + 2 == e10._x && nave->_y == e10._y || nave->_x + 3 == e10._x && nave->_y == e10._y || nave->_x + 4 == e10._x && nave->_y == e10._y ||
- nave->_x == e10._x + 2 && nave->_y - 1 == e10._y || nave->_x == e10._x + 1 && nave->_y == e10._y || nave->_x + 1 == e10._x + 1 && nave->_y == e10._y || nave->_x + 2 == e10._x + 1 && nave->_y == e10._y ||
- nave->_x + 3 == e10._x + 1 && nave->_y == e10._y || nave->_x + 4 == e10._x && nave->_y == e10._y || nave->_x == e10._x + 2 && nave->_y - 1 == e10._y) {
- nave->borrar();
- Console::SetCursorPosition(LIMITE_ANCHO / 2 - 3, LIMITE_ALTO - 3);
- nave->_x = LIMITE_ANCHO / 2 - 3; nave->_y = LIMITE_ALTO - 3;
- nave->dibujar();
- nave->_vidas--;
- }
- imprimirMensaje(*nave, municion, score, tiempo);
- if (municion == 0) {
- break;
- }
- for (int i = 0; i < 30; ++i) {
- if ((nave->_x == es[i]._x && nave->_y == es[i]._y) || (nave->_x + 1 == es[i]._x && nave->_y == es[i]._y) || (nave->_x + 2 == es[i]._x && nave->_y == es[i]._y)
- || (nave->_x + 3 == es[i]._x && nave->_y == es[i]._y) || (nave->_x + 4 == es[i]._x && nave->_y == es[i]._y) || (nave->_x + 2 == es[i]._x && nave->_y - 1 == es[i]._y)
- || (nave->_x + 1 == es[i]._x && nave->_y - 1 == es[i]._y) || (nave->_x + 3 == es[i]._x && nave->_y - 1 == es[i]._y) ||
- (nave->_x + 4 == es[i]._x && nave->_y - 1 == es[i]._y) || (nave->_x == es[i]._x && nave->_y - 1 == es[i]._y) ||
- (enemiga1._x == es[i]._x && enemiga1._y - 1 == es[i]._y) || (enemiga1._x + 1 == es[i]._x && enemiga1._y - 1 == es[i]._y) ||
- (enemiga1._x + 2 == es[i]._x && enemiga1._y - 1 == es[i]._y) || (enemiga1._x + 3 == es[i]._x && enemiga1._y - 1 == es[i]._y) ||
- (enemiga1._x + 4 == es[i]._x && enemiga1._y - 1 == es[i]._y) || (enemiga1._x == es[i]._x && enemiga1._y == es[i]._y) || (enemiga1._x + 1 == es[i]._x && enemiga1._y == es[i]._y) ||
- (enemiga1._x + 2 == es[i]._x && enemiga1._y == es[i]._y) || (enemiga1._x + 3 == es[i]._x && enemiga1._y == es[i]._y) || (enemiga1._x + 4 == es[i]._x && enemiga1._y == es[i]._y) ||
- (enemiga2._x == es[i]._x && enemiga2._y - 1 == es[i]._y) || (enemiga2._x + 1 == es[i]._x && enemiga2._y - 1 == es[i]._y) ||
- (enemiga2._x + 2 == es[i]._x && enemiga2._y - 1 == es[i]._y) || (enemiga2._x + 3 == es[i]._x && enemiga2._y - 1 == es[i]._y) ||
- (enemiga2._x + 4 == es[i]._x && enemiga2._y - 1 == es[i]._y) || (enemiga2._x == es[i]._x && enemiga2._y == es[i]._y) || (enemiga2._x + 1 == es[i]._x && enemiga2._y == es[i]._y) ||
- (enemiga2._x + 2 == es[i]._x && enemiga2._y == es[i]._y) || (enemiga2._x + 3 == es[i]._x && enemiga2._y == es[i]._y) || (enemiga2._x + 4 == es[i]._x && enemiga2._y == es[i]._y) || (enemiga3._x == es[i]._x && enemiga3._y - 1 == es[i]._y) || (enemiga3._x + 1 == es[i]._x && enemiga3._y - 1 == es[i]._y) ||
- (enemiga3._x + 2 == es[i]._x && enemiga3._y - 1 == es[i]._y) || (enemiga3._x + 3 == es[i]._x && enemiga3._y - 1 == es[i]._y) ||
- (enemiga3._x + 4 == es[i]._x && enemiga3._y - 1 == es[i]._y) || (enemiga3._x == es[i]._x && enemiga3._y == es[i]._y) || (enemiga3._x + 1 == es[i]._x && enemiga3._y == es[i]._y) ||
- (enemiga3._x + 2 == es[i]._x && enemiga3._y == es[i]._y) || (enemiga3._x + 3 == es[i]._x && enemiga3._y == es[i]._y) || (enemiga3._x + 4 == es[i]._x && enemiga3._y == es[i]._y) ||
- (enemiga4._x == es[i]._x && enemiga4._y - 1 == es[i]._y) || (enemiga4._x + 1 == es[i]._x && enemiga4._y - 1 == es[i]._y) ||
- (enemiga4._x + 2 == es[i]._x && enemiga4._y - 1 == es[i]._y) || (enemiga4._x + 3 == es[i]._x && enemiga4._y - 1 == es[i]._y) ||
- (enemiga4._x + 4 == es[i]._x && enemiga4._y - 1 == es[i]._y) || (enemiga4._x == es[i]._x && enemiga4._y == es[i]._y) || (enemiga4._x + 1 == es[i]._x && enemiga4._y == es[i]._y) ||
- (enemiga4._x + 2 == es[i]._x && enemiga4._y == es[i]._y) || (enemiga4._x + 3 == es[i]._x && enemiga4._y == es[i]._y) || (enemiga4._x + 4 == es[i]._x && enemiga4._y == es[i]._y) ||
- (enemiga5._x == es[i]._x && enemiga5._y - 1 == es[i]._y) || (enemiga5._x + 1 == es[i]._x && enemiga5._y - 1 == es[i]._y) ||
- (enemiga5._x + 2 == es[i]._x && enemiga5._y - 1 == es[i]._y) || (enemiga5._x + 3 == es[i]._x && enemiga5._y - 1 == es[i]._y) ||
- (enemiga5._x + 4 == es[i]._x && enemiga5._y - 1 == es[i]._y) || (enemiga5._x == es[i]._x && enemiga5._y == es[i]._y) || (enemiga5._x + 1 == es[i]._x && enemiga5._y == es[i]._y) ||
- (enemiga5._x + 2 == es[i]._x && enemiga5._y == es[i]._y) || (enemiga5._x + 3 == es[i]._x && enemiga5._y == es[i]._y) || (enemiga5._x + 4 == es[i]._x && enemiga5._y == es[i]._y) ||
- (enemiga6._x == es[i]._x && enemiga6._y - 1 == es[i]._y) || (enemiga6._x + 1 == es[i]._x && enemiga6._y - 1 == es[i]._y) ||
- (enemiga6._x + 2 == es[i]._x && enemiga6._y - 1 == es[i]._y) || (enemiga6._x + 3 == es[i]._x && enemiga6._y - 1 == es[i]._y) ||
- (enemiga6._x + 4 == es[i]._x && enemiga6._y - 1 == es[i]._y) || (enemiga6._x == es[i]._x && enemiga6._y == es[i]._y) || (enemiga6._x + 1 == es[i]._x && enemiga6._y == es[i]._y) ||
- (enemiga6._x + 2 == es[i]._x && enemiga6._y == es[i]._y) || (enemiga6._x + 3 == es[i]._x && enemiga6._y == es[i]._y) || (enemiga6._x + 4 == es[i]._x && enemiga6._y == es[i]._y) ||
- (enemiga7._x == es[i]._x && enemiga7._y - 1 == es[i]._y) || (enemiga7._x + 1 == es[i]._x && enemiga7._y - 1 == es[i]._y) ||
- (enemiga7._x + 2 == es[i]._x && enemiga7._y - 1 == es[i]._y) || (enemiga7._x + 3 == es[i]._x && enemiga7._y - 1 == es[i]._y) ||
- (enemiga7._x + 4 == es[i]._x && enemiga7._y - 1 == es[i]._y) || (enemiga7._x == es[i]._x && enemiga7._y == es[i]._y) || (enemiga7._x + 1 == es[i]._x && enemiga7._y == es[i]._y) ||
- (enemiga7._x + 2 == es[i]._x && enemiga7._y == es[i]._y) || (enemiga7._x + 3 == es[i]._x && enemiga7._y == es[i]._y) || (enemiga7._x + 4 == es[i]._x && enemiga7._y == es[i]._y) ||
- (enemiga8._x == es[i]._x && enemiga8._y - 1 == es[i]._y) || (enemiga8._x + 1 == es[i]._x && enemiga8._y - 1 == es[i]._y) ||
- (enemiga8._x + 2 == es[i]._x && enemiga8._y - 1 == es[i]._y) || (enemiga8._x + 3 == es[i]._x && enemiga8._y - 1 == es[i]._y) ||
- (enemiga8._x + 4 == es[i]._x && enemiga8._y - 1 == es[i]._y) || (enemiga8._x == es[i]._x && enemiga8._y == es[i]._y) || (enemiga8._x + 1 == es[i]._x && enemiga8._y == es[i]._y) ||
- (enemiga8._x + 2 == es[i]._x && enemiga8._y == es[i]._y) || (enemiga8._x + 3 == es[i]._x && enemiga8._y == es[i]._y) || (enemiga8._x + 4 == es[i]._x && enemiga8._y == es[i]._y) ||
- (enemiga9._x == es[i]._x && enemiga9._y - 1 == es[i]._y) || (enemiga9._x + 1 == es[i]._x && enemiga9._y - 1 == es[i]._y) ||
- (enemiga9._x + 2 == es[i]._x && enemiga9._y - 1 == es[i]._y) || (enemiga9._x + 3 == es[i]._x && enemiga9._y - 1 == es[i]._y) ||
- (enemiga9._x + 4 == es[i]._x && enemiga9._y - 1 == es[i]._y) || (enemiga9._x == es[i]._x && enemiga9._y == es[i]._y) || (enemiga9._x + 1 == es[i]._x && enemiga9._y == es[i]._y) ||
- (enemiga9._x + 2 == es[i]._x && enemiga9._y == es[i]._y) || (enemiga9._x + 3 == es[i]._x && enemiga9._y == es[i]._y) || (enemiga9._x + 4 == es[i]._x && enemiga9._y == es[i]._y) ||
- (ene2._x == es[i]._x && ene2._y - 1 == es[i]._y) || (ene2._x + 1 == es[i]._x && ene2._y - 1 == es[i]._y) ||
- (ene2._x + 2 == es[i]._x && ene2._y - 1 == es[i]._y) || (ene2._x + 3 == es[i]._x && ene2._y - 1 == es[i]._y) ||
- (ene2._x + 4 == es[i]._x && ene2._y - 1 == es[i]._y) || (ene2._x == es[i]._x && ene2._y == es[i]._y) || (ene2._x + 1 == es[i]._x && ene2._y == es[i]._y) ||
- (ene2._x + 2 == es[i]._x && ene2._y == es[i]._y) || (ene2._x + 3 == es[i]._x && ene2._y == es[i]._y) || (ene2._x + 4 == es[i]._x && ene2._y == es[i]._y) ||
- (ene1._x == es[i]._x && ene1._y - 1 == es[i]._y) || (ene1._x + 1 == es[i]._x && ene1._y - 1 == es[i]._y) ||
- (ene1._x + 2 == es[i]._x && ene1._y - 1 == es[i]._y) || (ene1._x + 3 == es[i]._x && ene1._y - 1 == es[i]._y) ||
- (ene1._x + 4 == es[i]._x && ene1._y - 1 == es[i]._y) || (ene1._x == es[i]._x && ene1._y == es[i]._y) || (ene1._x + 1 == es[i]._x && ene1._y == es[i]._y) ||
- (ene1._x + 2 == es[i]._x && ene1._y == es[i]._y) || (ene1._x + 3 == es[i]._x && ene1._y == es[i]._y) || (ene1._x + 4 == es[i]._x && ene1._y == es[i]._y) ||
- (ene3._x == es[i]._x && ene3._y - 1 == es[i]._y) || (ene3._x + 1 == es[i]._x && ene3._y - 1 == es[i]._y) ||
- (ene3._x + 2 == es[i]._x && ene3._y - 1 == es[i]._y) || (ene3._x + 3 == es[i]._x && ene3._y - 1 == es[i]._y) ||
- (ene3._x + 4 == es[i]._x && ene3._y - 1 == es[i]._y) || (ene3._x == es[i]._x && ene3._y == es[i]._y) || (ene3._x + 1 == es[i]._x && ene3._y == es[i]._y) ||
- (ene3._x + 2 == es[i]._x && ene3._y == es[i]._y) || (ene3._x + 3 == es[i]._x && ene3._y == es[i]._y) || (ene3._x + 4 == es[i]._x && ene3._y == es[i]._y) ||
- (ene4._x == es[i]._x && ene4._y - 1 == es[i]._y) || (ene4._x + 1 == es[i]._x && ene4._y - 1 == es[i]._y) ||
- (ene4._x + 2 == es[i]._x && ene4._y - 1 == es[i]._y) || (ene4._x + 3 == es[i]._x && ene4._y - 1 == es[i]._y) ||
- (ene4._x + 4 == es[i]._x && ene4._y - 1 == es[i]._y) || (ene4._x == es[i]._x && ene4._y == es[i]._y) || (ene4._x + 1 == es[i]._x && ene4._y == es[i]._y) ||
- (ene4._x + 2 == es[i]._x && ene4._y == es[i]._y) || (ene4._x + 3 == es[i]._x && ene4._y == es[i]._y) || (ene4._x + 4 == es[i]._x && ene4._y == es[i]._y) ||
- (ene5._x == es[i]._x && ene5._y - 1 == es[i]._y) || (ene5._x + 1 == es[i]._x && ene5._y - 1 == es[i]._y) ||
- (ene5._x + 2 == es[i]._x && ene5._y - 1 == es[i]._y) || (ene5._x + 3 == es[i]._x && ene5._y - 1 == es[i]._y) ||
- (ene5._x + 4 == es[i]._x && ene5._y - 1 == es[i]._y) || (ene5._x == es[i]._x && ene5._y == es[i]._y) || (ene5._x + 1 == es[i]._x && ene5._y == es[i]._y) ||
- (ene5._x + 2 == es[i]._x && ene5._y == es[i]._y) || (ene5._x + 3 == es[i]._x && ene5._y == es[i]._y) || (ene5._x + 4 == es[i]._x && ene5._y == es[i]._y) ||
- (ene6._x == es[i]._x && ene6._y - 1 == es[i]._y) || (ene6._x + 1 == es[i]._x && ene6._y - 1 == es[i]._y) ||
- (ene6._x + 2 == es[i]._x && ene6._y - 1 == es[i]._y) || (ene6._x + 3 == es[i]._x && ene6._y - 1 == es[i]._y) ||
- (ene6._x + 4 == es[i]._x && ene6._y - 1 == es[i]._y) || (ene6._x == es[i]._x && ene6._y == es[i]._y) || (ene6._x + 1 == es[i]._x && ene6._y == es[i]._y) ||
- (ene6._x + 2 == es[i]._x && ene6._y == es[i]._y) || (ene6._x + 3 == es[i]._x && ene6._y == es[i]._y) || (ene6._x + 4 == es[i]._x && ene6._y == es[i]._y) ||
- (ene7._x == es[i]._x && ene7._y - 1 == es[i]._y) || (ene7._x + 1 == es[i]._x && ene7._y - 1 == es[i]._y) ||
- (ene7._x + 2 == es[i]._x && ene7._y - 1 == es[i]._y) || (ene7._x + 3 == es[i]._x && ene7._y - 1 == es[i]._y) ||
- (ene7._x + 4 == es[i]._x && ene7._y - 1 == es[i]._y) || (ene7._x == es[i]._x && ene7._y == es[i]._y) || (ene7._x + 1 == es[i]._x && ene7._y == es[i]._y) ||
- (ene7._x + 2 == es[i]._x && ene7._y == es[i]._y) || (ene7._x + 3 == es[i]._x && ene7._y == es[i]._y) || (ene7._x + 4 == es[i]._x && ene7._y == es[i]._y) ||
- (ene8._x == es[i]._x && ene8._y - 1 == es[i]._y) || (ene8._x + 1 == es[i]._x && ene8._y - 1 == es[i]._y) ||
- (ene8._x + 2 == es[i]._x && ene8._y - 1 == es[i]._y) || (ene8._x + 3 == es[i]._x && ene8._y - 1 == es[i]._y) ||
- (ene8._x + 4 == es[i]._x && ene8._y - 1 == es[i]._y) || (ene8._x == es[i]._x && ene8._y == es[i]._y) || (ene8._x + 1 == es[i]._x && ene8._y == es[i]._y) ||
- (ene8._x + 2 == es[i]._x && ene8._y == es[i]._y) || (ene8._x + 3 == es[i]._x && ene8._y == es[i]._y) || (ene8._x + 4 == es[i]._x && ene8._y == es[i]._y) ||
- (ene9._x == es[i]._x && ene9._y - 1 == es[i]._y) || (ene9._x + 1 == es[i]._x && ene9._y - 1 == es[i]._y) ||
- (ene9._x + 2 == es[i]._x && ene9._y - 1 == es[i]._y) || (ene9._x + 3 == es[i]._x && ene9._y - 1 == es[i]._y) ||
- (ene9._x + 4 == es[i]._x && ene9._y - 1 == es[i]._y) || (ene9._x == es[i]._x && ene9._y == es[i]._y) || (ene9._x + 1 == es[i]._x && ene9._y == es[i]._y) ||
- (ene9._x + 2 == es[i]._x && ene9._y == es[i]._y) || (ene9._x + 3 == es[i]._x && ene9._y == es[i]._y) || (ene9._x + 4 == es[i]._x && ene9._y == es[i]._y) ||
- (ene10._x == es[i]._x && ene10._y - 1 == es[i]._y) || (ene10._x + 1 == es[i]._x && ene10._y - 1 == es[i]._y) ||
- (ene10._x + 2 == es[i]._x && ene10._y - 1 == es[i]._y) || (ene10._x + 3 == es[i]._x && ene10._y - 1 == es[i]._y) ||
- (ene10._x + 4 == es[i]._x && ene10._y - 1 == es[i]._y) || (ene10._x == es[i]._x && ene10._y == es[i]._y) || (ene10._x + 1 == es[i]._x && ene10._y == es[i]._y) ||
- (ene10._x + 2 == es[i]._x && ene10._y == es[i]._y) || (ene10._x + 3 == es[i]._x && ene10._y == es[i]._y) || (ene10._x + 4 == es[i]._x && ene10._y == es[i]._y) ||
- (e1._x == es[i]._x && e1._y - 1 == es[i]._y) || (e1._x + 1 == es[i]._x && e1._y - 1 == es[i]._y) ||
- (e1._x + 2 == es[i]._x && e1._y - 1 == es[i]._y) || (e1._x + 3 == es[i]._x && e1._y - 1 == es[i]._y) ||
- (e1._x + 4 == es[i]._x && e1._y - 1 == es[i]._y) || (e1._x == es[i]._x && e1._y == es[i]._y) || (e1._x + 1 == es[i]._x && e1._y == es[i]._y) ||
- (e1._x + 2 == es[i]._x && e1._y == es[i]._y) || (e1._x + 3 == es[i]._x && e1._y == es[i]._y) || (e1._x + 4 == es[i]._x && e1._y == es[i]._y) ||
- (e2._x == es[i]._x && e2._y - 1 == es[i]._y) || (e2._x + 1 == es[i]._x && e2._y - 1 == es[i]._y) ||
- (e2._x + 2 == es[i]._x && e2._y - 1 == es[i]._y) || (e2._x + 3 == es[i]._x && e2._y - 1 == es[i]._y) ||
- (e2._x + 4 == es[i]._x && e2._y - 1 == es[i]._y) || (e2._x == es[i]._x && e2._y == es[i]._y) || (e2._x + 1 == es[i]._x && e2._y == es[i]._y) ||
- (e2._x + 2 == es[i]._x && e2._y == es[i]._y) || (e2._x + 3 == es[i]._x && e2._y == es[i]._y) || (e2._x + 4 == es[i]._x && e2._y == es[i]._y) ||
- (e3._x == es[i]._x && e3._y - 1 == es[i]._y) || (e3._x + 1 == es[i]._x && e3._y - 1 == es[i]._y) ||
- (e3._x + 2 == es[i]._x && e3._y - 1 == es[i]._y) || (e3._x + 3 == es[i]._x && e3._y - 1 == es[i]._y) ||
- (e3._x + 4 == es[i]._x && e3._y - 1 == es[i]._y) || (e3._x == es[i]._x && e3._y == es[i]._y) || (e3._x + 1 == es[i]._x && e3._y == es[i]._y) ||
- (e3._x + 2 == es[i]._x && e3._y == es[i]._y) || (e3._x + 3 == es[i]._x && e3._y == es[i]._y) || (e3._x + 4 == es[i]._x && e3._y == es[i]._y) ||
- (e4._x == es[i]._x && e4._y - 1 == es[i]._y) || (e4._x + 1 == es[i]._x && e4._y - 1 == es[i]._y) ||
- (e4._x + 2 == es[i]._x && e4._y - 1 == es[i]._y) || (e4._x + 3 == es[i]._x && e4._y - 1 == es[i]._y) ||
- (e4._x + 4 == es[i]._x && e4._y - 1 == es[i]._y) || (e4._x == es[i]._x && e4._y == es[i]._y) || (e4._x + 1 == es[i]._x && e4._y == es[i]._y) ||
- (e4._x + 2 == es[i]._x && e4._y == es[i]._y) || (e4._x + 3 == es[i]._x && e4._y == es[i]._y) || (e4._x + 4 == es[i]._x && e4._y == es[i]._y) ||
- (e5._x == es[i]._x && e5._y - 1 == es[i]._y) || (e5._x + 1 == es[i]._x && e5._y - 1 == es[i]._y) ||
- (e5._x + 2 == es[i]._x && e5._y - 1 == es[i]._y) || (e5._x + 3 == es[i]._x && e5._y - 1 == es[i]._y) ||
- (e5._x + 4 == es[i]._x && e5._y - 1 == es[i]._y) || (e5._x == es[i]._x && e5._y == es[i]._y) || (e5._x + 1 == es[i]._x && e5._y == es[i]._y) ||
- (e5._x + 2 == es[i]._x && e5._y == es[i]._y) || (e5._x + 3 == es[i]._x && e5._y == es[i]._y) || (e5._x + 4 == es[i]._x && e5._y == es[i]._y) ||
- (e6._x == es[i]._x && e6._y - 1 == es[i]._y) || (e6._x + 1 == es[i]._x && e6._y - 1 == es[i]._y) ||
- (e6._x + 2 == es[i]._x && e6._y - 1 == es[i]._y) || (e6._x + 3 == es[i]._x && e6._y - 1 == es[i]._y) ||
- (e6._x + 4 == es[i]._x && e6._y - 1 == es[i]._y) || (e6._x == es[i]._x && e6._y == es[i]._y) || (e6._x + 1 == es[i]._x && e6._y == es[i]._y) ||
- (e6._x + 2 == es[i]._x && e6._y == es[i]._y) || (e6._x + 3 == es[i]._x && e6._y == es[i]._y) || (e6._x + 4 == es[i]._x && e6._y == es[i]._y) ||
- (e7._x == es[i]._x && e7._y - 1 == es[i]._y) || (e7._x + 1 == es[i]._x && e7._y - 1 == es[i]._y) ||
- (e7._x + 2 == es[i]._x && e7._y - 1 == es[i]._y) || (e7._x + 3 == es[i]._x && e7._y - 1 == es[i]._y) ||
- (e7._x + 4 == es[i]._x && e7._y - 1 == es[i]._y) || (e7._x == es[i]._x && e7._y == es[i]._y) || (e7._x + 1 == es[i]._x && e7._y == es[i]._y) ||
- (e7._x + 2 == es[i]._x && e7._y == es[i]._y) || (e7._x + 3 == es[i]._x && e7._y == es[i]._y) || (e7._x + 4 == es[i]._x && e7._y == es[i]._y) ||
- (e8._x == es[i]._x && e8._y - 1 == es[i]._y) || (e8._x + 1 == es[i]._x && e8._y - 1 == es[i]._y) ||
- (e8._x + 2 == es[i]._x && e8._y - 1 == es[i]._y) || (e8._x + 3 == es[i]._x && e8._y - 1 == es[i]._y) ||
- (e8._x + 4 == es[i]._x && e8._y - 1 == es[i]._y) || (e8._x == es[i]._x && e8._y == es[i]._y) || (e8._x + 1 == es[i]._x && e8._y == es[i]._y) ||
- (e8._x + 2 == es[i]._x && e8._y == es[i]._y) || (e8._x + 3 == es[i]._x && e8._y == es[i]._y) || (e8._x + 4 == es[i]._x && e8._y == es[i]._y) ||
- (e9._x == es[i]._x && e9._y - 1 == es[i]._y) || (e9._x + 1 == es[i]._x && e9._y - 1 == es[i]._y) ||
- (e9._x + 2 == es[i]._x && e9._y - 1 == es[i]._y) || (e9._x + 3 == es[i]._x && e9._y - 1 == es[i]._y) ||
- (e9._x + 4 == es[i]._x && e9._y - 1 == es[i]._y) || (e9._x == es[i]._x && e9._y == es[i]._y) || (e9._x + 1 == es[i]._x && e9._y == es[i]._y) ||
- (e9._x + 2 == es[i]._x && e9._y == es[i]._y) || (e9._x + 3 == es[i]._x && e9._y == es[i]._y) || (e9._x + 4 == es[i]._x && e9._y == es[i]._y) ||
- (e10._x == es[i]._x && e10._y - 1 == es[i]._y) || (e10._x + 1 == es[i]._x && e10._y - 1 == es[i]._y) ||
- (e10._x + 2 == es[i]._x && e10._y - 1 == es[i]._y) || (e10._x + 3 == es[i]._x && e10._y - 1 == es[i]._y) ||
- (e10._x + 4 == es[i]._x && e10._y - 1 == es[i]._y) || (e10._x == es[i]._x && e10._y == es[i]._y) || (e10._x + 1 == es[i]._x && e10._y == es[i]._y) ||
- (e10._x + 2 == es[i]._x && e10._y == es[i]._y) || (e10._x + 3 == es[i]._x && e10._y == es[i]._y) || (e10._x + 4 == es[i]._x && e10._y == es[i]._y))
- es[i].borrar();
- else
- es[i].animar();
- }
- if (kbhit()) {
- char tecla = getch();
- if (tecla == DISPARO) {
- balas[nBalasActual] = nave->disparar();
- municion--;
- nBalasActual++;
- }
- if (
- Direccion(tecla) == Direccion::Izquierda ||
- Direccion(tecla) == Direccion::Derecha) {
- nave->animar(Direccion(tecla));
- }
- if (tecla == 13) {
- Console::SetCursorPosition(LIMITE_ANCHO / 2 - 4, LIMITE_ALTO / 2);
- cout << "PAUSE";
- system("pause>0");
- Console::SetCursorPosition(LIMITE_ANCHO / 2 - 4, LIMITE_ALTO / 2);
- cout << " ";
- }
- }
- for (short i = 0; i < nBalasActual; ++i) {
- balas[i]->animar();
- }
- if (nave->_vidas == 0) {
- break;
- }
- if (tiempo == 0) {
- tiempo = 9500;
- nave->_vidas--;
- }
- if (score == 19200) {
- break;
- }
- _sleep(zzz);
- }
- delete[] es;
- if (municion == 0 || nave->_vidas == 0) {
- system("cls");
- Console::SetCursorPosition(LIMITE_ANCHO / 2, LIMITE_ALTO / 2);
- cout << "GAME OVER";
- Console::SetCursorPosition(LIMITE_ANCHO, LIMITE_ALTO);
- cin >> a;
- if (a == 1890) {
- system("cls");
- Console::SetCursorPosition(LIMITE_ANCHO / 2, LIMITE_ALTO / 2);
- cout << "You win";
- system("pause>0");
- }
- }
- if (score == 19200) {
- system("cls");
- Console::SetCursorPosition(LIMITE_ANCHO / 2, LIMITE_ALTO / 2);
- cout << "You win";
- system("pause>0");
- }
- }
- /*****************************************************************/
- int main() {
- srand(time(NULL));
- Console::CursorVisible = false;
- jugar();
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement