成人午夜视频全免费观看高清-秋霞福利视频一区二区三区-国产精品久久久久电影小说-亚洲不卡区三一区三区一区

python版大富翁源代碼分享-創(chuàng)新互聯(lián)

本文實例為大家分享了python版大富翁游戲的具體代碼,供大家參考,具體內(nèi)容如下

創(chuàng)新互聯(lián)是一家企業(yè)級云計算解決方案提供商,超15年IDC數(shù)據(jù)中心運(yùn)營經(jīng)驗。主營GPU顯卡服務(wù)器,站群服務(wù)器,棕樹數(shù)據(jù)中心,海外高防服務(wù)器,機(jī)柜大帶寬、租用·托管,動態(tài)撥號VPS,海外云手機(jī),海外云服務(wù)器,海外服務(wù)器租用托管等。
# -*- coding: utf-8 -*-
 
 
# code by: 物網(wǎng)141 王璞劼Khalil
# name:   理工大富翁beta2.0
# describe: 基于python的一個2D大富翁游戲
'''
1.游戲地圖為自己使用各種網(wǎng)絡(luò)素材制作;
 各種按鈕和選項,小圖標(biāo)等也是使用PS制作。
2.聲音效果主要為背景音樂和幾種游戲中音效;
3.游戲設(shè)定了兩個類:玩家和建筑
 玩家的參數(shù)和方法都在代碼中給出;
 具體有:移動方法、位置判斷方法、
  購買房屋方法、添加小房子方法、
 事件判斷方法。
4.玩家在大富翁的主要操作是投擲骰子,由隨機(jī)函數(shù)
 進(jìn)行判定然后進(jìn)行移動,進(jìn)行位置判斷,然后開始
 進(jìn)行相關(guān)的判定。
5.游戲中的按鍵有:是、否、和結(jié)束回合;
 每個按鍵由沒按下與按下兩種狀態(tài)的圖片組成,
 這個設(shè)計花費(fèi)了一定時間。
 還有 開始游戲 和 扔骰子 的兩個明暗按鈕,
 由pygame優(yōu)化后的一個函數(shù)實現(xiàn)。
6.玩家的位置與電腦重疊時會將雙方的位置進(jìn)行一定
 偏移,防止進(jìn)行覆蓋,分不清自己的位置。
7.游戲基礎(chǔ)功能有移動,購買房子,在已經(jīng)購買的房子下
 搭建新的小房子增加過路費(fèi),被收費(fèi),判斷勝負(fù)的基礎(chǔ)
 功能,此外還加入了幸運(yùn)事件:
  財神 - 免收費(fèi)一次
  衰神 - 雙倍被收費(fèi)一次
  破壞神 - 直接破壞一個建筑 無論敵我
  土地神 - 強(qiáng)占對面建筑
 這四項功能在位置處于左上角和右下角的時候會被觸發(fā),
 添加了很多游戲樂趣哦~~~ ^_^
8.游戲基于python的一個模塊pygame實現(xiàn),給我提供了很
 多快樂的時光,謝謝老師的閱覽與郭寧同學(xué)的協(xié)助答辯
 :)
'''
 
#####################準(zhǔn)備工作##################
 
# 初始化各種模塊
import pygame
import random
import sys
 
# 定義類
class Player():
  def __init__(self, image ,name , isPlayer):
    self.name = name
    self.money = 10000
    self.isGoingToMove = False 
    self.movable = True
    self.image = image
    self.position = 0 
    self.temp_position = False
    self.dice_value = 0
    self.locatedBuilding = 0
    self.showText = []
    self.isPlayer = isPlayer
    self.ownedBuildings = []
    self.isShowText = False
    self.soundPlayList = 0
    self.caishen = 0
    self.shuaishen = 0
    self.tudishen = 0
    self.pohuaishen = 0
    
  
  def judgePosition(self,buildings): # 位置判斷 返回值是所在位置的建筑
    for each in buildings:
      for every in each.location:
        if self.position == every:
          return each
          
      
      # 當(dāng)使用元組時 當(dāng)元組中只有一個元素時 發(fā)現(xiàn)該元素不可迭代 
      # 出現(xiàn)錯誤 換成列表后解決
      ''' 
      try:
        for every in each.location:
          if self.position == every:
            print(each.name)
      except:
        if self.position == every:
          print(each.name)
      '''
      
  def buyaBuilding(self,isPressYes):  # 購買方法
    if isPressYes and self.locatedBuilding.owner != self.name:
      self.locatedBuilding.owner = self.name
      self.locatedBuilding.wasBought = True
      self.ownedBuildings.append(self.locatedBuilding)
      self.money -= self.locatedBuilding.price
      self.showText = [self.name + '購買了' + self.locatedBuilding.name + '!']
      self.soundPlayList = 1
      return True
    else:
      return False
    
     
      
  def addaHouse(self,isPressYes): # 在建筑物上添加一個房子
    try:
      if isPressYes and self.locatedBuilding.owner == self.name:
        self.locatedBuilding.builtRoom += 1
        self.money -= self.locatedBuilding.payment
        self.showText = [self.name + '在' + self.locatedBuilding.name + '上!','蓋了一座房子!',\
                '有%d' % self.locatedBuilding.builtRoom + '個房子了!',\
                "它的過路費(fèi)是%d" % (self.locatedBuilding.payment * \
                        (self.locatedBuilding.builtRoom + 1)) ]
        self.soundPlayList = 2
        return True
      else:
        return False
    except:
      pass
  
  def move(self,buildings,allplayers):  # 移動方法 返回值是所在的建筑位置
    self.dice_value = random.randint(1,6)
    self.position += self.dice_value
    if self.position >= 16:
      self.position -= 16
    self.locatedBuilding = self.judgePosition(buildings)
    self.isShowText = True
    return self.eventInPosition(allplayers)
  
  
  def eventInPosition(self,allplayers):    # 判斷在建筑位置應(yīng)該發(fā)生的事件    
    building = self.locatedBuilding
    if building.name != '空地':
      if self.locatedBuilding.wasBought == False: # 未購買的時候顯示建筑的數(shù)據(jù)!
        if self.isPlayer == True:
          textLine0 = self.name +'扔出了' + '%d'% self.dice_value + '點(diǎn)!'
          textLine1 = self.name +'來到了' + building.name + '!'
          textLine2 = '購買價格:%d' % building.price
          textLine3 = '過路收費(fèi):%d' % building.payment
          textLine4 = '是否購買?'
          self.showText = [textLine0,textLine1,textLine2,textLine3,textLine4]
          return True
        else :
          self.addaHouse(not self.buyaBuilding(True))
          
        # ----- 動畫 -------
        # ----- 是否購買 ------
      elif building.owner == self.name: # 路過自己的房子開始加蓋建筑!
        if self.pohuaishen == 1:
          textLine0 = self.name + '破壞神附體!'
          textLine1 = '摧毀了自己的房子!'
          building.owner = 'no'
          building.wasBought = False
          self.showText = [textLine0,textLine1]
          self.pohuaishen = 0
        else:
          if self.isPlayer == True:
            textLine0 = self.name + '扔出了' + '%d'% self.dice_value + '點(diǎn)!'
            textLine1 = '來到了ta的'+ self.locatedBuilding.name +'!'
            textLine2 = '可以加蓋小房子!' 
            textLine3 = '加蓋收費(fèi):%d' % building.payment
            textLine4 = '是否加蓋?'
            self.showText = [textLine0,textLine1,textLine2,textLine3,textLine4]
            return True
          # ----- 動畫-------
          else:
            self.addaHouse(True)
      else:
        for each in allplayers: # 被收費(fèi)!
          if self.locatedBuilding.owner == each.name and each.name != self.name:
            if self.caishen == 1:
              textLine0 = self.name + '財神附體!'
              textLine1 = '免除過路費(fèi)%d!' % (building.payment * (building.builtRoom + 1))
              self.showText = [textLine0,textLine1]
              self.caishen = 0
            else:
              if self.tudishen == 1:
                textLine0 = self.name + '土地神附體!'
                textLine1 = '強(qiáng)占土地!'
                textLine2 = building.name + '現(xiàn)在屬于'+ self.name
                self.locatedBuilding.owner = self.name
                self.showText = [textLine0,textLine1,textLine2]
                self.tudishen = 0
              else:
                if self.pohuaishen == 1:
                  textLine0 = self.name + '破壞神附體!'
                  textLine1 = '摧毀了對手的房子!'
                  building.owner = 'no'
                  building.wasBought = False
                  self.showText = [textLine0,textLine1]
                  self.pohuaishen = 0  
                else:
                  textLine0 = self.name + '扔出了' + '%d'% self.dice_value + '點(diǎn)!'
                  textLine1 = self.name+ '來到了'+ each.name+'的:' 
                  textLine2 = building.name + ',被收費(fèi)!'
                  if self.shuaishen == 1:
                    textLine3 = '過路收費(fèi):%d*2!' % (building.payment * (building.builtRoom + 1)*2)
                    self.shuaishen = 0
                  else:
                    textLine3 = '過路收費(fèi):%d' % (building.payment * (building.builtRoom + 1))
                  textLine4 = '哦!'+ self.name +'好倒霉!'
                  self.showText = [textLine0,textLine1,textLine2,textLine3,textLine4]
                  # 收費(fèi)!
                  self.money -= building.payment * (building.builtRoom + 1)
                  each.money += building.payment * (building.builtRoom + 1)
                  self.soundPlayList = 3
                  # ----- 動畫-------
            
    else:
      # 發(fā)現(xiàn)不能處理在空地上的情況 于是使用 try & except 來解決!然后加入了幸運(yùn)事件功能!
      # 后來發(fā)現(xiàn) try except 弊端太大 找不到錯誤的根源 換為if else嵌套。。
      whichone = self.dice_value % 4
      if whichone == 0:
        self.caishen = 1
        textLine2 = '遇到了財神!'
        textLine3 = '免一次過路費(fèi)!'
      if whichone == 1:
        self.shuaishen = 1
        textLine2 = '遇到了衰神!'
        textLine3 = '過路費(fèi)加倍一次!'
      if whichone == 2:
        self.tudishen = 1
        textLine2 = '遇到了土地神!'
        textLine3 = '強(qiáng)占一次房子!'
      if whichone == 3:
        self.pohuaishen = 1
        textLine3 = '摧毀路過的房子!'
        textLine2 = '遇到了破壞神!'
      textLine0 = self.name +'扔出了' +'%d'% self.dice_value + '點(diǎn)!'
      textLine1 = '來到了運(yùn)氣地點(diǎn)!'
      self.showText = [textLine0,textLine1,textLine2,textLine3]
 
  
  
  
class Building():              # 好像所有功能都在Player類里實現(xiàn)了=_=
  def __init__(self,name,price,payment,location):
    self.name = name
    self.price = price
    self.payment = payment
    self.location = location
    self.wasBought = False        # 是否被購買
    self.builtRoom = 0          # 小房子建造的數(shù)目
    self.owner = 'no'
 
# 帶透明度的繪圖方法 by turtle 2333
def blit_alpha(target,source,location,opacity):
  x = location[0]
  y = location[1]
  temp = pygame.Surface((source.get_width(),source.get_height())).convert()
  temp.blit(target , (-x , -y))
  temp.blit(source,(0,0))
  temp.set_alpha(opacity)
  target.blit(temp,location)
 
########################主函數(shù)#########################  
 
 
def main():
  pygame.init()
  clock = pygame.time.Clock()
  
  # 初始化屏幕
  size = (1270,768)
  screen = pygame.display.set_mode(size)
  pygame.display.set_caption("理工大大富翁 - made by 王璞劼")
  
  # 讀取字體以及有關(guān)數(shù)據(jù)
  textColorInMessageBox = (141,146,152)
  white = (255,255,255)
  black = (0,0,0)
  red = (255,0,0)
  font = pygame.font.Font('resource\\font\\myfont.ttf',30)
  
  
  # 讀取資源
  backgroud = pygame.image.load("resource\\pic\\GameMap.png")
  chess = pygame.image.load("resource\\pic\\chess.png")
  chess_com = pygame.image.load("resource\\pic\\chess1.png")
  bigdice_image = pygame.image.load("resource\\pic\\dice.png").convert_alpha()
  dice_1 = pygame.image.load("resource\\pic\\dice_1.png")
  dice_2 = pygame.image.load("resource\\pic\\dice_2.png")
  dice_3 = pygame.image.load("resource\\pic\\dice_3.png")
  dice_4 = pygame.image.load("resource\\pic\\dice_4.png")
  dice_5 = pygame.image.load("resource\\pic\\dice_5.png")
  dice_6 = pygame.image.load("resource\\pic\\dice_6.png")
  dices = [dice_1,dice_2,dice_3,dice_4,dice_5,dice_6]
  yes = pygame.image.load("resource\\pic\\yes.png")
  yes2 = pygame.image.load("resource\\pic\\yes2.png")
  no = pygame.image.load("resource\\pic\\no.png")
  no2 = pygame.image.load("resource\\pic\\no2.png")
  GameStart = pygame.image.load("resource\\pic\\GameStart.png")
  StartGameButton = pygame.image.load("resource\\pic\\StartGameButton.png").convert_alpha()
  turnover = pygame.image.load("resource\\pic\\turnover.png")
  turnover2 = pygame.image.load("resource\\pic\\turnover2.png")
  shuaishen = pygame.image.load("resource\\pic\\shuaishen.png").convert_alpha()
  tudishen = pygame.image.load("resource\\pic\\tudishen.png").convert_alpha()
  caishen = pygame.image.load("resource\\pic\\caishen.png").convert_alpha()
  pohuaishen = pygame.image.load("resource\\pic\\pohuaishen.png").convert_alpha()
  
  rollDiceSound = pygame.mixer.Sound("resource\\sound\\rolldicesound.wav")
  bgm = pygame.mixer.music.load("resource\\sound\\bgm.ogg")
  throwcoin = pygame.mixer.Sound("resource\\sound\\throwcoin.wav")
  moneysound = pygame.mixer.Sound("resource\\sound\\moneysound.wav")
  aiyo = pygame.mixer.Sound("resource\\sound\\aiyo.wav")
  didong = pygame.mixer.Sound("resource\\sound\\didong.wav")
  
  # PlayList 在對象中設(shè)置應(yīng)該播放的聲音
  playList = [moneysound ,throwcoin ,aiyo]
  
  # 各種Surface的rect 
  bigdice_rect = bigdice_image.get_rect()
  bigdice_rect.left , bigdice_rect.top = 50 , 600
  yes_rect = yes.get_rect()
  yes_rect.left , yes_rect.top = 500,438 
  no_rect = no.get_rect()
  no_rect.left , no_rect.top = 630,438
  button_rect = StartGameButton.get_rect()
  button_rect.left , button_rect.top = 1003,30
  turnover_rect = turnover.get_rect()
  turnover_rect.left , turnover_rect.top = 1035,613
  
  # 實例化對象
  players = []
  computers = []
  allplayers = []
  player_1 = Player(chess , '玩家' , True )
  player_com1 = Player(chess_com , '電腦' , False )
  players.append(player_1)
  computers.append(player_com1)
  allplayers.append(player_1)
  allplayers.append(player_com1)
  
  presentPlayer = player_com1
  
  # 初始化建筑物數(shù)據(jù)
  gate = Building('大門',1000,200,[1,2])
  fountain = Building('噴泉',2000,400,[3,4])
  path = Building('小道',800,160,[5])
  library = Building('圖書館',2000,400,[6,7])
  kongdi1 = Building('空地',0,0,[8])
  classroomTen = Building('教十',1200,240,[9,10])
  classroomNine = Building('教九',1200,240,[11,12])
  resOne = Building('三餐廳',800,160,[13])
  resTwo = Building('二餐廳',800,160,[14])
  resThree = Building('一餐廳',800,160,[15])
  kongdi2 = Building('空地',0,0,[0])
  
  buildings = [gate,fountain,path,library,classroomNine,\
         classroomTen,resOne,resThree,resTwo,kongdi1,kongdi2]
  
  
  
  # 坐標(biāo)數(shù)據(jù) 同時處理坐標(biāo)數(shù)據(jù) 使之合適
  MapXYvalue = [(435.5,231.5),(509.5,231.5),(588.5,231.5),(675.5,231.5),(758.5,231.5),\
         (758.5,317.0),(758.5,405.5),(758.5,484.5),(758.5,558.5),(679.5,558.5),\
         (601.5,558.5),(518.5,556.5),(435.5,556.5),(435.5,479.5),(435.5,399.0),\
         (435.5,315.5)
         ]
  
  MapChessPosition_Player = []
  MapChessPosition_Com = []
  MapChessPosition_Original = []
  MapChessPosition_Payment = []
  
  MapMessageBoxPosition = (474.1 , 276.9)
  YesNoMessageBoxPosition = [(500,438) , (630,438)]
  StartGameButtonPosition = (1003,30)
  TurnOvwrButtonPosition = (1035,613)
  
  
        # 調(diào)整位置
  for i in range(0,16):
    MapChessPosition_Original.append((MapXYvalue[i][0]-50,MapXYvalue[i][1]-80))
    MapChessPosition_Player.append((MapXYvalue[i][0]-70,MapXYvalue[i][1]-60))
    MapChessPosition_Com.append((MapXYvalue[i][0]-30,MapXYvalue[i][1]-100))
    MapChessPosition_Payment.append((MapXYvalue[i][0]-30,MapXYvalue[i][1]-15))
    
  # 循環(huán)時所用的一些變量   
  running = True
  image_alpha = 255
  button_alpha = 255
  half_alpha = 30
  showdice = True
  showYes2 = False
  showNo2 = False
  showYes_No = False
  pressYes = False
  whetherYes_NoJudge = False
  gameStarted = False
  showButton2 = False
  
  # 播放背景音樂
  pygame.mixer.music.play(100)
  
#################進(jìn)入游戲循環(huán)!########################  
 
 
  # 循環(huán)開始! 
  while running:
    if not gameStarted:
      for event in pygame.event.get():
        if event.type == pygame.QUIT:
          sys.exit()
        
        # 明暗觸發(fā) 鼠標(biāo)位置判斷 
        if event.type == pygame.MOUSEMOTION:
          if button_rect.collidepoint(event.pos):
            button_alpha = 255  
          else:
            button_alpha = 120 
            
        if event.type == pygame.MOUSEBUTTONDOWN:
           
          if button_rect.collidepoint(event.pos): # 按下按鈕
            didong.play()           
            gameStarted = True 
      
      screen.blit(GameStart , (0,0))    
      blit_alpha(screen, StartGameButton, StartGameButtonPosition, button_alpha)
    
    
    
    if gameStarted:
    
      for event in pygame.event.get():
        if event.type == pygame.QUIT:
          sys.exit()
        
        # 明暗觸發(fā) 鼠標(biāo)位置判斷
        if event.type == pygame.MOUSEMOTION:
          if bigdice_rect.collidepoint(event.pos):
            image_alpha = 255  
          else:
            image_alpha = 190
            
        
        if event.type == pygame.MOUSEBUTTONDOWN:
          
          if bigdice_rect.collidepoint(event.pos): # 按骰子
            if presentPlayer != player_1:
              rollDiceSound.play(1, 2000)
              pygame.time.delay(2000)
              showYes_No = player_1.move(buildings,allplayers)
              whetherYes_NoJudge = showYes_No
              presentPlayer = player_1
            else:
              presentPlayer.showText = ['還沒到你的回合!']
            
          if turnover_rect.collidepoint(event.pos): # 按回合結(jié)束
            showButton2 = True
            if presentPlayer != player_com1:
              showYes_No = player_com1.move(buildings,allplayers)
              presentPlayer = player_com1
            else:
              presentPlayer.showText = ['還沒到你的回合!']              
          else:
            showButton2 = False
          
            # 不顯示Yes_No的時候不能點(diǎn)擊它們!
          if whetherYes_NoJudge == True: 
            if yes_rect.collidepoint(event.pos): # 按是否
              showYes2 = True
              
            if no_rect.collidepoint(event.pos): # 按是否
              showNo2 = True
           
        if event.type == pygame.MOUSEBUTTONUP:
          
          if turnover_rect.collidepoint(event.pos): # 按回合結(jié)束
            showButton2 = False
          
          if yes_rect.collidepoint(event.pos): # 按是否
            showYes2 = False
            showYes_No = False
            # 只有在可以判定的時候才能算按下了是 同時將判斷條件置為空
            if whetherYes_NoJudge == True:
              pressYes = True
              whetherYes_NoJudge = False
              
              
          if no_rect.collidepoint(event.pos): # 按是否
            showNo2 = False
            pressYes = False
            showYes_No = False       
            whetherYes_NoJudge = False    
      
        # 測試事件選項    
        if event.type == pygame.KEYDOWN:
          if event.key == pygame.K_w:
            showYes_No = player_1.move(buildings,allplayers)
            whetherYes_NoJudge = showYes_No
            presentPlayer = player_1
          if event.key == pygame.K_q:
            showYes_No = player_com1.move(buildings,allplayers)
            presentPlayer = player_com1
      
      
      '''for each in allplayers:
        if each.isGoingToMove == True and each.movable == True :
          showYes_No = each.move(buildings,allplayers)
          each.movable = False
          each.isGoingToMove = False'''
      '''
      allisready = True
      
      for each in allplayers:
        if each.movable == True:
          allisready = False
      
      if allisready:
        for each in allplayers:
          each.movable = True
      '''       
       
      # 購買房屋?。。。。。。?!
      
      if presentPlayer.buyaBuilding(pressYes) == True:
        pressYes = False
        
      if presentPlayer.addaHouse(pressYes) == True:
        pressYes = False    
        
      #########################################################################      
      screen.blit( backgroud , (0,0) )
      blit_alpha(screen, bigdice_image, (50, 600), image_alpha)
      
      
      textPosition = [MapMessageBoxPosition[0],MapMessageBoxPosition[1]]
      
      # 打印信息
      for each in presentPlayer.showText:
        text = font.render(each, True, white, textColorInMessageBox)
        screen.blit(text,textPosition)
        textPosition[1] += 30
      
      # 播放行動聲音
      if presentPlayer.soundPlayList != 0:
        playList[presentPlayer.soundPlayList - 1].play()
        presentPlayer.soundPlayList = 0
        
      # 在位置上顯示過路費(fèi)
      
      for i in range(1,8):
        for each in buildings:
          for every in each.location:
            if i == every:
              if each.owner == presentPlayer.name:
                text = font.render('%d' % (each.payment * (each.builtRoom + 1))\
                          , True, red)
              elif each.owner == 'no':
                text = font.render('%d' % (each.payment * (each.builtRoom + 1))\
                          , True, white)
              elif each.owner != presentPlayer.name and each.owner != 'no':
                text = font.render('%d' % (each.payment * (each.builtRoom + 1))\
                          , True, black)
              screen.blit(text,MapChessPosition_Payment[i])
      
      for i in range(9,16):
        for each in buildings:
          for every in each.location:
            if i == every:
              if each.owner == presentPlayer.name:
                text = font.render('%d' % (each.payment * (each.builtRoom + 1))\
                          , True, red)
              elif each.owner == 'no':
                text = font.render('%d' % (each.payment * (each.builtRoom + 1))\
                          , True, white)
              elif each.owner != presentPlayer.name and each.owner != 'no':
                text = font.render('%d' % (each.payment * (each.builtRoom + 1))\
                          , True, black)
              screen.blit(text,MapChessPosition_Payment[i])        
      
          
      # 打印金錢數(shù)和幸運(yùn)狀態(tài)
      
      money_1 = font.render(player_1.name +'金錢:%d' % player_1.money, True, black, white)
      screen.blit(money_1,(0,0))
      
      if player_1.pohuaishen == True:
        screen.blit(pohuaishen,(0,30))
      else:
        blit_alpha(screen, pohuaishen, (0, 30), half_alpha)
        
      if player_1.caishen == True:
        screen.blit(caishen,(55,30))
      else:
        blit_alpha(screen, caishen, (55, 30), half_alpha)
      
      if player_1.shuaishen == True:
        screen.blit(shuaishen,(110,30))
      else:
        blit_alpha(screen, shuaishen, (110, 30), half_alpha)
      
      if player_1.tudishen == True:
        screen.blit(tudishen,(165,30))
      else:
        blit_alpha(screen, tudishen, (165, 30), half_alpha)
      
    
      money_2 = font.render(player_com1.name +'金錢:%d' % player_com1.money, True, black, white)
      screen.blit(money_2,(1000,0))    
      if player_com1.pohuaishen == True:
        screen.blit(pohuaishen,(1000,30))
      else:
        blit_alpha(screen, pohuaishen, (1000, 30), half_alpha)
    
      if player_com1.caishen == True:
        screen.blit(caishen,(1055,30))
      else:
        blit_alpha(screen, caishen, (1055, 30), half_alpha)
      
      if player_com1.shuaishen == True:
        screen.blit(shuaishen,(1110,30))
      else:
        blit_alpha(screen, shuaishen, (1110, 30), half_alpha)
        
      if player_com1.tudishen == True:
        screen.blit(tudishen,(1165,30))
      else:
        blit_alpha(screen, tudishen, (1165, 30), half_alpha)
        
        
      # 放置扔出來的骰子
      if player_1.dice_value != 0 and showdice:
        screen.blit(dices[player_1.dice_value - 1],(70,450))    
      
      # 放置回合結(jié)束按鈕
      if showButton2:
        screen.blit(turnover2,TurnOvwrButtonPosition)
      else:
        screen.blit(turnover,TurnOvwrButtonPosition)
      
      # 放置是否按鈕
      if showYes_No == True:
        screen.blit(yes , YesNoMessageBoxPosition[0])
        screen.blit(no , YesNoMessageBoxPosition[1])
        
        if showYes2 == True:
          screen.blit(yes2 , YesNoMessageBoxPosition[0])
          
        if showNo2 == True:
          screen.blit(no2 , YesNoMessageBoxPosition[1])  
               
          
      # 放置玩家與電腦的位置 如果重合則挪位
      for each in players:
        for every in computers:
          if each.position == every.position:
            screen.blit(each.image,MapChessPosition_Player[each.position])
            screen.blit(every.image,MapChessPosition_Com[every.position])
            each.temp_position = True
            every.temp_position = True
            
      for each in players:
        if each.temp_position == False:
          screen.blit(each.image,MapChessPosition_Original[each.position])
          each.temp_position = True
        each.temp_position = not each.temp_position
        
         
      for every in computers:
        if every.temp_position == False:
          screen.blit(every.image,MapChessPosition_Original[every.position])
          every.temp_position = True
        every.temp_position = not every.temp_position
            
      
      # 輸贏判斷
      for each in allplayers:
        if each.money <= 0:
          font = pygame.font.Font('resource\\font\\myfont.ttf',200)
          loseText = font.render(each.name +'輸了!', True, red)
          screen.fill(black)
          screen.blit(loseText,(100,100))
          font = pygame.font.Font('resource\\font\\myfont.ttf',30)      
          pygame.time.delay(3000)
            
    # 畫面運(yùn)行
    
    pygame.display.flip()
    clock.tick(60)       # 刷新率
        
 
# 雙擊打開運(yùn)行      
if __name__ == "__main__":
  main()    

網(wǎng)站標(biāo)題:python版大富翁源代碼分享-創(chuàng)新互聯(lián)
文章位置:http://jinyejixie.com/article32/gihsc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供服務(wù)器托管、App設(shè)計Google、建站公司軟件開發(fā)、外貿(mào)建站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

外貿(mào)網(wǎng)站建設(shè)
贵州省| 贵德县| 榕江县| 白玉县| 胶州市| 武陟县| 莱芜市| 同仁县| 朝阳县| 衡东县| 永仁县| 大厂| 德庆县| 大荔县| 涿州市| 兰西县| 镇江市| 北安市| 临海市| 阜平县| 甘德县| 黎平县| 北海市| 金山区| 台南县| 灵山县| 郎溪县| 张家港市| 浦城县| 岳西县| 商都县| 秭归县| 石河子市| 鸡泽县| 丹巴县| 甘南县| 宜川县| 北辰区| 安龙县| 通道| 洮南市|