public override IEnumerator Recalculating() { MatrixFloat walkabilityMap = _context.Walkability; foreach (Position cellMiddle in _waterMap.AllCellMiddles()) { if (Math.Abs(_waterMap.Get(cellMiddle) - WaterIngredientGenerator.Ground) < 0.01f) { Values.Set(cellMiddle, 1f); walkabilityMap.Set(cellMiddle, 1f); } else { Values.Set(cellMiddle, 0f); walkabilityMap.Set(cellMiddle, 0f); } } yield return(new WaitForSeconds(0.1f)); }