Technik Wiki
Registrieren
Advertisement
Gruppe: Grid Ketten-Befehlsblock
Systeme

Grid Roter Sand blass mit Mechaniken

Grid Redstone blass mit Redstone
                Hier:
Grid Befehlsblock mit Befehlen
Verfügbar in:
Wiki Mechanik-Welt Mechanik-Welt

Teleporter sind bestimmte Bauwerke die den Spieler zu einem anderen Ort teleportieren. Teleporter können auch mit einander verbunden werden, sodass man beim Ziel-Ort ebenfalls einen Teleporter vorfindet um wieder dorthin zurück zu gelangen wo man her kam. Die allgemeinste Form erlaubt es einen Spieler von irgendeinem beliebigen Teleporter zu einem anderen beliebigen Teleporter sich zu teleportieren.

Variante 1[]

Teleporter (Befehle) Bild 1.1

Dieser Teleporter teleportiert Spieler zu einem anderen Ort. Von dort aus muss man jedoch selbst wieder zurücklaufen falls man wieder zurück zum Ort des Teleporters möchte.

Einschalten

Das Portal wird beim Einschalten platziert.

  • Befehl 1.1 Zuerst wird ein Rüstungsständer erzeugt, der keine Schwerkraft besitzt, unsichtbar ist und keine Hitbox hat.
  • Befehl 1.2 An der Position des Rüstungsständers wird anschließend ein Konstruktionsblock platziert, der das Portal lädt.
  • Befehl 1.3 Damit der Konstruktionsblock aktiviert wird, wird ein Redstone-Block an der Position des Rüstungsständers um einen Block weiter nach oben platziert.
Wiederholen

Spieler können in ein Portal laufen und erhalten Geräusche und Bildschirmeffekte, wie bei einem Netherportal und werden teleportiert.

  • Befehl 1.4 An der Position des Rüstungsständers werden Portalpartikel erzeugt, sodass man sehen kann wo der Teleport-Bereich liegt.
  • Befehl 1.5 Spieler die sich in das Portal stellen, erhalten ein Etikett, damit sie als solche schon mal erkannt werden.
  • Befehl 1.6 Spieler die das Etikett besitzen, hören jetzt Enderman-Teleportgeräusche.
  • Befehl 1.7 Anschließend erhalten diese Spieler den Übelkeitseffekt, damit der Bildschirm verschwimmt, wie man es beim Laufen in ein Netherportal her kennt.
  • Befehl 1.8 Nun werden die Spieler zu dem neuen Ort teleportiert. Aktuell sind es wenige Meter weit entfernt, hier könnte man auch absolute Koordinaten einfügen, welche weiter weg liegen.
  • Befehl 1.9 Wenn der Teleportvorgang abgeschlossen ist, wird das Etikett zur Erkennung von Spielern die sich teleportieren möchten wieder entfernt.
Ausschalten

Das Portal wird beim Ausschalten wieder entfernt.

  • Befehl 1.10 Das Portal wird durch Luft ersetzt und somit entfernt.
  • Befehl 1.11 Der Rüstungsständer wird ebenfalls entfernt.
  • Befehl 1.12 Falls der Spieler noch das Etikett besitzen sollte, so wird es ihm jetzt spätestens entfernt.

Befehlsblöcke mit Befehlen:
summon minecraft:armor_stand ~ ~ ~-8 {NoGravity:true,Invisible:true,Marker:true,Tags:["EtiTeleP.1Alle","EtiTeleP.1Teleporter"]}
execute at @e[type=minecraft:armor_stand,tag=EtiTeleP.1Teleporter] run setblock ~ ~ ~ minecraft:structure_block{posX:-2,posY:0,posZ:-2,mode:"LOAD",name:"teleporter:v1portal"} replace
execute at @e[type=minecraft:armor_stand,tag=EtiTeleP.1Teleporter] run setblock ~ ~1 ~ minecraft:redstone_block replace


execute at @e[type=minecraft:armor_stand,tag=EtiTeleP.1Teleporter] run particle minecraft:portal ~ ~1 ~ 0 1 0 0.7 35 force @a[distance=..15]
execute at @e[type=minecraft:armor_stand,tag=EtiTeleP.1Teleporter] as @p[distance=..2,tag=!EtiTeleP.1Spieler] at @s if block ~ ~-1 ~ minecraft:purpur_block run tag @s add EtiTeleP.1Spieler
execute at @e[type=minecraft:armor_stand,tag=EtiTeleP.1Teleporter] run playsound minecraft:entity.endermen.teleport hostile @a[distance=..2,tag=EtiTeleP.1Spieler] ~ ~ ~ 10 1
execute at @e[type=minecraft:armor_stand,tag=EtiTeleP.1Teleporter] run effect give @a[distance=..2,tag=EtiTeleP.1Spieler] minecraft:nausea 6 1 true
execute at @e[type=minecraft:armor_stand,tag=EtiTeleP.1Teleporter] run teleport @a[distance=..2,tag=EtiTeleP.1Spieler] ~ ~ ~15
tag @a[tag=EtiTeleP.1Spieler] remove EtiTeleP.1Spieler


execute at @e[type=minecraft:armor_stand,tag=EtiTeleP.1Teleporter] run fill ~-2 ~ ~-2 ~2 ~6 ~1 minecraft:air replace
kill @e[type=minecraft:armor_stand,tag=EtiTeleP.1Alle]
tag @a[tag=EtiTeleP.1Spieler] remove EtiTeleP.1Spieler

Variante 2[]

Teleporter (Befehle) Bild 2.1

Diese Variante zeigt zwei Teleporter die miteinander verbunden sind. Wenn man einen der Teleporter benutzt, wird man zum jeweils anderen Teleporter teleportiert und umgekehrt.

Einschalten

Die Portale werden beim Einschalten platziert.

  • Befehl 2.1 Als erstes wird ein Punktestand-Ziel erstellt, dass den Erfolg oder Misserfolg des Teleportierens speichern kann.
  • Befehl 2.2 Zwei Rüstungsständer werden an verschiedenen Positionen mit keiner Schwerkraft, Unsichtbarkeit und Hitboxlosigkeit erzeugt[B2.3]
  • Befehl 2.4 An der Position der zwei Rüstungsständer wird jeweils ein Konstruktionsblock platziert und anschließend mit einem Redstone-Block aktiviert[B2.5], sodass das Portal platziert wird.
Wiederholen

Spieler können in ein Portal laufen und erhalten Geräusche und Bildschirmeffekte, wie bei einem Netherportal und werden zum anderen Portal teleportiert.

  • Befehl 2.6 An der Position des Rüstungsständers werden Portalpartikel erzeugt, sodass man sehen kann wo der Teleport-Bereich liegt.
  • Befehl 2.7 Alle Spieler die mehr als drei Meter von Portalen entfernt sind und selbst nicht den Wert null besitzen, erhalten Wert null.
  • Befehl 2.8 Spieler die maximal zwei Meter vom Portal entfernt sind, hören das Enderman-Teleport-Geräusch.
  • Befehl 2.9 Anschließend erhalten sie den Übelkeitseffekt, sodass der Bildschirm verschwimmt.
  • Befehl 2.10 Nun wird der Spieler falls er sich beim ersten Portal befindet, zum zweiten Portal teleportiert. Diese Teleportation wird in seinen Punktestand gespeichert, falls sie erfolgreich war hat er eine eins erhalten.
  • Befehl 2.11 Das gleiche gilt auch umgekehrt für das zweite Portal. Wenn der Spieler vom zweiten zum ersten teleportiert wird, wird auch dies in seinen Punktestand gespeichert, falls es fehlschlägt, erhält er die null.
Ausschalten

Das Ziel wie auch die Portale werden beim Ausschalten wieder entfernt.

  • Befehl 2.12 Das Punktestand-Ziel wird wieder entfernt
  • Befehl 2.13 Die beiden Portale werden durch Luft ersetzt und somit entfernt.
  • Befehl 2.14 Die Rüstungsständer werden entfernt.
  • Befehl 2.15 Falls Spieler noch das Etikett besitzen sollten, wird es ihnen spätestens jetzt entfernt.

Befehlsblöcke mit Befehlen:
scoreboard objectives add PZTeleP.2Portal dummy ["Teleporter.2: ",{"text":"Teleport durchs Portal","bold":true}]
summon minecraft:armor_stand ~ ~-1 ~-8 {NoGravity:true,Invisible:true,Marker:true,Tags:["EtiTeleP.2Alle","EtiTeleP.2Teleporter1"]}
summon minecraft:armor_stand ~10 ~-2 ~-8 {NoGravity:true,Invisible:true,Marker:true,Tags:["EtiTeleP.2Alle","EtiTeleP.2Teleporter2"]}
execute at @e[type=minecraft:armor_stand,tag=EtiTeleP.2Alle] run setblock ~ ~ ~ minecraft:structure_block{posX:-2,posY:0,posZ:-2,mode:"LOAD",name:"teleporter:v2portal"} replace
execute at @e[type=minecraft:armor_stand,tag=EtiTeleP.2Alle] run setblock ~ ~1 ~ minecraft:redstone_block replace


execute at @e[type=minecraft:armor_stand,tag=EtiTeleP.2Alle] run particle minecraft:portal ~ ~1 ~ 0 1 0 0.7 35 force @a[distance=..15]
execute as @a at @s unless entity @e[distance=..3,type=minecraft:armor_stand,tag=EtiTeleP.2Alle] unless entity @s[scores={PZTeleP.2Portal=0}] run scoreboard players set @s PZTeleP.2Portal 0
execute at @e[type=minecraft:armor_stand,tag=EtiTeleP.2Alle] run playsound minecraft:entity.endermen.teleport hostile @a[distance=..2,scores={PZTeleP.2Portal=0}] ~ ~ ~ 10 1
execute at @e[type=minecraft:armor_stand,tag=EtiTeleP.2Alle] run effect give @a[distance=..2,scores={PZTeleP.2Portal=0}] minecraft:nausea 6 1 true
execute at @e[type=minecraft:armor_stand,tag=EtiTeleP.2Teleporter1] as @a[distance=..2,scores={PZTeleP.2Portal=0}] at @e[type=minecraft:armor_stand,tag=EtiTeleP.2Teleporter2,sort=nearest,limit=1] store success score @s PZTeleP.2Portal run teleport @s ~ ~1 ~
execute at @e[type=minecraft:armor_stand,tag=EtiTeleP.2Teleporter2] as @a[distance=..2,scores={PZTeleP.2Portal=0}] at @e[type=minecraft:armor_stand,tag=EtiTeleP.2Teleporter1,sort=nearest,limit=1] store success score @s PZTeleP.2Portal run teleport @s ~ ~1 ~


scoreboard objectives remove PZTeleP.2Portal
execute at @e[type=minecraft:armor_stand,tag=EtiTeleP.2Alle] run fill ~-2 ~ ~-2 ~2 ~6 ~1 minecraft:air replace
kill @e[type=minecraft:armor_stand,tag=EtiTeleP.2Alle]
tag @a[tag=EtiTeleP.2Spieler] remove EtiTeleP.2Spieler

Variante 3[]

Teleporter (Befehle) Bild 3.1 Teleporter (Befehle) Bild 3.2

Mit diesem Teleporter-System lassen sich beliebig viele Teleporter frei platzieren (durch das Setzen von einem Rüstungsständer). Wenn man in einen Teleporter steigt wird man in den Zuaschauermodus gesetzt und man kann per Chat-Aufforderung sich zum nächsten Teleporter teleportieren lassen. Dies kann man solange wiederholen bis man am gewünschten Ort angekommen ist. Dann klickt man ebenfalls im Chat auf den entsprechenden Auslöser und man ist wieder aus dem Zuschauermodus raus und kann sich frei bewegen.

Einschalten
  • Befehl 3.1 Wenn der Hebel umgelegt wird, wird die Start-Funktion gestartet.
Wiederholen
  • Befehl 3.2 Beim Einschalten wird auch der Wiederhol-Befehlsblock gestartet, der jeden Tick die Zyklus-Funktion lädt.
Ausschalten
  • Befehl 3.3 Wenn der Hebel wieder in Ausgangsstellung zurück gelegt wird, wird die Stopp-Funktion ausgelöst und schaltet alles wieder ab.

Befehlsblöcke mit Befehlen:


Variante 3: Start-Funktion
Die Start-Funktion erstellt das Punktestand-Ziel, gibt den Spielern 16 Teleporter-Rüstungsständer, die man platzieren kann, die Spielregel für Auslöser wird ausgeschaltet und die Spieler erhalten eine Anleitung wie man das Teleporter-System nutzt.

Editor Icon teleporter:v3start.mcfunction
# Das Punktestand-Ziel für den Auslöser wird hinzugefügt, damit der Spieler auf Textnachrichten klicken kann
scoreboard objectives add PZTeleP.3Nr trigger ["Teleporter.3: ",{"text":"Portalnummer","bold":true}]

# Ein Rüstungsständer mit der Funktion Teleporter zu erschaffen beim Platzieren, wird dem Spieler gegeben
give @a[distance=..15] minecraft:armor_stand{teleporter:"v3gegenstand",Enchantments:[{id:-1}],display:{Name:'{"text":"Teleporter","color":"dark_purple","bold":true}',Lore:['"Platziere den Rüstungsständer"','"um einen Teleporter zu bauen"','"und um zwischen"','"diesen zu wechseln"']},EntityTag:{NoGravity:true,Invisible:true,CustomNameVisible:true,CustomName:'{"text":"Teleporter","color":"dark_purple","bold":true}',Tags:["EtiTeleP.3Alle","EtiTeleP.3Teleporter"]} } 16

# Die Meldungen vom Auslöser werden ausgeschaltet
gamerule sendCommandFeedback false

# Eine Nachricht mit Anleitung für den Spieler
tellraw @a[distance=..15] ["Teleporter.3: ",{"text":"Platziere mindestens zwei Teleporter um zwischen beiden wechseln zu können. Um einen Teleporter wieder entfernen zu können, wirf einen Teleporter als Gegenstand auf einen platzierten und du erhälst beide als Drop zurück","bold":true}]

Variante 3: Zyklus-Funktion
Die Zyklus-Funktion lässt bei platzierten Rüstungsständern die Teleporter-Konstruktion laden, dass die Teleporter ihre jeweilige individuelle Nummer erhalten, dass die Portale Partikel erhalten und das Spieler sich mit Hilfe der Chat-Aufforderung zum gewünschten Portal teleportieren lassen können.

Editor Icon teleporter:v3zyklus.mcfunction
# Wenn ein Teleporter in Form eines Rüstunggständers platziert wurde, wird ihm ein Etikett gegeben und dadurch wird die Plattform durch einen Konstruktionsblock geladen
execute as @e[type=minecraft:armor_stand,tag=EtiTeleP.3Plattform] at @s if block ~ ~ ~ minecraft:air run tag @s remove EtiTeleP.3Plattform
execute at @e[type=minecraft:armor_stand,tag=EtiTeleP.3Teleporter,tag=!EtiTeleP.3Plattform] run setblock ~ ~ ~ minecraft:structure_block{mode:"LOAD",posX:-2,posY:0,posZ:-2,name:"teleporter:v3portal"} replace
execute at @e[type=minecraft:armor_stand,tag=EtiTeleP.3Teleporter,tag=!EtiTeleP.3Plattform] run setblock ~1 ~ ~ minecraft:redstone_block replace
tag @e[type=minecraft:armor_stand,tag=EtiTeleP.3Teleporter,tag=!EtiTeleP.3Plattform] add EtiTeleP.3Plattform

# Dem Teleporter wird eine Nummer zugewiesen wenn er noch keine bis jetzt besaß
execute as @e[type=minecraft:armor_stand,tag=EtiTeleP.3Teleporter,tag=!EtiTeleP.3PortalNummer,sort=nearest,limit=1] store result score @s PZTeleP.3Nr run scoreboard players add #VarTeleP.3Nummer PZTeleP.3Nr 1
tag @e[type=minecraft:armor_stand,tag=EtiTeleP.3Teleporter,tag=!EtiTeleP.3PortalNummer,sort=nearest,limit=1] add EtiTeleP.3PortalNummer

# An der Stelle des Teleporters werden Portal-Partikel erzeugt, die einem Bereich von 15 Metern gesehen werden können
execute at @e[type=minecraft:armor_stand,tag=EtiTeleP.3Teleporter] run particle minecraft:portal ~ ~1 ~ 0 1 0 0.7 35 force @a[distance=..15]

# Spieler die am gewünschten Ort sind, klicken auf den Auslöser um den Teleporter zu verlassen und dadurch erhält der Spieler den Punkt -99
execute at @e[type=minecraft:armor_stand,tag=EtiTeleP.3Teleporter] run gamemode adventure @a[distance=..3,gamemode=spectator,scores={PZTeleP.3Nr=-99}]
execute as @a[tag=EtiTeleP.3Nachricht] at @s unless entity @e[distance=..3,type=minecraft:armor_stand,tag=EtiTeleP.3Teleporter] run tag @s remove EtiTeleP.3Nachricht
execute as @a[scores={PZTeleP.3Nr=-99}] at @s unless entity @e[distance=..3,type=minecraft:armor_stand,tag=EtiTeleP.3Teleporter] run scoreboard players reset @s PZTeleP.3Nr

# Spieler mit dem Punkt -2 möchten zum nächsten Teleporter teleportiert werden und der
execute as @e[type=minecraft:armor_stand,tag=EtiTeleP.3Teleporter] at @s run scoreboard players operation @a[distance=..2,gamemode=spectator,scores={PZTeleP.3Nr=-2}] PZTeleP.3Nr = @s PZTeleP.3Nr
execute if entity @p[gamemode=spectator,scores={PZTeleP.3Nr=1..}] store result score #VarTeleP.3Anzahl PZTeleP.3Nr if entity @e[type=minecraft:armor_stand,tag=EtiTeleP.3Teleporter]
scoreboard players add @a[gamemode=spectator,scores={PZTeleP.3Nr=1..}] PZTeleP.3Nr 1
execute as @a[gamemode=spectator,scores={PZTeleP.3Nr=1..}] if score @s PZTeleP.3Nr > #VarTeleP.3Anzahl PZTeleP.3Nr run scoreboard players set @s PZTeleP.3Nr 1
execute as @a[gamemode=spectator,scores={PZTeleP.3Nr=1..}] at @s as @e[type=minecraft:armor_stand,tag=EtiTeleP.3Teleporter] if score @s PZTeleP.3Nr = @p PZTeleP.3Nr run teleport @p @s

# Der Auslöse-Punktestand wird für alle Spieler die noch im Zuschauermodus sind auf null zurückgesetzt, falls sie den Auslöser bereits ausgelöst hatten
execute as @e[type=minecraft:armor_stand,tag=EtiTeleP.3Teleporter] at @s run scoreboard players set @a[distance=..2,gamemode=spectator,scores={PZTeleP.3Nr=1..}] PZTeleP.3Nr 0

# Wenn sich ein Spieler dem Teleporter nähert ohne dass er zuvor durch einen anderen Teleporter im Zuschauermodus dort hingelangte, so wird er in den Zuschauermodus gesetzt
execute at @e[type=minecraft:armor_stand,tag=EtiTeleP.3Teleporter] as @a[distance=..2,gamemode=!spectator] unless score @s PZTeleP.3Nr matches -99 run gamemode spectator @s
execute as @a[gamemode=spectator] at @s at @e[distance=..2,type=minecraft:armor_stand,tag=EtiTeleP.3Teleporter,sort=nearest,limit=1] run teleport @s ~ ~1 ~ ~ ~
execute as @e[type=minecraft:armor_stand,tag=EtiTeleP.3Teleporter] at @s if entity @p[distance=..2,gamemode=spectator] run teleport @s ~ ~ ~ ~1 ~

# Alle Spieler die sich im Zuschauermodus in der Nähe des Teleporters befinden erhalten die Auslöser-Möglichkeit und die Auswahl-Nachricht
execute at @e[type=minecraft:armor_stand,tag=EtiTeleP.3Teleporter] run scoreboard players enable @a[distance=..2,gamemode=spectator,tag=!EtiTeleP.3Nachricht] PZTeleP.3Nr
execute as @e[type=minecraft:armor_stand,tag=EtiTeleP.3Teleporter] at @s run tellraw @a[distance=..2,gamemode=spectator,tag=!EtiTeleP.3Nachricht] ["Teleporter.3:\n",{"text":"Drücke 'T' um in die Chatleiste zu gelangen\n","bold":true},{"text":" [x]","color":"red","hoverEvent":{"action":"show_text","value":{"text":"Klicke hier um hier zu bleiben"} },"clickEvent":{"action":"run_command","value":"/trigger PZTeleP.3Nr set -99"} },{"text":" Teleporter-Auswahl ","color":"gold","bold":true},{"score":{"name":"@s","objective":"PZTeleP.3Nr"},"color":"dark_purple","bold":true},{"text":" [→]","color":"green","hoverEvent":{"action":"show_text","value":{"text":"Klicke für den nächsten Teleporter"} },"clickEvent":{"action":"run_command","value":"/trigger PZTeleP.3Nr set -1"} }]

# Jeder der die Auswahl-Nachricht erhalten hat, erhält auch ein Etikett und dieses wird entfernt, wenn er sich zu einem anderen Teleporter teleportiert hat, damit er wieder eine erhält
execute as @e[type=minecraft:armor_stand,tag=EtiTeleP.3Teleporter] at @s run tag @a[distance=..2,gamemode=spectator,tag=!EtiTeleP.3Nachricht] add EtiTeleP.3Nachricht
execute as @e[type=minecraft:armor_stand,tag=EtiTeleP.3Teleporter] at @s run tag @a[distance=..2,gamemode=spectator,tag=EtiTeleP.3Nachricht,scores={PZTeleP.3Nr=-1}] remove EtiTeleP.3Nachricht
execute as @e[type=minecraft:armor_stand,tag=EtiTeleP.3Teleporter] at @s run scoreboard players set @a[distance=..2,gamemode=spectator,tag=!EtiTeleP.3Nachricht,scores={PZTeleP.3Nr=-1}] PZTeleP.3Nr -2

# Um den Teleporter zu entfernen wirft man einen Teleporter in Form eines Rüstungsständer in die Nähe des Teleporters, so verschwindet er und man erhält ihn in dem Drop
execute at @e[type=minecraft:armor_stand,tag=EtiTeleP.3Teleporter] run data merge entity @e[distance=..3,type=minecraft:item,nbt={Item:{id:"minecraft:armor_stand",Count:1b,tag:{teleporter:"v3gegenstand"} } },sort=nearest,limit=1] {Item:{Count:2b},Tags:["EtiTeleP.3Gegenstand"]}
execute at @e[type=minecraft:armor_stand,tag=EtiTeleP.3Teleporter] if entity @e[distance=..3,type=minecraft:item,tag=EtiTeleP.3Gegenstand] run fill ~-2 ~ ~-2 ~2 ~ ~2 minecraft:air replace
execute as @e[type=minecraft:armor_stand,tag=EtiTeleP.3Teleporter] at @s if entity @e[distance=..3,type=minecraft:item,tag=EtiTeleP.3Gegenstand] run kill @s

Variante 3: Stopp-Funktion
Die Stopp-Funktion entfernt das Ziel, die Teleporter und auch die Gegenstände aus den Inventaren der Spieler. Ebenfalls wird die Spielregel wieder zurück gesetzt.

Editor Icon teleporter:v3stopp.mcfunction
# Das Punktestand-Ziel wird entfernt
scoreboard objectives remove PZTeleP.3Nr

# Die Teleporter werden entfernt
execute at @e[type=minecraft:armor_stand,tag=EtiTeleP.3Teleporter] run fill ~-2 ~ ~-2 ~2 ~ ~2 minecraft:air replace
tag @e[type=minecraft:item,nbt={Item:{tag:{teleporter:"v3gegenstand"} } }] add EtiTeleP.3Alle
kill @e[tag=EtiTeleP.3Alle]

# Teleporter die sich noch im Inventar befinden, werden gelöscht
clear @a[distance=..50] minecraft:armor_stand{teleporter:"v3gegenstand"}
gamemode creative @a[distance=..50,gamemode=adventure]

# Die Nachrichten-Ausgabe wird wieder eingeschaltet
gamerule sendCommandFeedback true
Advertisement