This commit is contained in:
SoulliesOfficial
2026-06-09 11:21:59 -04:00
parent 7c60c40d6b
commit 021e76efe7
493 changed files with 50500 additions and 2211 deletions

View File

@@ -0,0 +1,34 @@
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>();
}
}