Pygame,访问组中的下一个精灵,检查颜色

时间:2013-12-28 13:31:32

标签: python pygame sprite

我正在尝试制作其中一个有彩色积木板的游戏,你点击一个块然后沿着相同颜色的所有相邻块移除它,不知道它们被称为什么。

我已经有了'董事会'可以这么说,它是这样创建的:

    colours = [red, green, blue, orange]

    block_list = pygame.sprite.Group()
    all_sprites_list = pygame.sprite.Group()
    x_co_ord = 0
    y_co_ord = 0
    counter = 0

    score = 0

    for i in range(63):
        get_colour = random.randrange(4)
        blocker = Block(colours[get_colour], 25, 25)
        blocker.rect.x = (x_co_ord)
        blocker.rect.y = (y_co_ord)
        block_list.add(blocker)
        all_sprites_list.add(blocker)
        x_co_ord += 26
        counter += 1
        if counter == 9:
            x_co_ord = 0
            y_co_ord += 26
            counter = 0

其中Block(colors [get_colour],25,25)创建一个25x25像素的图像和列表中的随机颜色。

我需要知道的是,我可以,如果是这样,访问block_list并找出两件事:块在哪里,它是什么颜色。

1 个答案:

答案 0 :(得分:0)

想出来。

block_collide = pygame.sprite.spritecollide(player, block_list, True)
for block in block_collide:
    # Get co-ordinates
    block_co_ords = (block.rect.x, block.rect.y)
    # Get color
    print block.image.get_at((0, 0))

任何更好的解决方案都乐意接受。