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); } } }