Intento de realizar un juego

Iniciado por Blaster, 7 Octubre 2012, 15:09 PM

0 Miembros y 1 Visitante están viendo este tema.

Blaster

 Comparto con ustedes este codigo para quien le pueda servir,
lo hice en mis tiempos libres y salio esto ;)

#include <iostream>
#include <conio.h>
#include <windows.h>

#define ARRIBA 72
#define IZQUIERDA 75
#define DERECHA 77
#define ABAJO 80
#define ESC 27

using namespace std;

void mover_izquierda();
void mover_derecha();

void juego();

char izquierda1[]={' ','0',' ',0};
char izquierda2[]={'0','0','0',0};
char izquierda3[]={'0',' ','0',0};

char derecha1[]={' ','0',' ',0};
char derecha2[]={'0','0','0',0};
char derecha3[]={'0',' ','0',0};

char tecla;
int x = 0, y = 0;

void gotoxy(int x,int y)
{
   HANDLE hCon;
   COORD dwPos;
   
   dwPos.X = x;
   dwPos.Y = y;
   hCon = GetStdHandle(STD_OUTPUT_HANDLE);
   SetConsoleCursorPosition(hCon,dwPos);
}
void juego() {
   x=37;
   y=20;
   do {
      tecla = getch();
      if (tecla == IZQUIERDA || tecla == DERECHA) {
         if (tecla == IZQUIERDA)
          mover_izquierda();
         if (tecla == DERECHA)
          mover_derecha();
       }    
   }while(1);
   cin.get();
}
void mover_izquierda() {
    if (x>=3) {
       x-=3;
       system("cls");
    }
    gotoxy(x,y); puts(izquierda1);
    gotoxy(x,y+1); puts(izquierda2);
    gotoxy(x,y+2); puts(izquierda3);
    gotoxy(0,0);
}
void mover_derecha() {
    if (x<75) {
       x+=3;
       system("cls");
    }
    gotoxy(x,y); puts(derecha1);
    gotoxy(x,y+1); puts(derecha2);
    gotoxy(x,y+2); puts(derecha3);
    gotoxy(0,0);
}
int main() {
   printf("\n\n\t\t\t SPACE INVADERS \n");
   printf("\n\n\n\t\tPRESIONA LAS TECLA <- O -> PARA INICIAR:");
   
   gotoxy(0,0);
   int menu = getch();
   juego();
   
   return 0;
}