I made text move with TweenService.
local TweenService = game:GetService("TweenService")
local label = script.Parent -- Assuming the script is a child of the TextLabel
-- Set the initial position of the TextLabel
label.Position = UDim2.new(0, 700, 0, 835)
-- Function to move the label left and right
local function moveLabel()
-- Define the initial and target positions
local startPos = UDim2.new(0, 700, 0, 835)
local endPos = UDim2.new(0, 690, 0, 835)
-- Create tweens for moving to the end position and back to the start position
local tweenInfo1 = TweenInfo.new(0.25, Enum.EasingStyle.Linear, Enum.EasingDirection.InOut)
local tweenInfo2 = TweenInfo.new(0.75, Enum.EasingStyle.Linear, Enum.EasingDirection.InOut)
local tweenTo = TweenService:Create(label, tweenInfo1, {Position = endPos})
local tweenBack = TweenService:Create(label, tweenInfo2, {Position = startPos})
-- Connect the Completed event of the first tween to play the second tween
tweenTo.Completed:Connect(function()
tweenBack:Play()
end)
-- Connect the Completed event of the second tween to restart the animation
tweenBack.Completed:Connect(function()
label.Position = startPos
moveLabel()
end)
-- Play the first tween to start the animation
tweenTo:Play()
end
-- Start the animation
moveLabel()
But when screen resolution changes, it looks broken. It goes into an off position if it’s not 1920x1080