public void CreateWithNoNoise_AddsOnlyRequiredDominoPieces()
        {
            var beginCategory = new DominoTile("Begin", "");
            var endCategory = new DominoTile("End", "");
            var middleCategory = new DominoTile("Middle", "");

            A.CallTo(() => _pathFinder.FindPath(1, 1)).WithAnyArguments().Returns(new SuggestedPath { MinimumRequiredPieces = 2 });
            A.CallTo(() => _categoriesProvider.DrawTile()).ReturnsNextFromSequence(beginCategory, endCategory, middleCategory);
            A.CallTo(() => _categoriesProvider.DrawTileFromCategory("Begin")).Returns(beginCategory);
            A.CallTo(() => _categoriesProvider.DrawTileFromCategory("End")).Returns(endCategory);
            A.CallTo(() => _categoriesProvider.DrawTileFromCategory("Middle")).Returns(middleCategory);

            var builder = new GameBuilder(_pathFinder);

            var game = builder.Create(10, 10, 0, _categoriesProvider);

            Assert.Equal(2, game.PlayerPieces.Length);

            var firstPiece = game.PlayerPieces[0];
            Assert.Equal(beginCategory.Category, firstPiece.FirstTile.Category);
            Assert.Equal(middleCategory.Category, firstPiece.SecondTile.Category);

            var secondPiece = game.PlayerPieces[1];
            Assert.Equal(middleCategory.Category, secondPiece.FirstTile.Category);
            Assert.Equal(endCategory.Category, secondPiece.SecondTile.Category);
        }
Exemple #2
0
    public Game Construct()
    {
        Initialize();

        GameObject gameHolder = new GameObject();
        gameHolder.name = gameName;
        gameHolder.transform.position = gameSetting.GridPosition;

        List<IGroupPattern> groupPatterns = groupPatternConverter.Convert();

        GameBuilder gameBuilder = new GameBuilder(gameHolder,
                                                  gameSetting,
                                                  particleSpawner,
                                                  blockColorRepository,
                                                  groupPatterns,
                                                  backgroundFactory,
                                                  cameraManager,
                                                  blockViewSpawner,
                                                  floatingTextRenderer);

        Game game = gameBuilder.Build();

        game.InitializeGrid();

        return game;
    }
 /// <summary>
 /// Constructor of a GameController object.
 /// </summary>
 /// <param name="gameBuilder">Defines the GameBuilder the GameController uses.</param> 
 /// <param name="gameHandler">Defines the GameHandler the GameController uses.</param> 
 public GameController(GameBuilder gameBuilder, GameHandler gameHandler)
 {
     this.gameBuilder = gameBuilder;
     this.gameHandler = gameHandler;
     this.gameBuilder.CollisionHandler = this;
     this.gameBuilder.PlayerHandler = this;
 }
Exemple #4
0
        public void GivenAGame(string gameName)
        {
            var game = new GameBuilder()
                            .WithName(gameName)
                            .Build();

            SaveDomainObject(game);
        }
        public void TestSync()
        {
            //Arrange
            var game = new GameBuilder(this.Session).Build();

            //Act
            this.scoreboard.AddGame(game);
            this.Session.Derive();

            //Assert
            Assert.Equal(4, game.Scores.Count);
        }
Exemple #6
0
    // Start is called before the first frame update
    void Awake()
    {
        var buttons = GetComponentsInChildren <Button>();

        startButton  = buttons.Where(x => x.name == "StartButton").FirstOrDefault();
        exitButton   = buttons.Where(x => x.name == "ExitButton").FirstOrDefault();
        choiceButton = buttons.Where(x => x.name == "ChoiceButton").FirstOrDefault();
        choiceButton.onClick.AddListener(OnChoiceButtonClick);
        startButton.onClick.AddListener(OnStartButtonClick);
        exitButton.onClick.AddListener(OnExitButtonClick);
        gameBuilder = FindObjectOfType <GameBuilder>();
    }
 /// <summary>
 /// Saves the game to a file and show a success message.
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 private void SaveClicked(object sender, RoutedEventArgs e)
 {
     try
     {
         GameBuilder.SaveGame(_gameName.Text, _game);
         Window.GetWindow(this).Close();
     }
     catch (Exception ex)
     {
         NavigationService.Navigate(new InGameMenuErrorPage());
     }
 }
        /// <summary>
        ///     Creates a new server process
        /// </summary>
        /// <param name="workingNetManager"></param>
        /// <param name="gameName"></param>
        /// <param name="sceneName"></param>
        /// <param name="maxPlayers"></param>
        /// <param name="userProvider"></param>
        /// <param name="shutOnDisconnect"></param>
        /// <param name="onServerStarted"></param>
        /// <param name="onServerFailedToStart"></param>
        internal static void CreateServerProcess(this NetworkManager workingNetManager,
                                                 string gameName, string sceneName, int maxPlayers, UserProvider userProvider, bool shutOnDisconnect,
                                                 Action onServerStarted, Action onServerFailedToStart = null)
        {
#if UNITY_EDITOR
            string serverOnlinePath =
                $"{GameBuilder.GetBuildDirectory()}Team-Capture-Quick/{ServerOnlineFile}";
#else
            string serverOnlinePath = $"{Game.GetGameExecutePath()}/{ServerOnlineFile}";
#endif

            //Check to make sure the server online file doesn't already exist
            if (File.Exists(serverOnlinePath))
            {
                onServerFailedToStart?.Invoke();
                Logger.Error("A server is already running!");
                return;
            }

#if UNITY_EDITOR
            string tcApp = $"{GameBuilder.GetBuildDirectory()}Team-Capture-Quick/";
#else
            string tcApp = Game.GetGameExecutePath();
#endif

#if UNITY_EDITOR_WIN || UNITY_STANDALONE_WIN
            tcApp += "/Team-Capture.exe";
#else
            tcApp += "/Team-Capture";
#endif

            string tcArguments =
                $"-batchmode -nographics -gamename \"{gameName}\" -scene {sceneName} -maxplayers {maxPlayers} -auth-method {userProvider.ToString()}" +
                $"{(shutOnDisconnect ? " -closeserveronfirstclientdisconnect" : string.Empty)} -high";

#if UNITY_EDITOR_LINUX || UNITY_STANDALONE_LINUX
            ProcessHelper.LaunchLinuxTerminalAndLaunchProcess(tcApp, tcArguments);
#else
            System.Diagnostics.Process tcProcess = new()
            {
                StartInfo = new System.Diagnostics.ProcessStartInfo
                {
                    FileName         = tcApp,
                    Arguments        = tcArguments,
                    WorkingDirectory = Game.GetGameExecutePath()
                }
            };
            tcProcess.Start();
#endif

            //We need to wait for the server online file, and to not cause the game to freeze we run it async
            WaitForServerOnlineFile(serverOnlinePath, onServerStarted, onServerFailedToStart).Forget();
        }
        public void Add_ShouldAssignAnIdToTheGameAndReturnTheSavedGame()
        {
            //Arrange
            var newGame = new GameBuilder().Build();

            //Act
            var result = _repo.Add(newGame);

            //Assert
            Assert.That(result.Id, Is.Not.EqualTo(Guid.Empty));
            Assert.That(result, Is.SameAs(newGame));
        }
        public void GivenNewBoardWithOneUser_WhenGamePlayed_ThenUserIsAdvanced()
        {
            //given
            var gameBuilder = new GameBuilder();
            var player      = gameBuilder.AddPlayer(new Player());
            var game        = gameBuilder.Build();
            //when
            var diceThrow = game.Play();

            //then
            game.Players.ToList()[0].Place.Should().Be(diceThrow + 1);
        }
Exemple #11
0
        /// <summary>
        /// Usa el gameBuilder para crear los distintos elementos.
        /// </summary>
        /// <param name="loader"></param>
        private void AsignarPlayersConMeshes(TgcSceneLoader loader)
        {
            GameBuilder gb = new GameBuilder(MediaDir, this, loader);

            Autos = new List <Auto>();
            //BosqueScene = gb.CrearBosque();
            Velocimetro = new Velocimetro(this);
            AutoJugador = gb.CrearHummer(MapScene, Velocimetro);
            Autos.Add(AutoJugador);
            gb.CrearLuces();
            //sprites en pantalla
        }
        public void CreateFromGame_UsesAGameToGetTheInfoFromThePerspectiveOfThePlayer()
        {
            //Arrange
            var          settings = new GameSettingsBuilder().WithMustReportSunkenShip(true).Build();
            Mock <IGame> gameMock = new GameBuilder().WithSettings(settings).BuildMock();
            IGame        game     = gameMock.Object;

            IGridInfo expectedPlayerGridInfo   = new Mock <IGridInfo>().Object;
            IGridInfo expectedOpponentGridInfo = new Mock <IGridInfo>().Object;

            _gridInfoFactoryMock.Setup(f => f.CreateFromGrid(game.Player1.Grid)).Returns(expectedPlayerGridInfo);
            _gridInfoFactoryMock.Setup(f => f.CreateFromGrid(game.Player2.Grid)).Returns(expectedOpponentGridInfo);

            IList <IShipInfo> expectedPlayerShipInfos = new List <IShipInfo>();

            _shipInfoFactoryMock.Setup(f => f.CreateMultipleFromFleet(game.Player1.Fleet)).Returns(expectedPlayerShipInfos);
            IList <IShipInfo> expectedOpponentShipInfos = new List <IShipInfo>();

            _shipInfoFactoryMock.Setup(f => f.CreateMultipleFromSunkenShipsOfFleet(game.Player2.Fleet)).Returns(expectedOpponentShipInfos);

            //Act
            IGameInfo gameInfo = _factory.CreateFromGame(game, game.Player1.Id);

            //Assert
            Assert.That(gameInfo, Is.Not.Null, "No instance of a class that implements IGame is returned.");
            Assert.That(gameInfo.Id, Is.EqualTo(game.Id), "The Id should be the Id of the game.");

            gameMock.Verify(g => g.GetPlayerById(game.Player1.Id), Times.Once,
                            "The player should be retrieved using the GetPlayerById method of the game correctly.");

            Assert.That(gameInfo.IsReadyToStart,
                        Is.EqualTo(game.Player1.Fleet.IsPositionedOnGrid && game.Player2.Fleet.IsPositionedOnGrid),
                        "IsReadyToStart must be true when both the player fleet as the opponent fleet is positioned on the grid.");

            Assert.That(gameInfo.HasBombsLoaded, Is.EqualTo(game.Player1.HasBombsLoaded), "HasBombsLoaded should be equal to HasBombsLoaded of the player");
            Assert.That(gameInfo.OwnGrid, Is.SameAs(expectedPlayerGridInfo),
                        "The OwnGrid should be the instance returned by the IGridInfoFactory. " +
                        "The IGridInfoFactory should create the info from the Grid of the player.");
            Assert.That(gameInfo.OwnShips, Is.SameAs(expectedPlayerShipInfos),
                        "The OwnShips should be the list returned by the IShipInfoFactory. " +
                        "The IShipInfoFactory should create the list from all the ships of the player.");

            gameMock.Verify(g => g.GetOpponent(game.Player1), Times.Once,
                            "The opponent should be retrieved using the GetOpponent method of the game correctly.");

            Assert.That(gameInfo.OpponentGrid, Is.SameAs(expectedOpponentGridInfo),
                        "The OpponentGrid should be the instance returned by the IGridInfoFactory. " +
                        "The IGridInfoFactory should create the info from the Grid of the opponent.");
            Assert.That(gameInfo.SunkenOpponentShips, Is.SameAs(expectedOpponentShipInfos),
                        "The SunkenOpponentShips should be the list returned by the IShipInfoFactory. " +
                        "The IShipInfoFactory should create the list from all the sunken ships of the opponent.");
        }
        public ActionResult Configure(GameAdminVM vm)
        {
            if (ModelState.IsValid)
            {
                Configuration globalConf = new Configuration()
                {
                    Key  = ConfigurationKeys.GlobalGameConfiguration.GetName(),
                    Data = JsonConvert.SerializeObject(vm.GlobalGameConfiguration)
                };
                Configuration planetConf = new Configuration()
                {
                    Key  = ConfigurationKeys.GlobalPlanetConfiguration.GetName(),
                    Data = JsonConvert.SerializeObject(vm.GlobalPlanetConfiguration)
                };

                db.Configurations.Attach(globalConf);
                db.Configurations.Attach(planetConf);

                db.Entry(globalConf).State = EntityState.Modified;
                db.Entry(planetConf).State = EntityState.Modified;

                db.SaveChanges();

                GameBuilder builder  = new GameBuilder();
                Universe    universe = builder.AddGlobalGameConfiguration(vm.GlobalGameConfiguration).AddPlanetsOnSolarSystem(vm.GlobalPlanetConfiguration).BuildUniverse();

                if (ValidationUtil.ValidateObject(universe))
                {
                    try
                    {
                        db.ClearDatabase();
                        db.Universes.Add(universe);
                        db.SaveChanges();
                    }
                    catch (DbEntityValidationException ex)
                    {
                        var error = ex.EntityValidationErrors.First().ValidationErrors.First();
                        Console.WriteLine("error : " + error.PropertyName);
                        Console.WriteLine("message : " + error.ErrorMessage);
                        this.ModelState.AddModelError(error.PropertyName, error.ErrorMessage);

                        return(ReturnView(vm));
                    }
                }

                return(Redirect("/Home"));
            }
            else
            {
                return(ReturnView(vm));
            }
        }
Exemple #14
0
        public virtual async Task <SourceDemo> ParseAsync(byte[] content)
        {
            var demo = new SourceDemo();
            var buf  = new SourceBufferReader(content);

            if (Options.ReadHeader)
            {
                await demo.ReadHeader(buf).ConfigureAwait(false);
            }

            if (Options.ReadMessages)
            {
                await Task.Run <SourceGame>(() => demo.Game = GameBuilder.Invoke(demo)).ConfigureAwait(false);

                if (!Options.ReadHeader)
                {
                    buf.SeekBytes(1072);
                }

                await demo.ReadMessagesAsync(buf).ConfigureAwait(false);

                foreach (var message in demo.Messages)
                {
                    if (Options.ReadPackets && message is Packet pa)
                    {
                        await demo.Read(pa).ConfigureAwait(false);

                        continue;
                    }
                    if (Options.ReadStringTables && message is StringTables st)
                    {
                        await demo.Read(st).ConfigureAwait(false);

                        continue;
                    }
                    if (Options.ReadDataTables && message is DataTables dt)
                    {
                        await demo.Read(dt).ConfigureAwait(false);

                        continue;
                    }
                    if (Options.ReadUserCmds && message is UserCmd uc)
                    {
                        await demo.Read(uc).ConfigureAwait(false);

                        continue;
                    }
                }
            }

            return(demo);
        }
Exemple #15
0
        public void PositionTest()
        {
            IGame game = new GameBuilder()
                         .SetTitle("Engine Test")
                         .SetExceptinDialog(true)
                         .SetDebugLogging(true)
                         .SetDefaultEvents()
                         .Build();

            game.LoadScene(GetPositionScene());

            game.Run(60.0d);
        }
        public GameBuilderTests()
        {
            var wordBuilder = A.Fake <IWordsRepository>(o => o.Strict());

            _randomUtils = A.Fake <IRandomUtils>(o => o.Strict());

            A.CallTo(() => wordBuilder.Get25RandomWords()).Returns(GetListOfWords());
            A.CallTo(() => _randomUtils.GenerateCode()).Returns("aaa");
            A.CallTo(() => _randomUtils.SingleValue(Color.Blue, Color.Red)).Returns(Color.Blue);
            A.CallTo(() => _randomUtils.RandomizeList(A <List <Card> > .Ignored)).Invokes(() => { });

            _gameBuilder = new GameBuilder(wordBuilder, _randomUtils);
        }
Exemple #17
0
        public void GivenIHaveBeenDealtMyInitalTwoCards()
        {
            var game_builder = new GameBuilder().find_game_by_player_id(PlayerToken.player_id);

            var game = game_builder.set_game_state_to(TableStatus.hands_dealt)
                       .mark_cards_as_dealt()
                       .add_dealers_hand()
                       .with_status_of(HandStatus.in_play)
                       .build()
                       .build();

            DataBaseHelper.save_or_add(game);
        }
Exemple #18
0
        public void UnitImplTest()
        {
            NewGameDataContext dataContext = new NewGameDataContext();

            dataContext.FactionP1  = Units.Faction.Dwarves;
            dataContext.FactionP2  = Units.Faction.Elves;
            dataContext.NicknameP1 = "Player1";
            dataContext.NicknameP2 = "Player2";
            dataContext.SizeOfMap  = Map.MapSize.medium;
            GameBuilder gameBuilder = (GameBuilder) new PetitMonde.NewGame(dataContext);

            gameBuilder.BuildGame();
        }
        public GameCreationScreenViewModel(IMessenger messenger)
        {
            MessengerInstance    = messenger;
            Builder              = new GameBuilder();
            OnValidationChanged += StartGameCommand.RaiseCanExecuteChanged;

            PlayerBuilder1 = new PlayerBuilderViewModel(Builder.PlayerBuilder1, Colors.RoyalBlue, OnValidationChanged);
            PlayerBuilder2 = new PlayerBuilderViewModel(Builder.PlayerBuilder2, Colors.DarkRed, OnValidationChanged);

            var rng = new Random();

            (Builder.PlayerBuilder1, Builder.PlayerBuilder2).ForEach(b => b.Name = GetDefaultPlayerName(rng));
        }
            public void NineInsteadOfTen()
            {
                var royalFlush = Helper.HearthsRoyalFlush();

                var game = GameBuilder.Game(royalFlush).SwapLastCardWith(
                    CardBuilder.Nine().Hearths());

                // ACT
                var result = new RoyalFlush().Evaluate(game);

                // ASSERT
                Assert.IsFalse(result.Success());
            }
        public void StartGame(GameSettings settings)
        {
            GameBuilder gameBuilder = new GameBuilder(_ui, _rng, _species);
            GameHandler gameHandler = gameBuilder.BuildGame(settings);

            try {
                gameHandler.Process();
            } catch (Exception ex) {
                Logger.Fatal($"Received error from GameHandler: {ex.Message}.");
                Logger.Debug($"Stacktrace: {ex.StackTrace}.");
                _ui.OnError(ex.Message);
            }
        }
Exemple #22
0
        private void saveAction()
        {
            GameBuilder builder = new GameBuilder();

            try
            {
                builder.save("save.dat");
                MessageBox.Show("The game has been saved.");
            } catch (Exception e)
            {
                MessageBox.Show("Error while saving the game.");
            }
        }
Exemple #23
0
        public void SaveAndLoadTest()
        {
            IGame game  = new GameBuilder().Build();
            Scene scene = new Scene {
                Name = "Test"
            };

            Guid tmp = scene.InstanceGuid;

            scene.Save("testScene.json");

            Assert.AreEqual(game.PreLoadScene <Scene>("testScene.json").Value, tmp);
        }
Exemple #24
0
 public void SimpleBuilderPlayground()
 {
     var gb = GameBuilder.Create <String>()
              .WithContext("a")
              .HasNameAndDescription("name", "asdsadsa")
              .HasEndState("name2", "asdsadsa")
              .HasCheckerForStateChange(s => s == "").ThenGoToState("")
              .HasCheckerForStateChange(s => s != "").ThenGoToState("")
              .HasCheckerForContextDataChange(s => s == "").ThenDo(t => t.ToCharArray())
              .EndHasState()
              .HasStartState("", "")
              .EndHasState();
 }
        public void CanDoBasicBuilderConstruction()
        {
            var builder = new GameBuilder()
                          .AddCommand <EmptyCommandInfo>("test")
                          .AddIOHandler(_ioHandler)
                          .AddSystem <EmptySystem>()
                          .ComposeSystems()
                          .AddEntity().WithComponent <EmptyComponent>()
                          .ComposeEntities()
                          .Build();

            _runQuickGame(builder);
        }
            private async Task <bool> StartNew(string name, bool playWithBot)
            {
                if (games.ContainsKey(name))
                {
                    return(false);
                }

                var game = GameBuilder.BuildGame(name);

                games[name] = new Context
                {
                    game        = game,
                    Connections = { (Context.ConnectionId, 0) },
Exemple #27
0
        private static string GetBuildDir()
        {
            string buildDir = $"{GameBuilder.GetBuildDirectory()}Team-Capture-Quick/";

            if (!Directory.Exists(buildDir))
            {
                return(null);
            }

            string fullPath = $"{buildDir}{ApplicationName}";

            return(!File.Exists(fullPath) ? null : Path.GetFullPath(fullPath));
        }
Exemple #28
0
        static void Main(string[] args)
        {
            Console.WriteLine("Sprint Ego!");
            var gameBuilder = new GameBuilder();
            var game        = gameBuilder.WithDefaultPlayers().WithDefaultQuestions().StartGame();

            while (!game.IsLastRound())
            {
                PlayTurn(game);
            }
            Console.WriteLine("LAST ROUND!");
            PlayTurn(game);
        }
        public void CreateWithNoise_AdditionalPiecesAdded()
        {
            var minimumPathSize = 2;
            var noiseCount = 5;
            A.CallTo(() => _pathFinder.FindPath(1, 1)).WithAnyArguments().Returns(new SuggestedPath { MinimumRequiredPieces = minimumPathSize });
            A.CallTo(() => _categoriesProvider.DrawTile()).WithAnyArguments().Returns(new DominoTile("", ""));

            var builder = new GameBuilder(_pathFinder);

            var game = builder.Create(10, 10, noiseCount, _categoriesProvider);

            Assert.Equal(minimumPathSize + noiseCount, game.PlayerPieces.Length);
        }
Exemple #30
0
        public void SceneTest()
        {
            IGame game = new GameBuilder().Build();
            Scene sce  = new Scene();

            int count = 0;

            game.SceneEvents.UnloadSceneEvent += (sender, args) =>
            {
                if (args.UnloadScene.GetHashCode() == sce.GetHashCode())
                {
                    count++;
                }
            };
            // ロードに成功
            Assert.True(game.LoadScene(sce).IsSuccess);
            // ロードに成功しているので取得に成功
            Assert.True(game.GetScene(sce.InstanceGuid).IsSuccess);

            Scene scene  = new Scene();
            Scene scene2 = new Scene();

            Assert.True(game.LoadScene(scene).IsSuccess);
            // 既に追加されているので失敗
            Assert.False(game.LoadScene(scene).IsSuccess);
            // ロードに成功しているので取得に成功
            Assert.True(game.GetScene(scene.InstanceGuid).IsSuccess);
            Assert.True(game.UnloadScene(scene).IsSuccess);
            // 既にアンロードされているので失敗
            Assert.False(game.UnloadScene(scene).IsSuccess);
            // アンロードされているので取得に失敗
            Assert.False(game.GetScene(scene.InstanceGuid).IsSuccess);
            Assert.True(game.LoadScene(scene).IsSuccess);
            Assert.True(game.GetScene(scene.InstanceGuid).IsSuccess);
            Assert.True(game.LoadScene(scene2).IsSuccess);
            Assert.True(game.GetScene(scene2.InstanceGuid).IsSuccess);
            Assert.True(game.UnloadScenes());
            // 全てアンロードしたので失敗
            Assert.False(game.GetScene(scene.InstanceGuid).IsSuccess);
            Assert.False(game.GetScene(scene2.InstanceGuid).IsSuccess);

            game.LoadScene(scene);
            game.LoadNextScene(scene2);
            // 前にロードしたシーンの取得に失敗
            Assert.False(game.GetScene(scene.InstanceGuid).IsSuccess);
            // 新しくロードしたシーンの取得に成功
            Assert.True(game.GetScene(scene2.InstanceGuid).IsSuccess);

            // イベントの呼び出しチェック
            Assert.True(count == 1);
        }
Exemple #31
0
        private void bPlayLocal_Click(object sender, EventArgs e)
        {
            InGameForm ingameForm = new FormsPrototype.InGameForm(null, null, null);
            LocalGame  game       = GameBuilder.CreateLocalGame()
                                    .BlackPlayer(CreateAgentFromComboboxObject(ingameForm, this.cbBlack.SelectedItem, StoneColor.Black))
                                    .WhitePlayer(CreateAgentFromComboboxObject(ingameForm, this.cbWhite.SelectedItem, StoneColor.White))
                                    .Ruleset(RulesetType.Chinese)
                                    .Komi(7.5f)
                                    .BoardSize(new GameBoardSize((int)this.nLocalBoardSize.Value))
                                    .Build();

            ingameForm.LoadGame(game);
            ingameForm.Show();
        }
        public void FinishGame_WrongGameId_GameIsNotRemoved()
        {
            // Arrange
            var game = GameBuilder.Build("Team1", 4, "Team2", 3, 1);

            service.ActiveGames.Add(game);

            // Act
            var result = service.FinishGame(game.Id + 1);

            // Assert
            Assert.False(result);
            Assert.Single(service.ActiveGames);
        }
Exemple #33
0
        public void TestBuilder()
        {
            GameBuilder g = GameBuilder.create();

            g = g.board(GameBuilder.LitMap).player1("francois", "human").player2("aurelien", "orc");
            Game tg = g.build();

            Assert.IsNotNull(tg);

            Assert.AreEqual(tg.current.name, "francois");
            Assert.AreEqual(tg.map.tiles.Length, GameBuilder.LitMap * GameBuilder.LitMap);
            Assert.AreEqual(tg.players[0].points, 0);
            Assert.AreEqual(tg.saveStates.states.Count, 0);
        }
        private void InitializeTestData(out Game game, out Comment comment)
        {
            var gameBuilder    = new GameBuilder();
            var commentBuilder = new CommentBuilder();

            game = gameBuilder.WithId(new Guid("2245390a-6aaa-4191-35f5-08d7223464b8")).WithKey("c21")
                   .WithName("Cry Souls").WithDescription("Cry Souls desc").WithUnitsInStock(10).WithPrice(10)
                   .WithPublisher("Unknown").Build();

            comment = commentBuilder.WithId(new Guid("fec459ec-ede8-4ab9-b0e2-b3819f0a09b9")).WithName("CommentAuthor1")
                      .WithBody("Comment body1")
                      .WithGameId(new Guid("2245390a-6aaa-4191-35f5-08d7223464b8"))
                      .Build();
        }
Exemple #35
0
    // Start is called before the first frame update
    void Start()
    {
        // finds the game builder.
        if (builder == null)
        {
            builder = FindObjectOfType <GameBuilder>();
        }

        // finds title object.
        if (titleObject == null)
        {
            titleObject = GameObject.Find("Title");
        }
    }
        public void Create_BuildsGameOfAGivenSize(int width, int height)
        {
            A.CallTo(() => _pathFinder.FindPath(width, height)).Returns(new SuggestedPath { MinimumRequiredPieces = 3 });
            A.CallTo(() => _categoriesProvider.DrawTile()).WithAnyArguments().Returns(new DominoTile("FAKE", "FAKE"));

            var builder = new GameBuilder(_pathFinder);

            var game = builder.Create(width, height, 0, _categoriesProvider);

            Assert.Equal(width, game.Width);
            Assert.Equal(height, game.Height);
        }