Пример #1
0
    public void DropObject(Vector3 location, Quaternion rotation)
    {
        Box droppedItem = carriedObjects.Peek();

        //Transfering object to another grid.
        if (droppedItem.puzzle != null)
        {
            if (!droppedItem.puzzle.IsInPuzzleBoundry(location))
            {
                exception.FlashText("OUT OF BOUNDS");
                return;
            }
            droppedItem.puzzle.ShowBoundry(false);
        }
        droppedItem.grid = placementGrid;
        droppedItem.transform.SetParent(placementGrid.transform);

        carriedObjects.Pop();
        placementPreviews[0].gameObject.SetActive(false);
        placementPreviews[1].gameObject.SetActive(false);

        boxInventoryDisplay.RemoveBox();
        if (carriedObjects.Count > 0)
        {
            carriedItem = carriedObjects.Peek();
        }
        //SetCarriedItemMeshMaterialAndRigidbody(carriedObjects.Peek());

        droppedItem.AddMyself(true);
        droppedItem.gameObject.SetActive(true);
        //Remove constraints of rigidbody
        droppedItem.transform.position = location;
        droppedItem.transform.rotation = rotation;

        droppedItem.Frozen = false;
    }