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); }
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; }
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(" "); }
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); }
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); } }
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; } } }
private bool KuyrugaCarptiMi(ConsoleLocation yeniKafaKonumu) { return(Konumlar.Contains(yeniKafaKonumu)); }
public Bait() { this.Konum = new ConsoleLocation(); }
public void _yilan_kendisineDegdi(Snake yilan, ConsoleLocation kuyrukSonu, ConsoleLocation yilanBasi) { }
public void _yilan_hareketEtti(Snake yilan, ConsoleLocation kuyrukSonu, ConsoleLocation yilanBasi) { YilanHareketEtti(yilan, kuyrukSonu, yilanBasi); }