Слияние кода завершено, страница обновится автоматически
Если одна змея сталкивается с другой, это вызывает gameover:
for snakeBody1 in snakeSegments1[1:]: # Игрок 2 столкнулся с игроком 1, игрок 2 проиграл
if snakePosition2[0] == snakeBody1[0] and snakePosition2[1] == snakeBody1[1]:
gameOver2(playSurface, score1, score2)
В этот момент в gameover повторно вызывается main(). Будет ли это вызывать переполнение стека при рекурсивном вызове main()?
def gameOver2(playSurface,score1,score2):
gameOverFont = pygame.font.SysFont('arial', 32)
gameOverSurf = gameOverFont.render(' blue snake Game Over '+'pink'+str(score1-3)+' '+'blue:'+str(score2-3), True, greyColour)
gameOverRect = gameOverSurf.get_rect()
gameOverRect.midtop = (320, 10)
playSurface.blit(gameOverSurf, gameOverRect)
pygame.display.flip()
time.sleep(5)
main()
Возможно, можно улучшить код.