Skocz do zawartości

Rekomendowane odpowiedzi

Opublikowano

jak zrobić taki obracający się w kursor jak w Worms 3D?

czyli jak jadę nim w górę to się obraca w górę jak w lewo to w lewo itd.

proszę o pomoc (<żeby się nie czepiali że nie poprosiłem <_< )

Opublikowano

GML
step:

if ( keyboard_check( vk_up )) dir_ += 1

else

if ( keyboard_check( vk_down )) dir -= 1

 

draw:

 

xx = lengthdir_x( 50 , dir_ )

yy = lengthdir_y( 50 , dir_ )

 

draw_sprite( spr_celownik , -1 , x + xx , y + yy )

 

oczywiście create: dir_ = 0

Opublikowano

@Marek.S - nie wydaje mi sie zemu chodzilo zeby kursorem sterowac za pomoca strzalek :/

@zalu - ja bym zrbil animacje w 8 kierunkach i zrobil aby sprawdzalo w ktora strone i dzie kursor, i na przyklad przejscie ze niby idzie w tym kierunku, jesli chcesz to zrobic za pomoca 1 sprita to to jest bardziej zaawansowane pytanie.

P.S.

Off top - ale sie rozpisalem!!!

Opublikowano

nie wiem może coś z direction?

UP

próbowałem tak ale kod chyba źle zapisałem albo nie działa

UPUP

no właśnie nie kieruje kursorem za pomocą strzałek

Opublikowano

no to samo jak w zwykłych tylko zamiast klawiszy przesuwanie no że jak jest obrócony kursor w lewo i jedzie do góry to w tedy obraca się i jest ustawiony do góry

Opublikowano

musisz sprawdzic za pomoca y i z w jakim kirunku idzie kursor i sprobowac image direction, tyle ze wtedy nie bedzie plynnych przejsc ;( probuje ;) zainteresowalo mnie to o czym mowisz, tez chce taki kursor miec

P.S.

Wujek google nie ma nic do powiedzenia ;/

Opublikowano

@gnysek - heh, a w jakies grales?

chodzi o to ze jak jedziesz kursorem w dol, kursor plynnie zmienia zwoj kierunek i i pokazuje w dol, czyli jak na przyklad nie przejedziesz wystarczajaco dlugo to sie zatrzyma pokazujac w prawo (czy tam lewo)

comprendre?

Opublikowano

Taaa...

Rotfl time!!!111

x=mouse_x-cos(degtorad(samochod.direction))*11 
y=mouse_y+sin(degtorad(samochod.direction))*11 
if !(x=xprevious && y=yprevious)
image_angle=point_direction(xprevious-cos(degtorad(image_angle))*52,yprevious+sin(degtorad(image_angle))*52,x,y)

Bardzo straszny algorytm...

Tam gdzie masz 52, daj długość tego kursora :)

Opublikowano

omg xD

Przyznaje się do głupiego zerżnięcia z przykładu xD

Znaczy to jest z przykładu :P

x=mouse_x
y=mouse_y
if !(x=xprevious && y=yprevious)
image_angle=point_direction(xprevious-cos(degtorad(image_angle))*52,yprevious+sin(degtorad(image_angle))*52,x,y)

tak powinno być :P

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się
  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...