public void TestInitialize()
        {
            _gameController      = Substitute.For <IGameController>();
            _logicHandler        = Substitute.For <ILogicHandler>();
            _gameEngineInterface = Substitute.For <IGameEngineInterface>();
            _dataLayer           = Substitute.For <IDataLayer>();

            _audioSourceShip = Substitute.For <IAudioSource>();

            _playerShip           = Substitute.For <IGameObject>();
            _playerShip.Transform = Substitute.For <ITransform>();

            _camera = Substitute.For <IGameObject>();
            _gameEngineInterface.FindGameObject("MainCamera").Returns(_camera);
            _camera.Transform.Position.Returns(new Vector3(0, 0, 0));

            _sourceAsteroid = Substitute.For <IGameObject>();
            _gameEngineInterface.FindGameObject("sourceAsteroid").Returns(_sourceAsteroid);
            _sourceAsteroid.Transform.Position.Returns(new Vector3(0, 0, 0));

            _playerShipScript = Substitute.For <IPlayerShipScript>();
            _playerShipScript.Health.Returns(100);

            _playerShip.GetSize().Returns(new Vector3(10, 10, 10));

            _gameEngineInterface.Screen.Width.Returns(SCREEN_WIDTH);
            _logicHandler.GameController = _gameController;

            _asteroidPlacementLogicImplementer = Substitute.For <IAsteroidPlacementLogicImplementer>();

            _gameLogicProvider = new GameLogicProvider(_logicHandler, _gameEngineInterface, _dataLayer, _asteroidPlacementLogicImplementer); //todo 2nd game: couldn't get Substitute.ForPartsOf to work, so I had to mock all the stuff needed for the call to InitStage()

            _gameEngineInterface.Time = Substitute.For <ITime>();
            _gameEngineInterface.Time.DeltaTime.Returns(1);
        }
        public void TestInitialize()
        {
            _logicHandler        = Substitute.For <ILogicHandler>();
            _gameEngineInterface = Substitute.For <IGameEngineInterface>();
            _dataLayer           = Substitute.For <IDataLayer>();

            _gameEngineInterface.AppVersion.Returns("1.0.0.0");

            _btnPrivacyPolicy = Substitute.For <IGameObject>();
            _gameEngineInterface.FindGameObject("btnPrivacyPolicy").Returns(_btnPrivacyPolicy);

            _btnHowToPlay = Substitute.For <IGameObject>();
            _gameEngineInterface.FindGameObject("btnHowToPlay").Returns(_btnHowToPlay);

            _btnShare = Substitute.For <IGameObject>();
            _gameEngineInterface.FindGameObject("_btnShare").Returns(_btnShare); //todo: howcome the UT works with a misnamed button?

            var txtVersionNumberGameObject = Substitute.For <IGameObject>();

            _txtVersionNumber = Substitute.For <IText>();
            txtVersionNumberGameObject.GetComponent <IText>().Returns(_txtVersionNumber);
            _gameEngineInterface.FindGameObject("txtVersionNumber").Returns(txtVersionNumberGameObject);

            _pnlMainMenu = Substitute.For <IGameObject>();
            _gameEngineInterface.FindGameObject("pnlMainMenu").Returns(_pnlMainMenu);

            _inMenuLogicProvider = new InMenuLogicProvider(_logicHandler, _gameEngineInterface, _dataLayer);
        }
Beispiel #3
0
        public EULALogicProvider(ILogicHandler logicHandler, IGameEngineInterface gameEngineInterface, IDataLayer dataLayer)
            : base(logicHandler, gameEngineInterface, dataLayer)
        {
            var btnEULAAccept = _gameEngineInterface.FindGameObject("btnEULAAccept");

            btnEULAAccept.LogicHandler = _logicHandler;

            var btnEULACancel = _gameEngineInterface.FindGameObject("btnEULACancel");

            btnEULACancel.LogicHandler = _logicHandler;

            var btnEULAPrompt = _gameEngineInterface.FindGameObject("btnEULAPrompt");

            btnEULAPrompt.LogicHandler = _logicHandler;

            var btnPrivacyPolicyPrompt = _gameEngineInterface.FindGameObject("btnPrivacyPolicyPrompt");

            btnPrivacyPolicyPrompt.LogicHandler = _logicHandler;

            _pnlEULA = _gameEngineInterface.FindGameObject("pnlEULA");

            if (_dataLayer.GetIsEULAAccepted())
            {
                _pnlEULA.SetActive(false);
            }

            _buttonHandlers.Add("btnEULAAccept", btnAccept_Click);
            _buttonHandlers.Add("btnEULACancel", btnCancel_Click);
            _buttonHandlers.Add("btnEULAPrompt", btnEULA_Click);
            _buttonHandlers.Add("btnPrivacyPolicyPrompt", btnPrivacyPolicy_Click);
        }
Beispiel #4
0
        public void TestInitialize()
        {
            _logicHandler        = Substitute.For <ILogicHandler>();
            _gameEngineInterface = Substitute.For <IGameEngineInterface>();
            _dataLayer           = Substitute.For <IDataLayer>();

            _winLogicProvider = new WinLogicProvider(_logicHandler, _gameEngineInterface, _dataLayer);
        }
        public BaseLogicProvider(ILogicHandler logicHandler, IGameEngineInterface gameEngineInterface, IDataLayer dataLayer)
        {
            _logicHandler        = logicHandler;
            _gameEngineInterface = gameEngineInterface;
            _dataLayer           = dataLayer;

            ClearInputStates();
        }
Beispiel #6
0
        protected HandledController(IDataHandler dataHandler, ILogicHandler logicHandler)
        {
            logicHandler.DataHandler = dataHandler;

            DataHandler  = dataHandler;
            LogicHandler = logicHandler;
            Mapper       = new Mapper(AutoMapperConfig.Configure());
        }
Beispiel #7
0
 public Task RegisterAsync(ILogicHandler handler, Type eventType)
 {
     if (_logicHandlers.ContainsKey(eventType))
     {
         return(Task.CompletedTask);
     }
     _logicHandlers[eventType] = handler;
     return(Task.CompletedTask);
 }
        public void TestInitialize()
        {
            _logicHandler = Substitute.For <ILogicHandler>();
            _logicHandler.GameController = Substitute.For <IGameController>();

            _gameEngineInterface = Substitute.For <IGameEngineInterface>();
            _dataLayer           = Substitute.For <IDataLayer>();

            _chooseLevelLogicProvider = new ChooseLevelLogicProvider(_logicHandler, _gameEngineInterface, _dataLayer);
        }
        private GameController()
        {
            _curLogicHandler = MenuLogicHandler;

            _logicHandlersByAppState.Add(AppState.Game, GameLogicHandler);
            _logicHandlersByAppState.Add(AppState.MainMenu, MenuLogicHandler);

            ScoreInfo = new ScoreInfo();

            ShouldUpdate = true;
        }
        public GameLogicProvider(ILogicHandler gameLogicHandler, IGameEngineInterface gameEngineInterface, IDataLayer dataLayer, IAsteroidPlacementLogicImplementer asteroidPlacementLogicImplementer)
            : base(gameLogicHandler, gameEngineInterface, dataLayer)
        {
            _halfScreenWidth = _gameEngineInterface.Screen.Width / 2;

            _inputStates[InputAxis.Horizontal] = 0f;
            _inputStates[InputAxis.Cancel]     = 0f;

            _gameEngineInterface.TimeScale = 1;

            _asteroidPlacementLogicImplementer = asteroidPlacementLogicImplementer;
        }
        public void TestInitialize()
        {
            _logicHandler        = Substitute.For <ILogicHandler>();
            _gameEngineInterface = Substitute.For <IGameEngineInterface>();

            _pnlHowToPlay = Substitute.For <IGameObject>();
            _gameEngineInterface.FindGameObject("pnlHowToPlay").Returns(_pnlHowToPlay);

            _btnHowToPlayOk = Substitute.For <IGameObject>();
            _gameEngineInterface.FindGameObject("btnHowToPlayOk").Returns(_btnHowToPlayOk);

            _howToPlayLogicProvider = new HowToPlayLogicProvider(_logicHandler, _gameEngineInterface, _dataLayer);
        }
        public void SetAppState(AppState appState, int?sceneState = null)
        {
            _curAppState     = appState;
            _curLogicHandler = _logicHandlersByAppState[appState];

            if (sceneState.HasValue)
            {
                MenuLogicHandler.DefaultSceneState = sceneState.Value;
            }

            if (appState == AppState.MainMenu)
            {
                ShouldUpdate = false; //we don't want to call _curLogicHandler.OnUpdate() until we've called OnStart() on the new current logic handler.
                GameEngineInterface.LoadScene(Constants.SceneNames.UIScene);
            }
        }
        public void TestInitialize()
        {
            _gameEngineInterface = Substitute.For <IGameEngineInterface>();

            _logicHandler = Substitute.For <ILogicHandler>();

            _btnOutOfLivesOk = Substitute.For <IGameObject>();
            _pnlOutOfLives   = Substitute.For <IGameObject>();
            _txtDebugOutput  = Substitute.For <IGameObject>();

            _outOfLivesLogicProvider = new OutOfLivesLogicProvider(_logicHandler, _gameEngineInterface, _dataLayer);

            _gameEngineInterface.FindGameObject("btnOutOfLivesOk").Returns(_btnOutOfLivesOk);
            _gameEngineInterface.FindGameObject("pnlOutOfLives").Returns(_pnlOutOfLives);
            _gameEngineInterface.FindGameObject("txtDebugOutput").Returns(_txtDebugOutput);
        }
Beispiel #14
0
 public LoseLogicProvider(IGameController gameController, ILogicHandler logicHandler, IGameEngineInterface gameEngineInterface, IDataLayer dataLayer)
     : base(logicHandler, gameEngineInterface, dataLayer)
 {
     _gameController = gameController;
 }
Beispiel #15
0
 public LoseTransitionLogicProvider(ILogicHandler logicHandler, IGameEngineInterface gameEngineInterface, IDataLayer dataLayer)
     : base(logicHandler, gameEngineInterface, dataLayer)
 {
 }
Beispiel #16
0
 public MeetingTypeController(IDataHandler dataHandler, ILogicHandler logicHandler)
     : base(dataHandler, logicHandler)
 {
 }
Beispiel #17
0
 public CharacterController(ILogicHandler logicHandler)
 {
     _logicHandler = logicHandler;
 }
Beispiel #18
0
 protected SecureController(IDataHandler dataHandler, ILogicHandler logicHandler)
     : base(dataHandler, logicHandler)
 {
 }
Beispiel #19
0
 public OutOfLivesLogicProvider(ILogicHandler logicHandler, IGameEngineInterface gameEngineInterface, IDataLayer dataLayer)
     : base(logicHandler, gameEngineInterface, dataLayer)
 {
 }
Beispiel #20
0
 public ChooseLevelLogicProvider(ILogicHandler logicHandler, IGameEngineInterface gameEngineInterface, IDataLayer dataLayer)
     : base(logicHandler, gameEngineInterface, dataLayer)
 {
 }
Beispiel #21
0
 public AttendanceController(IDataHandler dataHandler, ILogicHandler logicHandler)
     : base(dataHandler, logicHandler)
 {
 }
Beispiel #22
0
 public HowToPlayLogicProvider(ILogicHandler logicHandler, IGameEngineInterface gameEngineInterface, IDataLayer dataLayer) : base(logicHandler, gameEngineInterface, dataLayer)
 {
 }
Beispiel #23
0
 protected EndpointController(IDataHandler dataHandler, ILogicHandler logicHandler)
     : base(dataHandler, logicHandler)
 {
 }
 public PauseLogicProvider(ILogicHandler logicHandler, IGameEngineInterface gameEngineInterface, IDataLayer dataLayer)
     : base(logicHandler, gameEngineInterface, dataLayer)
 {
     _pnlPauseMenu = null;
 }
Beispiel #25
0
 protected OwnedController(IDataHandler dataHandler, ILogicHandler logicHandler)
     : base(dataHandler, logicHandler)
 {
 }
Beispiel #26
0
 public Task UnregisterAsync(ILogicHandler handler, Type eventType)
 {
     _logicHandlers.Remove(eventType);
     return(Task.CompletedTask);
 }
Beispiel #27
0
 public PlayerController(ILogicHandler logicHandler)
 {
     _logicHandler = logicHandler;
 }
Beispiel #28
0
 public FavController(IDataHandler dataHandler, ILogicHandler logicHandler)
     : base(dataHandler, logicHandler)
 {
 }
Beispiel #29
0
 public SignupController(IDataHandler dataHandler, ICloudHandler cloudHandler, ILogicHandler logicHandler)
     : base(dataHandler, logicHandler)
 {
     CloudHandler = cloudHandler;
 }
        public void TestInitialize()
        {
            _logicHandler        = Substitute.For <ILogicHandler>();
            _gameEngineInterface = Substitute.For <IGameEngineInterface>();
            _dataLayer           = Substitute.For <IDataLayer>();

            _gameController = Substitute.For <IGameController>();
            _logicHandler.GameController.Returns(_gameController);
            _productInfoViewModels = new List <ProductInfoViewModel>()
            {
                new ProductInfoViewModel {
                    ProductId = Constants.ProductNames.BuyLivesSmall, PriceString = "$0.99", SavePctString = string.Empty
                },
                new ProductInfoViewModel {
                    ProductId = Constants.ProductNames.BuyLivesMedium, PriceString = "$1.99", SavePctString = "SAVE 30%"
                },
                new ProductInfoViewModel {
                    ProductId = Constants.ProductNames.BuyLivesLarge, PriceString = "$2.99", SavePctString = "SAVE 40%"
                },
            };
            _gameController.ProductsForUI.Returns(_productInfoViewModels);

            _dataLayer.GetNumLivesRemaining().Returns(10);

            _getMoreLivesLogicProvider = new GetMoreLivesLogicProvider(_logicHandler, _gameEngineInterface, _dataLayer);

            _pnlGetMoreLives = Substitute.For <IGameObject>();
            _gameEngineInterface.FindGameObject("pnlGetMoreLives").Returns(_pnlGetMoreLives);

            _btnCancel = Substitute.For <IGameObject>();
            _gameEngineInterface.FindGameObject("btnGetMoreLivesCancel").Returns(_btnCancel);

            _btnBuyLivesSmall = Substitute.For <IGameObject>();
            _gameEngineInterface.FindGameObject("btnBuyLivesSmall").Returns(_btnBuyLivesSmall);

            _btnBuyLivesMedium = Substitute.For <IGameObject>();
            _gameEngineInterface.FindGameObject("btnBuyLivesMedium").Returns(_btnBuyLivesMedium);

            _btnBuyLivesLarge = Substitute.For <IGameObject>();
            _gameEngineInterface.FindGameObject("btnBuyLivesLarge").Returns(_btnBuyLivesLarge);

            _txtCurrentLivesGameObject = Substitute.For <IGameObject>();
            _txtCurrentLives           = Substitute.For <IText>();
            _txtCurrentLivesGameObject.GetComponent <IText>().Returns(_txtCurrentLives);
            _gameEngineInterface.FindGameObject("txtCurrentLives").Returns(_txtCurrentLivesGameObject);

            var txtDebugOutputGameObject = Substitute.For <IGameObject>();

            _txtDebugOutput = Substitute.For <IText>();
            txtDebugOutputGameObject.GetComponent <IText>().Returns(_txtDebugOutput);
            _gameEngineInterface.FindGameObject("txtDebugOutput").Returns(txtDebugOutputGameObject);

            _buttonAndSaveLabels[Constants.ProductNames.BuyLivesSmall] = new Tuple <IText, IText>(Substitute.For <IText>(), Substitute.For <IText>());
            _btnBuyLivesSmall.GetComponent <IText>().Returns(_buttonAndSaveLabels[Constants.ProductNames.BuyLivesSmall].Item1);

            _buttonAndSaveLabels[Constants.ProductNames.BuyLivesMedium] = new Tuple <IText, IText>(Substitute.For <IText>(), Substitute.For <IText>());
            _btnBuyLivesMedium.GetComponent <IText>().Returns(_buttonAndSaveLabels[Constants.ProductNames.BuyLivesMedium].Item1);
            var savePctMediumGameObj = Substitute.For <IGameObject>();

            savePctMediumGameObj.GetComponent <IText>().Returns(_buttonAndSaveLabels[Constants.ProductNames.BuyLivesMedium].Item2);
            _gameEngineInterface.FindGameObject("txtBuyLivesMediumSavePct").Returns(savePctMediumGameObj);


            _buttonAndSaveLabels[Constants.ProductNames.BuyLivesLarge] = new Tuple <IText, IText>(Substitute.For <IText>(), Substitute.For <IText>());
            _btnBuyLivesLarge.GetComponent <IText>().Returns(_buttonAndSaveLabels[Constants.ProductNames.BuyLivesLarge].Item1);
            var savePctLargeGameObj = Substitute.For <IGameObject>();

            savePctLargeGameObj.GetComponent <IText>().Returns(_buttonAndSaveLabels[Constants.ProductNames.BuyLivesLarge].Item2);
            _gameEngineInterface.FindGameObject("txtBuyLivesLargeSavePct").Returns(savePctLargeGameObj);
        }