public bool MeetsCriteria(Farmer who, string locationName, WaterType waterType, SDate date, Weather weather, int time, int fishingLevel, int?mineLevel)
 {
     return((this.InvertLocations ^ (this.Location == null || locationName == this.Location)) &&
            (this.WaterType & waterType) != 0 &&
            (this.Season & date.GetSeason()) != 0 &&
            (this.Weather & weather) != 0 &&
            this.FishingLevel <= fishingLevel &&
            (this.MineLevel == null || this.MineLevel == mineLevel));
 }
Beispiel #2
0
 public bool MeetsCriteria(int fish, WaterType waterType, SDate date, Weather weather, int time, int level)
 {
     // Note: HasFlag won't work because these are checking for an intersection, not for a single bit
     return((this.WaterType & waterType) > 0 &&
            (this.Season & date.GetSeason()) > 0 &&
            (this.Weather & weather) > 0 &&
            level >= this.MinLevel &&
            this.Times.Any(t => time >= t.Start && time < t.Finish));
 }