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

[allegro] -czyścił się ekran z napisów

Ostatnio zmodyfikowano 2009-05-31 19:31
Autor Wiadomość
klapaucius
Temat założony przez niniejszego użytkownika
[allegro] -czyścił się ekran z napisów
» 2009-05-31 18:01:27
Napisalem moj pierwszy programik z uzyciem biblioteki allegro. Oto następujący kod:
C/C++
#include <allegro.h>
int main()
{
    allegro_init();
    install_keyboard();
    set_color_depth( 32 );
    set_gfx_mode( GFX_AUTODETECT, 800, 600, 0, 0 );
    set_palette( default_palette );
    clear_to_color( screen, 32 );
    int x = 20;
    int y = 20;
    while( !key[ KEY_ESC ] ) {
        // jak w tym miejscu wstawic czyszczenie wszystkich napisow?
        textout_ex( screen, font, "x", x, y, makecol( 255, 0, 255 ), - 1 );
        char ruch = readkey();
        if( key[ KEY_A ] )
        {
            x = x - 10;
        }
        if( key[ KEY_D ] )
        {
            x = x + 10;
        }
        if( key[ KEY_W ] )
        {
            y = y - 10;
        }
        if( key[ KEY_S ] )
        {
            y = y + 10;
        }
       
    }
   
    readkey();
   
    allegro_exit();
    return 0;
}
END_OF_MAIN();

Moje pytanie brzmi jak zrobic, żeby (w tym miejscu które pokazalem) czyścił się ekran z napisów. W samym c++ jest funckja system("pause") , ale czy w allegro jest cos takiego? Bo jak na razie w grze zamiast "chodzacego" po ekranie punkcika robi mi się "wężyk" :) Prosze o odpowiedz. Z gory dziekuje!
P-7313
DejaVu
» 2009-05-31 18:35:39
clear_to_color( screen, 32 );
P-7314
driver1995
» 2009-05-31 18:47:54
No i koniec tematu, ale ja jeszcze mam małą uwagę: char ruch = readkey();  to jest zbędne...

A zamiast x = x + 10 można napisać x+=10 , ale to już twoja sprawa jak piszesz, to tylko takie małe uproszczenie...
P-7316
klapaucius
Temat założony przez niniejszego użytkownika
» 2009-05-31 19:31:05
Dzieki Piotr, dziala :)

@Driver
Faktycznie ta funckja readkey niepotrzebna, natomiast jesli chodzi o "x += 10" to zazwyczaj tez tak pisze, tylko akurat tutaj dla odmiany tak napisalem:)

Te bledy to pewnie dlatego, ze biblioteke allegro znam od niecalych trzech godzin dopiero ;] Jak czegos nie bede wiedzial to jeszcze bede tutaj pytal. Na razie dzieki wielkie
P-7323
« 1 »
  Strona 1 z 1