45 lines
1.2 KiB
C#
45 lines
1.2 KiB
C#
using System;
|
|
using Robust.Shared.Analyzers;
|
|
using Robust.Shared.GameObjects;
|
|
using Robust.Shared.GameStates;
|
|
using Robust.Shared.Maths;
|
|
using Robust.Shared.Serialization;
|
|
using Robust.Shared.ViewVariables;
|
|
|
|
namespace Content.Shared.Jittering
|
|
{
|
|
[Friend(typeof(SharedJitteringSystem))]
|
|
[RegisterComponent, NetworkedComponent]
|
|
public class JitteringComponent : Component
|
|
{
|
|
public override string Name => "Jittering";
|
|
|
|
[ViewVariables(VVAccess.ReadWrite)]
|
|
public TimeSpan EndTime { get; set; }
|
|
|
|
[ViewVariables(VVAccess.ReadWrite)]
|
|
public float Amplitude { get; set; }
|
|
|
|
[ViewVariables(VVAccess.ReadWrite)]
|
|
public float Frequency { get; set; }
|
|
|
|
[ViewVariables(VVAccess.ReadWrite)]
|
|
public Vector2 LastJitter { get; set; }
|
|
}
|
|
|
|
[Serializable, NetSerializable]
|
|
public class JitteringComponentState : ComponentState
|
|
{
|
|
public TimeSpan EndTime { get; }
|
|
public float Amplitude { get; }
|
|
public float Frequency { get; }
|
|
|
|
public JitteringComponentState(TimeSpan endTime, float amplitude, float frequency)
|
|
{
|
|
EndTime = endTime;
|
|
Amplitude = amplitude;
|
|
Frequency = frequency;
|
|
}
|
|
}
|
|
}
|