Я делаю игру, похожую на Binding Of Isaac. Я хочу, чтобы камни вокруг экрана блокировали движение игрока.
Там, где сделан макет камня:
" ",
" ",
" ",
" ",
" jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" "
]
rockxcoord = 0
rockycoord = 0
for row in level:
for col in row:
if col == "j":
rock = rocks(rockxcoord, rockycoord)
rockGroup.add(rock)
rockxcoord +=32
rockycoord += 50
rockxcoord = 0
Где установлены границы
for rock in rockGroup:
screen.blit(rock.image, [rock.rect.x, rock.rect.y])
rockCollisionList = pygame.sprite.spritecollide(playerOne, rockGroup, False)
for rock in rockCollisionList:
if playerOne.rect.x < rock.rect.x:
playerOne.rect.x = rock.rect.x - 90
if playerOne.rect.x > rock.rect.x:
playerOne.rect.x = rock.rect.x + 80
Я успешно добавил границы на оси х. Однако, если сделать то же самое с осью y, это не будет работать должным образом.