Exemplo n.º 1
0
 private void OnMouseDown()
 {
     if (spriteRenderer.sprite == null || BoardManager.sharedInstance.isShifting)
     {
         return;
     }
     if (isSelected)
     {
         DeselectCandy();
     }
     else
     {
         if (previusSelected == null)
         {
             SelectCandy();
         }
         else
         {
             if (CanSwipe())
             {
                 SwapSprite(previusSelected);
                 previusSelected.FindAllMatches();
                 previusSelected.DeselectCandy();
                 FindAllMatches();
                 GUIManager.sharedInstance.MoveCounter--;
             }
             else
             {
                 previusSelected.DeselectCandy();
                 SelectCandy();
             }
         }
     }
 }
Exemplo n.º 2
0
    private void OnMouseDown()
    {
        if (spriteRenderer.sprite == null ||
            BoardManager.sharedInstance.isShifting)
        {
            return;
        }

        if (isSelected)
        {
            DeselectCandy();
        }
        else
        {
            if (previousSelected == null)
            {
                SelectCandy();
            }
            else
            {
                if (CanSwipe())
                {
                    SwapSprite(previousSelected);
                    ////Este
                    previousSelected.FindAllMatches();
                    previousSelected.DeselectCandy();
                    ////Y este se pone dos veces porque el match se puede dar con el que moviste o el que quitaste
                    //// es decir, el primero o el segundo dulce puede hacer la raya en 3
                    FindAllMatches();

                    GUIManager.sharedInstance.MoveCounter--;
                }
                else
                {
                    previousSelected.DeselectCandy();
                    SelectCandy();
                }
            }
        }
    }
Exemplo n.º 3
0
    private void OnMouseDown()                                                       //Funcion de unity. Al hacer tap/clic en este candy...
    {
        if (spriteRenderer.sprite == null || BoardManager.sharedInstance.isShifting) //... si donde se hace tap/clic no hay imagen o se estan intercambiando los candys...
        {
            return;                                                                  //... no hara nada
        }
        //Como no hace nada, despues de aqui el codigo no sigue

        if (isSelected)      //Si este candy esta seleccionado...
        {
            DeselectCandy(); //... se deselecciona al dar tap/clic en este mismo candy...
        }
        else //Si no...
        {
            if (previousSelected == null) //... si previousSelected esta vacio, o sea, no hay ningun candy seleccionado...
            {
                SelectCandy();            //... se selecciona este candy al darle tap/clic al mismo...
            }
            else //Si no, si previousSelected si tiene algo, o sea, si hay un candy seleccionado, pero se le da clic a otro...
            {
                if (CanSwipe())                        //... si segun CanSwipe() el primero seleccionado esta en la lista de los que rodean el segundo seleccionado, o sea, esta a lado de el...
                {
                    SwapSprite(previousSelected);      //... intercambia el sprite de los candys recibiendo como parametro el previousSelected, o sea, el primer candy seleccionado, esta funcion se activa al darle clic/tap al segundo candy(SwapSprite primero checa que el segundo seleccionado no sea igual al primero seleccionado para asi poder hacer el swipe)...
                    previousSelected.FindAllMatches(); //... busca y elimina los candys que hagan match si el PRIMERO seleccionado es el que lo provoca
                    previousSelected.DeselectCandy();  //... el primer candy seleccionado se deselecciona
                    FindAllMatches();                  //... busca y elimina los candys que hagan match si el SEGUNDO seleccionado es el que lo provoca
                    GUIManager.sharedInstance.Moves--; //Disminuye en 1 los movimientos
                }
                else //Si no, si ninguno se puede intercambiar por el, segun la lista donde seguarda(GetAllNeighbors()) o por que los caramelos estan en las esquinas que rodean al candy o lejos de el...
                {
                    previousSelected.DeselectCandy();
                    SelectCandy();
                }
            }
        }
    }