鱼C论坛

 找回密码
 立即注册
查看: 1941|回复: 4

[已解决]AttributeError: 'Group' object has no attribute 'rect'

[复制链接]
发表于 2021-6-7 21:23:01 | 显示全部楼层 |阅读模式

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

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

x
下面是我的代码,错误发生在最后一行,为什么会提示AttributeError: 'Group' object has no attribute 'rect'啊。



    enemies = pygame.sprite.Group()        # 把大中小敌机都放到一个组里面,方便使用
    boss_enemies = pygame.sprite.Group()

    small_enemies = pygame.sprite.Group()           # 实例化组对象,生成敌方小型飞机
    add_small_enemies(small_enemies, enemies, 15)   # 把添加飞机的过程抽象成函数,方便调用。  将它添加到small_enemies, enemies这两个组里面,添加15个   

    mid_enemies = pygame.sprite.Group()             # 生成敌方中型飞机
    add_mid_enemies(mid_enemies, enemies, 4)

    big_enemies = pygame.sprite.Group()             # 生成敌方大型飞机
    add_big_enemies(big_enemies, enemies, 2)

    boss1_enemies = pygame.sprite.Group()
    add_boss_enemies(boss1_enemies, boss_enemies,1)   # 生成Boss1号



   # 生成我方普通子弹
    bullet1 = []                                    # 生成普通子弹,放到一个列表里
    bullet1_index = 0
    BULLET1_NUM = 4                                 # 定义4颗子弹(正好4颗子弹配合速度覆盖了屏幕百分之80区域)
    for i in range(BULLET1_NUM):
        bullet1.append(bullet.Bullet1(me.rect.midtop))   # rect.midtop:rect类默认的,顶部中央位置

    # 生成我方超级子弹
    bullet2 = []
    bullet2_index = 0
    BULLET2_NUM = 8
    for i in range(BULLET2_NUM // 2):
        bullet2.append(bullet.Bullet2((me.rect.centerx-33, me.rect.centery)))     # 位于我方飞机两侧
        bullet2.append(bullet.Bullet2((me.rect.centerx+30, me.rect.centery)))

    # 生成boss1子弹
    bullet3 = []
    bullet3_index = 0
    BULLET3_NUM = 4
    for i in range(BULLET3_NUM):
        bullet3.append(boss_bullet.Boss1_bullet(boss1_enemies.rect.midbottom))





最佳答案
2021-6-7 21:36:57
boss1_enemies不是你定义的Group吗,上面的me又是什么?也是Group吗?应该不是吧?既然boss1_enemies和me是不同的对象,为什么你会写相同的.rect?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2021-6-7 21:36:57 From FishC Mobile | 显示全部楼层    本楼为最佳答案   
boss1_enemies不是你定义的Group吗,上面的me又是什么?也是Group吗?应该不是吧?既然boss1_enemies和me是不同的对象,为什么你会写相同的.rect?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-6-7 21:40:53 | 显示全部楼层
hrp 发表于 2021-6-7 21:36
boss1_enemies不是你定义的Group吗,上面的me又是什么?也是Group吗?应该不是吧?既然boss1_enemies和me是 ...

me不是group,me是另一个实例化对象me = myplane.MyPlane(bg_size)  ,那大佬这应该怎么改一下
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-6-7 21:54:20 | 显示全部楼层
鲨鱼辣椒1 发表于 2021-6-7 21:40
me不是group,me是另一个实例化对象me = myplane.MyPlane(bg_size)  ,那大佬这应该怎么改一下

上面你把Group对象放进Group对象里(好像是?),没看明白,而且你代码也不完整,无从推断
还有就是我不怎么熟悉pygame
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-6-7 21:58:08 | 显示全部楼层
hrp 发表于 2021-6-7 21:54
上面你把Group对象放进Group对象里(好像是?),没看明白,而且你代码也不完整,无从推断
还有就是我不怎 ...

好吧谢谢大佬,我是新手哈哈,听你这么一说我好像有点头绪了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-3 20:09

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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