Propsito de la prctica Elabora una aplicacin de videojuego con figuras multicolor usando lenguaje de programacin para que las figuras se muevan
PRACTICA 7
Propsito de la prctica:
Elabora una aplicacin de videojuego con figuras multicolor usando lenguaje de programacin para que las figuras se muevan
Este videojuego se trata de manejar una bola que al momento de que nosotros la estemos manejando y valla comiendo manzanas sin topar los muros. En este juego utilizamos la librera allegro
Aqu se empieza a formar lo que es nuestro diseo del campo de juego. Si unas de las x estn fuera de lnea nos marca error, todas la las x deben estar en la misma lnea. Tu puedes ponerlas en el lugar que quieres y cuantas quieras. Tambin estn puestas unas frutas que en el cdigo la representa una F.
char mapa[MAXFILAS][MAXCOLS]={ "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX", "X X X", "X F X X", "X F X F X", "X XXXXX X X", "X X X X", "X X X X X", "X X X X XXXX", "X X X X", "X XXXX X X", "X X X X", "X F X X", "X X X", "X X F X", "X X X X", "X X X X", "X X F X X", "X F X X X", "X X F X", "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" };
tipoSprite spriteJugador = {{0,0,3,3,3,3,3,0,0,0}, {0,3,1,1,1,1,1,3,0,0}, {3,1,1,1,1,1,1,1,3,0}, {3,1,1,1,1,1,1,1,3,0}, {3,1,1,1,1,1,1,1,3,0}, {3,1,1,1,1,1,1,1,3,0}, {0,3,1,1,1,1,1,3,0,0}, {0,0,3,3,3,3,3,0,0,0} }; void creaSprites() { int i, j; Aqu le podemos cambiar la imagen al juego. Para cambiar solo tienes que ir combinando nmeros.
ladrilloFondo = create_bitmap(10, 10); clear_bitmap(ladrilloFondo); for(i=0; i<ANCHOSPRITE; i++) for (j=0; j<ALTOSPRITE; j++) putpixel(ladrilloFondo, i, j, palette_color[ spriteLadrillo[j][i] ]);
Al igual aqu si deseas cambiar la forma de la fruta comida = create_bitmap(10, 10); clear_bitmap(comida); for(i=0; i<ANCHOSPRITE; i++) for (j=0; j<ALTOSPRITE; j++) putpixel(comida, i, j, palette_color[ spriteComida[j][i] ]);
Por ultimo en el jugador tambin lo puedes cambiar deforma si deseas. jugador = create_bitmap(10, 10); clear_bitmap(jugador); for(i=0; i<ANCHOSPRITE; i++) for (j=0; j<ALTOSPRITE; j++) putpixel(jugador, i, j, palette_color[ spriteJugador[j][i] ]); } void dibujaFondo() { int i, j; clear_bitmap(screen); for(i=0; i<MAXCOLS; i++) for (j=0; j<MAXFILAS; j++) { if (mapa[j][i] == 'X') draw_sprite(screen, ladrilloFondo, i*ESCALA, j*ESCALA); if (mapa[j][i] == 'F') draw_sprite(screen, comida, i*ESCALA, j*ESCALA); } } int main() {
allegro_init(); install_keyboard(); install_timer(); 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; } creaSprites(); dibujaFondo();