Files
Cielonos/Assets/Scripts/SLSUtilities/Narrative/Base/Data/CharacterData.cs
SoulliesOfficial 7bc1e1722c 爆更
2026-06-05 04:21:00 -04:00

34 lines
1.8 KiB
C#
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
using System.Collections.Generic;
using Sirenix.OdinInspector;
using UnityEngine;
namespace SLSUtilities.Narrative
{
[CreateAssetMenu(fileName = "New Character Data", menuName = "SLSUtilities/Story System/Character Data")]
public class CharacterData : SerializedScriptableObject
{
[TitleGroup("角色档案", "Yarn Spinner 角色视觉与差分配置", Alignment = TitleAlignments.Centered)]
[BoxGroup("角色档案/基础信息 (Basic Info)")]
[LabelText("角色名称 (Yarn 识别码)")]
[Tooltip("在 C# 逻辑与场景注册中使用的标准唯一英文 ID例如'Player' 或 'Guide')。")]
public string nameKey;
[BoxGroup("角色档案/基础信息 (Basic Info)")]
[LabelText("显示名称 (Display Name)")]
[Tooltip("在 Yarn 对话文本中显示的本地化名称(例如中文:'引导者')。用于将文本说话人匹配到标准英文 ID。")]
public List<string> alias;
[BoxGroup("角色档案/立绘差分 (Portraits)", centerLabel: true)]
[LabelText("默认立绘 (Default Portrait)")]
[PreviewField(70, ObjectFieldAlignment.Left)]
[Tooltip("当 Yarn 台词没有指定 #mood 标签时,显示的默认角色立绘。")]
public Sprite defaultPortrait;
[BoxGroup("角色档案/立绘差分 (Portraits)")]
[LabelText("表情差分库 (Mood Expressions)")]
[DictionaryDrawerSettings(KeyLabel = "表情标签 (如 Happy, Sad)", ValueLabel = "对应的立绘 (Sprite)", DisplayMode = DictionaryDisplayOptions.ExpandedFoldout)]
[Tooltip("在此配置各种表情对应的立绘。在 Yarn 中使用 #mood:标签名 来触发。")]
public Dictionary<string, Sprite> expressions = new Dictionary<string, Sprite>();
}
}