关于卷轴效果的再次理解

这篇博客介绍了一个Pygame类`Background`,用于实现游戏背景的滚动效果。该类通过更新图片的位置,判断是否超出屏幕并进行重置,确保背景始终可见。关键代码包括检查`self.rect.y`是否超出屏幕高度,并在超出时将背景移动到屏幕上方。
摘要由CSDN通过智能技术生成

 

 

 实现的代码是以下边界作为重置图片2的标准,但判断标准只能在规定窗口像素内,不能超出窗口,如if screen.rect.height >= screen.rect.height + self.rect.height: self.rect.y += 1是不行的

正确的卷轴类:

class Background(pygame.sprite.Sprite):
    def __init__(self, image_name, speed=1):
        super().__init__()
        self.image = pygame.image.load(image_name)
        self.rect = self.image.get_rect()
        self.speed = speed

    def update(self):
        self.rect.y += self.speed

        # 判断是否超出屏幕,超出屏幕则返回图像上方
        screen_rect = pygame.Rect(0, 0, 480, 700)
        if self.rect.y >= screen_rect.height:
            self.rect.y = -self.rect.height

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值