//obtains the premade game object, begin the game public frmGameWindow(Player[] players, int deckSize) { InitializeComponent(); //create the deck game = new Durak(deckSize); //shuffling the deck, setting the players and AIs Players.InitializeGame(players, true); game.SetPlayers(players); // Get reference to the game table (Card container) game.Table.InPlay.CardsChanged += hand_CardChanged; //lblTrump.Text = game.TrumpSuit(); cbTrump.Card = game.TrumpCard; player = Players.GetHumanPlayer(); player.PlayHand.CardsChanged += hand_CardChanged; //Dealing the hands game.DealHands(); attacker = Players.GetCurrentPlayer(); // Determine attacker defender = Players.PeakNextPlayer(); // Determine defender lblDeckSize.Text = game.GetCardsRemaining().ToString(); }
static void Main(string[] args) { Durak _durak1 = new Durak("IskeleYolu", DateTime.Now); Durak _durak2 = new Durak("HalkEvi", DateTime.Now); Rota _rota1 = new Rota("Rota1"); _rota1.DurakEkle(_durak1); _rota1.DurakEkle(_durak2); Servis _servis1 = new Servis("41E7922", _rota1); Sofor _sofor1 = new Sofor("Metin", "Catak", 50, _servis1); Kullanici _kullanici1 = new Kullanici("Tunahan"); Kullanici _kullanici2 = new Kullanici("Yagmur"); _servis1.Attach(_kullanici1); _servis1.Attach(_kullanici2); //Yeni Rota Durak _durak3 = new Durak("Garajlar", DateTime.Now); Rota _rota2 = new Rota("Rota2"); _rota2.DurakEkle(_durak3); _rota2.DurakEkle(_durak2); _sofor1.RotaDegistir(_rota2); _sofor1.DurakZamanDegistir(_durak3, DateTime.Now); }
public GameView(Durak game, int id) { this.game = game; variation = game.variation; List <Player> players = game.GetPlayers(); playerID = id; hand = players[id].GetPlayersHand(); if (prevDiscardedHeapValue != discardHeapSize) { discardHeapChanged = true; } prevDiscardedHeapValue = discardHeapSize; PlayerView playerView; List <PlayerView> pViews = new List <PlayerView>(); for (int i = 0; i < game.GetSizeOfPlayers(); i++) { playerView = new PlayerView(); playerView.numberOfCards = players[i].GetNumberOfCards(); playerView.isAttacking = (attackingPlayer == i); playerView.playerState = players[i].playerState; playerView.passport = players[i].passport; if (players[i].playerState == PlayerState.Winner) { passportGameOver = true; } if (variation == Variation.Passport && players[i].CheckIfAllCardsPassport()) { playerView.allCardsPassport = true; } pViews.Add(playerView); } playersView = pViews; trumpCard = deckSize == 0 ? new Card(game.GetTrumpCard().suit, (Rank)5) : game.GetTrumpCard(); attackingCards = game.GetBoutInformation().GetAttackingCards(); defendingCards = game.GetBoutInformation().GetDefendingCards(); takingCards = game.GetPlayer(defendingPlayer).IsPlayerTaking(); playerTurn = game.GetPlayersTurn(); gameStatus = game.gameStatus; }
public PlayerView(Durak.Player _p) { InitializeComponent(); _player = _p; foreach(Durak.objects.Card c in _player.Hand) { handVew.Controls.Add(new CardView(c)); } _count = _p.Hand.Count; this.Paint += new PaintEventHandler(PlayerView_Paint); }
private void btnStart_Click(object sender, EventArgs e) { int deckSize = 0; int playerCount = 0; String playerName = ""; if (cbxPlayers.SelectedIndex != -1) { if (rbtn20.Checked) { deckSize = 20; } else if (rbtn36.Checked) { deckSize = 36; } else if (rbtn52.Checked) { deckSize = 52; } Int32.TryParse(cbxPlayers.SelectedItem.ToString(), out playerCount); if (txtName.Text.Length > 0) { Durak newGame = new Durak(deckSize); //Creates an array of players. Can be between 2 and 7 Player[] players; List <Player> playerList = new List <Player>(); playerName = txtName.Text; playerList.Add(new Player(playerName)); for (int i = 0; i < playerCount - 1; i++) { playerList.Add(new Player("AI " + i)); } //Sets each player in the arary. players = playerList.ToArray(); //Setting the players. Must be done before starting the game. newGame.SetPlayers(players); //Close the main menu, and open the game window this.Hide(); var gameWindow = new frmGameWindow(); gameWindow.Closed += (s, args) => this.Close(); gameWindow.Show(); } } }
// Agaca bir dügüm eklemeyi saglayan metot public void insert(Durak newdata) { TreeNode newNode = new TreeNode(); newNode.data = newdata; if (root == null) { root = newNode; } else { TreeNode current = root; TreeNode parent; while (true) { parent = current; if (string.Compare(newdata.getDurakAdi(), current.data.getDurakAdi()) < 0) { current = current.leftChild; if (current == null) { parent.leftChild = newNode; return; } } else { current = current.rightChild; if (current == null) { parent.rightChild = newNode; return; } } } // end while } // end else not root size++; } // end insert()
public CardView(Durak.objects.Card c) { InitializeComponent(); splitCard.SplitterDistance = 17; _card = c; _opened = false; this.BackColor = Color.Maroon; if (Convert.ToInt32(_card.Suit) == 0 || Convert.ToInt32(_card.Suit) == 3) { numberView.ForeColor = Color.Red; } if (_card.Number < 11) { numberView.Text = _card.Number.ToString(); } else { string s = ""; switch (_card.Number) { case 11: s = "J"; break; case 12: s = "Q"; break; case 13: s = "K"; break; case 14: s = "A"; break; } numberView.Text = s; } switch (Convert.ToInt32(_card.Suit)) { case 0: pictureBox.BackgroundImage = PngSuits.spades_red; break; case 1: pictureBox.BackgroundImage = PngSuits.clubs_black; break; case 2: pictureBox.BackgroundImage = PngSuits.hearts_black; break; case 3: pictureBox.BackgroundImage = PngSuits.diamonds_red; break; } OpenCard(); this.Click += new EventHandler(CardView_Click); }
private void duraklar() { XmlTextWriter yaz = new XmlTextWriter("Duraklar.xml", System.Text.UTF8Encoding.UTF8); yaz.Formatting = Formatting.Indented; yaz.WriteStartDocument(); yaz.WriteStartElement("hepsi"); foreach (string item in tmhatlar.Items) { string[] ayir = item.Split('*'); IConnection connection; connection = NSoupClient.Connect("http://www.iett.istanbul/tr/main/hatlar/" + ayir[1]).UserAgent("Mozilla"); connection.Timeout(600000); Document document = connection.Get(); yaz.WriteStartElement("hatid"); yaz.WriteAttributeString("h", ayir[1]); foreach (Element yon in document.Select("div.LineMapList ol")) { int i = 1; if (yon.Select("li").Count > 0) { yaz.WriteStartElement("yon"); string yn = "Geliş"; if (yon.Attr("data-station-direction") == "Going") { yn = "Gidiş"; } yaz.WriteAttributeString("y", yn); } foreach (Element Durak in yon.Select("li")) { yaz.WriteStartElement("durak"); yaz.WriteAttributeString("durakno", i.ToString()); yaz.WriteAttributeString("lat", Durak.Attr("data-station-lat")); yaz.WriteAttributeString("lng", Durak.Attr("data-station-lng")); yaz.WriteAttributeString("isim", Durak.Attr("data-station-name")); yaz.WriteEndElement(); i++; } if (yon.Select("li").Count > 0) { yaz.WriteEndElement(); } } yaz.WriteEndElement(); durum++; } yaz.WriteEndElement(); yaz.Close(); MessageBox.Show("Duraklar XML kayit edildi."); }
public frmGameWindow(Durak game) { }
/// <summary> /// Belirtilen durağın sınırları dahilinde miyiz? /// </summary> /// <param name="sonrakiDurak"></param> /// <returns></returns> private bool YolcuAlabilirMi(Durak sonrakiDurak) { float otobusArkaNoktasi = KonumX-Otobus.Uzunluk; float durakArkaNoktasi = sonrakiDurak.KonumX-Durak.Uzunluk; return KonumX <= sonrakiDurak.KonumX+50 && ( otobusArkaNoktasi > durakArkaNoktasi ); }
public void Update(GameTime gameTime) { if (sonDurak == null && Durak.duraklar.Count > 0) // duraklar oluşturulunca sondurağı tespit et. sonDurak = Durak.duraklar.OrderByDescending(d => d.KonumX).FirstOrDefault(); if (!seyehatTamamlandi && Durak.duraklar.Count>0 && (sonDurak == null || KonumX > sonDurak.KonumX + 600)) { seyehatTamamlandi = true; var sure = DateTime.Now.Subtract(seyehatBaslangicZamani); logger.Info(id + " seyehati tamamladı. Toplam gecen süre (dk):"+(sure.TotalMinutes*Ayar.Default.SimulasyonHizi)); } var onumuzdekiOtobus = OndekiOtobusuGetir(); Durak sonrakiDurak = SonrakiDurakGetir(); bool otobusdenDolayiYavaslamali = false; bool duraktanDolayiYavaslamali = false; if (hiz > 0) // hareket halinde { if (onumuzdekiOtobus != null) { var xPoint = onumuzdekiOtobus.KonumX - Otobus.Uzunluk; var guvenliDurmaMesafesi = GuvenliDurusMesafesiHesapla(hiz); if ((xPoint - KonumX) <= guvenliDurmaMesafesi) otobusdenDolayiYavaslamali = true; } if (!otobusdenDolayiYavaslamali && sonrakiDurak != null) { var xPoint = sonrakiDurak.KonumX; var guvenliDurmaMesafesi = GuvenliDurusMesafesiHesapla(hiz); duraktanDolayiYavaslamali = (xPoint - KonumX) <= guvenliDurmaMesafesi; } if (otobusdenDolayiYavaslamali || duraktanDolayiYavaslamali) { HizAzalt(gameTime); } else { HizArttır(gameTime); } } else // duruyor { if (sonrakiDurak != null && YolcuAlabilirMi(sonrakiDurak)) { if (durakZamanSayaci == 0) { // yolcu almaya başlıyoruz. logger.Info("{0} {1} durağında yolcu almaya başlandı. Seyehat {2} saniye sürdü",id, sonrakiDurak.durakAdi, DateTime.Now.Subtract(hizlanmaBasi).TotalMilliseconds / 1000f * Ayar.Default.SimulasyonHizi); } // yolcu alma sürecince bekle. durakZamanSayaci += gameTime.ElapsedGameTime.Milliseconds / 1000f; if (durakZamanSayaci > durakBeklemeSuresiSn / SimulasyonHizi) { durakZamanSayaci = 0; HizArttır(gameTime); durdugumuzDuraklar.Add(sonrakiDurak); hizlanmaBasi = DateTime.Now; logger.Info("{0} {1} durağından hareket ediliyor.", id, sonrakiDurak.durakAdi); } } else if (onumuzdekiOtobus != null && (onumuzdekiOtobus.KonumX - Otobus.Uzunluk - KonumX) > 1) { HizArttır(gameTime); } } KonumGuncelle(gameTime); }