Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

readkey / al_readkey w allegro 5

Ostatnio zmodyfikowano 2012-12-16 13:49
Autor Wiadomość
McAffey
Temat założony przez niniejszego użytkownika
readkey / al_readkey w allegro 5
» 2012-12-16 01:33:19
Wertuję dokumentację allegro 5, i nie mogę znaleźć niczego działającego jak readkey w allegro 4, więc wnioskuję że Twórcy nic takiego jeszcze nie przygotowali, ale postanowiłem się jeszcze tutaj upewnić.

Jest w allegro5 jakaś funkcja zwracająca ostatni wciśnięty znak, czy jak chcę wpisywać w grze napis z klawiatury to muszę jakimś pętlami sprawdzać po kolei każdy wciśnięty klawisz ?
P-71154
SeaMonster131
» 2012-12-16 11:48:35
http://alleg.sourceforge.net/a5docs/refman/events.html#allegro_event_key_down
Czyli, zobacz:
ALLEGRO_EVENT_KEY_DOWN / _UP
ALLEGRO_EVENT_KEY_CHAR
To będzie prawdopodobnie któryś z tych.
P-71166
Gabes
» 2012-12-16 12:06:46
keyboard.unichar (int)
keyboard.keycode (int)
keyboard.modifiers (unsigned)
keyboard.repeat (bool)

odczyt konkretnego klawisza.

C/C++
#include <allegro5/allegro.h>
#include <allegro5/allegro_font.h>
bool koniec = false; int kod = 0;
int main()
{
    al_init();
    al_install_keyboard();
    al_init_font_addon();
    ALLEGRO_DISPLAY * okno = al_create_display( 800, 600 );
    ALLEGRO_FONT * font8 = al_create_builtin_font();
    ALLEGRO_EVENT_QUEUE * event_queue = al_create_event_queue();
    al_register_event_source( event_queue, al_get_display_event_source( okno ) );
    al_register_event_source( event_queue, al_get_keyboard_event_source() );
    ALLEGRO_EVENT ev;
    while( !koniec )
    {
        al_get_next_event( event_queue, & ev );
        if( ev.type == ALLEGRO_EVENT_DISPLAY_CLOSE ) { return 0; }
        kod = ev.keyboard.unichar;
        if( kod == 27 ) //Esc
             koniec = true;
       
        al_clear_to_color( al_map_rgb( 128, 120, 128 ) );
        al_draw_textf( font8, al_map_rgb( 250, 250, 250 ), 5, 5, 0, "znak %c , kod %i", kod, kod );
        al_flip_display();
    }
    al_destroy_display( okno );
    al_destroy_event_queue( event_queue );
    return 0;
}
P-71169
McAffey
Temat założony przez niniejszego użytkownika
» 2012-12-16 13:49:28
Dzięki wielkie Gabes moje każde pytanie związane z allegro 5, utwierdza mnie w przekonaniu, że nikt na forum tak dobrze jak Ty allegro nie zna :)
P-71178
« 1 »
  Strona 1 z 1