Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
| ef:minecraftauftraege [2024/09/03 14:53] – lehmannr | ef:minecraftauftraege [2024/09/10 15:39] (aktuell) – lehmannr | ||
|---|---|---|---|
| Zeile 19: | Zeile 19: | ||
| * Schreibe eine Funktion linieDuo(n), | * Schreibe eine Funktion linieDuo(n), | ||
| * Schreibe eine Funktion linieListe(l), | * Schreibe eine Funktion linieListe(l), | ||
| + | * Schreibe eine Funktion Parkett(m1, m2, n), der man zwei Materialien und eine Zahl übergeben kann. Danach wird ein Schachbrettmuster der Breite und Länge n gebaut aus den Materialien m1 und m2. | ||
| + | |||
| + | **Auftrag 3**\\ | ||
| + | Schreibe ein Programm, welches deinen Agenten dazu bringt, Diamanten einzusammeln und Knochen nicht einzusammeln (bzw. wieder wegzuwerfen)\\ | ||
| + | Erstelle dazu eine flache Welt und kopiere den untenstehenden Code in deinen Codebuilder. | ||
| + | * Das Feld ist 30x30 gross (0,-60,0) bis (30,-60,30) | ||
| + | * Ich werde zufällig Knochen und Diamanten platzieren | ||
| + | * Dein Agent soll die Diamanten aufsammeln und die Knochen nicht | ||
| + | * Mit dem Chatbefehl build_arena kannst du die Arena bauen | ||
| + | * Mit dem Chatbefehl spread_items kannst du Knochen und Diamanten verteilen | ||
| + | * Du sollts den Code start schreiben, dieser beginnt mit teleport_agent, | ||
| + | |||
| </ | </ | ||
| + | |||
| + | <sxh python highlight: | ||
| + | def build_arena(): | ||
| + | blocks.fill(SANDSTONE, | ||
| + | blocks.fill(212, | ||
| + | blocks.fill(212, | ||
| + | blocks.fill(212, | ||
| + | blocks.fill(212, | ||
| + | blocks.fill(AIR, | ||
| + | blocks.fill(211, | ||
| + | |||
| + | |||
| + | player.on_chat(" | ||
| + | |||
| + | |||
| + | def spread_items(): | ||
| + | | ||
| + | for i in range(10): | ||
| + | agent.set_item(DIAMOND, | ||
| + | a = randint(1, 29) | ||
| + | b = randint(1, | ||
| + | agent.teleport(world(a, | ||
| + | agent.drop(BACK, | ||
| + | | ||
| + | for i in range(10): | ||
| + | agent.set_item(BONE, | ||
| + | a = randint(1, 29) | ||
| + | b = randint(1, | ||
| + | agent.teleport(world(a, | ||
| + | agent.drop(BACK, | ||
| + | | ||
| + | |||
| + | player.on_chat(" | ||
| + | |||
| + | def teleport_agent(): | ||
| + | a = randint(1, 29) | ||
| + | b = randint(1, | ||
| + | agent.teleport(world(a, | ||
| + | |||
| + | def start(): | ||
| + | teleport_agent() | ||
| + | time1 = gameplay.time_query(GAME_TIME) | ||
| + | while gameplay.time_query(GAME_TIME)-time1< | ||
| + | # | ||
| + | u = randint(1, | ||
| + | agent.move(FORWARD, | ||
| + | agent.collect_all() | ||
| + | agent.move(FORWARD, | ||
| + | agent.collect_all() | ||
| + | agent.turn_left() | ||
| + | if u==2: | ||
| + | agent.turn_left() | ||
| + | |||
| + | player.on_chat(" | ||
| + | |||
| + | # | ||
| + | |||
| + | # | ||
| + | |||
| + | # | ||
| + | </ | ||