Unity 2d胜利条件,类似于TicTacToe的游戏

时间:2017-12-04 17:28:04

标签: unity3d position 2d conditional-statements

我正在制作一个小游戏,我遇到了问题。 每位球员有3件。他们要把它们放在盒子里,就像Tic Tac Toe板一样。 胜利条件与Tic Tac Toe相同。但是在这个游戏中,你只有3件,你可以在棋盘上移动它们,然后将你的棋子一块一块地放在棋盘上。

这些碎片只能从一个箱子移动到相邻的箱子。 我的问题是验证,胜利条件。 我有一个“董事会”,我想知道我是否可以通过董事会成员的位置来做胜利条件,或者我不能?

示例:如果3个盟友片段在x1,y1 x2 y2和x3,y3中,则获胜。 或者,如果3件作品在另外3件物品中,那么你就赢了。

如果你想了解更多关于此的信息,我可以告诉更多,所以我想到了Unity中的这个教程代码,关于Tic Tac Toe,但我没有使用面板。

using UnityEngine;
using UnityEngine.UI;
using System.Collections;

public class GameController : MonoBehaviour {

public Text[] buttonList;

private string playerSide;

void Awake ()
{
    SetGameControllerReferenceOnButtons();
    playerSide = "X";
}

void SetGameControllerReferenceOnButtons ()
{
    for (int i = 0; i < buttonList.Length; i++)
    {
        buttonList[i].GetComponentInParent<GridSpace>().SetGameControllerReference(this);

    }
}

public string GetPlayerSide ()
{
    return playerSide;
}

public void EndTurn ()
{
    if (buttonList [0].text == playerSide && buttonList [1].text == playerSide && buttonList [2].text == playerSide)
    {
        GameOver();
    }
}

void GameOver ()
{
    for (int i = 0; i < buttonList.Length; i++)
    {
        buttonList[i].GetComponentInParent<Button>().interactable = false;
    }
}

}

对不起我的英国人,如果我的解释太糟糕了^^。

1 个答案:

答案 0 :(得分:0)

由于没有多少胜利案例,您可以将每个胜利条件设为 ArrayList ,并在条件中使用 ArrayList.Contains 进行控制