小編寫這篇文章的主要目的,是給大家介紹下,關于Python+Pygame,這一見縫插針游戲實習的途徑,下面是具體的代碼實例,希望可以給各位讀者帶來幫助。
前言:
奶奶說:
這個夏天真的是有點熱啊。
熱的簡直讓人無法忍受。。。
身體一動就會出汗。。。。。
想玩點小游戲都沒地方玩了。。。
《見縫插針》這個游戲好玩嗎?《見縫插針》它到底怎么玩呢?
只要是你能想到的,這些游戲代碼,我統統都會敲!「良心好游戲推薦」——栗子同學強勢來襲!
每天都會推薦好玩的小游戲。小編今天推薦這款游戲叫《見縫插針》,這是一個考驗玩家首腦協調、反應力的小游戲,這種游戲很常見,居然還沒有推薦過!今天趕緊來補上這個類型叭。
(在那種超市或者彩妝店鋪門口經常看見,話說我從來沒有闖關過呢!!)
PS:小編有話說
據說見縫插針游戲全世界只有六個人能玩到20關,其實不然,小編10分鐘之內就能玩到19關,
哈哈哈,不吹牛了,具體是什么情況就讓小編來給大家先用代碼制作一款見縫插針的Python小游戲叭!看看你能玩兒到第幾關吖?
《見縫插針》游戲簡介——
關鍵詞:休閑、反應力、協調性、闖關、操作、技巧。
游戲平臺:Python版本—栗子同學哦
氪金指數:0氪金。
推薦星數:3.5星(滿星5星)
難度星數:4星(滿星5星)
小編簡評:《見縫插針》是一款考驗玩家協調反應力的闖關小游戲。
一、運行環境
1)環境安裝
Python3、Pycharm、Pygame、pgzero、numpy。部分自帶模塊就不展示啦。
第三方庫的安裝:pip install pygame或者帶鏡像源
pip install-i https://pypi.douban.com/simple/+模塊名
2)素材(圖片、音樂等)
可自行選擇喜歡的圖片,背景音樂等等。圖片需要放在images文件夾中,音頻放在music文件夾中。images和music文件夾需要和新建的py文件放在同一級。
二、代碼展示
import pgzrun import random TITLE="Python見縫插針"#窗口標題 background=Actor('background')#導入背景圖片 needles=[]#存放發射針的列表 startNeedle=Actor('needle',anchor=(170+50,1.5))#導入針的圖片,并設置錨點(旋轉軸心) startNeedle.x=220 startNeedle.y=300 difficulty_Needles=[]#存放干擾的針 rotateSpeed=1#針旋轉的速度,默認設置為1 score=8#針的數量,默認設置為8 radius=80#圓盤的半徑 record_score=8#記錄針的數量,方便切換關卡 level=1#關卡 record_speed=1#記錄速度 flag=0#設置標志位,來畫干擾的針 r,g,b=random.randint(0,255),random.randint(0,255),random.randint(0,255)#隨機圓盤的顏色 def draw():#繪制模塊,每幀重復執行 global flag#全局變量 if not flag:#將干擾的針添加進列表 for i in range(int(rotateSpeed)+3): difficulty_Needle2=Actor('needle',anchor=(170+50,1.5)) difficulty_Needle2.angle=(360/(int(rotateSpeed)+2))*i difficulty_Needle2.x=400 difficulty_Needle2.y=300 needles.append(difficulty_Needle2) if rotateSpeed!=0: flag=1 screen.fill('white')#白色背景 screen.draw.filled_circle((400,300),radius,(r,g,b))#畫圓盤 screen.draw.text("第{}關".format(level),(320,10),fontsize=60,fontname="simhei",color='black')#顯示關卡 if score<10:#顯示分數,這里用判斷語句來區分一位數和兩位數,位置稍有不同 screen.draw.text(str(score),(385,275),fontsize=80,color='white') else: screen.draw.text(str(score),(370,275),fontsize=80,color='white') screen.draw.text("Speed:{}".format(rotateSpeed),(20,270),fontsize=35,color='red')#顯示速度 startNeedle.draw()#畫初始的針 for difficulty_Needle in difficulty_Needles:#循環遍歷畫出干擾的針 difficulty_Needle.draw() for needle in needles:#循環遍歷畫出發射出去的針 needle.draw() else:#失敗后的場景 screen.clear()#清屏 background.draw()#畫背景 screen.draw.text('Game Over!',(200,200),fontsize=100,color='red')#畫文本 screen.draw.text('再試一次',(230,400),fontsize=25,fontname="simhei",color='green') screen.draw.text('退出游戲',(450,400),fontsize=25,fontname="simhei",color='green') def update():#更新模塊,每幀重復執行 #讓針旋轉 for needle in needles: needle.angle+=rotateSpeed for difficulty_Needle in difficulty_Needles: difficulty_Needle.angle+=rotateSpeed def on_key_down():#按鍵檢測 global rotateSpeed,score,level,record_score,record_speed,flag#全局變量 newNeedle=Actor('needle',anchor=(170+50,1.5))#新建一根針 newNeedle.x=400#新建針的x坐標 newNeedle.y=300#新建針的y坐標 for needle in needles:#判斷發射針是否碰到其他針,如果碰到就停止轉動 if newNeedle.colliderect(needle): rotateSpeed=0 music.play_once("失敗")#失敗音效 needles.append(newNeedle)#將新創建的針加入列表 if rotateSpeed>0: score-=1#每發射一根針的數量就減1 if score==0:#當針的數量減到零時,要切換關卡,增加難度 needles.clear()#清除發射針列表 record_score+=2#針的數量變多 score=record_score level+=1#關卡變更 rotateSpeed+=0.5#速度加快 record_speed=rotateSpeed flag=0#將標志位置零,重新繪制干擾針 music.play_once('發射')#發射音效 def on_mouse_down(pos,button):#鼠標檢測 global rotateSpeed,record_speed,score,flag#全局變量 if button==mouse.LEFT and pos[0]>445 and pos[0]<555 and pos[1]>395 and pos[1]<435:#如果鼠標左鍵按下退出游戲 exit()#退出游戲 if button==mouse.LEFT and pos[0]>225 and pos[0]<335 and pos[1]>395 and pos[1]<435:#如果鼠標左鍵按下再試一次 rotateSpeed=record_speed#重置速度 needles.clear()#清空發射針的列表 score=record_score#重置針的數量 flag=0#將標志位置零,用于重新繪制干擾針 pgzrun.go()#開始執行游戲
三、效果展示
總結
玩家需要在合適的時機,在關卡內插完針,大多數關卡都很簡單,9、10、11關、、、等級越高會比越難一點,稍微操作不慎就涼涼了!
到此這篇關于Python+Pygame實現之見縫插針游戲的實現的文章就介紹到這了,希望可以給各位讀者帶來更多的幫助。
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/127774.html
作者:海擁 主頁:https://haiyong.blog.csdn.net/ ? Pygame是一組跨平臺的 Python 模塊,專為編寫視頻游戲而設計。它包括旨在與 Python 編程語言一起使用的計算機圖形和聲音庫。您可以使用 pygame 創建不同類型的游戲,包括街機游戲、平臺游戲等等。 使用的圖像: ?你可以控制玩家的移動。為此,首先使用 pygame 的 display.set...
pygame模塊是一個可以跨平臺的模塊,主要就是作為游戲開發來進行使用的,那么,怎么才能夠實現其游戲開發的技能了?比如說,怎么實現使用pygame去實現拼圖的游戲呢?下面就給大家詳細解答下。 pygame介紹 Python Pygame是一款專門為開發和設計2D電子游戲而生的軟件包,它支Windows、Linux、Mac OS等操作系統,具有良好的跨平臺性。Pygame由Pete Shin...
Python pygame作為一門常見的技能,其實,它的應用范圍還是比較的廣泛的,那么,它是怎么實現其拼圖游戲呢?下面就以案例的形式,去給大家做個解答,下面就給大家詳細解答下。 pygame介紹 Python Pygame是一款專門為開發和設計2D電子游戲而生的軟件包,它支Windows、Linux、Mac OS等操作系統,具有良好的跨平臺性。Pygame由Pete Shinners于20...
摘要:和標志,用于表示飛船是否正在移動,用于實現飛船在不松開按鍵下連續移動。重寫了函數,用于繪制飛船模塊該模塊主要是集中處理游戲中發生的各種事件。函數用于監聽游戲的事件,比如,它表示游戲推出事件和分別表示鍵盤按下與松開事件。 《Python編程:從入門到實踐》筆記。本章主要學習如何使用pygame編寫一個簡單的小飛機打外星人的游戲,由于本人對用python寫游戲并不是特別感興趣,所以主要是看...
摘要:物網王璞劼理工大富翁基于的一個大富翁游戲游戲地圖為自己使用各種網絡素材制作各種按鈕和選項,小圖標等也是使用制作。玩家在大富翁的主要操作是投擲骰子,由隨機函數進行判定然后進行移動,進行位置判斷,然后開始進行相關的判定。 本文實例為大家分享了python版大富翁游戲的具體代碼,供大家參考,具體內容如下 # -*- coding: utf-8 -*- 在學習過程中有什么不懂得可以加我...
閱讀 911·2023-01-14 11:38
閱讀 878·2023-01-14 11:04
閱讀 740·2023-01-14 10:48
閱讀 1982·2023-01-14 10:34
閱讀 942·2023-01-14 10:24
閱讀 819·2023-01-14 10:18
閱讀 499·2023-01-14 10:09
閱讀 572·2023-01-14 10:02