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); }
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); }
public void OnStart(IGameEngineInterface gameEngineInterface, IDataLayer dataLayer, IStoreLogicService storeLogicService) { GameEngineInterface = gameEngineInterface; DataLayer = dataLayer; MenuLogicHandler.GameController = this; GameLogicHandler.GameController = this; MenuLogicHandler.GameEngineInterface = gameEngineInterface; GameLogicHandler.GameEngineInterface = gameEngineInterface; GameEngineInterface.AppStoreService.OnAppStoreInitialized = storeLogicService.OnProductsLoaded; GameEngineInterface.AppStoreService.OnPurchaseSucceededEventHandler = storeLogicService.OnAppStorePurchaseSucceeded; storeLogicService.OnProductsConverted = OnProductsConvertedHandler; GameEngineInterface.VSyncCount = 1; storeLogicService.DataLayer = dataLayer; if (CurLevel == null) //CurLevel will only be null the very first time the app is loaded. { CurLevel = dataLayer.GetCurLevel(); //the player's current level is the default value for the Choose Level screen } //GameEngineInterface.LogToConsole(string.Format("screen size: {0} x {1} px", GameEngineInterface.Screen.Width, GameEngineInterface.Screen.Height)); }
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(); }
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); }
public AsteroidPlacementLogicImplementer(IGameEngineInterface gameEngineInterface, int asteroidDensity) { _gameEngineInterface = gameEngineInterface; _asteroidDensity = asteroidDensity; var playerShip = gameEngineInterface.FindGameObject("PlayerShip"); SHIP_WIDTH = playerShip.GetSize().X; AllAsteroids = new List <IGameObject>(); }
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 TestInitialize() { _sourceAsteroid = Substitute.For <IGameObject>(); _playerShip = Substitute.For <IGameObject>(); _mainCamera = Substitute.For <IGameObject>(); _gameEngineInterface = Substitute.For <IGameEngineInterface>(); _gameEngineInterface.FindGameObject("PlayerShip").Returns(_playerShip); _gameEngineInterface.FindGameObject("Asteroid").Returns(_sourceAsteroid); _gameEngineInterface.FindGameObject("MainCamera").Returns(_mainCamera); _sourceAsteroid.GetSize().X.Returns(2); _playerShip.GetSize().X.Returns(10); _asteroidPlacementLogicImplementer = new AsteroidPlacementLogicImplementer(_gameEngineInterface, _asteroidDensity); _asteroidPlacementLogicImplementer.SourceAsteroid = _sourceAsteroid; _asteroidPlacementLogicImplementer.LogToDebugOutput = LogToDebugOutput; SetPrivateMember("X_MAX", _asteroidPlacementLogicImplementer, 40); SetPrivateMember("_asteroidDensity", _asteroidPlacementLogicImplementer, 1); //asserts for constructor test: _playerShip.Received().GetSize(); _sourceAsteroid.Received().GetSize(); _gameEngineInterface.Received(1).FindGameObject("PlayerShip"); //these mocks used to be part of CalculateXMinAndXMax const float CAMERA_HEIGHT = 5; const int SCREEN_WIDTH = 100; //the screen is 100 pixels wide var leftEdgeOfScreen = new Vector3(0, 0, 0); var rightEdgeOfScreen = new Vector3(SCREEN_WIDTH, 0, 0); _sourceAsteroid.Transform.Position.Y.Returns(0); _mainCamera.Transform.Position.Y.Returns(CAMERA_HEIGHT); _gameEngineInterface.Screen.Width.Returns(SCREEN_WIDTH); _gameEngineInterface.ScreenUtils = Substitute.For <IScreenUtils>(); _gameEngineInterface.ScreenUtils .GetWorldPointFromScreenPoint(Arg.Is <IVector3>(v => v.X == 0 && v.Y == 0 && v.Z == CAMERA_HEIGHT)) .Returns(new Vector3(0, 0, 0)); _gameEngineInterface.ScreenUtils .GetWorldPointFromScreenPoint(Arg.Is <IVector3>(v => v.X == SCREEN_WIDTH && v.Y == 0 && v.Z == CAMERA_HEIGHT)) .Returns(new Vector3(WORLD_WIDTH, 0, 0)); }
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); }
public LoseTransitionLogicProvider(ILogicHandler logicHandler, IGameEngineInterface gameEngineInterface, IDataLayer dataLayer) : base(logicHandler, gameEngineInterface, dataLayer) { }
public HowToPlayLogicProvider(ILogicHandler logicHandler, IGameEngineInterface gameEngineInterface, IDataLayer dataLayer) : base(logicHandler, gameEngineInterface, dataLayer) { }
public ChooseLevelLogicProvider(ILogicHandler logicHandler, IGameEngineInterface gameEngineInterface, IDataLayer dataLayer) : base(logicHandler, gameEngineInterface, dataLayer) { }
public PauseLogicProvider(ILogicHandler logicHandler, IGameEngineInterface gameEngineInterface, IDataLayer dataLayer) : base(logicHandler, gameEngineInterface, dataLayer) { _pnlPauseMenu = null; }
public LoseLogicProvider(IGameController gameController, ILogicHandler logicHandler, IGameEngineInterface gameEngineInterface, IDataLayer dataLayer) : base(logicHandler, gameEngineInterface, dataLayer) { _gameController = gameController; }
public OutOfLivesLogicProvider(ILogicHandler logicHandler, IGameEngineInterface gameEngineInterface, IDataLayer dataLayer) : base(logicHandler, gameEngineInterface, dataLayer) { }
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); }