CommandBlock "lire" une puissance de redstone avec un command block

tnec

Aventurier
24 Juin 2019
4
1
1
28
Bonjour, j'aimerais pouvoir lire (afficher dans le chat par ex) la valeur de la puissance de redstone (0-15) d'une poudre de redstone avec un command block. je ne sais pas si cela est possible mais cela m'aiderai beaucup.

je sais qu'il est possible de lire la puissance de sortie d'un comparateur avec la commande:
Code:
tellraw @a {"nbt":"OutputSignal","block":" *coordonées* "}

mais cela ne me conviens pas (pb de timing avec les comparateurs qui ne changent pas leur output si le signal dure 1 tic).

précisions: java version 1.14

merci de vos réponses
 
  • J'aime
Reactions: Régis Laspalès
Bon.
Bon...
...

QUOIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII??????????????????????????????
CA VIENT D'OÙ CE TRUC??? CA MARCHE VRAIMENT!!!!!!

attends...

WAH MAIS C'EST SUR LE FORUM OFFICIEL!!!
https://minecraft.gamepedia.com/Commands#Raw_JSON_text
AAAAH TROP FORT TOUT CE QU'ON POURRA FAIRE!

Jusqu'à maintenant, je me basais sur les posts de skylinerw pour le JSON mais ça date! Je savais pas pour le "nbt"!
 
Bon.
Bon...
...

QUOIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII??????????????????????????????
CA VIENT D'OÙ CE TRUC??? CA MARCHE VRAIMENT!!!!!!

attends...

WAH MAIS C'EST SUR LE FORUM OFFICIEL!!!
https://minecraft.gamepedia.com/Commands#Raw_JSON_text
AAAAH TROP FORT TOUT CE QU'ON POURRA FAIRE!

Jusqu'à maintenant, je me basais sur les posts de skylinerw pour le JSON mais ça date! Je savais pas pour le "nbt"!
c'est sympas mais ça m'aide pas vraiment ...
 
Bon, c'est pas parce que je savais pas ça que je ne sais pas comment résoudre ton problème : Contrairement à la poudre de redstone, le comparateur est une "entité de bloc" (Je crois que c'est ça); autrement dit, c'est un bloc qu'on peut cibler avec le /data, donc qui possède des données NBT.

La poudre de redstone, elle, ne possède pas de donnée NBT, tout simplement parce qu'elle n'en a pas besoin. En revanche, elle possède des "blockstates", c'est là que sont stockées ses données de puissance et son orientation

Bref, les commandes pour prélever les blockstates sont pas nombreuses...
Le seul truc que je vois, c'est une commande par blockstate, genre une fonction comme ça :

/execute if block ~ ~ ~ minecraft:redstone_wire[power=0]
/execute if block ~ ~ ~ minecraft:redstone_wire[power=1]
/execute if block ~ ~ ~ minecraft:redstone_wire[power=2]
...Jusqu'à 15

Je suis pas trop dans les textures, mais d'après ce que j'ai vu, les blockstates sont utilisés pour adopter une texture en fonction de l'état du bloc (par exemple, peu importe la puissance d'un comparateur, sa texture n'en sera pas affectée, contrairement à la redstone)

J'ai épluché la page sur le JSON du wiki officiel (d'ailleurs, y a que le "nbt" de nouveau, en fait...), mais il n'y a aucun truc pouvant chercher les blockstates...
Si tu veux vraiment stocker la puissance des poudres de redstone, tu peux aussi stocker un score différent pour chaque blockstate...

Est-ce que ça t'irait? Tu voulais faire quoi, exactement?
 
Dernière édition par un modérateur:
merci =)

c'est un peu plus "lourd" mais ça a l'air de marcher.
c'était pour m'aider a designer un système de redstone assez complexe que je comprend pas super bien (notemment le comportement des comparateurs quand les signaux d'entrée varie rapidement )
 
Ah, c'est pour analyser un système? Tu pourrais carrément te faire un mini-datapack pour regrouper les fonctionnalités que tu cherches...
 
je suis pas mauvais en redstone, mais question commandes et datapacks je débute totalement. Je pense pas en etre capable pour l'instant mais je me renseignerais, ça à l'air assez utile =)
 
Ah ben oui, les data packs, c'est vraiment super! Tu peux exécuter des tonnes de commandes, faire des loops en 1 tick, et le meilleur : aucun système de blocs requis dans la map donc pas de gestion du world spawn