最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

Python還原貪吃蛇(附代碼)

2022-07-12 15:05 作者:Rzen瑞恩  | 我要投稿

Python還原貪吃蛇

警告!在Python運行前,請確保本機(jī)有第三方庫——pygame?。?!

這里有一些基本介紹,安裝方法一會更:

什么是pygame庫?

話不多說,上代碼!

import pygame

import time

import random


pygame.init()


white = (255, 255, 255)

yellow = (255, 255, 102)

grey = (0, 0, 0)

black = (0, 0, 0)

green = (0, 255, 0)

blue = (50, 153, 213)


dis_width = 800

dis_height = 600


dis = pygame.display.set_mode((dis_width, dis_height))

pygame.display.set_caption('貪吃蛇')


clock = pygame.time.Clock()


snake_block = 10

snake_speed = 100


font_style = pygame.font.SysFont("bahnschrift", 25)

score_font = pygame.font.SysFont("comicsansms", 35)


def Your_score(score):

? ? value = score_font.render("Score: " + str(score), True, yellow)

? ? dis.blit(value, [0, 0])


def our_snake(snake_block, snake_list):

? ? for x in snake_list:

? ? ? ? pygame.draw.rect(dis, grey, [x[0], x[1], snake_block, snake_block])


def message(msg, color):

? ? mesg = font_style.render(msg, True, color)

? ? dis.blit(mesg, [dis_width / 6, dis_height / 3])


def gameLoop():

? ? game_over = False

? ? game_close = False


? ? x1 = dis_width / 2

? ? y1 = dis_height / 2


? ? x1_change = 0

? ? y1_change = 0


? ? snake_List = []

? ? Length_of_snake = 1


? ? foodx = round(random.randrange(0, dis_width - snake_block) / 10.0) * 10.0

? ? foody = round(random.randrange(0, dis_height - snake_block) / 10.0) * 10.0


? ? while not game_over:


? ? ? ? while game_close == True:

? ? ? ? ? ? dis.fill(blue)

? ? ? ? ? ? message("Lost! q quit or a again", black)

? ? ? ? ? ? Your_score(Length_of_snake - 1)

? ? ? ? ? ? pygame.display.update()


? ? ? ? ? ? for event in pygame.event.get():

? ? ? ? ? ? ? ? if event.type == pygame.KEYDOWN:

? ? ? ? ? ? ? ? ? ? if event.key == pygame.K_q:

? ? ? ? ? ? ? ? ? ? ? ? game_over = True

? ? ? ? ? ? ? ? ? ? ? ? game_close = False

? ? ? ? ? ? ? ? ? ? if event.key == pygame.K_a:

? ? ? ? ? ? ? ? ? ? ? ? gameLoop()


? ? ? ? for event in pygame.event.get():

? ? ? ? ? ? if event.type == pygame.QUIT:

? ? ? ? ? ? ? ? game_over = True

? ? ? ? ? ? if event.type == pygame.KEYDOWN:

? ? ? ? ? ? ? ? if event.key == pygame.K_LEFT or event.key == pygame.K_a:

? ? ? ? ? ? ? ? ? ? x1_change = -snake_block

? ? ? ? ? ? ? ? ? ? y1_change = 0

? ? ? ? ? ? ? ? elif event.key == pygame.K_RIGHT or event.key == pygame.K_d:

? ? ? ? ? ? ? ? ? ? x1_change = snake_block

? ? ? ? ? ? ? ? ? ? y1_change = 0

? ? ? ? ? ? ? ? elif event.key == pygame.K_UP or event.key == pygame.K_w:

? ? ? ? ? ? ? ? ? ? y1_change = -snake_block

? ? ? ? ? ? ? ? ? ? x1_change = 0

? ? ? ? ? ? ? ? elif event.key == pygame.K_DOWN or event.key == pygame.K_s:

? ? ? ? ? ? ? ? ? ? y1_change = snake_block

? ? ? ? ? ? ? ? ? ? x1_change = 0


? ? ? ? if x1 >= dis_width or x1 < 0 or y1 >= dis_height or y1 < 0:

? ? ? ? ? ? game_close = True

? ? ? ? x1 += x1_change

? ? ? ? y1 += y1_change

? ? ? ? dis.fill(blue)

? ? ? ? pygame.draw.rect(dis, green, [foodx, foody, snake_block, snake_block])

? ? ? ? snake_Head = []

? ? ? ? snake_Head.append(x1)

? ? ? ? snake_Head.append(y1)

? ? ? ? snake_List.append(snake_Head)

? ? ? ? if len(snake_List) > Length_of_snake:

? ? ? ? ? ? del snake_List[0]


? ? ? ? for x in snake_List[:-1]:

? ? ? ? ? ? if x == snake_Head:

? ? ? ? ? ? ? ? game_close = True


? ? ? ? our_snake(snake_block, snake_List)

? ? ? ? Your_score(Length_of_snake - 1)


? ? ? ? pygame.display.update()


? ? ? ? if x1 == foodx and y1 == foody:

? ? ? ? ? ? foodx = round(random.randrange(0, dis_width - snake_block) / 10.0) * 10.0

? ? ? ? ? ? foody = round(random.randrange(0, dis_height - snake_block) / 10.0) * 10.0

? ? ? ? ? ? Length_of_snake += 1

? ? ? ??

? ? ? ? clock.tick(snake_speed)


? ? pygame.quit()

? ? quit()


gameLoop()


Python還原貪吃蛇(附代碼)的評論 (共 條)

分享到微博請遵守國家法律
林州市| 孙吴县| 宁远县| 和政县| 敦化市| 巢湖市| 沈阳市| 西吉县| 罗甸县| 牡丹江市| 民县| 神木县| 岳西县| 康乐县| 富平县| 连平县| 嘉荫县| 开原市| 黔东| 西丰县| 长岭县| 依安县| 东台市| 琼海市| 利辛县| 锡林郭勒盟| 德清县| 佛冈县| 黄龙县| 台湾省| 五寨县| 盐亭县| 清镇市| 富平县| 监利县| 永川市| 盐亭县| 泰兴市| 玉田县| 西安市| 仲巴县|