Minecraft ПК можно ли телепортировать определённого игрока командным блоком не используя ник
версия 1.16.5, как мне телепортировать игрока когда игрок нажимает на командный блок, я решил использовать команду /tp @p x y z но всё равно иногда другой игрок телепортируется, а мне нужно чтоб игрок когда нажимал на командный блок только он телепортировался
Пару лет назад точно такой же вопрос уже задавали, и на него я дал развёрнутый ответ с примерами JSON и инструкцией по созданию датапака. Если не получится использовать тот же формат достижения, что я там привёл —попробуй это:
{
"criteria": {
"charge_respawn_anchor": {
"trigger": "minecraft:item_used_on_block",
"conditions": {
"location": [
{
"condition": "minecraft:location_check",
"predicate": {
"block": {
"blocks": [
"minecraft:<кнопка>"
]
}
}
},
{
"condition": "minecraft:match_tool",
"predicate": {
"items": [
"minecraft:air"
]
}
}
]
}
}
},
"rewards": {
"function": "<твоё_пространство_имён>:<название_функции>"
}
}
Ещё можно попробовать убрать параметр condition, чтобы можно было вообще любым предметом пот кнопке нажимать, но я это не проверял:
{
"criteria": {
"charge_respawn_anchor": {
"trigger": "minecraft:item_used_on_block",
"conditions": {
"location": [
{
"condition": "minecraft:location_check",
"predicate": {
"block": {
"blocks": [
"minecraft:stone_button"
]
}
}
}
]
}
}
},
"rewards": {
"function": "<твоё_пространство_имён>:<название_функции>"
}
}
Обязательно отпишись, если получится — добавлю текст достижения для новых версий и в старый ответ.
Для этого вам нужно сохранить координаты X, Y и Z для игрока в переменных и использовать их в команде телепортации.
Пример:
/execute as @a[nbt={SelectedItem:{id:"minecraft:command_block"}}] at @s if entity @p[distance=..5,nbt={SelectedItem:{id:"minecraft:wool"}},limit=1] run tp @p ~ ~ ~
Эта команда телепортирует игрока, который стоит рядом с командным блоком и держит в руке шерсть. Вместо координат ~ ~ ~ вы можете указать нужные вам координаты X, Y и Z.