2012-03-27 34 views
1

Code 這是我的豬小遊戲麻煩。我只把它編碼給2名球員。我運行了多個場景,似乎運行良好。 我似乎無法退出while循環我有我的退出無限循環中pygame的

我有在行#109的麻煩。

我將它設置爲中斷,但我相信它可能會從小的if語句中突破,這是我不想要的。

我想從大的突破,而環(遊戲循環)線#100

我也想用pygame的加我已創建骰子一些圖形。

我在想,如果我能保持我的代碼是,只是修改它與pygame的工作輕鬆還是我改變整個代碼pygame的工作?

我只想做一個簡單的界面 這將是與此類似:http://cs.gettysburg.edu/projects/pig/pi ...

,但我會在骰子增加,骰子的模擬滾動2D,聲音,一個雙贏的狀態圖形和聲音,並輸入,主要是鼠標切換。

有關如何執行pygame部分的任何提示非常感謝。

我已經閱讀pygame的很多教程,但我不覺得有信心得到它與我自己的遊戲工作。

我已經做了一個球反彈,但我真的不明白pygame的一些代碼是什麼意思。

我有點困惑顯示屏上VS背景

屏幕會pygame.display.set_mode((一些大小))

那麼背景將拍攝畫面的確切大小,但不太確定。

我已想出如何把屏幕上的骰子,並改變面對每半秒,但僅此而已。

回答

0

不錯的小程序。它似乎爲我工作得很好(break和while循環退出,而不是如果)。

當你玩遊戲這是一個有點混亂,因爲看到檢查,如果有人只贏了對方球員播放完畢後說到,然後你進入「持有」。也許這是什麼讓你覺得它不起作用?這可能是更好的(我不知道豬的確切規則)把支票放在「持有」上的代碼後面。

抱歉不能幫助pygame;只是想發佈說它似乎工作。

此外,如果你願意,你可以把兩個球員在陣:

players = [player1, player2] 

以及當前的播放器將是:

players[player_turn-1] 

,你可以使用相同的代碼任一玩家,複製主循環中的邏輯。因此代碼會更喜歡:

if players[player_turn-1].winner(): 
    ... 
+0

明白了現在的工作。我改變了我的check_status函數。因爲如果我繼續滾動轉向總是如此。所以我不得不爲玩家分數達到設定的分數時設置一個分隔符來強制進行假轉。然後我調用該函數。我必須趕上這名球員,如果他們贏了,如果退出並打印冠軍,其他人和以前一樣。花了一段時間纔看到它。這裏是「乾淨的」版本http://ideone.com/i9Bj2我評論了「#BELOW CHANGE」,如果您對修復它的內容感到好奇,以及是否有任何清理建議,我會改變它。 – chris 2012-03-27 04:07:25

0
#Make a Variable set it to "False". 
#= means to assign something to something. 
#== means equal to. 
#Example in a if statement if something == to something do something. 
test = False 

#This is the loop. 
while test == False: 
    #Put Code Here. 
    #Put a If Statement `enter code here`to stop loop. 
    if #Parameters: 
     test = True 
+0

請提供一些解釋,說明這是如何工作的,或者你已經修復了什麼,而不是僅僅發佈代碼片段。 – ssube 2015-04-14 15:12:15