예제 #1
0
 void Awake()
 {
     for (int i = 0; i < 3 /*aww*/; i++)
     {
         cubeMatrix[i] = new CubeEntry[3][];
         for (int j = 0; j < 3 /*aww*/; j++)
         {
             cubeMatrix[i][j] = new CubeEntry[3];
         }
     }
     // generate initial cube matrix
     GenerateMatrix();
     GenerateResetPositions();
     solver = gameObject.GetComponent <CubeSolver>();
 }
예제 #2
0
    IEnumerator RotateCoroutine(CubeEntry cubeEntry, Vector3 target, float time)
    {
        float elapsed = 0f;

        Quaternion targetRot = Quaternion.Euler(target) * cubeEntry.cube.rotation;

        while (elapsed < time)
        {
            cubeEntry.cube.localRotation = Quaternion.Lerp(
                cubeEntry.cube.rotation,
                targetRot,
                Time.deltaTime * 30
                );
            elapsed += Time.deltaTime;
            yield return(null);
        }
    }
예제 #3
0
	public CubeEntry(CubeEntry other) {
		this.name = other.name;
		this.cube = other.cube;
	}