2025-01-28 00:20:45 +01:00
|
|
|
using Content.Shared.Camera;
|
2023-12-06 22:41:29 -05:00
|
|
|
using Content.Shared.Hands.Components;
|
|
|
|
|
using Content.Shared.Movement.Systems;
|
|
|
|
|
|
|
|
|
|
namespace Content.Shared.Hands.EntitySystems;
|
|
|
|
|
|
|
|
|
|
public abstract partial class SharedHandsSystem
|
|
|
|
|
{
|
|
|
|
|
private void InitializeRelay()
|
|
|
|
|
{
|
2025-01-28 00:20:45 +01:00
|
|
|
SubscribeLocalEvent<HandsComponent, GetEyeOffsetRelayedEvent>(RelayEvent);
|
|
|
|
|
SubscribeLocalEvent<HandsComponent, GetEyePvsScaleRelayedEvent>(RelayEvent);
|
2023-12-06 22:41:29 -05:00
|
|
|
SubscribeLocalEvent<HandsComponent, RefreshMovementSpeedModifiersEvent>(RelayEvent);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void RelayEvent<T>(Entity<HandsComponent> entity, ref T args) where T : EntityEventArgs
|
|
|
|
|
{
|
|
|
|
|
var ev = new HeldRelayedEvent<T>(args);
|
|
|
|
|
foreach (var held in EnumerateHeld(entity, entity.Comp))
|
|
|
|
|
{
|
|
|
|
|
RaiseLocalEvent(held, ref ev);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|