Exemple #1
0
        public static TillSoilJob FindTillSoilJobForSeed(FarmManager farmManager, Character character)
        {
            TillSoilJob tillSoilJob = farmManager.FindTillSoilJob(character);

            if (tillSoilJob == null)
            {
                return(null);
            }
            Vector3     position    = tillSoilJob.Position;
            Map         map         = GnomanEmpire.Instance.Map;
            MapCell     cell        = map.GetCell(position);
            Designation designation = cell.Designation;
            Farm        farm        = designation as Farm;

            if (farm != null)
            {
                int          seedMaterial = farm.SeedMaterial;
                StockManager stockManager = GnomanEmpire.Instance.Fortress.StockManager;
                if (stockManager.FindClosestItem(position, ItemID.Seed, seedMaterial) != null)
                {
                    return(tillSoilJob);
                }
            }
            tillSoilJob.Cancel();
            return(null);
        }