Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Как сделать область невидимости в роблокс студио

- Ученик (120), закрыт 1 год назад
Нужен скрипт, чтобы игрок становясь на определенный блок, становился невидимым до тех пор, пока не сойдет с него
Лучший ответ
Спрайк Спрайкович Мастер (1843) 1 год назад
local RunService = game:GetService("RunService")
local Players = game:GetService("Players")
local player = Players.LocalPlayer
local character = player.Character or player.CharacterAdded:Wait()

local function isOnPlatform()
local humanoidRootPart = character:FindFirstChild("HumanoidRootPart")
local block = workspace:FindPartOnRay(Ray.new(humanoidRootPart.Position, Vector3.new(0, -1, 0)), character)

if block then
return true
else
return false
end
end

local function setVisibility(visible)
if visible then
character.HumanoidRootPart.Transparency = 0
else
character.HumanoidRootPart.Transparency = 1
end
end

setVisibility(not isOnPlatform())

RunService.Stepped:Connect(function()
setVisibility(not isOnPlatform())
end)
Ice DiamondKotУченик (106) 1 год назад
Благодарю за ответ, бегу проверять
Остальные ответы
Анонимус Просветленный (33184) 1 год назад
 -- Поместите этот скрипт в блок, на котором игрок должен стать невидимым 

local Players = game:GetService("Players")

local function makePlayerInvisible(player)
-- Сделать игрока невидимым
player.Character:WaitForChild("Humanoid"):SetVisibility(false)
end

local function makePlayerVisible(player)
-- Сделать игрока видимым
player.Character:WaitForChild("Humanoid"):SetVisibility(true)
end

local function onPlayerEntered(part)
local player = Players:GetPlayerFromCharacter(part.Parent)
if player then
makePlayerInvisible(player)
end
end

local function onPlayerLeft(part)
local player = Players:GetPlayerFromCharacter(part.Parent)
if player then
makePlayerVisible(player)
end
end

script.Parent.Touched:Connect(onPlayerEntered)
script.Parent.TouchEnded:Connect(onPlayerLeft)
Похожие вопросы