91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

python使用pygame實現笑臉乒乓球彈珠球游戲

發布時間:2020-09-17 17:01:41 來源:腳本之家 閱讀:162 作者:HelloWorld! 欄目:開發技術

今天我們用python和pygame實現一個乒乓球的小游戲,或者叫彈珠球游戲。

笑臉乒乓球游戲功能介紹

乒乓球游戲功能如下:

乒乓球從屏幕上方落下,用鼠標來移動球拍,使其反彈回去,并獲得得分,如果沒有接到該球,則失去一條命。玩家有一定數量的命如5。

游戲設計思路

根據游戲規則,我們需要

1、初始化游戲環境
2、畫出乒乓球,球拍等
3、設置乒乓球的運動,并監聽鼠標,以移動球拍
4、判斷乒乓球被接住與否
5、游戲是否結束,是否再玩。

代碼實現

import pygame
pygame.init()
screen_width=800
screen_height=600
screen=pygame.display.set_mode([screen_width,screen_height])
pygame.display.set_caption("笑臉乒乓球")
keepGoing=True
pic=pygame.image.load("CrazySmile.bmp")
colorkey = pic.get_at((0,0))
pic.set_colorkey(colorkey)
picx=0
picy=0
BLACK=(0,0,0)
WHITE=(255,255,255)
timer=pygame.time.Clock()
paddle_width=200
paddle_height=25
paddle_x=300
paddle_y=550

speedx=5
speedy=5
#圖片的高度和寬度
pic_width=pic.get_width()
pic_height=pic.get_height()
#分數和命
points=0
lives=5
font=pygame.font.SysFont("Times",24)
pop = pygame.mixer.Sound("pop.wav")

while keepGoing:
 for event in pygame.event.get():
 if event.type==pygame.QUIT:
  keepGoing=False
 if event.type == pygame.KEYDOWN:
  if event.key == pygame.K_F1: # F1 = New Game
  points = 0
  lives = 5
  picx = 0
  picy = 0
  speedx = 5
  speedy = 5

 pop.play()
 picx += speedx
 picy += speedy
 if picx <= 0 or picx >= 700:
 speedx = -speedx * 1.1
 if picy <= 0:
 speedy = -speedy + 1
 if picy >= 500:
 lives -= 1
 speedy = -5
 speedx = 5
 picy = 499
 # if picx <= 0 or picx + pic_width > screen_width:
 # speedx = -speedx
 # if picy <= 0:
 # speedy = -speedy
 # if picy >= 500:
 # lives -= 1
 # speedy = -speedy
 screen.fill(BLACK)
 screen.blit(pic, (picx, picy))
 # 畫出球拍
 paddle_x = pygame.mouse.get_pos()[0]
 paddle_x -= paddle_width / 2
 pygame.draw.rect(screen, WHITE, (paddle_x, paddle_y, paddle_width, paddle_height))
 #判斷接住乒乓球
 if picy + pic_width > paddle_y and picy + pic_height < paddle_y + paddle_height and speedy > 0:
 if picx + pic_width / 2 > paddle_x and picx + pic_width / 2 < paddle_x + paddle_width:
  points += 1
  speedy = -speedy
 # 在屏幕上畫出得分

 draw_string = "Lives: " + str(lives) + " Points: " + str(points)
 if lives<1:
 draw_string="Game Over. Your scores is "+str(points)
 draw_string+="press F1 to play again"
 text = font.render(draw_string, True, WHITE)
 text_rect = text.get_rect()
 text_rect.centerx = screen.get_rect().centerx
 text_rect.y = 10
 screen.blit(text, text_rect)
 pygame.display.update()
 timer.tick(60)

pygame.quit()

代碼中用的乒乓球是如下圖片。

python使用pygame實現笑臉乒乓球彈珠球游戲

總結

1、通過上述代碼,功能基本實現
2、可以有很多改進,如通過鍵盤來操控球拍,如給游戲加上背景音樂,其中加音樂的方法是

pop = pygame.mixer.Sound("pop.wav")
pop.play()

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持億速云。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

榆林市| 无棣县| 洪泽县| 靖边县| 秀山| 哈巴河县| 台东县| 双辽市| 青海省| 雅江县| 古浪县| 黄浦区| 沽源县| 临颍县| 南开区| 岳阳市| 沅江市| 鲁山县| 通州区| 仙居县| 乡城县| 三台县| 阿荣旗| 铁岭县| 潢川县| 眉山市| 墨脱县| 久治县| 越西县| 白朗县| 慈利县| 治县。| 哈尔滨市| 隆德县| 那坡县| 赣榆县| 古交市| 当雄县| 托克托县| 小金县| 巨鹿县|