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

Jarvis

Пользователи
  • Постов

    24
  • Зарегистрирован

  • Посещение

Весь контент Jarvis

  1. Задача такая: нужно выполнять определенную функцию, но только от лица рамок, в которых находится определенный предмет с определенным именем. Каким условием это провернуть?
  2. Когда у тебя начинается раунд где не нужно двигаться запиши координаты игроков в скорбоарды для каждого. Создай тех два-три скорбоарда, и от лица каждого запиши их. И потом просто сравнивай в течение всего раунда, совпадают ли координаты с записанными. Если нет - казнить нельзя помиловать. Или же, возможно, более оптимальным будет вначале такого раунда создавать невидимую сущность "в" каждом из игроков. Например, стойку для брони. И в течение всего раунда пусть каждая стойка для брони проверяет, есть ли на расстоянии меньше допустимого у неё игрок. Если игрока не будет на таком расстоянии - значит игрок двинулся куда-либо. Тогда от лица этой стойки успешно убивай этого игрока. А в конце раунда эти стойки можно спокойно убивать и всё. Можно ещё кучу всего улучшить и доработать, но как одна из идей - сгодится, я считаю
  3. Знаю, они и имели. И я игрался с ними и до этого они были, и в теге Pose был тег Head. Теперь у них этого тега просто нету вообще. При чём даже если я поставлю новый арморстенд. Никаких постоянно работающих команд и ф-ций нет
  4. Почему-то теперь ни у одного арморстенда (даже нового) тега Head нету вовсе. Беру всю дату с него, а в теге Pose только Body
  5. А направление взгляда подобным образом менять реально? Ибо постоянно телепортировать это руинит физику падения + нагрузка вроде как по ощущениям выше при большом количестве арморстендов
  6. Конкретных средств непосредственно для этого толком и нету. Задача сводится к тому, чтобы каждый раз, когда условная музыка закончилась, она запускалась снова. Можешь сделать таймер через скорбоард, и каждый раз, когда таймер достигает нужного значения (это значение подбирай под длительность трека), запускай музыку и сбрасывай таймер. А если ты про то, что сама по себе музыка в майнкрафте с перерывами включается, то тут уже не отыграться командой. Можно заморочиться и прям сделать датапак постоянно крутящий случайные треки, но стоит ли? В общем, если для карты/подобных нужд - сделай таймер и каждый раз по его срабатыванию запускай композицию Если же просто для игры - может лучше Spotify?
  7. Имеется стойка для брони. У стоек для брони есть тег Head, в котором хранится положение головы. Например, командой /data merge entity @e[type=minecraft:armor_stand] {Pose:{Head:[140f,0f,0f]}} Я могу спокойно вертеть голову стойки как понадобится. Но у меня задача вертеть голову постоянно на новое значение. Если вкратце, нужно чтобы стойка для брони всегда смотрела, например, на игрока. Что касается направления взгляда, там это через /tp реализовалось успешно (хотя хочу переделать чтобы тоже данными как-то её поворачивать, а не телепортацией). А что касается поворота именно головы? Как мне в этот тег записывать, например, значение скорбоарда? Или может другие методы для решения моей задачи есть В общем, кто может помочь, буду очень благодарен
  8. Имеется датапак. В нём некоторые функции выдают предметы с CustomModelData В одиночной игре всё работает нормально. Проблемы начинаются при запуске датапака на сервере: выданные им предметы выглядят как без CustomModelData При этом если выдать себе такой предмет вручную, всё работает нормально В чём может быть проблема?
  9. Ситуация такая. Нужно чтобы сущность выполняла команду только если костёр, в котором она находится горит По сути это /execute if block ~ ~ ~ бла бла бла run команда У костра состояние горения это вроде lit Вопрос в том как проверить это самое состояние Буду благодарен за помощь
  10. Как при этом всём задетектить предмет с нужным CustomModelData? Я пробовал так, но походу тупее команды мир не видел: /execute if entity @p[nbt={SelectedItem:{id:"minecraft:poisonous_potato",nbt:{CustomModelData:"2b"}}}] run say hi
  11. Нужно детектить уровень освещения на тех или иных координатах. Как это можно сделать? Не особо нашёл что-то по этому поводу в интернете, так что обращаюсь сюда
  12. Вариант 1 execute positioned КОРДЫ if entity @a[distance=..ДИСТАНЦИЯ] run КОМАНДА Вариант 2 Ставишь на нужном месте стойку для брони с invisible:1 и определённым именем. Потом execute as @e[name="ИМЯ"] at @s if entity @a[distance=..ДИСТАНЦИЯ] run КОМАНДА Если есть вопросы пиши в лс, я отвечу
  13. Через скорбоард. Создаёшь скорбоард с названием например Timer и со старта значением 0, делаешь цикличный кб работающий постоянно и пусть он каждый тик (это 20 раз в секунду) плюсует к Timer единичку. Получается каждый тик у тебя таймер будет повышаться. Теперь ставишь второй кб, который будет проверять, дошёл ли таймер до 600 (это 30 раз по 20, те самые 30 секунд). И пусть этот кб при выполнении этого условия запускает ту цепочку и в той цепочке добавь кб, который будет устанавливать Timer в значение 0. Объясню, что мы сотворили. Цикличный командный блок отвечает за "секундомер". Второй командный блок проверяет, дошел ли секундомер до 600 тактов (30 секунд) и если дошёл то обнуляет, параллельно запуская основной механизм. Команды: /scoreboard objectives add <задача> <тип> [<отображаемое название>] - создание скорбоарда. Тип указывай dummy, задачу и отображаемое название делай для удобства одинаковые /scoreboard players add <цели> <задача> 1 - прибавляет 1 к задаче у цели. Цель можешь указать не существующую. Например цель пусть будет Ticker /scoreboard players set <цели> <задача> 0 - примерно то же самое, только не изменяет значение а устанавливает. Конкретно этот пример обнуляет задачу у цели Если нужно уточнить ещё что-то, можешь в личку писать, я помогу. И хорошей идеей будет всё это делать не на кб а датапаком. Как это делать, могу рассказать, хотя инфы в интернете гора
  14. Отличная статейка. От себя добавлю ссылку на полезный генератор со всеми видами крафта (Верстак, печь и тп). https://crafting.thedestruc7i0n.ca/ Количество получаемого ресурса можно задать: правой кнопкой мыши по получаемому ресурсу и выбираем Set Count. Если будут вопросы, пишите. Автору статьи ещё раз респект
  15. Предупрежу желающих перейти по ссылке - нужна лицензия майнкрафта
  16. Просто сделай цикличный командный блок и там пропиши spawnpoint @a 123 123 123 (123 это координаты) Таким образом у тебя постоянно для всех игроков будет ставиться там спавнпоинт. Чтобы в чате не флудило, пропиши /gamerule CommandBlockOutput false
  17. Только что покопался и нашел еще один рабочий способ: /execute as @a[x=0,y=5,z=-0,distance=..0.5] run setblock 40 4 40 minecraft:redstone_block Отличается от способа shurik204 тем, что выполняется от лица того игрока, который стоит на этих координатах. Иными словами все игроки на 0 5 0 как бы прописывают setblock 40 4 40 minecraft:redstone_block, что может быть недостатком по сравнению со способом shuriik204.
  18. Я понятия не имею, зачем такое вообще может понадобиться, но со своей стороны окажу содействие и поделюсь информацией, которую знаю и которая может пригодиться. Насколько мне известно, задетектить игрока в лодке нельзя. Да, можно прописать /execute as @e[type=boat,nbt={Passengers:[{}]}] run say hi. Тогда лодка будет выполнять команду (в данном случае say hi) только если у неё есть пассажир (именно моб). Но тогда команда будет действовать только на сидящих в лодке мобов, а не на сидящих в лодке игроков. Если тебе это не подходит, не знаю, что делать. Если подходит, идём далее. Хотя можно прописать @e[type=boat,nbt={Passengers:[{id:айди}]}], но это теория и на практике лично у меня ничего не получилось, хотя возможно я просто что-то не так делаю. Как задетектить сидящего в лодке игрока я не знаю, постараюсь выяснять. Вернёмся к понятному курсу темы. Команда /execute as @e[type=boat,nbt={Passengers:[{}]}] run say hi делает так, что все лодки, в которых кто-то сидит, говорят hi. Теперь вместо say hi пишем всё, что нам нужно. Но тут второй тупик: на лодке эффекты не оказывают никакого влияния. если прописать /execute as @e[type=boat,nbt={Passengers:[{}]}] run effect give @s minecraft:invisibility 1 и запихнуть в цикл то эффект наложится, даже частицы будут, но невидимой лодка не станет. Вывод: исходя из вышеописанных проблем лодку невидимой без текстурпака не сделать. (а если использовать текстурпак то невидимой лодка будет по жизни) НО! Я придумал один способ. В текстурпаке сделай невидимой определённый вид лодки, который не будет использоваться (если такое подходит). Для эксперимента я сделал текстурпак, в котором текстуры лодки из акации сделал невидимыми. Нюанс: если лодка стоит на земле, от неё всё равно будет тень, хотя сама лодка будет невидимой (в воде тени нет). Далее в цикличном командном блоке пишем /execute as @e[type=boat,nbt={Passengers:[{}]}] run data merge entity @e[type=boat,limit=1,sort=nearest] {Type:acacia}. Эта команда будет делать все лодки, в которых кто-то сидит, лодками из акации (в данном случае именно лодки из акации заменены на невидимые текстуры). В обратную сторону я не смог сделать вообще. Облазил интернет в поисках тегов игроков и лодок, пробовал разные способы в самом майнкрафте, в общем сделать, чтобы лодка потом обратно делалась видимой я не смог. Но может кто-то из профи сможет. Новый вывод: невидимой лодку сделать можно, но придётся пожертвовать одним из видов лодки, и лично у меня пока не удалось реализовать восстановление видимости лодки. Идём далее. Игрок. С ним всё намного сложнее, ибо узнать, что игрок сидит в лодке командами нельзя (НАСКОЛЬКО МНЕ ИЗВЕСТНО). Но, всё же кое-что сделать можно. Вместе с предыдущим цикличным командным блоком запускаем ещё один, в который пихаем /execute as @e[type=boat,nbt={Passengers:[{}]}] run replaceitem entity @p armor.head minecraft:skeleton_skull. Эта команда заставит все лодки в которых кто-то сидит одевать ближайшему игроку на голову череп (если игрок сидит в лодке, то он и будет ближайшим). Минусы: если на голове игрока до этого было что-то надето, это что-то будет утрачено при таком исполнении. Ещё минусы: мне и в этом случае не удалось реализовать обратный манёвр (снятие черепа при вылазке с лодки). Но уверен, профи знают больше и смогут естественно больше, чем я. Надеюсь, моя инфа была полезной. А вообще, лучше опиши, для чего нужна подобная штука. Может кто-то (может и я) подскажет идеи, которые будут больше подходить или смогут заменить махинации с лодкой и котелком игрока. Всегда рад помочь, Jarvis)
  19. По команде /give есть шикарный генератор. Лови: http://www.mapmaking.fr/give1.14/ Там всё понятно написано, но если что, пиши в лс, я помогу разобраться. А на счёт того, что всё это надо в приключении тестить, правильно говорят. Такие фокусы в выживании не работают.
  20. Попробуй: execute positioned 0 5 0 if entity @a[distance=..0.5] run setblock 40 4 40 redstone_block В этом варианте команда выполняется на координатах 0 5 0 и проверяет, есть ли в радиусе 0.5 и менее человечище. Если есть, ставится заветный блок. Хотя варианты других ребят тоже подходят и даже имеют некоторые преимущества.
  21. Спасибо огромное. Ты очень помог! Благодарен
  22. Как вариант: execute at @a if block ~ ~-1 ~ айди run команда (как говорил уважаемый NecRoZ) Есть еще такой способ: execute as @a(или если сущность то @e) at @s if block ~ ~-1 ~ айди run команда По сути просто в первый способ добавляем Исполнителя команды. Не факт, что это нужно, но всё зависит от команды, которую нужно исполнить. В любом варианте после @a или @e можно в [квадратных скобках] писать различные дополнительные признаки существа, под которым проверяется блок. Например @e[type=zombie запустит проверку блока только под всеми зомби, а @a[gamemode=!cspectator] запустит проверку блока только под теми игроками, кто играет не в режиме спектэйтора. Если нужна помощь по селекторам (все эти штуки с @p, @e и так далее), пиши мне, ибо селекторы это действительно неплохие возможности для команд. Я с радостью отвечу) И да, как и говорил уважаемый NecRoZ, любой из вариантов нужно запускать в постоянно активном цикличном командном блоке или в обычном с клок генератором (советую лучше в активном цикличном) Удачи!
  23. Есть ситуация: У сущности есть скорбоард. Для примера назовём этот скорбоард ЗНАЧЕНИЕ. Возможно ли реализовать выдачу предмета с прочностью ЗНАЧЕНИЕ или сломанную на ЗНАЧЕНИЕ. Иными словами, (для примера пусть скорбоард будет равен 35) можно ли реализовать выдачу например алмазной кирки, сломанную на 35 единиц или прочностью в 35? Пожалуйста, Если нет, скажите, Если да, и знаете способ, подскажите. ЗАРАНЕЕ СПАСИБО! Администрация. Если мой предыдущий пост был заблокирован не ботом, пожалуйста, уведомьте о причине блокировки, чтобы я вновь не повторял тех ошибок. СПАСИБО!
×
×
  • Создать...