如何翻转游戏板中的所有平台?

时间:2014-10-10 08:57:04

标签: c# xna xna-4.0

我正在XNA中制作一个简单的平台游戏,当玩家退出屏幕时,屏幕会翻转。我将屏幕划分为一个由Platforms[x,y]组成的Board。我有一个显示/隐藏平台的功能。

 public void Show(int a, int b)
    { 
        Platforms[a,b].Visible=true;
    }

    public void Hide(int a, int b)
    {
        if (Platforms[a, b].Visible == true)
            Platforms[a, b].Visible = false;
    }

我可以通过隐藏以前的平台并显示新的平台来手动翻转电路板,但它涉及手动计算并且非常繁琐。翻转平台应该是这样的:  [Math.abs(x - maxX),y],我认为它会起作用,但我很难制作这种方法。

我想出了这个方法:

  public void flip(int a, int b)
    {
        if (Platforms[a, b].Visible == true)
        {
            this.Hide(a, b);
            this.Show(Math.Abs(a - 15), b);


        }
    }

但如果原始电路板和翻转板有交叉平台(意思是相同的x和y),则存在问题,平台隐藏在翻转板中。

0 个答案:

没有答案