

C#'Da Yılan Oyunu Yazdım Kodları Okuyup Tavsiyelerinizi Bekliyorum.
-
C#'da yılan oyunu yazdım kodları okuyup tavsiyelerinizi bekliyorum.
Oyunu bu linkten indirebilirsiniz.
http://yadi.sk/d/VLVhjCIUE3Qgi...............................................................................................................
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace yılanOynu
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
public int sayac=0;
public void yem()
{
if (pictureBox1.Left == yılanYemi.Left && pictureBox1.Top == yılanYemi.Top)
{
sayac++;
Random rmd = new Random();
do
{
yılanYemi.Left = rmd.Next(10, 370);
yılanYemi.Top = rmd.Next(10, 300);
if ((0 != (yılanYemi.Top % 10)) || (0 != (yılanYemi.Left % 10)))
{
yılanYemi.Visible = false;
}
else
{
yılanYemi.Visible = true;
}
}
while ((0 != (yılanYemi.Top % 10)) || (0 != (yılanYemi.Left % 10)));
}
Scor.Text = "Puanınız=" + sayac;
}
public void degerAtama(PictureBox pict1,PictureBox pict2)
{
pict2.Left= pict1.Left;
pict2.Top= pict1.Top;
}
public void devamEttirici()
{
PictureBox[] yılanBogumlari = {pictureBox1,pictureBox2,pictureBox3,pictureBox4,pictureBox5,
pictureBox6,pictureBox7,pictureBox8,pictureBox9,pictureBox10,
pictureBox11,pictureBox12,pictureBox13,pictureBox14,pictureBox15,
pictureBox16,pictureBox17,pictureBox18,pictureBox19,pictureBox20 };
for (int a = 0; a <= 18;a++ )
{
degerAtama(yılanBogumlari[18 - a], yılanBogumlari[19 - a]);
}
}
public void disari()
{
if (pictureBox1.Top < 10) pictureBox1.Top = 300;
else if (pictureBox1.Top > 300) pictureBox1.Top = 10;
else if (pictureBox1.Left < 10) pictureBox1.Left = 370;
else if (pictureBox1.Left > 370) pictureBox1.Left = 10;
}
int a = 3;
public void yılanBuyu()
{
PictureBox[] yılanBogumlari = {pictureBox1,pictureBox2,pictureBox3,pictureBox4,pictureBox5,
pictureBox6,pictureBox7,pictureBox8,pictureBox9,pictureBox10,
pictureBox11,pictureBox12,pictureBox13,pictureBox14,pictureBox15,
pictureBox16,pictureBox17,pictureBox18,pictureBox19,pictureBox20 };
if ((sayac % 5) == 0 && sayac!=0)
{
yılanBogumlari[a].Visible = true;
if (a < 19)
{
a++;
sayac++;
}
else ;
}
}
void kendiniYeme()
{
PictureBox[] yılanBogumlari = {pictureBox1,pictureBox2,pictureBox3,pictureBox4,pictureBox5,
pictureBox6,pictureBox7,pictureBox8,pictureBox9,pictureBox10,
pictureBox11,pictureBox12,pictureBox13,pictureBox14,pictureBox15,
pictureBox16,pictureBox17,pictureBox18,pictureBox19,pictureBox20 };
for (int a = 1; a <= 19;a++)
if (pictureBox1.Top == yılanBogumlari[a].Top && pictureBox1.Left == yılanBogumlari[a].Left && yılanBogumlari[a].Visible == true)
{
Kaybettin.Visible = true;
tSaga.Stop();
tSola.Stop();
tAsagi.Stop();
tYukari.Stop();
}
}
private void Form1_Load(object sender, EventArgs e)
{
PictureBox[] yılanBogumlari = {pictureBox1,pictureBox2,pictureBox3,pictureBox4,pictureBox5,
pictureBox6,pictureBox7,pictureBox8,pictureBox9,pictureBox10,
pictureBox11,pictureBox12,pictureBox13,pictureBox14,pictureBox15,
pictureBox16,pictureBox17,pictureBox18,pictureBox19,pictureBox20 };
Kaybettin.Visible = false;
for (int a = 3; a <= 19; a++)
{
yılanBogumlari[a].Visible = false;
}
}
private void p2_Click(object sender, EventArgs e)
{
tAsagi.Stop();
tSaga.Stop();
tSola.Stop();
tYukari.Start();
}
private void p4_Click(object sender, EventArgs e)
{
tYukari.Stop();
tAsagi.Stop();
tSaga.Stop();
tSola.Start();
}
private void p8_Click(object sender, EventArgs e)
{
tYukari.Stop();
tSaga.Stop();
tSola.Stop();
tAsagi.Start();
}
private void p6_Click(object sender, EventArgs e)
{
tYukari.Stop();
tAsagi.Stop();
tSola.Stop();
tSaga.Start();
}
private void tYukari_Tick(object sender, EventArgs e)
{
devamEttirici();
pictureBox1.Top -= 10;
yılanBuyu();
disari();
yem();
kendiniYeme();
}
private void tAsagi_Tick(object sender, EventArgs e)
{
devamEttirici();
pictureBox1.Top += 10;
yılanBuyu();
disari();
yem();
kendiniYeme();
}
private void tSaga_Tick(object sender, EventArgs e)
{
devamEttirici();
pictureBox1.Left += 10;
yılanBuyu();
disari();
yem();
kendiniYeme();
}
private void tSola_Tick(object sender, EventArgs e)
{
devamEttirici();
pictureBox1.Left -= 10;
yılanBuyu();
disari();
yem();
kendiniYeme();
}
private void Kaybettin_Click(object sender, EventArgs e)
{
sayac = 0;
Scor.Text = "Puanınız=0";
pictureBox1.Left = 220;
pictureBox1.Top = 160;
pictureBox2.Left = 208;
pictureBox2.Top = 160;
pictureBox3.Left = 197;
pictureBox3.Top = 160;
Kaybettin.Visible = false;
PictureBox[] yılanBogumlari = {pictureBox1,pictureBox2,pictureBox3,pictureBox4,pictureBox5,
pictureBox6,pictureBox7,pictureBox8,pictureBox9,pictureBox10,
pictureBox11,pictureBox12,pictureBox13,pictureBox14,pictureBox15,
pictureBox16,pictureBox17,pictureBox18,pictureBox19,pictureBox20 };
for (int a = 3; a <= 19; a++)
{
yılanBogumlari[a].Visible = false;
}
}
}
}
....................................................................................................................................................
Yılanın her boğumunu bir resmile temsil ettim. Onlarıda br diziye aktardım ama dizi her kullanacağım metod içinde yeniden tanımlamam gerekti. Mesela bu konuda yardım bekliyorum. -
bu şekilde daha okunaklı olur
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; namespace yılanOynu { public partial class Form1 : Form { public Form1() { InitializeComponent(); } public int sayac=0; public void yem() { if (pictureBox1.Left == yılanYemi.Left && pictureBox1.Top == yılanYemi.Top) { sayac++; Random rmd = new Random(); do { yılanYemi.Left = rmd.Next(10, 370); yılanYemi.Top = rmd.Next(10, 300); if ((0 != (yılanYemi.Top % 10)) || (0 != (yılanYemi.Left % 10))) { yılanYemi.Visible = false; } else { yılanYemi.Visible = true; } } while ((0 != (yılanYemi.Top % 10)) || (0 != (yılanYemi.Left % 10))); } Scor.Text = "Puanınız=" + sayac; } public void degerAtama(PictureBox pict1,PictureBox pict2) { pict2.Left= pict1.Left; pict2.Top= pict1.Top; } public void devamEttirici() { PictureBox[] yılanBogumlari = {pictureBox1,pictureBox2,pictureBox3,pictureBox4,pictureBox5, pictureBox6,pictureBox7,pictureBox8,pictureBox9,pictureBox10, pictureBox11,pictureBox12,pictureBox13,pictureBox14,pictureBox15, pictureBox16,pictureBox17,pictureBox18,pictureBox19,pictureBox20 }; for (int a = 0; a <= 18;a++ ) { degerAtama(yılanBogumlari[18 - a], yılanBogumlari[19 - a]); } } public void disari() { if (pictureBox1.Top < 10) pictureBox1.Top = 300; else if (pictureBox1.Top > 300) pictureBox1.Top = 10; else if (pictureBox1.Left < 10) pictureBox1.Left = 370; else if (pictureBox1.Left > 370) pictureBox1.Left = 10; } int a = 3; public void yılanBuyu() { PictureBox[] yılanBogumlari = {pictureBox1,pictureBox2,pictureBox3,pictureBox4,pictureBox5, pictureBox6,pictureBox7,pictureBox8,pictureBox9,pictureBox10, pictureBox11,pictureBox12,pictureBox13,pictureBox14,pictureBox15, pictureBox16,pictureBox17,pictureBox18,pictureBox19,pictureBox20 }; if ((sayac % 5) == 0 && sayac!=0) { yılanBogumlari[a].Visible = true; if (a < 19) { a++; sayac++; } else ; } } void kendiniYeme() { PictureBox[] yılanBogumlari = {pictureBox1,pictureBox2,pictureBox3,pictureBox4,pictureBox5, pictureBox6,pictureBox7,pictureBox8,pictureBox9,pictureBox10, pictureBox11,pictureBox12,pictureBox13,pictureBox14,pictureBox15, pictureBox16,pictureBox17,pictureBox18,pictureBox19,pictureBox20 }; for (int a = 1; a <= 19;a++) if (pictureBox1.Top == yılanBogumlari[a].Top && pictureBox1.Left == yılanBogumlari[a].Left && yılanBogumlari[a].Visible == true) { Kaybettin.Visible = true; tSaga.Stop(); tSola.Stop(); tAsagi.Stop(); tYukari.Stop(); } } private void Form1_Load(object sender, EventArgs e) { PictureBox[] yılanBogumlari = {pictureBox1,pictureBox2,pictureBox3,pictureBox4,pictureBox5, pictureBox6,pictureBox7,pictureBox8,pictureBox9,pictureBox10, pictureBox11,pictureBox12,pictureBox13,pictureBox14,pictureBox15, pictureBox16,pictureBox17,pictureBox18,pictureBox19,pictureBox20 }; Kaybettin.Visible = false; for (int a = 3; a <= 19; a++) { yılanBogumlari[a].Visible = false; } } private void p2_Click(object sender, EventArgs e) { tAsagi.Stop(); tSaga.Stop(); tSola.Stop(); tYukari.Start(); } private void p4_Click(object sender, EventArgs e) { tYukari.Stop(); tAsagi.Stop(); tSaga.Stop(); tSola.Start(); } private void p8_Click(object sender, EventArgs e) { tYukari.Stop(); tSaga.Stop(); tSola.Stop(); tAsagi.Start(); } private void p6_Click(object sender, EventArgs e) { tYukari.Stop(); tAsagi.Stop(); tSola.Stop(); tSaga.Start(); } private void tYukari_Tick(object sender, EventArgs e) { devamEttirici(); pictureBox1.Top -= 10; yılanBuyu(); disari(); yem(); kendiniYeme(); } private void tAsagi_Tick(object sender, EventArgs e) { devamEttirici(); pictureBox1.Top += 10; yılanBuyu(); disari(); yem(); kendiniYeme(); } private void tSaga_Tick(object sender, EventArgs e) { devamEttirici(); pictureBox1.Left += 10; yılanBuyu(); disari(); yem(); kendiniYeme(); } private void tSola_Tick(object sender, EventArgs e) { devamEttirici(); pictureBox1.Left -= 10; yılanBuyu(); disari(); yem(); kendiniYeme(); } private void Kaybettin_Click(object sender, EventArgs e) { sayac = 0; Scor.Text = "Puanınız=0"; pictureBox1.Left = 220; pictureBox1.Top = 160; pictureBox2.Left = 208; pictureBox2.Top = 160; pictureBox3.Left = 197; pictureBox3.Top = 160; Kaybettin.Visible = false; PictureBox[] yılanBogumlari = {pictureBox1,pictureBox2,pictureBox3,pictureBox4,pictureBox5, pictureBox6,pictureBox7,pictureBox8,pictureBox9,pictureBox10, pictureBox11,pictureBox12,pictureBox13,pictureBox14,pictureBox15, pictureBox16,pictureBox17,pictureBox18,pictureBox19,pictureBox20 }; for (int a = 3; a <= 19; a++) { yılanBogumlari[a].Visible = false; } } } } -
oynayamadım problem var ya da sorun bende :)
-
sorun var , yiyeceğimiz şey yılanın gidebildiği yerin dısında çıkıyor yiyemiyosun
-
hatayi bunu yazdı
oynayamadım problem var ya da sorun bende :)
Sanırım klavyeniin tuşlarını kullandın ekranda gördüğün telefonun tuşlarını kullanacaksın :)
Klavyeinin tuşalarıylada oynanna bilir hale getireyim bari... -
blackseaboy28 bunu yazdı
sorun var , yiyeceğimiz şey yılanın gidebildiği yerin dısında çıkıyor yiyemiyosun
do while göngüsü içindeki koordinatların atamsınında değerleri değiştirdim. Aytık öyle bir sıkıntı olmaması lazım...
mhasan tarafından 09/Ara/13 21:29 tarihinde düzenlenmiştir
Oyunu ve kodları düzenleyip bir daha yükleyeceğim inşallah... -
bende yılın oyunu diye okudum :D
-
x-files bunu yazdı
bende yılın oyunu diye okudum :D
:D
-
x-files bunu yazdı
bende yılın oyunu diye okudum :D
:D