void Controlador_game_over::loop(Input_base& input, float delta) { if(input.es_senal_salida() || input.es_input_down(Input::I_ESCAPE)) { abandonar_aplicacion(); } else { tiempo+=delta; alpha=(tiempo * 255) / 2.0f; if(alpha > 255) alpha=255; alpha_the_end=(tiempo * 255) / 5.0f; if(alpha_the_end > 255) alpha_the_end=255; rep_game_over.establecer_alpha(alpha); rep_the_end.establecer_alpha(alpha_the_end); if(input.hay_eventos_teclado_down() && alpha > 200) { solicitar_cambio_estado(Director_estados::t_estados::intro); } } }
void Controlador_juego::loop(Input_base& input, float delta) { if(input.es_senal_salida() || input.es_input_down(Input::I_ESCAPE)) { abandonar_aplicacion(); } else { contador_tiempo.turno(delta); Recogedor_input RI; Input_usuario iu=RI.recoger_input_usuario(input); if(iu.usar) { Logica_disparador lp(proyectiles_enemigos, jugador); lp.insertar_disparo_jugador(proyectiles_jugador); } procesar_jugador(jugador, delta, iu); //TODO TODO TODO... if(jugador.acc_salud() <= 0.0) { abandonar_aplicacion(); } //TODO TODO TODO... if(!contador_tiempo.es_tiempo_restante()) { abandonar_aplicacion(); } controlar_y_efectuar_salida_sala(jugador); logica_proyectiles(delta); logica_mundo(delta); } }