最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

pygame實(shí)現(xiàn)彈球游戲

 更新時間:2020年04月14日 08:21:53   作者:@licheng  
這篇文章主要為大家詳細(xì)介紹了pygame實(shí)現(xiàn)彈球游戲,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下

本文實(shí)例為大家分享了pygame實(shí)現(xiàn)彈球游戲的具體代碼,供大家參考,具體內(nèi)容如下

pygame彈球游戲

寫的很簡陋
pip install pygame 安裝pygame模塊

代碼,復(fù)制運(yùn)行即可

import pygame
import random

pygame.init()

win = pygame.display.set_mode((600, 600)) # 畫布窗口的大小
pygame.display.set_caption("彈球游戲") # 窗口標(biāo)題

x, y = 300, 0 # 方塊的起點(diǎn)
width, height = 10, 10 # 方塊的寬,高
speed = 1 # 速度


def _randomOK():
  return random.randint(0, 1)


stop = False
_random = _randomOK()

str1 = "暫停中"
baffle = 250
status = 0

count = 0
top = 0
while True:
  # 刷新頻率, 小球移動速度
  pygame.time.Clock().tick(1000)

  for event in pygame.event.get():
    # 窗口x事件
    if event.type == pygame.QUIT:
      exit(0)
    elif event.type == pygame.KEYDOWN:
      # 回車事件
      if event.key == 13:
        str1 = "暫停中"
        stop = not stop
        if status == 1:
          x, y = 300, 0

  keys = pygame.key.get_pressed()
  if stop:
    pygame.display.set_caption(str1) # 窗口標(biāo)題
    continue
  if y >= 590:
    status = 1
    stop = not stop
    str1 = "游戲結(jié)束,回車重新開始,反彈次數(shù)" + str(count)
    count = 0

  pygame.display.set_caption("彈球游戲") # 窗口標(biāo)題
  if y == 0:
    top = 0
  if top == 0:
    if _random == 0: # 向下左彈
      x -= speed
      y += speed
    elif _random == 1:
      x += speed
      y += speed
  else:
    if _random == 0: # 向上左彈
      x -= speed
      y -= speed
    elif _random == 1: # 向上右彈
      x += speed
      y -= speed
  # 方向箭頭響應(yīng)
  if keys[pygame.K_LEFT]:
    baffle -= speed
    if baffle < 0:
      baffle = 0

  if keys[pygame.K_RIGHT]:
    baffle += speed
    if baffle > 500:
      baffle = 500
  # 碰撞邏輯
  if 500 <= y <= 520:
    print(x, y)
    print(baffle)
    # y 高度坐標(biāo) 200 x 寬度坐標(biāo) 200
    # x坐標(biāo)加300 大于 寬度初始坐標(biāo), 小于 寬度+300
    if baffle <= x <= baffle + 100:
      count += 1
      top = 1

  # 防止跑出邊界
  if x > win.get_size()[0] - width:
    _random = _randomOK()
    x = win.get_size()[0] - width

  if x < 0:
    _random = _randomOK()
    x = 0

  if y > win.get_size()[1] - height:
    _random = _randomOK()
    y = win.get_size()[1] - height

  if y < 0:
    _random = _randomOK()
    y = 0

  # 將每一幀的底色先填充成黑色
  win.fill((64, 158, 255))
  # 畫方塊
  pygame.draw.rect(win, (255, 0, 0), (x, y, width, height))
  # 擋板設(shè)置,
  pygame.draw.rect(win, (255, 255, 255), (baffle, 500, 100, 20))
  # 更新畫布
  pygame.display.update()
pygame.quit()

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

最新評論

固原市| 阿巴嘎旗| 延长县| 山阴县| 南丰县| 天长市| 兴安盟| 永昌县| 建始县| 兰西县| 宁海县| 银川市| 随州市| 武安市| 华蓥市| 东莞市| 五常市| 綦江县| 巴中市| 阿坝| 静乐县| 新兴县| 建水县| 安宁市| 荔浦县| 莒南县| 麻江县| 北票市| 邢台市| 于都县| 东丰县| 蒙城县| 买车| 隆安县| 顺义区| 大新县| 新营市| 吴川市| 河池市| 云南省| 甘肃省|