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); }
public virtual void Init() { if (this._item == null) { if (this._itemId <= 0) { if (Application.isPlaying && this._itemId != -1) { if (base.GetComponents <InventoryItemView>().Any((InventoryItemView iiv) => iiv._itemId > 0)) { Debug.Log("InventoryItemView duplicate component : " + base.name); UnityEngine.Object.Destroy(this); } else { Debug.Log("Destroying broken InventoryItemView GO : " + base.name); UnityEngine.Object.Destroy(base.gameObject, 0.5f); } } return; } this._item = ItemDatabase.ItemById(this._itemId); Renderer component = base.gameObject.GetComponent <Renderer>(); if (component && component.enabled && !base.GetComponent <VirtualCursorSnapNode>()) { VirtualCursorSnapNode virtualCursorSnapNode = base.gameObject.AddComponent <VirtualCursorSnapNode>(); virtualCursorSnapNode._layer = LocalPlayer.Inventory._craftingCog.GetComponent <VirtualCursorSnapNode>()._layer; virtualCursorSnapNode.enabled = false; virtualCursorSnapNode.enabled = true; virtualCursorSnapNode.Refresh(); } this._canEquipFromCraft = this._item.MatchType(Item.Types.Equipment); } }
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); } }
public virtual void Init() { if (this._itemId > 0) { this._item = ItemDatabase.ItemById(this._itemId); Renderer component = base.gameObject.GetComponent <Renderer>(); if (component && component.enabled && !base.GetComponent <VirtualCursorSnapNode>()) { VirtualCursorSnapNode virtualCursorSnapNode = base.gameObject.AddComponent <VirtualCursorSnapNode>(); virtualCursorSnapNode._layer = LocalPlayer.Inventory._craftingCog.GetComponent <VirtualCursorSnapNode>()._layer; virtualCursorSnapNode.enabled = false; virtualCursorSnapNode.enabled = true; virtualCursorSnapNode.Refresh(); } this._canEquipFromCraft = this._item.MatchType(Item.Types.Equipment); return; } Debug.Log("InventoryItemView not setup : " + base.name); if (Application.isPlaying) { UnityEngine.Object.Destroy(base.gameObject, 0.5f); } }