国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

使用Python第三方庫(kù)pygame寫個(gè)貪吃蛇小游戲

瀏覽:4日期:2022-08-03 15:43:20

今天看到幾個(gè)關(guān)于pygame模塊的博客和視頻,感覺(jué)非常有趣,這里照貓畫虎寫了一個(gè)貪吃蛇小游戲,目前還有待完善,但是基本游戲功能已經(jīng)實(shí)現(xiàn),下面是代碼:

# 導(dǎo)入模塊import pygameimport random # 初始化pygame.init()w = 720 #窗口寬度h = 600 #窗口高度ROW = 30 #行數(shù)COL = 36 #列數(shù)#將所有的坐標(biāo)看作是一個(gè)個(gè)點(diǎn),定義點(diǎn)類class Point: row = 0 col = 0 def __init__(self, row, col): self.row = row self.col = col def copy(self): return Point(row = self.row,col = self.col)#顯示窗口和標(biāo)題size = (w, h)window = pygame.display.set_mode(size)pygame.display.set_caption(’貪吃蛇’)#定義蛇頭坐標(biāo)head = Point(row = ROW/2, col = COL/2)#蛇身體snake_list = [ Point(row = head.row,col = head.col+1), Point(row = head.row,col = head.col+2), Point(row = head.row,col = head.col+3)]#產(chǎn)生食物def pro_food(): #食物不能與蛇重疊 while True: pos = Point(row=random.randint(1,ROW-2), col=random.randint(1,COL-2)) is_coll = False if head.row == pos.row and head.col == pos.col: is_coll = True for snake in snake_list: if snake.col == pos.col and snake.row == pos.row:is_coll = Truebreak if not is_coll: return posfood = pro_food()#定義顏色bg_color = (255, 255, 255)head_color = (0, 128, 128)food_color = (255, 255, 0)snake_color = (200,200,200)#給定初始方向dire = ’left’def rect(point, color): cell_width = w/COL cell_height = h/ROW left = point.col*cell_width top = point.row*cell_height pygame.draw.rect( window, color, (left,top,cell_width, cell_height, ) ) pass# 游戲循環(huán)quit = Trueclock = pygame.time.Clock()while quit: for event in pygame.event.get(): #退出方式 if event.type == pygame.QUIT: quit = False elif event.type == pygame.KEYDOWN: #鍵盤控制 if event.key == 273 or event.key == 119:if dire == ’left’ or dire == ’right’: dire = ’up’ elif event.key == 274 or event.key == 115:if dire == ’left’ or dire == ’right’: dire = ’down’ elif event.key == 276 or event.key == 97:if dire == ’up’ or dire == ’down’: dire = ’left’ elif event.key == 275 or event.key == 100:if dire == ’up’ or dire == ’down’: dire = ’right’ #吃 eat=(head.row == food.row and head.col == food.col) if eat: food = pro_food() #處理身體 #1.原來(lái)的頭換到身體最前端 snake_list.insert(0,head.copy()) #2.刪除身體最后一個(gè) if not eat: snake_list.pop() #移動(dòng) if dire == ’left’: head.col -= 1 elif dire == ’right’: head.col += 1 elif dire == ’up’: head.row -= 1 elif dire == ’down’: head.row += 1 #檢測(cè): dead=False #1.撞墻 if head.col < 0 or head.row< 0 or head.col >= COL or head.row >= ROW: dead=True #2.撞自己 for snake in snake_list: if head.col == snake.col and head.row == snake.row: dead=True break if dead: print(’dead’) quit = False #繪制背景 pygame.draw.rect(window, bg_color, (0, 0, w, h)) #蛇頭 rect(head, head_color) #食物 rect(food,food_color) #蛇身 for snake in snake_list: rect(snake,snake_color) pygame.display.flip() #游戲幀數(shù) clock.tick(20)

效果:

使用Python第三方庫(kù)pygame寫個(gè)貪吃蛇小游戲

總結(jié)

到此這篇關(guān)于使用Python第三方庫(kù)pygame寫個(gè)貪吃蛇小游戲的文章就介紹到這了,更多相關(guān)python 貪吃蛇游戲內(nèi)容請(qǐng)搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!

標(biāo)簽: Python 編程
相關(guān)文章:
主站蜘蛛池模板: 成人网18免费软件大全 | 污美女网站www在线观看 | 欧美videofree性欧美另类 | 亚洲天堂视频在线免费观看 | 久久国产三级 | 在线观看国产一区二区三区 | 国产精品久久久久久久免费大片 | 国产成人一区二区三区高清 | 国内精品九一在线播放 | 亚洲好逼| 久久国产精品1区2区3区网页 | 国产一二三区视频 | 免费观看欧美一级牲片一 | a毛片免费观看 | 久久亚洲国产最新网站 | 九色91| 99爱视频免费高清在线观看 | 欧美日韩亚洲综合在线一区二区 | 国产香蕉影视院 | 女人张开腿让男人添 | 看日本真人一一级特黄毛片 | 成人亲子乱子伦视频 | 国产午夜亚洲精品第一区 | 欧美视频精品 | 成人精品免费网站 | 国产做a爰片久久毛片a | 美国毛片网站 | 国产99视频精品免费观看9e | 手机看片精品国产福利盒子 | 天天躁日日躁狠狠躁一级毛片 | 九九热国产精品视频 | 男人干女人逼 | 国产欧美日本在线 | 久草在线在线 | 久久草在线看 | 国产日产亚洲系列首页 | 国产麻豆一级在线观看 | 欧美一区二区三区免费播放 | aa级毛片毛片免费观看久 | 性盈盈影院在线观看 | 亚洲一二区 |