Как добавить несколько изображений в Pygame на сетку? - PullRequest
2 голосов
/ 13 марта 2020

Это код того, как я пытался поместить единицы на экран, однако я могу сделать их отдельными частями, он показывает только один тип.

grid = [[None for i in range(0, 900, 50)] for j in range(0, 900, 50)]
grid[0][2] = RedInfantry
grid[1][2] = RedAntiAirMissleLauncher
grid[2][2] = RedAntiAirTank
grid[3][2] = RedBomber
grid[4][2] = RedHelicopter
grid[5][2] = RedJeep
grid[6][2] = RedMobileGun
grid[7][2] = RedRocketLauncher
grid[8][2] = RedTank
grid[9][2] = RedTransporter

grid[0][9] = BlueInfantry
grid[1][9] = BlueAntiAirMissleLauncher
grid[2][9] = BlueAntiAirTank
grid[3][9] = BlueBomber
grid[4][9] = BlueHelicopter
grid[5][9] = BlueJeep
grid[6][9] = BlueMobileGun
grid[7][9] = BlueRocketLauncher
grid[8][9] = BlueTank
grid[9][9] = BlueTransporter



run = True
while run:
    # handle events
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            run = False

    # draw background
    Background.fill(Green)

    # draw scene
    for i in range(0, 900, 50):
        pygame.draw.line(Background, (0, 0, 0), (0, i), (900, i))
        pygame.draw.line(Background, (0, 0, 0), (i, 0), (i, 900))
    for i in range(len(grid)):
        for j in range(len(grid[i])):
            x, y = i * 50, j * 50
            image = grid[i][j]
            if image != None:
                Background.blit(RedInfantry,(x, y))



    # update dispaly
    pygame.display.update()

Как мне сделать их отдельными частями, которые я могу переместить вместо того, чтобы все они были одним куском, я хочу, чтобы в сетке было несколько разных изображений.

This is what has happened

1 Ответ

2 голосов
/ 13 марта 2020

Вы постоянно перетаскиваете изображение RedInfantry:

Background.blit(RedInfantry,(x, y))

Вы должны перетаскивать изображение, сохраненное в сетке, а не RedInfantry:

image = grid[i][j]
if image != None:
    Background.blit(image, (x, y))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...