Gedrawte sprites animieren, nur wie?

  • GM 8

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Gedrawte sprites animieren, nur wie?

    Hallöle :)

    ich will ein gedrawtes sprite (also im draw event) animieren.

    GML-Quellcode

    1. if mouse_x<self.x{draw_sprite_ext(spr_kirby_h_left,0,x,y,1,1,point_direction(x,y,mouse_x,mouse_y),c_white,1)}
    2. if mouse_x>self.x{draw_sprite_ext(spr_kirby_h_right,0,x,y,1,1,point_direction(x,y,mouse_x,mouse_y),c_white,1)}
    3. if right = 1 and left = 0 and walk = 1 and jump = 0 {draw_sprite_ext(spr_kirby_right_run,-1,x,y,1,1,0,c_white,1);}
    4. if right = 0 and left = 1 and walk = 1 and jump = 0 {draw_sprite_ext(spr_kirby_left_run,-1,x,y,1,1,0,c_white,1);}


    spr_kirby_h_right/left , ist der kopf mit händen, der immer ichtung maus schaut. die füsse sind ein eigenes object/sprite (spr_kirby_right/left_run).

    wenn bei subimage -1 steht, müsstes es doch animiert werden, oder muss ich das anders machen ?

    thx im voraus :thumbsup:
  • Einfach die -1 mit einem image_index ersetzen?

    GML-Quellcode

    1. draw_sprite_ext(spr_kirby_h_left,image_index,x,y,1,1,point_direction(x,y,mouse_x,mouse_y),c_white,1)

    Wenn der Kopf mit Händen nicht animiert ist, musst du dann den Kopf, wenn er der "Main Sprite" ist, auf die Menge der Images der Füße anpassen.

    Es gäbe aber auch eine etwas umständlichere Lösung
    Create Event:

    GML-Quellcode

    1. fuss_index=0//ersetzt den image_index
    2. fuss_index_last//die Nummer des letzten Images
    3. fuss_speed_last=2//legt fest, wann er zum nächsten Image wechseln soll
    4. fuss_speed=0//legt die Geschwindigkeit fest

    Step Event:

    GML-Quellcode

    1. if keyboard_check(vk_right)
    2. {
    3. x+=4
    4. fuss_speed+=1
    5. if fuss_speed=fuss_speed_last
    6. {
    7. fuss_index+=1
    8. if fuss_index>fuss_index_last{fuss_index=0}
    9. fuss_speed=0
    10. }
    11. }
    Alles anzeigen

    Draw Event

    GML-Quellcode

    1. draw_sprite_ext(spr_kirby_right_run,fuss_index,x,y,1,1,0,c_white,1);}


    Hab das zwar nicht getestet. Müsste aber mit Anpassungen das gleiche Ergebis erzielen.
    Meine Spiele:
    - Mission A
    - Mission B
    - The Virus 1, 2, 3
    - The Virus 4: The Excision
    - Blur melts Snow
    - Blur melts Snow: 2nd Version
    - Cave Jumper

    Hauptrojekt: Party Mania(Arbeitstitel) - große Multiplayer-Minispielsammlung
    In Planung: Planet Jumper(Nachfolger von Cave Jumper)