[Allegro 5] Kolizja obrazków
Ostatnio zmodyfikowano 2012-06-11 14:59
Temes Temat założony przez niniejszego użytkownika |
[Allegro 5] Kolizja obrazków » 2012-05-18 18:56:09 Witam, mam 2 pytania dotyczące kolizji "obrazków", czyli co ma się dziać jeżeli jeden obrazek dotknie innego. a_10_d |........| |........| 10 b____c a = 0x,0y b = 0x,10y c = 10x,10y d = 10x,0y To współrzędne przeciwnika, gracz jest taki sam, ale ma inne współrzędne. 1.Czy istnieje kod, który robi coś jeżeli dwa obrazki się zetkną? Coś jak if(1 obrazek dotknie 2 obrazek), czy muszę męczyć się z obliczeniami i pisać jezeli bok |AB| przeciwnika jest równy... I tak dla wszystkich boków? Moim zamierzeniem jest, jeżeli gracz dotknie przeciwnika to przeciwnik ginie. 2.To wszystko będzie dla jednego przeciwnika i jednego gracza... A jeżeli: int PRZECIWNIK[ 50 ]; int GRACZ[ 1 ]; Jak to zrobić, aby ta "kolizja" była dla każdego taka sama, ale z innymi współrzędnymi? |
|
szyx_yankez |
» 2012-05-18 19:11:09 1. Oczywiście są funkcje odpowiedzialne za wykrywanie kolizji na forum przewijało się to dziesiątki razy, poszukaj.
2. Stwórz sobie klasę opisującą przeciwnika i potem w pętli sprawdzasz:
class CEnemy { int x; int y; }
CEnemy Enemy[ 50 ]
for( int i = 0; i < 50; i++ ) { if( IsCollision( Player, Enemy[ i ] ) ) { } }
|
|
Temes Temat założony przez niniejszego użytkownika |
» 2012-06-07 12:49:00 Moim zamierzeniem jest takie coś: Gdy myszka najedzie na obrazek to on się podświetla... Jasne mam obrazek zwykły i obrazek podświetlony jako bitmapy, ale jak zrobić kolizję myszki z obrazkiem?
Oczywiście mógłbym z if'em: if x >= x <= y >= y <= ale to wtedy liczone jest jako kwadrat... A co jeżeli mam obrazek w kształcie trójkąta (jest trojkąt a reszta jest przeźroczysta - robiony obrazek w GIMPIE) i chce aby obrazek podświetlał się tylko wtedy gdy myszka najedzie na trójkąt widoczny, a nie na tło przeroczyste...
Może ktoś mi pomóc? |
|
waxx |
» 2012-06-11 14:59:37 http://www.blackpawn.com/texts/pointinpoly/default.html Tu masz fajny tekst, a na przyszlosc to google :> No i nikt nie kaze ci wrzucac wszedzie wielgachnych ifow - przeciez mozna sobie ulatwic zycie i wyciagnac wykrywanie kolizji do jakichs funkcji? |
|
« 1 » |