Forwarded from هشتگ تبلیغ تخصصی
🚀 دوره آموزشی بازاریابی داده محور (Data Driven Marketing)
🧬 استفاده از #علم_داده و #تحلیل_داده برای افزایش سودآوری
🖥 همراه با آموزش نرمافزارها به طور کامل و اجرایی
✅ مخصوص #استخدام یا #اپلای_شغلی
🧩 مناسب برای تمام رشتههای مهندسی، مدیریت و علوم پایه
🏆 با گواهینامه مورد تایید وزارت علوم، تحقیقات و فناوری
🔬 آموزش #آنلاین و با مطالعات موردی واقعی و پروژه
👤 مدرس: مهندس شهاب شیرین (مدیر پرفورمنس مارکتینگ بیمیتو و ازکی)
🔗 مشاهده جزئیات دوره و مشاوره رایگان:
👉 https://tihe.ac.ir/data-driven-marketing-course/
🧬 استفاده از #علم_داده و #تحلیل_داده برای افزایش سودآوری
🖥 همراه با آموزش نرمافزارها به طور کامل و اجرایی
✅ مخصوص #استخدام یا #اپلای_شغلی
🧩 مناسب برای تمام رشتههای مهندسی، مدیریت و علوم پایه
🏆 با گواهینامه مورد تایید وزارت علوم، تحقیقات و فناوری
🔬 آموزش #آنلاین و با مطالعات موردی واقعی و پروژه
👤 مدرس: مهندس شهاب شیرین (مدیر پرفورمنس مارکتینگ بیمیتو و ازکی)
🔗 مشاهده جزئیات دوره و مشاوره رایگان:
👉 https://tihe.ac.ir/data-driven-marketing-course/
This media is not supported in your browser
VIEW IN TELEGRAM
مرحله ششم: ساخت گورکن های دشمن
تا الان شما 4 قلعه و یک قهرمان دارید که می تواند حرکت و شلیک کند. پس چه چیزی کم است؟ بله دشمنانی که به قلعه حمله می کنند و قهرمان می تواند به سمت آن شلیک کند! در این مرحله از ساخت بازی با پایتون، گورکن ها یا دشمنان تصادفی تولید می شوند تا به قلعه ها حمله کنند. با ادامه بازی تعداد بیشتری از گورکن ها وجود خواهند داشت؛ بنابراین، بیایید لیستی از آنچه برای انجام آن نیاز دارید تهیه کنیم.
اضافه کردن گورکن ها را به لیستی از یک آرایه
بررسی و بروز کردن گورکن ها در هر فریم
نمایش گورکن ها
تا الان شما 4 قلعه و یک قهرمان دارید که می تواند حرکت و شلیک کند. پس چه چیزی کم است؟ بله دشمنانی که به قلعه حمله می کنند و قهرمان می تواند به سمت آن شلیک کند! در این مرحله از ساخت بازی با پایتون، گورکن ها یا دشمنان تصادفی تولید می شوند تا به قلعه ها حمله کنند. با ادامه بازی تعداد بیشتری از گورکن ها وجود خواهند داشت؛ بنابراین، بیایید لیستی از آنچه برای انجام آن نیاز دارید تهیه کنیم.
اضافه کردن گورکن ها را به لیستی از یک آرایه
بررسی و بروز کردن گورکن ها در هر فریم
نمایش گورکن ها
ابتدا کد زیر را به انتهای بخش شماره 2 اضافه کنید:
badtimer=100
badtimer1=0
badguys=[[640,100]]
healthvalue=194
موارد فوق یک تایمر یا زمان سنج (و همچنین چند مقدار دیگر) را تنظیم می کند تا در بازی پس از گذشت مدتی یک گورکن جدید اضافه شود. شما badtimer را در هر قاب کاهش می دهید تا صفر شود و سپس یک badger یا گورکن جدید ایجاد می کنید. حالا موارد زیر را به انتهای بخش شماره 3 اضافه کنید:
badguyimg1 = pygame.image.load("resources/images/badguy.png")
badguyimg=badguyimg1
خط اول بالا شبیه به تمام کد بارگیری تصویر قبلی است. خط دوم یک کپی از تصویر را تنظیم می کند تا بتوانید به راحتی گورکن ها را حرکت دهید. پس از آن باید گورکن ها را به روز کنید و در صفحه نمایش نشان دهید. این کد را بلافاصله پس از بخش شماره 6.2 اضافه کنید:
badtimer=100
badtimer1=0
badguys=[[640,100]]
healthvalue=194
موارد فوق یک تایمر یا زمان سنج (و همچنین چند مقدار دیگر) را تنظیم می کند تا در بازی پس از گذشت مدتی یک گورکن جدید اضافه شود. شما badtimer را در هر قاب کاهش می دهید تا صفر شود و سپس یک badger یا گورکن جدید ایجاد می کنید. حالا موارد زیر را به انتهای بخش شماره 3 اضافه کنید:
badguyimg1 = pygame.image.load("resources/images/badguy.png")
badguyimg=badguyimg1
خط اول بالا شبیه به تمام کد بارگیری تصویر قبلی است. خط دوم یک کپی از تصویر را تنظیم می کند تا بتوانید به راحتی گورکن ها را حرکت دهید. پس از آن باید گورکن ها را به روز کنید و در صفحه نمایش نشان دهید. این کد را بلافاصله پس از بخش شماره 6.2 اضافه کنید:
خط اول بررسی می کند که آیا badtimer صفر است یا خیر، اگر صفر باشد یک badger یا گورکن ایجاد می کند و badtimer را دوباره بر اساس تعداد دفعاتی که badtimer تا به حال اجرا شده، تنظیم می کند. اولین حلقه for مختصات x گورکن را بررسی می کند که آیا از صفحه خارج شده است و اگر گورکن خارج از صفحه است آن را حذف می کند. حلقه دوم بر اساس حذف احتمالی گورکن ها دوباره همه گورکن ها را روی صفحه نمایش ترسیم می کند.
برای استفاده از تابع تصادفی در کد بالا، باید کتابخانه random را نیز import کنید. بنابراین موارد زیر را به انتهای بخش شماره 1 اضافه کنید:
import random
برای استفاده از تابع تصادفی در کد بالا، باید کتابخانه random را نیز import کنید. بنابراین موارد زیر را به انتهای بخش شماره 1 اضافه کنید:
import random
در نهایت، این خط کد زیر را بلافاصله بعد از عبارت while (بخش 4) اضافه کنید تا مقدار badtimer برای هر فریم کاهش یابد:
badtimer-=1
با اجرای بازی تمام این کد را امتحان کنید. اکنون باید گیم پلی واقعی را مشاهده کنید – می توانید شلیک کنید، حرکت کنید، بپیچید و گورکن ها سعی می کنند به سمت قلعه ها حمله کنند.
badtimer-=1
با اجرای بازی تمام این کد را امتحان کنید. اکنون باید گیم پلی واقعی را مشاهده کنید – می توانید شلیک کنید، حرکت کنید، بپیچید و گورکن ها سعی می کنند به سمت قلعه ها حمله کنند.
اما صبر کنید! چرا گورکن ها به قلعه ها آسیب نمی زنند؟ بیایید سریع کد این قسمت را اضافه کنیم. این کد را درست قبل از index+= 1 در حلقه اول در بخش 6.3 اضافه کنید:
این کد نسبتاً ساده است. اگر مقدار x گورکن کمتر از 64 در سمت راست باشد، آن گورکن را حذف کرده و مقدار سلامتی یا همان جان بازی را به صورت تصادفی بین 5 تا 20 کاهش می دهد (بعداً، مقدار جان یا سلامتی را روی صفحه نمایش خواهید دید) اگر برنامه اجرا کنید، باید گورکن های مهاجم، هنگام برخورد با قلعه ناپدید شوند. اگرچه شما نمی توانید آن را ببینید، اما گورکن ها در واقع از جان شما کم می کنند.
This media is not supported in your browser
VIEW IN TELEGRAM
مرحله هفتم: برخورد تیر پیکان با گورکن
گورکن ها به قلعه شما حمله می کنند اما تیرهای شما تاثیری بر آنها ندارد! چگونه باید یک خرگوش از خانه خود دفاع کند؟
زمان آن است که پیکان ها را برای کشتن گورکن ها آماده کنید تا بتوانید از قلعه خود محافظت کرده و برنده بازی باشید! باید بررسی کرد که آیا تیر ها و گورکن ها با هم برخورد می کنند یا خیر؟ اگر برخورد انجام شود، پس گورکن و پیکان را حذف کنید و یک واحد را به نسبت دقت یا همان امتیاز خود اضافه کنید. درست بعد از بخش 6.3.1 ، این را اضافه کنید:
گورکن ها به قلعه شما حمله می کنند اما تیرهای شما تاثیری بر آنها ندارد! چگونه باید یک خرگوش از خانه خود دفاع کند؟
زمان آن است که پیکان ها را برای کشتن گورکن ها آماده کنید تا بتوانید از قلعه خود محافظت کرده و برنده بازی باشید! باید بررسی کرد که آیا تیر ها و گورکن ها با هم برخورد می کنند یا خیر؟ اگر برخورد انجام شود، پس گورکن و پیکان را حذف کنید و یک واحد را به نسبت دقت یا همان امتیاز خود اضافه کنید. درست بعد از بخش 6.3.1 ، این را اضافه کنید:
در این کد تنها یک نکته مهم وجود دارد که باید به آن توجه کنید. دستور colliderect یک تابع PyGame است که بررسی می کند آیا دو مستطیل متقاطع هستند یا خیر. دو خط دیگر فقط آنچه را که در بالا توضیح داده شد انجام می دهند. اگر برنامه را اجرا کنید، در نهایت باید بتوانید گورکن ها را با شلیک پیکان بکشید.
مرحله هشتم: اضافه کردن متریک زمان و مقدار جان
بازی بسیار خوب پیشرفت می کند شما مهاجمان خود را دارید و مدافع خود را نیز دارید. اکنون تنها چیزی که شما نیاز دارید راهی برای حفظ امتیاز و نشان دادن عملکرد خوب خرگوش قهرمان است. ساده ترین راه برای انجام این کار اضافه کردن یک HUD (Heads Up Display) است که سطح سلامت فعلی قلعه ها را نشان می دهد. همچنین می توانید یک ساعت اضافه کنید تا نشان دهد که قلعه چقدر زنده مانده است. ابتدا ساعت را اضافه کنید. کد زیر را درست قبل از شروع قسمت شماره 7 اضافه کنید:
بازی بسیار خوب پیشرفت می کند شما مهاجمان خود را دارید و مدافع خود را نیز دارید. اکنون تنها چیزی که شما نیاز دارید راهی برای حفظ امتیاز و نشان دادن عملکرد خوب خرگوش قهرمان است. ساده ترین راه برای انجام این کار اضافه کردن یک HUD (Heads Up Display) است که سطح سلامت فعلی قلعه ها را نشان می دهد. همچنین می توانید یک ساعت اضافه کنید تا نشان دهد که قلعه چقدر زنده مانده است. ابتدا ساعت را اضافه کنید. کد زیر را درست قبل از شروع قسمت شماره 7 اضافه کنید:
کد بالا به سادگی یک فونت جدید با استفاده از قلم PyGame پیش فرض تنظیم شده روی اندازه 24 ایجاد می کند. سپس از آن فونت برای نمایش متن زمان بر روی سطح استفاده می شود. پس از آن، متن روی صفحه قرار می گیرد و ترسیم می شود. بعد نوار سلامتی health bar یا میزان جان را اضافه کنید. اما قبل از رسم health bar، باید تصاویر را برای نوار بارگذاری کنید. کد زیر را به انتهای بخش شماره 3 اضافه کنید
healthbar = pygame.image.load("resources/images/healthbar.png")
health = pygame.image.load("resources/images/health.png")
اولی تصویر قرمز رنگی است که برای نوار سلامت کامل استفاده می شود. تصویر دوم سبز است که برای نشان دادن سطح سلامت فعلی استفاده می شود. حالا کد زیر را بلافاصله بعد از بخش 6.4 (که به تازگی اضافه کرده اید) اضافه کنید تا نوار سلامت روی صفحه ترسیم شود:
# 6.5 - Draw health bar
screen.blit(healthbar, (5,5))
for health1 in range(healthvalue):
screen.blit(health, (health1+8,8))
کد ابتدا نوار سلامتی تمام قرمز را ترسیم می کند. سپس مقدار مشخصی از رنگ سبز را با توجه به عمر قلعه بر روی نوار می کشد، اگر برنامه را اجرا کنید، باید یک تایمر و یک نوار سلامتی داشته باشید.
health = pygame.image.load("resources/images/health.png")
اولی تصویر قرمز رنگی است که برای نوار سلامت کامل استفاده می شود. تصویر دوم سبز است که برای نشان دادن سطح سلامت فعلی استفاده می شود. حالا کد زیر را بلافاصله بعد از بخش 6.4 (که به تازگی اضافه کرده اید) اضافه کنید تا نوار سلامت روی صفحه ترسیم شود:
# 6.5 - Draw health bar
screen.blit(healthbar, (5,5))
for health1 in range(healthvalue):
screen.blit(health, (health1+8,8))
کد ابتدا نوار سلامتی تمام قرمز را ترسیم می کند. سپس مقدار مشخصی از رنگ سبز را با توجه به عمر قلعه بر روی نوار می کشد، اگر برنامه را اجرا کنید، باید یک تایمر و یک نوار سلامتی داشته باشید.