Como Detectar Itens na Mão Principal no Minecraft com Command Block
Minecraft Java Edition 1.21+ e 26+ – Detectar Itens por Nome, ID e custom_data
Neste tutorial você vai aprender como detectar automaticamente um item na mão principal de um jogador no Minecraft usando blocos de comando.
O método funciona no Minecraft Java Edition 1.21+ e 26+ e utiliza o comando execute if items para verificar se o jogador está segurando um item específico.
Você poderá detectar itens pelo ID, pelo nome customizado (custom_name) ou por tags usando custom_data, sendo perfeito para mapas de aventura, servidores e sistemas automáticos.
Vamos começar detectando o item através da tag do mesmo, mas antes vamos coletar uma espada de ferro para usar com exemplo
give @a iron_sword[custom_data={Teste:1}]
Escolha uma tag através do custom_data, agora coloque um bloco de comando Repeat como Always Active (Sempre Ativo) e este comando
execute if items entity @p weapon.mainhand minecraft:iron_sword[custom_data={Teste:1}]
Basicamente, ele vai detectar na mão principal do jogador mais próximo ao bloco de comando a espada de ferro com a tag Teste:1b
A idéia é a mesma pro nome, vamos novamente pegar a espada com este nome
give @a iron_sword[custom_name='[{"text":"Teste"}]']
Caso não funcione, use:
give @a iron_sword[custom_name='Teste']
E colocar no bloco de comando Repeat como Always Active (Sempre Ativo) este comando
execute if items entity @p weapon.mainhand minecraft:iron_sword[custom_name='[{"text":"Teste"}]']
Mesma coisa, caso não funcione mude para:
execute if items entity @p weapon.mainhand minecraft:iron_sword[custom_name='Teste']
Caso esteja fazendo para um modo multiplayer, utilize execute as @a run no inicio do comando para executar em todos
E coloque no lugar de @p o @s para executar no jogador em si