Das offizielle Minecraft Wiki twittert hier: Wiki-Twitter     Noch keinen Server gefunden? Es gibt einen Wiki-Server
Nicht die Technik gefunden, die du suchst? Dann schlag sie vor: Gemeinschaftsportal

Anlagen/Tageszeitwandler und -sensor (Befehle)

Aus Technik Wiki
Wechseln zu: Navigation, Suche
Baustelle.svg
Diese Seite wird gerade von Nethonos neu erstellt oder grundlegend überarbeitet.
Fragen und Vorschläge bitte in die Diskussion. Fortschritt: Grid Redstone-Block.pngGrid Redstone-Block.pngGrid Redstone-Block.pngGrid Redstone-Block.pngGrid Redstone-Block.pngGrid Redstone-Block.pngGrid Redstone-Block.pngGrid Redstone-Block.pngGrid Redstone-Block blass.pngGrid Redstone-Block blass.png


Gruppe: Grid Klebriger Kolben.png
Anlagen

Grid Roter Sand blass.png mit Mechaniken

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

Diese Technik ist noch in
keiner Download-Welt enthalten.
Disambig color.svg
Roter Sand.png
Alle Techniken auf dieser Seite sind noch nicht in der aktuellen Mechanik-Welt vorhanden.
In einem der nächsten Updates werden sie dort hinzugefügt werden.

Der Tageszeitwandler und -sensor kann nicht nur die Tageszeit exakt angeben, sondern auch sie ändern. Optional kann man auch die Tageszeit komplett festsetzen, in dem man den Befehl /gamerule doDaylightCycle benutzt.

Variante 1[Bearbeiten | Quelltext bearbeiten]

Anlagen Tageszeitwandler und -sensor (Befehle) Bild 1.1.png

Bei diesem Tageszeitmesser, werden die Tage unabhängig vom wirklichen Tagesablauf gezählt. Dadurch ist dieser Sensor unabhängiger, aber kann auch bei zu häufigen Benutzungen von dem /time-Befehl zu falschen Zeiten den nächsten Tag ankündigen. Zuerst wird ein Punktestand-Ziel angelegt[B1.1] in denen ebenfalls wie in der vorigen Variante, zwei Variablen für das Zählen der Tage, sowie der Ticks benutzt werden. Nun wird die Tick-Variable jeden Tick um eins erhöht[B1.2]. Wenn sie dann den Wert von 24000 erreicht[B1.3] (Ticks eines ganzen Tagesablaufes), wird zuerst die Variable wieder auf null zurückgesetzt[B1.4] um anschließend die Variable für die Tage um eins zu erhöhen[B1.5]. Als letztes wird der Tag in Form einer Schnellzugriffsleisten-Nachricht ausgegeben[B1.6], dadurch beeinflusst sie auch nicht den Chat. Die Variable für den Tag wird mit dieser Anlage immer weiter hochgezählt und bleibt es, solange man nicht das Punktestand-Ziel durch das Umlegen des Hebels löscht[B1.7].


Befehlsblöcke mit Befehlen:
/scoreboard objectives add PZTagZWS:1 dummy


/scoreboard players add #VarTagZWS:1Tick PZTagZWS:1 1
/scoreboard players test #VarTagZWS:1Tick PZTagZWS:1 24000
/scoreboard players set #VarTagZWS:1Tick PZTagZWS:1 0
/scoreboard players add #VarTagZWS:1Tag PZTagZWS:1 1
/title @a[r=50] title ["Zeitmesser:1 ",{"text":"Tag "},{"score":{"name":"#VarTagZWS:1Tag","objective":"PZTagZWS:1"} } ]


/scoreboard objectives remove PZTagZWS:1

Variante 2[Bearbeiten | Quelltext bearbeiten]

Anlagen Tageszeitwandler und -sensor (Befehle) Bild 2.1.png

Mit dem Sensor lassen sich die Tage angeben. Immer wenn ein neuer Tag angebrochen ist, wird eine Meldung herausgegeben, die den aktuellen Tag ankündigt. Zuerst wird ein Punktestand-Ziel benötigt[B2.1], welches für die zwei Variablen benötigt wird[B2.2][B2.3]. Diese Variablen bekommen durch die /stats-Befehle[B2.4][B2.5] die aktuellen Werte der Tageszeit. Die /stats-Befehle lesen dabei die beiden Befehlsblöcke aus[B2.6][B2.7]. Hier wird der Tag und die Tageszeit ausgegeben. Die beiden /time-Befehle werden durch den Wiederhol-Befehlsblock permanent aktualisiert und man kann dann im nachfolgenden Ketten-Befehlsblock überprüfen ob ein kompletter Tageszyklus vorbei ist[B2.8]. Dazu fragt man die Tick-Variable ab ob sie wieder bei null gelandet ist. Nur wenn genau das geschehen ist, wird der Ketten-Befehlsblock das erkennen und den dahinterliegenden bedingten Ketten-Befehlsblock durchschalten. Dieser gibt dem Spieler dann den aktuellen Tag aus[B2.9]. Um die Anlage auszuschalten, muss einfach ein Hebel am Befehlsblock wieder zurückgelegt werden, wodurch eine Redstone-Fackel aktiv wird und das Punktestand-Ziel löscht[B2.10]. Anschließend müssen die beiden Befehlsblöcke, die mit dem Punktestand-Ziel verknüpft sind wieder davon befreit werden[B2.11][B2.12]. Wenn man diese Anlage in einer Welt aufstellt, kann sie aber nur dann Tage zählen wenn man nicht den Befehl /time set benutzt, denn sonst wird der Tag immer wieder auf null zurückgesetzt.


Befehlsblöcke mit Befehlen:
/scoreboard objectives add PZTagZWS:2 dummy
/scoreboard players set #VarTagZWS:2Tag PZTagZWS:2 0
/scoreboard players set #VarTagZWS:2Tick PZTagZWS:2 0
/summon minecraft:armor_stand ~ ~ ~ {CustomName:"ObjTagZWS:2Zeitmesser",Small:true,Marker:true,Tags:["EtiTagZWS:2Alle"] }
/stats entity @e[type=minecraft:armor_stand,name=ObjTagZWS:2Zeitmesser] set QueryResult #VarTagZWS:2Tag PZTagZWS:2
/stats entity @e[type=minecraft:armor_stand,name=ObjTagZWS:2Zeitmesser] set QueryResult #VarTagZWS:2Tick PZTagZWS:2


/execute @e[type=minecraft:armor_stand,name=ObjTagZWS:2Zeitmesser] ~ ~ ~ /time query day
/execute @e[type=minecraft:armor_stand,name=ObjTagZWS:2Zeitmesser] ~ ~ ~ /time query daytime
/scoreboard players test #VarTagZWS:2Tick PZTagZWS:2 0 0
/execute @e[type=minecraft:armor_stand,name=ObjTagZWS:2Zeitmesser] ~ ~ ~ /title @a[r=50] title ["Zeitmesser:2 ",{"text":"Der "},{"score":{"name":"#VarTagZWS:2Tag","objective":"PZTagZWS:2"} },{"text":". Tag ist angebrochen."} ]


/scoreboard objectives remove PZTagZWS:2
/kill @e[type=minecraft:armor_stand,name=ObjTagZWS:2Zeitmesser]

Variante 3[Bearbeiten | Quelltext bearbeiten]


Dieser Zeitmesser zeigt einem die Sekunden, Minuten, Stunden und Tage in Echtzeit an.


Befehlsblöcke mit Befehlen:
/scoreboard objectives add PZTagZWS:3Tick stat.playOneMinute
/scoreboard objectives add PZTagZWS:3Sek dummy
/scoreboard objectives add PZTagZWS:3Min dummy
/scoreboard objectives add PZTagZWS:3Stun dummy
/scoreboard objectives add PZTagZWS:3Tag dummy


/scoreboard players add @a[score_PZTagZWS:3Tick_min=20] PZTagZWS:3Sek 1
/scoreboard players set @a[score_PZTagZWS:3Tick_min=20] PZTagZWS:3Tick 0
/scoreboard players add @a[score_PZTagZWS:3Sek_min=60] PZTagZWS:3Min 1
/scoreboard players set @a[score_PZTagZWS:3Sek_min=60] PZTagZWS:3Sek 0
/scoreboard players add @a[score_PZTagZWS:3Min_min=60] PZTagZWS:3Stun 1
/scoreboard players set @a[score_PZTagZWS:3Min_min=60] PZTagZWS:3Min 0
/scoreboard players add @a[score_PZTagZWS:3Stun_min=24] PZTagZWS:3Tag 1
/scoreboard players set @a[score_PZTagZWS:3Stun_min=24] PZTagZWS:3Stun 0
/scoreboard players tag @a[tag=EtiTagZWS:3ZeitAnzeige] remove EtiTagZWS:3ZeitAnzeige
/scoreboard players tag @a[r=50] add EtiTagZWS:3ZeitAnzeige {SelectedItem:{id:"minecraft:clock"} }
/execute @a[tag=EtiTagZWS:3ZeitAnzeige,r=50] ~ ~ ~ /title @p actionbar ["",{"text":" Sekunde: "},{"score":{"name":"@p","objective":"PZTagZWS:3Sek"} },{"text":"; Minute: "},{"score":{"name":"@p","objective":"PZTagZWS:3Min"} },{"text":"; Stunde: "},{"score":{"name":"@p","objective":"PZTagZWS:3Stun"} },{"text":"; Tag: "},{"score":{"name":"@p","objective":"PZTagZWS:3Tag"} } ]


/scoreboard objectives remove PZTagZWS:3Tick
/scoreboard objectives remove PZTagZWS:3Sek
/scoreboard objectives remove PZTagZWS:3Min
/scoreboard objectives remove PZTagZWS:3Stun
/scoreboard objectives remove PZTagZWS:3Tag

Variante 4[Bearbeiten | Quelltext bearbeiten]



Befehlsblöcke mit Befehlen:
/scoreboard objectives add PZTagZWS:4Sonne dummy
/scoreboard players set #VarTagZWS:4Tick PZTagZWS:4Sonne 1
/scoreboard players set #VarTagZWS:4Vergl PZTagZWS:4Sonne 0
/scoreboard objectives add PZTagZWS:4Drop stat.drop.minecraft.clock
/give @a[r=25] minecraft:clock 1
/gamerule doDaylightCycle false


/execute @a[score_PZTagZWS:4Drop_min=1] ~ ~ ~ /scoreboard players add #VarTagZWS:4Zähler PZTagZWS:4Sonne 1
/scoreboard players test #VarTagZWS:4Zähler PZTagZWS:4Sonne 11
/scoreboard players set #VarTagZWS:4Zähler PZTagZWS:4Sonne 1
/tellraw @a[score_PZTagZWS:4Drop_min=1] ["Zeitmesser:4 ",{"text":"Der Tag-Nacht-Rhytmus dauert "},{"score":{"name":"#VarTagZWS:4Zähler","objective":"PZTagZWS:4Sonne"} },{"text":" mal so lange."} ]
/execute @a[score_PZTagZWS:4Drop_min=1] ~ ~ ~ /kill @e[type=minecraft:item,c=1]
/give @a[score_PZTagZWS:4Drop_min=1] minecraft:clock 1
/scoreboard players reset @a[score_PZTagZWS:4Drop_min=1] PZTagZWS:4Drop
/scoreboard players operation #VarTagZWS:4Vergl PZTagZWS:4Sonne -= #VarTagZWS:4Tick PZTagZWS:4Sonne
/scoreboard players test #VarTagZWS:4Vergl PZTagZWS:4Sonne * 0
/scoreboard players operation #VarTagZWS:4Vergl PZTagZWS:4Sonne = #VarTagZWS:4Zähler PZTagZWS:4Sonne
/time add 1


/scoreboard objectives remove PZTagZWS:4Sonne
/scoreboard objectives remove PZTagZWS:4Drop
/clear @a[r=25] minecraft:clock -1 9999
/gamerule doDaylightCycle true