Make Loadout MinLimit not count failed attempts (#29264)

Loadout MinLimit doesn't count failed attempts
This commit is contained in:
Tayrtahn
2024-06-20 20:15:37 -04:00
committed by GitHub
parent a3ffe22e66
commit 831d962e5a
2 changed files with 10 additions and 4 deletions

View File

@@ -193,9 +193,14 @@ public sealed partial class RoleLoadout : IEquatable<RoleLoadout>
if (groupProto.MinLimit > 0) if (groupProto.MinLimit > 0)
{ {
// Apply any loadouts we can. // Apply any loadouts we can.
for (var j = 0; j < Math.Min(groupProto.MinLimit, groupProto.Loadouts.Count); j++) var addedCount = 0;
foreach (var protoId in groupProto.Loadouts)
{ {
if (!protoManager.TryIndex(groupProto.Loadouts[j], out var loadoutProto)) // Reached the limit, time to stop
if (addedCount >= groupProto.MinLimit)
break;
if (!protoManager.TryIndex(protoId, out var loadoutProto))
continue; continue;
var defaultLoadout = new Loadout() var defaultLoadout = new Loadout()
@@ -209,6 +214,7 @@ public sealed partial class RoleLoadout : IEquatable<RoleLoadout>
loadouts.Add(defaultLoadout); loadouts.Add(defaultLoadout);
Apply(loadoutProto); Apply(loadoutProto);
addedCount++;
} }
} }
} }

View File

@@ -38,8 +38,8 @@
- type: loadoutGroup - type: loadoutGroup
id: Survival id: Survival
name: loadout-group-survival-basic name: loadout-group-survival-basic
minLimit: 2 minLimit: 1
maxLimit: 2 maxLimit: 1
hidden: true hidden: true
loadouts: loadouts:
- EmergencyNitrogen - EmergencyNitrogen