práctica_6 povi

Upload: alexis-hurtado

Post on 03-Jun-2018

217 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/12/2019 prctica_6 POVI

    1/7

    Colegio De Educacio n Profesional

    Tecnica Del Estado De VeracruzUnidad de Aprendizaje 2:

    Diseo de videojuegos Nmero:

    Prctica 6:

    Crea juego Mini Serpiente 1 con uso de Mapas. Nmero:

    Propsito de la prctica:

    Elabora una aplicacin de videojuego con uso de Mapas para que unafigura avance por la pantalla; si choca con la pared exterior, con supropia "cola" o con algn otro obstculo, muere

    Mdulo: Programacin De Videojuegos [POVI-02]

    Grupo: 604 Informtica

    Alumno: Manuel Alexis Hurtado Morales

    P.S.P: Ing. Miguel ngel Ramos Grande

    Fecha: 19 de mayo de 2014

    Matricula: 111650246-7

    Comentarios: Observaciones:

    Direccin del blog:

    http://programaciondevideojuegosalexis.blogspot.mx/

    http://programaciondevideojuegosalexis.blogspot.mx/http://programaciondevideojuegosalexis.blogspot.mx/http://programaciondevideojuegosalexis.blogspot.mx/
  • 8/12/2019 prctica_6 POVI

    2/7

    PRACTICA #6 MINI SERPIENTE1.- 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:

    #include

    //Definiremos las posiciones iniciales de X y Y como se muestra a continuacin.

    #define POS_X_INI 16

    #define POS_Y_INI 10#define INC_X_INI 1

    #define INC_Y_INI 0

    Comentario [A1]: Inicializam

  • 8/12/2019 prctica_6 POVI

    3/7

    //Definiremos la pausa en milisegundos entre un fotograma y otro.

    #define PAUSA 350

    //Definiremos las teclas que sern usadas para mover al jugador.

    #define TEC_ARRIBA KEY_W

    #define TEC_ABAJO KEY_S

    #define TEC_IZQDA KEY_A

    #define TEC_DCHA KEY_D

    //Declararemos las variables de la posicin actual y el incremento de la posicin.

    int posX, posY;int incX, incY;

    //Declaramos la variable que vamos a pulsar para almacenar la Tecla pulsada.

    int tecla;

    //Definimos la escala entre el tamao de mapa y de la pantalla.

    #define ESCALA 10

    //Definimos en ancho y el alto de los Sprites.

    #define ANCHOSPRITE 10#define ALTOSPRITE 10

    //Disearemos nuestro Sprites usando un BITMAP y despus formaremos nuestrosprite.

    /* Nuestro sprites */

    BITMAP *jugador;

    typedef

    char tipoSprite[ANCHOSPRITE][ALTOSPRITE];

    /* El sprite en si: matriz de 30x30 bytes */

    tipoSprite spriteJugador =

    Comentario [A2]: Pausa de 3

    milisegundos

    Comentario [A3]: Se

    Mover hacia arriba con la tecla

    Comentario [A4]: Hacia aba

    tecla S

    Comentario [A5]: Hacia la iz

    con la tecla A

    Comentario [A6]: Y hacia la con la tecla D

  • 8/12/2019 prctica_6 POVI

    4/7

    {{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}

    };//Crearemos la rutina para crear los sprites.

    void creaSprites()

    {

    int i, j;

    jugador = create_bitmap(10, 10);

    clear_bitmap(jugador);

    for(i=0; i

  • 8/12/2019 prctica_6 POVI

    5/7

    }

    //Ahora crearemos el cuerpo del programa.

    int main()

    {

    allegro_init(); /* Inicializamos Allegro */

    install_keyboard(); /*Instalamos keyboard para hacer uso del teclado*/

    install_timer();

    //Intentamos entrar 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;

    }

    //Si todo va bien hasta aqu empezamos mandamos a llamar las funciones denuestros sprites y las del fondo de la pantalla.

    creaSprites();

    dibujaFondo();

    //Mandamos a llamar nuestros valores iniciales del jugador.

    posX = POS_X_INI;

    posY = POS_Y_INI;

    incX = INC_X_INI;

    incY = INC_Y_INI;

    //Esta es la parte en la que se repite.

    do {

    dibujaFondo();

  • 8/12/2019 prctica_6 POVI

    6/7

    draw_sprite (screen, jugador, posX*ESCALA, posY*ESCALA);

    //Hacemos la comprobacin de que si se ha pulsado alguna tecla.

    if ( keypressed() ) {

    tecla = readkey() >> 8;

    switch (tecla) {

    case TEC_ARRIBA:

    incX = 0; incY = -1; break;

    case TEC_ABAJO:

    incX = 0; incY = 1; break;case TEC_IZQDA:

    incX = -1; incY = 0; break;

    case TEC_DCHA:

    incX = 1; incY = 0; break;

    }

    }

    posX += incX;posY += incY;

    //Hacemos una pequea pausa antes de seguir.

    rest ( PAUSA );

    }

    while (TRUE); //En esta parte repetimos indefinidamente

    readkey();

    return 0;

    }

    //Terminamos nuestro programa

  • 8/12/2019 prctica_6 POVI

    7/7

    END_OF_MAIN();

    AL FINAL EL JUEGO QUEDO DE LA SIGUIENTE MANERA:

    En esta prctica realizamos el juego de una mini serpiente, este juego es muyconocido, utilizamos varias funciones, como lo son; if (si), else (sino), do (hacer),while (mientras), definimos teclas para manejar el juego y matrices, aprendimosque utilizando la lgica es cmo podemos elaborar juegos ms vistosos, porejemplo las matrices formadas dieron un enfoque ms visual, y la serpiente tiene

    una forma como ms vistosa no es una simple bolita.

    Aprendi a utilizar el matrices y reforc conocimientos.

    Se me dificulto el uso de matrices ya que es algo nuevo para mi.