Code/ChitChat/Data/DialogueActionBase.cs
using System.Text.Json.Serialization;
namespace ChitChat;
[JsonDerivedType(typeof(EventAction), 0)]
[JsonDerivedType(typeof(SpeakAction), 1)]
[JsonDerivedType(typeof(ChoiceAction), 2)]
public class DialogueActionBase
{
/// <summary>
/// What happens when entering this action.
/// </summary>
/// <returns>Returns if the action needs input.</returns>
public virtual bool OnEnter(DialogueSystemComponent system, DialoguePanelComponent ui, DialogueWriterComponent writer, DialogueAudioComponent audio) => true;
public virtual void OnExit() { }
}