Example #1
0
        public static int Compare(ISibala firstRoll, ISibala secondRoll)
        {
            if (IsSameType(firstRoll, secondRoll))
            {
                if (IsSameColor(firstRoll))
                {
                    return(_samecolorlookup[firstRoll.Point] - _samecolorlookup[secondRoll.Point]);
                }
                if (firstRoll.OutputType == EnumOutputType.NPoints)
                {
                    if (firstRoll.Point == secondRoll.Point)
                    {
                        return(firstRoll.MaxPoint - secondRoll.MaxPoint);
                    }
                    return(firstRoll.Point - secondRoll.Point);
                }

                return(0);
            }
            return(firstRoll.OutputType - secondRoll.OutputType);
        }
Example #2
0
 private static bool IsSameType(ISibala x, ISibala y)
 {
     return(x.OutputType == y.OutputType);
 }
Example #3
0
 private static bool IsSameColor(ISibala x)
 {
     return(x.OutputType == EnumOutputType.SameColor);
 }