using System; using System.Collections; using System.Collections.Generic; using UnityEngine; [Serializable] public class DialogueModel //<TPanel> where TPanel : AbstractPanel { [NonSerialized] public string Header; public Func<string, DialogueModel, Panel> Panel = PanelFactory.BasePanel; [SerializeField] public string Sentence; // { get; set; } // make set private but this will block inspector [SerializeField] public List<PanelButtonStepModel> Buttons = new List<PanelButtonStepModel>(); public DialogueModel() { } public DialogueModel(string _sentence) { Sentence = _sentence; } public DialogueModel(string _sentence, string _header) { Sentence = _sentence; Header = _header; } public DialogueModel(string _sentence, List<PanelButtonStepModel> _buttonsModelsList) { Sentence = _sentence; Buttons = _buttonsModelsList; } public DialogueModel(string _sentence, string _header, List<PanelButtonStepModel> _buttonsModelsList) { Sentence = _sentence; Header = _header; Buttons = _buttonsModelsList; } }