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

2024-06-11 14:55:59 发布

您现在位置:Python中文网/ 问答频道 /正文

我试着做一个游戏,你有一个彩色块板,你点击一个块,它是沿着所有相邻的相同颜色的块,不知道他们叫什么。你知道吗

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

    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\u colour],25,25)创建一个25x25像素的图像,并从列表中随机选择一种颜色。你知道吗

我需要知道的是,我能不能,如果可以的话,如何访问块列表,找出两件事:块在哪里,它是什么颜色。你知道吗


Tags: get颜色countergroupallblockpygamelist
1条回答
网友
1楼 · 发布于 2024-06-11 14:55:59

我想出来了。你知道吗

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))

任何更好的解决方案都会被欣然接受。你知道吗

相关问题 更多 >