一区二区三区日韩精品-日韩经典一区二区三区-五月激情综合丁香婷婷-欧美精品中文字幕专区

分享

Python簡(jiǎn)單通俗易懂的貪吃蛇小游戲,兒時(shí)童年的味道!

 小世界的野孩子 2021-04-25

前言

本文的文字及圖片來(lái)源于網(wǎng)絡(luò),僅供學(xué)習(xí)、交流使用,不具有任何商業(yè)用途,如有問(wèn)題請(qǐng)及時(shí)聯(lián)系我們以作處理。


今天,給大家介紹一個(gè)簡(jiǎn)單易懂的貪吃蛇小游戲

代碼 如下

import pygame,sys,randomfrom pygame.locals import *#定義顏色變量  目標(biāo)方塊的顏色redColor = pygame.Color(250,0,0)#貪吃蛇的顏色whiteColor = pygame.Color(255,255,255)#背景顏色blackColor = pygame.Color(0,0,0) 
def gameOver():
    pygame.quit()
    sys.exit() 
 
def main():#初始化pygame
    pygame.init()#控制游戲速度
    fpsColck = pygame.time.Clock()#創(chuàng)建pygame顯示層
    playSurface = pygame.display.set_mode((640,480))
    pygame.display.set_caption('貪吃蛇')#初始化貪吃蛇的起始坐標(biāo)
    snakePosition = [100,100]#初始化貪吃蛇的長(zhǎng)度
    snakeBody = [[100,100],[80,100],[60,100]]#初始化目標(biāo)方塊的坐標(biāo)
    targetPosition = [300,300]#初始化一個(gè)目標(biāo)方塊的標(biāo)記  目的:用來(lái)判斷是否吃掉這個(gè)目標(biāo)方塊
    targerflag = 1#初始化方向
    direction = 'right'#定義一個(gè)方向變量
    changeDirection = direction while True:for event in pygame.event.get(): if event.type == QUIT:
                pygame.quit()
                sys.exit()elif event.type == KEYDOWN:if event.key == K_RIGHT:
                    changeDirection = 'right'if event.key == K_LEFT:
                    changeDirection = 'left'if event.key == K_UP:
                    changeDirection = 'up'if event.key == K_DOWN:
                    changeDirection = 'down'#對(duì)應(yīng)鍵盤Esc鍵if event.key == K_ESCAPE:
                    pygame.event.post(pygame.event.Event(QUIT))#確定方向if changeDirection == 'left' and not direction == 'right':
            direction = changeDirectionif changeDirection == 'right' and not direction == 'left':
            direction = changeDirectionif changeDirection == 'up' and not direction == 'down':
            direction = changeDirectionif changeDirection == 'down' and not direction == 'up':
            direction = changeDirection 
 #根據(jù)方向移動(dòng)蛇頭的坐標(biāo)if direction == 'right':
            snakePosition[0] += 20if direction == 'left':
            snakePosition[0] -= 20if direction == 'up':
            snakePosition[1] -= 20if direction == 'down':
            snakePosition[1] += 20 #增加蛇的長(zhǎng)度
        snakeBody.insert(0,list(snakePosition)) #判斷目標(biāo)方塊是否被吃掉if snakePosition[0] == targetPosition[0] and snakePosition[1] == targetPosition[1]:
            targerflag = 0else:
            snakeBody.pop() if targerflag == 0:
            x = random.randrange(1,32)
            y = random.randrange(1,24)
            targetPosition = [int(x*20),int(y*20)]
            targerflag = 1#繪制pygame的顯示層
        playSurface.fill(blackColor) for position in snakeBody:
            pygame.draw.rect(playSurface,whiteColor,Rect(position[0],position[1],20,20))
            pygame.draw.rect(playSurface,redColor,Rect(targetPosition[0],targetPosition[1],20,20))
 
        pygame.display.flip() if snakePosition[0]> 620 or snakePosition[0] < 0:
            gameOver()elif snakePosition[1] > 460 or snakePosition[1] < 0:
            gameOver()#修改速度
        fpsColck.tick(10) 
if __name__ == '__main__':
    main()

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多

    大香伊蕉欧美一区二区三区| 九九九热视频免费观看| 久久国内午夜福利直播| 精品欧美国产一二三区| 亚洲一区二区三区四区| 精品少妇人妻一区二区三区| 久久成人国产欧美精品一区二区| 免费精品一区二区三区| 中文字幕人妻日本一区二区| 色综合久久超碰色婷婷| 日韩欧美国产精品自拍| 国产精品亚洲综合色区韩国| 久热在线视频这里只有精品| 69老司机精品视频在线观看| 夫妻性生活黄色录像视频| 亚洲欧美日产综合在线网| 国产老熟女乱子人伦视频| 粉嫩国产一区二区三区在线| 高清免费在线不卡视频| 手机在线不卡国产视频| 精品午夜福利无人区乱码| 国产精品欧美激情在线观看| 99视频精品免费视频| 成年午夜在线免费视频| 激情亚洲内射一区二区三区| 欧美一区二区三区性视频| 久久精品亚洲情色欧美| 国产亚洲二区精品美女久久| 国产欧美日韩精品一区二| 国产午夜免费在线视频| 三级理论午夜福利在线看| 亚洲av秘片一区二区三区| 国产一区二区精品高清免费| 东京热电东京热一区二区三区| 人人妻在人人看人人澡| 欧美日韩一区二区综合| 国产一区欧美一区二区| 国产中文字幕久久黄色片| 国产成人午夜福利片片| 久久99国产精品果冻传媒| 草草草草在线观看视频|