私はここで新しいです。 (これに対してXNAのモノゴムバリエーションを使用) 私が作成したスプライトシートをアニメーション化するためのクラスを作り直しましたが、私が遭遇した問題は、アニメーションと共にキープレスを実装しようとするとすぐにこのキーボード入力によるアニメーションの変更を実装するための助けが必要です
previousKBState = currentKBState;
currentKBState = Keyboard.GetState();
if (previousKBState.IsKeyDown(Keys.D))
{
playerSprite.LoadGraphic(Content.Load<Texture2D>("Sprites\\walk_right.png"), 5, 15, 672, 631, 30);
}
else if (previousKBState.IsKeyDown(Keys.A))
{
playerSprite.LoadGraphic(Content.Load<Texture2D>("Sprites\\walk_left.png"), 5, 15, 672, 631, 30);
}
else
{
playerSprite.LoadGraphic(Content.Load<Texture2D>("Sprites\\idle_right.png"), 5, 10, 610, 423, 5);
}
のように見えます
私の更新クラス)最初のフレームに貼り付け、これが私のLoadGraphicクラス
public void LoadGraphic(Texture2D texture, int rows, int columns, int width, int height, int animationSpeed)
{
this.Texture = texture;
this.rows = rows;
this.columns = columns;
this.width = width;
this.height = height;
this.animationSpeed = (float)1/animationSpeed;
totalElapsed = 0;
currentRow = 0;
currentColumn = 0;
}
私の描画クラスです
public void Draw(SpriteBatch spriteBatch, Vector2 position, Color color)
{
spriteBatch.Draw(Texture,
new Rectangle((int)position.X, (int)position.Y, width, height),
new Rectangle(currentColumn * width, currentRow * height, width, height), color);
}
ので、私は、私はに実行していると思う問題は、私はDまたはダウンキーを押し続けたときに、コードLoadGraphicsのラインは、アニメーションが出て再生することができます前に、他のクラスへの呼び出しを更新し続けているということです。誰もがこの あなたは正しいですあなた
ありがとう、私はちょうどそれをLoadContent()で読み込んだ後、 – Tenten