void CGame::MoverEnemigo(){ for (int i = 0; i < nivel[nivelActual].Enemigos_VisiblesAlMismoTiempo; i++) { if (enemigoArreglo[i]->GetNaveObjeto()->ObtenerPasoActual() == 0) if (!LimitePantalla(enemigoArreglo[i]->GetNaveObjeto(), BORDE_DERECHO)) enemigoArreglo[i]->GetNaveObjeto()->MoverLados(nivel[nivelActual].Enemigo_Velocidad);//Derecha else{ enemigoArreglo[i]->GetNaveObjeto()->IncrementarPasoActual(); }//fin else derecho if (enemigoArreglo[i]->GetNaveObjeto()->ObtenerPasoActual() == 1) if (!LimitePantalla(enemigoArreglo[i]->GetNaveObjeto(), BORDE_INFERIOR)) enemigoArreglo[i]->GetNaveObjeto()->MoverArribaAbajo(nivel[nivelActual].Enemigo_Velocidad);//Abajo else{ enemigoArreglo[i]->GetNaveObjeto()->IncrementarPasoActual(); }//Fn else inferior if (enemigoArreglo[i]->GetNaveObjeto()->ObtenerPasoActual() == 2) if (!LimitePantalla(enemigoArreglo[i]->GetNaveObjeto(), BORDE_IZQUIERDO)) enemigoArreglo[i]->GetNaveObjeto()->MoverLados(-nivel[nivelActual].Enemigo_Velocidad);//Izquierda else{ enemigoArreglo[i]->GetNaveObjeto()->IncrementarPasoActual(); }//fin else izquierda if (enemigoArreglo[i]->GetNaveObjeto()->ObtenerPasoActual() == 3) if (!LimitePantalla(enemigoArreglo[i]->GetNaveObjeto(), BORDE_SUPERIOR)) enemigoArreglo[i]->GetNaveObjeto()->MoverArribaAbajo(-nivel[nivelActual].Enemigo_Velocidad);//Arriba else{ enemigoArreglo[i]->GetNaveObjeto()->IncrementarPasoActual(); }//fin else arriba } }//Termina MoverEnemigo
void CGame::JugandoActualizar(){ keys = (Uint8 *)SDL_GetKeyboardState(NULL); for (int i = 0; i < nivel[nivelActual].Enemigos_VisiblesAlMismoTiempo; i++) { enemigoArreglo[i]->GetNaveObjeto()->Actualizar(); } MoverEnemigo(); if (keys[SDL_SCANCODE_UP]) { if (!LimitePantalla(nave->GetNaveObjeto(), BORDE_SUPERIOR)) nave->MoverArriba(nivel[nivelActual].Nave_Velocidad); } if (keys[SDL_SCANCODE_DOWN]) { if (!LimitePantalla(nave->GetNaveObjeto(), BORDE_INFERIOR)) nave->MoverAbajo(nivel[nivelActual].Nave_Velocidad); } if (keys[SDL_SCANCODE_LEFT]) { if (!LimitePantalla(nave->GetNaveObjeto(), BORDE_IZQUIERDO)) nave->MoverIzquierda(nivel[nivelActual].Nave_Velocidad); } if (keys[SDL_SCANCODE_RIGHT]) { if (!LimitePantalla(nave->GetNaveObjeto(), BORDE_DERECHO)) nave->MoverDerecha(nivel[nivelActual].Nave_Velocidad); } if (keys[SDL_SCANCODE_ESCAPE]) { estadoJuego = ESTADO_MENU; } if (keys[SDL_SCANCODE_SPACE]) { nave->Disparar(nivel[nivelActual].Nave_BalasMaximas); } if (keys[SDL_SCANCODE_C]){//nuestra bala / nave enemigo int enemigoAEliminar = rand() % nivel[nivelActual].Enemigos_VisiblesAlMismoTiempo; //enemigoArreglo[enemigoAEliminar]->simularColision(true); } if (keys[SDL_SCANCODE_V]){//nuestra nave / nave enemigo } }