private static string GetPocketIcon(RoulettePocketColor color) { return(color switch { RoulettePocketColor.Green => "🟩", RoulettePocketColor.Red => "🟥", RoulettePocketColor.Black => "⬛", //"🔳", _ => throw new Exception("Unknown color") });
// GREEN // 0 // REDS // 32, 19, 21, 25, 34, 27, 36, 30, 23, 5, 16, 1, 14, 9, 18, 7, 12, 3 // BLACKS // 15, 4, 2, 17, 6, 13, 11, 8, 10, 24, 33, 20, 31, 22, 29, 28, 35, 26 public static RouletteResult Next(ArcadeUser user, RouletteBetMode mode, long wager) { int index = RandomProvider.Instance.Next(0, 37); int pocket = Pockets[index]; RoulettePocketColor color = GetColor(index); bool isSuccess = JudgeBet(mode, index); RouletteResultFlag flag = isSuccess ? RouletteResultFlag.Win : RouletteResultFlag.Lose; float multiplier = GetPayout(mode) + 1; long reward = GetReward(wager, mode); return(new RouletteResult { Color = color, Index = index, Pocket = pocket, Mode = mode, Wager = wager, IsSuccess = isSuccess, Flag = flag, Multiplier = multiplier, Reward = reward }); }