public void RegularPlayerTurn(Card playingCard) { if (currentBout.turnMode == false) { if (RegularPlayer.AttackDecision(currentBout.boutCount, currentBout.BoutCards, playingCard)) { currentBout.BoutCards.Add(playingCard); currentBout.lastPlayed = playingCard; RegularPlayer.Hand.Remove(playingCard); WriteLog("\nPlayer attakcs with " + playingCard.ToString()); playTurn(); AIPlayerTurn(); } } else { if (RegularPlayer.DefenseDecision(currentBout.lastPlayed, playingCard)) { currentBout.BoutCards.Add(playingCard); currentBout.lastPlayed = playingCard; RegularPlayer.Hand.Remove(playingCard); WriteLog("\nPlayer defends with " + playingCard.ToString()); playTurn(); AIPlayerTurn(); } } }
static void Main(string[] args) { //Basket basket = new Basket(); //Console.WriteLine(basket); var firstPlayer = new RegularPlayer(EnumTypesOfPlayer.RegularPlayer, "Ulua_1"); Library.GetNewVariant(firstPlayer); var secondPlayer = new NotepadPlayer(EnumTypesOfPlayer.NotepadPlayer, "Anisia_2"); //Library.GetNewVariant(secondPlayer); var thirdPlayer = new UberPlayer(EnumTypesOfPlayer.UberPlayer, "Petr_3"); //Library.GetNewVariant(thirdPlayer); var fourthPlayer = new UberCheaterPlayer(EnumTypesOfPlayer.UberCheaterPlayer, "Petya_3"); //Library.GetNewVariant(fourthPlayer); var fifthPlayer = new CheaterPlayer(EnumTypesOfPlayer.CheaterPlayer, "Pavel"); //Library.GetNewVariant(fifthPlayer); var sixPlayer = new UberCheaterPlayer(EnumTypesOfPlayer.UberCheaterPlayer, "Mama"); //Library.GetNewVariant(sixPlayer); var sevenPlayer = new RegularPlayer(EnumTypesOfPlayer.RegularPlayer, "Papa"); Console.WriteLine("\n\tЛист игроков"); for (int i = 0; i < AllLists.allPlayers.Count; i++) { Console.WriteLine(" " + AllLists.allPlayers[i] + " "); } Console.WriteLine(); Library.ChangeConsole(-25, 2); Library.Game(); }
public IPlayer Create() { RegularPlayer p = Activator.CreateInstance(players[RngProvider.Random.Next(players.Count)]) as RegularPlayer; p.ItemPrice = 10; p.Id = playerCount; p.Name = "Player" + playerCount++; p.WaitressMoney = 3; return(p); }
public void Start_Game_With_Three_Players() { _playerThree = CreateUser(); _sut = _boardGameFactory.ToThreePlayer(_playerOne, _playerTwo, _playerThree); _sut.Start(); _sut.Players.NumberOfPlayers.Should().Be(3); _playerOne.BetCardsQuantity.Should().Be(2); _playerOne.MyRacingCards.Count().Should().Be(6); _playerTwo.MyRacingCards.Count().Should().Be(6); _playerThree.MyRacingCards.Count().Should().Be(6); }
public BoardGameShould() { _racingCardManager = new RacingCardManager(_racingCardsFactory, new RandomMixStrategy(), _racingCardOnDeskManager); _boardGameFactory = new BoardGameFactory(new PlayersManagerFactory(new RandomMixStrategy(), _racingCardManager), _racingCardOnDeskManager); _playerOne = CreateUser(); _playerTwo = CreateUser(); _sut = _boardGameFactory.ToTwoPlayer(_playerOne, _playerTwo); }
private string ValidateBet(RegularPlayer player) { var betIsValid = game.BetIsValid(player); var pName = player.Name; while (!betIsValid) { Console.BackgroundColor = ConsoleColor.DarkRed; Console.WriteLine(($"{pName}: Balance lower then bet amount!")); Console.ResetColor(); betIsValid = game.BetIsValid(player);//player re-enters bet if (betIsValid) { break; } } return($"{pName} bet {player.Bet}$"); }
public async Task MediatRAsync() { //TODO: Refactor this implementation of Static Property BoardGame.Mediator = BuildMediator(); _playerThree = CreateUser(); _sut = _boardGameFactory.ToThreePlayer(_playerOne, _playerTwo, _playerThree); ITrackManager trackManager = new TrackManager(new TracksFactory(), new DecideSideFactory()); _sut.Start(); new RacingManager(_racingCardOnDeskManager, trackManager).StartRace(); _sut.Players.NumberOfPlayers.Should().Be(3); _playerOne.BetCardsQuantity.Should().Be(2); _playerOne.MyRacingCards.Count().Should().Be(6); _playerTwo.MyRacingCards.Count().Should().Be(6); _playerThree.MyRacingCards.Count().Should().Be(6); }
static void Main(string[] args) { Thread mainThread = Thread.CurrentThread; RegularPlayer myRegPlayer = new RegularPlayer("Vilgelm"); UberPlayer myUberPlayer = new UberPlayer("Gans"); BloknotPlayer myBloknotPlayer = new BloknotPlayer("Valentin"); Game newGame = new Game(0, 10, 7); newGame.AddPlayer(myRegPlayer); newGame.AddPlayer(myUberPlayer); newGame.AddPlayer(myBloknotPlayer); Console.ForegroundColor = ConsoleColor.Red; Console.WriteLine($"game started, thread {mainThread.ManagedThreadId}"); var gameResult = newGame.PlayGame(); if (gameResult.Result) { var winner = newGame.GetWinner(); Console.WriteLine($"winner is {winner.Name} "); } else { Console.WriteLine("No winner"); } Player.PrintAllPlayerResults(); myRegPlayer.PrintAnswer(); myUberPlayer.PrintAnswer(); myBloknotPlayer.PrintAnswer(); Console.ReadKey(); }
public void nextBout() { if (RegularPlayer.Hand.Count < 6) { RegularPlayer.dealPlayerHand(GameDeck, RegularPlayer.Hand.Count); } if (AIPlayer.Hand.Count < 6) { AIPlayer.dealPlayerHand(GameDeck, AIPlayer.Hand.Count); } WriteLog("\nNew Bout"); CurrentBout.Initialize(); currentBout.startPlayer = (currentBout.startPlayer == 0) ? 1 : 0; currentBout.playerTurn = currentBout.startPlayer; currentBout.turnMode = false; if (currentBout.startPlayer == 1) { AIPlayerTurn(); } }
public static Player Start() { Player player = null; bool flag = true; int tryCounter; while (flag) { foreach (Player playerF in _Players) { switch (playerF.Type) { case "Обычный": IGame regularPlayer = new RegularPlayer(playerF.Name); _result = regularPlayer.Play(); _regularPlayerStats.Add(_result); player = playerF; break; case "Игрок-блокнот": IGame notePlayer = new NotePlayer(playerF.Name); _result = notePlayer.Play(); _notePlayerStats.Add(_result); player = playerF; break; case "Убер-игрок": IGame uberPlayer = new UberPlayer(playerF.Name); _result = uberPlayer.Play(); _uberPlayerStats.Add(_result); player = playerF; break; case "Читер": IGame cheaterPlayer = new CheaterPlayer(playerF.Name); _result = cheaterPlayer.Play(); _cheaterPlayerStats.Add(_result); player = playerF; break; case "Убер-читер": IGame uberCheaterPlayer = new UberCheaterPlayer(playerF.Name); _result = uberCheaterPlayer.Play(); _uberCheaterPlayerStats.Add(_result); player = playerF; break; } _tryCounter++; if (_tryCounter >= 100) { flag = false; player = null; break; } if (_result == _bucketWeight) { flag = false; break; } } } return(player); }
private void PrintBet(RegularPlayer player) { Console.WriteLine($"{player.Name} bet {player.Bet}$"); }
static void Main(string[] args) { // value, that players need to guess and maximum number of turns int valueToGuess = 45; int maxNumberOfTurns = 100; int minValueToGuess = 40; int maxValueToGuess = 140; bool continueGame = true; do { Console.WriteLine($"Choose your action\n1 - Play new game\n2 - Exit"); int action = int.Parse(Console.ReadLine()); Menu menuOperation = (Menu)action; // simple menu logic switch (menuOperation) { case Menu.Newgame: { try { Console.WriteLine("Enter value to guess"); valueToGuess = int.Parse(Console.ReadLine()); if (valueToGuess < minValueToGuess || valueToGuess > maxValueToGuess) { throw new ArgumentOutOfRangeException(); } // create a new game Game myGame = new Game(valueToGuess, maxNumberOfTurns); // create new players add add them to the game RegularPlayer myRegularPlayer = new RegularPlayer("Vasya", 1); UberPlayer myUberPlayer = new UberPlayer("Gans", 2); Bloknot myBloknotPlayer = new Bloknot("Igor Valerievish", 3); Cheater myCheaterPlayer = new Cheater("Gome Simson", 4); UberCheater myUberCheaterPlayer = new UberCheater("Mozzg", 5); myGame.AddPlayer(myRegularPlayer); myGame.AddPlayer(myUberPlayer); myGame.AddPlayer(myBloknotPlayer); myGame.AddPlayer(myCheaterPlayer); myGame.AddPlayer(myUberCheaterPlayer); // start game GeneralPlayer winner = myGame.PlayGame(); // write name of the pleyer, who guessed the value if exist if (winner != null) { Console.WriteLine($"Player {winner.Name} won"); } // or write name of the pleyer, who gave the nearest value else { winner = myGame.GetNearestResult(); Console.WriteLine($"Player {winner.Name} gave the nearest result"); } } catch (ArgumentOutOfRangeException) { Console.WriteLine("Value to guess should be in range [40,140]"); } catch (Exception) { Console.WriteLine("Cant parse to int"); } break; } case Menu.Exit: { continueGame = false; break; } } } while (continueGame); Console.ReadKey(); }