private FeedbackState CreateFeedbackState(ITAlertPhotonClient photonClient) { var input = new FeedbackStateInput(photonClient, _director); var state = new FeedbackState(input, photonClient); var onLobbyStateSync = new OnMessageTransition( photonClient, ITAlertChannel.GameState, typeof(LobbyMessage), LobbyState.StateName); var onSendAndSimulationSummaryTransition = new OnEventTransition( SimulationSummaryState.StateName, () => _simulationSummary.HasData); var onSendAndNoSimulationSummaryTransition = new OnEventTransition( MenuState.StateName, () => !_simulationSummary.HasData); input.FeedbackSendClickedEvent += onSendAndSimulationSummaryTransition.ChangeState; input.FeedbackSendClickedEvent += onSendAndNoSimulationSummaryTransition.ChangeState; state.AddTransitions( onLobbyStateSync, onSendAndSimulationSummaryTransition, onSendAndNoSimulationSummaryTransition); return(state); }
public void SetInterface(FeedbackStateInput inter) { _input = inter; }