Run it
Copy the script and paste it into your executor.
PathfindingService = :()
Players = :()
UserInputService = :()
Me = Players.LocalPlayer
following =
STOP_DISTANCE =
isTeamGame =
myTeam =
screenGui = .(, Me.PlayerGui)
screenGui.Name =
dragFrame = .(, screenGui)
dragFrame.Size = .(, , , )
dragFrame.Position = .(, , , )
dragFrame.BackgroundColor3 = .(, , )
toggleButton = .(, dragFrame)
toggleButton.Size = .(, , , )
toggleButton.Text =
toggleButton.BackgroundColor3 = .(, , )
toggleButton.TextColor3 = .(, , )
distanceLabel = .(, dragFrame)
distanceLabel.Size = .(, , , )
distanceLabel.Position = .(, , , )
distanceLabel.Text = .. STOP_DISTANCE
distanceLabel.BackgroundColor3 = .(, , )
distanceLabel.TextColor3 = .(, , )
distanceInput = .(, dragFrame)
distanceInput.Size = .(, , , )
distanceInput.Position = .(, , , )
distanceInput.PlaceholderText =
distanceInput.Text = (STOP_DISTANCE)
distanceInput.BackgroundColor3 = .(, , )
distanceInput.TextColor3 = .(, , )
applyButton = .(, dragFrame)
applyButton.Size = .(, , , )
applyButton.Position = .(, , , )
applyButton.Text =
applyButton.BackgroundColor3 = .(, , )
applyButton.TextColor3 = .(, , )
menuVisible =
(targetPos)
(Me.Character Me.Character:() Me.Character:())
humanoid = Me.Character.Humanoid
root = Me.Character.HumanoidRootPart
direction = (targetPos - root.Position).Unit
ray = Ray.(root.Position, direction * )
ignoreList = {Me.Character}
_, p (Players:())
p.Character
.(ignoreList, p.Character)
hit = :(ray, ignoreList)
hit hit:(Players)
humanoid.Jump =
humanoid:(targetPos)
()
closestPlayer =
shortestDistance = .huge
Me.Character Me.Character:()
myPos = Me.Character.HumanoidRootPart.Position
_, player (Players:())
player ~= Me player.Character player.Character:()
humanoid = player.Character:()
forceField = player.Character:()
humanoid humanoid.Health > forceField
plrPos = player.Character.HumanoidRootPart.Position
dist = (plrPos - myPos).Magnitude
( isTeamGame player.Team ~= myTeam) dist < shortestDistance
shortestDistance = dist
closestPlayer = player
closestPlayer
()
Me.Character Me.Character:() following
targetPlayer = ()
targetPlayer targetPlayer.Character targetPlayer.Character:()
myPos = Me.Character.HumanoidRootPart.Position
targetPos = targetPlayer.Character.HumanoidRootPart.Position
distance = (targetPos - myPos).Magnitude
distance > STOP_DISTANCE
(targetPos)
Me.Character.Humanoid:(Me.Character.HumanoidRootPart.Position)
()
toggleButton.MouseButton1Click:(()
following = following
toggleButton.Text = following
following
()
)
applyButton.MouseButton1Click:(()
newDistance = (distanceInput.Text)
newDistance
STOP_DISTANCE = newDistance
distanceLabel.Text = .. STOP_DISTANCE
)
UserInputService.InputBegan:((input, gameProcessed)
gameProcessed
input.KeyCode == .KeyCode.RightShift
menuVisible = menuVisible
dragFrame.Visible = menuVisible
)
()
count =
_, player (Players:())
player.Team count +=
count >
.(()
()
isTeamGame = ()
myTeam = Me.Team
)
There are many functions in this script. Проверка на живность, (функция встроена по умолчанию). Проверка на ближайшего игрока, (функция встроена по умолчанию). Проверка на силовое поле, (функция встроена по умолчанию). Проверка команды, (функция встроена по умолчанию). Вот тут я подробно скажу как работает функция проверки команды. Короче она автоматически определяет сколько команд в игре. То есть если в игре нет команд то он будет следовать за всеми игроками. Но если в игре есть 2 и более команд то он будет следовать только за игроками из другой команды. Ещё скрипт сам перепрыгнет через препятствие если это не обходимо, игроки не будут считаться как препятствие. В этом скрипте ещё много чего но это вы сами посмотрите и разберётесь. Этот скрипт полностью на русском, сразу говорю. И ещё после смерти Gui пропадёт я ещё не понял как это исправить. Чтобы скрыть или снова показать Gui нажмите Правый Shift.

Universal