Esempio n. 1
0
 public override void OnEvent(RackRemove evnt)
 {
     if (evnt.Rack && evnt.Slot >= 0)
     {
         evnt.Rack.GetState <IWeaponRackState>().Slots[evnt.Slot] = 0;
     }
 }
Esempio n. 2
0
        private void TakeCurrentItem()
        {
            bool flag = false;

            if (this._fillMode == WeaponRackSlot.FillMode.EquipedInRightHand)
            {
                LocalPlayer.Inventory.MemorizeItem(Item.EquipmentSlot.RightHand);
                flag = LocalPlayer.Inventory.Equip(this._storedItemId, true);
            }
            if (!flag)
            {
                flag = LocalPlayer.Inventory.AddItem(this._storedItemId, 1, false, false, null);
            }
            if (!flag)
            {
                LocalPlayer.Inventory.FakeDrop(this._storedItemId, null);
            }
            this._currentAddItem = ItemDatabase.ItemIndexById(this._storedItemId);
            UnityEngine.Object.Destroy(this._storedItemGO);
            this._storedItemGO = null;
            this._storedItemId = -1;
            if (this.hellDoorSlot)
            {
                this.Removed = true;
                this.Added   = false;
            }
            this.OnItemRemoved.Invoke(this._storedItemId);
            if (BoltNetwork.isRunning && !this.hellDoorSlot)
            {
                RackRemove rackRemove = RackRemove.Create(GlobalTargets.OnlyServer);
                rackRemove.Slot = base.GetComponentInParent <CoopRack>().GetSlotIndex(this);
                rackRemove.Rack = base.GetComponentInParent <BoltEntity>();
                rackRemove.Send();
            }
            if (!this._offsetIcons)
            {
                this._addIcon.transform.parent.position = base.transform.position;
            }
            else
            {
                this._addIcon.transform.parent.position = base.transform.position + this.IconsOffset;
            }
        }
Esempio n. 3
0
 public override void OnEvent(RackRemove evnt)
 {
     if (evnt.Rack && evnt.Slot >= 0)
     {
         evnt.Rack.GetState<IWeaponRackState>().Slots[evnt.Slot] = 0;
     }
 }