Sprite- animation Problem

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

  • Sprite- animation Problem

    nun es ist peinlich das zu Fragen, doch da gibt es ein Problem mit einer Animation...

    ich habe e3in Obj Player. Nun, wenn man nach rechts geht, dann soll er das Sprite ändern. (Eine 4 Bidler animation.) Der Room in den sic hdas Objekt befindet hat die Speed 30.

    Tja. Ich habe die Subimage des Sptrites auf o gesetzt und die Speed des Sprites auf 12. Doch sie funktioniert nciht! Dauernd wird das Subimage 0 gezeigt. Wenn ich die Speed allerdings auf 13 stelle, funktioniert es zwar, doch es wrid mit der Spped des Rooms abgespielt. (30.)

    kannm ir da jemand helfen? Die GM Hilfe hat nciths gebracht...
  • Ich versteh nicht ganz, warum du den speed der Animation auf so einen hohen Wert stellst... 8|
    image_speed definiert nämlich, wie viele Subimages pro Step abgespielt werden, nicht etwa pro Sekunde. Der Stadartwert für image_speed ist also 1.

    Und das ständige Anzeigen des ersten Subimage lässt sich folgendermaßen begründen:
    4 subimages, speed 12 -> 12/4 = 4 -> Die Animation wird pro Step vier Mal übersprungen und landet wieder beim ersten Subimage.

    Stell den image_speed zur Lösung deines Problems einfach auf einen Wert zwischen 0 und 2, mehr ist in den meisten Fällen gar nicht nötig.
  • Die schnellste Art, deine Bilder abzuspielen ist mit
    image_speed=1;
    Dann wird pro frame das subimage gewechselt. Wenn du image_speed=0.5; einstellst, dann wird das subimage alle zwei frames geändert. Ist image_speed=2, dann wird immer 1 subimage übersprungen, du siehst also abwechselnd subimage 0 und 2. Bei image_speed=3; überspringst du gleich 2 Bilder und bei subimage=4 gleich 3 Bilder, was bedeutet, dass du bei 4 subimages immer nur subimage 0 siehst...das gleiche wenn du image_speed auf 8, 12, 16, 20 oder irgendein weiteres Vielfaches von 4 setzt.

    Ich hoffe ich konnte dein Missverständnis aufklären...

    EDIT: da waren mal wieder viele gleichzeitig unterwegs...
    Einige meiner Spiele:
  • Naja, bei den Subimages udn bei den Speed habe ich mich nicht wirklich ausgekannt.^^

    Noch etwas: Auf welchen wert muss ich es jetzt genau stellen damit die Sprites nich so schnell abgespielt werden? Bei manchen Sppeds funktioniert es garnicht...



    Ich kapier einfach nicht wieso das nicht gehen will.

    Das mit den Speed 12 versteh ich jetzt schon., doch dann habe ich mir volgendes ausgerechnet:

    4 Images. 4/4 = 1 also wird bei der geschwindichkeit 4 immer nur 1 Sprite übersprungen. oder? Tja. Dabei wird bei mir immer nur das Subimage 2 gezeigt.

    Ich weiss jetzt wirklich ncith warum/wieso das so ist... ;(

    (Wenn überhaupt die animation abgespielt wird, dann mit einer extrem hohen geschwindichkeit... Die geschwindichkeit will ich aber rutnerschrauben...)
  • Nein.
    Geschwindigkeit 1 ist die höchste. Wenn du's langsamer haben willst versuch 0.5 oder 0.25 etc. Die Werte sollten zwischen 0 und 1 liegen!

    EDIT: kleine Merkhilfe: wenn etwas langsamer werden soll, dann muss die Geschwindigkeit kleiner werden. Bei einem Standardwert von 1 bedeutet kleiner eben einen Wert zwischen 0 und 1.
    Einige meiner Spiele:
  • Klick mal bei deinem Player Objekt auf Show Information, wähle alles aus was da steht, kopier den Text mit STRG+C und poste ihn hier. Vielleicht finden wir dann deinen Fehler.
    Einige meiner Spiele:
  • Quellcode

    1. Information about object: obj_MC_player
    2. Sprite: spr_MC_main_rechtsstehend
    3. Solid: false
    4. Visible: true
    5. Depth: 0
    6. Persistent: false
    7. Parent: <no parent>
    8. Mask: <same as sprite>
    9. Step Event:
    10. if relative position (0,1) is collision free for Only solid objects
    11. set the gravity to 1 in direction 270
    12. else
    13. set the gravity to 0 in direction 270
    14. if vspeed is larger than 12
    15. set the vertical speed to 10
    16. execute code:
    17. image_speed=1;
    18. Collision Event with object obj_block:
    19. move in direction direction at most 12 till a contact with solid objects
    20. set the vertical speed to 0
    21. Keyboard Event for A-key Key:
    22. if relative position (-8,0) is collision free for Only solid objects
    23. move relative to position (-8,0)
    24. Keyboard Event for D-key Key:
    25. if relative position (8,0) is collision free for Only solid objects
    26. move relative to position (8,0)
    27. Keyboard Event for W-key Key:
    28. if relative position (0,1) gives a collision with Only solid objects
    29. set the vertical speed to -8
    30. Key Press Event for A-key Key:
    31. set the sprite to spr_MC_main_linkslaufend with subimage 0 and speed 0.01
    32. Key Press Event for D-key Key:
    33. set the sprite to spr_MC_main_rechtslaufend with subimage 0 and speed 0.01
    34. Key Release Event for A-key Key:
    35. set the sprite to spr_MC_main_linksstehend with subimage 0 and speed 1
    36. Key Release Event for D-key Key:
    37. set the sprite to spr_MC_main_rechtsstehend with subimage 0 and speed 1
    Alles anzeigen


    So den habe ich mal gepostet.
  • Der Code im Step Event (Zeile 20):
    image_speed=1;
    hebt alle Änderungen in den Key-Events auf, weil er immer danach ausgeführt wird. Lösch dieses "Execute A Piece Of Code" Teil einfach raus und experimentier dann mit den Werten in den change sprite Aktionen.
    Einige meiner Spiele:
  • Benutzer online 1

    1 Besucher