Das offizielle Minecraft Wiki twittert hier: Wiki-Twitter  –  Chatte im Wiki-Discord  – Noch keinen Server gefunden? Es gibt einen Wiki-Server

Maschinen/Wegfindungssystem (Befehle)

Aus Technik Wiki
Wechseln zu: Navigation, Suche
Gruppe: Grid Trichter.png
Maschinen

Grid Roter Sand blass.png mit Mechaniken

Grid Redstone blass.png mit Redstone
                Hier:
Grid Befehlsblock.png mit Befehlen

Die vorgestellte Technik kann in der Mechanik-Welt angesehen werden.

Das Wegfindungssystem (engl. Pathfinding) ist in der Lage, den kürzesten Weg zum Ziel zu finden. Je nach Ausführung kann es auch Hindernisse in Form von Wänden oder auch Irrgärten umgehen.

Inhaltsverzeichnis

Variante 1[Bearbeiten | Quelltext bearbeiten]

Maschinen Wegfindungssystem (Befehle) Bild 1.1.png Maschinen Wegfindungssystem (Befehle) Bild 1.2.png

In diesem Beispiel wird eine Art Drohne (Rüstungsständer) erstellt, die von jedem Bereich aus, den Spieler finden kann. Sie bewegt sich dabei nur horizontal und kann sich durch alle Hindernisse hindurch bewegen. Dieser Rüstungsständer mit klebrigen Kolben als Erscheinungsbild bewegt sich, in dem um ihm herum acht weitere Rüstungsständer erschaffen werden, die einen normalen Kolben als Kopf tragen. Nur der Rüstungsständer, der dem Ziel am nächsten ist, bekommt ein Etikett, sodass die Drohne nur zu diesem Rüstungsständer sich bewegt. Dieser Vorgang wird solange wiederholt, bis sie das Ziel erreicht hat. Damit man das nun nutzen kann, wird zuerst ein Befehlsblock aktiviert, der die Drohne in Form eines schwebenden klebrigen Kolbens erstelltBefehl 1.1. Nun müssen die acht normalen Kolben erschaffen werden, dazu werden vier Befehle benötigtBefehl 1.2Befehl 1.3Befehl 1.4Befehl 1.5. Zuerst werden zwei Kolben östlich und westlich platziert, sie besitzen ein Etikett mit A, was auch die Drohne besitzt. Nun wird von jedem der drei Rüstungsständern mit dem Etikett A ein weiterer Rüstungsständer erschaffen, mit dem Etikett B. Nun sind es schon insgesamt sechs Rüstungsständer, dann folgt der letzte Befehl, mit dem von den Rüstungsständern, mit dem Etikett B nochmals drei weitere Rüstungsständer erschaffen werden. Nun besitzt die Drohne acht weitere Rüstungsständer, welche nun für die Zielerfassung benutzt werden. Der nächstgelegene Spieler gibt dem am nächsten liegenden Rüstungsständer ein Etikett für die PositionBefehl 1.6 und danach werden alle anderen Rüstungsständer gelöschtBefehl 1.7. Anschließend wird die Drohne zu dem einen übrig gebliebenen Rüstungsständer teleportiertBefehl 1.8. Damit nun auch dieser Rüstungsständer verschwindet, wird er gelöschtBefehl 1.9. So bewegt sich die Drohne Tick für Tick um einen halben Meter zum Ziel. Schaltet man alles aus, so werden sämtliche Rüstungsständer gelöschtBefehl 1.10.


Befehlsblöcke mit Befehlen:
summon minecraft:armor_stand ~5 ~1 ~ {NoGravity:true,CustomName:"ObjWegFS.1Finder",Tags:["EtiWegFS.1Alle","EtiWegFS.1Position","EtiWegFS.1A"],Small:true,Invisible:true,Marker:true,ArmorItems:[{},{},{},{id:"minecraft:sticky_piston",Count:1b} ] }


execute @e[type=minecraft:armor_stand,name=ObjWegFS.1Finder] ~ ~ ~ /summon minecraft:armor_stand ~0.5 ~ ~ {NoGravity:true,CustomName:"ObjWegFS.1Nachbar",Tags:["EtiWegFS.1Alle","EtiWegFS.1A"],Small:true,Invisible:true,Marker:true,ArmorItems:[{},{},{},{id:"minecraft:piston",Count:1b} ] }
execute @e[type=minecraft:armor_stand,name=ObjWegFS.1Finder] ~ ~ ~ /summon minecraft:armor_stand ~-0.5 ~ ~ {NoGravity:true,CustomName:"ObjWegFS.1Nachbar",Tags:["EtiWegFS.1Alle","EtiWegFS.1A"],Small:true,Invisible:true,Marker:true,ArmorItems:[{},{},{},{id:"minecraft:piston",Count:1b} ] }
execute @e[type=minecraft:armor_stand,tag=EtiWegFS.1A] ~ ~ ~ /summon minecraft:armor_stand ~ ~ ~0.5 {NoGravity:true,CustomName:"ObjWegFS.1Nachbar",Tags:["EtiWegFS.1Alle","EtiWegFS.1B"],Small:true,Invisible:true,Marker:true,ArmorItems:[{},{},{},{id:"minecraft:piston",Count:1b} ] }
execute @e[type=minecraft:armor_stand,tag=EtiWegFS.1B] ~ ~ ~ /summon minecraft:armor_stand ~ ~ ~-1 {NoGravity:true,CustomName:"ObjWegFS.1Nachbar",Tags:["EtiWegFS.1Alle"],Small:true,Invisible:true,Marker:true,ArmorItems:[{},{},{},{id:"minecraft:piston",Count:1b} ] }
execute @p[r=150] ~ ~ ~ /scoreboard players tag @e[type=minecraft:armor_stand,tag=EtiWegFS.1Alle,c=1] add EtiWegFS.1Position
execute @p[r=150] ~ ~ ~ /execute @e[type=minecraft:armor_stand,name=ObjWegFS.1Finder,tag=EtiWegFS.1Alle,c=1] ~ ~ ~ /kill @e[type=minecraft:armor_stand,tag=!EtiWegFS.1Position,r=2]
execute @e[type=minecraft:armor_stand,name=ObjWegFS.1Finder,tag=EtiWegFS.1Alle] ~ ~ ~ /tp @e[type=minecraft:armor_stand,name=ObjWegFS.1Finder,tag=EtiWegFS.1Alle] @e[type=minecraft:armor_stand,name=!ObjWegFS.1Finder,tag=EtiWegFS.1Alle,r=2]
execute @e[type=minecraft:armor_stand,name=ObjWegFS.1Finder,tag=EtiWegFS.1Alle] ~ ~ ~ /kill @e[type=minecraft:armor_stand,name=!ObjWegFS.1Finder,tag=EtiWegFS.1Alle,r=2]


kill @e[tag=EtiWegFS.1Alle]