درود مهمان گرامی! ثبت نام


آموزش ساخت بازی در #C آموزش UDK آموزش مدل سازی در Maya
آموزش ساخت بازی در VB آموزش Unity - پروژه محور آموزش مدل سازی با 3Ds Max
آموزش برنامه نویسی اندروید آموزش Unity - ساخت منو آموزش متحرک سازی در 3Ds Max
آموزش ساخت بازی حدس تصویر آموزش Unity - متحرک سازی مجموعه آموزش های ساخت بازی
● آموزش های رایگان ● تبلیغات دیجیتال هوشمند ● استخدام در فرادرس

امتیاز موضوع:
  • 0 رأی - میانگین امتیازات: 0
  • 1
  • 2
  • 3
  • 4
  • 5
استفاده از id در گیم میکر
#1
Question 
سلام دوستان
کسی طرز استفاده از id رو میدونه

فرض کنید اندام کاراکتر من از هم جدا هستن، میزان سلامتی کاراکتر به صورت یه متغیر در یکی از اعضای بدن کاراکتر تعریف شده، حالا وقتی تیر به یکی از این اعضای بدن (دست، پا و سر)  میخوره باید از اون متغیر کم بشه، و میزان کم شدن سلامتی هم به اون عضو بستگی داره (مسلما وقتی تیر به دست کاراکتر میخوره باید کمتر از سر کاراکتر از میزان سلامتی اون کم بشه). دو تا مشکل وجود داره :

1. چطور وقتی تیر به یکی از اعضای بدن کاراکتر برخورد کرد از اون متغیر به نسبت مشخص کم بشه (به علت مشکل دوم نمیشه از global استفاده کرد).
2. مشکل دوم اینه که از همین دشمن ممکنه چنتا همزمان توی روم باشه، پس نمیشه از یه متغیر جهانی استفاده کرد.

فکر میکنم باید از بحث id استفاده کرد که بلد نیستم، از هلپ خود گیم میکر هم چیزی نفهمیدم. باز هم اگر کسی ایده ای داره لطفا بگه
پاسخ
#2
(13/4/1397، 01:04 صبح)mehdiyg نوشته است: سلام دوستان
کسی طرز استفاده از id رو میدونه

فرض کنید اندام کاراکتر من از هم جدا هستن، میزان سلامتی کاراکتر به صورت یه متغیر در یکی از اعضای بدن کاراکتر تعریف شده، حالا وقتی تیر به یکی از این اعضای بدن (دست، پا و سر)  میخوره باید از اون متغیر کم بشه، و میزان کم شدن سلامتی هم به اون عضو بستگی داره (مسلما وقتی تیر به دست کاراکتر میخوره باید کمتر از سر کاراکتر از میزان سلامتی اون کم بشه). دو تا مشکل وجود داره :

1. چطور وقتی تیر به یکی از اعضای بدن کاراکتر برخورد کرد از اون متغیر به نسبت مشخص کم بشه (به علت مشکل دوم نمیشه از global استفاده کرد).
2. مشکل دوم اینه که از همین دشمن ممکنه چنتا همزمان توی روم باشه، پس نمیشه از یه متغیر جهانی استفاده کرد.

فکر میکنم باید از بحث id استفاده کرد که بلد نیستم، از هلپ خود گیم میکر هم چیزی نفهمیدم. باز هم اگر کسی ایده ای داره لطفا بگه

از with استفاده کن و کد مورد نظرت رو توی عضوی که سلامتی رو کنترل میکنه بنویس...
پاسخ
 سپاس شده توسط mehdiyg ، qwerty13 ، MiladKaydi
#3
id شماره ی منحصر بفردیه که انجین به هر آبجکت، اسپرایت، تایل، بک گراند، صدا و هر چیزی که توی بازی وجود داره میده.
تو گیم میکر ما یک object داریم و یک instance. اینستنس در واقع میتونه تعداد زیاد تکثیر شده از یک آبجکت باشه.
که در این صورت باز هم id تمام اینستنس ها با هم متفاوته. که استفاده زیادی میشه از این خاصیت اینستنس ها کرد.
 
بهترین راهی که برای انجام اینکار به ذهنم میرسه ذخیره ی آیدی آبجکت بدن توی آبجکت عضوه.
برای اینکار باید آبجکت عضو رو توسط آبجکت بدن ایجاد یا create کنید.
 
توضیح:
 
(obj_Hand)
[Create_event]
resim
 
از این متغیر برای ذخیره آیدی بدن یا همون بخش اصلی استفاده میکنیم.
 
(obj_Body)
[Create_event]
resim
 
تو کد بالا میایم آبجکت دست یا هر بخش دیگه ای رو تو ایونت کریت آبجکت بدنمون ایجاد میکنیم و آیدی آبجکت ایجاد شده رو تو متغیر MyHand ذخیره میکنیم.
 
resim
 
بعد که آبجکت دست تولید شد باید مقدار متغیر MyBody که تو آبجکت دست تعریف کردیم رو برابر آیدی آبجکت بدنمون قرار بدیم. (کد بالا)
که خب اینکارو از توی آبجکت بدن انجام میدیم چون الان دیگه آیدی آبجکت دست رو داریم.
 
از اینجا به بعد هر وقت خواستیم، اگر به دست تیر خورد مقدار متفاوتی از جونمون کم بشه که مثلا این مقدار با برخورد تیر با سر فرق داره، میتونیم راحت انجامش بدیم.
 
فقط! برای جلوگیری از اررور باید حتما قبل از کم کردن جون از آبجکت بدن مراحل زیر رو طی کنیم:
- چک کنیم که متغیر MyBody برابر 0 نباشه. چون اول کار برابر صفر قرارش میدیم.
- چک کنیم که متغیر MyBody حتما هنوز وجود داشته باشه.
 
بنابراین، هر بار تیر به دست بخوره باید همچین کدی رو اجرا کنیم:
 
(obj_Hand)
 
 
resim
resim
resim
resim
resim
 
با این روش میتونی هر چقدر که دلت خواست از اون آبجکت داشته باشی.
حتی میتونی به آبجکت بدن متصلشون هم بکنی با همون روشی که گفتم.
 
پاسخ
 سپاس شده توسط qwerty13


موضوعات مرتبط با این موضوع...
موضوع نویسنده پاسخ بازدید آخرین ارسال
  استفاده از متغیری خارج بازی full-city 5 218 25/4/1397، 03:07 عصر
آخرین ارسال: A.m
Question استفاده از چند دشمن با ساختاری یکسان mehdiyg 5 318 19/11/1396، 09:47 صبح
آخرین ارسال: ahmadreza59
  تبدیل کد گیم میکر 8 به گیم میکر استدیو gamevar 3 407 4/5/1396، 01:07 عصر
آخرین ارسال: mamali me
  استفاده از قدرمطلق ladyship 3 415 21/2/1396، 01:04 صبح
آخرین ارسال: Milad_Hyper
  استفاده از متغیر و حروف کنار هم در draw text mha 5 1,066 19/11/1394، 01:44 صبح
آخرین ارسال: mha



کاربرانِ درحال بازدید از این موضوع: 1 مهمان