mirror of
https://github.com/DeltaV-Station/Delta-v.git
synced 2026-09-29 23:57:29 +00:00
* Fixed nukie behavior check firing early * Fixed ZombieOutbreak adding ramping schedulers * RampingSchedulers now look at when they were added for keypoint times * Xenoborgs no longer has a RampingScheduler roundstart. * Added number of cuffed hands check * Use GameRule activation time. * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * silly compiler flag * Apply suggestions from code review Co-authored-by: Vanessa <908648+ShepardToTheStars@users.noreply.github.com> Signed-off-by: Vanessa <908648+ShepardToTheStars@users.noreply.github.com> * Fix other locale usages * silly me * PR feedback --------- Signed-off-by: Vanessa <908648+ShepardToTheStars@users.noreply.github.com> Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
60 lines
2.0 KiB
C#
60 lines
2.0 KiB
C#
using Content.Server.RoundEnd; // DeltaV
|
|
using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom;
|
|
|
|
namespace Content.Server.GameTicking.Rules.Components;
|
|
|
|
[RegisterComponent, Access(typeof(XenoborgsRuleSystem))]
|
|
[AutoGenerateComponentPause]
|
|
public sealed partial class XenoborgsRuleComponent : Component
|
|
{
|
|
/// <summary>
|
|
/// When the round will next check for round end.
|
|
/// </summary>
|
|
[DataField(customTypeSerializer: typeof(TimeOffsetSerializer))]
|
|
[AutoPausedField]
|
|
public TimeSpan? NextRoundEndCheck;
|
|
|
|
/// <summary>
|
|
/// The amount of time between each check for the end of the round.
|
|
/// </summary>
|
|
[DataField]
|
|
public TimeSpan EndCheckDelay = TimeSpan.FromSeconds(15);
|
|
|
|
/// <summary>
|
|
/// After this amount of the crew become xenoborgs, the shuttle will be automatically called.
|
|
/// </summary>
|
|
[DataField]
|
|
public float XenoborgShuttleCallPercentage = 0.7f;
|
|
|
|
/// <summary>
|
|
/// The most xenoborgs that existed at one point.
|
|
/// </summary>
|
|
[DataField]
|
|
public int MaxNumberXenoborgs = 0;
|
|
|
|
/// <summary>
|
|
/// If the announcment of the death of the mothership core was sent
|
|
/// </summary>
|
|
[DataField]
|
|
public bool MothershipCoreDeathAnnouncmentSent = false;
|
|
|
|
/// <summary>
|
|
/// If the emergency shuttle trigged by <see cref="XenoborgShuttleCallPercentage"> was already called.
|
|
/// Will only call once. if a admin recalls it. it won't call again unless this is set to false by a admin
|
|
/// </summary>
|
|
[DataField]
|
|
public bool XenoborgShuttleCalled = false;
|
|
|
|
/// <summary>
|
|
/// DeltaV - The behavior of the round if the mothership core is deleted.
|
|
/// </summary>
|
|
[DataField]
|
|
public RoundEndBehavior XenoborgRoundEndBehavior = RoundEndBehavior.BecomeSurvival;
|
|
|
|
/// <summary>
|
|
/// DeltaV - The amount of time before the evac shuttle will arrive if the XenoborgRoundEndBehavior is set to ShuttleCall.
|
|
/// </summary>
|
|
[DataField]
|
|
public TimeSpan XenoborgShuttleDelay = TimeSpan.FromMinutes(10);
|
|
}
|