// Copyright Rane (elijahrane@gmail.com) 2025 // All rights reserved. Relicensed under AGPL with permission using Robust.Shared.Serialization; namespace Content.Shared._Mono.FireControl; /// /// Event sent from server to client to visualize firing directions for a weapon /// [Serializable, NetSerializable] public sealed class FireControlVisualizationEvent : EntityEventArgs { /// /// Entity to visualize /// public NetEntity Entity { get; } /// /// Dictionary mapping direction angles (in degrees) to whether firing is possible /// public Dictionary? Directions { get; } /// /// Whether to enable (true) or disable (false) visualization /// public bool Enabled { get; } /// /// Constructor for enabling/updating visualization with data /// public FireControlVisualizationEvent(NetEntity entity, Dictionary directions) { Entity = entity; Directions = directions; Enabled = true; } /// /// Constructor for toggling visualization off /// public FireControlVisualizationEvent(NetEntity entity) { Entity = entity; Directions = null; Enabled = false; } }