В Java есть игровой режим под названием «Наблюдатель», в котором мир рассматривается как призрачная форма, проходящая сквозь стены и способная «владеть» телами игроков и видеть то, что они увидят на своем экране, без человек, который может сказать.
Можно ли получить часть «Наблюдатель» в Bedrock Edition?
Я расскажу, как сделать так, чтобы игрок-наблюдатель отделялся с помощью команд , потому что в Vanilla Minecraft Bedrock невозможно (насколько мне известно) использовать удобные, не мешающие и не обрезающие блоки. Это не покажет, как использовать такую систему, как сброс предметов, для смены игрока, за которым вы наблюдаете, так как вам придется сделать это самостоятельно.
Я буду использовать селектор
@a[tag="viewed" ]
и ссылаясь на них как на просмотренные
для игрока наблюдаемого, и
@a [tag = "Spectator"]
для зрителя, который я буду называть наблюдатель
. Используйте команду/tag для применения и удаления тегов с сущностей.
Вы будете телепортировать невидимого игрока позади наблюдающего игрока, в зависимости от положения просматриваемого объекта. . Как узнать чью-то позицию взгляда?
^ ^ ^
Каждая из этих вставок что-то означает. Это немного сбивает с толку, но в этом уроке мы сосредоточимся на последней вставке. ^ ^ ^ 2
относится к блоку перед тем, где смотрит голова игрока, на 2 блока перед головой. Это означает, что если мы используем отрицательное значение (например, ^ ^ ^ -3
), мы получим блоки за местом, где смотрит игрок.
(Не путайте это с тильдами ~
! Они разделены, поскольку тильды просто возвращают блок, в котором находятся ноги игрока.)
Мы будем использовать/выполнять вместе с/тп. Сделайте повторяющийся командный блок; захватите повторяющийся командный блок, введя эту команду в окно чата:
/give @s repeat_command_block
Поместите эту команду в it:
выполнить @a [tag = "visible"] ~ ~ ~ tp @a [tag = "Spectator"] ^ ^ ^ -4 лицом к ^ ^ ^ 1 false
Что мы сделали? Во-первых, мы использовали команду execute с единственной целью — получить доступ к тем вставкам ( ^ ^ ^
), которые мы используем для поиска местоположения. Мы получаем местоположение плеера с помощью тега visible
. ( Помните, вы можете изменить селектор по своему желанию ). Мы ставим -4 на конце, чтобы получить 4 блока позади направления взгляда этого игрока. Вы можете изменить это, если хотите, просто используйте отрицательное число. Облицовка и большее количество вставок просто говорят нам, куда должен смотреть наш зритель, а именно там, где он смотрит. Значение false
предназначено для предотвращения проверки опасности (вам не нужно это понимать).
Причина, по которой мы должны использовать отрицательное значение, заключается в том, что если зритель находится перед просматриваемым, просматриваемый не сможет размещать блоки, открывать сундуки, разбивать блоки, поскольку они всегда будут попадать в зрителя!
Перед тем, как этот человек начнет наблюдать, вам нужно использовать эти команды для него, вы можете сделать это, когда впервые дадите ему тег Spectator
.
effect @a [tag = "Spectator"] invisibility 99999 255 true
Сделайте их на некоторое время невидимыми, и не показывать частицы.
gamemode @a [tag = "Spectator"] a
Вы не хотите, чтобы они ломались/ размещаете блоки, а?
effect @a [tag = "Spectator"] сопротивление 99999 255 true
Сделайте их невосприимчивыми к повреждению.
effect @a [tag = "Spectator"] слабость эффекта 99999 255 true
Значит, они не могут ударил сущностей, они даже не отбросят и не смогут сломать стойки для брони!
Также убедитесь, что у них нет лука, руки или молоко, зелья и т. д., если вам нужно обязательно использовать /clear
.
Если у вас есть система для того, кто просматривается, отслеживается, и эффекты задаются соответственно, установите в поле выбора повторяющегося командного блока Требуется Redstone
значение Always Active
.
- Если наблюдаемый смотрит вверх, зритель попадет под землю и, хотя он не может задохнуться, он будет смотреть на грязь или какой-либо другой блок, пока вы не выровняете свой обзор.
- Если зритель находит способ заблокировать кого-то, кто атакует наблюдаемого, он может действовать как живой щит, поэтому мне нравится телепортировать их обратно изрядно, так сложнее заблокировать PVP.
Как продолжение @Penguin
Если у вас есть мир в Education Edition, вы можете запустить команда, позволяющая пользователю летать.
Вы можете сделать: /capacity @p mayfly true
Чтобы вытащить их режима полета вы сначала должны выполнить /capacity @o may летать ложно
. Затем вы должны убить их, потому что просто отняв эту способность, они не исчезнут.
Также, если вы хотите отключить звук пользователя в чате, чтобы они не сообщали другим пользователям, что происходит вы можете сделать: /capacity @p mute true
Чтобы включить их, просто выполните /ability @p mute false
4