public static Dictionary<string, string> VictoryCard(int priceLimit, ISupply supply, string format = "Gain {0}", bool allowNullAction = false) { var buyableCards = from c in supply.AvailableCards where (c.Price <= priceLimit) && (supply.NumAvailable(c.ToString()) > 0) && (c is ITreasureCard) orderby c.Price select c; return GetActionsHelper(format, allowNullAction, buyableCards); }