public static TraitsOfTile GetColorsFlags(this TraitsOfTile self) { return((self & TraitsOfTile.Red) | (self & TraitsOfTile.Orange) | (self & TraitsOfTile.Yellow) | (self & TraitsOfTile.Green) | (self & TraitsOfTile.Blue) | (self & TraitsOfTile.Violet)); }
public static TraitsOfTile GetBonusesFlags(this TraitsOfTile self) { return((self & TraitsOfTile.BonusHorizontal) | (self & TraitsOfTile.BonusVertical)); }
public static bool HasSameColor(this TraitsOfTile self, TraitsOfTile actualColorFlag) { return((!self.IsNone() && !actualColorFlag.IsNone()) && self.HasFlag(actualColorFlag.GetColorsFlags()));//&& ((self & actualColorFlag) == actualColorFlag) }
public static bool IsBonus(this TraitsOfTile self) { return(self.HasFlag(TraitsOfTile.BonusHorizontal) || self.HasFlag(TraitsOfTile.BonusVertical)); }
public static bool IsNone(this TraitsOfTile self) { return(self == TraitsOfTile.None); }
public static bool IsRock(this TraitsOfTile self) { return(self.HasFlag(TraitsOfTile.Rock)); }
public static bool IsTileMovable(this TraitsOfTile self) { return(!self.IsRock()); }
public static bool IsTileNotSelectable(this TraitsOfTile self) { return(self.HasFlag(TraitsOfTile.Diamond) || self.HasFlag(TraitsOfTile.Rock) || self == TraitsOfTile.None); }