* Implemented the thing
* Made requested changes
[ViewVariables(VVAccess.ReadWrite)]
public int Timer = 300;
+ /// <summary>
+ /// If the nuke is disarmed, this sets the minimum amount of time the timer can have.
+ /// The remaining time will reset to this value if it is below it.
+ /// </summary>
+ [DataField]
+ public int MinimumTime = 180;
+
/// <summary>
/// How long until the bomb can arm again after deactivation.
/// Used to prevent announcements spam.
_sound.PlayGlobalOnStation(uid, _audio.GetSound(component.DisarmSound));
_sound.StopStationEventMusic(uid, StationEventMusicType.Nuke);
+ // reset nuke remaining time to either itself or the minimum time, whichever is higher
+ component.RemainingTime = Math.Max(component.RemainingTime, component.MinimumTime);
+
// disable sound and reset it
component.PlayedAlertSound = false;
component.AlertAudioStream = _audio.Stop(component.AlertAudioStream);