eta مدیر سایت
تاريخ عضويت: 2 شنبه 27 تير 1384 تعداد ارسالها: 2153 محل سكونت: شاهين شهر
جمعه 27 آبان 1384 - 19:06 |
|
|
اگر درست فهميده باشم شما با هوش دشمنتون مشكل داريد.
ضمن تصديق حرف دوست قبلي (چون واقعا مهمه كه 1.هوش دشمن چيه. 2. كدي كه اين هوش رو پياده ميكنه چيه) :
دشمن شما حتما يك محدوده ديد داره و اگر اولين نيروي خودي كه توليد شده در محدوده ديد دشمن باشه مطمئنا ابتدا اون رو هدف ميگيره چرا كه شما احتمالا در كد هوشتون نوشتيد كه هر دشمن هر دفعه محدوده ديدش رو براي دشمنان خودش كه همان نيروهاي خودي شما ميشه بگرده و موتور بازي اين كار رو به ترتيب id انجام ميده و از آنجا كه اشيائي كه اول ايجاد شده اند معمولا id كمتري دارند. ابتدا اونها چك ميشن پس ابتدا به اونها حمله ميشه.
و اما پيشنهاد ميكنم كه تو كد هوشتون براي هر دشمن اين جوري عمل كنيد .
1. تمام نيروهاي خودي رو كه در ديد دشمن قرار دارند شناسايي كنيد و در يه آرايه قرار بدين.
2. با استفاده از دستور() distance_to_object كمترين فاصله رو پيدا كنيد و هدف حمله قرار بدين.
البته اين دو مرحله رو ميشه با استفاده از يه الگوريتم پيدا كردن مينيمم(الگريتم كه نميشه گفت يه if و يه متغير ) يكي كرد كه در اون صورت با آرايه تون جاي زيادي هم اشغال نخواهيد كرد.
موفق باشيد. |
_________________ تالار اصول ->صفحه ها، مقالات و تاپیکهای مفید
|
|