// // Dialog.cs // // Copyright (c) František Boháček. All rights reserved. // Licensed under the MIT license. See LICENSE file in the project root for full license information. using NosSmooth.Game.Apis; using NosSmooth.Packets.Enums; using OneOf; namespace NosSmooth.Game.Data.Dialogs; /// /// Represents dialog sent by the server /// /// /// To deny a dialog with null , just ignore it. /// /// For answering to a dialog, use . /// It takes care of collisions. In case the same dialog is accepted /// and denied from elsewhere, an error will be returned. /// /// The accept command/packet sent upon accept. /// The deny command/packet sent upon denying. This may be null for some dialogs. To deny a dialog with null DenyCommand, just ignore it. /// The message of the dialog, may be a constant i18n message, or a string. /// The parameters of the i18n message. Empty for string messages. public record Dialog ( string AcceptCommand, string? DenyCommand, OneOf Message, IReadOnlyList Parameters );