public bool IsPossibleWithout(HolesSummarySlimRecord record) { var ranks = RecordString.Substring(0, 5); var holes = record.RecordString.Substring(0, 2); var totalRanks = (ranks + holes); var totalRankCount = new Dictionary <char, int>(); foreach (var rank in totalRanks) { if (!totalRankCount.ContainsKey(rank)) { totalRankCount.Add(rank, 0); } totalRankCount[rank]++; } return(totalRankCount.Values.Max() <= 4); }
public bool IsPossibleWith(HolesSummarySlimRecord record) { var ranks = RecordString.Substring(0, 5); var sameColor = RecordString.Last(); var hole1 = record.RecordString[0]; var hole2 = record.RecordString[1]; var holesSameColor = record.RecordString[2]; bool colorPossible = holesSameColor == 'S' || sameColor == 'N'; if (!colorPossible) { return(false); } if (hole1 != hole2) { return(ranks.Contains(hole1) && ranks.Contains(hole2)); } else { return(ranks.Count(r => r == hole1) >= 2); } }
void UpdateRecordBlocks_BlockGet() { FirebaseDatabase.DefaultInstance.GetReference("records"). Child(_user.UserId).Child("records").GetValueAsync().ContinueWith(task => { if (task.IsFaulted) { Debug.LogError("Error!!"); } else if (task.IsCompleted) { DataSnapshot snap = task.Result; int i = 0; foreach (var item in snap.Children) { RecordString bl = new RecordString(); bl.enemyname = item.Child("enemyid").Value.ToString(); bl.result = item.Child("result").Value.ToString(); _RecordBlockStrings.Add(bl); i++; } } }); }