Leer por teclado en allegro

Iniciado por Calvin11, 31 Octubre 2016, 03:24 AM

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

Calvin11

Quisiera saber como leer por teclado en allegro. Estoy haciendo un juego de trivia y necesito ingresar el nombre del jugador pero no hay forma de que me salga.
Esto es lo que encontre pero no funciona:
Código (cpp) [Seleccionar]

char* recibir_cadena(int x,int y,int color, int max)
{
char lt
do
{
lt=readkey();
if( lt>='a' && lt<='z')
{
textprintf(screen,font,x+12*i,y,color,"%c",lt);
cadena[i]=lt;
cadena[i+1]='\0';
i++;
}
}while( lt!=13 && i<max );
return cadena;
}

Pero no entiendo como aplicarlo en este pedazo de codigo del juego:
Código (cpp) [Seleccionar]

void nombre(){
     int band1=0,x,y,color,maxi=40;
     char letra, letras [80], nom [40];
     BITMAP *buffer = create_bitmap(800,480);
     BITMAP *nombre1 = load_bitmap("NOMBRE1.bmp",NULL);
     BITMAP *nombre2 = load_bitmap("NOMBRE2.bmp",NULL);
     BITMAP *cursor = load_bitmap("cursor.bmp",NULL);
     while(band1!=1){
          //Esto es para cuando el cursor apunte en el NOMBRE2.bmp
          if(mouse_x > 20 && mouse_x < 70 && mouse_y > 30 && mouse_y < 70){
               blit(nombre2,buffer,0,0,0,0,800,480);
               if(mouse_b & 1){
                    band1=1;
               }
          }
          else{
               //Esto es para cuando el cursor apunte en el NOMBRE1.bmp
               blit(nombre1,buffer,0,0,0,0,800,480);
          }


          //Esto es para que aparezca el mouse en pantalla en cualquiera de las situaciones de NOMBRE
          masked_blit(cursor,buffer,0,0,mouse_x,mouse_y,32,32);
          blit(buffer,screen,0,0,0,0,800,480);
     }

}