public override void OnEvent(RackRemove evnt) { if (evnt.Rack && evnt.Slot >= 0) { evnt.Rack.GetState <IWeaponRackState>().Slots[evnt.Slot] = 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; } }
public override void OnEvent(RackRemove evnt) { if (evnt.Rack && evnt.Slot >= 0) { evnt.Rack.GetState<IWeaponRackState>().Slots[evnt.Slot] = 0; } }