Python贪吃蛇游戏代码实现 - 简单易懂的教程
"下面是一个简单的贪吃蛇游戏的Python代码实现:"\n\npython\nimport pygame\nimport random\n\n# 游戏窗口大小\nWIDTH = 800\nHEIGHT = 600\n# 蛇和食物的大小\nSIZE = 20\n# 蛇的移动速度\nSPEED = 10\n\n# 颜色定义\nBLACK = (0, 0, 0)\nGREEN = (0, 255, 0)\nRED = (255, 0, 0)\n\n# 初始化pygame\npygame.init()\n# 创建游戏窗口\nwindow = pygame.display.set_mode((WIDTH, HEIGHT))\npygame.display.set_caption('贪吃蛇')\n\nclock = pygame.time.Clock()\n\n# 蛇的初始位置和初始长度\nsnake_x = WIDTH // 2\nsnake_y = HEIGHT // 2\nsnake_length = 1\nsnake_body = [[snake_x, snake_y]]\n\n# 食物的初始位置\nfood_x = random.randint(0, WIDTH - SIZE) // SIZE * SIZE\nfood_y = random.randint(0, HEIGHT - SIZE) // SIZE * SIZE\n\n# 蛇的移动方向\ndirection = 'right'\n\ngame_over = False\n\nwhile not game_over:\n for event in pygame.event.get():\n if event.type == pygame.QUIT:\n game_over = True\n elif event.type == pygame.KEYDOWN:\n if event.key == pygame.K_UP and direction != 'down':\n direction = 'up'\n elif event.key == pygame.K_DOWN and direction != 'up':\n direction = 'down'\n elif event.key == pygame.K_LEFT and direction != 'right':\n direction = 'left'\n elif event.key == pygame.K_RIGHT and direction != 'left':\n direction = 'right'\n\n if direction == 'up':\n snake_y -= SPEED\n elif direction == 'down':\n snake_y += SPEED\n elif direction == 'left':\n snake_x -= SPEED\n elif direction == 'right':\n snake_x += SPEED\n\n # 判断蛇是否吃到食物\n if snake_x == food_x and snake_y == food_y:\n snake_length += 1\n food_x = random.randint(0, WIDTH - SIZE) // SIZE * SIZE\n food_y = random.randint(0, HEIGHT - SIZE) // SIZE * SIZE\n\n # 更新蛇的身体\n snake_body.append([snake_x, snake_y])\n if len(snake_body) > snake_length:\n del snake_body[0]\n\n # 判断蛇是否撞到自己或撞到墙壁\n if snake_x < 0 or snake_x >= WIDTH or snake_y < 0 or snake_y >= HEIGHT or [snake_x, snake_y] in snake_body[:-1]:\n game_over = True\n\n # 渲染游戏窗口\n window.fill(BLACK)\n for body in snake_body:\n pygame.draw.rect(window, GREEN, (body[0], body[1], SIZE, SIZE))\n pygame.draw.rect(window, RED, (food_x, food_y, SIZE, SIZE))\n pygame.display.update()\n\n # 控制游戏帧率\n clock.tick(10)\n\n# 退出游戏\npygame.quit()\n\n\n这个游戏使用pygame库来实现,通过键盘控制蛇的移动方向,蛇会不断地移动并且可以吃到食物增长长度。游戏结束的条件是蛇撞到墙壁或者撞到自己的身体。游戏窗口的大小、蛇的移动速度、颜色等都可以根据需要进行调整和修改。
原文地址: https://www.cveoy.top/t/topic/pMJe 著作权归作者所有。请勿转载和采集!