27 lines
940 B
C#
27 lines
940 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;
|
|
}
|
|
|
|
Context.SettlementFlowService.CommitSettlementInventory(Context.SettlementContext);
|
|
Flow.EnsureCombatFinishFormUseCaseBound();
|
|
Context.SettlementFlowService.OpenCombatFinishForm(
|
|
Context.SettlementContext,
|
|
Context.CombatFinishFormUseCase);
|
|
Flow.ChangeState(new CombatWaitingForReturnState(Context, Flow));
|
|
}
|
|
}
|
|
}
|