Top.Mail.Ru
Ответы
Аватар пользователя
Аватар пользователя
Аватар пользователя
Аватар пользователя
Время игр
+2

Помогите с скриптом в Roblox Studio.

Я начинающий разработчик, опыта в скриптах мало.
Хотел сделать скрипт: При прикосновении к детали ( в данном случае это обычный блок, имя StartJason) из хранилища сервера (ServerStorage) появлялся объект (JASON), иначе говоря "переезжал" из ServerStorage в Workspace. Когда написал скрипт ничего не происходит, возможно ошибся. Можете помочь? Заранее спасибо.
P.S вот скрипт который получился у меня:
local Jas = game.ServerStorage.JASON.Parent == game.Workspace

game.Workspace.StartJason.Touched:Connect(Jas)

end

По дате
По рейтингу
Аватар пользователя
Новичок
5лет

не особо, но может быть ...
local Jas = (присвоение) game.ServerStorage.JASON.Parent == (сравнение) game.Workspace

Аватар пользователя
Гуру

local part = [блок]
part.Parent = game.Workspace

Аватар пользователя
Ученик

function onTouched(hit)
if hit.Parent:findFirstChild("Humanoid") ~= nil and hit.Parent:findFirstChild("Face") == nil then
local g = script.Parent.Parent.Face:clone()
g.Parent = hit.Parent
local C = g:GetChildren()
for i=1, #C do
if C[i].IsA == "Part" or "UnionOperation" then
local W = Instance.new("Weld")
W.Part0 = g.Middle
W.Part1 = C[i]
local CJ = CFrame.new(g.Middle.Position)
local C0 = g.Middle.CFrame:inverse()*CJ
local C1 = C[i].CFrame:inverse()*CJ
W.C0 = C0
W.C1 = C1
W.Parent = g.Middle
end
local Y = Instance.new("Weld")
Y.Part0 = hit.Parent.Head
Y.Part1 = g.Middle
Y.C0 = CFrame.new(0, 0, 0)
Y.Parent = Y.Part0
end

local h = g:GetChildren()
for i = 1, # h do
h[i].Anchored = false
h[i].CanCollide = false
end

end
end

script.Parent.Touched:connect(onTouched)

Аватар пользователя
Ученик

если переезжает то используй это:

local Jas = game.ServerStorage:FindFirstChild("JASON")

game.Workspace.StartJason.Touched:Connect(function(hit)
local Humanoid = hit.Parent:FindFirstChild("Humanoid")
if Humanoid~=nil and Jas~=nil then
Jas.Parent = game.Workspace
end
end)

если клонируеся то используй это:
--я добавил чтобы он часто не клонировался это debounce будет клонироваться через секунду
local Jas = game.ServerStorage:FindFirstChild("JASON")
local debounce = false

game.Workspace.StartJason.Touched:Connect(function(hit)
local Humanoid = hit.Parent:FindFirstChild("Humanoid")
if debounce==false and Humanoid~=nil and Jas~=nil then
debounce=true
Jas.Parent = game.Workspace
wait(1) -- вместо 1 можешь добавить больше интервал а если чтобы клонировался один раз просто удали эту строку и ниже
debounce=false
end
end)

Аватар пользователя
Гуру
5лет

Я бы написал так (clone может быть и не нужен, я прост давно не юзал ServerStorage) :

local function CreateJas
game.ServerStorage.JASON:Clone()
game.ServerStorage.JASON.Parent = game.Workspace
--Также неплохо было бы прописать координаты этого JASON
end

game.Workspace.StartJason.Touched:Connect(CreateJas)