예제 #1
0
    void Start()
    {
        id          = GetId();
        prevGrabbed = false;

        BlockManager.AddActive(this);
        shadow.SetActive(false);

        cubeVFX = GetComponent <CubeVFX> ();

        cubePositions = new List <IntegerVector3> ();
        dimensions    = new IntegerVector3();

        foreach (BoxCollider cube in GetComponents <BoxCollider>())
        {
            cubePositions.Add(new IntegerVector3(cube.center));

            dimensions.x = Mathf.Max(dimensions.x, Mathf.RoundToInt(cube.center.x));
            dimensions.y = Mathf.Max(dimensions.y, Mathf.RoundToInt(cube.center.y));
            dimensions.z = Mathf.Max(dimensions.z, Mathf.RoundToInt(cube.center.z));
        }
        for (int i = 0; i < transform.childCount; i++)
        {
            GameObject cube = transform.GetChild(i).gameObject;

            if (cube != shadow)
            {
                cubes.Add(cube);
            }
        }

        transform.SetPositionAndRotation(transform.position, Random.rotation);

        Snap(transform);
    }