Beispiel #1
0
    void RemoveGemstone(GemStone c)
    {
        c.Dispose();
        audio.PlayOneShot(match3Clip);
        for (int i = c.rowIndex + 1; i < rowNum; i++)
        {
            GemStone temGemstone = GetGemStone(i, c.columIndex);
            temGemstone.rowIndex--;
            SetGemStone(temGemstone.rowIndex, temGemstone.columIndex, temGemstone);
            temGemstone.UpdatePosition(temGemstone.rowIndex, temGemstone.columIndex);
        }
        GemStone newGemstone = AddGemstone(rowNum, c.columIndex);

        newGemstone.rowIndex--;
        SetGemStone(newGemstone.rowIndex, newGemstone.columIndex, newGemstone);
        newGemstone.UpdatePosition(newGemstone.rowIndex, newGemstone.columIndex);
    }
Beispiel #2
0
    public void Exchange(GemStone c1, GemStone c2)
    {
        audio.PlayOneShot(swapClip);
        SetGemStone(c1.rowIndex, c1.columIndex, c2);
        SetGemStone(c2.rowIndex, c2.columIndex, c1);
        //huan hang hao
        int tempRowIndex;

        tempRowIndex = c1.rowIndex;
        c1.rowIndex  = c2.rowIndex;
        c2.rowIndex  = tempRowIndex;
        //huan lie  hao
        int tempColumIndex;

        tempColumIndex = c1.columIndex;
        c1.columIndex  = c2.columIndex;
        c2.columIndex  = tempColumIndex;

        c1.UpdatePosition(c1.rowIndex, c1.columIndex);
        c2.UpdatePosition(c2.rowIndex, c2.columIndex);
    }