Status effect refactor (#4868)
* Oops! All Changes In One Commit * try desperately to fix prediction issues and fail * oops * test * actually fixes prediction issues * port jittering to status effect * default merge behavior + alert cooldown stuff * silly test issue * zabloing * address reviews
This commit is contained in:
41
Content.Shared/Stunnable/KnockedDownComponent.cs
Normal file
41
Content.Shared/Stunnable/KnockedDownComponent.cs
Normal file
@@ -0,0 +1,41 @@
|
||||
using System;
|
||||
using Content.Shared.Sound;
|
||||
using Robust.Shared.Analyzers;
|
||||
using Robust.Shared.GameObjects;
|
||||
using Robust.Shared.GameStates;
|
||||
using Robust.Shared.Serialization;
|
||||
using Robust.Shared.Serialization.Manager.Attributes;
|
||||
using Robust.Shared.ViewVariables;
|
||||
|
||||
namespace Content.Shared.Stunnable
|
||||
{
|
||||
[RegisterComponent]
|
||||
[NetworkedComponent]
|
||||
[Friend(typeof(SharedStunSystem))]
|
||||
public class KnockedDownComponent : Component
|
||||
{
|
||||
public override string Name => "KnockedDown";
|
||||
|
||||
[DataField("helpInterval")]
|
||||
public float HelpInterval { get; set; } = 1f;
|
||||
|
||||
[DataField("helpAttemptSound")]
|
||||
public SoundSpecifier StunAttemptSound = new SoundPathSpecifier("/Audio/Effects/thudswoosh.ogg");
|
||||
|
||||
[ViewVariables]
|
||||
public float HelpTimer { get; set; } = 0f;
|
||||
}
|
||||
|
||||
[Serializable, NetSerializable]
|
||||
public class KnockedDownComponentState : ComponentState
|
||||
{
|
||||
public float HelpInterval { get; set; }
|
||||
public float HelpTimer { get; set; }
|
||||
|
||||
public KnockedDownComponentState(float helpInterval, float helpTimer)
|
||||
{
|
||||
HelpInterval = helpInterval;
|
||||
HelpTimer = helpTimer;
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user