Dragon Game

SetUp

from random import seed; seed(0)
from dragon import Dragon

Create

  • Smok przy tworzeniu ma nazwę

  • Smok przy tworzeniu podnosi błąd jeżeli nie ma nazwy

Stwórz smoka o nazwie "Wawelski":

dragon = Dragon('Wawelski')

Smok przy tworzeniu wyświetla błąd jeżeli nie ma imienia:

dragon = Dragon()
Traceback (most recent call last):
TypeError: Dragon.__init__() missing 1 required positional argument: 'name'

Health

  • Smok przy tworzeniu ma losowe punkty życia z zakresu 50 do 100

  • Smok w trakcie gry może otrzymywać obrażenia

  • Smok w trakcie gry ginie, gdy punkty życia spadną do lub poniżej zera

Ustawianie zakresu:

Dragon.HEALTH_MIN = 50
Dragon.HEALTH_MAX = 100

Smok przy tworzeniu ma losowe punkty życia:

dragon = Dragon('Wawelski')
dragon.health
98

Zadaj X obrażeń smokowi:

dragon.take_damage(10)
dragon.take_damage(20)
dragon.take_damage(30)
dragon.take_damage(40)
dragon.take_damage(50)

Smok w trakcie gry ginie, gdy punkty życia spadną do lub poniżej zera:

dragon = Dragon('Wawelski')
dragon.health = 0
dragon.is_dead()
True
dragon = Dragon('Wawelski')
dragon.health = -1
dragon.is_dead()
True

Position

  • Smok przy tworzeniu może mieć ustawioną pozycję na ekranie

  • Smok w trakcie gry może zwrócić pozycję którą zajmuje

  • Smok w trakcie gry może być ustawiony w dowolne miejsce ekranu

  • Smok w trakcie gry może być przesuwany w prawo o zadaną wartość

  • Smok w trakcie gry może być przesuwany w lewo o zadaną wartość

  • Smok w trakcie gry może być przesuwany w dół o zadaną wartość

  • Smok w trakcie gry może być przesuwany do góry o zadaną wartość

  • Smok w trakcie gry może być jednocześnie przesuwany horyzontalnie (w lewo, w prawo)

  • Smok w trakcie gry może być jednocześnie przesuwany wertykalnie (w górę i w dół)

  • Smok w trakcie gry może być jednocześnie przesuwany dookólnie (w lewo, w prawo, w górę i w dół)

Ustaw inicjalną pozycję smoka na x=50, y=100:

dragon = Dragon('Wawelski', position_x=50, position_y=100)

Pobierz aktualną pozycję:

dragon.get_position()
(50, 100)

Ustaw nową pozycję na x=10, y=20:

dragon.set_position(x=10, y=20)

Przesuń smoka w lewo o 10 i w dół o 20:

dragon.change_position(left=10, down=20)

Przesuń smoka w lewo o 10 i w prawo o 15:

dragon.change_position(left=10, right=15)

Przesuń smoka w prawo o 15 i w górę o 5:

dragon.change_position(right=15, up=5)

Przesuń smoka w dół o 5:

dragon.change_position(down=5)

Damage

  • Smok w trakcie gry może zadawać losowe obrażenia z przedziału od 5 do 20

dmg = dragon.make_damage()