unity 道具合成的判斷(二維數組)

直接上代碼:

用一個二維數組存儲允許玩家組合的道具列表,然後去判斷玩家選擇的三種道具是否合法。

using UnityEngine;

public class Arithmetic : MonoBehaviour
{
    private string[,] arr;

    private string input1 = "A";
    private string input2 = "B";
    private string input3 = "C";

    private bool _switch = false;
    // 初始化時執行
    void Start()
    {
        arr = new string[3, 3]
        {
            {"A","B","C" },
            {"D","E","F" },
            {"H","I","J" },
        };
    }

    // 固定時間執行 Edit - Project Setting - time  Fixed timestep=0.02	
    void FixedUpdate()
    {
        //1.三個值均不爲空時執行判斷
        //2.循環檢測三個值是否符合數組的字頭
        //3.若有任意值符合任意字頭 則檢測其餘兩值是否符合
        if (input3 != null && input2 != null && input1 != null)
        {
            for (int i = 0; i < arr.Length; i++)
            {
                if (input3 == arr[i, 0])
                {
                    if (input2 == arr[i, 1] || input2 == arr[i, 2])
                    {
                        if(input1 == arr[i, 1] || input1 == arr[i, 2])
                        _switch = true;
                    }
                }
                else if (input2 == arr[i, 0])
                {
                    if (input3 == arr[i, 1] || input3 == arr[i, 2])
                    {
                        if(input1 == arr[i, 1] || input1 == arr[i, 2])
                        _switch = true;
                    }
                }
                else if (input1 == arr[i, 0])
                {
                    if (input3 == arr[i, 1] || input3 == arr[i, 2])
                    {
                        if(input2 == arr[i, 1] || input2 == arr[i, 2])
                        _switch = true;
                    }
                }
            }
        }
    }
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章