namespace GeometryTD.CustomComponent { public partial class CombatScheduler { private sealed class CombatRewardSelectionState : CombatStateBase { public CombatRewardSelectionState(CombatScheduler scheduler) : base(scheduler) { } public override void OnEnter() { if (Scheduler._settlementContext == null) { Scheduler.EnterFailureFallback("Combat reward selection failed. Settlement context is missing."); return; } if (!Scheduler.TryPrepareRewardSelection(Scheduler._settlementContext)) { Scheduler.ChangeState(new CombatFinishFormState(Scheduler)); } } public override void OnExit() { Scheduler.CloseRewardSelectForm(); } } } }