ألوان تتغير
جزء من قسم حلقة اللعبة في رحلة Pygame على Coddy. الدرس 12 من 35.
يتكوّن اللون من ثلاثة أرقام، لذا يمكن أن يكون المتغير واحدًا منها. غيّر المتغير في كل إطار، وسيتغير اللون على الشاشة.
glow = 0
while running:
# الأحداث
glow = (glow + 3) % 256
pygame.draw.circle(screen, (255, glow, 0), (240, 180), 60)يضيف كل إطار 3 إلى الجزء الأخضر، لذا تتحول الدائرة من الأحمر مرورًا بالبرتقالي إلى الأصفر.
يجب أن تبقى كل قيمة في اللون بين 0 و255. عند 256، يتوقف pygame مع ValueError: invalid color. يعطي المعامل % باقي القسمة: 256 % 256 يساوي 0، و258 % 256 يساوي 2. لذلك تبدأ (glow + 3) % 256 من جديد بالقرب من 0 بدلًا من تجاوز 255، وتتوهج الدائرة من الأحمر إلى الأصفر مرارًا وتكرارًا.
التحدي
سهلاجعل الدائرة تتوهج من الأحمر إلى الأصفر.
- قبل الحلقة، اضبط
glow = 0. - في الحلقة، قبل الرسم، أضف 3 إلى
glowوأبقِ قيمته بين 0 و255 باستخدام% 256. - ارسم الدائرة باللون
(255, glow, 0).
اضغط على «العب»: ستتوهج الدائرة من الأحمر إلى الأصفر مرارًا وتكرارًا. ثم اضغط على «تحقق».
جرّب بنفسك
import pygame
pygame.init()
screen = pygame.display.set_mode((480, 360))
pygame.display.set_caption("Glow")
clock = pygame.time.Clock()
running = True
while running:
for event in pygame.event.get():
if event.type == pygame.QUIT:
running = False
screen.fill((30, 30, 46))
pygame.draw.circle(screen, (255, 120, 0), (240, 180), 60)
pygame.display.flip()
clock.tick(60)
pygame.quit()
يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
جميع دروس حلقة اللعبة
تدرّب بنفسك: Playground لـ Pygame