/// <summary> /// Kurucu Metod - Constructor /// </summary> public Game(Player player, Player competitor) { // Pulların oluşturulması for (int i = 0; i < 15; i++) { this.WhiteChips[i] = new Chip(Chip.ChipColor.White); this.BlackChips[i] = new Chip(Chip.ChipColor.Black); } // Sütunların oluşturulması for (int i = 0; i < 24; i++) this.Columns[i] = new Column(i % 2 == 0); // Switch işleminde MovingPlayer'ın değişimi ile rakibin de (waitingCompetitor) değişimini sağlar; MovingPlayerChanged += () => { System.Diagnostics.Debug.WriteLine("Sıra " + MovingPlayer.PlayerName + " isimli oyuncuya geçti."); // Rakip de değişir; if (MovingPlayer.Equals(this.CurrentPlayer)) waitingCompetitor = this.Competitor; else waitingCompetitor = this.CurrentPlayer; }; // Oyuncuların ayarlanması this.player = player; this.competitor = competitor; // Oyuncu perspektiflerinin ayarlanması for (int i = 0; i < 24; i++) { this.CurrentPlayer.Perspective[i] = this.columns[i]; this.Competitor.Perspective[i] = this.columns[23 - i]; } // Taşların dizilmesi this.SetStartPosition(); }
/// <summary> /// Oyuna ilk başlayacak oyuncunun belirlenmesi /// </summary> /// <param name="firstPlayer"></param> public void SetFirstPlayer(Player firstPlayer) { if (MovingPlayer == null) MovingPlayer = firstPlayer; }