Vlad
Vlad

Reputation: 1

Roblox Studio Error: Expected ')' (to close '(' at column 18), got '='

I am trying to make a door move to a new position using the tween service. The problem is that I keep getting the error, Expected ')' (to close '(' at column 18), got '=', and I don't know why. It highlights the "=" next to "Position" on line 21 in red.

local service = game:GetService("TweenService")
local cupboard1 = game.Workspace.Door1
local cupboard2 = game.Workspace.Door2
local cupboard3 = game.Workspace.Door3
local cupboard4 = game.Workspace.Door4
local handle1 = game.Workspace.Handle1
local handle2 = game.Workspace.Handle2
local handle3 = game.Workspace.Handle3
local handle4 = game.Workspace.Handle4

local info = TweenInfo.new(2)

if state == true then
    game.Workspace.Handle1.ClickDetector.MouseClick:connect(function()

        local state = false

        local change = (Position = Vector3.new(61.831, 4.997, 68.415)) -- door
        local change1 = (Position = Vector3.new(63.401, 5.416, 67.89)) -- handle
        local change2 = (Orientation = Vector3.new(0, 90, 0)) -- handle
        local change3 = (Orientation = Vector3.new(0, 90, 0)) -- door

        local tween = service:Create(cupboard1, info, change)
        tween:Play()
        local tween1 = service:Create(handle1, info, change1)
        tween1:Play()
        local tween2 = service:Create(handle1, info, change2)
        tween2:Play()
        local tween3 = service:Create(cupboard1, info, change3)
        tween3:Play()
    end)
end

if state == false then
    game.Workspace.Handle1.ClickDetector.MouseClick:connect(function()

        local state = true

        local change = (Position = Vector3.new(58.112, 4.997, 66.588)) -- door
        local change1 = (Position = Vector3.new(56.631, 5.416, 65.849)) -- handle
        local change2 = (Orientation = Vector3.new(0, -135, 0)) -- handle
        local change3 = (Orientation = Vector3.new(0, -135, 0)) -- door

        local tween = service:Create(cupboard1, info, change)
        tween:Play()
        local tween1 = service:Create(handle1, info, change1)
        tween1:Play()
        local tween2 = service:Create(handle1, info, change2)
        tween2:Play()
        local tween3 = service:Create(cupboard1, info, change3)
        tween3:Play()
    end)
end

I've tried changing "=" to "==" but it gives me a warning saying Position and Orientation isn't defined.

Upvotes: 0

Views: 1335

Answers (1)

Kylaaa
Kylaaa

Reputation: 7203

You are trying to pass a table of changes into your tween. But when you use parenthesis, it is trying to evaluate the line, and this isn't valid lua.

Try changing your parentheses to curly brackets. This will properly assign the changes as a table, which you can pass to your tweens.

local change = { Position = Vector3.new(58.112, 4.997, 66.588)} -- door

local tween = service:Create(cupboard1, info, change)

Upvotes: 2

Related Questions