2013-11-29 16 views
0

我正在用Python創建一個交易遊戲,並且想知道如何在不暫停遊戲循環的情況下實現輪流。我知道我將不得不改變運動的實施方式,但我會怎麼做?如何在仍然執行主循環的同時執行轉彎?

注:代碼可以在這裏達到了(可能是舊):http://pastebin.com/rZbCXk5i

+0

我會使用線程,你試過嗎? – Curious

+0

「執行輪到」是什麼意思?你希望用戶能夠通過使用箭頭鍵來旋轉他的方向,並且繼續向前移動,而不是按每個按鍵的方向移動? – abarnert

+0

@abarnert沒有轉身,只有一個人可以在一次移動,如果它不輪到你可以去,就像一個棋盤遊戲 – Serial

回答

2

這通常是一種叫做game state machine

那是什麼,是非常簡單的完成。我可以給你一個例子。

def main_game_loop(): 
    if state == "player_turn": 
     # logic for player's turn 
    elif state == "enemy_turn": 
     # logic for enemy's turn 
    # they can also be used for other things, such as where you are in the game 
    elif state == "paused": 
     # pause logic etc etc 
+0

+1。然而,在每個玩家回合的邏輯結束時,你應該確保你改變了遊戲的狀態,即回合。 –