Ich habe ein Sprite-Blatt, das einen Charakter-Walk-Zyklus enthält, und ich habe eine Spieler-Klasse erstellt, die es dem Spieler erlaubt, sich durch die Walk-Animation zu bewegen, aber die Animation läuft nur nach rechts. Mit den Pfeiltasten bewege ich mich nach oben, unten, links und rechts, dh wenn ich eine beliebige Taste drücke, bewegt sich mein Player in die richtige Richtung, führt aber nur die Animation des Gehens nach rechts aus.Monogame - Sprite-Klasse
Die aktuelle Animation, wie dies in der LoadContent()
Funktion arbeitet, wurde genannt:
spritesheet = Content.Load<Texture2D>("sprites2");
player = new Player(spritesheet, new Rectangle(0, 96, 32, 48),
new Vector2(100, 100), 4);
Dies macht seinen Job, wie es jeweils 4 Sprites ruft die Wander Animation nach rechts zu vollenden, und new Rectangle(0,96,32,48)
ist der Ort, der aus dem Sprite Sheet herausgeschnitten wurde. Allerdings brauche ich zum Beispiel (new Rectangle(30, 101, 65, 52)
) auch, die meinen Charakter korrekt animiert, wenn die linke Pfeiltaste gedrückt wurde.
Meine Frage ist, wie würde ich eine andere Stelle des Sprite-Blattes geladen bekommen, und dann tatsächlich funktionieren, wenn ich die richtige Taste drücke?
Dies ist eine sehr schwierige Frage zu stellen, und ich entschuldige mich sehr, wenn es schwer zu verstehen war. Ich akzeptiere alle Änderungen an meiner Frage und danke Ihnen im Voraus.