Wie kann ich den Lichtpegel eines Blocks mit Befehlen bestimmen?

Ich möchte einen Satz von Befehlsblöcken aufbauen, die automatisch eine Fackel am Fuß eines Spielers (oder Entity) platzieren, wenn der Lichtpegel unter einen bestimmten Schwellenwert fällt. Also grundsätzlich muss ich in der Lage sein, den Lichtpegel bei einem Spieler mit Befehlsblöcken zu bestimmen.

Ich habe die Wiki-Seiten auf NBT-Daten gesehen, um zu sehen, ob das /execute @p ~ ~ ~ testforblock ~ ~ ~ minecraft:air 0 {dataTagForLight:3b} mit dem Block gespeichert ist, also könnte ich so etwas machen /execute @p ~ ~ ~ testforblock ~ ~ ~ minecraft:air 0 {dataTagForLight:3b} , Aber es scheint kein solches Daten-Tag zu sein.

  • Gibt es irgendwelche effizienten Spinne Fallen auf Minecraft?
  • Übertragen Sie Minecraft-Daten zwischen Xbox One und PS4
  • Wo ist mein Minecraft-Ordner in diesem ungewöhnlichen Mac-Setup versteckt?
  • Mindester RAM benötigt für Minecraft Server?
  • Was ist die optimale Spielerposition, die dem Mobschleifer entspricht?
  • Ich habe mein Portal nach Hause verloren, und ich bin unbesiegbar. Wie kann ich den netten verlassen?
  • Ich habe das Laichen eines Tageslichtdetektors in Betracht gezogen, aber ich habe das Gefühl, dass es nicht tun wird, was ich in den Höhlen machen möchte, denn soweit ich es sagen kann, ist es im Primärmodus nur von Sonnenlicht betroffen. Außerdem gibt es noch ein Problem mit dem Plan, und es fühlt sich einfach wie ein Kludge an.

    Also, gibt es einen Weg, um die Lichtstärke eines bestimmten Blocks zu bestimmen? Wenn das so ist, wie?

  • Wie kann ich eine Minecraft gespeicherte Welt von meinem Desktop auf meinen Server verschieben?
  • Wie finde ich Dungeons in Minecraft?
  • Wie schaffe ich Dörfer?
  • Ich teleportierte zu weit weg und jetzt stürzt das Spiel auf Weltbelastung
  • Wie weit muss ich mich bewegen?
  • Warum kann ich nicht auf die Registerkarte "Nicht genug Artikel" zugreifen?
  • One Solution collect form web for “Wie kann ich den Lichtpegel eines Blocks mit Befehlen bestimmen?”

    Diese Methode ist auch eine ziemlich schlechte Kludge und ein bisschen unpraktisch, aber es sollte in der Lage sein, Blocklicht sowie Sonnenlicht zu erkennen.

    Es gibt ein paar Prozesse, die nur bei bestimmten Lichtniveaus auftreten, Sonnenlicht oder nicht:

     Event || Light Level ================================ Snow/ice melt || >=12 Mushrooms uproot || >=13 Flowers uproot || <=7 Plants grow || <=9 

    Mit einem sehr hohen /gamerule randomTickSpeed können diese Prozesse fast sofort passieren. Offensichtlicher Nachteil ist, dass die Gamerule auch die Prozesse auf der ganzen Welt bewirken wird.

    Verschiedene Mobs haben auch unterschiedliche Laichniveaus:

     Mob || Light Level ================================ Bats || <=3 Most hostiles || <=7 Blaze/silverfish || <=11 Most passives || >=9 

    Sie können auch benutzerdefinierte Mob Spawners wird ein Mob jedes Tick, indem Sie seine MinSpawnDelay und MaxSpawnDelay .

    Mit einer dieser Methoden (oder beiden), was Sie tun müssen, ist so etwas wie:

    1. Klon blockiert den Block / Spieler zu einem bestimmten Bereich
    2. Setzen Sie den Block / Spawner in die Mitte des neu geklonten Bereichs
    3. Warten Sie ein paar Zecken
    4. Testen Sie, ob ein Mob hervorgebracht wurde oder ein Prozess aufgetreten ist

    Du könntest auch den Mob Spawner (Minecart) oder Testblock an der Position des Spielers haben, anstatt ihn zuerst zu klonen, was die Verzögerung stark reduzieren würde, aber den Spieler dazu veranlasse, flackernde Mobs / Blöcke zu sehen.

    Wir lieben es zu spielen, vor allem Videospiele.