I'm creating a give system which the barista sends the item to the player (cafe game) and a gui pops up saying yes, no, I didn't order that. It only works in-studio but not in-game. Error: http://prntscr.com/iz4gey Explorer objects: http://prntscr.com/iz4gom Inside the buttons are just localscripts.
script.Parent.Frame.Holder:TweenPosition(UDim2.new(0,0,0,0), "In", "Linear", .3, true)
script.Parent.AnswerHolder.y:TweenPosition(UDim2.new(0, 0,0.005, 0), "Out", "Linear", .3, true)
script.Parent.AnswerHolder.w:TweenPosition(UDim2.new(0, 0,0.717, 0), "Out", "Linear", .3, true)
script.Parent.AnswerHolder.n:TweenPosition(UDim2.new(0, 0,0.364, 0), "Out", "Linear", .3, true)
local barista = script.Parent.Parent:WaitForChild("barista")
local item = nil
for i,v in next, script.Parent.Parent:GetChildren() do
if v.ClassName == "Tool" then
if v:FindFirstChild("topbun") == nil then
item = v
else
item = game.Lighting[v.Name]:Clone()
end
end
end
function onYes()
Workspace.GiveSystem.AddPoint:FireServer(script.Parent.Parent.barista.Value)
item.Parent = game.Players.LocalPlayer.Backpack
script.Parent.AnswerHolder.y:TweenPosition(UDim2.new(-1, 0,0.005, 0), "Out", "Linear", .3, true)
script.Parent.AnswerHolder.n:TweenPosition(UDim2.new(-1, 0,0.364, 0), "Out", "Linear", .3, true)
script.Parent.AnswerHolder.w:TweenPosition(UDim2.new(-1, 0,0.717, 0), "Out", "Linear", .3, true)
script.Parent.Frame.Holder:TweenPosition(UDim2.new(1,0,0,0), "In", "Linear", .3, true)
wait(1)
script.Parent:Destroy()
end
function onWrong()
Workspace.GiveSystem.RevokePoint:FireServer(script.Parent.Parent.barista.Value)
script.Parent.AnswerHolder.y:TweenPosition(UDim2.new(-1, 0,0.005, 0), "Out", "Linear", .3, true)
script.Parent.AnswerHolder.n:TweenPosition(UDim2.new(-1, 0,0.364, 0), "Out", "Linear", .3, true)
script.Parent.AnswerHolder.w:TweenPosition(UDim2.new(-1, 0,0.717, 0), "Out", "Linear", .3, true)
script.Parent.Frame.Holder:TweenPosition(UDim2.new(1,0,0,0), "In", "Linear", .3, true)
wait(1)
script.Parent:Destroy()
end
function onNo()
script.Parent.AnswerHolder.y:TweenPosition(UDim2.new(-1, 0,0.005, 0), "Out", "Linear", .3, true)
script.Parent.AnswerHolder.n:TweenPosition(UDim2.new(-1, 0,0.364, 0), "Out", "Linear", .3, true)
script.Parent.AnswerHolder.w:TweenPosition(UDim2.new(-1, 0,0.717, 0), "Out", "Linear", .3, true)
script.Parent.Frame.Holder:TweenPosition(UDim2.new(1,0,0,0), "In", "Linear", .3, true)
wait(1)
script.Parent:Destroy()
end
script.Parent.AnswerHolder.y.MouseButton1Click:connect(onYes)
script.Parent.AnswerHolder.n.MouseButton1Click:connect(onNo)
script.Parent.AnswerHolder.w.MouseButton1Click:connect(onWrong)

2 comments
You missed something, put the localscript in the Frame's parent and should be fixed.
Use :WaitForChild("Frame") instead of script.Parent.Frame. This should work.