0

たくさんのヒットスパークを使って格闘ゲームを作っていますが、複数のヒットスパークを描画するための要素のリストを作成する方法がわかりません (今のところ、画面には 1 つのヒットスパークしかありません)。リストが存在することは知っていますが、その使用方法が本当にわかりません。これが、今までにヒットスパークを処理する方法です。

    AnimationElement HitElement;
    private Preparationanimation Hit4;

 public override void  LoadContent()
 {
        HitElement = new AnimationElement();
        Hit4 = new Preparationanimation(SpriteSheetElements1, new Color(255, 255, 255, 128), 1f, false)
 }

 if (IntersectPixels(Player1.HitboxAtt, Player1.playerTextureData, Player2.Hitbox, Player2.playerTextureData))
 {
        HitElement.PlayAnimation(Hit4, content);
 }

 public override void Draw(GameTime gameTime)
 {
         HitElement.Draw(spriteBatch, gameTime, positionElement, false, true);
 }

ありがとう

4

1 に答える 1

1
List<AnimationElement> HitElements;
private Preparationanimation Hit4;

 public override void LoadContent()
 {
        HitElements = new List<AnimationElement>();
        Hit4 = new Preparationanimation(SpriteSheetElements1, new Color(255, 255, 255, 128), 1f, false)
 }

 if (IntersectPixels(Player1.HitboxAtt, Player1.playerTextureData, Player2.Hitbox, Player2.playerTextureData))
 {
     foreach (AnimationElement a in HitElements)
     {
       a.PlayAnimation(Hit4, content);
     }
 }

 public override void Draw(GameTime gameTime)
 {
     foreach (AnimationElement a in HitElements)
     {
         a.Draw(spriteBatch, gameTime, positionElement, false, true);
     }

 }

複数のオブジェクトのリストが必要です。HitElements.Add を使用して追加できます。また、コードの途中に If ステートメントがあるのはなぜですか?

詳細については、こちらをご覧ください

于 2012-07-02T12:39:04.767 に答える