Esempio n. 1
0
 public void SwapGemWith(Board_Slot targetSlot)
 {
     if (myGem != null)
     {
         myGem.transform.parent = targetSlot.transform;
         myGem.GoToParent();
         targetSlot.ReadGemProperties();
         //targetSlot.ScanNeighbours();
         myGem = null;
     }
     //noGem = false;
 }
Esempio n. 2
0
    // used only for the first Gem instance
    public void CreateGem(int gemID)
    {
        // Create Gem
        GameObject gemGO = Instantiate(gemPrefab, transform);

        gemGO.transform.localPosition = Vector3.zero;

        myGem = gemGO.GetComponent <Board_Gem>();
        //myGem.gemID = gemID;

        // Read Properties
        ReadGemProperties();

        // Set Gem Properties
        SetGemProperties(gemID);
    }
Esempio n. 3
0
    public void ReadGemProperties()
    {
        if (transform.childCount > 0)
        {
            noGem = false;


            myGem = transform.GetChild(0).GetComponent <Board_Gem>();

            animator       = myGem.GetComponent <Animator>();
            spriteRenderer = myGem.GetComponent <SpriteRenderer>();
            myGem          = myGem.GetComponent <Board_Gem>();

            gemCode = myGem.gemID;

            if (myGem.transform.parent != transform)
            {
                Debug.LogError("Gem Parent discrepancy!");
            }
        }
    }
Esempio n. 4
0
    public IEnumerator DestroyMyGem()
    {
        if (myGem != null)
        {
            matched = false;
            myGem.OnExplode();
            noGem = true;

            yield return(new WaitForEndOfFrame());


            myGem = null;


            AudioController.Audio_PlaySound(2);
        }
        else
        {
            ReadGemProperties();
        }
    }