public static bool On_StockManager_AreItemsAvailable(StockManager self, Vector3 pos, ItemID itemID, uint quantity, int material, ItemQuality itemQuality, bool atLeastQuality) { if (GnomanEmpire.Instance.Map.GetCell(pos).NavGraphNode == null) { return(false); } ItemsByQuality itemsByQuality = ((ItemsByQuality[])StockManager_ItemsByQuality_InStockItems.GetValue(self))[(int)itemID]; if (itemsByQuality == null) { return(false); } ItemsByMaterial itemsByMaterial = itemsByQuality.ItemsOfQuality(itemQuality, atLeastQuality); return(itemsByMaterial != null && itemsByMaterial.AreItemsAvailable(pos, quantity, material)); }