Untitled
unknown
python
2 years ago
2.2 kB
6
Indexable
# po uruchomieniu programu pobieramy współrzędne gracza które #będą wykorzystane w całym projekcie, będziemy jedynie aktualizować współrzędną "z" gracza żeby odpowiednio dobudowywać etapy pozycja=player.position() x=pozycja.get_value(Axis.X) y=pozycja.get_value(Axis.Y) z=pozycja.get_value(Axis.Z) #funkcja ta przygotowuje pierwszy segment toru def tor(): #Tworzymy bryłe toru ze skały macierzystej blocks.fill(BEDROCK, world(x-10,y-1,z-2),world(x+10,y+10,z+35),FillOperation.HOLLOW) #pierwsza linia uruchamiająca etap 1 blocks.fill(SEA_LANTERN, world(x-9,y-1,z+3),world(x+9,y-1,z+5)) #gameplay.set_game_mode(SURVIVAL, mobs.target(NEAREST_PLAYER)) player.on_chat("start", tor) # petla odpowiedzialna za dzialanie toru przeszkod while True: # petla 'zawsze' if blocks.test_for_block(SEA_LANTERN, pos(0, -1, 0)): # instrukcja warunkowa # wykonanie instrukcji jesli warunek jest spelniony 'prawda'/True position = player.position() # zmienna pozycji gracza z = position.get_value(Axis.Z) # wczytuje zmienna z zeby wiedziec gdzie jest gracz etap1(z) # funkcja ladujaca etap 1 loops.pause(1000) def etap1(z): player.say('ETAP 1 START!!!') # 2. Wyczyszczenie poziomej linii która załadowała bieżący etap blocks.fill(BEDROCK, world(x-9, y-1, z-5), world(x+9, y-1, z+5)) # 3. Dodanie przegrody za graczem blocks.fill(BEDROCK, world(x-9, y-1, z-5), world(x+9, y+10, z-1)) # 4. Dodanie kolejnej linii ładującej następny level blocks.fill(GOLD_BLOCK, world(x-9, y-1, z+25), world(x+9, y-1, z+27)) # 5. Zaprojektowanie przeszkody na danym etapie # IRON BARS blocks.fill(IRON_BARS, world(x-9, y-1, z+3), world(x+9, y-1, z+22)) # LAVA POD IRON BARS blocks.fill(LAVA, world(x-9, y-2, z+3), world(x+9, y-2, z+22)) mobs.give(mobs.target(NEAREST_PLAYER), DIAMOND_SWORD, 1) # daje graczowi miecz while True: if blocks.test_for_block(IRON_BARS, pos(0, -1, 0)): # sprawdzam czy przechodzi poziom for i in range(6): mobs.spawn(CREEPER, randpos(world(x-9, y, z+3), world(x+9, y+2, z+22)))
Editor is loading...