mirror of
https://gitlab.com/Kwoth/nadekobot.git
synced 2025-09-10 09:18:27 -04:00
Added betroll bettest, fixed a bug which caused betroll to have very low payout
This commit is contained in:
@@ -25,20 +25,6 @@ public class NadekoRandom : Random
|
||||
_rng.GetBytes(bytes);
|
||||
return Math.Abs(BitConverter.ToInt32(bytes, 0)) % maxValue;
|
||||
}
|
||||
|
||||
public byte Next(byte minValue, byte maxValue)
|
||||
{
|
||||
if (minValue > maxValue)
|
||||
throw new ArgumentOutOfRangeException(nameof(maxValue));
|
||||
|
||||
if (minValue == maxValue)
|
||||
return minValue;
|
||||
|
||||
var bytes = new byte[1];
|
||||
_rng.GetBytes(bytes);
|
||||
|
||||
return (byte)((bytes[0] % (maxValue - minValue)) + minValue);
|
||||
}
|
||||
|
||||
public override int Next(int minValue, int maxValue)
|
||||
{
|
||||
|
@@ -12,7 +12,7 @@ public sealed class BetflipGame
|
||||
|
||||
public BetflipResult Flip(byte guess, decimal amount)
|
||||
{
|
||||
var side = _rng.Next(0, 2);
|
||||
var side = (byte)_rng.Next(0, 2);
|
||||
if (side == guess)
|
||||
{
|
||||
return new BetflipResult()
|
||||
|
@@ -13,7 +13,7 @@ public sealed class BetrollGame
|
||||
|
||||
public BetrollResult Roll(decimal amount = 0)
|
||||
{
|
||||
var roll = _rng.Next(0, 101);
|
||||
var roll = _rng.Next(1, 101);
|
||||
|
||||
for (var i = 0; i < _thresholdPairs.Length; i++)
|
||||
{
|
||||
|
@@ -8,9 +8,9 @@ public class SlotGame
|
||||
{
|
||||
var rolls = new[]
|
||||
{
|
||||
_rng.Next(0, 6),
|
||||
_rng.Next(0, 6),
|
||||
_rng.Next(0, 6)
|
||||
(byte)_rng.Next(0, 6),
|
||||
(byte)_rng.Next(0, 6),
|
||||
(byte)_rng.Next(0, 6)
|
||||
};
|
||||
|
||||
ref var a = ref rolls[0];
|
||||
|
@@ -875,11 +875,12 @@ public partial class Gambling : GamblingModule<GamblingService>
|
||||
public enum GambleTestTarget
|
||||
{
|
||||
Slot,
|
||||
Betroll,
|
||||
Betflip,
|
||||
BetflipT,
|
||||
BetDraw,
|
||||
BetDrawHL,
|
||||
BetDrawRB,
|
||||
Betflip,
|
||||
BetflipT,
|
||||
Lula,
|
||||
Rps,
|
||||
}
|
||||
@@ -920,6 +921,7 @@ public partial class Gambling : GamblingModule<GamblingService>
|
||||
GambleTestTarget.BetflipT => (await _gs.BetFlipAsync(ctx.User.Id, 0, 1)).AsT0.Multiplier,
|
||||
GambleTestTarget.Lula => (await _gs.LulaAsync(ctx.User.Id, 0)).AsT0.Multiplier,
|
||||
GambleTestTarget.Rps => (await _gs.RpsAsync(ctx.User.Id, 0, (byte)(i % 3))).AsT0.Multiplier,
|
||||
GambleTestTarget.Betroll => (await _gs.BetRollAsync(ctx.User.Id, 0)).AsT0.Multiplier,
|
||||
_ => throw new ArgumentOutOfRangeException(nameof(target))
|
||||
};
|
||||
|
||||
|
Reference in New Issue
Block a user