public PlayerScreen(IScreenHandler _screenHandler) { log.Debug("Constructing a PlayerScreen."); m_ScreenHandler = _screenHandler; m_UniqueId = System.Guid.NewGuid(); m_PlayerScreenUI = new PlayerScreenUserInterface(m_FrameServer, this); }
static async Task Main() { var gameState = new GameState { CurrentScreen = GameScreen.GlobeGeneration, }; var battleScreenHandler = new BattleScreenHandler(); var globeScreenHandler = new GlobeScreenHandler(); var globeGenerationScreenHandler = new GlobeGenerationScreenHandler(); IScreenHandler screenHandler = globeGenerationScreenHandler; do { var nextScreen = await screenHandler.StartProcessingAsync(gameState).ConfigureAwait(false); screenHandler = nextScreen switch { GameScreen.Globe => globeScreenHandler, GameScreen.GlobeGeneration => globeGenerationScreenHandler, GameScreen.Battle => battleScreenHandler, _ => throw new InvalidOperationException($"Unsupported screen {nextScreen}.") }; } while (true); } }
public CaptureScreen(IScreenHandler _screenHandler) { log.Debug("Constructing a CaptureScreen."); m_ScreenHandler = _screenHandler; view = new CaptureScreenUserInterface(frameServer, this); BindCommands(); }
protected ScreenBase(ISessionFactory sessionFactory, IScreenHandler screenHandler, IRequestHandler requestHandler, IResponseHandler responseHandler) { SessionFactory = sessionFactory; ScreenHandler = screenHandler; RequestHandler = requestHandler; ResponseHandler = responseHandler; Session = SessionFactory.GetCurrentSession(); }
public void RemoveHandler <TScreen>(IScreenHandler <TScreen> handler) where TScreen : UIPanelController { screenHandlers.Remove(handler); if (panelControllersByPanelType.TryGetValue(typeof(TScreen), out UIPanelController basePanelController)) { handler.OnScreenHide((TScreen)basePanelController); } }
public void AddHandler <TScreen>(IScreenHandler <TScreen> handler) where TScreen : UIPanelController { screenHandlers.Add(handler); if (panelControllersByPanelType.TryGetValue(typeof(TScreen), out UIPanelController basePanelController)) { handler.OnScreenShown((TScreen)basePanelController); } }
public BuildingScreen(ISessionFactory sessionFactory, IScreenHandler screenHandler, IRequestHandler requestHandler, IResponseHandler responseHandler, Building building) : base(sessionFactory, screenHandler, requestHandler, responseHandler) { if (building == null) { throw new ArgumentNullException(nameof(building)); } _building = building; }
private static async Task Main() { var serviceContainer = new ServiceCollection(); var startUp = new StartUp(); startUp.RegisterServices(serviceContainer); serviceContainer.AddSingleton <IGlobeInitializer, GlobeInitializer>(); serviceContainer.AddSingleton <IGlobeExpander>(provider => (BiomeInitializer)provider.GetRequiredService <IBiomeInitializer>()); serviceContainer.AddSingleton <IGlobeTransitionHandler, GlobeTransitionHandler>(); serviceContainer.AddSingleton <IPersonInitializer, HumanPersonInitializer>(); serviceContainer.AddSingleton <IPlayer, HumanPlayer>(); serviceContainer.AddScoped <MoveCommand>(); serviceContainer.AddScoped <IdleCommand>(); serviceContainer.AddScoped <AttackCommand>(); serviceContainer.AddSingleton <IMonsterIdentifierGenerator, MonsterIdentifierGenerator>(); serviceContainer.AddScoped <SectorTransitionMoveCommand>(); serviceContainer.AddScoped <ICommandPool, QueueCommandPool>(); serviceContainer.AddScoped <IAnimationBlockerService, AnimationBlockerService>(); using var serviceProvider = serviceContainer.BuildServiceProvider(); // Create globe using var scope = serviceProvider.CreateScope(); var gameState = new GameState { CurrentScreen = GameScreen.GlobeSelection, ServiceScope = scope, ServiceProvider = serviceProvider }; var mainScreenHandler = new MainScreenHandler(); var globeSelectionScreenHandler = new GlobeSelectionScreenHandler(); var scoresScreenHandler = new ScoresScreenHandler(); IScreenHandler screenHandler = globeSelectionScreenHandler; do { var nextScreen = await screenHandler.StartProcessingAsync(gameState).ConfigureAwait(false); screenHandler = nextScreen switch { GameScreen.GlobeSelection => globeSelectionScreenHandler, GameScreen.Main => mainScreenHandler, GameScreen.Scores => scoresScreenHandler, _ => throw new InvalidOperationException($"Unsupported screen {nextScreen}.") }; } while (true); } }
public ScreenHandlerProvider( IScreenNavigation screenNavigation, IScreenHandler mainMenuScreen, IScreenHandler characterCreationScreen, IScreenHandler dialogModal) { _screenNavigation = screenNavigation; _mainMenuScreen = mainMenuScreen; _characterCreationScreen = characterCreationScreen; _dialogModal = dialogModal; }
public ShelvesScreen(ISessionFactory sessionFactory, IScreenHandler screenHandler, IRequestHandler requestHandler, IResponseHandler responseHandler) : base(sessionFactory, screenHandler, requestHandler, responseHandler) { }
public CaptureScreen(IScreenHandler _screenHandler) { log.Debug("Constructing a CaptureScreen."); m_ScreenHandler = _screenHandler; m_CaptureScreenUI = new CaptureScreenUserInterface(m_FrameServer, this); }
public BuildingsScreen(ISessionFactory sessionFactory, IScreenHandler screenHandler, IRequestHandler requestHandler, IResponseHandler responseHandler) : base(sessionFactory, screenHandler, requestHandler, responseHandler) { _buildings = Session.QueryOver <Building>().List(); }
internal void RemoveHandler <TScreen>(IScreenHandler <TScreen> handler) where TScreen : UIPanelController { screenController.RemoveHandler(handler); }
protected CrudScreen(ISessionFactory sessionFactory, IScreenHandler screenHandler, IRequestHandler requestHandler, IResponseHandler responseHandler) : base(sessionFactory, screenHandler, requestHandler, responseHandler) { }