Example #1
0
        // Corrutina para pausar entre movimientos y poder verlos
        IEnumerator BlockInMotion(float delay)
        {
            blockInMotion = true;
            // Animar tal vez las dos piezas...
            yield return(new WaitForSeconds(delay));

            MovableBlock block      = blocksInMotion.Dequeue();
            MovableBlock otherBlock = blocksInMotion.Dequeue();

            // Ya ha cambiando el puzle, la posición lógica y ubicación en la matriz de bloques de ambos bloques
            // Sólo queda intercambiar la parte visual, la posición física de ambos en la escena
            block.ExchangeTransform(otherBlock);

            blockInMotion = false;
        }