Untitled
unknown
python
3 years ago
5.4 kB
3
Indexable
# funkcja tworząca zamek # minimalna długość murów to 20 przy mniejszych wartościach schody nie generują się poprawnie # liczba określająca długość murów musi być PARZYSTA żeby wierzchołki się poprawnie wygenerowały # zalecana wysokość muru to 4, tylko wtedy creppery będą mogły się aktywować i wybuchnąć def zamekKonstruktor(mur, wysokosc): dlMuru = mur dlMuruKopia = dlMuru / 2 wysokoscMuru = wysokosc builder.teleport_to(pos(-5, 0, 5)) builder.set_origin() builder.mark() i = 0 # pętla tworząca 3 warstwowe mury dookoła gracza while i < 3: j = 0 while j < 4: builder.move(FORWARD, dlMuru) builder.raise_wall(MOSSY_STONE_BRICKS, wysokoscMuru) builder.turn(RIGHT_TURN) j += 1 dlMuru += -2 builder.move(RIGHT, 1) builder.move(FORWARD, 1) builder.mark() i += 1 builder.move(UP, wysokoscMuru - 1) builder.face(WEST) builder.move(BACK, 15) builder.mark() i = 0 #pętla tworząca schody while i < wysokoscMuru - 1: builder.shift(1, -1, 0) builder.line(STONE_BRICK_STAIRS) i += 1 builder.teleport_to_origin() builder.move(UP, wysokoscMuru) builder.face(NORTH) builder.mark() i = 0 #pętla tworząca wierzchołki while i < 4: j = 0 while j < dlMuruKopia: builder.place(SEA_LANTERN) builder.move(FORWARD, 2) j += 1 builder.turn(RIGHT_TURN) i += 1 player.on_chat("zamek", zamekKonstruktor) # zamek 20 4 # funkcja ewkipunek def eq(): # LISTY w PYTHON # zmienna przechowuje -> 1 wartość # lista jest to zmienna która przechowuje wiele wartości # JAK TWORZYC LISTE W PYTHON? # nazwaListy = [wartosc0, wartosc1, wartosc2, wartosc3] # lista z ekwipunkiem = [przedmiot,ilosc,przedmiot1,ilosc1] listaEq = [ LADDER, 64, STONE_BRICKS, 64, OBSIDIAN, 64, NETHERITE_SWORD, 2, TORCH, 64, NETHER_BRICK, 64, NETHERITE_CHESTPLATE, 2, NETHERITE_LEGGINGS, 2, NETHERITE_BOOTS, 2, NETHERITE_HELMET, 2, NETHERITE_PICKAXE, 2, NETHERITE_HOE, 2, ENCHANTED_APPLE, 2, TNT, 64, REDSTONE, 64, SPRUCE_DOOR, 64, BOW, 1, ARROW, 128, WATER_BUCKET, 2, LAVA_BUCKET, 2, CARROT, 64, BOAT, 2, PINK_SHULKER_BOX, 64] # petla for ktora rozda przedmioty # petla for od 0 do konca listyEq, co 2 kroki for i in range(0, len(listaEq), 2): # przedmiot do przekazania przedmiot = listaEq[i] # ilosc przedmiotu do przekazania ilosc = listaEq[i + 1] mobs.give(mobs.target(NEAREST_PLAYER), przedmiot, ilosc) player.on_chat("eq", eq) # przypinam do czatu def zaczarowanyLuk(): # czaruje łuk na maksymalne obrazenia mobs.enchant(mobs.target(NEAREST_PLAYER), "Power", 5) # czaruje plonace strzaly mobs.enchant(mobs.target(NEAREST_PLAYER), "Flame", 1) player.on_chat("luk", zaczarowanyLuk) # SUPER ATAKI # ATAK NEPTUN -> def neptun(): # 1. Zmieniam pogodę na burza gameplay.set_weather(THUNDER) # 2. DOSTAJE TROJZAB mobs.give(mobs.target(NEAREST_PLAYER), TRIDENT, 1) # 3. DODAJE ENCHANT "Unbreaking" "Channeling", mobs.enchant(mobs.target(NEAREST_PLAYER), "Unbreaking", 1) mobs.enchant(mobs.target(NEAREST_PLAYER), "Channeling", 1) # 4. Dodaje pauze na czas tego ataku loops.pause(30000) # 5. Czyszcze pogodę gameplay.set_weather(CLEAR) # 6. Podpiac super atak player.on_chat("n",neptun) # Atak mobów #funkcja z parametrem do spawnu mobow wywołam na czacie-> atak 10 --> 10 x rodzaj potwora def atakMobow(iloscMobow): # 1. Przestaw tryb na survival gameplay.set_game_mode(SURVIVAL, mobs.target(NEAREST_PLAYER)) # 2. Ustaw czas na noc gameplay.time_set(DayTime.NIGHT) # 3. Stworz liste - listaMobow -> 1 rodzaj to 1 poziom listaMobow = [ ZOMBIE, SKELETON, SPIDER, CREEPER, PIG_ZOMBIE, DROWNED, ENDERMAN, WOLF] # 4. Petla for dla listaMobow -> for i in range(len(listaMobow)): # 5. Petla for dla ilosciMobow do spawnu -> for j in range(iloscMobow): # 6. Spawn mobo w randpos(pos(25,0,25),pos(30,0,30)) -> mobs.spawn(listaMobow[i],randpos(pos(25,0,25),pos(30,0,30))) # 7. Pauza na poziom np. 60s loops.pause(60000) loops.pause(60000) # 8. Dopisz do czatu atak player.on_chat("atak", atakMobow) # Super Ataki # Deszcz TNT lub strzał def superAtak(rodzajAtaku): # 1. Sprawdz jaki rodzaj ataku -> if rodzajAtaku == 0: if rodzajAtaku == 0: # 2. Dla parametru 0 daj strzały rodzajAtaku = ARROW_PROJECTILE_MOB rodzajAtaku = ARROW_PROJECTILE_MOB # 3. Dla kazdego innego -> else: else: # 4. Dla kazdego innego daj TNT rodzajAtaku = PRIMED_TNT rodzajAtaku = PRIMED_TNT # 5. Odpal salwe 4 x 20 strzalów wybranym pociskem for i in range(20): for i in range(4): for i in range(20): # 6. Spawn rodzajAtaku mobs.spawn(rodzajAtaku, randpos(pos(0,0,15), pos(0,0,25))) mobs.spawn(rodzajAtaku, randpos(pos(0,0,15), pos(0,0,25))) loops.pause(1000) # pauza 1s # 7. Przypisanie do czatu player.on_chat("s",superAtak) player.on_chat("s",superAtak)
Editor is loading...