Cleanup warnings in `BasicStationEventSchedulerSystem` (#37818)

Cleanup 4 warnings in BasicStationEventSchedulerSystem
This commit is contained in:
Tayrtahn 2025-05-25 14:27:47 -04:00 committed by Quanteey
parent a4b93bcd8a
commit b70e76c597
1 changed files with 14 additions and 9 deletions

View File

@ -113,6 +113,7 @@ namespace Content.Server.StationEvents
private EntityTableSystem? _entityTable;
private IComponentFactory? _compFac;
private IRobustRandom? _random;
private IPrototypeManager? _protoMan;
/// <summary>
/// Estimates the expected number of times an event will run over the course of X rounds, taking into account weights and
@ -129,12 +130,13 @@ namespace Content.Server.StationEvents
/// to even exist) so I think it's fine.
/// </remarks>
[CommandImplementation("simulate")]
public IEnumerable<(string, float)> Simulate([CommandArgument] Prototype<EntityPrototype> eventSchedulerProto, [CommandArgument] int rounds, [CommandArgument] int playerCount, [CommandArgument] float roundEndMean, [CommandArgument] float roundEndStdDev)
public IEnumerable<(string, float)> Simulate([CommandArgument] EntProtoId eventSchedulerProto, [CommandArgument] int rounds, [CommandArgument] int playerCount, [CommandArgument] float roundEndMean, [CommandArgument] float roundEndStdDev)
{
_stationEvent ??= GetSys<EventManagerSystem>();
_entityTable ??= GetSys<EntityTableSystem>();
_compFac ??= IoCManager.Resolve<IComponentFactory>();
_random ??= IoCManager.Resolve<IRobustRandom>();
_protoMan ??= IoCManager.Resolve<IPrototypeManager>();
var occurrences = new Dictionary<string, int>();
@ -143,7 +145,7 @@ namespace Content.Server.StationEvents
occurrences.Add(ev.Key.ID, 0);
}
eventSchedulerProto.Deconstruct(out EntityPrototype eventScheduler);
var eventScheduler = _protoMan.Index(eventSchedulerProto);
if (!eventScheduler.TryGetComponent<BasicStationEventSchedulerComponent>(out var basicScheduler, _compFac))
{
@ -178,16 +180,17 @@ namespace Content.Server.StationEvents
}
}
return occurrences.Select(p => (p.Key, (float) p.Value)).OrderByDescending(p => p.Item2);
return occurrences.Select(p => (p.Key, (float)p.Value)).OrderByDescending(p => p.Item2);
}
[CommandImplementation("lsprob")]
public IEnumerable<(string, float)> LsProb([CommandArgument] Prototype<EntityPrototype> eventSchedulerProto)
public IEnumerable<(string, float)> LsProb([CommandArgument] EntProtoId eventSchedulerProto)
{
_compFac ??= IoCManager.Resolve<IComponentFactory>();
_stationEvent ??= GetSys<EventManagerSystem>();
_protoMan ??= IoCManager.Resolve<IPrototypeManager>();
eventSchedulerProto.Deconstruct(out EntityPrototype eventScheduler);
var eventScheduler = _protoMan.Index(eventSchedulerProto);
if (!eventScheduler.TryGetComponent<BasicStationEventSchedulerComponent>(out var basicScheduler, _compFac))
yield break;
@ -205,12 +208,13 @@ namespace Content.Server.StationEvents
}
[CommandImplementation("lsprobtheoretical")]
public IEnumerable<(string, float)> LsProbTime([CommandArgument] Prototype<EntityPrototype> eventSchedulerProto, [CommandArgument] int playerCount, [CommandArgument] float time)
public IEnumerable<(string, float)> LsProbTime([CommandArgument] EntProtoId eventSchedulerProto, [CommandArgument] int playerCount, [CommandArgument] float time)
{
_compFac ??= IoCManager.Resolve<IComponentFactory>();
_stationEvent ??= GetSys<EventManagerSystem>();
_protoMan ??= IoCManager.Resolve<IPrototypeManager>();
eventSchedulerProto.Deconstruct(out EntityPrototype eventScheduler);
var eventScheduler = _protoMan.Index(eventSchedulerProto);
if (!eventScheduler.TryGetComponent<BasicStationEventSchedulerComponent>(out var basicScheduler, _compFac))
yield break;
@ -232,12 +236,13 @@ namespace Content.Server.StationEvents
}
[CommandImplementation("prob")]
public float Prob([CommandArgument] Prototype<EntityPrototype> eventSchedulerProto, [CommandArgument] string eventId)
public float Prob([CommandArgument] EntProtoId eventSchedulerProto, [CommandArgument] string eventId)
{
_compFac ??= IoCManager.Resolve<IComponentFactory>();
_stationEvent ??= GetSys<EventManagerSystem>();
_protoMan ??= IoCManager.Resolve<IPrototypeManager>();
eventSchedulerProto.Deconstruct(out EntityPrototype eventScheduler);
var eventScheduler = _protoMan.Index(eventSchedulerProto);
if (!eventScheduler.TryGetComponent<BasicStationEventSchedulerComponent>(out var basicScheduler, _compFac))
return 0f;