diff --git a/Content.Shared/EntityTable/EntitySelectors/EntSelector.cs b/Content.Shared/EntityTable/EntitySelectors/EntSelector.cs index eea4dd85a7..8443ec2c06 100644 --- a/Content.Shared/EntityTable/EntitySelectors/EntSelector.cs +++ b/Content.Shared/EntityTable/EntitySelectors/EntSelector.cs @@ -20,7 +20,7 @@ public sealed partial class EntSelector : EntityTableSelector IEntityManager entMan, IPrototypeManager proto) { - var num = (int) Math.Round(Amount.Get(rand, entMan, proto)); + var num = Amount.Get(rand); for (var i = 0; i < num; i++) { yield return Id; diff --git a/Content.Shared/EntityTable/EntitySelectors/EntityTableSelector.cs b/Content.Shared/EntityTable/EntitySelectors/EntityTableSelector.cs index 2533f17dc5..d0a7a4d578 100644 --- a/Content.Shared/EntityTable/EntitySelectors/EntityTableSelector.cs +++ b/Content.Shared/EntityTable/EntitySelectors/EntityTableSelector.cs @@ -30,7 +30,7 @@ public abstract partial class EntityTableSelector IEntityManager entMan, IPrototypeManager proto) { - var rolls = Rolls.Get(rand, entMan, proto); + var rolls = Rolls.Get(rand); for (var i = 0; i < rolls; i++) { if (!rand.Prob(Prob)) diff --git a/Content.Shared/EntityTable/ValueSelector/ConstantNumberSelector.cs b/Content.Shared/EntityTable/ValueSelector/ConstantNumberSelector.cs index 0baf6785f4..a1a7e4ac58 100644 --- a/Content.Shared/EntityTable/ValueSelector/ConstantNumberSelector.cs +++ b/Content.Shared/EntityTable/ValueSelector/ConstantNumberSelector.cs @@ -1,5 +1,3 @@ -using Robust.Shared.Prototypes; - namespace Content.Shared.EntityTable.ValueSelector; /// @@ -8,14 +6,14 @@ namespace Content.Shared.EntityTable.ValueSelector; public sealed partial class ConstantNumberSelector : NumberSelector { [DataField] - public float Value = 1; + public int Value = 1; - public ConstantNumberSelector(float value) + public ConstantNumberSelector(int value) { Value = value; } - public override float Get(System.Random rand, IEntityManager entMan, IPrototypeManager proto) + public override int Get(System.Random rand) { return Value; } diff --git a/Content.Shared/EntityTable/ValueSelector/NumberSelector.cs b/Content.Shared/EntityTable/ValueSelector/NumberSelector.cs index 8a7743c9dd..763578a384 100644 --- a/Content.Shared/EntityTable/ValueSelector/NumberSelector.cs +++ b/Content.Shared/EntityTable/ValueSelector/NumberSelector.cs @@ -1,6 +1,5 @@ using Content.Shared.EntityTable.EntitySelectors; using JetBrains.Annotations; -using Robust.Shared.Prototypes; namespace Content.Shared.EntityTable.ValueSelector; @@ -10,7 +9,5 @@ namespace Content.Shared.EntityTable.ValueSelector; [ImplicitDataDefinitionForInheritors, UsedImplicitly(ImplicitUseTargetFlags.WithInheritors)] public abstract partial class NumberSelector { - public abstract float Get(System.Random rand, - IEntityManager entMan, - IPrototypeManager proto); + public abstract int Get(System.Random rand); } diff --git a/Content.Shared/EntityTable/ValueSelector/RangeNumberSelector.cs b/Content.Shared/EntityTable/ValueSelector/RangeNumberSelector.cs index e8356fcbb7..b84736d1ee 100644 --- a/Content.Shared/EntityTable/ValueSelector/RangeNumberSelector.cs +++ b/Content.Shared/EntityTable/ValueSelector/RangeNumberSelector.cs @@ -1,7 +1,3 @@ -using System.Numerics; -using Robust.Shared.Prototypes; -using Robust.Shared.Random; - namespace Content.Shared.EntityTable.ValueSelector; /// @@ -10,10 +6,12 @@ namespace Content.Shared.EntityTable.ValueSelector; public sealed partial class RangeNumberSelector : NumberSelector { [DataField] - public Vector2 Range = new(1, 1); + public Vector2i Range = new(1, 1); - public override float Get(System.Random rand, IEntityManager entMan, IPrototypeManager proto) + public override int Get(System.Random rand) { - return rand.NextFloat(Range.X, Range.Y + 1); + // rand.Next() is inclusive on the first number and exclusive on the second number, + // so we add 1 to the second number. + return rand.Next(Range.X, Range.Y + 1); } }