#katakombe # katakombe ispod zgrade dno = nadji_dno ( orMj , ( 0 , 0, 0 ) , orSm ) + 2 # pronadji dno ovaj +2 je nekakav iskustveni korektiv brojalica = 0 while brojalica < 3 : mc.postToChat("DUBINA: %f" % ( dno ) ) katOrigin = premjesti_origin ( orMj , 14 + dubina / 2 , 0 , dno , orSm ) if brojalica == 0 : originBaklje = katOrigin for dX in range (-63,66,21): for dZ in range ( -63 , 66 , 21 ): # za testirenje zakomentirano katakombe ( katOrigin , orSm , iX = dX, iZ = dZ , iY=0 ) a = 2 dno += 7 brojalica += 1 #put do katakombi mining_shaht ( pomOrigin2 , orSm , iX=10 , iZ=0 , iY=0 ,materijal = 98, dv = 1 , stepenice_mat = 109 ) #lift ( premjesti_origin ( pomOrigin , - 9 , 13 , -2 , orSm ) , pomSm ) # NOVI SORTER crtanje_stepenastiTunel ( pomOrigin , pomSm , visina=5 , sirina = 4 , duzina = 8 , uspon = -1 ) # pa tunel for br in range ( 7 ) : crtaj_stepenice ( pomOrigin , ( br + 2 , -4, -1 -br ) , ( br + 2 , 4, -1 -br ) , pomSm , blok_id = 109 , rel_smjer = "odmene") # pa stepenice testKomplet ( pomOrigin , pomSm , iX=8 , iZ=0 , iY=-7 ) crtaj_hopper ( pomOrigin , ( -13 , 8 , -1 ) , ( -13 , 8 , -1 ) , pomSm , "lijevo" )
def tvrdja(orMj, orSm, iX=0, iZ=0, iY=0, materijal=98, dv=0, stepenice_mat=109): """ zgrada ispod i oko spawnera """ dimenzija = 26 # dimenzije zgrade orMj = premjesti_origin(orMj, iX, iZ, iY, orSm) #mice ishodiste na centar orginalniOrigin = orMj # spremi ?? dubina = nadji_dno( orMj, (0, 0, 0), orSm) + 2 # pronadji dno ovaj +2 je nekakav iskustveni korektiv bakljadaOrigin = premjesti_origin( orMj, 0, 0, dubina - 2, orSm) # spremi se ovo ishodiste poslije za crtanje baklji # katakombe ispod zgrade brojalica = 0 while brojalica < 4: mc.postToChat("DUBINA: %f" % (dubina)) katOrigin = premjesti_origin(orMj, 0, 0, dubina, orSm) for dX in range(-42, 43, 21): for dZ in range(-42, 43, 21): # za testirenje zakomentirano katakombe(katOrigin, orSm, iX=dX, iZ=dZ, iY=0) a = 2 dubina += 7 brojalica += 1 # za testirenje zakomentirano time.sleep(12) orMj = premjesti_origin( katOrigin, 0, 0, 6, orSm ) #mice ishodiste na centar na vrh katakombi, odatle se crta zgrada mc.postToChat("Kocka") crtaj_kvadar(orMj, (-dimenzija, -dimenzija, 0), (dimenzija, dimenzija, 50), orSm, materijal, dv) # kocka - crtanje tijela zgrade time.sleep(20) for br in range(1, 52, 7): # crtanje etazi u kocki zgrade mc.postToChat("Kocka - rupa %f" % br) crtaj_kvadar(orMj, (-dimenzija + 1, -dimenzija + 1, br), (dimenzija - 1, dimenzija - 1, br + 5), orSm, 0, 0) # rupa u kocki time.sleep(15) #baklje okolo i u pecinama da se izbjegne generiranje mobova mc.postToChat("Bakljada") bakljada(bakljadaOrigin, orSm, dimenzije=50, visina=95) time.sleep(1) # za testirenje zakomentirano bakljada(bakljadaOrigin, orSm, dimenzije=160, visina=150) time.sleep(10) # 3 kata nize u ta dva kata se crtaju sorteri i slijepo skladiste kata4Origin = premjesti_origin(orMj, 0, 0, 0 + 1 + 21, orSm) orSm = ortUlijevo(orSm) # crta se od lijevog zida ( u odnosu na ulaz ) for dummy in (1, 2, 3): for dZ in range(-18, 19): if dZ % 2 == 0: # naizmjenicno chest - trapped chest flag_kutija = "kutija" else: flag_kutija = "ne" if abs( dZ ) > 15: # kutije se crtaju samo u unutrasnjih 31 polja , sa svake strane lijevo i desno idu po 3 sortera idu po flag_crtaj_kutije = "ne" else: flag_crtaj_kutije = "da" modul_sorter( kata4Origin, orSm, iX=16, iZ=dZ, iY=0, materijal=98, dv=0, kutija=flag_kutija, crtaj_kutije=flag_crtaj_kutije) # crtanje modula sortera crtaj_hopper(kata4Origin, [21, dZ, 4 - 7], [21, dZ, 4 - 7], orSm, "meni") # kat ispod hopper iza if abs( dZ ) < 16: # kat ispod krajnji moduli se crtaju samo od -15 do 15 modul_kraj(kata4Origin, orSm, iX=16, iZ=dZ, iY=-7, materijal=98, dv=0, kutija=flag_kutija) #kat ispod slijepa kutija crtaj_hopper(kata4Origin, [21, -21, 4], [21, -19, 4], orSm, "desno") #kutna spojnica lijeva crtaj_hopper(kata4Origin, [21, 19, 4], [21, 20, 4], orSm, "desno") #kutna spojnica desna crtaj_hopper(kata4Origin, [21, -20, 4 - 6], [21, -19, 4 - 6], orSm, "lijevo") #kat ispod kutna spojnica lijeva crtaj_hopper(kata4Origin, [21, 19, 4 - 6], [21, 21, 4 - 6], orSm, "lijevo") #kat ispod kutna spojnica desna crtaj_hopper(kata4Origin, [20, -18, 2], [20, -16, -1], orSm, "dolje") #dolje upod od 3 sortera bez kutija lijevo crtaj_hopper(kata4Origin, [20, 18, 2], [20, 16, -1], orSm, "dolje") #dolje upod od 3 sortera bez kutija desno crtaj_hopper( kata4Origin, [20, -18, -2], [20, -16, -2], orSm, "odmene") #dolje upodu spoj na krug hoppera slijepog skladista crtaj_hopper( kata4Origin, [20, 18, -2], [20, 16, -2], orSm, "odmene") #dolje upod spoj na krug hoppera slijepog skladista crtaj_hopper( kata4Origin, [21, -18, 4 - 6], [21, 18, 4 - 6], orSm, "lijevo") #hopper pozadi kat ispod, krug slijepog skladista orSm = ortUdesno( orSm) #poslije svakog ciklusa okreni se za +90 stupnjeva time.sleep(10) #red ispred vrata sa prolazom for dZ in (range(-18, -4) + range(5, 19)): if dZ % 2 == 0: flag_kutija = "kutija" else: flag_kutija = "ne" if abs(dZ) > 15: flag_crtaj_kutije = "ne" else: flag_crtaj_kutije = "da" modul_sorter(kata4Origin, orSm, iX=16, iZ=dZ, iY=0, materijal=98, dv=0, kutija=flag_kutija, crtaj_kutije=flag_crtaj_kutije) if abs(dZ) < 16: modul_kraj(kata4Origin, orSm, iX=16, iZ=dZ, iY=-7, materijal=98, dv=0, kutija=flag_kutija) #kat ispod slijepa kutija crtaj_hopper(kata4Origin, [21, dZ, 4 - 7], [21, dZ, 4 - 7], orSm, "meni") #hopper pozadi kat ispod crtaj_hopper(kata4Origin, [21, -21, 4], [21, -19, 4], orSm, "desno") #kutna spojnica crtaj_hopper(kata4Origin, [21, 19, 4], [21, 20, 4], orSm, "desno") #kutna spojnica crtaj_hopper(kata4Origin, [21, -20, 4 - 6], [21, -19, 4 - 6], orSm, "lijevo") #kat ispod kutna spojnica crtaj_hopper(kata4Origin, [21, 19, 4 - 6], [21, 21, 4 - 6], orSm, "lijevo") #kat ispod kutna spojnica crtaj_hopper(kata4Origin, [20, -18, 2], [20, -16, -1], orSm, "dolje") #dolje upod crtaj_hopper(kata4Origin, [20, 18, 2], [20, 16, -1], orSm, "dolje") #dolje upod crtaj_hopper(kata4Origin, [20, -18, -2], [20, -16, -2], orSm, "odmene") #dolje upod spoj na krug crtaj_hopper(kata4Origin, [20, 18, -2], [20, 16, -2], orSm, "odmene") #dolje upod spoj na krug crtaj_hopper(kata4Origin, [21, -4, 4], [21, -4, -1], orSm, "dolje") #1 odmaknuti od kraja #crtaj_hopper ( kata4Origin , [ 21 , -3, 4 ] , [ 21 , -3 , -1 ] , orSm , "dolje" ) #spusti u pod crtaj_hopper(kata4Origin, [21, -18, 4 - 6], [21, 18, 4 - 6], orSm, "lijevo") #hopper pozadi kat ispod time.sleep(10) return orMj #vrati origin gdje ce biti baza spawnera
def tvrdja ( orMj , orSm , iX=0 , iZ=0 , iY=0 , materijal = 98, dv = 0 , stepenice_mat = 109 ): """ zgrada ispod i oko spawnera """ dimenzija = 26 # dimenzije zgrade orMj = premjesti_origin ( orMj , iX , iZ , iY , orSm ) #mice ishodiste na centar orginalniOrigin = orMj # spremi ?? dubina = nadji_dno ( orMj , ( 0 , 0, 0 ) , orSm ) + 2 # pronadji dno ovaj +2 je nekakav iskustveni korektiv bakljadaOrigin = premjesti_origin ( orMj , 0 , 0 , dubina - 2, orSm ) # spremi se ovo ishodiste poslije za crtanje baklji # katakombe ispod zgrade brojalica = 0 while brojalica < 4 : mc.postToChat("DUBINA: %f" % ( dubina ) ) katOrigin = premjesti_origin ( orMj , 0 , 0 , dubina , orSm ) for dX in range (-42,43,21): for dZ in range ( -42 , 43 , 21 ): # za testirenje zakomentirano katakombe ( katOrigin , orSm , iX = dX, iZ = dZ , iY=0 ) a = 2 dubina += 7 brojalica += 1 # za testirenje zakomentirano time.sleep ( 12 ) orMj = premjesti_origin ( katOrigin , 0 , 0 , 6 , orSm ) #mice ishodiste na centar na vrh katakombi, odatle se crta zgrada mc.postToChat("Kocka" ) crtaj_kvadar ( orMj , ( -dimenzija , -dimenzija , 0 ) , ( dimenzija , dimenzija , 50 ) , orSm , materijal , dv ) # kocka - crtanje tijela zgrade time.sleep ( 20 ) for br in range ( 1 , 52 , 7 ): # crtanje etazi u kocki zgrade mc.postToChat("Kocka - rupa %f" % br ) crtaj_kvadar ( orMj , ( - dimenzija + 1 , -dimenzija +1 , br ) , ( dimenzija -1 , dimenzija-1 , br + 5 ) , orSm ,0 , 0 ) # rupa u kocki time.sleep ( 15 ) #baklje okolo i u pecinama da se izbjegne generiranje mobova mc.postToChat("Bakljada" ) bakljada ( bakljadaOrigin , orSm , dimenzije = 50 , visina = 95) time.sleep ( 1 ) # za testirenje zakomentirano bakljada ( bakljadaOrigin , orSm , dimenzije = 160 , visina = 150) time.sleep ( 10 ) # 3 kata nize u ta dva kata se crtaju sorteri i slijepo skladiste kata4Origin = premjesti_origin ( orMj , 0 , 0 , 0 + 1 + 21 , orSm ) orSm = ortUlijevo ( orSm ) # crta se od lijevog zida ( u odnosu na ulaz ) for dummy in ( 1 , 2 , 3 ): for dZ in range ( -18,19 ): if dZ % 2 == 0: # naizmjenicno chest - trapped chest flag_kutija = "kutija" else: flag_kutija = "ne" if abs (dZ) > 15 : # kutije se crtaju samo u unutrasnjih 31 polja , sa svake strane lijevo i desno idu po 3 sortera idu po flag_crtaj_kutije = "ne" else: flag_crtaj_kutije = "da" modul_sorter ( kata4Origin , orSm , iX=16 , iZ=dZ , iY=0 , materijal = 98, dv = 0 , kutija = flag_kutija ,crtaj_kutije = flag_crtaj_kutije ) # crtanje modula sortera crtaj_hopper ( kata4Origin , [ 21 , dZ, 4-7 ] , [ 21 , dZ , 4-7 ] , orSm , "meni" ) # kat ispod hopper iza if abs (dZ) < 16 : # kat ispod krajnji moduli se crtaju samo od -15 do 15 modul_kraj ( kata4Origin , orSm , iX=16 , iZ=dZ , iY=-7 , materijal = 98, dv = 0 , kutija = flag_kutija ) #kat ispod slijepa kutija crtaj_hopper ( kata4Origin , [ 21 , -21, 4 ] , [ 21 , -19 , 4 ] , orSm , "desno" ) #kutna spojnica lijeva crtaj_hopper ( kata4Origin , [ 21 , 19, 4 ] , [ 21 , 20 , 4 ] , orSm , "desno" ) #kutna spojnica desna crtaj_hopper ( kata4Origin , [ 21 , -20, 4-6 ] , [ 21 , -19 , 4 -6 ] , orSm , "lijevo" ) #kat ispod kutna spojnica lijeva crtaj_hopper ( kata4Origin , [ 21 , 19, 4-6 ] , [ 21 , 21 , 4 -6] , orSm , "lijevo" ) #kat ispod kutna spojnica desna crtaj_hopper ( kata4Origin , [ 20 , -18, 2 ] , [ 20 , -16 , -1 ] , orSm , "dolje" ) #dolje upod od 3 sortera bez kutija lijevo crtaj_hopper ( kata4Origin , [ 20 , 18, 2 ] , [ 20 , 16 , -1 ] , orSm , "dolje" ) #dolje upod od 3 sortera bez kutija desno crtaj_hopper ( kata4Origin , [ 20 , -18, -2 ] , [ 20 , -16 , -2 ] , orSm , "odmene" ) #dolje upodu spoj na krug hoppera slijepog skladista crtaj_hopper ( kata4Origin , [ 20 , 18, -2 ] , [ 20 , 16 , -2 ] , orSm , "odmene" ) #dolje upod spoj na krug hoppera slijepog skladista crtaj_hopper ( kata4Origin , [ 21 , -18, 4-6 ] , [ 21 , 18 , 4-6 ] , orSm , "lijevo" ) #hopper pozadi kat ispod, krug slijepog skladista orSm = ortUdesno ( orSm ) #poslije svakog ciklusa okreni se za +90 stupnjeva time.sleep ( 10 ) #red ispred vrata sa prolazom for dZ in (range ( -18, -4 ) + range(5,19 ) ): if dZ % 2 == 0: flag_kutija = "kutija" else: flag_kutija = "ne" if abs (dZ) > 15 : flag_crtaj_kutije = "ne" else: flag_crtaj_kutije = "da" modul_sorter ( kata4Origin , orSm , iX=16 , iZ=dZ , iY=0 , materijal = 98, dv = 0 , kutija = flag_kutija ,crtaj_kutije = flag_crtaj_kutije ) if abs (dZ) < 16 : modul_kraj ( kata4Origin , orSm , iX=16 , iZ=dZ , iY=-7 , materijal = 98, dv = 0 , kutija = flag_kutija ) #kat ispod slijepa kutija crtaj_hopper ( kata4Origin , [ 21 , dZ, 4-7 ] , [ 21 , dZ , 4-7 ] , orSm , "meni" ) #hopper pozadi kat ispod crtaj_hopper ( kata4Origin , [ 21 , -21, 4 ] , [ 21 , -19 , 4 ] , orSm , "desno" ) #kutna spojnica crtaj_hopper ( kata4Origin , [ 21 , 19, 4 ] , [ 21 , 20 , 4 ] , orSm , "desno" ) #kutna spojnica crtaj_hopper ( kata4Origin , [ 21 , -20, 4-6 ] , [ 21 , -19 , 4 -6 ] , orSm , "lijevo" ) #kat ispod kutna spojnica crtaj_hopper ( kata4Origin , [ 21 , 19, 4-6 ] , [ 21 , 21 , 4 -6] , orSm , "lijevo" ) #kat ispod kutna spojnica crtaj_hopper ( kata4Origin , [ 20 , -18, 2 ] , [ 20 , -16 , -1 ] , orSm , "dolje" ) #dolje upod crtaj_hopper ( kata4Origin , [ 20 , 18, 2 ] , [ 20 , 16 , -1 ] , orSm , "dolje" ) #dolje upod crtaj_hopper ( kata4Origin , [ 20 , -18, -2 ] , [ 20 , -16 , -2 ] , orSm , "odmene" ) #dolje upod spoj na krug crtaj_hopper ( kata4Origin , [ 20 , 18, -2 ] , [ 20 , 16 , -2 ] , orSm , "odmene" ) #dolje upod spoj na krug crtaj_hopper ( kata4Origin , [ 21 , -4, 4 ] , [ 21 , -4 , -1 ] , orSm , "dolje" ) #1 odmaknuti od kraja #crtaj_hopper ( kata4Origin , [ 21 , -3, 4 ] , [ 21 , -3 , -1 ] , orSm , "dolje" ) #spusti u pod crtaj_hopper ( kata4Origin , [ 21 , -18, 4-6 ] , [ 21 , 18 , 4-6 ] , orSm , "lijevo" ) #hopper pozadi kat ispod time.sleep ( 10 ) return orMj #vrati origin gdje ce biti baza spawnera