using System;
using System.Collections.Generic;
using Sirenix.OdinInspector;
using UnityEngine;
namespace Ichni.Story
{
///
/// StoryData 编辑期的互斥路线声明。
/// 本类不会参与运行时条件求值:路线的开放与禁用仍只由 StoryBlockDefinition 中的
/// Unlock Condition / Forbidden Condition 控制。它的唯一职责是让 Validate Story Data 能够
/// 对“多个结局只能完成一个”的人工配置意图进行可定位检查。
///
[Serializable]
[InlineProperty]
[HideReferenceObjectPicker]
public class StoryRouteValidationGroup
{
[HorizontalGroup("Identity", 0.34f)]
[LabelText("Group ID")]
[LabelWidth(58)]
[Tooltip("仅用于编辑器验证与日志定位的稳定 ID。使用小写英文、数字和下划线,例如 chapter0_ending。")]
public string groupId;
[HorizontalGroup("Identity")]
[LabelText("Terminal Blocks")]
[Tooltip("同一互斥结局组中的终点 Block ID。Validate Story Data 会检查它们是否存在、是否重复、是否为图终点,以及是否配置 Forbidden Condition。")]
public List terminalBlockIds = new List();
}
}