Exemple #1
0
    public virtual void Drop(object[] o)
    {
        Vector3 pos = Vector3.zero;

        if (o == null)
        {
            pos = gameManager.Actor.transform.position;
        }
        else if (o[0] != null)
        {
            pos = (Vector3)o[0];
        }

        EnablePhysics(true);
        uIItemManager.DeFocusOnUIItem(_UIItem);
        SetRenderes(true);
        _transform.parent   = GameManager.Instance.ItemManager.GroundTransform;
        _transform.position = pos;
        if (_UIItem.HotKey != -1)
        {
            hotKeys.RemoveHotKey(_UIItem.HotKey);
        }

        if (o != null && o[1] != null)
        {
            UIItem        uIItem        = (UIItem)o[1];
            ItemSlot      slot          = uIItem.Slot;
            StorageWindow storageWindow = uIItem.StorageWindow;

            if (storageWindow && slot)
            {
                storageWindow.DeSlot((StorageSlot)slot, uIItem);
                return;
            }
            if (slot)
            {
                slot.DeSlot(uIItem);
            }
        }
    }