I have a script I'm trying to write where, upon clicking an ImageScript the script is a child of, the image button will move a frame under the same screen GUI up on to the screen/down off the screen. However whenever I run it the goal position stays the same, even though I changed the value. Here's the script:
local ShopGui = script.Parent.Parent local Shop = ShopGui.Shop local Players = game.Players local Teams = game.Teams local START_POSITION = UDim2.new(0.2, 0, 1.2, 0) local GOAL_POSITION = UDim2.new(0.2, 0, 0.2, 0) local guiObject = Shop local function callback(state) if state == Enum.TweenStatus.Completed then elseif state == Enum.TweenStatus.Canceled then end end local endpos = Instance.new("BoolValue") function onMouseClick() if Shop.Visible == true then print("turning off") local START_POSITION = UDim2.new(0.2, 0, 0.2, 0) local GOAL_POSITION = UDim2.new(0.2, 0, 1.2, 0) endpos.Value = false else local START_POSITION = UDim2.new(0.2, 0, 1.2, 0) local GOAL_POSITION = UDim2.new(0.2, 0, 0.2, 0) endpos.Value = true end print (GOAL_POSITION) Shop.Visible = true Shop.Active = true guiObject.Position = START_POSITION local willPlay = guiObject:TweenPosition( GOAL_POSITION, -- Final position the tween should reach Enum.EasingDirection.In, -- Direction of the easing Enum.EasingStyle.Sine, -- Kind of easing to apply 0.5, -- Duration of the tween in seconds true, -- Whether in-progress tweens are interrupted callback -- Function to be callled when on completion/cancelation ) wait(2) Shop.Visible = endpos.Value Shop.Active = endpos.Value print (endpos.Value) end script.Parent.MouseButton1Down:connect(onMouseClick)
Really sorry, I'm sure this is just a rookie mistake. Thanks for any feedback!