using System.Collections.Generic; using UnityEngine; namespace Unheimlich.Data.Dialogues { [CreateAssetMenu(fileName = "NewConversation", menuName = "Unheimlich/Dialogue/Conversation")] public class DialogueConversation : ScriptableObject { [Header("Speaker Information")] [Tooltip("Name of the speaker (common to all texts in this conversation)")] public string SpeakerName; [Header("Display Mode")] [Tooltip("Choose how to display dialogue text: World (3D space) or Screen (Canvas UI)")] public DialogueDisplayMode DisplayMode = DialogueDisplayMode.World; [Header("Dialogue Flow")] [Tooltip("Ordered list of dialogue nodes for this conversation")] public List DialogueNodes = new List(); [Header("Localization")] [Tooltip("Localization ID for speaker name (optional)")] public string SpeakerNameLocalizationKey; public DialogueNode GetFirstNode() { return DialogueNodes != null && DialogueNodes.Count > 0 ? DialogueNodes[0] : null; } } }