using JetBrains.Annotations; namespace Content.Shared.Interaction { public sealed class InteractHandEventArgs : EventArgs, ITargetedInteractEventArgs { public InteractHandEventArgs(EntityUid user, EntityUid target) { User = user; Target = target; } public EntityUid User { get; } public EntityUid Target { get; } } /// /// Raised directed on a target entity when it is interacted with by a user with an empty hand. /// [PublicAPI] public sealed class InteractHandEvent : HandledEntityEventArgs, ITargetedInteractEventArgs { /// /// Entity that triggered the interaction. /// public EntityUid User { get; } /// /// Entity that was interacted on. /// public EntityUid Target { get; } public InteractHandEvent(EntityUid user, EntityUid target) { User = user; Target = target; } } public sealed class InteractNoHandEvent : HandledEntityEventArgs, ITargetedInteractEventArgs { /// /// Entity that triggered the interaction. /// public EntityUid User { get; } /// /// Entity that was interacted on. /// public EntityUid Target { get; } public InteractNoHandEvent(EntityUid user, EntityUid target) { User = user; Target = target; } } /// /// Reverse of the InteractNoHandEvent - raised on what was interacted on, rather than the other way around. /// public sealed class InteractedNoHandEvent : HandledEntityEventArgs, ITargetedInteractEventArgs { /// /// Entity that was interacted on /// public EntityUid Target { get; } /// /// Entity that triggered this interaction /// public EntityUid User { get; } public InteractedNoHandEvent(EntityUid target, EntityUid user) { Target = target; User = user; } } }