tolek Temat założony przez niniejszego użytkownika |
obrót sterowanej postaci w kierunku patrzenia » 2015-10-13 00:11:56 Witam, Jak w tytule, gdy sterują swoją postacią chciałbym żeby patrzyła ona w danym kierunku (tak jak w pacmanie) - gdy postać zmierza w prawo ma patrzeć w prawo, gdy w lewo ma obrócić się o 180 stopni, gdy w górę o 90 stopni, natomiast w dół o 270 stopni.Moja postać przypomina postać pacmana (z tym że jest kwadratowa, a nie okrągła oraz nie jest pokolorowana). #define PIXELS 8 void giant( int x, int y, int faza, int color ) { int face[ 3 ][ PIXELS * 2 ] = { { 0, 0, 50, 0, 50, 25, 30, 25, 50, 25, 50, 50, 0, 50, 0, 0 }, { 0, 0, 50, 0, 50, 22, 30, 25, 50, 27, 50, 50, 0, 50, 0, 0 }, { 0, 0, 50, 0, 50, 20, 30, 25, 50, 30, 50, 50, 0, 50, 0, 0 }, }; int p; int xo, yo, ro; xo = face[ faza ][ 2 ] * 0.8 + x; yo = face[ faza ][ 2 ] * 0.2 + y; ro = face[ faza ][ 2 ] * 0.1; for( p = 0; p < PIXELS; p++ ) { face[ faza ][ p * 2 ] = face[ faza ][ p * 2 ] + x; face[ faza ][ p * 2 + 1 ] = face[ faza ][ p * 2 + 1 ] + y; } setcolor( color ); drawpoly( PIXELS, face[ faza ] ); circle( xo, yo, ro ); } Sterowanie realizuje podana funkcja switch( kod ) { case LEFT: if( x >= 5 ) x = x - 5; break; case RIGHT: if( x < maxX - 50 - 5 ) x = x + 5; break; case BOTTOM: if( y < maxY - 50 - 5 ) y = y + 5; break; case UP: if( y >= 5 ) y = y - 5; break; } . Dodam, że mam zainstalowaną bibliotekę winBGIm i nie chciałbym instalować żadnej dodatkowej (no chyba, że nie ma innego wyjścia). Środowisko w jakim pracuje to CodeBlock. |
|
pekfos |
» 2015-10-13 16:06:11 A problem masz z..? |
|
tolek Temat założony przez niniejszego użytkownika |
» 2015-10-13 16:31:15 Ze sformułowaniem funkcji. Mógłbym zrobić cztery rysunki i w zależności od wciśnięcia przycisku wyskakiwałaby inna postać, jednak ja wolałbym mieć funkcję, która obracałaby obiekt :) |
|
pekfos |
» 2015-10-13 16:44:19 Obrót punktu dookoła innego jest prosty do osiągnięcia przy użyciu funkcji trygonometrycznych. Obróć wszystkie dookoła środka postaci. |
|
tolek Temat założony przez niniejszego użytkownika |
» 2015-10-13 17:18:27 Mógłbyś zarzucić kodem? Chociaż przykładowym, dopiero zaczynam przygodę z grami 2D ;) |
|
pekfos |
» 2015-10-13 17:51:23 To nie gry 2d, tylko matematyka. Z tym nie wypada dopiero zaczynać, szczególnie w programowaniu. |
|
tolek Temat założony przez niniejszego użytkownika |
» 2015-10-13 19:54:08 Napisałem post nie po to aby otrzymać gotowy kod, nie po to aby wymieniać się bezsensownie zdaniami i wymądrzać, tylko po to aby się czegoś nauczyć.Naprowadzisz mnie jak mam to zrobić? :) |
|
Gibas11 |
» 2015-10-13 20:04:40 |
|
« 1 » 2 |