Files
Delta-v/Content.Client/_DV/Movement/CursorOffsetActionSystem.cs
T
2025-09-14 23:18:37 -07:00

26 lines
769 B
C#

using System.Numerics;
using Content.Client.Movement.Components;
using Content.Client.Movement.Systems;
using Content.Shared._DV.Movement;
using Robust.Client.Timing;
namespace Content.Client._DV.Movement;
public sealed class CursorOffsetActionSystem : SharedCursorOffsetActionSystem
{
[Dependency] private readonly IClientGameTiming _gameTiming = default!;
protected override void OnAction(Entity<CursorOffsetActionComponent> ent, ref CursorOffsetActionEvent args)
{
base.OnAction(ent, ref args);
if (!TryComp<EyeCursorOffsetComponent>(ent, out var eyeOffset))
return;
eyeOffset.Enabled = ent.Comp.Active;
if (_gameTiming.IsFirstTimePredicted)
eyeOffset.CurrentPosition = Vector2.Zero;
}
}