حل شده حرکت دشمن به سمت پلیر
#1
Photo 
سلام
دوستان من تازه با این انجین کار کردم دارم بازی پلتفرم میسازم یه مشکلی دارم اونم اینکه میخوام اسپرایت هایدشمن به طرف پلیر برن کسی اموزش داره یا میتونه راهنمایی کنه
  پاسخ


 سپاس شده توسط: amirhmz
#2
دوشت عزیز آون هوش مصنوعی میخواد
زکات علم ، آموزش دادن ان است از امام صادق (ع)
 
 
  پاسخ


 سپاس شده توسط: amirhmz
#3
سلام
شما ابتدا این آموزش را دانلود کنید سپس صفحه 29 آن را که حرکت دشمن است را مطالعه کنید.
  پاسخ


 سپاس شده توسط: amirhmz
#4
فکر کنم نتونستم منظورم رو برسونم من می خوام تو بازی پلتفرمی دشمن ها به طرف پلیر حرکت کنم همین
در ضمن به خاطر راهنمایی تون ممنونم
  پاسخ


 سپاس شده توسط:
#5
on start layot >> monster >>set angel
و حالا مشخصات 
player x 
player y
  پاسخ


 سپاس شده توسط: arsalan1366
#6
(1394/9/22، 04:36 عصر)arminfk نوشته است: on start layot >> monster >>set angel
و حالا مشخصات 
player x 
player y

دوست عزیز این هیچ ربطی به حرکت دشمن به سمت پلیر نداره بلکه مختصات یا زاویه یک شئ را مشخص می کنه (و برای بازی هایی که در چهار جهت حرکت دارد استفاده می شود نه بازی پلتفرمی) شما برای اینکه دشمن حرکت کنه ابتدا بهش رفتار پلتفرم (platform) میدین سپس کنترول اون را در قسمت پنجره ویژگی ها به NO تغییر میدین تا کنترول اون دست شما نباشه:
کد:
Defult controls = no

سپس می تونید از رویداد های (actions) داخل اسپریت دشمن که بهش رفتار پلتفرم دادین , از گزینه های set vector X و set vector Y  استفاده کنید که برای جرکت دشمن باید در محور X باشد و به سمت پلیر:

کد:
Every tick >>> Enamy.set vector X = player.x

الان در اونت بالا پلیر شما هر سمت (محور X) حرکت کند اسپریت دشمن هم به آن سمت حرکت می کند ولی قصد ما این است که دشمن به سمت ما حرکت کند پس یک - به مختصات پلیر اضافه می کنیم:
کد:
Every tick >>> Enamy.set vector X = -player.x

الان اگر پلیر شما سمت چپ باشد و دشمن سمت راست و بازی را تست کنید میبنید که دشمن به سمت پلیر حرکت می کند ولی وقتی از پلیر رد می شود باید دوباره دنبال پلیر ما بیوفتد ولی چون گفتیم - پس به راه خود ادامه میدهد برای اینکه آن را نیز درست کنیم می توانیم از روش های مختلفی استفاده کنیم.
اینم یک روش ساده:
ابتدا به دشمن خود رفتار پلتفرم داده و کنترول آن را روی No بگذارید سپس یک متغیر از نوع نوشته (text) به اسپریت دشمن اضافه کرده و مقدار آن را  "Right" بگذارید:

[تصویر:  Untitled_2.jpg]
حالا مثل زیر عمل کنید:

[تصویر:  pic.jpg]

اگر مختصات محور X پلیر (Compare X) بزرگتر از مقدار محور X دشمن بود مقدار متغیر دشمن به "left" و اگر کوچکتر بود به "Right"
تغییر کنه.
حالا تو اونت سوم گفتیم اگر مقدار متغیر برابر "left" بود دشمن برعکس ما حرکت کنه در غیر اینصورت (Else) به سمت پلیر ما.

اینم سورس
  پاسخ


 سپاس شده توسط: vng ، amirho24 ، Game Baker ، amirhmz
#7
خب وقتی از لایه بیرون میره به سمت پلیر ما میاد که به قول معروف بیاد بخوردش
  پاسخ


 سپاس شده توسط:
#8
ببخشیدا خیلی خوبه که جواب کاربران را میدین ولی لطفا تو چیزی که علم ندارید نظر ندهید (هیچ قصدی نداشتم جز کمک):
اینم سورس برای نبودن دشمن در لایوت
  پاسخ


 سپاس شده توسط:
#9
(1394/9/22، 07:51 عصر)wowxpria نوشته است: ببخشیدا خیلی خوبه که جواب کاربران را میدین ولی لطفا تو چیزی که علم ندارید نظر ندهید (هیچ قصدی نداشتم جز کمک):
اینم سورس برای نبودن دشمن در لایوت

من فقط ویدیو رو پلی کردم هر چی گفته بود نوشتم :l 
  پاسخ


 سپاس شده توسط:
#10
دوست عزیز بله شما لطفا کردین اما اون آموزش راهنمایی تازه کاران که اقا مجتبی عزیز ساخته بودند برای بازی هایی که دوربین از بالا است استفاده می شود و در اون مواقع بله می توان از set anglo استفاده کرد ولی برای دوربین هایی که از کنار یا بقل هستند این روش صحیح نیست.
و پیشنهاد می کنم اگر سوالی را خواندین حتی اگر بلد بودین نیز سعی کنید خودتان سورس آن را بسازید و اگر به نتیجه رسیدین آن را بصورت آموزش کلی به سوال کننده جواب بدین اینجور هم برای شما بهتر و هم برای سوال کننده بهتر است.
  پاسخ


 سپاس شده توسط: kingprado


موضوع‌های مشابه…
موضوع نویسنده پاسخ بازدید آخرین ارسال
Information پرداخت درون برنامه مایکت کوردوا ya mahdi 0 230 1404/1/17، 05:43 عصر
آخرین ارسال: ya mahdi
  نحوه خروجی اندروید کوردوا ya mahdi 0 182 1404/1/11، 04:06 عصر
آخرین ارسال: ya mahdi
Wink حل شده مقادير لازم در environment variable ᔕinaᗪehghani 24 11,601 1403/10/23، 12:10 صبح
آخرین ارسال: Tggi
  تپسل .....فروشگاه Hamidreza 3 1,932 1403/10/22، 11:57 عصر
آخرین ارسال: Tggi
  خروجی اندروید با Intel xdk ya mahdi 0 130 1403/8/25، 02:08 عصر
آخرین ارسال: ya mahdi

پرش به انجمن: