مهمان عزیز خوش‌آمدید. ورود عضــویت


دو ,سوال درمورد یونیتی c#
#1
سلام دو سوال دارم:
1- چطوری میشه در متد Update که همیشه در حال اجراست یک کد رو فقط بای یکبار اجرا کرد
مثال:
میخوام همیشه این شرط رو چک کنه و در صورت درست بودن شرط دستور پرینت رو فقط یکبار اجرا کنه
کد:
void Update () {
if (var == 1) {
    print ("show");
}
}

2- برای ریست تمام خواص یک آبجکت از چه دستوری باید اسفاده کرد
 
پاسخ دهید
 سپاس شده توسط:
#2
سوال دوم تون رو نمیدونم، ولی برای سوال اول تون میتونید داخل دستورات شرط if آخرش یه var++ بنویسید
...I'm the one who knocks

***

وبسایت بازیاتو، وبسایت تخصصی معرفی و بررسی بازی های موبایلی
Baziato.com

***

وبلاگ آموزشی طراح بازی
وبلاگی آموزشی برای توسعه دهندگان و طراحان بازی های ویدئویی



 
پاسخ دهید
 سپاس شده توسط: shazde
#3
(1396/3/3، 01:48 عصر)mahdi_R8095 نوشته: سوال دوم تون رو نمیدونم، ولی برای سوال اول تون میتونید داخل دستورات شرط if آخرش یه var++ بنویسید

نه نمیخوام متغییر رو تغییر بدم که شرط رو اجرا نکنه 
میخوام هر بار که شرط از غلط به درست تغییر میکنه فقط یکبار دستور پرینت رو اجرا کنه
 
پاسخ دهید
 سپاس شده توسط:
#4
سلام
دوست عزیز برای صحیح غلط از بولین استفاده کنی بهتره ی نمونه کد بهت میدم بدردت میخوره
کد:
void Update () {
if(input.getkeydown(keycode.S){
shart();
}
}
void shart () {
if(yourbool == true )
print("shart shoma dorost ast");
if(yourbool == false)
print("shart shoma false mibashad");
}
خب در اینجا ما با فشار دادن دکمه s یک تابع را فراوخانی میکنیم که میایم و متغییر دلخواه رو درون اون بررسی میکنیم
که اگه درست بود یچی بشه و اگه غلطط بود یچی
در ضمن شما میتونید قبل فراخواستن تابع متغیرتون رو مقدار دهی کنید و همچنین بجای دکمهs شرط دیگه ای بزارید
تا تابع فراخوانی شه .
برای ریست کردن هم باید تک تک مقدار متغیر هاتون رو با getcomponent دریافت کنید داخل کد مورد نظر و
اوناو برابر 0 قرار بدید یا اینکه سین رو ریستارت کنید.
موفق باشید
[عکس: Merlin_In_Galaxy.png]
 
پاسخ دهید
 سپاس شده توسط:
#5
(1396/3/4، 04:01 صبح)danials008 نوشته:
سلام
دوست عزیز برای صحیح غلط از بولین استفاده کنی بهتره ی نمونه کد بهت میدم بدردت میخوره
کد:
void Update () {
if(input.getkeydown(keycode.S){
shart();
}
}
void shart () {
if(yourbool == true )
print("shart shoma dorost ast");
if(yourbool == false)
print("shart shoma false mibashad");
}
خب در اینجا ما با فشار دادن دکمه s یک تابع را فراوخانی میکنیم که میایم و متغییر دلخواه رو درون اون بررسی میکنیم
که اگه درست بود یچی بشه و اگه غلطط بود یچی
در ضمن شما میتونید قبل فراخواستن تابع متغیرتون رو مقدار دهی کنید و همچنین بجای دکمهs شرط دیگه ای بزارید
تا تابع فراخوانی شه .
برای ریست کردن هم باید تک تک مقدار متغیر هاتون رو با getcomponent دریافت کنید داخل کد مورد نظر و
اوناو برابر 0 قرار بدید یا اینکه سین رو ریستارت کنید.
موفق باشید
ممنون ولی نمیخوام از این راهها استفاده کنم
من میخوام در متد آپدیت یه شرط داشته باشم که هرموقع صحیح بود فقط یکبار دستورات داخل شرط رو اجرا کنه 
چیزی شبیه Trigger once تو کنستراکت
خیلی واضح توضیح دادم چی میخوام
 
پاسخ دهید
 سپاس شده توسط:
#6
(1396/3/4، 12:52 عصر)hamed2002 نوشته:
کد:
void Update () {
if (var == 1) {
   print ("show");
   break ;
}
}
اخر كد ميتونى يدونه ; break بندازى فكر كنم مشكلت حل ميشه

فکر break مال شکستن حلقه بودا
...I'm the one who knocks

***

وبسایت بازیاتو، وبسایت تخصصی معرفی و بررسی بازی های موبایلی
Baziato.com

***

وبلاگ آموزشی طراح بازی
وبلاگی آموزشی برای توسعه دهندگان و طراحان بازی های ویدئویی



 
پاسخ دهید
 سپاس شده توسط:
#7
break برای حلقه استفاده میشه
 
پاسخ دهید
 سپاس شده توسط:
  


موضوعات مشابه ...
موضوع نویسنده پاسخ بازدید آخرین ارسال
  مشکل دسترسی به view port to ... hiddendanger 2 169 1397/1/24، 05:12 عصر
آخرین ارسال: danials008
  دیتا بازی behnam2018 2 114 1397/1/22، 04:45 صبح
آخرین ارسال: behnam2018
  گلیم گیمز 1 و 2؟ alirezagamemaker 4 521 1396/11/24، 05:12 عصر
آخرین ارسال: amin COD
  مشکل در استفاده از کاراکتر 3 بعدی در محیط 2بعدی mreza 1 190 1396/6/14، 02:54 عصر
آخرین ارسال: shazde
  مشکل در عملکرد مکانیزم بازی Devin Trigger 1 157 1396/5/30، 04:36 عصر
آخرین ارسال: shazde

پرش به انجمن: