Gruppe: Vorrichtungen |
mit Mechaniken |
mit Redstone |
Hier: mit Befehlen |
Verfügbar in: Redstone-Welt |
Ein Block-Sensor erfasst an der Position des Spielers einen Block oder eine kleine aus Blöcken bestehende Konstruktion und prüft ob der Block der gesuchte Block ist. Wenn es sich um den gesuchten Block handelt wird eine Nachricht einmalig gesendet, solange der Spieler nicht den Block wechselt. Ein Block-Sensor ist ebenfalls in der Lage beliebige Blöcke zu erfassen und diese per Nachricht auszugeben.
Variante 1[]
Folgende Voraussetzungen werden benötigt: | ||
---|---|---|
|
Folgende Materialien werden benötigt: | |
---|---|
|
Mit Hilfe dieses Block-Sensors kann man prüfen, ob der Spieler auf Sandstein steht. Immer wenn er das tut, wird eine einmalig Nachricht ausgegeben.
- Wiederholen
- Befehl 1.1 In einem Umkreis von 25 Blöcken, wird von allen Spielern geprüft ob sie auf einem Sandsteinblock stehen und nur wenn sie das Etikett nicht besitzen, erhalten sie eine tellraw-Nachricht im Chat.
- Befehl 1.2 Wenn Spieler im Umkreis von 25 Blöcken auf Sandstein stehen und noch nicht das Etikett besitzen, erhalten sie es, damit die tellraw-Nachricht nur einmalig gesendet wird.
- Befehl 1.3 Wenn Spieler im Umkreis von 25 Blöcken nicht auf Sandstein stehen, jedoch das Etikett dafür besitzen, wird es wieder entfernt.
- Ausschalten
- Befehl 1.4 Falls Spieler noch das Etikett besitzen, wird es entfernt.
Befehlsblöcke mit Befehlen: |
|
Variante 2[]
Folgende Voraussetzungen werden benötigt: | ||
---|---|---|
|
Folgende Materialien werden benötigt: | |
---|---|
|
Dieser Block-Sensor kann erfassen, ob der Spieler sich auf Sandstein, rotem Sandstein und in der Luft befindet. Je nach dem auf welchen Block er sich befindet, wird eine Nachricht jeweils einmalig ausgesendet. Jeder Block bekommt eine Nummer zugewiesen und anhand dieser wird der Block erkannt. Es lassen weitere Blöcke in diese Liste aufnehmen, in dem man neue Nummern vergibt und abfragt.
- Einschalten
- Befehl 2.1 Es wird ein Punkte-Ziel erstellt, das die Block-Nummer speichert.
- Wiederholen
- Befehl 2.2 Spieler im Umkreis von 25 Blöckenbekommen eine tellraw-Nachricht im Chat ausgegeben, wenn sie die Block-Nummer für Luft noch nicht besitzen, aber bereits in der Luft sind.
- Befehl 2.3 Spieler im Umkreis von 25 Blöckenbekommen eine tellraw-Nachricht im Chat ausgegeben, wenn sie die Block-Nummer für Sandstein noch nicht besitzen, aber bereits auf diesem stehen.
- Befehl 2.4 Spieler im Umkreis von 25 Blöckenbekommen eine tellraw-Nachricht im Chat ausgegeben, wenn sie die Block-Nummer für roten Sandstein noch nicht besitzen, aber bereits auf diesem stehen.
- Befehl 2.5 Die Spieler erhalten für Luft, Sandstein[B2.6] und roten Sandstein[B2.7] jeweils einen Punktewert.
- Ausschalten
- Befehl 2.8 Das Punkte-Ziel wird entfernt.
Befehlsblöcke mit Befehlen: |
|
Variante 3[]
Folgende Voraussetzungen werden benötigt: | ||
---|---|---|
|
Folgende Materialien werden benötigt: | |
---|---|
|
Mit Hilfe dieses Block-Sensors kann man eine kleine Konstruktion erfassen. Wenn sich der Spieler in der Mitte der Konstruktion befindet, erhält er einmalig eine Nachricht, dass die Konstruktion erfasst wurde. Die Konstruktion wird mit Hilfe eines Konstruktionsblockes geladen.
- Einschalten
- Befehl 3.1 Mit einem Konstruktionsblock wird eine kleine Konstruktion geladen, auf die der Spieler laufen kann.
- Befehl 3.2 Damit die Konstruktion geladen wird, wird ein Redstone-Block neben dran platziert.
- Wiederholen
- Befehl 3.3 Falls der Spieler bereits das Etikett besitzt, wird es ihm entfernt.
- Befehl 3.4 An der Position von Spielern im Umkreis von 25 Blöcken wird nach jedem einzelnen Block der Konstruktion getestet und nur wenn die vollständige Konstruktion vorliegt, erhält der jeweilige Spieler das Etikett.
- Befehl 3.5 Falls Spieler das Etikett für die Nachricht bereits haben aber das Etikett für die Konstruktion nicht,so wird ihnen das Nachrichten-Etikett entfernt.
- Befehl 3.6 Wenn Spieler auf der Konstruktion stehen und es erfasst wurde, aber noch keine Nachricht erhalten haben, erhalten sie diese.
- Befehl 3.7 Spieler die auf der Konstruktion stehen und noch nicht das Etikett für die Nachricht besitzen, erhalten es.
- Ausschalten
- Befehl 3.8 Die Konstruktion wird komplett entfernt.
- Befehl 3.9 Die beiden Etiketten werden entfernt[B3.10], sofern sie noch vorhanden sind.
Befehlsblöcke mit Befehlen: |
|
Variante 4[]
Folgende Voraussetzungen werden benötigt: | ||
---|---|---|
|
Folgende Materialien werden benötigt: | |
---|---|
|
Der Block-Sensor gibt die ID des Blockes über der Schnelleiste aus, auf dem man sich gerade befindet. Dazu wird eine Güterlore erzeugt, in der der Drop des Blockes auf dem man steht hineingefüllt wird. Der title-Befehl ließt dann die NBT-Pfade aus und zeigt einem die ID an. Nur Blöcke die eine Beutetabelle besitzen, können mit diesem Sensor erfasst werden.
- Einschalten
- Befehl 4.1 Auf dem Wiederhol-Befehlsblock befindet sich ein Hebel. Legt man ihn um, wird zuerst der Befehlsblock mit der Start-Funktion block-sensor:v4start aktiviert.
- Wiederholen
- Befehl 4.2 Gleichzeitig wird auch der Wiederhol-Befehlsblock mit der Zyklus-Funktion block-sensor:v4zyklus aktiv.
- Ausschalten
- Befehl 4.3 der Befehlsblock löst die Funktion block-sensor:v4stopp aus.
Befehlsblöcke mit Befehlen: |
|
Variante 4: Start-Funktion
Die Start-Funktion erstellt die Güterlore in der später die Blöcke eingelagert werden, auf denen der Spieler steht und es wird ein Sensor-Stock gegeben, der zum Aktivieren des Sensor benötigt wird.
block-sensor:v4start.mcfunction
|
# Ein Rüstungsständer wird erstellt, auf dem eine Güterlore platz findet. summon minecraft:armor_stand ~ ~1 ~ {Small:true,Invisible:true,NoGravity:true,Tags:["EtiBlockS.4Alle"],Passengers:[{id:"minecraft:chest_minecart",NoGravity:true,Tags:["EtiBlockS.4Alle","EtiBlockS.4Sensor"]}]} # Dem erst gelegenen Spieler wird ein Etikett, zur Identifizierung gegeben. Er bekommt einen Stock, der für das Anzeigen der Blöcken benutzt werden kann. tag @p[distance=..25] add EtiBlockS.4Spieler give @p[tag=EtiBlockS.4Spieler] minecraft:stick{EigBlockS.4Alle:true,Enchantments:[{id:-1}],display:{Name:'{"text":"Block-Sensor","color":"dark_purple","bold":true}',Lore:['"Wähle den Stock aus"','"um den Block unter dir zu anzuzeigen."'] } } |
Variante 4: Zyklus-Funktion
Die Zyklus-Funktion prüft in erster Linie ob der Spieler den Sensor-Stock in der Schnellleiste ausgewählt hat. Wenn das der Fall ist, wird der Erfassungsteil abgearbeitet und der Spieler erhält über der Schnellleiste die ID des Blockes auf dem er steht.
block-sensor:v4zyklus.mcfunction
|
# Wenn der Spieler auf dem Boden steht und den Stock ausgewählt hat, erhaält er ein Etikett. tag @p[tag=EtiBlockS.4Spieler,nbt={OnGround:true,SelectedItem:{id:"minecraft:stick",tag:{EigBlockS.4Alle:true} } }] add EtiBlockS.4BlockErfassen # Wenn der Spieler den Stock ausgewählt hat, wird die Güterlore geleert um anschließend sie mit dem Block-Gegenstand zu füllen auf dem der Spieler aktuell steht. execute if entity @p[tag=EtiBlockS.4BlockErfassen] run data remove entity @e[type=minecraft:chest_minecart,tag=EtiBlockS.4Sensor,sort=nearest,limit=1] Items execute at @p[tag=EtiBlockS.4BlockErfassen] run loot replace entity @e[type=minecraft:chest_minecart,tag=EtiBlockS.4Sensor] container.0 mine ~ ~-0.5 ~ # Wenn der Spieler den Stock abgewählt hat, wird seine Titel-Nachricht entfernt, ansonsten bekommt er die ID des Blockes angezeigt, auf dem er aktuell steht. title @p[tag=EtiBlockS.4Spieler,tag=!EtiBlockS.4BlockErfassen] actionbar [""] title @p[tag=EtiBlockS.4BlockErfassen] actionbar ["",{"entity":"@e[type=minecraft:chest_minecart,tag=EtiBlockS.4Sensor]","nbt":"Items[0].id","color":"dark_purple","bold":true}] # Das Etikett wird wieder entfernt. tag @p[tag=EtiBlockS.4BlockErfassen] remove EtiBlockS.4BlockErfassen |
Variante 4: Stopp-Funktion
Die Stopp-Funktion räumt alles wieder auf und löscht den Stock aus dem Inventar und auf dem Boden, löscht die Güterlore samt Inhalt und entfernt alle eventuell noch vorhandenen Etiketten.
block-sensor:v4stopp.mcfunction
|
# Der Stock wird wieder entfernt. clear @a minecraft:stick{EigBlockS.4Alle:true} # Die Etiketten werden entfernt. tag @a[tag=EtiBlockS.4Spieler] remove EtiBlockS.4Spieler tag @a[tag=EtiBlockS.4BlockErfassen] remove EtiBlockS.4BlockErfassen # Damit die Güterlore nichts droppt, wird ihr Inhalt gelöscht. data remove entity @e[type=minecraft:chest_minecart,tag=EtiBlockS.4Sensor,sort=nearest,limit=1] Items # Alle Objekte mit dem Etikett werden gelöscht. tag @e[type=minecraft:item,nbt={Item:{tag:{EigBlockS.4Alle:true} } }] add EtiBlockS.4Alle kill @e[tag=EtiBlockS.4Alle] |
|
Kolben-Verlängerung => Redstone (erweitert); Blockupdate-Sensor => Redstone (erweitert); Block-Sensor => Befehle; Drop-Sensor => Befehle; Inventar-Sensor => Redstone, Befehle; Slot-Sensor => Befehle; Mülleimer => Mechanik, Redstone, Befehle; Objekt-Zähler => Befehle; Standort-Sensor => Befehle; Biom-Sensor => Befehle; Dimensions-Sensor => Befehle; Chunk-Sensor => Befehle; Höhlen-Sensor => Befehle; Licht-Sensor => Befehle; Shiftklick-Sensor => Befehle; Bewegungssensor => Befehle (erweitert); Koordinaten-Sensor => Befehle; Blickwinkel-Sensor => Befehle; Sichtweiten-Sensor => Befehle; Entfernungs-Sensor => Befehle; Uhrzeit-Sensor => Befehle; Sprachen-Sensor => Befehle; Versionen-Sensor => Befehle; Spielbeitritt-Sensor => Befehle; Server-Sensor => Befehle; Dropgenerator => Mechanik, Befehle; Kugelgenerator => Befehle;
|
|