题目:寻找一幅雨滴图像,并创建一系列整齐的雨滴。让这些雨滴往下落,直到到达屏幕底端后消失。
自学Python遇到一个想不通的问题。
为什么如下图将self.y = float(self.rect.y)之后,最终生成的画面是只有一行雨滴,而不是几行雨滴。
如果直接用 self.rect.y += 雨滴的速度 就不会出现这样的问题。
有站友有同样的问题吗?谢谢大家!
raindrop模块
import pygame
from pygame.sprite import Sprite
class Raindrop(Sprite):
def __init__(self, rf_settings, screen):
super(Raindrop, self).__init__()
self.screen = screen
self.rf_settings = rf_settings
self.image = pygame.image.load('images/raindrop.bmp')
self.rect = self.image.get_rect()
self.rect.x = self.rect.width
self.rect.y = self.rect.height
self.x = float(self.rect.x)
self.y = float(self.rect.y)
def update(self):
self