mirror of
https://gitlab.com/Kwoth/nadekobot.git
synced 2025-09-11 01:38:27 -04:00
Reorganizing module and submodule folders
This commit is contained in:
42
src/NadekoBot/Modules/Gambling/Wheel/WheelOfFortune.cs
Normal file
42
src/NadekoBot/Modules/Gambling/Wheel/WheelOfFortune.cs
Normal file
@@ -0,0 +1,42 @@
|
||||
#nullable disable
|
||||
namespace NadekoBot.Modules.Gambling.Common.WheelOfFortune;
|
||||
|
||||
public class WheelOfFortuneGame
|
||||
{
|
||||
private readonly NadekoRandom _rng;
|
||||
private readonly ICurrencyService _cs;
|
||||
private readonly long _bet;
|
||||
private readonly GamblingConfig _config;
|
||||
private readonly ulong _userId;
|
||||
|
||||
public WheelOfFortuneGame(
|
||||
ulong userId,
|
||||
long bet,
|
||||
GamblingConfig config,
|
||||
ICurrencyService cs)
|
||||
{
|
||||
_rng = new();
|
||||
_cs = cs;
|
||||
_bet = bet;
|
||||
_config = config;
|
||||
_userId = userId;
|
||||
}
|
||||
|
||||
public async Task<Result> SpinAsync()
|
||||
{
|
||||
var result = _rng.Next(0, _config.WheelOfFortune.Multipliers.Length);
|
||||
|
||||
var amount = (long)(_bet * _config.WheelOfFortune.Multipliers[result]);
|
||||
|
||||
if (amount > 0)
|
||||
await _cs.AddAsync(_userId, "Wheel Of Fortune - won", amount, true);
|
||||
|
||||
return new() { Index = result, Amount = amount };
|
||||
}
|
||||
|
||||
public class Result
|
||||
{
|
||||
public int Index { get; set; }
|
||||
public long Amount { get; set; }
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user