View Full Version : ساخت شبیه ساز فوتبال با سی شارپ
alasht
دوشنبه 29 آذر 1389, 17:27 عصر
با سلام خدمت دوستان
استادمو یه پروزه داده گفته یه با C# شبیه ساز فوتبال بسازین
یه زمین فوتبال و چند تا ادمک خیلی ساده که راه برن و بهم پاس بدن و توپ رو شوت کنن تو دروازه
من اصلا مبحث کار گرافیکی با سی شارپ رو بلد نیستم
یعنی نمیدونم کجا باید محیط مورد نظرم رو بسازم و ادمکها رو حرکت بدم و.....
چون استادمون اصلا این مورد رو بهمون یاد نداد و در این زمینه 0 هستم
حالا برای شروع از دوستان میخوام که راهنماییم کنن و بگن که برای ساخت محیط بازیم باید از کدوم قسمت شکل ظاهریمو بسازم
تا کم کم سوالاتمو بپرسم
با تشکر
محسن شامحمدی
چهارشنبه 01 دی 1389, 17:01 عصر
براي آوردن آدمك ها مشكل داريد؟
بايد يك picture box بياريد توي فرم و عكس آدمكتون رو توش بذاريد.
اين ها رو نوشتم تا :
تا کم کم سوالاتمو بپرسم
alasht
پنج شنبه 02 دی 1389, 17:00 عصر
سلام
خیلی ممنون که جواب دادین دیگه کم کم داشتم نا امید میشدم کسی جواب بده
خوب من باید به تعداد ادمکهام Picturebox بسازم ؟
اگه میشه بیشتر توضیح بدین
بعد برای حرکت دادن ادمکها باید چیکار کنم ؟
alasht
شنبه 04 دی 1389, 21:28 عصر
سلام
این همه برنامه نویس حرفه ای تو این سایت هست یکی نیست کار ما رو راه بندازه :گریه:
محسن شامحمدی
یک شنبه 05 دی 1389, 08:49 صبح
این همه برنامه نویس حرفه ای تو این سایت هست یکی نیست کار ما رو راه بندازه
آقا شرمنده دو سه روزی سایت نیومده بودم.:دی
:بامزه:
خوب من باید به تعداد ادمکهام Picturebox بسازم ؟
خب بله.طبیعتا همینطوره.
بعد برای حرکت دادن ادمکها باید چیکار کنم ؟
باید از یک تایمر استفاده کنی.
بعد اینطوری می تونی آدماتو حرکت بدی:
picture1.location=new point(300,500);
alasht
یک شنبه 05 دی 1389, 13:31 عصر
سلام دوست عزیز ممنون که به تاپیک من توجه میکنید :قلب:
چون استادمون اصلا این مورد رو بهمون یاد نداد و در این زمینه 0 هستم
میشه یکم بیشتر توضیح بدین
من میخوام 4 تا آدمک بسازم یعنی 2 تا تیم دو نفری بسازم و کاری کنم که توپ رو تشخیص بدن و بتونن توپ رو به سمت دروازه هدایت کنن
اگه میشه همراه با مثال کامل توضیح بدین
ممنون
محسن شامحمدی
سه شنبه 07 دی 1389, 16:58 عصر
[/qoute]بتونن توپ رو به سمت دروازه هدایت کنن[qoute] فکر کنم برای این کار نیاز به استفاده از تکنینکهای هوش مصنوعی باشه.اینطوری نیست؟ ربات های فوتبالیست...
alasht
چهارشنبه 08 دی 1389, 03:18 صبح
سلام
من این ست کردن حرکت عکس با timer رو نفهمیدم
میشه بگین چطوری میشه با timer و اون تیکه کد بالا عکس رو با ریتم خاصی حرکت داد ؟
با تشکر
محسن شامحمدی
چهارشنبه 08 دی 1389, 16:39 عصر
من این ست کردن حرکت عکس با timer رو نفهمیدم
میشه بگین چطوری میشه با timer و اون تیکه کد بالا عکس رو با ریتم خاصی حرکت داد ؟این رو ببینید:
alasht
چهارشنبه 08 دی 1389, 18:33 عصر
سلام
ممنون از پاسختون
اگه میشه یه توضیحی در مورد برنامه ای که نوشتید بدید
چون تا حالا با timer کار نکردم
namespace harkat_adamak
{
public partial class Form1 : Form
{
int d;
public Form1()
{
InitializeComponent();
}
private void timer1_Tick(object sender, EventArgs e)
{
pictureBox1.Left+=d;
pictureBox1.Top+= d;
}
private void pictureBox1_Click(object sender, EventArgs e)
{
}
private void pictureBox1_Move(object sender, EventArgs e)
{
if (pictureBox1.Top >this.Height -pictureBox1.Width )
d=-1;
}
private void Form1_Load(object sender, EventArgs e)
{
d = 1;
}
}
}
محسن شامحمدی
چهارشنبه 08 دی 1389, 19:03 عصر
ببینین تایمر شی ای هستش که یک کار رو هر چند لحظه یک بار نجام می ده.
توی این پروژه من بهش گفتم هر 1 میلی ثانیه یک بار اجرا بشه(یعنی 1000 بار در هر ثانیه!)
بعدش یک متغیر داریم به نام d که می گه این آمدک جنابعالی پایین بره یا بالا.
private void Form1_Load(object sender, EventArgs e)
{
d = 1;
}
اولش مقدار یک داره
private void timer1_Tick(object sender, EventArgs e)
{
pictureBox1.Left+=d;
pictureBox1.Top+= d;
}
به این کد دقت کنید.
می گه top ,left آدمک رو به اضافه d کن.
یعنی در صورتی که d یک باشه می شه فاصله از چپ آدمک رو به اضافه یک کن!.
حالا ممکنه اینقدر از سمت چپ دور بشه که از سمت راست صفحه خارج بشه:گریه:
خب اون هم چاره داره
private void pictureBox1_Move(object sender, EventArgs e)
{
if (pictureBox1.Top >this.Height -pictureBox1.Width )
d=-1;
}
توی اینجا چک می کنیم می گیم اگر آدمک شما از ضفحه خارج شد مقدار d رو منفی یک کن. (1-)
حالا می شه
picturebox1.left=picturebox1.left+(-1)
اگر متوجه نمی شی اینو ببین:
a=5+(-1)
توضیحم خیلی کامل بود:شیطان:.امیدوارم متوجه شده باشی!!:متفکر:
vBulletin® v4.2.5, Copyright ©2000-1403, Jelsoft Enterprises Ltd.