Dies ist eine alte Version des Dokuments!
Gruppe 2
Mitglieder: Magda, Lívia, Ava, Valérie, Noël
Projektidee: Bei unserem Projekt wollten wir einen Zoo mit verschiedenen Gehegen bauen. Um eine abwechslungsreiche Umgebung zu programmieren sollte jeder der Mitglieder ein eigenes Gehege mitsamt einem Special-effect programmieren.
Objekte im Projekt: 5 Gehege: Aquarium, Pilzkuh-Gehege,Lama-/Esel-/Pferdestall, Schaf-/Schweine-Gehege & Panda-Gehege. 1 Torbogen(Eingang) 1 Mauer um das gesamte Areal
Schwierigkeiten:
-Lívia Problem: beim Baum programmieren war mir nicht bewusst das der Stamm in die Baumkrone ragen muss. Ansonsten starben nämlich die Blätter des Baumes ab.
Lösung:Den Baumstamm um einige Blöcke verlängern.
-Ava Problem: Am Anfang hatte ich Probleme mit den Koordinaten.
Lösung:Livia hat es mir erklärt und mir geholfen.
-Noël Problem: Die Musik einzufügen, ich wusste nicht wie man „Klänge“ in Minecraft programmiert.
Lösung: Lucas nach Rat gefragt.
-Magda Problem: Blumen random im Gehege einzufügen. Die Blumen waren immer in einer Linie oder es hat die Funktion teilweise gar nicht ausgeführt.
Lösung:Mithilfe von Frau Marro und Lucas hat es dann geklappt.
-Valérie Problem: Unverständnis für Alles.
Lösung: Tutorials angeschaut und so die Basics erworben.
Vorgehensweise: Am Anfang haben wir eine kleine Skizze von unserem Zoo angefertigt. Fortführend hat sich jeder ein Gehege ausgesucht. Um den Fortschritt festzuhalten haben wir auf Teams beim Scrumbboard To-Do's erstellt. Die Codes wurden je nachdem in den Chat geschickt, da viele die gleichen Haupt-Elemente brauchten wie der Zaun oder ein Baum. Jeder hat etwas gemacht und am Schluss haben wir die letzten Angleichungen aufgeteilt.
Schaf-/Schweinegehege (Magda)
doppelter Zaun:
def zaunI(x,y,z): blocks.fill(BIRCH_FENCE, world(x,y,z), world(x+25,y,z+25), FillOperation.HOLLOW) blocks.fill(AIR, world(x+1,y,z+1), world(x+24,y,z+24), FillOperation.HOLLOW) zaunI(80,-60,20) def zaunII(x,y,z): blocks.fill(BIRCH_FENCE, world(x,y,z), world(x+25,y,z+25), FillOperation.HOLLOW) blocks.fill(AIR, world(x+1,y,z+1), world(x+24,y,z+24), FillOperation.HOLLOW) zaunII(80,-60,20)
spawnen von Tieren:
def spawn_tiere(x,y,z): My_list = [PIG, SHEEP] for i in range(4): mobs.spawn(My_list[0],world(x+5,y,z+5)) mobs.spawn(My_list[1], world(x+5,y,z+5)) spawn_tiere(80,-60,20)
spawnen von Blumen:
def spawn_blumen(x_base,y_base,z_base): blumen = [OXEYE_DAISY, PINK_TULIP, LILY_OF_THE_VALLEY, CORNFLOWER, ALLIUM] for x in range(24): for z in range(24): if randint(0,5) == 0: blocks.place(blumen[randint(0,4)], world(x_base + 1 + x, y_base, z_base + 1 + z)) spawn_blumen(80,-60,20)
Baum:
def baum(x,y,z): blocks.fill(LEAVES_BIRCH, world(x + 6, y + 4, z + 6), world(x, y + 7, z), FillOperation.REPLACE) blocks.fill(LOG_BIRCH, world(x + 3, y, z + 3), world(x + 3, y + 5, z + 3), FillOperation.REPLACE) baum(80,-60,20)
Kompletter Code:
def zaunI(x,y,z): blocks.fill(BIRCH_FENCE, world(x,y,z), world(x+25,y,z+25), FillOperation.HOLLOW) blocks.fill(AIR, world(x+1,y,z+1), world(x+24,y,z+24), FillOperation.HOLLOW) zaunI(80,-60,20) def zaunII(x,y,z): blocks.fill(BIRCH_FENCE, world(x,y,z), world(x+25,y,z+25), FillOperation.HOLLOW) blocks.fill(AIR, world(x+1,y,z+1), world(x+24,y,z+24), FillOperation.HOLLOW) zaunII(80,-60,20) def spawn_tiere(x,y,z): My_list = [PIG, SHEEP] for i in range(4): mobs.spawn(My_list[0],world(x+5,y,z+5)) mobs.spawn(My_list[1], world(x+5,y,z+5)) spawn_tiere(80,-60,20) def spawn_blumen(x_base,y_base,z_base): blumen = [OXEYE_DAISY, PINK_TULIP, LILY_OF_THE_VALLEY, CORNFLOWER, ALLIUM] for x in range(24): for z in range(24): if randint(0,5) == 0: blocks.place(blumen[randint(0,4)], world(x_base + 1 + x, y_base, z_base + 1 + z)) spawn_blumen(80,-60,20) def baum(x,y,z): blocks.fill(LEAVES_BIRCH, world(x + 6, y + 4, z + 6), world(x, y + 7, z), FillOperation.REPLACE) blocks.fill(LOG_BIRCH, world(x + 3, y, z + 3), world(x + 3, y + 5, z + 3), FillOperation.REPLACE) baum(80,-60,20)
Pilzkuh-gehege (Ava) doppelter Zaun:
def zaunI(x, y, z): blocks.fill(BIRCH_FENCE, world(x, y, z), world(x + 25, y, z + 25), FillOperation.HOLLOW) blocks.fill(AIR, world(x + 1, y, z + 1), world(x + 24, y, z + 24), FillOperation.HOLLOW) zaunI(-85, -60, -23) def zaunII(x, y, z): blocks.fill(BIRCH_FENCE, world(x, y, z), world(x + 25, y, z + 25), FillOperation.HOLLOW) blocks.fill(AIR, world(x + 1, y, z + 1), world(x + 24, y, z + 24), FillOperation.HOLLOW) zaunII(-110, -60, -2)
Wasser:
blocks.fill(WATER, world(-122, -61, 19), world(-125, -61, 22), FillOperation.HOLLOW)
Baum:
blocks.fill(LEAVES_SPRUCE, world(-118, -58, 18), world(-116, -56, 20), FillOperation.HOLLOW) locks.fill(LOG_SPRUCE, world(-117, -60, 19), world(-117, -57, 19), FillOperation.HOLLOW) Unterstand blocks.fill(MOSSY_STONE_BRICKS, world(35, -60, -7), world(41, -58, -7), FillOperation.HOLLOW) blocks.fill(MOSSY_STONE_BRICKS, world(35, -60, 2), world(41, -58, 2), FillOperation.HOLLOW) blocks.fill(MOSSY_STONE_BRICKS, world(41, -60, 1), world(41, -58, -6), FillOperation.HOLLOW) blocks.fill(PLANKS_SPRUCE, world(35, -57, -7), world(41, -57, 2), FillOperation.HOLLOW) blocks.fill(MOSSY_STONE_BRICKS, world(-113, -60, 4), world(-113, -58, 0), FillOperation.HOLLOW) blocks.fill(MOSSY_STONE_BRICKS, world(35, -60, 2), world(41, -58, 2), FillOperation.HOLLOW) blocks.fill(MOSSY_STONE_BRICKS, world(41, -60, 1), world(41, -58, -6), FillOperation.HOLLOW) blocks.fill(PLANKS_SPRUCE, world(35, -57, -7), world(41, -57, 2), FillOperation.HOLLOW)
Unterstand:
def wand(x,y,z): blocks.fill(MOSSY_STONE_BRICKS, world(x, y, z), world(x, y+2, z-4), FillOperation.HOLLOW) wand(-113, -60, 4) wand(-123, -60, 4) def wand2(x,y,z): blocks.fill(MOSSY_STONE_BRICKS, world(x, y, z), world(x-8, y+2, z), FillOperation.HOLLOW) wand2 (-114,-60,0) def wand3(x,y,z): blocks.fill(MOSSY_STONE_BRICKS, world(x, y, z), world(x-10, y, z+4), FillOperation.HOLLOW) wand3(-113, -57, 0) def hay(x,y,z): blocks.fill(HAY_BLOCK, world(x, y, z), world(x+2, y, z), FillOperation.HOLLOW) hay(-117, -60, 3)
spawn von Tieren:
def spawn_tiere(x,y,z): My_list = [MUSHROOM_COW] for i in range(1): mobs.spawn (My_list[0],world(x,y,z)) spawn_tiere(-122, -60, 11)
Kompletter Code:
def zaunI(x, y, z): blocks.fill(BIRCH_FENCE, world(x, y, z), world(x + 25, y, z + 25), FillOperation.HOLLOW) blocks.fill(AIR, world(x + 1, y, z + 1), world(x + 24, y, z + 24), FillOperation.HOLLOW) zaunI(-85, -60, -23) def zaunII(x, y, z): blocks.fill(BIRCH_FENCE, world(x, y, z), world(x + 25, y, z + 25), FillOperation.HOLLOW) blocks.fill(AIR, world(x + 1, y, z + 1), world(x + 24, y, z + 24), FillOperation.HOLLOW) zaunII(-110, -60, -2) blocks.fill(WATER, world(-122, -61, 19), world(-125, -61, 22), FillOperation.HOLLOW) blocks.fill(LEAVES_SPRUCE, world(-118, -58, 18), world(-116, -56, 20), FillOperation.HOLLOW) blocks.fill(LOG_SPRUCE, world(-117, -60, 19), world(-117, -57, 19), FillOperation.HOLLOW) blocks.fill(MOSSY_STONE_BRICKS, world(35, -60, -7), world(41, -58, -7), FillOperation.HOLLOW) blocks.fill(MOSSY_STONE_BRICKS, world(35, -60, 2), world(41, -58, 2), FillOperation.HOLLOW) blocks.fill(MOSSY_STONE_BRICKS, world(41, -60, 1), world(41, -58, -6), FillOperation.HOLLOW) blocks.fill(PLANKS_SPRUCE, world(35, -57, -7), world(41, -57, 2), FillOperation.HOLLOW) blocks.fill(MOSSY_STONE_BRICKS, world(-113, -60, 4), world(-113, -58, 0), FillOperation.HOLLOW) blocks.fill(MOSSY_STONE_BRICKS, world(35, -60, 2), world(41, -58, 2), FillOperation.HOLLOW) blocks.fill(MOSSY_STONE_BRICKS, world(41, -60, 1), world(41, -58, -6), FillOperation.HOLLOW) blocks.fill(PLANKS_SPRUCE, world(35, -57, -7), world(41, -57, 2), FillOperation.HOLLOW) def wand(x,y,z): blocks.fill(MOSSY_STONE_BRICKS, world(x, y, z), world(x, y+2, z-4), FillOperation.HOLLOW) wand(-113, -60, 4) wand(-123, -60, 4) def wand2(x,y,z): blocks.fill(MOSSY_STONE_BRICKS, world(x, y, z), world(x-8, y+2, z), FillOperation.HOLLOW) wand2 (-114,-60,0) def wand3(x,y,z): blocks.fill(MOSSY_STONE_BRICKS, world(x, y, z), world(x-10, y, z+4), FillOperation.HOLLOW) wand3(-113, -57, 0) def hay(x,y,z): blocks.fill(HAY_BLOCK, world(x, y, z), world(x+2, y, z), FillOperation.HOLLOW) hay(-117, -60, 3) def spawn_tiere(x,y,z): My_list = [MUSHROOM_COW] for i in range(1): mobs.spawn (My_list[0],world(x,y,z)) spawn_tiere(-122, -60, 11)
Pferde-/Esel-/Alpakagehege (Lívia)
Zaun:
def zaun(x,y,z): blocks.fill(SPRUCE_FENCE, world(x, y, z), world(x-19, y+1, z-29), FillOperation.HOLLOW) blocks.fill(AIR, world(x-1, y, z-1), world(x-18, y+1, z-28), FillOperation.HOLLOW) zaun(-60, -60, -33)
Unterstand: def unterstand(x,y,z): blocks.fill(MOSSY_STONE_BRICKS, world(x, y, z), world(x+6, y+2, z), FillOperation.HOLLOW) blocks.fill(MOSSY_STONE_BRICKS, world(x, y, z+9), world(x+6, y+2, z+9), FillOperation.HOLLOW) blocks.fill(MOSSY_STONE_BRICKS, world(x+6, y, z+8), world(x+6, y+2, z+1), FillOperation.HOLLOW) blocks.fill(PLANKS_SPRUCE, world(x, y+3, z), world(x+6, y+3, z+9), FillOperation.HOLLOW) unterstand(-67, -60, -43) </code> Teich:
def teich(x,y,z): blocks.fill(WATER, world(x, y, z), world(x+3, y, z-4), FillOperation.HOLLOW) teich(-68, -61, -53)
Baum:
def baum(x,y,z): blocks.fill(LEAVES_BIRCH, world(x, y, z), world(x+2, y+2, z-4), FillOperation.HOLLOW) blocks.fill(LOG_BIRCH, world(x+1, y-4, z-2), world(x+1, y+1, z-2), FillOperation.HOLLOW) baum(-74, -56, -57) baum(-77, -56, -40) baum(-71, -56, -45)
Heu:
def heu(x,y,z): blocks.fill(HAY_BLOCK, world(x, y, z), world(x, y, z), FillOperation.HOLLOW) heu(-73, -60, -37) heu(-73, -60, -36) heu(-62, -60, -40)
Tiere
def spawn_tiere(x,y,z): My_list = [HORSE, DONKEY,LLAMA] # Erweiterungsmöglichkeit for i in range(2): mobs.spawn (My_list[0],world(x+3,y,z+3)) mobs.spawn(My_list[1], world(x+2,y,z+2)) mobs.spawn(My_list[2], world(x+2,y,z+2)) spawn_tiere(-74, -60, -52)
Kompletter Code:
def zaun(x,y,z): blocks.fill(SPRUCE_FENCE, world(x, y, z), world(x-19, y+1, z-29), FillOperation.HOLLOW) blocks.fill(AIR, world(x-1, y, z-1), world(x-18, y+1, z-28), FillOperation.HOLLOW) zaun(-60, -60, -33) def unterstand(x,y,z): blocks.fill(MOSSY_STONE_BRICKS, world(x, y, z), world(x+6, y+2, z), FillOperation.HOLLOW) blocks.fill(MOSSY_STONE_BRICKS, world(x, y, z+9), world(x+6, y+2, z+9), FillOperation.HOLLOW) blocks.fill(MOSSY_STONE_BRICKS, world(x+6, y, z+8), world(x+6, y+2, z+1), FillOperation.HOLLOW) blocks.fill(PLANKS_SPRUCE, world(x, y+3, z), world(x+6, y+3, z+9), FillOperation.HOLLOW) unterstand(-67, -60, -43) def teich(x,y,z): blocks.fill(WATER, world(x, y, z), world(x+3, y, z-4), FillOperation.HOLLOW) teich(-68, -61, -53) def baum(x,y,z): blocks.fill(LEAVES_BIRCH, world(x, y, z), world(x+2, y+2, z-4), FillOperation.HOLLOW) blocks.fill(LOG_BIRCH, world(x+1, y-4, z-2), world(x+1, y+1, z-2), FillOperation.HOLLOW) baum(-74, -56, -57) baum(-77, -56, -40) baum(-71, -56, -45) def heu(x,y,z): blocks.fill(HAY_BLOCK, world(x, y, z), world(x, y, z), FillOperation.HOLLOW) heu(-73, -60, -37) heu(-73, -60, -36) heu(-62, -60, -40) def spawn_tiere(x,y,z): My_list = [HORSE, DONKEY,LLAMA] # Erweiterungsmöglichkeit for i in range(2): mobs.spawn (My_list[0],world(x+3,y,z+3)) mobs.spawn(My_list[1], world(x+2,y,z+2)) mobs.spawn(My_list[2], world(x+2,y,z+2)) spawn_tiere(-74, -60, -52)
Aquarium Noël: Kompletter Code: <code python> # Startkoordinaten: -105, -60, 0 #NM def aquarium(x, y, z): y_base = 0 bottom = 1 tunnelY = 2 tunnelHeight = 5 blocks.fill(GLASS, world(-104, -60, 1), world(-104 + x, -60 + y, 1 + z), FillOperation.HOLLOW) blocks.fill(WATER, world(-104, -60, 1), world(-104 + x, -60 + y, 1 + z), FillOperation.KEEP) for i in range(2, x + 1): for k in range(2, z + 1): thickness = randint(1, 3) top_sand = bottom + thickness - 1 if randint(0, 25) == 1: blocks.fill(SEA_LANTERN, world(-105 + i, -59, 0 + k), world(-105 + i, -59 + top_sand, 0 + k), FillOperation.REPLACE) for f in range(2): mobs.spawn(TROPICAL_FISH, world(-105 + i, -59 + top_sand + 2, 0 + k)) if randint(0, 35) == 1: mobs.spawn(AXOLOTL, world(-105 + i, -59 + top_sand + 2, 0 + k)) mobs.spawn(GLOW_SQUID, world(-105 + i, -59 + top_sand + 2, 0 + k)) if randint(0, 5) == 1: mobs.spawn(DROWNED, world(-105 + i, -59 + top_sand + 2, 0 + k)) else: if randint(0, 10) == 1: blocks.fill(GRAVEL, world(-105 + i, -59, 0 + k), world(-105 + i, -59 + top_sand, 0 + k), FillOperation.REPLACE) else: blocks.fill(SAND, world(-105 + i, -59, 0 + k), world(-105 + i, -59 + top_sand, 0 + k), FillOperation.REPLACE) mid_x = (1 + x / 2) blocks.fill(GLASS, world(-105 + mid_x - 2, -59 + tunnelY - 1, 1), world(-105 + mid_x + 2, -59 + tunnelHeight + 2, 1 + z), FillOperation.REPLACE) blocks.fill(GLASS, world(-104, -59 + tunnelY - 1, 1 + mid_x - 2), world(-104 + x, -59 + tunnelHeight + 2, 1 + mid_x + 2), FillOperation.REPLACE) blocks.fill(AIR, world(-104, -59 + tunnelHeight + 2, 1 + mid_x), world(-104 + x, -59 + tunnelHeight + 2, 1 + mid_x), FillOperation.REPLACE) blocks.fill(AIR, world(-105 + mid_x, -59 + tunnelHeight + 2, 1), world(-105 + mid_x, -59 + tunnelHeight + 2, 1 + z), FillOperation.REPLACE) blocks.fill(SEA_LANTERN, world(-104, -59 + tunnelHeight + 3, 1 + mid_x), world(-104 + x, -59 + tunnelHeight + 3, 1 + mid_x), FillOperation.REPLACE) blocks.fill(SEA_LANTERN, world(-105 + mid_x, -59 + tunnelHeight + 3, 1), world(-105 + mid_x, -59 + tunnelHeight + 3, 1 + z), FillOperation.REPLACE) blocks.fill(AIR, world(-105 + mid_x - 1, -60 + tunnelY, 1), world(-105 + mid_x + 1, -59 + tunnelHeight + 1, 1 + z), FillOperation.REPLACE) blocks.fill(AIR, world(-104, -60 + tunnelY, 1 + mid_x - 1), world(-104 + x, -59 + tunnelHeight + 1, 1 + mid_x + 1), FillOperation.REPLACE) aquarium(12, 12, 12) </code> Panda-Gehege (Valerie) Zaun <code python> def zaun (x,y,z): blocks.fill(DARK_OAK_FENCE, world(x,y,z,), world(x+24,y,z+24), FillOperation.HOLLOW) blocks.fill (AIR, world(x+1,y,z+1),world(x+23,y,z+23), FillOperation.HOLLOW) zaun(-79,-60,-17) </code> Bambus <code python> def Bambus (x,y,z): blocks.fill(BAMBOO, world(x,y,z), world(x,y+4,z), FillOperation.REPLACE) blocks.fill(BAMBOO, world(x,y,z+1), world(x,y+3,z+1), FillOperation.REPLACE) blocks.fill(BAMBOO, world(x-1,y,z), world(x-1,y+2,z), FillOperation.REPLACE) Bambus (-76,-60,-13) Bambus (-76,-60,3) Bambus (-74,-60,5) Bambus (-60,-60,-11) Bambus (-65,-60,-15) Bambus (-71,-60,-3) Bambus (-60,-60,3) </code> Bambushaus <code python> def Bambushaus (x,y,z): for i in range (4): blocks.fill(BAMBOO_MOSAIC, world(x,y+i,z+i), world(x+6-i,y+i,z+i), FillOperation.HOLLOW) blocks.fill(BAMBOO_MOSAIC, world(x+6-i,y+i,z+i), world(x+6-i,y+i,z+7-i), FillOperation.HOLLOW) blocks.fill(BAMBOO_MOSAIC, world(x+6-i,y+i,z+7-i), world(x,y+i,z+7-i), FillOperation.HOLLOW) Bambushaus (-69,-60,-11) </code> Tiere <code python> def spawn_tiere(x,y,z): My_list = [PANDA] for i in range(1): mobs.spawn (My_list[0], world(x,y,z)) spawn_tiere(-76,-60,-7) spawn_tiere(-66,-60,-13) spawn_tiere(-66,-60,-13) spawn_tiere(-69,-60,0) spawn_tiere(-66,-56,-8) </code> Kompletter Code <code python> def zaun (x,y,z): blocks.fill(DARK_OAK_FENCE, world(x,y,z,), world(x+24,y,z+24), FillOperation.HOLLOW) blocks.fill (AIR, world(x+1,y,z+1),world(x+23,y,z+23), FillOperation.HOLLOW) zaun(-79,-60,-17) def Bambus (x,y,z): blocks.fill(BAMBOO, world(x,y,z), world(x,y+4,z), FillOperation.REPLACE) blocks.fill(BAMBOO, world(x,y,z+1), world(x,y+3,z+1), FillOperation.REPLACE) blocks.fill(BAMBOO, world(x-1,y,z), world(x-1,y+2,z), FillOperation.REPLACE) Bambus (-76,-60,-13) Bambus (-76,-60,3) Bambus (-74,-60,5) Bambus (-60,-60,-11) Bambus (-65,-60,-15) Bambus (-71,-60,-3) Bambus (-60,-60,3) def Bambushaus (x,y,z): for i in range (4): blocks.fill(BAMBOO_MOSAIC, world(x,y+i,z+i), world(x+6-i,y+i,z+i), FillOperation.HOLLOW) blocks.fill(BAMBOO_MOSAIC, world(x+6-i,y+i,z+i), world(x+6-i,y+i,z+7-i), FillOperation.HOLLOW) blocks.fill(BAMBOO_MOSAIC, world(x+6-i,y+i,z+7-i), world(x,y+i,z+7-i), FillOperation.HOLLOW) Bambushaus (-69,-60,-11) def spawn_tiere(x,y,z): My_list = [PANDA] for i in range(1): mobs.spawn (My_list[0], world(x,y,z)) spawn_tiere(-76,-60,-7) spawn_tiere(-66,-60,-13) spawn_tiere(-66,-60,-13) spawn_tiere(-69,-60,0) spawn_tiere(-66,-56,-8) </code> Weg durch den Zoo (Livia) <code python> #Weg def weg(x,y,z): blocks.fill(STONE_BRICKS, world(x, y, z), world(x-4, y, z+98), FillOperation.HOLLOW) weg(-82, -61, -66) </code> (Im endgültigen Code wurden bei def Funktionen die Initialen der verantwortlichen Person geschrieben.) Bei Spieleinstellungen muss man: -den Welttyp „flach“ wählen -sich zu einem operator machen -„Kreaturen-spawn“ ausschalten -wenn man will auf „immer tag“ stellen Kompletter Code um unsere Welt zu besuchen!**
player.execute("say Willkommen in unserer Welt! Finde den Eingang zum Zoo und dann viel Spass :D") #mauer def zoomauer(x,y,z): blocks.fill(STONE_BRICKS, world(x, y, z), world(x-68, y+2, z+101), FillOperation.HOLLOW) blocks.fill(AIR, world(x-1, y, z+1), world(x-67, y+2, z+100), FillOperation.HOLLOW) zoomauer(-54, -60, -66) #Eingangsbogen def bogen(x,y,z): blocks.fill(STONE_BRICKS, world(x, y, z), world(x-10, y+5, z), FillOperation.HOLLOW) blocks.fill(AIR, world(x-1, y, z), world(x-9, y+4, z), FillOperation.HOLLOW) blocks.fill(STONE_BRICKS, world(x-2, y+6, z), world(x-8, y+6, z), FillOperation.HOLLOW) blocks.fill(STONE_BRICKS, world(x-4, y+7, z), world(x-6, y+7, z), FillOperation.HOLLOW) bogen(-79, -60, -66) #weg def weg(x,y,z): blocks.fill(STONE_BRICKS, world(x, y, z), world(x-4, y, z+98), FillOperation.HOLLOW) weg(-82, -61, -66) ##Gehege Pferde, Esel, Alpaka #Zaun def zaunL(x,y,z): blocks.fill(SPRUCE_FENCE, world(x, y, z), world(x-19, y+1, z-29), FillOperation.HOLLOW) blocks.fill(AIR, world(x-1, y, z-1), world(x-18, y+1, z-28), FillOperation.HOLLOW) zaunL(-60, -60, -33) #Unterstand def unterstandL(x,y,z): blocks.fill(MOSSY_STONE_BRICKS, world(x, y, z), world(x+6, y+2, z), FillOperation.HOLLOW) blocks.fill(MOSSY_STONE_BRICKS, world(x, y, z+9), world(x+6, y+2, z+9), FillOperation.HOLLOW) blocks.fill(MOSSY_STONE_BRICKS, world(x+6, y, z+8), world(x+6, y+2, z+1), FillOperation.HOLLOW) blocks.fill(PLANKS_SPRUCE, world(x, y+3, z), world(x+6, y+3, z+9), FillOperation.HOLLOW) unterstandL(-67, -60, -43) #Teich def teichL(x,y,z): blocks.fill(WATER, world(x, y, z), world(x+3, y, z-4), FillOperation.HOLLOW) teichL(-68, -61, -53) #Baum def baumL(x,y,z): blocks.fill(LEAVES_BIRCH, world(x, y, z), world(x+2, y+2, z-4), FillOperation.HOLLOW) blocks.fill(LOG_BIRCH, world(x+1, y-4, z-2), world(x+1, y+1, z-2), FillOperation.HOLLOW) baumL(-74, -56, -57) baumL(-77, -56, -40) baumL(-71, -56, -45) # Heu def heuL(x,y,z): blocks.fill(HAY_BLOCK, world(x, y, z), world(x, y, z), FillOperation.HOLLOW) heuL(-73, -60, -37) heuL(-73, -60, -36) heuL(-62, -60, -40) #Tiere def spawn_tiereL(x,y,z): My_list = [HORSE, DONKEY,LLAMA] # Erweiterungsmöglichkeit for i in range(2): mobs.spawn (My_list[0],world(x+3,y,z+3)) mobs.spawn(My_list[1], world(x+2,y,z+2)) mobs.spawn(My_list[2], world(x+2,y,z+2)) spawn_tiereL(-74, -60, -52) #kuhgehege #Zaun def zaunIA(x, y, z): blocks.fill(BIRCH_FENCE, world(x, y, z), world(x + 25, y+1, z + 25), FillOperation.HOLLOW) blocks.fill(AIR, world(x + 1, y, z + 1), world(x + 24, y+1, z + 24), FillOperation.HOLLOW) zaunIA(-114, -60, -61) #Wasser def teichA(x,y,z): blocks.fill(WATER, world(x, y, z), world(x+6, y, z+5), FillOperation.HOLLOW) teichA(-97, -61, -44) #Baum def baumA(x,y,z): blocks.fill(LEAVES_SPRUCE, world(x, y, z), world(x+2, y+2, z-4), FillOperation.HOLLOW) blocks.fill(LOG_SPRUCE, world(x+1, y-4, z-2), world(x+1, y+1, z-2), FillOperation.HOLLOW) baumA(-94, -56, -52) baumA(-101, -56, -43) baumA(-109, -56, -48) #Unterstand def wandA(x,y,z): blocks.fill(MOSSY_STONE_BRICKS, world(x, y, z), world(x, y+2, z-4), FillOperation.HOLLOW) wandA(-110, -60,-56) wandA(-102, -60, -56) def wand2A(x,y,z): blocks.fill(MOSSY_STONE_BRICKS, world(x, y, z), world(x-8, y+2, z), FillOperation.HOLLOW) wand2A(-102,-60,-60) def dachA(x,y,z): blocks.fill(MOSSY_STONE_BRICKS, world(x, y, z), world(x-8, y, z+4), FillOperation.HOLLOW) dachA(-102, -57, -60) def hayA(x,y,z): blocks.fill(HAY_BLOCK, world(x, y, z), world(x+2, y, z), FillOperation.HOLLOW) hayA(-106, -60, -59) hayA(-108, -60, -41) def spawn_tiereA(x,y,z): My_list = [MUSHROOM_COW] for i in range(4): mobs.spawn (My_list[0],world(x,y,z)) spawn_tiereA(-102, -60, -52) #pandagehege def zaunV (x,y,z): blocks.fill(DARK_OAK_FENCE, world(x,y,z,), world(x+24,y,z+24), FillOperation.HOLLOW) blocks.fill (AIR, world(x+1,y,z+1),world(x+23,y,z+23), FillOperation.HOLLOW) zaunV(-79,-60,-17) def BambusV (x,y,z): blocks.fill(BAMBOO, world(x,y,z), world(x,y+4,z), FillOperation.REPLACE) blocks.fill(BAMBOO, world(x,y,z+1), world(x,y+3,z+1), FillOperation.REPLACE) blocks.fill(BAMBOO, world(x-1,y,z), world(x-1,y+2,z), FillOperation.REPLACE) BambusV (-76,-60,-13) BambusV (-76,-60,3) BambusV (-74,-60,5) BambusV (-60,-60,-11) BambusV (-65,-60,-15) BambusV (-71,-60,-3) BambusV (-60,-60,3) def BambushausV (x,y,z): for i in range (4): blocks.fill(BAMBOO_MOSAIC, world(x,y+i,z+i), world(x+6-i,y+i,z+i), FillOperation.HOLLOW) blocks.fill(BAMBOO_MOSAIC, world(x+6-i,y+i,z+i), world(x+6-i,y+i,z+7-i), FillOperation.HOLLOW) blocks.fill(BAMBOO_MOSAIC, world(x+6-i,y+i,z+7-i), world(x,y+i,z+7-i), FillOperation.HOLLOW) BambushausV (-69,-60,-11) def spawn_tiereV(x,y,z): My_list = [PANDA] for i in range(1): mobs.spawn (My_list[0], world(x,y,z)) spawn_tiereV(-76,-60,-7) spawn_tiereV(-66,-60,-13) spawn_tiereV(-66,-60,-13) spawn_tiereV(-69,-60,0) spawn_tiereV(-66,-56,-8) #schweinegehege def zaunIM(x,y,z): blocks.fill(BIRCH_FENCE, world(x,y,z), world(x+25,y,z+25), FillOperation.HOLLOW) blocks.fill(AIR, world(x+1,y,z+1), world(x+24,y,z+24), FillOperation.HOLLOW) zaunIM(-113,-60,-29) def zaunIIM(x,y,z): blocks.fill(BIRCH_FENCE, world(x,y,z), world(x+25,y,z+25), FillOperation.HOLLOW) blocks.fill(AIR, world(x+1,y,z+1), world(x+24,y,z+24), FillOperation.HOLLOW) zaunIIM(-113,-59,-29) def spawn_tiereM(x,y,z): My_list = [PIG, SHEEP] for i in range(4): mobs.spawn(My_list[0],world(x+5,y,z+5)) mobs.spawn(My_list[1], world(x+5,y,z+5)) spawn_tiereM(-113,-60,-29) def spawn_blumenM(x_base,y_base,z_base): blumen = [OXEYE_DAISY, PINK_TULIP, LILY_OF_THE_VALLEY, CORNFLOWER, ALLIUM] for x in range(23): for z in range(23): if randint(0,5) == 0: blocks.place(blumen[randint(0,4)], world(x_base + 1 + x, y_base, z_base + 1 + z)) spawn_blumenM(-113,-60,-29) def baumM(x,y,z): blocks.fill(LEAVES_BIRCH, world(x + 6, y + 4, z + 6), world(x, y + 7, z), FillOperation.REPLACE) blocks.fill(LOG_BIRCH, world(x + 3, y, z + 3), world(x + 3, y + 5, z + 3), FillOperation.REPLACE) baumM(-113,-60,-29) # Startkoordinaten: -105, -60, 0 #NM def aquarium(x, y, z): y_base = 0 bottom = 1 tunnelY = 2 tunnelHeight = 5 blocks.fill(GLASS, world(-104, -60, 1), world(-104 + x, -60 + y, 1 + z), FillOperation.HOLLOW) blocks.fill(WATER, world(-104, -60, 1), world(-104 + x, -60 + y, 1 + z), FillOperation.KEEP) for i in range(2, x + 1): for k in range(2, z + 1): thickness = randint(1, 3) top_sand = bottom + thickness - 1 if randint(0, 25) == 1: blocks.fill(SEA_LANTERN, world(-105 + i, -59, 0 + k), world(-105 + i, -59 + top_sand, 0 + k), FillOperation.REPLACE) for f in range(2): mobs.spawn(TROPICAL_FISH, world(-105 + i, -59 + top_sand + 2, 0 + k)) if randint(0, 35) == 1: mobs.spawn(AXOLOTL, world(-105 + i, -59 + top_sand + 2, 0 + k)) mobs.spawn(GLOW_SQUID, world(-105 + i, -59 + top_sand + 2, 0 + k)) if randint(0, 5) == 1: mobs.spawn(DROWNED, world(-105 + i, -59 + top_sand + 2, 0 + k)) else: if randint(0, 10) == 1: blocks.fill(GRAVEL, world(-105 + i, -59, 0 + k), world(-105 + i, -59 + top_sand, 0 + k), FillOperation.REPLACE) else: blocks.fill(SAND, world(-105 + i, -59, 0 + k), world(-105 + i, -59 + top_sand, 0 + k), FillOperation.REPLACE) mid_x = (1 + x / 2) blocks.fill(GLASS, world(-105 + mid_x - 2, -59 + tunnelY - 1, 1), world(-105 + mid_x + 2, -59 + tunnelHeight + 2, 1 + z), FillOperation.REPLACE) blocks.fill(GLASS, world(-104, -59 + tunnelY - 1, 1 + mid_x - 2), world(-104 + x, -59 + tunnelHeight + 2, 1 + mid_x + 2), FillOperation.REPLACE) blocks.fill(AIR, world(-104, -59 + tunnelHeight + 2, 1 + mid_x), world(-104 + x, -59 + tunnelHeight + 2, 1 + mid_x), FillOperation.REPLACE) blocks.fill(AIR, world(-105 + mid_x, -59 + tunnelHeight + 2, 1), world(-105 + mid_x, -59 + tunnelHeight + 2, 1 + z), FillOperation.REPLACE) blocks.fill(SEA_LANTERN, world(-104, -59 + tunnelHeight + 3, 1 + mid_x), world(-104 + x, -59 + tunnelHeight + 3, 1 + mid_x), FillOperation.REPLACE) blocks.fill(SEA_LANTERN, world(-105 + mid_x, -59 + tunnelHeight + 3, 1), world(-105 + mid_x, -59 + tunnelHeight + 3, 1 + z), FillOperation.REPLACE) blocks.fill(AIR, world(-105 + mid_x - 1, -60 + tunnelY, 1), world(-105 + mid_x + 1, -59 + tunnelHeight + 1, 1 + z), FillOperation.REPLACE) blocks.fill(AIR, world(-104, -60 + tunnelY, 1 + mid_x - 1), world(-104 + x, -59 + tunnelHeight + 1, 1 + mid_x + 1), FillOperation.REPLACE) aquarium(12, 12, 12) #restliche deko def dekobaum(x,y,z): blocks.fill(LEAVES_OAK, world(x, y, z), world(x+2, y+2, z-4), FillOperation.HOLLOW) blocks.fill(LOG_OAK, world(x+1, y-4, z-2), world(x+1, y+1, z-2), FillOperation.HOLLOW) dekobaum(-65, -56, 28) dekobaum(-74, -56, 21) dekobaum(-67, -56, 15) dekobaum(-111, -56, 27) dekobaum(-98, -56, 20)