public override bool CanExecute(AgricolaPlayer player, Data.GameActionData data) { if (!base.CanExecute(player, data)) { return(false); } var occupationData = (OccupationActionData)data; if (occupationData.FamilyGrowth) { if (((AgricolaGame)player.Game).CurrentRound < 5) { return(false); } } else { if (!occupationData.Id.HasValue) { return(false); } if (!ActionService.CanPlayOccupation(player, data.ActionId, occupationData.Id.Value)) { return(false); } } return(true); }
public override bool CanExecute(AgricolaPlayer player, Data.GameActionData data) { var occupationData = (OccupationActionData)data; if (!occupationData.Id.HasValue) { return(true); } if (!ActionService.CanPlayOccupation(player, data.ActionId, occupationData.Id.Value)) { return(false); } return(true); }