Untitled
unknown
python
3 years ago
4.4 kB
4
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) #kod do ładowania poszczegolnych etapow while True: #sprawdza na jakim bloku stoimy if blocks.test_for_block(SEA_LANTERN, pos(0, -1, 0)): #pobieramy aktualna pozycje gracza i wysylamy do funkcji pozycja = player.position() z = pozycja.get_value(Axis.Z) etap1(z) loops.pause(3000) elif blocks.test_for_block(GOLD_BLOCK, pos(0, -1, 0)): pozycja=player.position() z=pozycja.get_value(Axis.Z) etap2(z) loops.pause(3000) elif blocks.test_for_block(GLASS, pos(0, -1, 0)): pozycja=player.position() z=pozycja.get_value(Axis.Z) etap3(z) loops.pause(3000) elif blocks.test_for_block(COBBLESTONE, pos(0, -1, 0)): pozycja=player.position() z=pozycja.get_value(Axis.Z) etap4(z) loops.pause(3000) elif blocks.test_for_block(GLOWSTONE, pos(0, -1, 0)): koniec() loops.pause(3000) def etap1(z): player.say("ETAP 1!") #chronimy gracza przed nowy lvl blocks.fill(BEDROCK, world(x-10,y-1,z-5),world(x+10,y-1,z+5)) #dodajemy przegrode za graczem blocks.fill(BEDROCK, world(x-10,y,z-3),world(x+10,y+10,z-1)) #linia ładująca kolejny etap blocks.fill(GOLD_BLOCK, world(x-9,y-1,z+25),world(x+9,y-1,z+27)) #przeszkody dla 1 etapu blocks.fill(IRON_BARS, world(x-9,y-1,z+3),world(x+9,y-1,z+20)) blocks.fill(LAVA, world(x-9,y-2,z+3),world(x+9,y-2,z+20)) def etap2(z): player.say("ETAP 2") #dodajemy kolejny segment toru blocks.fill(BEDROCK, world(x-10,y-1,z-2),world(x+10,y+10,z+30),FillOperation.HOLLOW) blocks.fill(BEDROCK, world(x-10,y-1,z-5),world(x+10,y-1,z+5)) blocks.fill(BEDROCK, world(x-10,y,z-3),world(x+10,y+10,z-1)) blocks.fill(GLASS, world(x-9,y-1,z+25),world(x+9,y-1,z+27)) for i in range(11): mobs.spawn(ZOMBIE, randpos(world(x-8,y+3,z+3), world(x+8,y+3,z+20))) def etap3(z): player.say("ETAP 3") #dodajemy jednolity segment blocks.fill(BEDROCK, world(x-10,y-1,z-2),world(x+10,y+10,z+30),FillOperation.HOLLOW) #czyścimy poziome linie blocks.fill(BEDROCK, world(x-10,y-1,z-5),world(x+10,y-1,z+5)) #dodajemy przegrodę za graczem blocks.fill(BEDROCK, world(x-10,y,z-3),world(x+10,y+10,z-1)) #dodajemy pod koniec linię, która uruchomi kolejny etap blocks.fill(COBBLESTONE, world(x-9,y-1,z+25),world(x+9,y-1,z+27)) #przeszkody etapu 3 blocks.fill(DIAMOND_BLOCK, world(x-9,y-1,z+3),world(x+9,y-1,z+20)) while True: if blocks.test_for_block(DIAMOND_BLOCK, pos(0, -1, 0)): for i in range(11): mobs.spawn(PRIMED_TNT, randpos(world(x-8,y+3,z+3), world(x+8,y+3,z+20))) break def etap4(z): player.say("ETAP 4") #dodajemy jednolity segment blocks.fill(BEDROCK, world(x-10,y-1,z-2),world(x+10,y+10,z+30),FillOperation.HOLLOW) #czyścimy poziome linie blocks.fill(BEDROCK, world(x-10,y-1,z-5),world(x+10,y-1,z+5)) #dodajemy przegrodę za graczem blocks.fill(BEDROCK, world(x-10,y,z-3),world(x+10,y+10,z-1)) #dodajemy pod koniec linię, która uruchomi kolejny etap blocks.fill(GLOWSTONE, world(x-9,y-1,z+25),world(x+9,y-1,z+27)) while True: if blocks.test_for_block(BEDROCK,pos(0,-1,0)): for i in range(15): blocks.place(STONE_BRICKS, randpos(world(x-8,y+1,z+3), world(x+8,y+1,z+20))) loops.pause(10) def koniec(): player.say("WYGRAŁEŚ!") player.teleport(pos(0,0,10))
Editor is loading...