# ==== STARTER: INICJALIZACJA I FUNKCJA TOR ==== # Pobieramy współrzędne gracza na starcie programu # x, y, z będą używane w CAŁYM projekcie # Będziemy tylko aktualizować "z" gracza przy każdym kolejnym etapie pozycja = player.position() x = pozycja.get_value(Axis.X) y = pozycja.get_value(Axis.Y) z = pozycja.get_value(Axis.Z) # Funkcja przygotowująca pierwszy pusty segment toru def tor(): # Tworzymy bryłę ze skały macierzystej — ściany, sufit i podłoga toru # HOLLOW = pusta w środku — gracz może chodzić wewnątrz blocks.fill(BEDROCK, world(x-10, y-1, z-2), world(x+10, y+10, z+35), FillOperation.HOLLOW) # Pierwsza linia aktywacyjna — latarnie morskie, które gracz musi zniszczyć # Zniszczenie tej linii wczyta etap 1 blocks.fill(SEA_LANTERN, world(x-9, y-1, z+3), world(x+9, y-1, z+5)) # Teleport gracza do pozycji startowej i czyszczenie ekwipunku player.teleport(world(x, y, z)) player.execute("/clear") player.on_chat("start", tor) while True: if blocks.test_for_block(IRON_BARS, pos(0, -1, 0)): mobs.give(mobs.target(NEAREST_PLAYER), DIAMOND_AXE, 1) break def etap1(z): player.say("ETAP 1") blocks.fill(BEDROCK, world(x-10, y-1, z-2), world(x+10, y+10, z+35), FillOperation.REPLACE) pass def zniszczene_bloku_e1(): pozycja = player.position() z = pozycja.get_value(Axis.Z) etap1(z) blocks.on_block_broken(SEA_LANTERN, zniszczene_bloku_e1) ### ===== TO NA DOLE NIE PISZEMY ==== #### # Instrukcja warunkowa if - wykonuje kod TYLKO gdy warunek jest prawdziwy # Schemat: # if WARUNEK: # kod_gdy_prawda ← MUSI mieć wcięcie! # else: # kod_gdy_fałsz ← opcjonalne