精品久久久久久久久久久院品网_男女男精品视频_日韩**一区毛片_在线免费不卡电影_亚洲少妇屁股交4_久久国内精品视频_日韩一区二区三免费高清_亚洲成人手机在线_91看片淫黄大片一级在线观看_中文字幕亚洲在_日本一区二区在线不卡_欧美酷刑日本凌虐凌虐_理论电影国产精品_国产精品视频yy9299一区_99久久精品免费观看_国产精品久久三

您現在所在的位置:首頁 >關于奇酷 > 媒體報道 > Python版羊了個羊,代碼不到100行

Python版羊了個羊,代碼不到100行

來源:奇酷教育 發表于:

Python版羊了個羊,代碼不到100行

  Python版羊了個羊,代碼也很簡單,一共不到100行。代碼已開源:
 
  python666.cn/c/8
 
 
  1.
 
  游戲用了 pygame-zero 這個庫(所以才能這么少的代碼實現),運行前需要安裝 pgzero 庫:
 
  pip install pgzero
 ?。ɑ蛘咄ㄟ^ IDE 安裝)
 
 
  2.
 
  運行時需要帶上項目里的 images 和 music 文件夾(你可以替換里面的圖片和音樂)
 
 
  3.
 
  每一張牌是一個 Actor 對象(相當于一般游戲開發中的精靈類),具有種類(12種各12張)、層級、狀態(不可點/可點/已收集)等屬性。
 
  開局時隨機打亂后擺放,根據種類顯示不同圖片。
 
  除了最上層的牌可點,其余均不可點。
 
  # 初始化牌組,12*12張牌隨機打亂
  ts = list(range(1, 13))*12
  random.shuffle(ts)
  n = 0
  for k in range(7):    # 7層
      for i in range(7-k):    #每層減1行
          for j in range(7-k):
              t = ts[n]        #獲取排種類
              n += 1
              tile = Actor(f'tile{t}')       #使用tileX圖片創建Actor對象
              tile.pos = 120 + (k * 0.5 + j) * tile.width, 100 + (k * 0.5 + i) * tile.height * 0.9    #設定位置
              tile.tag = t            #記錄種類
              tile.layer = k          #記錄層級
              tile.status = 1 if k == 6 else 0        #除了最頂層,狀態都設置為0(不可點)這里是個簡化實現
              tiles.append(tile)
 
  4.
 
  判斷鼠標點擊的位置是否處于某張可點的牌內,是的話就從所有牌列表中移除,加到下方牌堆列表里。
 
  然后遍歷與這張牌有重疊的下一層牌,對于每張下層牌,反過來檢查是否有其他上層牌覆蓋它,如果沒有,就把它變成可點。
 
  for tile in reversed(tiles):    #逆序循環是為了先判斷上方的牌,如果點擊了就直接跳出,避免重復判定
      if tile.status == 1 and tile.collidepoint(pos):
          # 狀態1可點,并且鼠標在范圍內
          tile.status = 2
          tiles.remove(tile)
          diff = [t for t in docks if t.tag != tile.tag]    #獲取牌堆內不相同的牌
          if len(docks) - len(diff) < 2:    #如果相同的牌數量<2,就加進牌堆
              docks.append(tile)
          else:             #否則用不相同的牌替換牌堆(即消除相同的牌)
              docks = diff
          for down in tiles:      #遍歷所有的牌
              if down.layer == tile.layer - 1 and down.colliderect(tile):   #如果在此牌的下一層,并且有重疊
                  for up in tiles:      #那就再反過來判斷這種被覆蓋的牌,是否還有其他牌覆蓋它
                      if up.layer == down.layer + 1 and up.colliderect(down):     #如果有就跳出
                          break
                  else:      #如果全都沒有,說明它變成了可點狀態
                      down.status = 1
          return
 
  5.
 
  下方牌堆達到7張為失敗,上方沒有剩牌則為勝利
 
  # 達到7張,失敗
  if len(docks) >= 7:
      screen.blit('end', (0, 0))
  # 沒有剩牌,勝利
  if len(tiles) == 0:
      screen.blit('win', (0, 0))
 
  6.
 
  本demo距離《羊了個羊》尚有改進空間,有興趣的小伙伴可自行嘗試擴展,包括但不限于:
 
  道具功能
 
  增加收牌的動畫效果(可以用 pgzero 提供的 animate 方法)
 
  更多的關卡布局
 
  打包成exe
 
  游戲排行榜
 
  當然還有游戲最最核心的部分:觀看廣告
 
  代碼已開源:
  python666.cn/c/8
精品久久久久久久久久久院品网_男女男精品视频_日韩**一区毛片_在线免费不卡电影_亚洲少妇屁股交4_久久国内精品视频_日韩一区二区三免费高清_亚洲成人手机在线_91看片淫黄大片一级在线观看_中文字幕亚洲在_日本一区二区在线不卡_欧美酷刑日本凌虐凌虐_理论电影国产精品_国产精品视频yy9299一区_99久久精品免费观看_国产精品久久三
中文字幕av免费专区久久| 国产一区二区三区av电影 | 91免费观看| 成人午夜精品一区二区三区| 国产在线不卡一区| 成人av在线影院| 91久久国产自产拍夜夜嗨| 成人精品一二区| 久久久久久九九九九| 日韩欧美一区二区三区四区 | 精品视频导航| 午夜视频久久久| 欧美午夜精品久久久久久超碰 | 2017欧美狠狠色| 国产精品久久一卡二卡| 综合久久久久久| 婷婷综合久久一区二区三区| 久久国产精品99久久人人澡| 成人午夜在线视频| 国产伦精品一区二区三区| 视频一区视频二区视频三区高| 日本乱码高清不卡字幕| 欧美一级高清片在线观看| 国产欧美日韩综合精品一区二区| 亚洲精品国久久99热| 青青国产91久久久久久| 不卡电影一区二区三区| 国产精品国产三级国产专区53| 日本高清不卡一区二区三| 91成人免费在线| 久久五月婷婷丁香社区| 一区二区在线观看免费| 麻豆成人免费电影| 97国产一区二区| 亚洲在线欧美| 久久天堂av综合合色蜜桃网| 亚洲黄色录像片| 国产91在线|亚洲| 久久青青草原| 4438x成人网最大色成网站| 中文字幕一区二区三| 韩国av一区二区三区| 精品一卡二卡三卡四卡日本乱码| 欧美性一二三区| 国产精品乱码一区二三区小蝌蚪| 免费在线观看不卡| 成人91免费视频| 欧美日韩另类一区| 国产精品久久久久久久久久久免费看| 免费在线欧美视频| 国产伦精品一区二区三区视频免费| 欧美在线一区二区三区| 国产精品二三区| 国产福利91精品一区二区三区| 精品一区久久久| 欧美丰满一区二区免费视频| 亚洲欧美日韩久久| 97国产一区二区| 欧洲亚洲国产日韩| 亚洲品质自拍视频网站| 99综合电影在线视频| 91搞黄在线观看| 亚洲天堂免费在线观看视频| 国产99久久久国产精品潘金| 一区二区三视频| 中文字幕亚洲一区二区va在线| 国产精品原创巨作av| 一区二区三区偷拍| 亚洲人成精品久久久久久| 99热99精品| 欧美一区二区三区播放老司机| 午夜精品久久一牛影视| 精品国产乱码久久久久久久软件| 91精品国产综合久久精品图片 | 日韩视频在线播放| 国产精品萝li| 99久久久精品| 91精品国产手机| 久久精品国产网站| 特级西西444www大精品视频| 中文字幕一区二区三区在线观看| 成人一区二区三区中文字幕| 欧美在线观看一区| 亚洲一级在线观看| 久久精品ww人人做人人爽| 精品国产网站在线观看| 国产美女视频91| 欧美日本精品一区二区三区| 奇米影视一区二区三区小说| 手机在线观看国产精品| 日韩一区欧美小说| 国产在线观看一区| 欧美国产日产图区| 成人一区二区三区四区| 久久久美女毛片| 91香蕉国产在线观看软件| 日韩午夜在线影院| 成人小视频在线| 精品黑人一区二区三区久久| 夫妻av一区二区| 91麻豆精品国产自产在线观看一区| 免费在线一区观看| 日本高清视频一区二区| 日韩av成人高清| 在线观看日韩高清av| 久久爱另类一区二区小说| 欧美色综合久久| 国产精品一级片| 欧美zozozo| 91网上在线视频| 国产精品理论片在线观看| 黄色小网站91| 亚洲狠狠丁香婷婷综合久久久| 日韩亚洲视频在线| 日韩国产一区二| 欧洲生活片亚洲生活在线观看| 久久精品国产一区二区三区免费看 | 亚洲自拍偷拍av| 视频一区二区综合| 奇米一区二区三区av| 欧美主播一区二区三区| 国产一区二区在线观看免费| 日韩一区二区三免费高清| 91亚洲国产成人精品一区二区三| 国产欧美日韩一区二区三区在线观看| 国产一区二区不卡视频在线观看| 亚洲黄色性网站| 欧美最猛黑人xxxxx猛交| 国产精品18久久久久久vr| 久久综合九色综合欧美98| 精品久久久久久亚洲| 秋霞av亚洲一区二区三| 欧美一区二区免费视频| 成人午夜影院在线观看| 亚洲午夜电影在线| 欧美日韩成人综合在线一区二区| 成人国产精品免费观看视频| 国产精品久久久久久久久免费丝袜 | 亚洲色图清纯唯美| 一区一区视频| 国产曰批免费观看久久久| 2023国产精华国产精品| 欧美福利精品| 国产九色精品成人porny| 国产精品美日韩| 91福利国产成人精品照片| 粉嫩av一区二区三区在线播放 | 蜜桃传媒一区二区| 日本aⅴ精品一区二区三区 | 亚洲精品一线二线三线无人区| 春色成人在线视频| 天堂久久一区二区三区| 精品处破学生在线二十三| 日韩欧美在线观看强乱免费| 国产suv精品一区二区883| a级国产乱理论片在线观看99| 五月天丁香久久| 精品国内二区三区| 亚洲欧洲一二三| 波波电影院一区二区三区| 亚洲激情在线激情| 欧美一区二区久久久| 欧美一区观看| 国产日韩av一区| 在线国产99| 国产精品一区二区三区观看| 久久99热99| 亚洲精品免费看| 精品国产人成亚洲区| 一本色道久久综合亚洲91| 国产精成人品localhost| 国产麻豆精品一区二区| 亚洲蜜桃精久久久久久久| 欧美一级精品在线| 亚洲午夜精品久久| 国产精品一区二区在线观看| 国产一区二区福利视频| 玉足女爽爽91| 久久精品一区二区| 欧美精品一卡两卡| 手机看片福利永久国产日韩| 91免费视频网址| 精品一区二区日韩| 亚洲午夜免费电影| 欧美激情一区二区三区| 欧美一级艳片视频免费观看| 亚洲图片小说在线| 久久福利电影| 99re视频这里只有精品| 精彩视频一区二区三区| 亚洲最新视频在线播放| 久久久夜色精品亚洲| 日韩亚洲电影在线| 欧美色偷偷大香| 色综合天天综合网天天狠天天 | 欧美日韩国产首页| 亚洲精品影院| 日本福利一区二区三区| 好吊色欧美一区二区三区| 91丨九色丨尤物|