Added a minimum wager requirement to all games

This commit is contained in:
barelyprofessional
2026-02-08 12:02:24 -06:00
parent 2fb8f0bb89
commit 1901507c25
11 changed files with 92 additions and 1 deletions
@@ -97,6 +97,14 @@ public class BlackjackCommand : ICommand
return; return;
} }
if (wager == 0)
{
await botInstance.SendChatMessageAsync(
$"{user.FormatUsername()}, you have to wager more than {await wager.FormatKasinoCurrencyAsync()}", true,
autoDeleteAfter: cleanupDelay);
return;
}
// Check for existing incomplete blackjack game // Check for existing incomplete blackjack game
var existingGame = await _dbContext.Wagers var existingGame = await _dbContext.Wagers
.OrderBy(x => x.Id) .OrderBy(x => x.Id)
@@ -66,6 +66,15 @@ public class DiceCommand : ICommand
true, autoDeleteAfter: cleanupDelay); true, autoDeleteAfter: cleanupDelay);
return; return;
} }
if (wager == 0)
{
await botInstance.SendChatMessageAsync(
$"{user.FormatUsername()}, you have to wager more than {await wager.FormatKasinoCurrencyAsync()}", true,
autoDeleteAfter: cleanupDelay);
return;
}
var rolled = Money.GetRandomDouble(gambler); var rolled = Money.GetRandomDouble(gambler);
var colors = var colors =
await SettingsProvider.GetMultipleValuesAsync([ await SettingsProvider.GetMultipleValuesAsync([
@@ -66,6 +66,14 @@ public class GuessWhatNumberCommand : ICommand
return; return;
} }
if (wager == 0)
{
await botInstance.SendChatMessageAsync(
$"{user.FormatUsername()}, you have to wager more than {await wager.FormatKasinoCurrencyAsync()}", true,
autoDeleteAfter: cleanupDelay);
return;
}
var answer = Money.GetRandomNumber(gambler, 1, 10); var answer = Money.GetRandomNumber(gambler, 1, 10);
decimal newBalance; decimal newBalance;
var colors = var colors =
@@ -93,6 +93,14 @@ public class KenoCommand : ICommand
return; return;
} }
if (wager == 0)
{
await botInstance.SendChatMessageAsync(
$"{user.FormatUsername()}, you have to wager more than {await wager.FormatKasinoCurrencyAsync()}", true,
autoDeleteAfter: cleanupDelay);
return;
}
if (numbers is < 1 or > 10) //if user picks invalid numbers if (numbers is < 1 or > 10) //if user picks invalid numbers
{ {
await botInstance.SendChatMessageAsync($"{user.FormatUsername()}, you can only pick numbers from 1 - 10", await botInstance.SendChatMessageAsync($"{user.FormatUsername()}, you can only pick numbers from 1 - 10",
@@ -101,6 +101,15 @@ public class LambchopCommand : ICommand
true, autoDeleteAfter: cleanupDelay); true, autoDeleteAfter: cleanupDelay);
return; return;
} }
if (wager == 0)
{
await botInstance.SendChatMessageAsync(
$"{user.FormatUsername()}, you have to wager more than {await wager.FormatKasinoCurrencyAsync()}", true,
autoDeleteAfter: cleanupDelay);
return;
}
var colors = var colors =
await SettingsProvider.GetMultipleValuesAsync([ await SettingsProvider.GetMultipleValuesAsync([
BuiltIn.Keys.KiwiFarmsGreenColor, BuiltIn.Keys.KiwiFarmsRedColor BuiltIn.Keys.KiwiFarmsGreenColor, BuiltIn.Keys.KiwiFarmsRedColor
@@ -73,6 +73,14 @@ public class LimboCommand : ICommand
return; return;
} }
if (wager == 0)
{
await botInstance.SendChatMessageAsync(
$"{user.FormatUsername()}, you have to wager more than {await wager.FormatKasinoCurrencyAsync()}", true,
autoDeleteAfter: cleanupDelay);
return;
}
if (!arguments.TryGetValue("number", out var number)) if (!arguments.TryGetValue("number", out var number))
{ {
limboNumber = 2; limboNumber = 2;
@@ -86,7 +86,15 @@ public class MinesCommand : ICommand
if (gambler.Balance < wager) if (gambler.Balance < wager)
{ {
await botInstance.SendChatMessageAsync( await botInstance.SendChatMessageAsync(
$"{user.FormatUsername()}, your balance is too low. Balance: {gambler.Balance.FormatKasinoCurrencyAsync()}", true, autoDeleteAfter: cleanupDelay); $"{user.FormatUsername()}, your balance is too low. Balance: {await gambler.Balance.FormatKasinoCurrencyAsync()}", true, autoDeleteAfter: cleanupDelay);
return;
}
if (wager == 0)
{
await botInstance.SendChatMessageAsync(
$"{user.FormatUsername()}, you have to wager more than {await wager.FormatKasinoCurrencyAsync()}", true,
autoDeleteAfter: cleanupDelay);
return; return;
} }
@@ -82,6 +82,14 @@ public class Planes : ICommand
return; return;
} }
if (wager == 0)
{
await botInstance.SendChatMessageAsync(
$"{user.FormatUsername()}, you have to wager more than {await wager.FormatKasinoCurrencyAsync()}", true,
autoDeleteAfter: cleanupDelay);
return;
}
if (HOUSE_EDGE < 1) if (HOUSE_EDGE < 1)
{ {
if (Money.GetRandomDouble(gambler, 1) > (double)HOUSE_EDGE) if (Money.GetRandomDouble(gambler, 1) > (double)HOUSE_EDGE)
@@ -153,6 +153,14 @@ public class PlinkoCommand : ICommand
return; return;
} }
if (wager == 0)
{
await botInstance.SendChatMessageAsync(
$"{user.FormatUsername()}, you have to wager more than {await wager.FormatKasinoCurrencyAsync()}", true,
autoDeleteAfter: cleanupDelay);
return;
}
List<PlinkoBall> ballsNotInPlay = new List<PlinkoBall>(); List<PlinkoBall> ballsNotInPlay = new List<PlinkoBall>();
List<PlinkoBall> ballsInPlay = new List<PlinkoBall>(); List<PlinkoBall> ballsInPlay = new List<PlinkoBall>();
for (int i = 0; i < numberOfBalls; i++) for (int i = 0; i < numberOfBalls; i++)
@@ -147,6 +147,14 @@ public class RouletteCommand : ICommand
return; return;
} }
if (wager == 0)
{
await botInstance.SendChatMessageAsync(
$"{user.FormatUsername()}, you have to wager more than {await wager.FormatKasinoCurrencyAsync()}", true,
autoDeleteAfter: TimeSpan.FromSeconds(10));
return;
}
decimal wagerLimit = 25; decimal wagerLimit = 25;
if (wager > wagerLimit) if (wager > wagerLimit)
{ {
@@ -104,6 +104,15 @@ public class WheelCommand : ICommand
true, autoDeleteAfter: cleanupDelay); true, autoDeleteAfter: cleanupDelay);
return; return;
} }
if (wager == 0)
{
await botInstance.SendChatMessageAsync(
$"{user.FormatUsername()}, you have to wager more than {await wager.FormatKasinoCurrencyAsync()}", true,
autoDeleteAfter: cleanupDelay);
return;
}
var colors = var colors =
await SettingsProvider.GetMultipleValuesAsync([ await SettingsProvider.GetMultipleValuesAsync([
BuiltIn.Keys.KiwiFarmsGreenColor, BuiltIn.Keys.KiwiFarmsRedColor BuiltIn.Keys.KiwiFarmsGreenColor, BuiltIn.Keys.KiwiFarmsRedColor