using Robust.Shared.Interfaces.GameObjects; using Robust.Shared.IoC; using Robust.Shared.Map; namespace Content.Shared.Interfaces { /// /// Allows the ability to create floating text messages at locations in the world. /// public interface ISharedNotifyManager { /// /// Makes a string of text float up from an entity. /// /// The entity that the message is floating up from. /// The client attached entity that the message is being sent to. /// Text contents of the message. void PopupMessage(IEntity source, IEntity viewer, string message); /// /// Makes a string of text float up from a location on a grid. /// /// Location on a grid that the message floats up from. /// The client attached entity that the message is being sent to. /// Text contents of the message. void PopupMessage(GridCoordinates coordinates, IEntity viewer, string message); /// /// Makes a string of text float up from a client's cursor. /// /// The client attached entity that the message is being sent to. /// Text contents of the message. void PopupMessageCursor(IEntity viewer, string message); } public static class NotifyManagerExt { public static void PopupMessage(this IEntity source, IEntity viewer, string message) { IoCManager.Resolve().PopupMessage(source, viewer, message); } } }