- 组合式单位与数值基础重构:scripts/Models/UnitModel.cs, scripts/Models/UnitComponents.cs, scripts/Models/StudentModel.cs, scripts/Models/MentorModel.cs, scripts/Models/StaffModel.cs, scripts/Models/PropertyValue.cs, scripts/Models/StatusValue.cs - 任务与运行时状态骨架:scripts/Models/Task.cs, scripts/Models/TaskDefinitions.cs, scripts/Models/GameState.cs - 配置与规则定义骨架:scripts/Models/DefinitionSupport.cs, scripts/Models/DomainEnums.cs, scripts/Models/Modifiers.cs, scripts/Models/DisciplineDefinitions.cs, scripts/Models/SynergyDefinitions.cs, scripts/Models/ItemDefinitions.cs, scripts/Models/PaperDefinitions.cs, scripts/Models/RogueliteDefinitions.cs, scripts/Models/GameContentDatabase.cs, scripts/Models/CoreIds.cs - MVC/会话/系统/i18n/Mod 支撑:scripts/Core/GameSession.cs, scripts/Core/GameSystems.cs, scripts/Core/GameController.cs, scripts/Core/Mvc.cs, scripts/Core/LocalizationService.cs, scripts/Core/ContentRegistry.cs, scripts/Core/ModManifest.cs, scripts/Core/EventBus.cs - 主控流程衔接:scripts/GameManager.cs
44 lines
1.2 KiB
C#
44 lines
1.2 KiB
C#
using System.Collections.Generic;
|
||
|
||
namespace Models;
|
||
|
||
/// <summary>
|
||
/// 统一的数值修饰结构(用于学科 Buff、羁绊、装备、特质)
|
||
/// 设计说明:
|
||
/// 1) 只表达“加成/倍率/规则”,不直接改变模型数值。
|
||
/// 2) 计算由系统层统一处理,便于叠加与回滚。
|
||
/// 注意事项:
|
||
/// - 这里的 Multiplier 默认 1.0f,不是百分比。
|
||
/// 未来扩展:
|
||
/// - 可加入“条件触发”与“持续时间”字段。
|
||
/// </summary>
|
||
public sealed class AttributeModifier
|
||
{
|
||
public AttributeType Type { get; set; }
|
||
public float Add { get; set; }
|
||
public float Multiplier { get; set; } = 1.0f;
|
||
}
|
||
|
||
public sealed class StatusModifier
|
||
{
|
||
public StatusType Type { get; set; }
|
||
public float Add { get; set; }
|
||
public float Multiplier { get; set; } = 1.0f;
|
||
}
|
||
|
||
public sealed class ResourceModifier
|
||
{
|
||
public ResourceType Type { get; set; }
|
||
public int Add { get; set; }
|
||
public float Multiplier { get; set; } = 1.0f;
|
||
}
|
||
|
||
public sealed class ModifierBundle
|
||
{
|
||
public List<AttributeModifier> AttributeModifiers { get; } = new();
|
||
public List<StatusModifier> StatusModifiers { get; } = new();
|
||
public List<ResourceModifier> ResourceModifiers { get; } = new();
|
||
public List<string> RuleIds { get; } = new();
|
||
}
|
||
|