Ejemplo n.º 1
0
        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);
        }
Ejemplo n.º 2
0
 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);
     }
 }
Ejemplo n.º 3
0
        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);
        }
Ejemplo n.º 4
0
        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);
            }
        }
Ejemplo n.º 5
0
 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);
     }
 }