Example #1
0
        private ConsoleLocation YeniKafaKonumuYarat()
        {
            ConsoleLocation yeniKafaKonumu = new ConsoleLocation();

            switch (_mevcutYon)
            {
            case Direction.Up:
                yeniKafaKonumu.SolaOlanUzaklik = _mevcutKafaKonumu.SolaOlanUzaklik;
                yeniKafaKonumu.UsteOlanUzaklik = _mevcutKafaKonumu.UsteOlanUzaklik - 1;
                break;

            case Direction.Down:
                yeniKafaKonumu.SolaOlanUzaklik = _mevcutKafaKonumu.SolaOlanUzaklik;
                yeniKafaKonumu.UsteOlanUzaklik = _mevcutKafaKonumu.UsteOlanUzaklik + 1;
                break;

            case Direction.Right:
                yeniKafaKonumu.SolaOlanUzaklik = _mevcutKafaKonumu.SolaOlanUzaklik + 1;
                yeniKafaKonumu.UsteOlanUzaklik = _mevcutKafaKonumu.UsteOlanUzaklik;
                break;

            case Direction.Left:
                yeniKafaKonumu.SolaOlanUzaklik = _mevcutKafaKonumu.SolaOlanUzaklik - 1;
                yeniKafaKonumu.UsteOlanUzaklik = _mevcutKafaKonumu.UsteOlanUzaklik;
                break;
            }
            return(yeniKafaKonumu);
        }
Example #2
0
 private void CiktiysaGeriGirdir(ConsoleLocation yeniKonum)
 {
     yeniKonum.SolaOlanUzaklik = yeniKonum.SolaOlanUzaklik > _oyunAlaniGenisligi ? 1 : yeniKonum.SolaOlanUzaklik;
     yeniKonum.UsteOlanUzaklik = yeniKonum.UsteOlanUzaklik > _oyunAlaniYuksekligi ? 1 : yeniKonum.UsteOlanUzaklik;
     yeniKonum.SolaOlanUzaklik = yeniKonum.SolaOlanUzaklik < 1 ? _oyunAlaniGenisligi : yeniKonum.SolaOlanUzaklik;
     yeniKonum.UsteOlanUzaklik = yeniKonum.UsteOlanUzaklik < 1 ? _oyunAlaniYuksekligi : yeniKonum.UsteOlanUzaklik;
 }
Example #3
0
 public static void yilan_HareketEtti(Snake yilan, ConsoleLocation kuyruk, ConsoleLocation bas)
 {
     Console.SetCursorPosition(bas.SolaOlanUzaklik, bas.UsteOlanUzaklik);
     Console.Write(yilanSembolu);
     Console.SetCursorPosition(kuyruk.SolaOlanUzaklik, kuyruk.UsteOlanUzaklik);
     Console.Write(" ");
 }
Example #4
0
 public static void YilaniVeYemiCiz(ConsoleLocation[] yilanGovdeKonumlari, ConsoleLocation yemKonumu)
 {
     foreach (var konum in yilanGovdeKonumlari)
     {
         Console.SetCursorPosition(konum.SolaOlanUzaklik, konum.UsteOlanUzaklik);
         Console.Write(yilanSembolu);
     }
     Console.SetCursorPosition(yemKonumu.SolaOlanUzaklik, yemKonumu.UsteOlanUzaklik);
     Console.Write(yemSembolu);
 }
Example #5
0
        public void HareketEt()
        {
            var yeniKafaKonumu      = YeniKafaKonumuYarat();
            var kuyruktanCikanKonum = Konumlar.Dequeue();

            CiktiysaGeriGirdir(yeniKafaKonumu);
            if (KuyrugaCarptiMi(yeniKafaKonumu))
            {
                YilanKendisineDegdi(this, kuyruktanCikanKonum, yeniKafaKonumu);
            }
            Konumlar.Enqueue(yeniKafaKonumu);
            _mevcutKafaKonumu = yeniKafaKonumu;
            if (YilanHareketEtti != null)
            {
                YilanHareketEtti(this, kuyruktanCikanKonum, yeniKafaKonumu);
            }
        }
Example #6
0
 public Snake(int oyunAlaniGenisligi, int oyunAlaniYuksekligi)
 {
     Konumlar             = new Queue <ConsoleLocation>();
     _oyunAlaniGenisligi  = oyunAlaniGenisligi;
     _oyunAlaniYuksekligi = oyunAlaniYuksekligi;
     _mevcutYon           = Direction.Right;
     for (int i = 0; i < 4; i++)
     {
         var varsayilanNokta = new ConsoleLocation()
         {
             SolaOlanUzaklik = 5 + i, UsteOlanUzaklik = oyunAlaniYuksekligi / 2
         };
         Konumlar.Enqueue(varsayilanNokta);
         if (i == 3)
         {
             _mevcutKafaKonumu = varsayilanNokta;
         }
     }
 }
Example #7
0
 private bool KuyrugaCarptiMi(ConsoleLocation yeniKafaKonumu)
 {
     return(Konumlar.Contains(yeniKafaKonumu));
 }
Example #8
0
 public Bait()
 {
     this.Konum = new ConsoleLocation();
 }
Example #9
0
 public void _yilan_kendisineDegdi(Snake yilan, ConsoleLocation kuyrukSonu, ConsoleLocation yilanBasi)
 {
 }
Example #10
0
 public void _yilan_hareketEtti(Snake yilan, ConsoleLocation kuyrukSonu, ConsoleLocation yilanBasi)
 {
     YilanHareketEtti(yilan, kuyrukSonu, yilanBasi);
 }