انجمن تخصصی بازی سازی پرومیکرز

نسخه‌ی کامل: سوال:برخورد پلیر با دشمن
شما در حال مشاهده‌ی نسخه‌ی متنی این صفحه می‌باشید. مشاهده‌ی نسخه‌ی کامل با قالب بندی مناسب.
صفحه‌ها: 1 2 3 4 5
شاید دلیلش اینه که از onTriggerEnter داری استفاده می کنی. انجین فیزیک یونیتی در سرعت های بالا شیاد با onTrigger مشکل داشته باشه. به جای این کار از RayCasting (پرتاب اشعه) استفاده کن و مجدد تست کنwink
منبع حرفم:
http://answers.unity3d.com/questions/561...ork-1.html
از پرتاب شعله میخوام واسه اینکه دنبال پلیر کنه با سرعت استفاده کنم
این تریگر ها مشکلی ندارن
مشکل اینه که توی کد نویسی مثلا نوشتم درصورت برخورد بهشون فلان دستور اجرا بشه اما حالا اومده یکیشونو به رسمیت میشناسه و هر کاری بکنیم سر همون یکی میاد حتی اگر دشمنا صد تا باشن!
یادکه یکی مشکلی داشت که اگر تیر به دشمن خورد جون همه یهویی صفر میشه نه دشمن مورد نظر مشکل منهم تو همون مایه هاسsad
کد تریگر رو به دشمن نسبت بده نه playerwink
این کدا رو به دشمن نسبت دادمteeth

در کل پلیر فقط یه آبجکت حمله جلوش گذاشتم بدون هیچ کدی و همه کد ها رو دادم به دشمن
منظورم این بود که کد RayCast رو بده به دشمن ها که اگه با player برخورد کرد از بین بره.
ترفند دیگه هم اینه که فاصله بین دو گیم ابجکت رو با Vector2.Distance استفاده کنی اگه کنار هم بود یا فاصله دلخواه کد destroy رو اجرا کن تا دشمن از بین بره.
یه سوال

من امتحان کردم تمام مشکلم تو این یه خط کده
کد:
private Enemy enemy;
خب همونطور که میدونید من دوتا گیم آبجکت با کلایدر 2D زیر مجموعه دشمنم کردم که برخورد هارو از جلو و عقب بتونم کد نویسی کنم و بعد از برخورد کد مورد نظر رو برای دشمن به اجرا در بیارم

خب اون آبجکت ها باید روی دشمن تاثیر داشته باشن دیگه واسه همین با این کد به کد دشمن دسترسی دادم

الان باز از اول امتحان کردم این کد باعث میشه تو بازی فقط کدهای آبجکت ها روی یکی از دشمنا اجرا شه حتی اگه صد تا باشن

کد جایگزین یا راه بهتری نیست؟
دارم سعی میکنم با استفاده از Ray2D یه راه دیگه پیدا کنم و از کلایدر استفاده نکنم ولی این فعلا بهترین راهه تا زمانی که اونو یاد میگیرم

اگه کسی تا حالا انجام داده اینو ممنون میشم کمکم کنه یا اگه بلده
پروژه رو می تونی آپلود کنی بدی ببینم؟what
خصوصی فرستادم
teeth


مشکلت فقط یه چیزه. اسکریپت EneyAttack رو داده بودی به فرزندان گیم ابجکت. اسکریپت رو remove coponent کن و بده به Enemy .

یک چیز دیگه هم خیلی مهمه، کل collider های Player رو remove کن و فقط یک Pollygon Collider 2D بده به گیم ابجکت.

بعدش دوباره اون Enemy رو تبدیل به prefab کن و برو حالشو ببر. هر چند تا پریفب enemy هم می خوای بذار توی صحنه. موفق باشی.


خیلی ممنونم از راهنماییت.انجامش دادم...ازش یه فیلم گرفتم واست ببین باز همونه...ممنون میشم اون پروژه ای که واست فرستادمو اگه درستش کردی و ایرادی نداره واسم آپلودش کنی چون واسه منکه این راه حل کار نکرد

لینک فیلم
صفحه‌ها: 1 2 3 4 5