2013-06-22 39 views
1

我有這個使用箭頭鍵控制的精靈,但不會停留在屏幕邊界內。出於某種原因,它只停留在左端,而不是頂端,底端和右端。在窗口中保留一個精靈Pygame

這是我到目前爲止有:

if self.rect.right == screen.get_rect().right: 
    self.rect.right = self.rect.right - 10 
if self.rect.left == screen.get_rect().left: 
    self.rect.right = self.rect.right + 10 
if self.rect.top == screen.get_rect().top: 
    self.rect.top = self.rect.top - 10 
if self.rect.bottom == screen.get_rect().bottom: 
    self.rect.bottom = self.rect.bottom + 10 

回答

2

您可以使用clamp_ip,其中只要移動矩形,因爲它是其他矩形

3

這是最有可能裏面,因爲你與==比較。座標一次增加一個以上,所以它們可能會從下面跳到極限並達到更大的值。試試:

if self.rect.right > screen.get_rect().right: 
    self.rect.right = screen.get_rect().right 
...