Gui Script not working

Hey i have created this script but i dont understand why it aint working can someone help me with it

local TweenService = game:GetService("TweenService")
local UserInputService = game:GetService("UserInputService")

local frame = script.Parent.Frame
local originalPosition = frame.Position

local tweenInfo = TweenInfo.new(
	0.5,
	Enum.EasingStyle.Quad,
	Enum.EasingDirection.Out,
	-1,
	false,
	0
)

local movedPosition = originalPosition + UDim2.new(0, 0, 0, 50)

local isMoved = false

local function onKeyPress(input)
	if input.KeyCode == Enum.KeyCode.U then
		if not isMoved then
			local moveTween = TweenService:Create(frame, tweenInfo, {Position = movedPosition})
			moveTween:Play()
			isMoved = true
		else
			local returnTween = TweenService:Create(frame, tweenInfo, {Position = originalPosition})
			returnTween:Play()
			returnTween.Completed:Connect(function()
				frame.Visible = false
			end)
			isMoved = false
		end
	end
end

UserInputService.InputBegan:Connect(onKeyPress)

Hi, i tried it in studio and it worked. Maybe you put your code in Server Script? Server Scripts cannot detect user’s input, only LocalScrips can do that.

but it doesnt show the frame for me and looply plays the tween

Here

local TweenService = game:GetService("TweenService")
local UserInputService = game:GetService("UserInputService")

local frame = script.Parent.Frame
local originalPosition = frame.Position

local tweenInfo = TweenInfo.new(
	0.5,
	Enum.EasingStyle.Quad,
	Enum.EasingDirection.Out,
	0, --This is repeat times, if set value to -1 then it will repeat infinitely
	false,
	0
)

local movedPosition = originalPosition + UDim2.new(0, 0, 0, 50)

local isMoved = false

local function onKeyPress(input)
	if input.KeyCode == Enum.KeyCode.U then
		if not isMoved then
			frame.Visible = true --Make Frame Visible
			local moveTween = TweenService:Create(frame, tweenInfo, {Position = movedPosition})
			moveTween:Play()
			moveTween.Completed:Wait() --Wait Until Tween Complete
			isMoved = true
		else
			local returnTween = TweenService:Create(frame, tweenInfo, {Position = originalPosition})
			returnTween:Play()
			returnTween.Completed:Connect(function()
				frame.Visible = false
			end)
			isMoved = false
		end
	end
end

UserInputService.InputBegan:Connect(onKeyPress)

I commented every thing i added

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.