You are on page 1of 5

COLEGIO DE EDUCACION PROFESIONAL TECNICA DEL ESTADO

DEVERACRUZ
LIC. JESUS REYES HEROLES


ALUMNO: ngel Martnez Hernndez

COMPAERA DE EQUIPO: Emma Graciela Santos Blanco

GRUPO: 604

Practica: 10

MATRICULA: 111650026-3

CARERRA: P.T.B. en Informtica

PRACTICA 10: Crear juego usando funciones del mouse

MODULO: Programacin de videojuegos

DOCENTE: Miguel ngel Ramos Grande


PROPSITO: Elabora una aplicacin de videojuego que use
funciones del mouse para comprobar si se ha hecho un doble clic
o cambiar la forma del puntero, o leer la posicin de la rueda, o
limitar el movimiento a ciertas zonas de pantalla.
INTRODUCCION:
En esta prctica vamos a vamos a elaborar una aplicacin para videojuego usando
funciones del mouse como leer la posicin de la rueda o el puntero mediante la
asignacin de variables.
DESARROLLO:
Este es el cdigo que la practica:
Le cambiamos algunas cosas, como los colores de los textos, cambiamos comentarios y
algunas variables y quedo de la siguiente manera:
#include <stdlib.h> /* Para "rand" */
#include <allegro.h>
#include <stdio.h>
/*Declaramos las variables que vamos a utilizar...*/
int main()
{
#define ANCHOPANTALLA 320
#define ALTOPANTALLA 200
#define MAXLADODIANA 50
int
Xraton = 160,
Yraton = 100,
Xcuadro,
Ycuadro,
ladocuadro,
puntos = 0,
dibujarcuadro = 1;
/*Inicializamos Allegro...*/
allegro_init();
install_keyboard();
install_timer();
install_mouse();

/* Intentamos entrar a modo grafico */
if (set_gfx_mode(GFX_SAFE, ANCHOPANTALLA, ALTOPANTALLA, 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;
}
/* Si todo ha ido bien: empezamos */
srand(time(0));
show_mouse(screen);
/* Parte repetitiva: */
Do {
rest(50); /*Pausa de 50 ms */
if (dibujarcuadro) {
/*Calculo nueva posicion de la diana */
Xcuadro = rand() % (ANCHOPANTALLA - ladocuadro);
Ycuadro = rand() % (ALTOPANTALLA - ladocuadro);
ladocuadro = (rand() % MAXLADODIANA) + 2;
/* Oculto raton y redibujo */
scare_mouse();
clear_bitmap(screen);
rectfill(screen, Xcuadro, Ycuadro, Xcuadro+ladocuadro, Ycuadro+ladocuadro, palette_color[10]);
textprintf(screen, font, 10,20, palette_color[16], "Puntos: %d", puntos);
/*Vuelvo a mostrar raton y marco como dibujado */
unscare_mouse(); dibujarcuadro = 0;
}
// Si se pulsa el botn, compruebo si es dentro del recuadro.
// Si es as, aumento puntos. En cualquier caso,dibujo nueva diana
if (mouse_b & 1) {
if ((mouse_x >= Xcuadro) && (mouse_x <= Xcuadro+ladocuadro) && (mouse_y >= Ycuadro) && (mouse_y <=
Ycuadro+ladocuadro))
{
puntos ++;
}
dibujarcuadro = 1;
}
}
while ( !keypressed() );
/* Repetimos hasta pulsar cualquier tecla */
/*Haciendo que salgamos inmediatamente del juego*/
return 0;
}
/* Se termina el programa */
Ejecutamos el programa con F9 y nos mandara la pantalla ejecutable como aparece en
la siguiente imagen.





El juego tratara de lo siguiente, se dibujara un recuadro en la pantalla con posicin y
medidas al azar, despus se comprueba al dar clic al ratn, si se pulsa el ratn dentro
del recuadro se da un punto al jugador. Aunque se d clic en cualquier lado el
recuadro se dibuja en cualquier otro lado de la pantalla. Esto termina hasta que se
pulsa una tecla.



CONCLUSIN:
En esta prctica aprendimos a manejar el ratn en dado caso de que el teclado no
funcionara, corregimos algunos errores del cdigo analizndolos y verificando valores
asignados en las variables.

You might also like