Sei sulla pagina 1di 8

Colegio de Educacin Profesional

Tcnica del Estado de Veracruz.


Alumno:
Manuel Alexis Hurtado Morales
Mdulo:
Programacin de Videojuegos.
Semestre:
6
Grupo:
604 Informtica
Matrcula:
111650246-7
Practica 5:
Elaborar juego evitando esperar al teclado, motos de luz.
Propsito:
Elabora una aplicacin de videojuego que evite esperar al teclado,
para evitar que la computadora quede "parada " esperando a que se
pulse una tecla y la accin prosiga aunque no se toque el teclado.
Direccin del blog:
http://programaciondevideojuegosalexis.blogspot.mx/
Introduccin: En esta prctica veremos cmo se realiza un recorrido de dos
motocicletas las cuales si alguna de las dos llega a colisionar nos muestra un
mensaje el juego de cual ha colisionado y nos saca del juego.
1.- Para la elaboracin de esta prctica lo primero que realice es:
Abrir Dev-Cpp
Damos clic en ARCHIVO
Seleccionamos el men NUEVO
Enseguida damos clic en PROYECTO

2. - Se abrira la siguiente ventana y seleccionamos el men siguiente:


Se declara nuestra librera para realizar nuestro video juego.
#include <allegro.h>
Se definen las posiciones de X e Y iniciales de nuestro videojuego.
#define POS_X_INI_1 150
#define POS_X_INI_2 170
#define POS_Y_INI_1 100
#define POS_Y_INI_2 100
#define INC_X_INI_1 -1
#define INC_X_INI_2 1
#define INC_Y_INI_1 0
#define INC_Y_INI_2 0
Pausamos nuestro video juego en milisegundos.
#define PAUSA 150
En este cdigo definimos las teclas a utilizar en una moto el videojuego. (Moto 1)
#define TEC_ARRIBA_1 KEY_E
#define TEC_ABAJO_1 KEY_X
#define TEC_IZQDA_1 KEY_S
#define TEC_DCHA_1 KEY_D
Se definen las teclas a utilizar en la moto nmero 2. (Utilizaremos las flechas
cursoras)
#define TEC_ARRIBA_2 KEY_8_PAD
#define TEC_ABAJO_2 KEY_2_PAD
#define TEC_IZQDA_2 KEY_4_PAD
#define TEC_DCHA_2 KEY_6_PAD

int posX1, posY1, posX2, posY2; //Posiciones Actuales.
int incX1, incY1, incX2, incY2; // Incremento de la posicin.
int futX1, futY1, futX2, futY2; //Futuras posiciones.
//Si la moto choca.
int chocado;
//La tecla que pulsamos.
int tecla;
//Iniciamos nuestro programa.
int main()
{
//Se inicializa allegro
allegro_init();
install_keyboard();
install_timer();
//Entramos a modo grafico
if (set_gfx_mode(GFX_SAFE,320,200,0,0)!=0){
set_gfx_mode(GFX_TEXT,0,0,0,0);
allegro_message("Incapaz de entrar a modo grafico\n%s\n",
allegro_error);
return 1;
}
//Dibujamos un rectngulo alrededor.
rect(screen,0,0,319,199, palette_color[9]);
//Declaramos valores iniciales.
posX1 = POS_X_INI_1;
posX2 = POS_X_INI_2;
posY1 = POS_Y_INI_1;
posY2 = POS_Y_INI_2;
incX1 = INC_X_INI_1;
incX2 = INC_X_INI_2;
incY1 = INC_Y_INI_1;
incY2 = INC_Y_INI_2;
do {
chocado = FALSE;
// Se comprueba si alguna moto choca.
futX1 = posX1 + incX1;
futX2 = posX2 + incX2;
futY1 = posY1 + incY1;
futY2 = posY2 + incY2;
//Si la moto 1 choca con un getpixel se muestra el mensaje La moto 1 ha
chocado
if (getpixel(screen, futX1, futY1)!=0){
textout(screen, font,"La moto 1 ha chocado!", 100,90, palette_color[7]);
chocado =TRUE;
}
//se hace el mismo procedimiento que el anterior (Si la moto 2 choca con un
getpixel se muestra el mensaje La moto 2 ha chocado)
if (getpixel(screen, futX2, futY2)!=0){
textout(screen, font,"La moto 2 ha chocado!", 100,110, palette_color[9]);
chocado = TRUE;
}
if (chocado)break;
//Si ninguna motocicleta choca entonces las motocicletas avanzan.
line (screen, posX1, posY1, futX1, futY1, palette_color[7]);
posX1 = futX1; posY1 = futY1;
line (screen, posX2, posY2, futX2, futY2, palette_color[9]);
posX2 = futX2; posY2 = futY2;
//Se comprueba si se pulsa alguna tecla se mueve alguna motocicleta.
if ( keypressed() ){
tecla = readkey() >>8;
switch(tecla){
case TEC_ARRIBA_1:
incX1 = 0; incY1 = -1;break;
case TEC_ABAJO_1:
incX1 = 0; incY1 = 1;break;
case TEC_IZQDA_1:
incX1 = -1; incY1 = 0;break;
case TEC_DCHA_1:
incX1 = 1; incY1 = 0;break;
case TEC_ARRIBA_2:
incX2 = 0; incY2 = -1;break;
case TEC_ABAJO_2:
incX2 = 0; incY2 = 1;break;
case TEC_IZQDA_2:
incX2 = -1; incY2 = 0;break;
case TEC_DCHA_2:
incX2 = 1; incY2 = 0;break;
}
}
//Se realiza una pequea pausa Antes se continuar.
rest ( PAUSA );
}
//y as se repite la funcin hasta que alguna de las motocicletas choque y se salga
del juego.
while (TRUE);
readkey();
return 0;
// Se termina nuestro programa.
}
END_OF_MAIN();






Compilacion de nuestro videoJuego:
Se muestra el recorrido de las motocicletas.

Cuando Choca la motocicleta nmero 1.

Cuando choca la motocicleta nmero 2.

Conclusin: Esta prctica tuvo cambios en cuanto a la velocidad de las
motocicletas y tambin los colores y unas cosas ms, aprend a como dirigirlas
con nmeros ya que es una sentencia diferente. Esta prctica se puede jugar con
2 personas, es una prctica que se podra decir origino a los juegos modernos,
que se juegan de dos o ms personas, se usan pixeles para mostrar pequeas
cosas como cuando se choca un pequeo pixel con otro.

Potrebbero piacerti anche

  • Práctica 10
    Práctica 10
    Documento14 pagine
    Práctica 10
    Alexis Hurtado
    Nessuna valutazione finora
  • Admón
    Admón
    Documento10 pagine
    Admón
    Alexis Hurtado
    Nessuna valutazione finora
  • Practica 11 Ramos
    Practica 11 Ramos
    Documento8 pagine
    Practica 11 Ramos
    Alexis Hurtado
    Nessuna valutazione finora
  • Práctica 12 POVI
    Práctica 12 POVI
    Documento9 pagine
    Práctica 12 POVI
    Alexis Hurtado
    Nessuna valutazione finora
  • Ramos Practica 11 C
    Ramos Practica 11 C
    Documento7 pagine
    Ramos Practica 11 C
    Alexis Hurtado
    Nessuna valutazione finora
  • Practica 5 Ramos
    Practica 5 Ramos
    Documento8 pagine
    Practica 5 Ramos
    Alexis Hurtado
    Nessuna valutazione finora
  • Práctica 10 POVI
    Práctica 10 POVI
    Documento5 pagine
    Práctica 10 POVI
    Alexis Hurtado
    Nessuna valutazione finora
  • Práctica 10 Punteria
    Práctica 10 Punteria
    Documento5 pagine
    Práctica 10 Punteria
    Alexis Hurtado
    Nessuna valutazione finora
  • Practica 12 MRDE
    Practica 12 MRDE
    Documento11 pagine
    Practica 12 MRDE
    Alexis Hurtado
    Nessuna valutazione finora
  • Práctica - 8 POVI
    Práctica - 8 POVI
    Documento12 pagine
    Práctica - 8 POVI
    Alexis Hurtado
    Nessuna valutazione finora
  • Práctica - 4 POVI
    Práctica - 4 POVI
    Documento9 pagine
    Práctica - 4 POVI
    Alexis Hurtado
    Nessuna valutazione finora
  • Práctica 12 Simón Dice
    Práctica 12 Simón Dice
    Documento9 pagine
    Práctica 12 Simón Dice
    Alexis Hurtado
    Nessuna valutazione finora
  • Práctica - 6 POVI
    Práctica - 6 POVI
    Documento7 pagine
    Práctica - 6 POVI
    Alexis Hurtado
    Nessuna valutazione finora
  • Práctica 7
    Práctica 7
    Documento10 pagine
    Práctica 7
    Alexis Hurtado
    Nessuna valutazione finora
  • Ramos Practica 11 C
    Ramos Practica 11 C
    Documento7 pagine
    Ramos Practica 11 C
    Alexis Hurtado
    Nessuna valutazione finora
  • Práctica 7
    Práctica 7
    Documento10 pagine
    Práctica 7
    Alexis Hurtado
    Nessuna valutazione finora
  • Práctica 8
    Práctica 8
    Documento12 pagine
    Práctica 8
    Alexis Hurtado
    Nessuna valutazione finora
  • Práctica 4
    Práctica 4
    Documento9 pagine
    Práctica 4
    Alexis Hurtado
    Nessuna valutazione finora
  • Práctica 6
    Práctica 6
    Documento7 pagine
    Práctica 6
    Alexis Hurtado
    Nessuna valutazione finora
  • Práctica 10
    Práctica 10
    Documento18 pagine
    Práctica 10
    Alexis Hurtado
    Nessuna valutazione finora
  • Practica 13 Ramos
    Practica 13 Ramos
    Documento12 pagine
    Practica 13 Ramos
    Alexis Hurtado
    Nessuna valutazione finora
  • Practica 5
    Practica 5
    Documento8 pagine
    Practica 5
    Alexis Hurtado
    Nessuna valutazione finora
  • Practica 11 Ramos
    Practica 11 Ramos
    Documento8 pagine
    Practica 11 Ramos
    Alexis Hurtado
    Nessuna valutazione finora
  • Práctica 12 Simón Dice
    Práctica 12 Simón Dice
    Documento8 pagine
    Práctica 12 Simón Dice
    Alexis Hurtado
    Nessuna valutazione finora
  • Proyecto MRDE
    Proyecto MRDE
    Documento31 pagine
    Proyecto MRDE
    Alexis Hurtado
    Nessuna valutazione finora
  • Practica 5 Ramos
    Practica 5 Ramos
    Documento8 pagine
    Practica 5 Ramos
    Alexis Hurtado
    Nessuna valutazione finora
  • Practica 15
    Practica 15
    Documento9 pagine
    Practica 15
    Alexis Hurtado
    Nessuna valutazione finora
  • Practica 14 Manejo de Redes
    Practica 14 Manejo de Redes
    Documento8 pagine
    Practica 14 Manejo de Redes
    Alexis Hurtado
    Nessuna valutazione finora
  • Practica 12 MRDE
    Practica 12 MRDE
    Documento11 pagine
    Practica 12 MRDE
    Alexis Hurtado
    Nessuna valutazione finora