Перейти к содержанию

Как наложить команду на предмет?


Рекомендуемые сообщения

В теме 18 сообщений

Ну вот, как сделать так, чтобы при нажатии ПКМ с определённым предметом в руке выполнялась команда?

Например, мне нужен алмаз, и когда я нажимаю ПКМ, держа его в руке, то должна выполниться следующая команда: /tp @p 42 10 711 

Пришлите команду для версии 1.12.2, 1.13.2 и выше (если команды разные)

Ссылка на комментарий
Поделиться на другие сайты

Это невозможно сделать так просто. Единственные предметы, по которым можно детектить ПКМ: Удочки (Все), Ендер жемчуг и глаза, зелья, снежки, яйца и арбалет.

Ссылка на комментарий
Поделиться на другие сайты

12 минут назад, shurik204 сказал:

Это невозможно сделать так просто. Единственные предметы, по которым можно детектить ПКМ: Удочки (Все), Ендер жемчуг и глаза, зелья, снежки, яйца и арбалет.

Удочки? Ну можно и удочку (с морковкой)

Ссылка на комментарий
Поделиться на другие сайты

9 часов назад, shurik204 сказал:

Это невозможно сделать так просто. Единственные предметы, по которым можно детектить ПКМ: Удочки (Все), Ендер жемчуг и глаза, зелья, снежки, яйца и арбалет.

Вообще, нет. Так можно сделать с любым предметом. Если надо, то я расскажу

Ссылка на комментарий
Поделиться на другие сайты

9 часов назад, Delazar сказал:

Удочки? Ну можно и удочку (с морковкой)

Это не так уж просто.

для начала берем командный блок (/give @p command_block)

Потом нужно создать скорборд. Для чего это нужно? Чтобы определять, когда игрок кликает ПКМ, держа в руках определенный предмет. Создается он следующей командной:

/scoreboard objectives add [Название] stat.useItem.minecraft.carrot_on_a_stick

В зависимости от версии, команда может меняться. Если что, попробуй без "stat"

Теперь, нужно вывести скорборд на экран, для удобства. 

/scoreboard objectives setdisplay sidebar (Название)

И теперь, когда мы кликаем правой кнопкой мыши, держа в руках удочку с морковкой, нам зачисляется одно очко в счетчик. 

Дальше, используя этот скорборд, мы используем команду:

ставим командный блок и вводим в него команду:

/execute at @a[score={(Название скорборда)=1}] run (твоя команда)

На более ранних версиях может селектор может быть такой: @a[score_(название скорборда)=1]

Далее, мы смотрим чуть ниже строки ввода команды и устанавливаем следующие параметры:

Цикличный>Безусловный>Всегда активен

Смотря по направлению первого командного блока (треугольник сбоку) мы ставим еще один командный блок, зажимая шифт и вводим в него следующую команду:

scoreboard players set @a[score={(Название скорборда)=1}] (название скорборда) 0

Это сделано для того, чтобы обнулять счетчик.

тут, опять же, селектор может отличаться (см. выше)

Опускаемся чуть ниже, ставим эти параметры:

Цепной>Безусловный>Всегда активен

Ну вот и все :)

Можно привязать теги, чтобы алмазы выдавались не каждому, кто просто кликает обычной удочкой с морковкой. удачи))

Ссылка на комментарий
Поделиться на другие сайты

57 минут назад, Vastino сказал:

Вообще, нет. Так можно сделать с любым предметом. Если надо, то я расскажу

А ну ка, давай, интересно стало. (Никаких костылей типа удочку с морковкой во вторую руку и без жителей перед игроком).
Сделай ПКМ детект на алмаз.

Ссылка на комментарий
Поделиться на другие сайты

2 часа назад, Vastino сказал:

Вообще, нет. Так можно сделать с любым предметом. Если надо, то я расскажу

Ну... сделай! А то удочка как-то тупо выглядит...

Ссылка на комментарий
Поделиться на другие сайты

06.08.2020 в 18:55, Vastino сказал:

/execute at @a[score={(Название скорборда)=1}] run (твоя команда)

На более ранних версиях может селектор может быть такой: @a[score_(название скорборда)=1]

У меня не работает эта команда! 

Ссылка на комментарий
Поделиться на другие сайты

08.08.2020 в 12:04, Delazar сказал:

У меня не работает эта команда! 

это все потому, что на 1.12 команда выглядит так: /execute @[score_(Название(=1] вторая команда.

Без at и run

Ссылка на комментарий
Поделиться на другие сайты

  • 2 недели спустя...
06.08.2020 в 19:37, shurik204 сказал:

А ну ка, давай, интересно стало. (Никаких костылей типа удочку с морковкой во вторую руку и без жителей перед игроком).
Сделай ПКМ детект на алмаз.

Так нельзя)

Ссылка на комментарий
Поделиться на другие сайты

06.08.2020 в 18:38, Vastino сказал:

Вообще, нет. Так можно сделать с любым предметом. Если надо, то я расскажу

 

2 минуты назад, Vastino сказал:

Так нельзя)

Тебя подменили походу. :lol: Либо ты переобулся в прыжке.

Ссылка на комментарий
Поделиться на другие сайты

1 час назад, Vastino сказал:

Так нельзя)

Так.

Цитата

Вообще, нет. Так можно сделать с любым предметом. Если надо, то я расскажу

Это кто сказал?

Ты или кто-то другой?

Ссылка на комментарий
Поделиться на другие сайты

Можно использовать самый мазахисткий способ, который будет работать с 1.14:

------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

1. Сделать для удочки с морковкой CustomModelData, с текстурой алмаза, и pfcgfdybnm c названием "Алмаз"

2. За меня описал @Vastino, только прибавляем строчку в селекторе: @a[scores={скорборд=1..}, nbt={SelectedItem:{id:"carrot_on_a_stick", tag={CustomModelData:цифровой_айди}}}] run команда

3. Нужно ещё поставить фиолетовый командный блок с приставкой "Всегда включён" (что-то вроде этого), и написать на нём команду: scoreboard players set @a название_скорборда 0

Так что ВО ВСЯКОМ СЛУЧАЕ по сути можно

------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Ну а если вам нужно что-то из этого алмаза сделать условие, например что-то скрафтить в верстаке, я буду показывать на примере этого

Делаем скорборд с тегом dummy

Ставим фиолетовый командный блок, и прописываем строчку: execute at @a[nbt={SelectedItem:{id:"carrot_on_a_stick", tag={CustomModelData:цифровой_айди}}}] if block ~ ~ ~ minecraft:crafting_table run scoreboard players add @s скорборд 1

Потом ставим таких командных блоков несколько, чтобы проверять верстак на разных относительных позициях

Потом делаем так: execute at @a[scores={скорборд=1..}] run clear @s carrot_on_a_stick{CustomModelData:цифровой_айди}

:execute at @a[scores={скорборд=1..}] run give @s diamond

:execute at @a[scores={скорборд=1..}] run scoreboard set @s скорборд 0

------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

И ещё: это НЕ (!) будет работать без оптифайна а также в версиях ниже 1.14.

Ссылка на комментарий
Поделиться на другие сайты

12 минут назад, kr1nch3s сказал:

расскажи плиз

 

 

21.08.2020 в 17:42, Vastino сказал:

Так нельзя)

Уже отвечали.

Ссылка на комментарий
Поделиться на другие сайты

  • 2 года спустя...

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти
  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...