Adds signal control to portable generators (#24157)
* added signal control to portable generators * added documentation * Discard changes to Content.Server/Radio/EntitySystems/HeadsetSystem.cs * added DeviceNetworkComponent and WirelessNetworkConnectionComponent to generator prototype * made GeneratorSignalControlComponent nicer * implemented auto-revving * added back necessary dependency * can't send do-after event manually * repeat now works with auto revving * fixed * removed vv * stopping generating when it is revving now makes it stop revving * Update Content.Shared/Power/Generator/ActiveGeneratorRevvingComponent.cs Co-authored-by: Kara <lunarautomaton6@gmail.com> * used resolve instead of TryComp --------- Co-authored-by: Julian Giebel <juliangiebel@live.de> Co-authored-by: Kara <lunarautomaton6@gmail.com>
This commit is contained in:
@@ -135,6 +135,14 @@ public sealed partial class GeneratorWindow : FancyWindow
|
||||
|
||||
private bool TryGetStartProgress(out float progress)
|
||||
{
|
||||
// Try to check progress of auto-revving first
|
||||
if (_entityManager.TryGetComponent<ActiveGeneratorRevvingComponent>(_entity, out var activeGeneratorRevvingComponent) && _entityManager.TryGetComponent<PortableGeneratorComponent>(_entity, out var portableGeneratorComponent))
|
||||
{
|
||||
var calculatedProgress = activeGeneratorRevvingComponent.CurrentTime / portableGeneratorComponent.StartTime;
|
||||
progress = (float) calculatedProgress;
|
||||
return true;
|
||||
}
|
||||
|
||||
var doAfterSystem = _entityManager.EntitySysManager.GetEntitySystem<DoAfterSystem>();
|
||||
return doAfterSystem.TryFindActiveDoAfter<GeneratorStartedEvent>(_entity, out _, out _, out progress);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user