Je suis en train d'essayer de fabriquer un pinceau pour m'aider, ainsi que mes amis, à construire une ville. Mon idée pour le pinceau est que lorsqu'il est tenu, il utilise le raycasting pour placer des blocs là où regarde l'entité. Je ne peux pas utiliser de script car l'un de mes amis joue sur Xbox et ne peut pas utiliser les scripts pour une raison quelconque. Pour le raycasting, j'utilise une fonction mcfunction. Comment puis-je exécuter une commande oblique ou une fonction lorsqu'un joueur tient un objet spécifique dans Minecraft bedrock? Je pense que c'est possible car il est indiqué dans la documentation des add-ons Minecraft que les événements des entités peuvent appeler des commandes obliques, d'autres événements des entités et MoLang. Je joins une image de cette section de la documentation pour que vous puissiez comprendre ce que je veux dire. Voici ce que dit l'image au cas où l'image ne parvient pas à se charger.
Événements
Les événements se divisent en trois catégories, représentées chacune par une chaîne :
- Événements des entités
- Commandes obliques
- Expressions MoLang
En détail :
Événements des entités : Côté serveur (packs de comportement) uniquement. Actuellement, nous ne prenons en charge que les événements des entités sur soi, et ils prennent la forme "@s event". Ce sont des événements déclarés dans la section des événements du fichier de définition de l'entité. Par exemple, dans le cat.json, l'événement "minecraft:ageable_grow_up" fait grandir le chaton. Cela prendrait la forme de "@s minecraft:ageable_grow_up"
Commandes obliques : Côté serveur (packs de comportement) uniquement. Toute commande oblique peut être invoquée, comme
/particle minecraft:example_smoke_puff ~ ~ ~
. L'entité présumée de la commande oblique est l'entité invoquante, donc cette commande oblique particulière fera apparaître un effet de fumée à l'emplacement de l'entité.Expressions MoLang : Cela exécute une expression MoLang. L'utilisation principale est de définir des variables MoLang qui peuvent être utilisées plus tard. Par exemple, une transition d'état pourrait regarder une variable MoLang particulière, et cette expression pourrait changer cette variable. Un effet de particule sur l'entité pourrait changer de couleur en raison de variables MoLang utilisées pour les teintes de couleur. Une animation pour déplacer un bras pourrait utiliser une variable MoLang qui a été définie par un événement d'animation.
// événement de l'entité (uniquement pour les packs de comportement), mettre le nom d'événement particulier après le @s "@s minecraft:entity_event" // commande oblique (uniquement pour les packs de comportement), peut être n'importe quelle commande oblique côté serveur // est invoqué par l'entité, donc un téléport, par exemple, téléportera l'entité par défaut "/tell @a c'est un message" // Expressions MoLang, exécute une expression MoLang sur l'entité "variable.quelque_chose_à_définir = 3;"
Est-ce que je comprends mal? Si non, comment puis-je faire cela? Si l'un de ces points n'est pas clair pour vous, veuillez poser des questions dans les commentaires. Merci !
2 votes
Possible duplicate de Comment savoir si un certain objet se trouve dans l'inventaire d'un joueur ou dans un emplacement d'inventaire spécifique?