Snake i rysowanie według kratek
Ostatnio zmodyfikowano 2012-02-23 22:11
bingo009 Temat założony przez niniejszego użytkownika |
Snake i rysowanie według kratek » 2012-02-23 21:55:25 Przebudowałem swoje Snake i teraz mam problem z obliczeniami. Otóż tym razem Snake i jabłko to kwadraty. Okno gry to 640x480. Otóż podzieliłem cały obszar gry na siatkę. Odjąłem 10 piskeli i wyszło mi 630x470. Mój kwadrat Snake ma wielkość 10 pikseli. Więc otrzymałem obszar gry o wielkości 63x47. Mój Snake porusza się ruchem skokowym. Pozycje Snake, podaję w kratkach. I teraz mam problem. Po uruchomieniu gry, Snake na chwile pojawia się na środku, a potem znika. Zapewne coś skopałem w obliczeniach, więc proszę was o pomoc:
if( kierunek == E_UP ) player_y -= 1;
if( kierunek == E_DOWN ) player_y += 1;
if( kierunek == E_RIGHT ) player_x += 1;
if( kierunek == E_LEFT ) player_x -= 1;
al_clear_to_color( al_map_rgb( 0, 0, 0 ) ); player_x *= 10; player_y *= 10; al_draw_filled_rectangle( player_x - 5, player_y - 5, player_x + 10, player_y + 10, al_map_rgb( 28, 223, 0 ) );
Problem polega na tym, że Snake pokazuje się, a potem znika. |
|
pekfos |
» 2012-02-23 21:57:15 player_x *= 10; 1, 10, 100, 1000, 10000, .. ale szybki! |
|
hincu |
» 2012-02-23 22:00:21 trafna uwaga pekfos wlasnie mialem o tym pisac XD |
|
bingo009 Temat założony przez niniejszego użytkownika |
» 2012-02-23 22:11:37 Ale walnalem blad. Sorki za ten bezsensowny temat, jutro to poprawie, bo teraz siedze na fonie. Teraz działa dobrze, ale mam inny problem. Snake teraz porusza się normalnie, ale nie według kratek. Zmieniłem deklarację zmiennych na tą: int player_x = 30 * 10, player_y = 23 * 10;
Za każdym ruchem zwiększam wartość player_x lub player_y o 1. Co teraz znowu jest nie tak? Edit: Już naprawione, dzięki za pomoc. |
|
« 1 » |