public static MyToolbarItem CreateToolbarItemFromInventoryItem(IMyInventoryItem inventoryItem) { var itemDefinitionId = inventoryItem.GetDefinitionId(); MyDefinitionBase itemDefinition; if (MyDefinitionManager.Static.TryGetDefinition(itemDefinitionId, out itemDefinition)) { if ((itemDefinition is MyPhysicalItemDefinition) || (itemDefinition is MyCubeBlockDefinition)) { var itemBuilder = MyToolbarItemFactory.ObjectBuilderFromDefinition(itemDefinition); if (itemBuilder is MyObjectBuilder_ToolbarItemMedievalWeapon) { var meWeaponBuilder = itemBuilder as MyObjectBuilder_ToolbarItemMedievalWeapon; meWeaponBuilder.ItemId = inventoryItem.ItemId; } if (itemBuilder != null && !(itemBuilder is MyObjectBuilder_ToolbarItemEmpty)) { return(MyToolbarItemFactory.CreateToolbarItem(itemBuilder)); } } } return(null); }
public void Adapt(IMyInventoryItem inventoryItem) { m_physItem = null; m_blockDef = null; var poob = inventoryItem.Content as MyObjectBuilder_PhysicalObject; if (poob != null) Adapt(poob.GetObjectId()); else Adapt(inventoryItem.GetDefinitionId()); }
public string GetInventoryItemByName(IMyInventoryItem item) { string itemName = item.GetDefinitionId().ToString(); char[] delimChar = "/".ToCharArray(); string[] newString = itemName.Split(delimChar); return(newString[1]); }
public override bool ItemsCanBeAdded(MyFixedPoint amount, IMyInventoryItem item) { if (amount == 0) { return(true); } if (item == null) { return(false); } return(CanItemsBeAdded(amount, item.GetDefinitionId())); }
public void Adapt(IMyInventoryItem inventoryItem) { this.m_physItem = null; this.m_blockDef = null; MyObjectBuilder_PhysicalObject content = inventoryItem.Content as MyObjectBuilder_PhysicalObject; if (content != null) { this.Adapt(content.GetObjectId()); } else { this.Adapt(inventoryItem.GetDefinitionId()); } }
public void Adapt(IMyInventoryItem inventoryItem) { m_physItem = null; m_blockDef = null; var poob = inventoryItem.Content as MyObjectBuilder_PhysicalObject; if (poob != null) { Adapt(poob.GetObjectId()); } else { Adapt(inventoryItem.GetDefinitionId()); } }
public static void ConsumeItem(MyInventory inventory, IMyInventoryItem item, MyFixedPoint amount, long consumerEntityId = 0) { if (inventory == null || inventory.Owner == null) { return; } var msg = new ConsumeItemMsg() { OwnerEntityId = inventory.Owner.EntityId, InventoryId = inventory.InventoryIdx, ItemId = item.GetDefinitionId(), Amount = amount, ConsumerEntityId = consumerEntityId, }; Sync.Layer.SendMessageToServer(ref msg); }
public static MyToolbarItem CreateToolbarItemFromInventoryItem(IMyInventoryItem inventoryItem) { var itemDefinitionId = inventoryItem.GetDefinitionId(); MyDefinitionBase itemDefinition; if (MyDefinitionManager.Static.TryGetDefinition(itemDefinitionId, out itemDefinition)) { if ((itemDefinition is MyPhysicalItemDefinition) || (itemDefinition is MyCubeBlockDefinition)) { var itemBuilder = MyToolbarItemFactory.ObjectBuilderFromDefinition(itemDefinition); if (itemBuilder is MyObjectBuilder_ToolbarItemMedievalWeapon) { var meWeaponBuilder = itemBuilder as MyObjectBuilder_ToolbarItemMedievalWeapon; meWeaponBuilder.ItemId = inventoryItem.ItemId; } if (itemBuilder != null && !(itemBuilder is MyObjectBuilder_ToolbarItemEmpty)) { return MyToolbarItemFactory.CreateToolbarItem(itemBuilder); } } } return null; }
public override bool ItemsCanBeAdded(MyFixedPoint amount, IMyInventoryItem item) { if (amount == 0) return true; if (item == null) return false; if (Entity == null || Entity.MarkedForClose) return false; return CanItemsBeAdded(amount, item.GetDefinitionId()); }
public override bool ItemsCanBeAdded(MyFixedPoint amount, IMyInventoryItem item) { if (amount == 0) return true; if (item == null) return false; return CanItemsBeAdded(amount, item.GetDefinitionId()); }
public static void ConsumeItem(MyInventory inventory, IMyInventoryItem item, MyFixedPoint amount, long consumerEntityId = 0) { if(inventory == null || inventory.Owner == null) return; var msg = new ConsumeItemMsg() { OwnerEntityId = inventory.Owner.EntityId, InventoryId = inventory.InventoryIdx, ItemId = item.GetDefinitionId(), Amount = amount, ConsumerEntityId = consumerEntityId, }; Sync.Layer.SendMessageToServer(ref msg); }