private void SpawnNonEquipment(int itemId, int slotId) { InventoryItemView inventoryItemView = LocalPlayer.Inventory.InventoryItemViewsCache[itemId][0]; InventoryItemView inventoryItemView2 = UnityEngine.Object.Instantiate <InventoryItemView>(inventoryItemView); Vector3 zero = Vector3.zero; zero.y += inventoryItemView.transform.position.y - LocalPlayer.Inventory._inventoryGO.transform.position.y; inventoryItemView2.transform.localScale = inventoryItemView.transform.lossyScale; inventoryItemView2.transform.parent = this._slots[slotId]; inventoryItemView2.transform.localPosition = zero; inventoryItemView2.transform.localRotation = inventoryItemView.transform.localRotation * Quaternion.Euler(0f, 0f, 90f); inventoryItemView2.gameObject.layer = base.gameObject.layer; UnityEngine.Object.DestroyImmediate(inventoryItemView2.GetComponent <Collider>()); this.CleanUpComponents(inventoryItemView2.transform); inventoryItemView2.gameObject.SetActive(true); UnityEngine.Object.Destroy(inventoryItemView2.GetComponent <Collider>()); VirtualCursorSnapNode component = inventoryItemView2.GetComponent <VirtualCursorSnapNode>(); if (component) { UnityEngine.Object.Destroy(component); } StoreInformation component2 = inventoryItemView2.GetComponent <StoreInformation>(); if (component2) { UnityEngine.Object.Destroy(component2); } UnityEngine.Object.Destroy(inventoryItemView2); }
private void SpawnNonEquipmentItemView(int itemId, Transform parent) { InventoryItemView inventoryItemView = LocalPlayer.Inventory.InventoryItemViewsCache[itemId][0]; InventoryItemView inventoryItemView2 = UnityEngine.Object.Instantiate <InventoryItemView>(inventoryItemView); inventoryItemView2.transform.localScale = inventoryItemView.transform.lossyScale; inventoryItemView2.transform.parent = parent; if (inventoryItemView._modelOffsetTr) { inventoryItemView2.transform.localPosition = inventoryItemView._modelOffsetTr.localPosition; } else { Vector3 position = parent.position; position.y += LocalPlayer.Inventory._inventoryGO.transform.InverseTransformPoint(inventoryItemView.transform.position).y; inventoryItemView2.transform.position = position; } inventoryItemView2.transform.rotation = base.transform.parent.rotation * Quaternion.Inverse(inventoryItemView.transform.rotation); inventoryItemView2.gameObject.layer = base.transform.parent.gameObject.layer; inventoryItemView2.gameObject.SetActive(true); UnityEngine.Object.Destroy(inventoryItemView2.GetComponent <Collider>()); VirtualCursorSnapNode component = inventoryItemView2.gameObject.GetComponent <VirtualCursorSnapNode>(); if (component) { UnityEngine.Object.Destroy(component); } StoreInformation component2 = inventoryItemView2.gameObject.GetComponent <StoreInformation>(); if (component2) { UnityEngine.Object.Destroy(component2); } UnityEngine.Object.Destroy(inventoryItemView2); }
private void SpawnNonEquipmentItemView() { InventoryItemView inventoryItemView = LocalPlayer.Inventory.InventoryItemViewsCache[this._storedItemId][0]; InventoryItemView inventoryItemView2 = UnityEngine.Object.Instantiate <InventoryItemView>(inventoryItemView); Vector3 position = base.transform.position; Quaternion rotation = base.transform.rotation; Item item = ItemDatabase.ItemById(this._storedItemId); RackPlacement placementOverride = this.GetPlacementOverride(item); if (placementOverride != null) { Vector3 zero = Vector3.zero; Quaternion identity = Quaternion.identity; Vector3 one = Vector3.one; placementOverride.ApplyTo(ref zero, ref identity, ref one); inventoryItemView2.transform.localScale = one; inventoryItemView2.transform.parent = base.transform; inventoryItemView2.transform.localPosition = zero; inventoryItemView2.transform.localRotation = identity; inventoryItemView2.transform.localPosition += WeaponRackSlot.GetJitterVector3(this._jitterPosition); inventoryItemView2.transform.localRotation = Quaternion.Euler(WeaponRackSlot.GetJitterVector3(this._jitterRotation)) * inventoryItemView2.transform.localRotation; } else { Vector3 position2 = position; position2.y += inventoryItemView.transform.position.y - LocalPlayer.Inventory._inventoryGO.transform.position.y; inventoryItemView2.transform.localScale = inventoryItemView.transform.lossyScale; inventoryItemView2.transform.parent = base.transform; inventoryItemView2.transform.position = position2; inventoryItemView2.transform.rotation = inventoryItemView.transform.rotation; } inventoryItemView2.gameObject.layer = base.gameObject.layer; inventoryItemView2.gameObject.SetActive(true); this._storedItemGO = inventoryItemView2.gameObject; UnityEngine.Object.Destroy(inventoryItemView2.GetComponent <Collider>()); UnityEngine.Object.Destroy(inventoryItemView2); VirtualCursorSnapNode component = this._storedItemGO.GetComponent <VirtualCursorSnapNode>(); if (component) { UnityEngine.Object.Destroy(component); } StoreInformation component2 = this._storedItemGO.GetComponent <StoreInformation>(); if (component2) { UnityEngine.Object.Destroy(component2); } if (this.OnItemAdded != null) { this.OnItemAdded.Invoke(this._storedItemId); } }