ویرگول
ورودثبت نام
m_30670733
m_30670733
m_30670733
m_30670733
خواندن ۲ دقیقه·۴ ماه پیش

"اولین گام به‌سوی بازی‌سازی: رسم مستطیل رنگی و متحرک با پایتون"

🎮 بازی‌سازی با پایتون – قسمت دوم: طراحی مستطیل متحرک با انتخاب رنگ

محمد امین فتحی نژاد

در قسمت قبل، با پایتون و کتابخانه‌ی Pygame آشنا شدیم و یک پنجره‌ی ساده‌ی بازی ساختیم. حالا وقتشه اولین عنصر گرافیکی واقعی رو به بازی‌مون اضافه کنیم:
یک مستطیل که در صفحه حرکت کنه و حتی رنگش رو خودمون انتخاب کنیم!

🧱 هدف این قسمت:

✅ رسم مستطیل
✅ حرکت دادن مستطیل در محور عمودی
✅ گرفتن رنگ دلخواه از کاربر
✅ ترکیب Tkinter (برای انتخاب رنگ) با Pygame


📦 ابزارهایی که استفاده می‌کنیم:

  • pygame → برای ساخت پنجره و گرافیک

  • tkinter → برای انتخاب رنگ توسط کاربر

import pygame import tkinter as tk from tkinter import colorchooser import sys # تابع برای گرفتن رنگ از کاربر def pick_color(): root = tk.Tk() root.withdraw() # مخفی کردن پنجره اصلی color = colorchooser.askcolor()[0] # گرفتن رنگ if color is None: return (255, 255, 255) # اگر کاربر رنگ انتخاب نکرد، سفید return tuple(map(int, color)) # راه‌اندازی pygame pygame.init() WIDTH, HEIGHT = 700, 700 window = pygame.display.set_mode((WIDTH, HEIGHT)) pygame.display.set_caption("مستطیل متحرک") # انتخاب رنگ‌ها bg_color = pick_color() rect_color = pick_color() # مشخصات مستطیل rect_x = WIDTH // 4 rect_y = 10 rect_width = WIDTH // 4 rect_height = WIDTH // 4 speed = 2 y_min = 10 y_max = 400 # حلقه اصلی بازی running = True while running: window.fill(bg_color) pygame.draw.rect(window, rect_color, (rect_x, rect_y, rect_width, rect_height)) rect_y += speed if rect_y >= y_max or rect_y <= y_min: speed *= -1 for event in pygame.event.get(): if event.type == pygame.QUIT: running = False pygame.display.update() pygame.time.delay(10) pygame.quit() sys.exit(

🧠 توضیح مرحله به مرحله:

تابع pick_color()

از tkinter استفاده می‌کنیم تا کاربر رنگ دلخواهش رو انتخاب کنه.

تنظیمات پنجره

پنجره‌ی 700x700 پیکسلی ایجاد می‌کنیم و عنوانش رو می‌ذاریم "مستطیل متحرک".

مکان و سرعت مستطیل

مستطیل به صورت عمودی بین بالا و پایین حرکت می‌کنه. اگر به یکی از دو انتها رسید، جهتش عوض می‌شه.

حلقه اصلی بازی

تا وقتی کاربر پنجره رو نبسته، صفحه مدام به‌روزرسانی می‌شه، رنگ پس‌زمینه و مستطیل دوباره رسم می‌شن، و مستطیل حرکت می‌کنه.

✨ نتیجه نهایی:

وقتی کد رو اجرا می‌کنی، اول دو پنجره ظاهر می‌شن تا:

  • رنگ پس‌زمینه رو انتخاب کنی

  • رنگ مستطیل رو انتخاب کنی

بعدش پنجره بازی باز می‌شه و مستطیل بالا و پایین حرکت می‌کنه.

📝 در قسمت سوم یاد می‌گیریم:

✅ کنترل مستطیل با کیبورد
✅ اضافه کردن چند شکل
✅ ساخت برخورد بین اشیا (Collision Detection)

💬 نظرت چیه؟

اگه سوالی داشتی یا کد برات اجرا نشد، حتماً توی کامنت بنویس.
یادگیری بازی‌سازی با پایتون می‌تونه هم سرگرم‌کننده باشه، هم شروعی برای مسیر حرفه‌ای‌ت.

📌 منتظر قسمت سوم باش: کنترل بازی با کیبورد!

پایتونpygame
۰
۰
m_30670733
m_30670733
شاید از این پست‌ها خوشتان بیاید