geometry-tower-defense/Assets/GameMain/Scripts/CustomComponent/CombatNode/CombatScheduler/CombatStates/CombatFinishFormState.cs

26 lines
844 B
C#

namespace GeometryTD.CustomComponent
{
internal sealed class CombatFinishFormState : CombatStateBase
{
public CombatFinishFormState(CombatSchedulerRuntimeContext context, CombatSchedulerFlowCoordinator flow)
: base(context, flow)
{
}
public override void OnEnter()
{
if (Context.SettlementContext == null)
{
Flow.EnterFailureFallback("Combat finish form failed. Settlement context is missing.");
return;
}
Flow.EnsureCombatFinishFormUseCaseBound();
Context.SettlementFlowService.OpenCombatFinishForm(
Context.SettlementContext,
Context.CombatFinishFormUseCase);
Flow.ChangeState(new CombatWaitingForReturnState(Context, Flow));
}
}
}