Server.Items.GamblingStone.OnDoubleClick C# (CSharp) Method

OnDoubleClick() public method

public OnDoubleClick ( Mobile from ) : void
from Mobile
return void
		public override void OnDoubleClick( Mobile from )
		{
			Container pack = from.Backpack;

			if( pack != null && pack.ConsumeTotal( typeof( Gold ), 250 ) )
			{
				m_GamblePot += 150;
				InvalidateProperties();

				int roll = Utility.Random( 1200 );

				if( roll == 0 ) // Jackpot
				{
					int maxCheck = 1000000;

					from.SendMessage( 0x35, "You win the {0}gp jackpot!", m_GamblePot );

					while( m_GamblePot > maxCheck )
					{
						from.AddToBackpack( new BankCheck( maxCheck ) );

						m_GamblePot -= maxCheck;
					}

					from.AddToBackpack( new BankCheck( m_GamblePot ) );

					m_GamblePot = 2500;
				}
				else if( roll <= 20 ) // Chance for a regbag
				{
					from.SendMessage( 0x35, "You win a bag of reagents!" );
					from.AddToBackpack( new BagOfReagents( 50 ) );
				}
				else if( roll <= 40 ) // Chance for gold
				{
					from.SendMessage( 0x35, "You win 1500gp!" );
					from.AddToBackpack( new BankCheck( 1500 ) );
				}
				else if( roll <= 100 ) // Another chance for gold
				{
					from.SendMessage( 0x35, "You win 1000gp!" );
					from.AddToBackpack( new BankCheck( 1000 ) );
				}
				else // Loser!
				{
					from.SendMessage( 0x22, "You lose!" );
				}
			}
			else
			{
				from.SendMessage( 0x22, "You need at least 250gp in your backpack to use this." );
			}
		}