add an event to prevent gun shooting (#17104)
Co-authored-by: deltanedas <@deltanedas:kde.org>
This commit is contained in:
32
Content.Shared/Weapons/Ranged/Events/ShotAttemptedEvent.cs
Normal file
32
Content.Shared/Weapons/Ranged/Events/ShotAttemptedEvent.cs
Normal file
@@ -0,0 +1,32 @@
|
||||
namespace Content.Shared.Weapons.Ranged.Events;
|
||||
|
||||
/// <summary>
|
||||
/// Raised on a gun when someone is attempting to shoot it.
|
||||
/// Cancel this event to prevent it from shooting.
|
||||
/// </summary>
|
||||
[ByRefEvent]
|
||||
public record struct ShotAttemptedEvent
|
||||
{
|
||||
/// <summary>
|
||||
/// The user attempting to shoot the gun.
|
||||
/// </summary>
|
||||
public EntityUid User;
|
||||
|
||||
public bool Cancelled { get; private set; }
|
||||
|
||||
/// </summary>
|
||||
/// Prevent the gun from shooting
|
||||
/// </summary>
|
||||
public void Cancel()
|
||||
{
|
||||
Cancelled = true;
|
||||
}
|
||||
|
||||
/// </summary>
|
||||
/// Allow the gun to shoot again, only use if you know what you are doing
|
||||
/// </summary>
|
||||
public void Uncancel()
|
||||
{
|
||||
Cancelled = false;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user