diff --git a/EXILED/Exiled.API/Features/Warhead.cs b/EXILED/Exiled.API/Features/Warhead.cs index 687b4fb035..22ccf2207e 100644 --- a/EXILED/Exiled.API/Features/Warhead.cs +++ b/EXILED/Exiled.API/Features/Warhead.cs @@ -186,21 +186,59 @@ public static void Start() Controller.StartDetonation(false); } + /// + /// Starts the warhead countdown. + /// + /// Indicates whether the warhead is started automatically. + /// If , subtitles will not be displayed during the countdown. + /// The of the entity that triggered the warhead. + public static void Start(bool isAutomatic, bool suppressSubtitles = false, Player trigger = null) + { + Controller.InstantPrepare(); + Controller.StartDetonation(isAutomatic, suppressSubtitles, trigger == null ? null : trigger.ReferenceHub); + } + /// /// Stops the warhead. /// public static void Stop() => Controller.CancelDetonation(); + /// + /// Stops the warhead detonation process. + /// + /// + /// The who is disabling the warhead. + /// If , the warhead will be stopped without a specific player reference. + /// + public static void Stop(Player disabler) => Controller.CancelDetonation(disabler.ReferenceHub); + /// /// Detonates the warhead. /// public static void Detonate() => Controller.ForceTime(0f); + /// + /// Detonates the warhead after the specified remaining time. + /// + /// + /// The time in seconds until the warhead detonates. + /// If set to , the warhead will detonate immediately. + /// + public static void Detonate(float remaining) => Controller.ForceTime(remaining); + /// /// Shake all players, like if the warhead has been detonated. /// public static void Shake() => Controller.RpcShake(false); + /// + /// Shake all players, like if the warhead has been detonated. + /// + /// + /// If , the shake effect will be archived. + /// + public static void Shake(bool archieve) => Controller.RpcShake(archieve); + /// /// Gets whether the provided position will be detonated by the alpha warhead. ///