دنیای بازیسازی فارسدا

اخبار و اطلاعات ، مقالات ، دوره های آموزشی و کلی حرف واسه گفتن

دنیای بازیسازی فارسدا

اخبار و اطلاعات ، مقالات ، دوره های آموزشی و کلی حرف واسه گفتن

دنیای بازیسازی فارسدا

تو این وبلاگ می تونی همه چی درمورد بازیسازی پیدا کنی. از اخبار نو تا اطلاعات نوآوری ها و مقالات آموزشی و دوره های آموزشی. تازه اخبار بازی های در دست ساخت خودم رو هم قرار می دم. مطمئن باشید آموزش ها و مقالات صد در صد تولید داخلی (: هستش و کپی برداری از سایت های دیگه نیست. پس بدون وجدان درد از وبلاگ ما استفاده کنید.

طبقه بندی موضوعی
بایگانی

آموزش مقدماتی یونیتی-قسمت هشتم

آموزش مقدماتی یونیتی


قسمت هشتم : برنامه نویسی سی شارپ 4 - شرط if و else و دستور switch


نویسنده : محمدهادی ربانی نژاد


سلام. حالتون چطوره ؟ ما تو قسمت قبل با شروط آشنا شدیم. اگه مطالعه نکردید حتما از اینجا مطالعه کنید. قراره امروز بیشتر با شرط if آشنا بشیم.

تو قسمت قبل گفتیم که برای اینکه دستوراتمون هوشمند باشه ، نیاز به شرط داریم و گفتیم ساده ترین نوع یه شرط استفاده از دستور if هستش. اگه ما بخوایم یه شرط رو بررسی کنیم و در صورتیکه شرط ما صحیح نبود یه دستور دیگه ای اجرا بشه از دستور else استفاده می کنیم. به این مثال دقت کنید :

if ( x < 10 ) {

x ++;

} else {

Debug.Log ( "You Win!" );

}

ما تو این مثال گفتیم اگه مقدار x کمتر از 10 بود ، یه واحد به اون اضافه کن و در غیر این صورت (یعنی کمتر از 10 نبود) متن موردنظر ما رو نمایش بده.

حالا اگه ما بخوایم یه شرط رو بررسی کنیم و در صورتیکه صحیح نبود ، شرط دیگه ای رو بررسی کنیم باید از else if استفاده کنیم. به این شکل :

if ( x < 10 ) {

x ++;

} else if ( x == 10 ) {

Debug.Log ( "You Win!" );

} else {

x = 0;

}

تنها فرق این مثال با مثال قبل اینه که اگه شرط اول صحیح نبود ، یعنی x کوچکتر از 10 نبود ، شرط دوم بررسی میشه و اگه شرط دوم هم صحیح نبود به دستور آخر می رسه. اگه ما تو شرط دوم از else استفاده نمی کردیم ، همزمان هر دو شرط بررسی می شدن.

فرض کنید ما قصد داریم بررسی کنیم که مقدار متغیر ما چنده و نسبت به هر مقداری دستوری بدیم. برای اینکار اگه از if و else بخوایم استفاده کنیم ، شاید نیاز باشه بار ها این دستورات رو تکرار کنیم. در اینجا ما می تونیم از دستور switch استفاده کنیم. نمای کلی این دستور به شکل زیره :

switch (variable) {

          case amount :

                   //

                   break;

          default :

                   //

                   break;

}

اول از همه نیازه دستور switch و بعد داخل پرانتز اسم متغیری رو که میخواید بررسی بشه رو بنویسید. سپس درون آکولاد ها case ها رو بنویسید. برای اینکه یه مقدار بررسی بشه باید اون رو مقابل case بنویسید و سپس دو نقطه بزارید. بعد تو خط پایینی دستور مورد نظر رو بنویسید و در نهایت با صحیح بودن شرط با دستور break از دستور switch خارج بشید. شما می تونید چندین case داشته باشید. اگه مقدار متغیر برابر با case اول نبود ، میره سراغ case های بعدی در صورتیکه هیچ کدوم از case ها درست نبودن ، دستور مربوط به default اجرا میشه. به مثال زیر دقت کنید.

switch (level) {

          case 1 :

Debug.Log ( "Easy");                 

break;

case 2 :

Debug.Log ( "Normal");           

break;               

          default :

                   Debug.Log ( "Hard");

                   break;

}

همونطور که می بینید ما متغیر level رو بررسی کردیم و گفتیم اگه برابر با 1 بود متن مورد نظر رو چاپ کنه و همین کار رو برای مقدار 2 و default کردیم.

بهتره یه تمرین کوچولو داشته باشیم. من قصد دارم یه بازی امتیازی بسازم که اگه جون های بازیکن تموم شد ، امتیازش رو بررسی کنه و به سه سطح عالی ، خوب و متوسط تقسیم بشه. بعد اگه امتیاز در سطح عالی بود ، به ازای هر ده امتیاز 3 سکه دریافت کنه و اگه امتیاز در سطح خوب بود ، به ازای هر ده امتیاز 2 سکه دریافت کنه و اگه امتیاز در سطح متوسط بود ، به ازای هر ده امتیاز 1 سکه دریافت کنه. برای اینکار باید از متغیر ها ، عملگر ها و شروط و دستورات مختلف استفاده کنید. جواب این تمرین تو قسمت بعد داده میشه. خدانگهدار.


شما می تونید فایل PDF این آموزش رو دریافت کنید.

نظرات  (۰)

هیچ نظری هنوز ثبت نشده است
ارسال نظر آزاد است، اما اگر قبلا در بیان ثبت نام کرده اید می توانید ابتدا وارد شوید.
شما میتوانید از این تگهای html استفاده کنید:
<b> یا <strong>، <em> یا <i>، <u>، <strike> یا <s>، <sup>، <sub>، <blockquote>، <code>، <pre>، <hr>، <br>، <p>، <a href="" title="">، <span style="">، <div align="">
تجدید کد امنیتی