国产高清网站_亚洲一区二区综合_成人久久18免费网站_国产成人久久精品激情

您現在所在的位置:首頁 >關于奇酷 > 媒體報道 > 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
国产高清网站_亚洲一区二区综合_成人久久18免费网站_国产成人久久精品激情

    <sup id="ys8cw"><kbd id="ys8cw"></kbd></sup>

    <sup id="ys8cw"><font id="ys8cw"><output id="ys8cw"></output></font></sup>

    欧美变态凌虐bdsm| 国产亚洲美州欧州综合国| 欧美日韩免费一区二区三区 | 午夜精品福利一区二区三区av | 午夜av区久久| 成人午夜伦理影院| 在线成人小视频| 中文字幕一区视频| 国模无码大尺度一区二区三区| 色婷婷av一区二区三区软件 | 欧美日韩综合不卡| 国产精品看片你懂得| 亚洲综合一区二区精品导航| 国产永久精品大片wwwapp| 欧美日韩精品一区二区在线播放| 国产精品不卡在线| 国产在线一区二区| 欧美一区二区三区视频免费| 夜夜揉揉日日人人青青一国产精品| 成人精品电影在线观看| 日韩欧美视频一区| 肉色丝袜一区二区| 欧美日韩激情一区二区| xfplay精品久久| 韩国av一区二区三区在线观看| 777xxx欧美| 中文字幕av免费专区久久| 久久成人久久爱| 日韩美女主播在线视频一区二区三区| 五月天久久比比资源色| 欧美在线视频不卡| 亚洲精品一二三| 日本久久一区二区| 亚洲女女做受ⅹxx高潮| 色狠狠一区二区三区香蕉| 久久久五月婷婷| 国产99久久久久| 国产精品久久久久一区| bt7086福利一区国产| 一区二区中文字幕在线| av电影在线观看一区| 亚洲视频免费在线| 色综合久久久网| 亚洲综合色在线| 91精品国产欧美一区二区成人| 蜜桃av一区二区三区| 精品少妇一区二区三区视频免付费| 韩国毛片一区二区三区| 欧美国产在线观看| 91美女福利视频| 香蕉久久一区二区不卡无毒影院| 欧美日韩国产小视频| 中文字幕一区二区三区乱码在线| 色综合久久综合网欧美综合网| 成人免费一区二区三区视频 | 7777精品伊人久久久大香线蕉完整版 | 欧美唯美清纯偷拍| 五月婷婷久久丁香| 欧美变态口味重另类| 国产精品中文字幕一区二区三区| 中文字幕一区二区三区色视频| 99久久综合狠狠综合久久| 亚洲午夜精品在线| 欧美精品一区二区久久婷婷| 99久久婷婷国产综合精品电影| 亚洲国产一区二区a毛片| 日韩一区二区三| 成人午夜精品一区二区三区| 亚洲一区影音先锋| 欧美精品一区在线观看| 99久久国产免费看| 夜夜精品视频一区二区| 精品成人一区二区三区| 91丝袜呻吟高潮美腿白嫩在线观看| 婷婷丁香久久五月婷婷| 国产欧美日韩中文久久| 精品视频1区2区| 国产麻豆精品95视频| 亚洲国产日产av| 国产偷国产偷精品高清尤物| 欧美日韩精品福利| 不卡的电影网站| 激情六月婷婷综合| 国产亚洲欧美激情| 欧美一区二区三区在线| 91视频www| 国产ts人妖一区二区| 五月天亚洲精品| 亚洲精品少妇30p| 欧美一区二区三区人| 色噜噜狠狠一区二区三区果冻| 国产自产视频一区二区三区| 午夜精品久久久久久久99樱桃| 精品国产乱码久久久久久影片| 欧美日韩免费视频| av亚洲精华国产精华精华| 久久国产尿小便嘘嘘尿| 五月激情综合网| 亚洲精品乱码久久久久久黑人 | 大尺度一区二区| 美女一区二区在线观看| 一区二区高清在线| 精品久久久久久久人人人人传媒| 欧美日韩美少妇| 在线观看日韩国产| 99国产精品久久久久久久久久久 | 欧美一区二区在线免费观看| 色婷婷av一区二区三区之一色屋| 大桥未久av一区二区三区中文| 国产一区在线观看视频| 久久国产麻豆精品| 麻豆一区二区三| 美国欧美日韩国产在线播放| 五月婷婷欧美视频| 亚洲第一在线综合网站| 亚洲动漫第一页| 日本va欧美va瓶| 日韩电影在线一区二区三区| 国产一区二区三区| 国产精品资源网| 蜜桃久久久久久| 午夜影院久久久| 蜜臀91精品一区二区三区| 亚洲免费色视频| 青青草成人在线观看| 老司机午夜精品| 国产精品一二三区在线| 国产成人av一区| 色8久久人人97超碰香蕉987| 欧美系列日韩一区| a4yy欧美一区二区三区| 欧美亚洲国产bt| 日韩欧美一二三四区| 26uuu国产电影一区二区| 亚洲四区在线观看| 亚洲国产一区二区三区| 日本vs亚洲vs韩国一区三区 | 国产亚洲精品超碰| 亚洲图片你懂的| 日韩国产在线一| 99久久99久久免费精品蜜臀| 精品视频资源站| 久久免费午夜影院| 最新国产の精品合集bt伙计| 日本成人超碰在线观看| 国产91精品一区二区麻豆网站| 91蝌蚪porny成人天涯| 欧美高清性hdvideosex| 久久一区二区三区国产精品| 视频一区欧美精品| 国产成人在线视频免费播放| 欧洲av在线精品| 亚洲精品一区二区精华| 天天综合色天天综合色h| 国产黄色91视频| 欧美理论电影在线| 国产免费久久精品| 中文字幕制服丝袜一区二区三区 | 国产三级三级三级精品8ⅰ区| 亚洲第一成人在线| 国产成人免费网站| 欧美性猛交xxxxxx富婆| 久久―日本道色综合久久| 亚洲欧洲精品一区二区三区| 久久国产精品无码网站| 91丨porny丨户外露出| 精品国产自在久精品国产| 一区二区三区在线免费| 91天堂素人约啪| 久久久久99精品一区| 亚洲v中文字幕| 成人做爰69片免费看网站| 欧美成人三级电影在线| 夜夜亚洲天天久久| 成人国产在线观看| 精品国产乱码久久久久久老虎| 婷婷国产在线综合| 在线观看视频欧美| 综合久久国产九一剧情麻豆| 国产在线精品一区二区三区不卡 | 精品午夜一区二区三区在线观看| 91.com在线观看| 亚洲一区在线观看免费观看电影高清| 成人丝袜高跟foot| 亚洲精品一区二区三区精华液| 国产三级欧美三级日产三级99| 国产成人免费av在线| 精品日韩一区二区三区免费视频| 日韩高清在线观看| 精品视频一区二区不卡| 日韩二区三区在线观看| 欧美人妖巨大在线| 婷婷综合在线观看| 欧美老女人第四色| 极品少妇一区二区| 欧美本精品男人aⅴ天堂| 欧美96一区二区免费视频| 在线影院国内精品| 日产国产高清一区二区三区| 91麻豆精品国产91久久久使用方法|