Odbicie z rozmiarem postaci

Krawędzie - Gry w Pythonie - wstęp (Python)

Duch z poprzedniego przykładu chowa się do połowy za krawędzią, bo sprawdzamy jego środek. Brzeg postaci jest pół rozmiaru dalej: prawy brzeg to `self.x + self.size / 2`, lewy to `self.x - self.size / 2`. Gdy sprawdzamy brzegi, postać odbija się dokładnie w chwili, gdy dotknie krawędzi planszy.

class Ghost(Sprite):
  def __init__(self):
    self.image = 17
    self.color = (160, 160, 180)
    self.size = 40
    self.speed = 3

  def update(self):
    self.x = self.x + self.speed
    half = self.size / 2
    if self.x + half >= 100 or self.x - half <= -100:
      self.speed = -self.speed
      self.flip = not self.flip

world.add(Ghost())
world.start()

Ładowanie interaktywnego edytora... Jeśli się nie pojawi, włącz JavaScript.

Wszystkie lekcje kursu Gry w Pythonie - wstęp·Zaloguj się, aby zapisać postęp na koncie.