- 组合式单位与数值基础重构: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.0 KiB
C#
44 lines
1.0 KiB
C#
using Models;
|
||
|
||
namespace Core;
|
||
|
||
/// <summary>
|
||
/// 高层控制器(面向 UI/输入)
|
||
/// 设计说明:
|
||
/// 1) Controller 只负责“指令式操作”,不直接做数值计算。
|
||
/// 2) 复杂结算交给系统层(GameSystems)。
|
||
/// 注意事项:
|
||
/// - 需要可重入性,避免重复触发同一阶段切换。
|
||
/// 未来扩展:
|
||
/// - 可加入“命令队列”,用于回放或网络同步。
|
||
/// </summary>
|
||
public sealed class GameController : IController
|
||
{
|
||
private GameSession _session;
|
||
|
||
public void Initialize(GameSession session)
|
||
{
|
||
_session = session;
|
||
}
|
||
|
||
public void StartExecution()
|
||
{
|
||
if (_session.State.Turn.Phase != GamePhase.Planning) return;
|
||
_session.State.Turn.Phase = GamePhase.Execution;
|
||
}
|
||
|
||
public void EndExecution()
|
||
{
|
||
if (_session.State.Turn.Phase != GamePhase.Execution) return;
|
||
_session.State.Turn.Phase = GamePhase.Review;
|
||
}
|
||
|
||
public void StartNextTurn()
|
||
{
|
||
if (_session.State.Turn.Phase != GamePhase.Review) return;
|
||
_session.State.Turn.CurrentTurn++;
|
||
_session.State.Turn.Phase = GamePhase.Planning;
|
||
}
|
||
}
|
||
|