public override void OnDiceRolled() { if (RollNumber == 1) { RollDice(3); Dealer.PrivateOverheadMessage(MessageType.Regular, 0x35, 1153391, string.Format("{0}\t{1}\t{2}", GetRoll(0), GetRoll(1), GetRoll(2)), Player.NetState); // *rolls the dice; they land on ~1_FIRST~ ~2_SECOND~ ~3_THIRD~* } else { Roll.Add(Utility.RandomMinMax(1, 6)); Dealer.PrivateOverheadMessage(MessageType.Regular, 0x35, RollNumber == 2 ? 1153633 : 1153634, RollNumber == 2 ? GetRoll(3).ToString() : GetRoll(4).ToString(), Player.NetState); // *rolls the fourth die: ~1_DIE4~* } if (RollNumber == 3) { int winnings = 0; if (IsFiveOfAKind()) { winnings = TotalBet * 80; } else if (IsFourOfAKind()) { winnings = TotalBet * 3; } else if (IsStraight()) { winnings = TotalBet * 2; } else if (IsFullHouse()) { winnings = (int)(TotalBet * 1.5); } else if (IsThreeOfAKind()) { winnings = TotalBet; } if (winnings > 0) { Winner = true; OnWin(); WinningTotal = winnings; PointsSystem.CasinoData.AwardPoints(Player, winnings); Dealer.PrivateOverheadMessage(MessageType.Regular, 0x35, 1153377, string.Format("{0}\t{1}", Player.Name, winnings.ToString(CultureInfo.GetCultureInfo("en-US"))), Player.NetState); // *pays out ~2_VAL~ chips to ~1_NAME~* } else { Dealer.PrivateOverheadMessage(MessageType.Regular, 0x35, 1153376, string.Format("{0}\t{1}", Player.Name, TotalBet.ToString(CultureInfo.GetCultureInfo("en-US"))), Player.NetState); // *rakes in ~1_NAME~'s ~2_VAL~-chip bet* } } else { _RollTimer = Timer.DelayCall(TimeSpan.FromSeconds(30), () => { Stage = GameStage.Rolling; BeginRollDice(); }); } Stage = GameStage.Results; RollNumber++; }