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

[Allegro] Trzy pytania

Ostatnio zmodyfikowano 2009-01-03 15:21
Autor Wiadomość
Sajan
Temat założony przez niniejszego użytkownika
[Allegro] Trzy pytania
» 2009-01-03 13:59:53
1. Aby ustawić funkcję prawej strzałki piszę key([KEY_RIGHT]). Co zrobić aby napisać funkcję przytrzymania prawej strzałki?

2.Co zrobić aby podczas buforowania nie znikało tło(obrazek bmp)?

3.Jak ustawić granice ekranu, żeby obiekty nie wychodziły poza niego.

Czekam na odpowiedzi. Mogą być również linki.
Dzięki!
P-3305
DeBugger
» 2009-01-03 14:07:06
Odpowiedź na pierwsze pytanie, moja i kolegi: gamedev.
P-3307
lynx
» 2009-01-03 14:27:28
3. http://forum.ddt.pl/?Tid=406 do tematu gdzie było to już poruszane.

2. - nierozumiem
P-3309
Sajan
Temat założony przez niniejszego użytkownika
» 2009-01-03 14:36:02
W drugim chodzi o to że gdy podczas ruchu obiektu, buforuję to znika mi tło.
Dzięki za odpowiedź do trzeciego.
P-3310
smolu91
» 2009-01-03 14:40:39
Ad.1 ja bym to zrobil tak :

zadeklarowalbym x i y zeby postac zaczynala od pewnego miejsca np:
C/C++
int x = 100, y = 300;

nastepnie wziolbym sie za napisanie fukcji:
C/C++
int chodzenie()
{
    if( key[ KEY_RIGHT ] )
    { x += 30; // to jest x = x + 30; czyli idzie w prawo o 30
        clear_to_color( bufor, makecol( 150, 150, 150 ) ); // czysci bufor
        blit( ludek, bufor, 0, 0, x, y, ludek->w, ludek->h ); //rysuje ludka
        blit( bufor, screen, 0, 0, 0, 0, 640, 480 ); } //kopjuje bufor na screen
   
}

i to by bylo na tyle mi to jakos dziala... :) baw sie z tym
Jeszcze ci dodam ze musisz to chodzeni wstawic w funkcje nieskonczonosci
C/C++
while( !key[ KEY_ESC ] )
{
    chodzenie();
}
P-3311
smolu91
» 2009-01-03 14:51:51
Ad.2 Co do drugiego nie jestem pewien ale zeby tro nie znikalo to musisz zrobic tak :

C/C++
clear_to_color( bufor, makecol( 0, 0, 0 ) ); //czysci bufor i robi go na czarno
blit( tlo, bufor, 0, 0, 0, 0, tlo->w, tlo->h ); //tworzy tlo na buforze
//czyli tu musialbys zrobic blit( ludek, tlo, 0,0, x, y, ludek->w, ludek->h);
blit( bufor, screen, 0, 0, 0, 0, 640, 480 ); //kopjuje bufor na ekran :)
//jak chcesz zrobic ludka na tle to musisz go wyswietlic na tle tak sadze ale nie jestem pewien :)
P-3312
Sajan
Temat założony przez niniejszego użytkownika
» 2009-01-03 15:13:33
Co do drugiego to chyba mnie nie rozumiecie.
Więc wystarczy mi jak ktoś poda kod na to aby zamiast jednokolorowego tła można było wstawić swój obraz *.bmp ?
P-3317
smolu91
» 2009-01-03 15:16:34
wstaw se obrazek np jakis 600x400

C/C++
tlo = load_bmp( "tlo.bmp", default_palette ); //tak ladujesz obrazek
clear_to_color( bufor, makecol( 0, 0, 0 ) ); // czyszczenie buforu
blit( tlo, bufor, 0, 0, 0, 0, tlo->w, tlo->h );
 
P-3318
« 1 » 2
  Strona 1 z 2 Następna strona