Minecraft – How To Make Clickable Text In Minecraft

minecraft-commandsminecraft-java-edition

I am trying to make clickable text in Minecraft in the chat box. It was used in the adventure map, "UP".

The idea is that you are given an option in the text to click, "Yes", or "No". Each word will give an output of a command.

How is this achieved?

Best Answer

You can do this using the /tellraw command. The syntax is:

/tellraw <player> <raw json message>

For example, to have a command that activates on click, try running this:

/tellraw @a {"text":"Click this!","clickEvent":{"action":"run_command","value":"/say Hello!"}}

That has a "clickEvent" of type "run_command" with a value of the command to be run. There's a lot of different things you can do with JSON: displaying scoreboard objectives, selectors, items, achievements, entities, different text formatting, etc.

Here's a more complex command with the Yes/No choice and output you wanted:

/tellraw @p ["",{"text":"Yes","color":"green","bold":"true","clickEvent":{"action":"run_command","value":"/tellraw @p {\"text\":\"Confirmed!\",\"color\":\"green\"}"},"hoverEvent":{"action":"show_text","value":{"text":"","extra":[{"text":"Confirm","color":"green"}]}}},{"text":"/","color":"dark_gray","bold":"false"},{"text":"No","color":"red","bold":"true","clickEvent":{"action":"run_command","value":"/tellraw @p {\"text\":\"Cancelled\",\"color\":\"red\"}"},"hoverEvent":{"action":"show_text","value":{"text":"","extra":[{"text":"Cancel","color":"red"}]}}}]

You may want to learn more about the raw JSON text format, or use a JSON generator.