Krok 2: klucze i licznik

Duchy w zamku - Gry w Pythonie - przykłady (Python)

Dwie nowe postacie. Klucz z metodą `jump(self)` skacze w losowe miejsce na starcie i po zebraniu, a wtedy dodaje 1 do `game.keys`. `Game` to postać-napis na górze planszy: co tick odświeża `Klucze: K`.

import random

class Game(Sprite):
  def __init__(self):
    self.size = 12
    self.color = (99, 102, 241)
    self.position = (0, 88)
    self.keys = 0

  def update(self):
    self.text = f"Klucze: {self.keys}"

class Wizard(Sprite):
  def __init__(self):
    self.image = 0
    self.color = (124, 58, 237)
    self.size = 22
    self.rotate = False

  def update(self):
    if world.key('right'):
      self.x = self.x + 3
    if world.key('left'):
      self.x = self.x - 3
    if world.key('up'):
      self.y = self.y + 3
    if world.key('down'):
      self.y = self.y - 3

class Key(Sprite):
  def __init__(self):
    self.image = 42
    self.color = (202, 138, 4)
    self.size = 16
    self.jump()

  def jump(self):
    self.position = (random.randint(-90, 90), random.randint(-90, 70))

  def update(self):
    if self.touches(wizard):
      game.keys = game.keys + 1
      self.jump()

game = Game()
wizard = Wizard()
key = Key()
world.add(game)
world.add(key)
world.add(wizard)
world.start()

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

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