Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
| gf2:projekte:2024:minecraft:2d1gruppe2 [2025/04/06 18:03] – [Code:] perrens | gf2:projekte:2024:minecraft:2d1gruppe2 [2025/04/06 22:32] (aktuell) – [Teile des Codes:] adolphm | ||
|---|---|---|---|
| Zeile 3: | Zeile 3: | ||
| ==== Idee: ==== | ==== Idee: ==== | ||
| - | Zuerst waren wir unentschlossen was wir machen wollen und haben viele Ideen in den Raum geworfen. Schliesslich haben wir uns dann darauf geeinigt unsere Ideen zu kombinieren und haben uns dazu entschlossen ein Baumhaus, mit Wendeltreppe zu bauen. Doch wenn man in das Baumhaus hineingeht, findet man dort ein Gym und ein Restaurant. Von aussen haben wir einen grossen Baum programmiert, | + | Zuerst waren wir unentschlossen was wir machen wollen und haben viele Ideen in den Raum geworfen. Schliesslich haben wir uns dann darauf geeinigt unsere Ideen zu kombinieren und haben uns dazu entschlossen ein Baumhaus, mit Wendeltreppe zu bauen. Doch wenn man in das Baumhaus hineingeht, findet man dort ein Gym und eine Bibliothek. Von aussen haben wir einen grossen Baum programmiert, |
| ==== Teile des Codes: ==== | ==== Teile des Codes: ==== | ||
| Zeile 18: | Zeile 18: | ||
| - Hausdach | - Hausdach | ||
| - | - Innenausstattung -> Gymgeräte, | + | - Innenausstattung -> Gymgeräte, |
| - Aussendekoration | - Aussendekoration | ||
| Zeile 74: | Zeile 74: | ||
| -Zu Beginn hatten wir etwas unterschiedliche Erwartungen an das Aussehen des Baumhauses. Nach mehreren Besprechungen und Brainstorming-Sitzungen konnten wir diese jedoch anpassen und so unsere Ziele durch Zusammenarbeit, | -Zu Beginn hatten wir etwas unterschiedliche Erwartungen an das Aussehen des Baumhauses. Nach mehreren Besprechungen und Brainstorming-Sitzungen konnten wir diese jedoch anpassen und so unsere Ziele durch Zusammenarbeit, | ||
| - | -Des weitern gab es auch noch Schwierigkeiten beim Coden den richtigen Namen einiger Blöcke zu finden, das Kürzen, die Ausrichtungsänderung von Blöcken herauszufinden und manchmal kam es auch zu einem Codeverlust auf Grund von technischen Problemen. Doch all diese Probleme, konnten wir durch Geduld und Fragen schliesslich lösen. | + | -Des weitern gab es auch noch Schwierigkeiten beim Coden, den richtigen Namen einiger Blöcke zu finden, das Kürzen, die Ausrichtungsänderung von Blöcken herauszufinden und manchmal kam es auch zu einem Codeverlust auf Grund von technischen Problemen. Doch all diese Probleme, konnten wir durch Geduld und Fragen schliesslich lösen. |
| | | ||
| Zeile 86: | Zeile 86: | ||
| ==== Code: ==== | ==== Code: ==== | ||
| - | | + | <code phyton> |
| + | def bauetreppe(): | ||
| agent.set_assist(PLACE_ON_MOVE, | agent.set_assist(PLACE_ON_MOVE, | ||
| agent.set_assist(DESTROY_OBSTACLES, | agent.set_assist(DESTROY_OBSTACLES, | ||
| Zeile 95: | Zeile 96: | ||
| hoehe= 10 | hoehe= 10 | ||
| laenge= 3 | laenge= 3 | ||
| - | | + | # |
| while hoehe > 0: | while hoehe > 0: | ||
| agent.move(FORWARD, | agent.move(FORWARD, | ||
| Zeile 144: | Zeile 145: | ||
| agent.turn(LEFT) | agent.turn(LEFT) | ||
| hoehe= hoehe-1 | hoehe= hoehe-1 | ||
| - | | + | #Dasselbe Muster für die Treppe immer wiederholt mit Variabler Länge und Höhe |
| - | def bauestamm(): | + | |
| + | def bauestamm(): | ||
| x=13 | x=13 | ||
| y=-60 | y=-60 | ||
| Zeile 165: | Zeile 167: | ||
| blocks.place(OAK_WOOD_SLAB, | blocks.place(OAK_WOOD_SLAB, | ||
| blocks.place(OAK_WOOD_SLAB, | blocks.place(OAK_WOOD_SLAB, | ||
| - | | + | #Baumstamm des Baumhauses mit Fill und Place |
| - | #Die nächsten 4 for i in range sind die zufällige Deko vom Baumstamm (Blätter) | + | #Die nächsten 4 for i in range sind die zufällige Deko vom Baumstamm (Blätter) |
| for i in range(13): | for i in range(13): | ||
| a=13 | a=13 | ||
| Zeile 172: | Zeile 174: | ||
| c=randint(19, | c=randint(19, | ||
| blocks.place(blocks.block_with_data(DARK_OAK_LEAVES, | blocks.place(blocks.block_with_data(DARK_OAK_LEAVES, | ||
| + | |||
| for i in range(13): | for i in range(13): | ||
| a=randint(14, | a=randint(14, | ||
| Zeile 177: | Zeile 180: | ||
| c=18 | c=18 | ||
| blocks.place(blocks.block_with_data(DARK_OAK_LEAVES, | blocks.place(blocks.block_with_data(DARK_OAK_LEAVES, | ||
| + | |||
| for i in range(13): | for i in range(13): | ||
| a=17 | a=17 | ||
| Zeile 182: | Zeile 186: | ||
| c=randint(19, | c=randint(19, | ||
| blocks.place(blocks.block_with_data(DARK_OAK_LEAVES, | blocks.place(blocks.block_with_data(DARK_OAK_LEAVES, | ||
| + | |||
| for i in range(13): | for i in range(13): | ||
| a=randint(14, | a=randint(14, | ||
| Zeile 187: | Zeile 192: | ||
| c=22 | c=22 | ||
| blocks.place(blocks.block_with_data(DARK_OAK_LEAVES, | blocks.place(blocks.block_with_data(DARK_OAK_LEAVES, | ||
| - | | + | |
| + | def Baum2(x, | ||
| #1,links, unten | #1,links, unten | ||
| blocks.fill(AIR, | blocks.fill(AIR, | ||
| Zeile 227: | Zeile 233: | ||
| blocks.fill(AIR, | blocks.fill(AIR, | ||
| blocks.fill(AIR, | blocks.fill(AIR, | ||
| + | |||
| + | |||
| blocks.fill(LEAVES_BIRCH, | blocks.fill(LEAVES_BIRCH, | ||
| # | # | ||
| Zeile 260: | Zeile 268: | ||
| blocks.fill(AIR, | blocks.fill(AIR, | ||
| blocks.fill(AIR, | blocks.fill(AIR, | ||
| + | |||
| blocks.fill(LEAVES_BIRCH, | blocks.fill(LEAVES_BIRCH, | ||
| # | # | ||
| Zeile 289: | Zeile 298: | ||
| blocks.fill(AIR, | blocks.fill(AIR, | ||
| blocks.fill(AIR, | blocks.fill(AIR, | ||
| + | |||
| blocks.fill(LEAVES_BIRCH, | blocks.fill(LEAVES_BIRCH, | ||
| # | # | ||
| Zeile 314: | Zeile 324: | ||
| blocks.fill(AIR, | blocks.fill(AIR, | ||
| blocks.fill(AIR, | blocks.fill(AIR, | ||
| + | |||
| blocks.fill(LEAVES_BIRCH, | blocks.fill(LEAVES_BIRCH, | ||
| # | # | ||
| Zeile 335: | Zeile 346: | ||
| blocks.fill(AIR, | blocks.fill(AIR, | ||
| blocks.fill(AIR, | blocks.fill(AIR, | ||
| + | |||
| blocks.fill(LEAVES_BIRCH, | blocks.fill(LEAVES_BIRCH, | ||
| # | # | ||
| Zeile 352: | Zeile 364: | ||
| blocks.fill(AIR, | blocks.fill(AIR, | ||
| blocks.fill(AIR, | blocks.fill(AIR, | ||
| + | |||
| blocks.fill(LEAVES_BIRCH, | blocks.fill(LEAVES_BIRCH, | ||
| # | # | ||
| Zeile 365: | Zeile 378: | ||
| blocks.fill(AIR, | blocks.fill(AIR, | ||
| blocks.fill(AIR, | blocks.fill(AIR, | ||
| + | |||
| blocks.fill(LEAVES_BIRCH, | blocks.fill(LEAVES_BIRCH, | ||
| # | # | ||
| Zeile 377: | Zeile 391: | ||
| # | # | ||
| blocks.fill(AIR, | blocks.fill(AIR, | ||
| - | blocks.fill(AIR, | + | blocks.fill(AIR, |
| + | | ||
| #8 | #8 | ||
| blocks.fill(LEAVES_BIRCH, | blocks.fill(LEAVES_BIRCH, | ||
| - | blocks.fill(LEAVES_BIRCH, | + | blocks.fill(LEAVES_BIRCH, |
| - | #Die Baumkrone aus Blätter | + | |
| - | #Noch ein Stamm in der Mittel, dass die Blätter nicht abfallen | + | |
| + | #Die Baumkrone aus Blätter | ||
| + | #Noch ein Stamm in der Mittel, dass die Blätter nicht abfallen | ||
| blocks.fill(LOG_OAK, | blocks.fill(LOG_OAK, | ||
| - | | + | |
| - | blocks.fill(OAK_FENCE, | + | def DEKO(x, y, z,): |
| - | | + | blocks.fill(OAK_FENCE, |
| blocks.fill(OAK_FENCE, | blocks.fill(OAK_FENCE, | ||
| - | blocks.fill(PLANKS_BIRCH, | + | blocks.fill(PLANKS_BIRCH, |
| - | | + | |
| blocks.fill(PLANKS_BIRCH, | blocks.fill(PLANKS_BIRCH, | ||
| blocks.place(TORCH, | blocks.place(TORCH, | ||
| Zeile 437: | Zeile 453: | ||
| blocks.place(TORCH, | blocks.place(TORCH, | ||
| blocks.place(TORCH, | blocks.place(TORCH, | ||
| - | | + | |
| + | def baueboden(): | ||
| + | |||
| blocks.fill(LOG_OAK, | blocks.fill(LOG_OAK, | ||
| blocks.fill(AIR, | blocks.fill(AIR, | ||
| blocks.fill(AIR, | blocks.fill(AIR, | ||
| - | | + | #der Holzboden des Hauses mit einem Loch, dass man hochlaufen kann |
| - | #hier werden dann die Agenteneinstellungen für die Wände gemacht | + | #hier werden dann die Agenteneinstellungen für die Wände gemacht |
| - | agent.set_assist(PLACE_ON_MOVE, | + | agent.set_assist(PLACE_ON_MOVE, |
| - | agent.set_assist(DESTROY_OBSTACLES, | + | agent.set_assist(DESTROY_OBSTACLES, |
| - | agent.set_item(GLASS, | + | agent.set_item(GLASS, |
| - | agent.set_item(LOG_OAK, | + | agent.set_item(LOG_OAK, |
| - | agent.set_slot(2) | + | agent.set_slot(2) |
| - | agent.teleport(world(24, | + | agent.teleport(world(24, |
| - | def wand(): | + | |
| - | laenge=18 | + | def wand2(hoehe): |
| - | breite= 5 | + | |
| - | agent.move(UP, | + | |
| - | agent.set_assist(PLACE_ON_MOVE, | + | |
| - | agent.move(FORWARD, | + | |
| - | agent.turn(TurnDirection.LEFT) | + | |
| - | agent.move(FORWARD, | + | |
| - | agent.set_assist(PLACE_ON_MOVE, | + | |
| - | agent.turn(TurnDirection.LEFT) | + | |
| - | wand() | + | |
| - | def wand2(hoehe): | + | |
| n=0 | n=0 | ||
| m=0 | m=0 | ||
| + | |||
| for i in range(hoehe): | for i in range(hoehe): | ||
| while(m< | while(m< | ||
| Zeile 477: | Zeile 486: | ||
| m=m+1 | m=m+1 | ||
| agent.move(UP, | agent.move(UP, | ||
| - | m=0 | + | m=0 |
| - | def bodenanpassungen(): | + | |
| + | |||
| + | def bodenanpassungen(): | ||
| #Damit die Treppe mit dem Boden Zusammenpasst | #Damit die Treppe mit dem Boden Zusammenpasst | ||
| blocks.fill(LOG_OAK, | blocks.fill(LOG_OAK, | ||
| blocks.fill(LOG_OAK, | blocks.fill(LOG_OAK, | ||
| - | | + | |
| + | def Wasserfall(): | ||
| #Platz frei machen | #Platz frei machen | ||
| blocks.fill(AIR, | blocks.fill(AIR, | ||
| Zeile 518: | Zeile 530: | ||
| blocks.place(TORCH, | blocks.place(TORCH, | ||
| blocks.place(TORCH, | blocks.place(TORCH, | ||
| - | | + | |
| + | |||
| + | def cafeteria(): | ||
| # | # | ||
| blocks.fill(BOOKSHELF, | blocks.fill(BOOKSHELF, | ||
| Zeile 547: | Zeile 561: | ||
| blocks.fill(BLACK_CARPET, | blocks.fill(BLACK_CARPET, | ||
| blocks.fill(BLACK_CARPET, | blocks.fill(BLACK_CARPET, | ||
| - | | + | |
| + | def GYM(x, y, z): | ||
| #Gewichte Langhantel | #Gewichte Langhantel | ||
| blocks.place(OBSIDIAN, | blocks.place(OBSIDIAN, | ||
| Zeile 591: | Zeile 606: | ||
| blocks.fill(blocks.block_with_data(LEVER, | blocks.fill(blocks.block_with_data(LEVER, | ||
| blocks.fill(blocks.block_with_data(LEVER, | blocks.fill(blocks.block_with_data(LEVER, | ||
| - | | + | |
| - | def Dach (x,y,z): | + | |
| + | |||
| + | #Glasdach für das Hauses | ||
| + | def Dach (x,y,z): | ||
| pyramide=6 | pyramide=6 | ||
| for i in range(pyramide): | for i in range(pyramide): | ||
| blocks.fill(GLASS, | blocks.fill(GLASS, | ||
| - | | + | |
| - | def on_travelled_walk(): | + | #Sätze fürs Hochlaufen |
| + | def on_travelled_walk(): | ||
| x = player.position().get_value(Axis.X) | x = player.position().get_value(Axis.X) | ||
| y = player.position().get_value(Axis.Y) | y = player.position().get_value(Axis.Y) | ||
| z = player.position().get_value(Axis.Z) | z = player.position().get_value(Axis.Z) | ||
| + | |||
| #In diesem Teil wird gemacht, dass bei bestimmten Koordinaten ein Satz eingespielt wird. | #In diesem Teil wird gemacht, dass bei bestimmten Koordinaten ein Satz eingespielt wird. | ||
| + | |||
| if (10< | if (10< | ||
| - | gameplay.title(mobs.target(NEAREST_PLAYER), | + | gameplay.title(mobs.target(NEAREST_PLAYER), |
| + | |||
| if (10< | if (10< | ||
| gameplay.title(mobs.target(NEAREST_PLAYER), | gameplay.title(mobs.target(NEAREST_PLAYER), | ||
| + | |||
| if (10< | if (10< | ||
| gameplay.title(mobs.target(NEAREST_PLAYER), | gameplay.title(mobs.target(NEAREST_PLAYER), | ||
| - | | + | |
| - | baueboden() | + | player.on_travelled(WALK, |
| - | wand2(5) | + | |
| - | bauetreppe() | + | |
| - | DEKO(10, -56, 22) | + | baueboden() |
| - | Dach(6, | + | wand2(5) |
| - | bauestamm() | + | bauetreppe() |
| - | bodenanpassungen() | + | DEKO(10, -56, 22) |
| - | Wasserfall() | + | Dach(6, |
| - | cafeteria() | + | bauestamm() |
| - | Baum2(6, | + | bodenanpassungen() |
| - | #Wenn man in den Chat schreibt Gym dann spawnt das Gym | + | Wasserfall() |
| - | def on_chat(): | + | cafeteria() |
| + | Baum2(6, | ||
| + | |||
| + | #Wenn man in den Chat schreibt Gym dann spawnt das Gym | ||
| + | def on_chat(): | ||
| GYM(5, -60, 23) | GYM(5, -60, 23) | ||
| - | | + | player.on_chat(" |
| - | gameplay.time_set(DayTime.NIGHT) | + | |
| - | gameplay.time_add(1000) | + | |
| - | gameplay.title(mobs.target(NEAREST_PLAYER), | + | |
| - | ==== Leere Welt: ==== | + | |
| + | gameplay.time_set(DayTime.NIGHT) | ||
| + | gameplay.time_add(1000) | ||
| + | gameplay.title(mobs.target(NEAREST_PLAYER), | ||
| + | |||
| + | </ | ||
| + | |||
| + | ==== Leere Welt: ==== | ||
| + | wird flache Welt benötigt | ||
| ==== Anleitung: ==== | ==== Anleitung: ==== | ||
| Zuerst geht man die Treppen zu dem Baumhaus nach oben, dann tritt man ein. | Zuerst geht man die Treppen zu dem Baumhaus nach oben, dann tritt man ein. | ||
| - | Für das Gym muss man " | + | Für das Gym muss man " |