#MINECRAFT
# Pobieramy kordy gracza. Wykorzystaj zmienne x, y, z do wykonywania poniższych zadań.
pozycja=player.position()
x=pozycja.get_value(Axis.X)
y=pozycja.get_value(Axis.Y)
z=pozycja.get_value(Axis.Z)
# Zadanie 1
# Stwórz funkcję o nazwie podwodnySwiat, którą wywołasz komendą aquaman na czacie.
# Po wywołaniu funkcji gracz powinien zostać zamknięty w wielkim zbiorniku stworzonym ze szkła (GLASS) z wodą (WATER).
# Wykorzystaj funkcję blocks.fill().
def podwodnySwiat():
#Tworzymy konstrukcję szklaną
blocks.fill(GLASS, world(x-10,y-10,z-10),world(x+10,y+10,z+10))
#nalewamy wodę
blocks.fill(WATER, world(x-9,y-9,z-9),world(x+9,y+9,z+9))
utopiec(10)
ekwipunek()
rafa()
player.on_chat("aquaman",podwodnySwiat)
# Zadanie 2
# Stwórz funkcję o nazwie utopiec z parametrem liczbaUtopcow i wywołaj ją w funkcji podwodnySwiat. Wywołując funkcję podajemy liczbę utopców, które chcemy zespawnować.
# Parametr wykorzystamy w pętli for w funkcji in range()
# Utopiec to DROWNED
def utopiec(liczbaUtopcow): # np utopiec(10)
for i in range(liczbaUtopcow):
mobs.spawn(DROWNED, randpos(world(x-9,y-9,z-9), world(x+9,y+9,z+9)))
# Zadanie 3
# Stwórz funkcję ekwipunek, która po wywołaniu w funkcji podwodnySwiat
# doda trójząb, który świetnie sprawdzi się w walce pod wodą.
# Dodaj również zaklęcia, które ulepszą naszą broń.
# Unbreaking poziom3 - zwiększa wytrzymałość broni.
# Riptide poziom3 - podczas deszczu lub w wodzie użycie trójzębu zapewnia szybki transport.
# Loyalty poziom 3 - podczas rzucenia trójzębem w przeciwnika nasza broń wraca do gracza.
# Użyj takich funkcji jak mobs.give() oraz mobs.enchant().
# Trójząb to TRIDENT.
# Możesz dodać też inne przedmioty przydatne w walce pod wodą.
def ekwipunek():
mobs.give(mobs.target(NEAREST_PLAYER), TRIDENT, 1)
mobs.enchant(mobs.target(NEAREST_PLAYER), "Unbreaking", 3)
mobs.enchant(mobs.target(NEAREST_PLAYER), "Riptide", 1)
# Zadanie 4
# Stwórz funkcję o nazwie rafa i wywołaj ją w funkcji podwodnySwiat po utworzeniu zbiornika z wodą.
# Użyj polecenia blocks.place oraz randpos() żeby dodać różne rafy w losowym miejscu, wykorzystaj również pętlę for.
# Nazwy raf: TUBE_CORAL, BRAIN_CORAL, BUBBLE_CORAL, FIRE_CORAL, BUBBLE_CORAL_FAN
# Do wykonania tego zadania możesz wybrać też listę.
# W funkcji rafa stwórz listę o nazwie rafy i dodaj do niej parę raf różnego rodzaju.
# Za pomocą pętli 2 pętli for wybierz z listy rafy i umieść je w losowych miejscach w wodzie.
def rafa():
rafy=[TUBE_CORAL,BRAIN_CORAL,BUBBLE_CORAL,FIRE_CORAL,BUBBLE_CORAL_FAN]
for i in range(len(rafy)):
for j in range(10):
blocks.place(rafy[i],randpos(world(x-9,y-9,z-9), world(x+9,y+9,z+9)))