public override InventoryItem.MergeResult TryCombine(IInventoryItem otherItem) { IHeldItem item = otherItem as IHeldItem; if (item == null) { return InventoryItem.MergeResult.Failed; } if (item.freeModSlots <= 0) { return InventoryItem.MergeResult.Failed; } if (!(otherItem.datablock is BulletWeaponDataBlock)) { return base.TryCombine(otherItem); } IHeldItem item2 = otherItem as IHeldItem; if (item2.FindMod(base.datablock) != -1) { return InventoryItem.MergeResult.Failed; } return InventoryItem.MergeResult.Combined; }