private void BootGame() { //Setting up controllers, databases, flow-stack etc. //Core functionality var viewDatabase = databaseHelper.Get <ViewDatabase>(); var viewController = new ViewController(viewDatabase); var flowStack = new FlowStack(); //Game, map, battle var tankDatabase = databaseHelper.Get <TankDatabase>(); var crewDatabase = databaseHelper.Get <CrewDatabase>(); var cardsDatabase = databaseHelper.Get <CardsDatabase>(); var activeCardsPanelLifecycleHandler = new ActiveCardsPanelLifecycleHandler(viewController); var abilitiesPanelLifecycleHandler = new AbilitiesPanelLifecycleHandler(tankDatabase); var tankPanelLifecycleHandler = new TankPanelLifecycleHandler(); var dragAndDropArrow = new DragAndDropArrowController(viewController); var battleHUD = new BattleHUD(viewController, activeCardsPanelLifecycleHandler, abilitiesPanelLifecycleHandler, tankPanelLifecycleHandler, dragAndDropArrow); var gameControllerFactory = new GameControllerFactory(flowStack, viewController, battleHUD, tankDatabase, crewDatabase, cardsDatabase); //Main menu var mainMenuControllerFactory = new MainMenuControllerFactory(flowStack, viewController, gameControllerFactory); //Start Flow var menuFlow = new MainMenuFlow(mainMenuControllerFactory); flowStack.Push(menuFlow); }
public WorldMap(ViewController viewController, GameControllerFactory gameControllerFactory, TankDatabase tankDatabase, CrewDatabase crewDatabase, CardsDatabase cardsDatabase, FlowStack flowStack) { this.viewController = viewController; this.gameControllerFactory = gameControllerFactory; this.tankDatabase = tankDatabase; this.crewDatabase = crewDatabase; this.cardsDatabase = cardsDatabase; this.flowStack = flowStack; }
public GameControllerFactory(FlowStack flowStack, ViewController viewController, BattleHUD battleHUD, TankDatabase tankDatabase, CrewDatabase crewDatabase, CardsDatabase cardsDatabase) { this.flowStack = flowStack; this.viewController = viewController; this.battleHUD = battleHUD; this.tankDatabase = tankDatabase; this.crewDatabase = crewDatabase; this.cardsDatabase = cardsDatabase; }
public MainMenuControllerFactory(FlowStack flowStack, ViewController viewController, GameControllerFactory gameControllerFactory) { this.flowStack = flowStack; this.viewController = viewController; this.gameControllerFactory = gameControllerFactory; }