Inheritance: MonoBehaviour
Exemplo n.º 1
0
    // 재생시킬 모션과 승패판정, 현재 득점을 전달합니다.
    public void Setup(Winner winner, int serverScore, int clientScore) {
        GameObject serverPlayer = GameObject.Find("Daizuya");
        GameObject clientPlayer = GameObject.Find("Toufuya");

        // 슬로우 재생을 원래대로 되돌리고 날아가는 액션을 발동시킵니다.
        float delay = 0.0f;
        switch (winner) {
        case Winner.ServerPlayer:
            serverPlayer.GetComponent<Player>().SetDefaultAnimationSpeed();
            serverPlayer.collider.enabled = false; // 날아가는 처리에 간섭하지 않게 충돌을 끕니다.
            delay = serverPlayer.GetComponent<Player>().GetRemainAnimationTime();
            clientPlayer.GetComponent<Player>().StartDamage(serverScore, delay * 0.3f); // 모션이 절반 정도로 끝나므로*0.5f합니다.
            break;
        case Winner.ClientPlayer:
            clientPlayer.GetComponent<Player>().SetDefaultAnimationSpeed();
            clientPlayer.collider.enabled = false; // 날아가는 처리에 간섭하지 않게 충돌을 끕니다.
            delay = clientPlayer.GetComponent<Player>().GetRemainAnimationTime();
            serverPlayer.GetComponent<Player>().StartDamage(clientScore, delay * 0.3f); // 모션이 절반 정도로 끝나므로 *0.5f합니다.
            break;
        case Winner.Draw:
        default:
            serverPlayer.GetComponent<Player>().SetDefaultAnimationSpeed();
            clientPlayer.GetComponent<Player>().SetDefaultAnimationSpeed();
            serverPlayer.GetComponent<Player>().ActionEffectOn(); // 공격 미스음, 실패음을 유효하게 합니다.
            clientPlayer.GetComponent<Player>().ActionEffectOn();
            break;
        }
    }
Exemplo n.º 2
0
        static void Main(string[] args)
        {
            //Prepare Operating-system independent environment and initialize some variables
            _winner = Winner.undetermined;
            if (PlatformID.Win32NT == Environment.OSVersion.Platform) 
            {
                Console.WindowWidth = 100;
            } 
            else
            {
                Console.WriteLine("Please make sure that your Terminal Window is at least 100 characters wide");
                Console.WriteLine("Press any key to cotinue when ready...");
                Console.ReadKey();
            }
	        Console.ForegroundColor = ConsoleColor.Gray;
            
            //Create and initialize playing grids in which each player can see their own ships
            HomeGrid playerHomeGrid = new HomeGrid(Playertype.Human);
            HomeGrid aiHomeGrid = new HomeGrid(Playertype.AI);

            //Create and initialize radar Grids in which each player can 
            EnemyGrid playerEnemyGrid = new EnemyGrid(Playertype.Human);
            EnemyGrid AIEnemyGrid = new EnemyGrid(Playertype.AI);

            //fleet deployment (currently automatic)
			Fleet playerFleet = new Fleet();
            Fleet aiFleet = new Fleet();
            playerHomeGrid.DeployFleet(playerFleet);
            aiHomeGrid.DeployFleet(aiFleet);
            bool forfeit=false;

            // subscribe to fire-exchange events
            playerEnemyGrid.AimFireEvent += aiHomeGrid.ReceiveShot;
            AIEnemyGrid.AimFireEvent += playerHomeGrid.ReceiveShot;

            //Main game phase
            do
            {
                forfeit = playerEnemyGrid.AimAndFire();  
                if (Winner == Winner.undetermined && !forfeit) AI.Turn(AIEnemyGrid);
  
            } while (Winner == Winner.undetermined && !forfeit);

            //End of the game
            Console.SetCursorPosition(0, 23);

            if (forfeit)
            {
                
                Console.WriteLine("AI has won by player forfeiture");
            }
            else
            {
               
                Console.WriteLine("Game ends. {0} victorious!", _winner.ToString());
            }
            Console.ReadLine();
			
        }
Exemplo n.º 3
0
 public void SetWinner(bool isUpWinner)
 {
     if (!isUpWinner) {
         winner = Winner.Down;
     } else {
         winner = Winner.Up;
     }
 }
Exemplo n.º 4
0
 public void Insert_ShouldReturn_NonNull_Boolean()
 {
     //Act
     IWinner winner = new Winner();
     bool result = winner.Insert(new WinnerDTO());
     //Assert
     Assert.IsInstanceOfType(result, typeof (bool));
 }
Exemplo n.º 5
0
 public void DeleteAll_ShouldReturn_NonNull_Boolean()
 {
     //Act
     IWinner winner = new Winner();
     bool result = winner.DeleteAll();
     //Assert
     Assert.IsInstanceOfType(result, typeof (bool));
 }
    // Use this for initialization
    void Start()
    {
        _listEnemies = new List<GameObject>();
        fTimeCreate = 0.0f;
        winner = Winner.none;

        statusUser = GameObject.Find( "User").GetComponent<StatusUser>();
    }
Exemplo n.º 7
0
 public bool Insert(WinnerDTO winner)
 {
     Winner w = new Winner {AttendeeID = winner.AttendeeID, SponsorID = winner.SponsorID, SwagID = winner.SwagID, Name = winner.Name};
     using (DayOfDotNetDataContext dc = new DayOfDotNetDataContext()) {
         dc.Winners.InsertOnSubmit(w);
         dc.SubmitChanges();
     }
     return true;
 }
Exemplo n.º 8
0
 public void addWinner(Winner winner)
 {
     if (winner != null)
     {
         winner.EventId = getCurrentEvent();
         winner         = context.Winners.Add(winner);
         context.SaveChanges();
     }
 }
Exemplo n.º 9
0
        private static void Part2()
        {
            Console.WriteLine("   Part 2");
            string[] lines = File.ReadAllLines(Part2Input);
            Console.WriteLine("\tRead {0} inputs", lines.Length);
            Queue <int> Player1 = new Queue <int>();
            Queue <int> Player2 = new Queue <int>();


            Queue <int> activeQueue = Player1;

            for (int x = 1; x < lines.Length; x++)
            {
                if (lines[x] == "")
                {
                    x           = x + 1;
                    activeQueue = Player2;
                }
                else
                {
                    activeQueue.Enqueue(int.Parse(lines[x]));
                }
            }

            //	Console.WriteLine($"\t Player 1: {Utility.QueueToStringLine(Player1)}");

            //	Console.WriteLine($"\t Player 2: {Utility.QueueToStringLine(Player2)}");


            CombatGame game   = new CombatGame(Player1, Player2);
            Winner     winner = game.PlayUntilWin();


            int         answer = 0;
            Queue <int> winning_player_hand;

            if (winner == Winner.Player_1)
            {
                winning_player_hand = game.Player1;
            }
            else
            {
                winning_player_hand = game.Player2;
            }

            int[] cards_r_a = winning_player_hand.Reverse().ToArray();

            for (int x = 0; x < cards_r_a.Length; x++)
            {
                answer += (x + 1) * cards_r_a[x];
            }

            String final_result = answer.ToString();

            Console.WriteLine($"\n\tPart 2 Solution: {final_result}");
        }
Exemplo n.º 10
0
        public void ToWinner_PlayerInput_ValidOutput(Player input, Winner expectedOutput)
        {
            // arrange

            // act
            Winner result = input.ToWinner();

            // assert
            result.Should().Be(expectedOutput);
        }
Exemplo n.º 11
0
        private static ElectionMapWinner WinnerToElectionMapWinner(Winner winner, IEnumerable <Party> parties)
        {
            var electionMapWinner = CreateElectionMapWinner(winner.Candidate.LocalityId ?? winner.CountyId ?? winner.LocalityId ?? winner.CountryId, winner.Ballot, winner.Candidate, winner.Turnout);

            if (electionMapWinner.Winner.PartyColor.IsEmpty())
            {
                electionMapWinner.Winner.PartyColor = parties.ToList().GetMatchingParty(winner.Candidate.ShortName)?.Color ?? Consts.IndependentCandidateColor;
            }
            return(electionMapWinner);
        }
Exemplo n.º 12
0
        public void ToTileValue_WinnerInput_ValidOutput(Winner input, TileValue expectedOutput)
        {
            // arrange

            // act
            TileValue result = input.ToTileValue();

            // assert
            result.Should().Be(expectedOutput);
        }
Exemplo n.º 13
0
    public void TriggerWinner(Winner w)
    {
        _w = w;

        Invoke(nameof(setWinner), 3);
        //Timer t = new Timer(3000);
        //t.AutoReset = false;
        //t.Elapsed += (_, e) => _winner = w;
        //t.Start();
    }
Exemplo n.º 14
0
 public override int GetHashCode()
 {
     unchecked
     {
         var hashCode = (Winner != null ? Winner.GetHashCode() : 0);
         hashCode = (hashCode * 397) ^ (Loser != null ? Loser.GetHashCode() : 0);
         hashCode = (hashCode * 397) ^ Time.GetHashCode();
         return(hashCode);
     }
 }
Exemplo n.º 15
0
 public void BirdFinish()
 {
     _birdFinished = true;
     birdScript.SetSpeed (0);
     if (_playerFinished == false)
         _winner = Winner.Bird;
     if (_birdFinished && _playerFinished) {
         _gameOver = true;
     }
 }
Exemplo n.º 16
0
        internal int GetScoreForWinner(Winner winner, bool machineMove, int depth)
        {
            Winner me = machineMove
                ? Winner.Machine
                : Winner.User;

            return(winner == me
                ?  10 - depth
                : -10 + depth);
        }
Exemplo n.º 17
0
        public double GetWinnerProbability(Winner winner)
        {
            if (_results.Count == 0 && winner == Winner.Draw)
            {
                return 1d;
            }

            IEnumerable<ResultProbability> matchingResults = GetResults(winner);
            return matchingResults.Sum(r => r.Probability);
        }
Exemplo n.º 18
0
        private void CalculateWhoWon(ICardPlayer player)
        {
            var houseTotal  = CountHand(_house.Hand);
            var playerTotal = CountHand(player.Hand);

            if (houseTotal > 21)
            {
                if (playerTotal <= 21)
                {
                    if (playerTotal == 21)
                    {
                        Winner?.Invoke(player, WinCondition.Blackjack);
                    }
                    else if (player.Hand.Count >= 5)
                    {
                        Winner?.Invoke(player, WinCondition.Five_Card_Charlie);
                    }
                    else
                    {
                        Winner?.Invoke(player, WinCondition.Win);
                    }
                }
                else
                {
                    Winner?.Invoke(player, WinCondition.Draw);
                }
            }
            else if (playerTotal > 21)
            {
                Winner?.Invoke(player, WinCondition.IsThisLoss);
            }
            else
            {
                if (player.Hand.Count >= 5)
                {
                    Winner?.Invoke(player, WinCondition.Five_Card_Charlie);
                }
                else if (playerTotal == 21)
                {
                    Winner?.Invoke(player, WinCondition.Blackjack);
                }
                else if (playerTotal > houseTotal)
                {
                    Winner?.Invoke(player, WinCondition.Win);
                }
                else if (houseTotal > playerTotal)
                {
                    Winner?.Invoke(player, WinCondition.IsThisLoss);
                }
                else
                {
                    Winner?.Invoke(player, WinCondition.Draw);
                }
            }
        }
Exemplo n.º 19
0
    public void UndoPressed()
    {
        SoundManager.instance.CreateSound(SoundManager.instance.au_ClickSound);
        winLine.SetActive(false);

        //If gamedone check who won and return point when pressed the undo button
        if (gamedoneCheck)
        {
            if (e_winner == Winner.Player1)
            {
                player1score--;
                txt_player1score.text = player1score.ToString();
            }

            else if (e_winner == Winner.Player2)
            {
                player2score--;
                txt_player2score.text = player2score.ToString();
            }

            e_winner      = Winner.None;
            gamedoneCheck = false;
        }

        //Button that havn't pressed yet can be pressed again
        foreach (MarkButtonScript item in list_Slots)
        {
            if (!historyPlacement.Contains(item))
            {
                item.thisButton.enabled = true;
                item.markImage.enabled  = true;
            }
        }

        historyPlacement[historyPlacement.Count - 1].thisButton.enabled = true;

        //Detect the index of last pressed button and makes the win check system to none
        int lastIndexSlot = list_Slots.IndexOf(historyPlacement[historyPlacement.Count - 1]);

        blockStateCheck[lastIndexSlot] = State.None;

        //remove the last move from the history;
        historyPlacement.RemoveAt(historyPlacement.Count - 1);

        //Change turn
        if (playerTurn)
        {
            playerTurn = false;
        }
        else
        {
            playerTurn = true;
        }
        StartCoroutine(ChangeTurn());
    }
Exemplo n.º 20
0
        private void pictureBox1_Click(object sender, EventArgs e)
        {
            PictureBox[] allPitures = { pictureBox1,
                                        pictureBox2,
                                        pictureBox3,
                                        pictureBox4,
                                        pictureBox5,
                                        pictureBox6,
                                        pictureBox7,
                                        pictureBox8,
                                        pictureBox9 };
            PictureBox   p = sender as PictureBox;

            if (p.Image != null)
            {
                return;
            }
            if (turn == PlayerTurn.none)
            {
                return;
            }

            if (turn == PlayerTurn.player1)
            {
                p.Image = player1.Image;
                winner  = GetWinner();
                //Thread.Sleep(1000);
                if (winner == Winner.none)
                {
                    turn = PlayerTurn.player2;
                }
            }

            if (turn == PlayerTurn.player2)
            {
                for (int i = 0; i < allPitures.Length; i++)
                {
                    if (allPitures[i].Image == null)
                    {
                        allPitures[i].Image = player2.Image;
                        break;
                    }
                }
            }
            winner = GetWinner();
            if (winner == Winner.none)
            {
                turn = (PlayerTurn.player1 == turn) ? PlayerTurn.player2 : PlayerTurn.player1;
            }
            else
            {
                turn = PlayerTurn.none;
            }
            ShowTurn();
        }
Exemplo n.º 21
0
 public Team GetLoser()
 {
     if (Winner.Equals(FirstTeam))
     {
         return(SecondTeam);
     }
     else
     {
         return(FirstTeam);
     }
 }
Exemplo n.º 22
0
 public void GameOver(Winner winner)
 {
     foreach (PlayerNetworking p in GameObject.FindObjectsOfType <PlayerNetworking>())
     {
         p.RpcGameOver(winner);
     }
     foreach (Spectator p in GameObject.FindObjectsOfType <Spectator>())
     {
         p.RpcGameOver(winner);
     }
 }
Exemplo n.º 23
0
        public static async Task ExecuteSearchFight(IList <string> terms)
        {
            IList <Search> searchData = await SearchManager.GetSearchResults(terms);

            IEnumerable <Winner> searchEngineWinners = WinnerManager.GetSearchEngineWinners(searchData);
            Winner grandWinner = WinnerManager.GetGrandWinner(searchData);

            Reports.AddRange(ReportManager.GetSearchResultsReport(searchData));
            Reports.AddRange(ReportManager.GetWinnersReport(searchEngineWinners));
            Reports.Add(ReportManager.GetGrandWinnerReport(grandWinner));
        }
Exemplo n.º 24
0
 public GameHistory ToGameHistory(bool fullEntry)
 {
     if (fullEntry == false)
     {
         return(new GameHistory(Id, Winner.ToPlayer(), Loser.ToPlayer(), WinnerFleet.ToFleetShallow(), LoserFleet.ToFleetShallow(), WasDraw, GameDate));
     }
     else
     {
         return(new GameHistory(Id, Winner.ToPlayer(), Loser.ToPlayer(), WinnerFleet.ToFleetFull(), LoserFleet.ToFleetFull(), WasDraw, GameDate));
     }
 }
        public void GetWinner_EmptyBoard_ReturnsWinnerNone(Player lastPlayer)
        {
            // arrange
            SmallTileInformation[][] emptyBoard = GetEmptyBoard();

            // act
            Winner winner = emptyBoard.GetWinner(lastPlayer);

            // assert
            winner.Should().Be(Winner.None);
        }
Exemplo n.º 26
0
        /// <summary>
        /// Starts the fight.
        /// </summary>
        public void StartFight()
        {
            // nombre de combats : choisi aléatoirement à l’engagement
            // (entre 3 et le nombre de points de vie de l’unité ayant le plus de points de vie + 2 points).
            Random rnd       = new Random();
            int    nbCombats = rnd.Next(3, Math.Max(defender.HP, attacker.HP) + 2);

            for (int i = 0; i < nbCombats; i++)
            {
                if (defender.HP != 0 && attacker.HP != 0)
                {
                    double realAttack  = attacker.Attack * attacker.HP;
                    double realDefence = defender.Defense * defender.HP;

                    switch (support)
                    {
                    case Support.S_ATTACKER:
                        realAttack *= 1.5;
                        break;

                    case Support.S_DEFENDER:
                        realDefence *= 1.5;
                        break;

                    case Support.S_BOTH:
                        realAttack  *= 1.5;
                        realDefence *= 1.5;
                        break;

                    default:
                        break;
                    }

                    if (rnd.Next(0, 100) < realAttack / realDefence)
                    {
                        defender.HP--;
                    }
                    else
                    {
                        attacker.HP--;
                    }
                }
                else if (attacker.HP == 0)
                {
                    winner = Winner.W_DEFENDER;
                    return;
                }
                else
                {
                    winner = Winner.W_ATTACKER;
                    return;
                }
            }
        }
Exemplo n.º 27
0
 private void SetButtonGameOverIcon(Winner winner)
 {
     if (winner == Winner.Player)
     {
         _resetButton.BackgroundImage = _images.Win;
     }
     else if (winner == Winner.Computer)
     {
         _resetButton.BackgroundImage = _images.Lose;
     }
 }
Exemplo n.º 28
0
 public MatchDto(int id, TournamentReadDto tournamentDto, UserReadDto player1, UserReadDto player2,
                 Winner winner, string result, int round)
 {
     Id            = id;
     TournamentDto = tournamentDto;
     Player1       = player1;
     Player2       = player2;
     Winner        = winner;
     Result        = result;
     Round         = round;
 }
Exemplo n.º 29
0
 private void printWinner()
 {
     if (Winner == Piece.Cat)
     {
         printMessage("Cat's game!");
     }
     else
     {
         printMessage(Winner.GetLabel() + " is the winner!");
     }
 }
Exemplo n.º 30
0
 public ActionResult Edit([Bind(Include = "WinnerId,CreatedAt,ContestPostId")] Winner winner)
 {
     if (ModelState.IsValid)
     {
         db.Entry(winner).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     ViewBag.ContestPostId = new SelectList(db.ContestPosts, "ContestPostId", "Recipe", winner.ContestPostId);
     return(View(winner));
 }
Exemplo n.º 31
0
        public Team Toss()
        {
            int  startSequenceStep = 0, endSequenceStep = 0;
            Team winner = null;

            while (!tossCompleted)
            {
                var key = Console.ReadKey().KeyChar;
                Debug.WriteLine($"Key pressed: {key}");

                if (startSequenceStep < startSequence.Length && startSequence[startSequenceStep] == key)
                {
                    startSequenceStep++;
                    Debug.WriteLine($"Start sequence process: {startSequenceStep} of {startSequence.Length}");
                }

                if (startSequenceStep == startSequence.Length)
                {
                    tossEnabled = true;
                    Debug.WriteLine($"Enabling toss...");
                }

                if (endSequenceStep < endSequence.Length && endSequence[endSequenceStep] == key)
                {
                    endSequenceStep++;
                    Debug.WriteLine($"End sequence process: {endSequenceStep} of {endSequence.Length}");
                }

                if (endSequenceStep == endSequence.Length)
                {
                    tossCompleted = true;
                    Debug.WriteLine($"Completing toss...");
                }

                if (teamChars.ContainsKey(key))
                {
                    Debug.WriteLine($".. {teamChars[key].Name} timer enabled {teamTimeouts[teamChars[key]].Enabled}");
                    if (!teamTimeouts[teamChars[key]].Enabled)
                    {
                        teamTimeouts[teamChars[key]].Enabled = true;
                        if (tossEnabled)
                        {
                            winner            = teamChars[key];
                            tossEnabled       = false;
                            startSequenceStep = 0;
                            Debug.WriteLine($"Winner {winner.Name}. Disabling toss...");
                            Winner?.Invoke(winner);
                        }
                    }
                }
            }

            return(winner);
        }
Exemplo n.º 32
0
        public void Only_two_rounds___no_winner()
        {
            var sut = new Board();

            sut[0] = FieldState.User;
            sut[1] = FieldState.User;
            sut[4] = FieldState.Machine;

            Winner actual = sut.CheckWinner();

            Assert.AreEqual(Winner.None, actual);
        }
Exemplo n.º 33
0
        /// <summary>
        /// Converts this match into its XML representation.
        /// </summary>
        /// <param name="writer"></param>
        void IXmlSerializable.WriteXml(System.Xml.XmlWriter writer)
        {
            writer.WriteAttributeString("ID", ID.ToString());
            writer.WriteAttributeString("Location", Location);
            writer.WriteAttributeString("LogLevel", LogLevel.ToString());
            writer.WriteAttributeString("Surface", MatchSurface.ToString());
            writer.WriteAttributeString("Type", Type.ToString());

            //Rules
            writer.WriteStartElement("Rules");
            writer.WriteAttributeString("BestOutOf", BestOutOf.ToString());
            writer.WriteAttributeString("DeuceSuddenDeath", DeuceSuddenDeath.ToString());
            writer.WriteAttributeString("FinalSetIsTiebreak", FinalSetIsTiebreak.ToString());
            writer.WriteAttributeString("FinalSetTieBreakLength", FinalSetTieBreakLength.ToString());
            writer.WriteAttributeString("NumberGamesPerSet", NumberGamesPerSet.ToString());
            writer.WriteAttributeString("TieBreakAtSameScoreOf", TieBreakAtSameScoreOf.ToString());
            writer.WriteAttributeString("TieBreakFinalSet", TieBreakFinalSet.ToString());
            writer.WriteAttributeString("TieBreakLength", TieBreakLength.ToString());
            writer.WriteEndElement();

            //Status
            writer.WriteStartElement("Status");
            writer.WriteAttributeString("NextContestantToServe", NextContestantToServe.ContestantNr.ToString());
            writer.WriteAttributeString("Status", Status.ToString());
            writer.WriteAttributeString("Winner", Winner.ToString());
            writer.WriteEndElement();

            //Contestants
            writer.WriteStartElement("Contestant1");
            Contestant1.WriteXml(writer);
            writer.WriteEndElement();
            writer.WriteStartElement("Contestant2");
            Contestant2.WriteXml(writer);
            writer.WriteEndElement();

            //Duration
            writer.WriteStartElement("Duration");
            Duration.WriteXml(writer);
            writer.WriteEndElement();

            //Statistics
            writer.WriteStartElement("Statistics");
            Statistics.WriteXml(writer);
            writer.WriteEndElement();

            //Sets
            writer.WriteStartElement("Sets");
            foreach (var item in Sets)
            {
                item.WriteXml(writer);
            }
            writer.WriteEndElement();
        }
Exemplo n.º 34
0
 public static string ToText(Winner winner)
 {
     switch (winner)
     {
         case Winner.Nought:
             return PlayerMapper.Nought;
         case Winner.Cross:
             return PlayerMapper.Cross;
         default:
             return string.Empty;
     }
 }
Exemplo n.º 35
0
 public void Insert_ShouldReturn_NonNull_Boolean()
 {
     //Arrange
     _mockRepo.Expect(x => x.Insert(new WinnerDTO())).IgnoreArguments().Return(true).Repeat.Once();
     _mockRepository.ReplayAll();
     //Act
     IWinner Winner = new Winner(_mockRepo);
     bool result = Winner.Insert(new WinnerDTO());
     //Assert
     _mockRepository.VerifyAll();
     Assert.IsInstanceOfType(result, typeof (bool));
 }
Exemplo n.º 36
0
        private async Task <CheckModel> CheckThePrizeAsync(Ticket ticket)
        {
            Winner winner = await Task.Run(() => _winnerRepository.GetAll().FirstOrDefault(w => w.TicketId == ticket.TicketId));

            Prize prize = await Task.Run(() => _prizeRepository.GetById(winner.PrizeId));

            CheckModel result = new CheckModel {
                Prize = prize.Name, WinningNumbers = winner.WinningNumbers
            };

            return(result);
        }
Exemplo n.º 37
0
 public void OnGameOver(Winner winner)
 {
     switch (winner)
     {
         case Winner.Player:
             Animate(_playerWin);
             break;
         case Winner.Opponent:
             Animate(_playerLose);
             break;
     }
 }
        public void AddTeams(List <Team> teamList)
        {
            _teams = teamList;

            if (!_tournament.IsStarted)
            {
                foreach (Team t in teamList)
                {
                    Winner.Enqueue(t);
                }
            }
        }
Exemplo n.º 39
0
        private Winner Combat(Queue <long> player1, Queue <long> player2, Aoc.Framework.Part part)
        {
            HashSet <(long, long)> history = new HashSet <(long, long)>();
            Winner winner = Winner.None;

            while (winner == Winner.None)
            {
                winner = Round(player1, player2, history, part);
            }

            return(winner);
        }
Exemplo n.º 40
0
 // Use this for initialization
 void Start()
 {
     statehand   = sthand.GetComponent <StateofHand>();
     r           = roll.GetComponent <Roll>();
     win         = winner.GetComponent <Winner>();
     playerhand  = player.GetComponent <player>();
     pcstate     = pchand.GetComponent <pc>();
     pcscr       = _pcscore.GetComponent <pcscore>();
     plscore     = playerscore.GetComponent <playerscore>();
     scorepc     = 0;
     scoreplayer = 0;
 }
Exemplo n.º 41
0
        public void Form1Test()
        {
            Winner win = new Winner();

            if (win.winTest(1) == 1)
            {
                Assert.IsTrue(true);
            }
            else
            {
                Assert.IsTrue(false);
            }
        }
Exemplo n.º 42
0
 public void Insert_ShouldReturn_NonNull_Boolean()
 {
     using (new TransactionScope()) {
         //Arrange
         long attendeeID = new Attendee().GetAll()[0].AttendeeID;
         long sponsorID = new Sponsor().GetAllThatProvidedSwag()[0].SponsorID;
         long swagID = new Swag().GetAllBySponsor(sponsorID)[0].SwagID;
         //Act
         IWinner winner = new Winner();
         bool result = winner.Insert(new WinnerDTO{Name = "Joe Smith", SponsorID = sponsorID, SwagID = swagID, AttendeeID = attendeeID});
         //Assert
         Assert.IsInstanceOfType(result, typeof (bool));
     }
 }
Exemplo n.º 43
0
 public static string WinnerText(Winner winner)
 {
     // switch is faster than calling board.Winner multiple times with a ?! operator
     switch (winner)
     {
         default:
             return string.Empty; // single statement - so no {} compound statement needed
         case Winner.Draw:
             {
                 return string.Format("{0} - nobody wins", winner);
             }; // semi-colon needed
         case Winner.Cross:
         case Winner.Nought:
             {
                 return string.Format("{0} wins, congrats {1}!", winner, ToText(winner));
             }; // semi-colon needed
     } // semi-colon not needed
 }
Exemplo n.º 44
0
		public Results(Robot[] pWinnerRobots)
		{
			//
			// Required for Windows Form Designer support
			//
			InitializeComponent();

			int nLength = pWinnerRobots.Length;
			ArrayList pWinnersTemp = new ArrayList();
			Winner[] pWinners = new Winner[nLength];
			for (int i = 0; i < nLength; i++)
			{
				bool bContinue = false;
				for (int j = 0; j < pWinnersTemp.Count; j++)
				{
					if (((Winner) pWinnersTemp[j]).Name == pWinnerRobots[i].Name)
					{
						((Winner) pWinnersTemp[j]).Wins++;
						bContinue = true;
						continue;
					}
				}
				if (bContinue) continue;
				Winner pWinner = new Winner();
				pWinner.Name = pWinnerRobots[i].Name;
				pWinner.Wins = 1;
				pWinnersTemp.Add(pWinner);
			}

			nLength = pWinnersTemp.Count;
			for (int i = 0; i < nLength; i++)
			{
				ListViewItem pItem = new ListViewItem(((Winner) pWinnersTemp[i]).Name);
				pItem.SubItems.Add(((Winner) pWinnersTemp[i]).Wins.ToString());
				listView1.Items.Add(pItem);
			}
			listView1.Sort();
		}
Exemplo n.º 45
0
 void CheckWinner()
 {
     if (down_new_size >= max_size) {
         winner = Winner.Down;
     } else if (up_new_size >= max_size) {
         winner = Winner.Up;
     } else {
         winner = Winner.Nobody;
     }
 }
Exemplo n.º 46
0
    void ChangeStateForRestartRound()
    {
        if(waitTime<-3.0f)
        {
            int temp = -1;

            switch(winner)
            {
                case Winner.None:

                    break;

                case Winner.Win:
                      isFirst = true;
                isMyTurn = true;
                isReceivePoint = false;
                isShowResult = false;
                myPoint = -1;
                oppPoint = -1;
                waitTime = 5.0f;
                DestroyForStartRound();
                    winner=Winner.None;
                    myWin++;
                    round++;
                    temp=CheckRoundForFinishGame();
                    if(temp==1)
                    {
                        gameState = GameState.FinishGame;
                    }
                    else
                       gameState = GameState.Proceed;


                break;

                case Winner.Draw:
                    if(isFirst==true)
                    {
                        isFirst = true;
                        isMyTurn = true;
                        isShowResult = false;
                        isReceivePoint = false;
                        myPoint = -1;
                        oppPoint = -1;
                        waitTime = 5.0f;
                        DestroyForStartRound();
                        winner = Winner.None;
                        round++;
                        temp = CheckRoundForFinishGame();
                        if (temp == 1)
                        {
                            gameState = GameState.FinishGame;
                        }
                        else
                            gameState = GameState.Proceed;
                    }
                    else
                    {
                        isMyTurn = false;
                        isFirst = false;
                        isReceivePoint = false;
                        isShowResult = false;
                        waitTime = 5.0f;
                        myPoint = -1;
                        oppPoint = -1;
                        DestroyForStartRound();
                        winner = Winner.None;
                        round++;
                        temp = CheckRoundForFinishGame();
                        if (temp == 1)
                        {
                            gameState = GameState.FinishGame;
                        }
                        else
                            gameState = GameState.Proceed;
                    }
                    break;


                case Winner.Loss:
                    isMyTurn = false;
                isFirst = false;
                isReceivePoint = false;
                isShowResult = false;
                waitTime = 5.0f;
                myPoint = -1;
                oppPoint = -1;
                oppWin++;
                DestroyForStartRound();
                winner = Winner.None;
                round++;
                   temp=CheckRoundForFinishGame();
                    if(temp==1)
                    {
                        gameState = GameState.FinishGame;
                    }
                    else
                       gameState = GameState.Proceed;
                    break;
      

            }

        }
    }
Exemplo n.º 47
0
 private IEnumerable<ResultProbability> GetResults(Winner winner)
 {
     return _results.Where(r => r.Result.Winner == winner);
 }
Exemplo n.º 48
0
 public void PlayerFinish()
 {
     _playerFinished = true;
     _horseScript.SetSpeed (0);
     if (_birdFinished == false)
         _winner = Winner.Player;
     if (_birdFinished && _playerFinished)
     {
         _gameOver = true;
     }
 }
Exemplo n.º 49
0
        public static IWinner Create(ISwag swag, IAttendee attendee)
        {
            var winner = new Winner {AwardedSwag = swag, WinningAttendee = attendee};

            return winner;
        }
Exemplo n.º 50
0
 // Use this for initialization
 void Start()
 {
     listEnemies = new List<GameObject>();
     iTimeCreate = 0;
     winner = Winner.none;
 }
        public ResultType_enum Work(Order order, InternetRequestEngine internetRequestEngine,
                               HtmlAgilityPack.HtmlNode winnerProtocolNode, LotSearched_delegate lotSearched_delegate,
                               out string commissionDecisionMessage, out bool isWinner)
        {
            try
            {
                isWinner = false;
                commissionDecisionMessage = "";

                List<Lot> lotsTemp = new List<Lot>();
                List<Winner> winnersTemp = new List<Winner>();

                // Получаем ID протокола
                string protocolHref = winnerProtocolNode.Attributes["onclick"].Value;
                string protocolID = protocolHref.Substring(protocolHref.IndexOf("protocolInfoId=") + 15,
                    protocolHref.IndexOf("&purchaseId=") - (protocolHref.IndexOf("protocolInfoId=") + 15));

                text = @"http://zakupki.gov.ru/223/purchase/public/purchase/protocol/ip/application/comission-decision.html?noticeInfoId=&protocolInfoId=" + protocolID + "&mode=view";
                //text = @"http://zakupki.gov.ru/223/purchase/public/purchase/protocol/ip/application/comission-decision.html?noticeInfoId=716491&protocolInfoId=692914&mode=view";
                doc = internetRequestEngine.GetHtmlDoc(text);
                string checkMessage = "";
                ResultType_enum resultTypeCheck = Globals.CheckDocResult(doc, out checkMessage);
                if (resultTypeCheck != ResultType_enum.Done)
                {
                    commissionDecisionMessage = checkMessage;
                    return resultTypeCheck;
                }

                // Поиск лотов
                text = "//div[@class=\"cardWrapper\"]";
                text += "/div[@class=\"wrapper\"]";
                text += "/div[@class=\"mainbox\"]";
                text += "/div[@class=\"contentTabBoxBlock\"]";
                text += "/div[@class=\"noticeTabBox\"]";
                text += "/div[@class=\"noticeTabBoxWrapper\"]";
                text += "/div[@class=\"blue-border rootOfLot\"]";

                HtmlAgilityPack.HtmlNodeCollection lotsColl = doc.DocumentNode.SelectNodes(text);
                if (lotsColl == null) return ResultType_enum.NotSearch;

                string _223lotName = "";
                long _223lotPrice = 0;
                string _223lotPriceTypeName = "";
                long _223lotDocumentPrice = 0;
                string _223lotDocumentDate = "";

                Lot _223lot = null;
                Winner _223winner = null;
                int num = 1;

                // Обработка лотов
                int lotNum = 0;
                foreach (HtmlAgilityPack.HtmlNode lotNode in lotsColl)
                {
                    // Заполняем цену и валюту лота
                    _223lotName = "";
                    _223lotPrice = 0;
                    _223lotPriceTypeName = "";
                    _223lotDocumentPrice = 0;
                    _223lotDocumentDate = "";

                    _223lot = new Lot();
                    _223winner = new Winner();
                    _223winner.Lot = _223lot;

                    _223lot.Order = order;
                    _223lot.CreateDateTime = DateTime.Now;
                    _223lot.OrderHref = @"http://zakupki.gov.ru/223/purchase/public/purchase/info/common-info.html?noticeId=" + order.HrefId + "&epz=true";
                    lotsTemp.Add(_223lot);

                    // Получаем цену и валюту лота
                    text = ".//table";
                    text += "/tr[@class=\"mainExpand\"]";
                    text += "/td";
                    text += "/table[@class=\"outertable\"]";
                    text += "/tr";
                    HtmlAgilityPack.HtmlNodeCollection lotParamsColl = lotNode.SelectNodes(text);

                    if (lotParamsColl != null)
                    {
                        HtmlAgilityPack.HtmlNode lotParamPriceNode = lotParamsColl[1];
                        num = 1;
                        foreach (HtmlAgilityPack.HtmlNode tdNode in lotParamPriceNode.ChildNodes)
                        {
                            if (tdNode.Name != "td") continue;
                            if (num == 2)
                            {
                                string priceTypePriceLot = tdNode.InnerText.Trim();
                                if (priceTypePriceLot.IndexOf(' ') > -1)
                                {
                                    string _223lotPriceStr = Globals.DecodeInternetSymbs(priceTypePriceLot.Substring(0, priceTypePriceLot.IndexOf(' ')).Trim());
                                    if (_223lotPriceStr.IndexOf(',') > -1)
                                    {
                                        _223lotPrice = Convert.ToInt64(_223lotPriceStr.Substring(0, _223lotPriceStr.IndexOf(',')));
                                    }
                                    else
                                    {
                                        _223lotPrice = Convert.ToInt64(_223lotPriceStr);
                                    }
                                    //_223lotPrice = Convert.ToInt64(Globals.DecodeInternetSymbs(priceTypePriceLot.Substring(0, priceTypePriceLot.IndexOf(' ')).Trim()));
                                    _223lotPriceTypeName = Globals.DecodeInternetSymbs(priceTypePriceLot.Substring(priceTypePriceLot.IndexOf(' '), priceTypePriceLot.Length - priceTypePriceLot.IndexOf(' ')).Trim());
                                }

                                break;
                            }

                            num++;
                        }
                    }
                    else
                    {
                        text = ".//table[@class=\"outertable\"]";
                        text += "/tr";
                        lotParamsColl = lotNode.SelectNodes(text);

                        if (lotParamsColl != null)
                        {
                            int numTr = 1;
                            foreach (HtmlAgilityPack.HtmlNode trNode in lotParamsColl)
                            {
                                if (trNode.Name != "tr") continue;

                                int numTdParam = 1;
                                switch (numTr)
                                {
                                    case (1):
                                        numTdParam = 1;
                                        foreach (HtmlAgilityPack.HtmlNode tdNode in trNode.ChildNodes)
                                        {
                                            if (tdNode.Name != "td") continue;
                                            if (numTdParam == 1)
                                            {
                                                _223lotName = Globals.CutLotName(tdNode.InnerText.Trim());
                                                break;
                                            }
                                            numTdParam++;
                                        }
                                        break;
                                    case (2):
                                        numTdParam = 1;
                                        foreach (HtmlAgilityPack.HtmlNode tdNode in trNode.ChildNodes)
                                        {
                                            if (tdNode.Name != "td") continue;
                                            if (numTdParam == 2)
                                            {
                                                string priceTypePriceLot = tdNode.InnerText.Trim();
                                                if (priceTypePriceLot.IndexOf(' ') > -1)
                                                {
                                                    string _223lotPriceStr = Globals.DecodeInternetSymbs(priceTypePriceLot.Substring(0, priceTypePriceLot.IndexOf(' ')).Trim());
                                                    if (_223lotPriceStr.IndexOf(',') > -1)
                                                    {
                                                        _223lotPrice = Convert.ToInt64(_223lotPriceStr.Substring(0, _223lotPriceStr.IndexOf(',')));
                                                    }
                                                    else
                                                    {
                                                        _223lotPrice = Convert.ToInt64(_223lotPriceStr);
                                                    }
                                                    //_223lotPrice = Convert.ToInt64(Globals.DecodeInternetSymbs(priceTypePriceLot.Substring(0, priceTypePriceLot.IndexOf(' ')).Trim()));
                                                    _223lotPriceTypeName = Globals.DecodeInternetSymbs(priceTypePriceLot.Substring(priceTypePriceLot.IndexOf(' '), priceTypePriceLot.Length - priceTypePriceLot.IndexOf(' ')).Trim());
                                                    break;
                                                }
                                            }
                                            numTdParam++;
                                        }

                                        break;
                                    default:
                                        break;
                                }

                                numTr++;
                            }
                        }
                        else
                        {
                            return ResultType_enum.NotSearch;
                        }
                    }

                    if (_223lotName != "")
                    {
                        _223lot.Name = _223lotName;
                        if (_223lot.Name.Length > 400)
                        {
                            _223lot.Name = _223lot.Name.Substring(0, 398) + "..";
                        }
                    }

                    if ((_223lotPrice != 0) && (_223lotPriceTypeName != ""))
                    {
                        _223lot.Price = _223lotPrice;
                        LotPriceType lotPriceType = mvm.wc.LotPriceTypes.FirstOrDefault(m => m.Name.ToLower().Trim() == _223lotPriceTypeName.ToLower());
                        if (lotPriceType == null)
                        {
                            lotPriceType = new LotPriceType();
                            lotPriceType.Name = _223lotPriceTypeName;
                            mvm.wc.LotPriceTypes.Add(lotPriceType);
                            mvm.wc.SaveChanges();
                        }
                        _223lot.LotPriceType = lotPriceType;
                    }
                    else
                    {
                        // Не указана цена, берем следующий лот
                        continue;
                    }

                    // Получаем список участников
                    text = ".//table";
                    text += "/tr[@class=\"expandable-row\"]";
                    text += "/td";
                    text += "/div[@class=\"clientDemandWrapper\"]";
                    text += "/table[@class=\"outertable clientDemandTbl\"]";
                    text += "/tr";

                    HtmlAgilityPack.HtmlNodeCollection partnerWithHeaderColl = lotNode.SelectNodes(text);

                    // Поиск победителя среди участников
                    int tdnum = 1;
                    isWinner = false;
                    foreach (HtmlAgilityPack.HtmlNode partnerNode in partnerWithHeaderColl)
                    {
                        if (partnerNode.Attributes.Count > 0) continue;

                        tdnum = 1;
                        string nameTmp = "";
                        foreach (HtmlAgilityPack.HtmlNode tdNode in partnerNode.ChildNodes)
                        {
                            if (tdNode.Name != "td") continue;
                            if (tdnum == 2)
                            {
                                nameTmp = Globals.DecodeInternetSymbs(tdNode.InnerText.Trim());
                                nameTmp = Globals.CleanSpaces(nameTmp.Replace('\n', ' ').Replace('\t', ' '));
                            }

                            if (tdnum == 4)
                            {
                                if (tdNode.InnerText.Trim().ToLower() == "победитель")
                                {
                                    _223winner.Name = nameTmp;
                                    winnersTemp.Add(_223winner);
                                    isWinner = true;
                                }
                                break;
                            }
                            tdnum++;
                        }
                        if (isWinner) break;
                    }
                    lotNum++;
                }

                // Если лоты уже с заполненным именем, то не ищем имена
                bool allHasName = true;
                foreach (Lot lot in lotsTemp)
                {
                    if (lot.Name == "")
                    {
                        allHasName = false;
                        break;
                    }
                }

                // Если нет победителей, то не заполняем имена лотов
                bool hasWinners = false;
                foreach (Winner winner in winnersTemp)
                {
                    if (winner.Name != "")
                    {
                        hasWinners = true;
                        break;
                    }
                }

                // Заполняем имена лотов
                /*if ((!allHasName) && (hasWinners))
                {
                    if (lotsTemp.Count > 0)
                    {
                        text = @"http://zakupki.gov.ru/223/purchase/public/purchase/protocol/ip/application/list.html?noticeInfoId=&protocolInfoId=" + protocolID + @"&mode=view";
                        //text = @"http://zakupki.gov.ru/223/purchase/public/purchase/protocol/rkz/application/list.html?noticeInfoId=&protocolInfoId=1698215&mode=view";
                        doc = internetRequestEngine.GetHtmlDoc(text);
                        if (doc.DocumentNode.InnerText.IndexOf("Запрашиваемая страница временно недоступна") > -1)
                        {
                            //text = @"http://zakupki.gov.ru/223/purchase/public/purchase/protocol/ip/application/list.html?noticeInfoId=&protocolInfoId=" + protocolID + @"&mode=view";
                            text = @"http://zakupki.gov.ru/223/purchase/public/purchase/protocol/rkz/application/list.html?noticeInfoId=&protocolInfoId=1698215&mode=view";
                            doc = internetRequestEngine.GetHtmlDoc(text);
                        }

                        resultTypeCheck = Globals.CheckDocResult(doc, out checkMessage);
                        if (resultTypeCheck != ResultType_enum.Done)
                        {
                            commissionDecisionMessage = checkMessage;
                            return resultTypeCheck;
                        }

                        // Поиск имен лотов
                        text = "//div[@class=\"cardWrapper\"]";
                        text += "/div[@class=\"wrapper\"]";
                        text += "/div[@class=\"mainbox\"]";
                        text += "/div[@class=\"contentTabBoxBlock\"]";
                        text += "/div[@class=\"noticeTabBox\"]";
                        text += "/div[@class=\"clientDemandWrapper\"]";
                        text += "/table";
                        text += "/tr[@class=\"mainExpand\"]";
                        text += "/td[@class=\"descriptTenderTd\"]";
                        text += "/dt";

                        HtmlAgilityPack.HtmlNodeCollection lotNamesColl = doc.DocumentNode.SelectNodes(text);
                        if (lotNamesColl == null)
                        {
                            // Поиск имен лотов
                            text = "//div[@class=\"cardWrapper\"]";
                            text += "/div[@class=\"wrapper\"]";
                            text += "/div[@class=\"mainbox\"]";
                            text += "/div[@class=\"contentTabBox\"]";
                            text += "/div[@class=\"contentTabBoxBlock\"]";
                            text += "/div[@class=\"noticeTabBox\"]";
                            text += "/div[@class=\"noticeTabBoxWrapper\"]";
                            text += "/div[@class=\"clientDemandWrapper\"]";
                            text += "/table";
                            text += "/tr";
                            text += "/td";
                            text += "/table";
                            text += "/tr[@class=\"mainExpand\"]";
                            text += "/td[@class=\"descriptTenderTd\"]";

                            lotNamesColl = doc.DocumentNode.SelectNodes(text);
                            if (lotNamesColl == null) return ResultType_enum.NotSearch;
                        }

                        // Перебираем имена лотов
                        int lotNameNum = 0;
                        foreach (HtmlAgilityPack.HtmlNode lotNameNode in lotNamesColl)
                        {
                            try
                            {
                                lotsTemp[lotNameNum].Name = Globals.DecodeInternetSymbs(lotNameNode.InnerText.Trim());
                            }
                            catch
                            {
                                continue;
                            }
                            lotNameNum++;
                        }

                        // Поиск цены контракта и даты
                        // Перебираем лоты
                        text = "//div[@class=\"cardWrapper\"]";
                        text += "/div[@class=\"wrapper\"]";
                        text += "/div[@class=\"mainbox\"]";
                        text += "/div[@class=\"contentTabBoxBlock\"]";
                        text += "/div[@class=\"noticeTabBox\"]";
                        text += "/div[@class=\"clientDemandWrapper\"]";
                        text += "/table";
                        text += "/tr[@class=\"expandRow\"]";

                        HtmlAgilityPack.HtmlNodeCollection lotsPriceDateColl = doc.DocumentNode.SelectNodes(text);

                        if ((lotsPriceDateColl != null) && (lotsPriceDateColl.Count > 0))
                        {
                            int lotPriceDateNum = 0;
                            foreach (HtmlAgilityPack.HtmlNode lotPriceDateNode in lotsPriceDateColl)
                            {
                                text = ".//td";
                                text += "/div";
                                text += "/table";
                                text += "/tr";

                                HtmlAgilityPack.HtmlNodeCollection customersColl = lotPriceDateNode.SelectNodes(text);
                                if (customersColl != null)
                                {
                                    // Перебираем участников и ищем победителя
                                    bool itsWinner = false;
                                    foreach (HtmlAgilityPack.HtmlNode customerNode in customersColl)
                                    {
                                        if (customerNode.Attributes.Count > 0) continue;

                                        HtmlAgilityPack.HtmlNodeCollection customerAttributesColl = customerNode.SelectNodes(".//td");
                                        int attrNum = 1;
                                        foreach (HtmlAgilityPack.HtmlNode customerAttributeNode in customerAttributesColl)
                                        {
                                            if (customerAttributeNode.Name != "td") continue;
                                            switch (attrNum)
                                            {
                                                case (2):
                                                    string nameTmp = Globals.DecodeInternetSymbs(customerAttributeNode.InnerText.Trim());
                                                    if (nameTmp.IndexOf("Просмотреть заявку") > -1)
                                                    {
                                                        nameTmp = nameTmp.Substring(0, nameTmp.IndexOf("Просмотреть заявку")).Trim();
                                                    }
                                                    if (nameTmp == lotsTemp[lotPriceDateNum].Winner.Name)
                                                    {
                                                        itsWinner = true;
                                                    }
                                                    break;
                                                case (3):
                                                    if (customerAttributeNode.InnerText.Trim() != "")
                                                    {
                                                        _223lotDocumentDate = customerAttributeNode.InnerText.Trim();
                                                        break;
                                                    }
                                                    break;

                                                case (4):
                                                    if (customerAttributeNode.InnerText.Trim() != "")
                                                    {
                                                        string priceTypePriceLot = Globals.DecodeInternetSymbs(customerAttributeNode.InnerText.Trim());
                                                        if (priceTypePriceLot.IndexOf(' ') > -1)
                                                        {
                                                            _223lotDocumentPrice = Convert.ToInt64(Globals.DecodeInternetSymbs(priceTypePriceLot.Substring(0, priceTypePriceLot.IndexOf(' ')).Trim()));
                                                        }
                                                    }
                                                    break;
                                            }

                                            attrNum++;
                                        }
                                        if (itsWinner)
                                        {
                                            lotsTemp[lotPriceDateNum].DocumentPrice = _223lotDocumentPrice;
                                            if (_223lotDocumentDate.IndexOf('(') > -1)
                                            {
                                                lotsTemp[lotPriceDateNum].DocumentDateTime = Convert.ToDateTime(_223lotDocumentDate.Substring(0, _223lotDocumentDate.IndexOf('(')).Trim());
                                            }
                                            else
                                            {
                                                lotsTemp[lotPriceDateNum].DocumentDateTime = Convert.ToDateTime(_223lotDocumentDate.Trim());
                                            }
                                            break;
                                        }
                                        else
                                        {
                                            _223lotDocumentPrice = 0;
                                            _223lotDocumentDate = "";
                                        }
                                    }
                                }

                                lotPriceDateNum++;
                            }
                        }

                        // Заполняем заказ
                        foreach (Lot lotTmp in lotsTemp)
                        {
                            if (lotTmp.Name != "")
                            {
                                mvm.wc.Winners.Add(lotTmp.Winner);
                                mvm.wc.SaveChanges();

                                mvm.wc.Lots.Add(lotTmp);
                                mvm.wc.SaveChanges();

                                lotSearched_delegate(lotTmp);
                            }
                        }
                    }
                }
                else
                {*/
                    if (hasWinners)
                    {
                        foreach (Winner winnerTmp in winnersTemp)
                        {
                            if ((winnerTmp.Name != "") && (winnerTmp.Lot.Name != ""))
                            {
                                mvm.wc.Lots.Add(winnerTmp.Lot);
                                mvm.wc.SaveChanges();

                                mvm.wc.Winners.Add(winnerTmp);
                                mvm.wc.SaveChanges();

                                lotSearched_delegate(winnerTmp);
                            }
                        }
                    }
                //}

                return ResultType_enum.Done;
            }
            catch (Exception ex)
            {
                isWinner = false;
                commissionDecisionMessage = ex.Message + '\n' + ex.StackTrace;
                return ResultType_enum.Error;
            }
        }
Exemplo n.º 52
0
	/// <summary>
	///     When the game ends, repeatedly announce who has won and allow player to exit to the menu
	/// </summary>
	void Update()
    {
	    if (gameTimer.GameHasEnded())
        {
            if (InputPlayers.player0.GetAnyButtonDown())
            {
                // Player wants to go to the menu now
                LeaveGame();
            }

            if (!initialized)
            {
                // Start the end game break which will automatically go to the menu when it ends
                breakTimer.StartBreak(new GameEndBreak());

                // Set the winner and update the UI accordingly
                if (scoreKeeper.RedScore() > scoreKeeper.BlueScore())
                {
                    winnerText.text = redWins;
                    winnerText.color = redTeamColor;
                    winner = Winner.red;
                }
                else if (scoreKeeper.BlueScore() > scoreKeeper.RedScore())
                {
                    winnerText.text = blueWins;
                    winnerText.color = blueTeamColor;
                    winner = Winner.blue;
                }
                else
                {
                    winnerText.text = "TIE";
                    winnerText.color = Color.white;
                    winner = Winner.tie;
                }

                gameOverPanel.SetActive(true);

                // Make first wave of announcements
                GameEndAnnouncements();

                initialized = true;
            }
            else
            {
                // Check if the referee is currently announcing the results
                if (referee.refereeSpeaking())
                {
                    // Make sure timer is not going while referee is talking
                    if (!timer.isPaused())
                    {
                        timer.Pause();
                        timer.Reset();
                    }
                }
                else
                {
                    if (timer.getTime() <= 0)
                    {
                        // Time's up, start next group of announcements
                        timer.Pause();
                        timer.Reset();
                        GameEndAnnouncements();
                    }
                    else
                    {
                        // Start the timer for the pause between announcements
                        if (timer.isPaused())
                        {
                            timer.Resume();
                        }
                    }
                }
            }
        }
	}
Exemplo n.º 53
0
        public ResultType_enum FillWinners(Order order, InternetRequestEngine internetRequestEngine, 
                                           LotSearched_delegate lotSearched_delegate, out string winnerMessage)
        {
            isWinner = false;
            winnerMessage = "";
            HtmlAgilityPack.HtmlNode nodeTmp = null;
            try
            {
                switch (order.LawType.Name.Trim().ToLower())
                {
                    #region 44 Закон
                    case ("44"):
                        // Параметры лота
                        string _44lotName = order.Name;
                        long _44lotPrice = order.Price;
                        string _44lotPriceTypeName = order.OrderPriceType.Name;
                        string _44lotOrderHref = @"http://zakupki.gov.ru/epz/order/notice/zp44/view/common-info.html?regNumber=" + order.HrefId;
                        long _44lotDocumentPrice = 0;
                        string _44lotDocumentDateTime = "";

                        // Параметры победителя
                        string winnerName = "";
                        string winnerPhone = "";
                        string winnerEmail = "";

                        // Закупка
                        string numRegistr = "";

                        doc = internetRequestEngine.GetHtmlDoc(@"http://zakupki.gov.ru/epz/order/notice/ea44/view/supplier-results.html?regNumber=" + order.HrefId);
                        string checkMessage = "";
                        ResultType_enum resultTypeCheck = Globals.CheckDocResult(doc, out checkMessage);
                        if (resultTypeCheck != ResultType_enum.Done)
                        {
                            winnerMessage = checkMessage;
                            return resultTypeCheck;
                        }

                        text = "//div[@class=\"cardWrapper\"]";
                        text += "/div[@class=\"wrapper\"]";
                        text += "/div[@class=\"mainBox\"]";
                        text += "/div[@class=\"noticeTabBox\"]";
                        text += "/div[@class=\"noticeTabBoxWrapper\"]";
                        text += "/table";
                        text += "/tr";
                        text += "/td";
                        text += "/table[@class=\"noticeCardTableInBlock contractTable\"]";
                        text += "/tr";
                        text += "/td";
                        text += "/table[@class=\"contractTable displaytagTable\"]";
                        text += "/tbody";
                        text += "/tr";
                        text += "/td";

                        HtmlAgilityPack.HtmlNodeCollection atrCollection = doc.DocumentNode.SelectNodes(text);
                        // Возможно : Сведения о контракте из реестра контрактов отсутствуют
                        if ((atrCollection == null)/* &&
                            (doc.DocumentNode.InnerText.IndexOf("Сведения о контракте из реестра контрактов отсутствуют") > 0)*/)
                        {
                            return ResultType_enum.NotSearch;
                        }

                        int num = 1;
                        foreach (HtmlAgilityPack.HtmlNode atrNode in atrCollection)
                        {
                            switch (num)
                            {
                                case (1):
                                    numRegistr = ConvertNum(atrNode.InnerText.Trim());
                                    break;
                                case (4):
                                    if (atrNode.InnerText.Trim() != "")
                                    {
                                        string lotPriceStr = atrNode.InnerText.Trim().Replace(" ", "").ToLower();
                                        try
                                        {

                                            if (lotPriceStr.IndexOf(',') > -1)
                                            {
                                                _44lotDocumentPrice = Convert.ToInt64(lotPriceStr.Substring(0, lotPriceStr.IndexOf(',')));
                                            }
                                            else
                                            {
                                                if (lotPriceStr.IndexOf(' ') > -1)
                                                {
                                                    _44lotDocumentPrice = Convert.ToInt64(lotPriceStr.Substring(0, lotPriceStr.IndexOf(' ')));
                                                }
                                                else
                                                {
                                                    _44lotDocumentPrice = Convert.ToInt64(lotPriceStr);
                                                }
                                            }
                                        }
                                        catch
                                        {
                                            string sss = "ывавы";
                                        }
                                    }
                                    break;
                                case (5):
                                    if (atrNode.InnerText.Trim() != "")
                                    {
                                        _44lotDocumentDateTime = atrNode.InnerText.Trim();
                                        break;
                                    }
                                    break;
                                default:
                                    break;
                            }

                            num++;
                        }

                        // Номер реестровой записи
                        text = @"http://zakupki.gov.ru/epz/contract/contractCard/common-info.html?reestrNumber=" + numRegistr;
                        doc = internetRequestEngine.GetHtmlDoc(text);
                        resultTypeCheck = Globals.CheckDocResult(doc, out checkMessage);
                        if (resultTypeCheck != ResultType_enum.Done)
                        {
                            winnerMessage = checkMessage;
                            return resultTypeCheck;
                        }

                        text = "//div[@class=\"cardWrapper\"]";
                        text += "/div[@class=\"wrapper\"]";
                        text += "/div[@class=\"mainBox\"]";
                        text += "/div[@class=\"noticeTabBox\"]";
                        text += "/div[@class=\"noticeTabBoxWrapper\"]";
                        text += "/table[@class=\"cTdCenter\"]";
                        text += "/tbody";
                        text += "/tr";

                        HtmlAgilityPack.HtmlNodeCollection trCollection = doc.DocumentNode.SelectNodes(text);
                        if (trCollection == null)
                        {
                            return ResultType_enum.NotSearch;
                        }

                        num = 1;
                        int numTd = 1;

                        foreach (HtmlAgilityPack.HtmlNode trNode in trCollection)
                        {
                            if (num == 2)
                            {
                                foreach (HtmlAgilityPack.HtmlNode tdNode in trNode.ChildNodes)
                                {
                                    if (tdNode.Name == "td")
                                    {
                                        switch (numTd)
                                        {
                                            case (1):
                                                // Наименование организации
                                                winnerName = Globals.DecodeInternetSymbs(tdNode.InnerHtml.Trim().Replace("<br>", " "));
                                                isWinner = true;
                                                break;
                                            case (6):
                                                // Телефон, электронная почта
                                                string emailPhone = tdNode.InnerText.Trim();
                                                if (emailPhone.IndexOf('\n') > -1)
                                                {
                                                    winnerPhone = Globals.DecodeInternetSymbs(emailPhone.Substring(0, emailPhone.IndexOf('\n')).Trim());
                                                    winnerEmail = Globals.DecodeInternetSymbs(emailPhone.Substring(emailPhone.IndexOf('\n'), emailPhone.Length - emailPhone.IndexOf('\n')).Trim());
                                                }
                                                else
                                                {
                                                    winnerPhone = emailPhone;
                                                }
                                                break;
                                            default:
                                                break;
                                        }
                                        numTd++;
                                    }
                                }
                            }
                            num++;
                        }
                        if ((_44lotName != "") && (_44lotPrice != 0) && (_44lotPriceTypeName != ""))
                        {
                            Lot _44lot = new Lot();
                            _44lot.Order = order;
                            _44lot.Name = _44lotName;
                            if (_44lot.Name.Length > 400)
                            {
                                _44lot.Name = _44lot.Name.Substring(0, 398) + "..";
                            }

                            _44lot.Price = _44lotPrice;
                            // LotPriceType
                            LotPriceType lotPriceType = mvm.wc.LotPriceTypes.FirstOrDefault(m => m.Name.ToLower().Trim() == _44lotPriceTypeName.ToLower());
                            if (lotPriceType == null)
                            {
                                lotPriceType = new LotPriceType();
                                lotPriceType.Name = _44lotPriceTypeName;
                                mvm.wc.LotPriceTypes.Add(lotPriceType);
                                mvm.wc.SaveChanges();
                            }
                            _44lot.LotPriceType = lotPriceType;
                            _44lot.OrderHref = _44lotOrderHref;
                            _44lot.DocumentPrice = _44lotDocumentPrice;
                            _44lot.CreateDateTime = DateTime.Now;
                            try
                            {
                                if (_44lotDocumentDateTime.IndexOf('(') > -1)
                                {
                                    _44lot.DocumentDateTime = Convert.ToDateTime(_44lotDocumentDateTime.Substring(0, _44lotDocumentDateTime.IndexOf('(')).Trim());
                                }
                                else {
                                    _44lot.DocumentDateTime = Convert.ToDateTime(_44lotDocumentDateTime.Trim());
                                }

                            }
                            catch {
                                string sss = "аыв";
                            }

                            if (winnerName != "")
                            {
                                mvm.wc.Lots.Add(_44lot);
                                mvm.wc.SaveChanges();

                                Winner winner = new Winner();
                                winner.Name = winnerName;
                                winner.Phone = winnerPhone;
                                winner.Email = winnerEmail;
                                winner.Lot = _44lot;

                                mvm.wc.Winners.Add(winner);
                                mvm.wc.SaveChanges();

                                lotSearched_delegate(winner);
                            }
                        }

                        break;
                    #endregion
                    #region 223 Закон
                    case ("223"):
                        doc = internetRequestEngine.GetHtmlDoc(@"http://zakupki.gov.ru/223/purchase/public/purchase/info/protocols.html?noticeId=" + order.HrefId + @"&amp;epz=true");
                        resultTypeCheck = Globals.CheckDocResult(doc, out checkMessage);
                        if (resultTypeCheck != ResultType_enum.Done)
                        {
                            winnerMessage = checkMessage;
                            return resultTypeCheck;
                        }

                        // Поиск протоколов
                        text = "//div[@class=\"cardWrapper\"]";
                        text += "/div[@class=\"wrapper\"]";
                        text += "/div[@class=\"mainbox\"]";
                        text += "/div[@class=\"contentTabBox\"]";
                        text += "/div[@class=\"contentTabBoxBlock\"]";
                        text += "/div[@class=\"noticeTabBox \"]";
                        text += "/div[@class=\"noticeTabBoxWrapper\"]";
                        text += "/table";
                        text += "/tbody";
                        text += "/tr";

                        HtmlAgilityPack.HtmlNodeCollection trColl = doc.DocumentNode.SelectNodes(text);
                        // Страница не найдена
                        if (trColl == null) return ResultType_enum.NotSearch;

                        // Параметры победителя
                        winnerName = "";
                        winnerPhone = "";
                        winnerEmail = "";
                        // Поиск протоколов с победителем
                        foreach (HtmlAgilityPack.HtmlNode protocolNode in trColl)
                        {
                            text = ".//td[@class=\"descriptTenderTd\"]";
                            text += "/dl";
                            text += "/dt";
                            text += "/a";

                            HtmlAgilityPack.HtmlNode winnerProtocolNode = protocolNode.SelectSingleNode(text);
                            if (winnerProtocolNode == null) continue;

                            #region Решение комиссии
                            if ((winnerProtocolNode.InnerText.Trim().ToLower().IndexOf("протокол подведения итогов") > -1) ||
                                (winnerProtocolNode.InnerText.Trim().ToLower().IndexOf("подведению итогов") > -1) ||
                                (winnerProtocolNode.InnerText.Trim().ToLower().IndexOf("оценки и сопоставления заявок") > -1) ||
                                (winnerProtocolNode.InnerText.Trim().ToLower().IndexOf("победител") > -1) ||
                                (winnerProtocolNode.InnerText.Trim().ToLower().IndexOf("протокол основного этапа закупки") > -1) ||
                                (winnerProtocolNode.InnerText.Trim().ToLower().IndexOf("запрос предложений о цене договора") > -1))
                            {
                                string commissionDecisionMessage = "";
                                _223commissionDecision.Work(order, internetRequestEngine, winnerProtocolNode, lotSearched_delegate, out commissionDecisionMessage, out isWinner);

                            }
                            #endregion
                            #region Выбор победителя
                            if (winnerProtocolNode.InnerText.Trim().ToLower().IndexOf("протокол запроса котировок") > -1)
                            {
                                string winnerChoiceMessage = "";
                                // Доделать
                                _223winnerChoice.Work(order, internetRequestEngine, winnerProtocolNode, lotSearched_delegate, out winnerChoiceMessage, out isWinner);
                            }
                            #endregion
                        }

                        break;
                    #endregion
                    default:
                        return ResultType_enum.Done; // !!! Необходимо добавить 94 закон
                }

                if (!isWinner) return ResultType_enum.NotSearch; else return ResultType_enum.Done;
            }
            catch (Exception ex)
            {
                winnerMessage = ex.Message + '\n' + ex.StackTrace;
                return ResultType_enum.Error;
            }
        }
 private void showWinner(Winner winner)
 {
     string winnerText = WinnerMapper.WinnerText(winner);
     if (!string.IsNullOrEmpty(winnerText))
         MessageBox.Show(winnerText);
 }
Exemplo n.º 55
0
    //공격・방어 애니메이션 연출 대기.
	void UpdateEndAction()
	{
        GameObject obj = GameObject.Find("ActionController");
        if (obj == null) {
            //연출용 오브젝트가 없으면 생성합니다(이 시퀀스의 초기 동작입니다).
            obj = Instantiate(m_actionControllerPrefab) as GameObject;
            obj.name = "ActionController";

            //연출을 위해 승패 판정을 합니다.
            InputData serverPlayer = m_inputData[0];
            InputData clientPlayer = m_inputData[1];
            
            //가위바위보 판정.
            Winner rpsWinner = ResultChecker.GetRPSWinner(serverPlayer.rpsKind, clientPlayer.rpsKind);
            //공방 속도 판정.
            m_actionWinner = ResultChecker.GetActionWinner(serverPlayer.attackInfo, clientPlayer.attackInfo, rpsWinner);
            Debug.Log("RPS Winner:" + rpsWinner.ToString() + " ActionWinner" + m_actionWinner.ToString());

            //연출 시작.
            obj.GetComponent<ActionController>().Setup(
                m_actionWinner, m_score[0], m_score[1]
            );
            return;
        }

        //전투 연출이 끝나길 기다립니다.
        ActionController actionController = obj.GetComponent<ActionController>();
        if (actionController.IsEnd()) {
            //뒷처리.
            Destroy(GameObject.Find("BattleSelect"));       //공수선택 표시물을 지운다.
            Destroy(GameObject.Find("ActionController"));   //연출 제어를 제거.

            //m_timer = 0.0f;
            m_gameState = GameState.Result;
        }
	}
Exemplo n.º 56
0
 private void LotSearched__proc(Winner winner)
 {
     if (winner.Name != "")
         Application.Current.Dispatcher.BeginInvoke(new Action(() =>
         {
             Winners.Add(winner);
         }));
 }
Exemplo n.º 57
0
 private void showWinner(Winner winner)
 {
     if (haveShownWinner)
         return;
     string winnerText = WinnerMapper.WinnerText(winner);
     if (!string.IsNullOrEmpty(winnerText))
     {
         MessageBox.Show(winnerText);
         haveShownWinner = true;
     }
 }
Exemplo n.º 58
0
 /// <summary>Indica a categoria de um prémio</summary>
 public static string getPrizeCategory( Winner prize )
 {
     return prize.Category.ToString();
 }
Exemplo n.º 59
0
	void UpdateTurn()
	{
		bool setMark = false;

		if (turn == localMark) {
			setMark = DoOwnTurn();

            //둘 수 없는 장소를 누르면 클릭용 사운드효과를 냅니다.
            if (setMark == false && Input.GetMouseButtonDown(0)) {
                AudioSource audio = GetComponent<AudioSource>();
                audio.clip = se_click;
                audio.Play();
            }
		}
		else {
			setMark = DoOppnentTurn();

            //둘 수 없을 때 누르면 클릭용 사운드 효과를 냅니다.
            if (Input.GetMouseButtonDown(0)) {
                AudioSource audio = GetComponent<AudioSource>();
                audio.clip = se_click;
                audio.Play();
            }
		}

		if (setMark == false) {
			// 놓을 곳을 검토 중입니다.	
			return;
		}
        else {
            //기호가 놓이는 사운드 효과를 냅니다. 
            AudioSource audio = GetComponent<AudioSource>();
            audio.clip = se_setMark;
            audio.Play();
        }
		
		// 기호의 나열을 체크합니다.
		winner = CheckInPlacingMarks();
		if (winner != Winner.None) {
            //승리한 경우는 사운드효과를 냅니다.
            if ((winner == Winner.Circle && localMark == Mark.Circle)
                || (winner == Winner.Cross && localMark == Mark.Cross)) {
                AudioSource audio = GetComponent<AudioSource>();
                audio.clip = se_win;
                audio.Play();
            }
            //BGM재생종료.
            GameObject bgm = GameObject.Find("BGM");
            bgm.GetComponent<AudioSource>().Stop();

			// 게임 종료입니다.
			progress = GameProgress.Result;			
		}
		
		// 턴을 갱신합니다.
		turn = (turn == Mark.Circle)? Mark.Cross : Mark.Circle; 
		timer = turnTime;
	}
Exemplo n.º 60
0
    // Update is called once per frame
    public void StartDebates()
    {
        shadow.SetBool("Hidden", false);
        up_inner_ring.SetBool("Hidden", false);
        down_inner_ring.SetBool("Hidden", false);
        up_outer_ring.SetBool("Hidden", false);
        down_outer_ring.SetBool("Hidden", false);

        if (!GameManager.is_net) {
            up_button.SetActive(true);
        }
        down_button.SetActive(true);

        is_debates_started = true;
        winner = Winner.Nobody;

        down_size = min_size;
        up_size = min_size;

        StartCoroutine(WaitAndEmit());
    }