예제 #1
0
    void setBoardIDandSpecialMaterialBlcok()
    {
        RFIB.setBoardBlockMappingArray(1, "0101");
        RFIB.setBoardBlockMappingArray(2, "0201");
        RFIB.setBoardBlockMappingArray(3, "0301");

        RFIB.setBoardBlockMappingArray(4, "0102");
        RFIB.setBoardBlockMappingArray(5, "0202");
        RFIB.setBoardBlockMappingArray(6, "0302");

        RFIB.setBoardBlockMappingArray(7, "0103");
        RFIB.setBoardBlockMappingArray(8, "0203");
        RFIB.setBoardBlockMappingArray(9, "0303");


        int[] Cube_StreetA   = { 940104 };
        int[] Cube_topLavaA  = { 920135, 920143, 910112, 910173, 920120, 910128 };
        int[] Cube_RedBrickA = { 910109, 920119, 920134, 920117, 910174, 910175 };
        int[] Cube_cr010A    = { 940103 };
        int[] Cube_cr016A    = { 940101 };
        int[] Cube_GrassA    = { 940102 };


        foreach (int xID in Cube_GrassA)
        {
            Cube_Grass.Add(xID);
        }
        foreach (int xID in Cube_cr016A)
        {
            Cube_cr016.Add(xID);
        }
        foreach (int xID in Cube_StreetA)
        {
            Cube_Street.Add(xID);
        }
        foreach (int xID in Cube_topLavaA)
        {
            Cube_topLava.Add(xID);
        }

        foreach (int xID in Cube_RedBrickA)
        {
            Cube_RedBrick.Add(xID);
        }

        foreach (int xID in Cube_cr010A)
        {
            Cube_cr010.Add(xID);
        }
    }
예제 #2
0
    // 在開始接收ID前,這邊要將接收到的地板ID進行配對編號。
    private void BoardMapping()
    {
        //  [04]   | 0004 0104  ..   ..   ..   ..   ..  0704 0804
        //  [03]   | 0003 0103  ..   ..   ..   ..   ..  0703 0803
        //  [02]   | 0002 0102  ..   ..   ..   ..   ..  0702 0802
        //  [01]   | 0001 0101  ..   ..   ..   ..   ..  0701 0801
        //  [00]   | 0000 0100  ..   ..   ..   ..   ..  0700 0800
        //-------/-----------------------------------------------
        //   y /x | [00] [01] [02] [03] [04] [05] [06] [07] [08]

        for (int i = 0; i < RFIBParameter.blockNum; i++)
        {
            string pos = "0" + (i % RFIBParameter.stageCol).ToString() + "0" + (i / RFIBParameter.stageCol).ToString();
            RFIB.setBoardBlockMappingArray(i, pos);
        }
    }
예제 #3
0
    private void BoardMapping()
    {
        // 在開始接收ID前,這邊要將接收到的地板ID進行配對編號。
        // 使用的function是 setBoardBlockMappingArray(地板編號,"給予的座標x+1 給予的座標y+1");
        #region old code
        //String pos;
        //for (int i = 40; i < 45; i++)
        //{
        //    pos = "0" + (((i % 5) + 1) % 6).ToString() + "09";
        //    RFIB.setBoardBlockMappingArray(i + 1, pos);
        //    Debug.Log((i + 1).ToString() + " " + pos);
        //}
        //for (int i = 35; i < 40; i++)
        //{
        //    pos = "0" + (((i % 5) + 1) % 6).ToString() + "08";
        //    RFIB.setBoardBlockMappingArray(i + 1, pos);
        //    Debug.Log((i + 1).ToString() + " " + pos);
        //}
        //for (int i = 30; i < 35; i++)
        //{
        //    pos = "0" + (((i % 5) + 1) % 6).ToString() + "07";
        //    RFIB.setBoardBlockMappingArray(i + 1, pos);
        //    Debug.Log((i + 1).ToString() + " " + pos);
        //}
        //for (int i = 25; i < 30; i++)
        //{
        //    pos = "0" + (((i % 5) + 1) % 6).ToString() + "06";
        //    RFIB.setBoardBlockMappingArray(i + 1, pos);
        //    Debug.Log((i + 1).ToString() + " " + pos);
        //}
        //for (int i = 0; i < 9; i++)
        //{
        //    pos = "010" + (((i % 9) + 1) % 10).ToString();
        //    RFIB.setBoardBlockMappingArray(i + 1, pos);
        //    Debug.Log((i + 1).ToString() + " " + pos);
        //}
        //for (int i = 9; i < 18; i++)
        //{
        //    pos = "020" + (((i % 9) + 1) % 10).ToString();
        //    RFIB.setBoardBlockMappingArray(i + 1, pos);
        //    Debug.Log((i + 1).ToString() + " " + pos);
        //}
        //for (int i = 18; i < 27; i++)
        //{
        //    pos = "030" + (((i % 9) + 1) % 10).ToString();
        //    RFIB.setBoardBlockMappingArray(i + 1, pos);
        //    Debug.Log((i + 1).ToString() + " " + pos);
        //}
        //for (int i = 27; i < 36; i++)
        //{
        //    pos = "040" + (((i % 9) + 1) % 10).ToString();
        //    RFIB.setBoardBlockMappingArray(i + 1, pos);
        //    Debug.Log((i + 1).ToString() + " " + pos);
        //}
        //for (int i = 36; i < 45; i++)
        //{
        //    pos = "050" + (((i % 9) + 1) % 10).ToString();
        //    RFIB.setBoardBlockMappingArray(i + 1, pos);
        //    Debug.Log((i + 1).ToString() + " " + pos);
        //}
        #endregion

        // \ y   |
        // x  \  | [01] [02] [03] [04] [05] [06] [07] [08] [09]
        //-------\-----------------------------------------------
        //   [01] |   1    2    3    4    5    6    7    8    9
        //   [02] |  10   11   12   13   14   15   16   17   18
        //   [03] |  19   20   21   22   23   24   25   26   27
        //   [04] |  28   29   30   31   32   33   34   35   36
        //   [05] |  37   38   39   40   41   42   43   44   45

        //// floor ID "9999 0101" - "9999 0145"
        for (int i = 0; i < 45; i++)
        {
            string pos = "0" + ((i / 9) + 1).ToString() + "0" + (((i % 9) + 1) % 10).ToString();
            RFIB.setBoardBlockMappingArray(i + 1, pos);
            //Debug.Log((i + 1).ToString() + '\t' + pos);
        }

        //這裡的(y, x);
        //RFIB.setBoardBlockMappingArray (18, "0101");
        // 上面這行的意思就是把編號為xxxx 0000 9999 01"18" XXXX的地板塊,配對成座標(x, y) = (0, 0)的意思。

        //RFIB.setBoardBlockMappingArray (45, "0508");
        // 另一個例子:上面這行的意思就是把編號為8930 0000 9999 01"45" XXXX的地板塊,配對成座標(x, y) = (4, 7)的意思。

        // 植物大戰殭屍的地板為3*4,所以這邊要把12個地板方塊都編好
    }