void ClearRefinery(IMyRefinery refinery) { for (int i = 0; i < refinery.InventoryCount; ++i) { ClearInventory(refinery.GetInventory(i), refinery.CubeGrid); } }
public RefineryWrapper(IMyRefinery refinery) { Refinery = refinery; Inventory = refinery.GetInventory(0); var items = Inventory.GetItems(); Item = items.Count > 0 ? items[0] : null; Amount = Item != null ? (float)Item.Amount : 0.0f; }
float CalculateProgressForRefinery(IMyRefinery block) { if (!block.IsAlive()) { return(float.NaN); } IMyInventory inv = block.GetInventory(0); if ((double)inv.CurrentVolume > 0) { return((float)(1.0 - (double)inv.CurrentVolume / (double)inv.MaxVolume)); } else { return(float.NaN); } }