鱼C论坛

 找回密码
 立即注册
查看: 1511|回复: 1

请问为什么这个代码在检测碰撞的时候会报错啊,有没有人能帮忙解答一下啊

[复制链接]
发表于 2022-1-1 19:27:27 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
import pygame
import sys
import random
class jingling(pygame.sprite.Sprite):
    def __init__(self,img,weizhi,speed,size):
        pygame.sprite.Sprite.__init__(self)
        self.witdh,self.hight=size[0],size[1]
        self.image=pygame.image.load(img).convert_alpha()
        self.speed=speed
        self.zb=self.image.get_rect()
        self.zb.left,self.zb.top=weizhi
    def mve(self):
        self.zb=self.zb.move((self.speed[0],self.speed[1]))
        if self.zb.right<=0:
            self.zb.left=self.witdh
        elif  self.zb.left>=self.witdh:
            self.zb.right=0
        elif self.zb.bottom<=0:
            self.zb.top=self.hight
        elif self.zb.top>=self.hight:
            self.zb.bottom=0
def zhanxain():
    pygame.init()
    bg_imag="ywy.png"
    img="玩个球.png"
    size=witdh,high=800,600
    s=pygame.display.set_mode(size)
    pygame.display.set_caption('玩个球')
    bg=pygame.image.load(bg_imag).convert_alpha()
    xh=True
    lb1=[]
    group=pygame.sprite.Group()
    for i in range(5):
        weizhi=random.randint(0,witdh-100),random.randint(0,high-100)
        speed=[random.randint(-10,10),random.randint(-10,10)]
        ball=jingling(img,weizhi,speed,size)
        lb1.append(ball)
        while pygame.sprite.spritecollide(ball,group,False):
            ball.zb.left,ball.zb.top =random.randint(0,witdh-100),random.randint(0,high-100)
        group.add(ball)
    c=pygame.time.Clock()
    while xh:
        for event in pygame.event.get():
            if event.type==pygame.QUIT:
                sys.exit()
        s.blit(bg, (0, 0))
        for e in lb1:
            e.mve()
            s.blit(e.image,e.zb)
        for i in group:
            group.remove(i)
            if pygame.sprite.spritecollide(i,group,False):
                i.speed[0]= -i.speed[0]
                i.speed[1]= -i.speed[1]
            group.add(i)
        pygame.display.flip()
        c.tick(30)
if __name__=="__main__":
    zhanxain()






XHZ7V6{LPAS@XLCNG%PE`(H.png
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2022-1-1 22:43:54 | 显示全部楼层
仔细读读报错信息! 什么不懂英文? 哦,那要不就别学编程了~
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-10-5 19:13

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表