




下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
第基于Python實(shí)現(xiàn)開心消消樂小游戲的示例代碼__screen_size=(900,600)
screen=pygame.display.set_mode(__screen_size,DOUBLEBUF,32)
fruit_list=[]
fruit_image=pygame.image.load(Tree.fruit).convert_alpha()
fruit_width=fruit_image.get_width()
fruit_height=fruit_image.get_height()
type=0#0樹界面,1加精力界面
energy_full=False#精力已滿標(biāo)志初始未滿
money_empty=False#銀幣不足
defload_text(self,text,position,txt_size=25,txt_color=(255,255,255)):
my_font=pygame.font.SysFont(None,txt_size)
text_screen=my_font.render(text,True,txt_color)
self.screen.blit(text_screen,position)
defdraw_tree(self,energy_num,money_num):
"""畫tree"""
Tree(Tree.tree,(0,600)).draw(self.screen)#畫樹
Tree(Tree.energy_num,Tree.energy_num_position).draw(self.screen)#畫精力
#print("energy",energy_num)
ifenergy_num30:
self.load_text(str(30)+'/30',(22,55),21)
else:
self.load_text(str(energy_num)+'/30',(22,55),21)
#print("money",money_num)
Tree(Tree.money,(15,135)).draw(self.screen)#畫銀幣
self.load_text(str(money_num),(32,124),21)
foriinrange(0,10):#畫果子
Tree(Tree.fruit,Tree.position[i]).draw(self.screen)
self.load_text(str(i+1),(Tree.position[i][0]+15,Tree.position[i][1]-47))
ifself.type==1:
Tree(Tree.energy_buy,Tree.energy_buy_position).draw(self.screen)
ifself.energy_full:
self.load_text("energyisfull!",(430,310),30,(255,0,0))
pygame.display.flip()
pygame.time.delay(500)
self.energy_full=False
ifself.money_empty:
self.load_text("moneyisnotenough!",(410,310),30,(255,0,0))
pygame.display.flip()
pygame.time.delay(500)
self.money_empty=False
2.4制作鼠標(biāo)點(diǎn)擊效果
defmouse_select(self,button,level,energy_num,money_num):
"""鼠標(biāo)點(diǎn)擊"""
ifbutton.type==MOUSEBUTTONDOWN:
mouse_down_x,mouse_down_y=button.pos
print(button.pos)
iflevel==0:
ifself.type==0:#樹界面
foriinrange(0,10):
ifTree.position[i][0]mouse_down_xTree.position[i][0]+self.fruit_width\
andTree.position[i][1]-self.fruit_heightmouse_down_yTree.position[i][1]:
ifenergy_num=0:
self.type=1
else:
level=i+1
ifTree.energy_num_position[0]mouse_down_xTree.energy_num_position[0]+60\
andTree.energy_num_position[1]-60mouse_down_yTree.energy_num_position[1]:#精力60*60
SoundPlay(SoundPlay.click)
self.type=1
else:#加精力彈窗界面
if408mouse_down_x600and263mouse_down_y313:#點(diǎn)加精力按鈕
SoundPlay(SoundPlay.click_button)
ifmoney_num50:
self.money_empty=True
ifenergy_num=30:
self.energy_full=True
elifenergy_num30andmoney_num=50:
energy_num+=5
money_num-=50
elif619mouse_down_x638and158mouse_down_y177:#點(diǎn)叉號
self.type=0
ifbutton.type==MOUSEBUTTONUP:
pass
returnlevel,energy_num,money_num
2.5制作出現(xiàn)元素
classElement(pygame.sprite.Sprite):
"""元素類"""
#圖標(biāo)元組,包括6個小動物,
animal=('pic2/fox.png','pic2/bear.png','pic2/chick.png','pic2/eagle.png','pic2/frog.png','pic2/cow.png')
ice='pic2/ice.png'#冰層
brick='pic2/brick.png'#磚
frame='pic2/frame.png'#選中框
bling=("pic2/bling1.png","pic2/bling2.png","pic2/bling3.png","pic2/bling4.png","pic2/bling5.png",\
"pic2/bling6.png","pic2/bling7.png","pic2/bling8.png","pic2/bling9.png")#消除動畫
ice_eli=('pic2/ice0.png','pic2/ice1.png','pic2/ice2.png','pic2/ice3.png','pic2/ice4.png','pic2/ice5.png',\
'pic2/ice6.png','pic2/ice7.png','pic2/ice8.png')#消除冰塊動畫
#得分圖片
score_level=('pic2/good.png','pic2/great.png','pic2/amazing.png','pic2/excellent.png','pic2/unbelievable.png')
none_animal='pic2/noneanimal.png'#無可消除小動物
stop='pic2/exit.png'#暫停鍵
stop_position=(20,530)
def__init__(self,icon,position):
super().__init__()
self.image=pygame.image.load(icon).convert_alpha()
self.rect=self.image.get_rect()
self.rect.topleft=position#左上角坐標(biāo)
self.speed=[0,0]
self.init_position=position
defmove(self,speed):
self.speed=speed
self.rect=self.rect.move(self.speed)
ifself.speed[0]!=0:#如果左右移動
ifabs(self.rect.left-self.init_position[0])==self.rect[2]:
self.init_position=self.rect.topleft
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年高中《秋季軍訓(xùn)》工作方案 (合計3份)
- 2026年高考作文備考訓(xùn)練之題目解析及范文:入乎其內(nèi)與出乎其外
- 學(xué)堂在線 現(xiàn)代生活美學(xué)-花香茶之道 章節(jié)測試答案
- 2026年中考英語復(fù)習(xí)講義:句子成分+非謂語動詞
- 2025年外研版高中英語必修第二冊Unit 2綜合檢測試卷及答案
- 2025年人教版新高一物理專項(xiàng)提升:牛頓第一定律
- 2025年譯林版七年級英語上冊Unit4綜合測試試卷及答案
- 2025年蘇教版七年級生物下冊期末專項(xiàng)培優(yōu)-生態(tài)系統(tǒng)綜合題(含解析)
- 2025年航空發(fā)動機(jī)維修技術(shù)創(chuàng)新在成本節(jié)約中的應(yīng)用案例分析報告
- 老齡化趨勢下2025年老年長期照護(hù)服務(wù)模式與社區(qū)養(yǎng)老機(jī)構(gòu)服務(wù)模式創(chuàng)新與可持續(xù)發(fā)展報告
- 丙綸防水施工合同范本
- 肩胛骨骨折護(hù)理查房
- DB11T 689-2025 既有建筑抗震加固技術(shù)規(guī)程
- 光伏電站安全技術(shù)培訓(xùn)
- 2025年兵團(tuán)普通職工考試試題及答案
- 門窗市場發(fā)展分析及行業(yè)投資戰(zhàn)略研究報告2025-2028版
- 合理用藥考試題及答案
- 電廠設(shè)備清掃管理制度
- 特種設(shè)備重大事故隱患判定準(zhǔn)則試卷及答案
- 肝病治療病例討論講課件
- 2025-2030中國OPO結(jié)構(gòu)脂在奶粉中的應(yīng)用發(fā)展?fàn)顩r及趨勢前景預(yù)判報告
評論
0/150
提交評論