2016-06-13 50 views
1

ここに私は3ゲームを接続するためのコードを持っています。残りのゲームのコーディングを終了するには、最初にプレイするプレイヤーを決定するループを修正する必要があります。ループがランダムにプレイヤーを選択すると、トークンはブリットされますが、ランダムな関数が実行され続けることを意味するプレーヤートークンの両方がブリッジされます。一度実行するように修正するにはどうすればよいですか。ありがとう!ランダムモジュールの助けを借りて

import pygame, sys, random 
from pygame.locals import* 

#FPS 
FPS =7 
fpsClock = pygame.time.Clock() 

#Display 
DISPLAYSURF=pygame.display.set_mode((850, 725), 0, 32) 
pygame.display.set_caption('Connect 3~Emoji Edition') 


#Colors 
WHITE=(255, 255, 255) 

#Players 
Player1='P1' 
Player2='P2' 


#Images 

#Keyboard 
Board=pygame.image.load('Keyboard.png') 
Boardx=45 
Boardy=200 


#Token1 
Token1=pygame.image.load('PoopEMJ.png') 
Token1=pygame.transform.scale(Token1, (90, 90)) 
Token1x=375 
Token1y=215 


#Token2 
Token2=pygame.image.load('LaughingEMJ.png') 
Token2=pygame.transform.scale(Token2, (90, 90)) 
Token2x=375 
Token2y=215 


while True: 
    DISPLAYSURF.fill(WHITE) 
    DISPLAYSURF.blit(Board,(Boardx, Boardy)) 


#Randomly selects players *HELP* 
    Turn='Player' 
    if random.randint(0, 1) == 0: 
     Turn = Player1 
     DISPLAYSURF.blit(Token1,(Token1x, Token1y)) 

    else: 
     Turn = Player2 
     DISPLAYSURF.blit(Token2,(Token2x, Token2y)) 


    for event in pygame.event.get(): 
     if event.type==QUIT: 
      pygame.quit() 
      sys.exit() 
    pygame.display.update() 
+0

whileループから抜け出す 'break'文はどこにありますか?代わりに、 'Turn'が' Player1'か 'Player2'かどうかをテストするif文にif-elseを入れてください。 – Evert

答えて

0

ループをランダムに選択するコードをWhile Trueループに入れました。 これは、常に新しいランダムプレイヤーを選択し、それを画面にblitすることを意味します。最後のプレイヤーがターンを終了したとき、またはゲームの開始時に新しいランダムプレイヤーを選択する必要があります。

関連する問題