Ich benutze die FoxEgine für mein Jump'n Run und hab dabei folgenden Code im Draw-Event meines Players stehen:
Alles anzeigen
In einigen Zwischensequenzen will ich den Player nun mit Step Torwasds zu einem Punkt laufen lassen; das Problem ist jetzt aber, dass sich die Sprites dann nicht mehr korrekt anhand des Bewegungszustandes und der -richtung ändern. Hab schon alles mögliche versucht abzuändern, hab auch den Key_check entfernt.
Ich möchte also den Code so abändern, dass sich die Sprites nur noch anhand der Bewegung des Players ändern, und nicht mehr die Tasten in die Überprüfung mit einbeziehen. Hat jemand ne Lösung? Ich möchte das gleiche System dann auch für meine Passanten benutzen, damit ich nur deren Gehrichtung, und nicht auch noch deren Spritewechsel angeben muss.
GML-Quellcode
- //this sets the image speed to the right speed
- if(wspeed < 0) image_speed = -wspeed/20
- else image_speed = wspeed/20
- //if there is place free below us, we want to show a jump sprite!
- if(place_free(x,y+6)) {
- image_speed = 0
- if(wspeed == 0) {
- if(sprite_index == spr_idle_left) sprite_index = spr_jump_left
- if(sprite_index == spr_idle_right) sprite_index = spr_jump_right
- }
- if(wspeed > 0 || keyboard_check(ord('D'))) sprite_index = spr_jump_right
- if(wspeed < 0 || keyboard_check(ord('A'))) sprite_index = spr_jump_left
- if(vspeed > 0) image_index = 0
- else image_index = 1
- }
- //now hes on the ground, and hes moving, so lets show the run sprite
- else {
- if(wspeed > 0 || keyboard_check(ord('D'))) sprite_index = spr_run_right
- if(wspeed < 0 || keyboard_check(ord('A'))) sprite_index = spr_run_left
- }
- //if the player is standing still, we want to show the idle sprite
- if(wspeed == 0) {
- if(sprite_index == spr_run_left) sprite_index = spr_idle_left
- else if(sprite_index == spr_run_right) sprite_index = spr_idle_right
- }
- //Draw the player...
- draw_sprite_ext(sprite_index,-1,round(x),round(y),image_xscale,image_yscale,image_angle,image_blend,image_alpha);
In einigen Zwischensequenzen will ich den Player nun mit Step Torwasds zu einem Punkt laufen lassen; das Problem ist jetzt aber, dass sich die Sprites dann nicht mehr korrekt anhand des Bewegungszustandes und der -richtung ändern. Hab schon alles mögliche versucht abzuändern, hab auch den Key_check entfernt.
Ich möchte also den Code so abändern, dass sich die Sprites nur noch anhand der Bewegung des Players ändern, und nicht mehr die Tasten in die Überprüfung mit einbeziehen. Hat jemand ne Lösung? Ich möchte das gleiche System dann auch für meine Passanten benutzen, damit ich nur deren Gehrichtung, und nicht auch noch deren Spritewechsel angeben muss.
