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

[Allegro, c++] kolizja, naskok na przeszkodę i ma zniknąć.

Ostatnio zmodyfikowano 2011-11-20 10:58
Autor Wiadomość
RazzorFlame
Podam ci kod od gory
» 2011-11-20 10:58:54
Stworz sobie klase OBJECT tak jak ja:
C/C++
class OBJECT
{
public:
    int x; //pozycjax
    int y; //pozycjay
    int w; //szerokosc        
    int h; //wysokosc    
   
    int b; //wycinek z obrazka ( cos jak x )
    int c; //wycinek z obrazka ( cos jak y );
   
    BITMAP * bmp; //bitmapa obrazka mozna ja zaladowac np ludek.bmp = load_bmp...
   
};
I tu masz kolizje ale tylko od gory ( samemu mi sie przed chwila udało ;D )
C/C++
bool collide_up( OBJECT A, OBJECT B )
{
   
    if( A.y >= B.y - A.h - 1 && A.y < B.y + B.h && A.x + A.w >= B.x && A.x <= B.x + B.w ) return true;
    else return false;
   
}
Jesli jest kolizja zwraca true jesli nie zwraca false

Mozesz to tak zastosować:
C/C++
if( collide_up( ludek, background ) == true ) ludek.y = background.y - ludek.h - 1;

I bedzie wszystko OK. Pozdrawiam RazzorFlame!
P-44376
1 2 3 « 4 »
Poprzednia strona Strona 4 z 4