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

[Allegro 4] Kolizja

Ostatnio zmodyfikowano 2012-08-24 14:45
Autor Wiadomość
RazzorFlame
» 2012-08-22 17:53:53
co do kolizji to jest algorytm easykodera. było juz duzo razy mówione że on jest zły. a co do problemu to nie sprawdzasz czy pocisk jeszcze jest aktywny... zrob sobie zmienna o nazwie "czyAktywny" o typie bool i jesli nastąpila kolizja to juz aktywny nie jest
P-63315
matiasz
Temat założony przez niniejszego użytkownika
» 2012-08-22 22:15:23
http://www8.zippyshare.com/v/53758861/file.html <<tu jest lik do całego kodu.

Nie wiem już siedzę 2h i męczę się i mi nie wychodzi :/ Więc jak ktoś ma chwilek i może zobaczyć do kodu niech zobaczy.
To z funkcją bool też mi nie wychodzi(wywaliłem to z kodu żeby nie mieszać).
P-63362
RazzorFlame
» 2012-08-22 22:22:17
matiasz chodzi o to ze dla KAŻDEGO pocisku musisz dodać 1 bool. i w sprawdzać powiedzmy tak:
if( jestkolizja(...) && czyAktywny[ i ] == true )...
I jesli nastąpiła ta kolizja to dodajesz punkty i ustawiasz czyAktywny na false zeby już sie nie naliczały te punkty
P-63363
matiasz
Temat założony przez niniejszego użytkownika
» 2012-08-23 23:03:49
To tak nie działa jak Ty piszesz ,albo mi po prostu nie wychodzi 0.o

bool pociskAktywny = true;
//...
if(Collision(bullets[i].x, bullets[i].y,bullets[i].w,bullets[i].h,obrazek_x,obrazek_y,obrazek->w,obrazek->h) && pociskAktywny == true)
                    {
                        punkty +=1;
                        pociskAktywny == false;
                    }

Co zrobiłem źle ? Bo zmiennej pocisk aktywny nie mogę zrobić jako tablicy ,bo mi wywala błąd.
P-63481
SeaMonster131
» 2012-08-24 14:31:18
== to porównanie
= to przypisanie.

C/C++
{
    punkty += 1;
    pociskAktywny == false; // ..
}
P-63533
matiasz
Temat założony przez niniejszego użytkownika
» 2012-08-24 14:45:06
Dzięki wielkie wszystkim!
Nie wiem czy jestem takim noobem czy to ta skleroza tak działa ,że zapominam co i jak. Najwidoczniej będę musiał jeszcze raz przeczytać Symfonie c++ :D
P-63535
1 « 2 »
Poprzednia strona Strona 2 z 2