爲了學習的目的,我正在製作一個Pong克隆,並且需要從屏幕中間移動球(當它經過一個槳時發送到那裏),當鼠標被按下。我試過下面的代碼,但它什麼都不做,所以我可能不理解語法。儘量保持它儘可能簡單,並解釋它,我寧願沒有50行代碼(我想了解我在這裏使用的一切)。我認爲這是所有相關的代碼,如果不是這樣,對不起。謝謝。在Python中按下鼠標時移動一個精靈
def middle(self):
"""Restart the ball in the centre, waiting for mouse click. """
# puts ball stationary in the middle of the screen
self.x = games.screen.width/2
self.y = games.screen.height/2
self.dy = 0
self.dx = 0
# moves the ball if mouse is pressed
if games.mouse.is_pressed(1):
self.dx = -3
你是否在使用任何一種類似pygame的庫?在中間調用()期間,鼠標被按下的檢查也會發生一次。如果你在那一刻沒有按下鼠標,球就不會移動。 – arunkumar
我正在使用livewires。我將代碼移到了Ball的update()函數中,但是當我單擊鼠標時它仍然沒有任何作用。我確信我不是問是否按照正確方式按下了鼠標。 – Matt
很可能。 Livewires似乎沒有通過在線文檔的方式,所以我無法查找它。但看看他們是否有一個鼠標事件處理程序的東西。在這種情況下,您可以嘗試在鼠標單擊事件處理程序中設置「self.dx = -3」。 – arunkumar