I’m on a relatively blank game with a small chunk of terrain. Don’t think lag has anything to do with it. If anything the effect would be delayed, not stopped from happening.
Tried it even though I already explained multiple times this was the original approach I took. click is only printing once.
Alright, maybe move the line the code that changes IS_CREDIT_SHOP_OPEN to the first line after the if statement, e.g.
if IS_CREDIT_SHOP_OPEN == false then
IS_CREDIT_SHOP_OPEN = true
This is going to be a little weird, but can you replace the function with
while wait(5) do
print("click")
print(IS_CREDIT_SHOP_OPEN)
if IS_CREDIT_SHOP_OPEN == false then
BuyCreditsContainer:TweenPosition(UDim2.new(0.163, 0,0.929, 0), Enum.EasingDirection.Out, Enum.EasingStyle.Quint, .7, true)
wait(0.7)
IS_CREDIT_SHOP_OPEN = true
print("is open")
elseif IS_CREDIT_SHOP_OPEN == true then
print("should be closing")
BuyCreditsContainer:TweenPosition(UDim2.new(-0.26, 0,0.929, 0), Enum.EasingDirection.InOut, Enum.EasingStyle.Quint, .7, true)
wait(0.7)
IS_CREDIT_SHOP_OPEN = false
end
end
It’s opening and closing. Kind of confused about this lol.
It is better to use an event instead of a loop.
By the way, I would recommend reading this about while wait() do
.
I was just seeing if it was the code inside that was breaking it or something with the button and event. Read the etire convo to figure out where we’re at
That at least rules out the possibility of TweenPosition being an issue. Not that I ever thought it was anyways. Progress I suppose.
Someone just gave me the idea of commenting everything out and leaving the print("click) in, and it does look like the event is getting fired multiple times so there’s something wrong with my logic that’s preventing it from firing multiple times.
Yeah, so I don’t think this is an error with the function, I think you will need to check the client side explorer and all. Class just resumed so I must leave. If it’s still an issue, add me on discord jrdonat#0262 and i’ll try and fix it in person
it looks ;like the “elseif” is incorrectly indented? is it just the Website because when i copy/paste your code into studio its not incorrectly indented? if it is the actual indention of the code then thats the issue probably
The position of the indentation doesn’t affect the conditional statement.
just try this:
CreditsContainer.TextButton.Activated:Connect(function()
if IS_CREDIT_SHOP_OPEN then
BuyCreditsContainer:TweenPosition(UDim2.new(-0.26, 0,0.929, 0), Enum.EasingDirection.InOut, Enum.EasingStyle.Quint, .7, true)
IS_CREDIT_SHOP_OPEN = false
else
BuyCreditsContainer:TweenPosition(UDim2.new(0.163, 0,0.929, 0), Enum.EasingDirection.Out, Enum.EasingStyle.Quint, .7, true)
IS_CREDIT_SHOP_OPEN = true
end
end)
My original test with this involved me using else instead of elseif. It didn’t work.
why are you using HeatBeat:Wait() ? isnt that pretty unneccesary? also can you upload your entire code?
I feel like I’ve said “I’ve already said this” and “again” like 40 times in this post so I’m just going to start quoting responses I have previously provided.
alright if it doesnt make a dfifference then you should remove it because it will just reduce efficieny, also can you still upload all your code? mb mb i see it
i took the liberty of recreating everything (respectively with the information ive been given)
the red GUI is the BuyCreditsContainer
the white frame is the CreditsContainer
and the text button is the text button
Workspace:
code:
Click0:
Click1: (dashes off screen)
click2: comes back ect ect. is there anything else happening to the GUI and whats the workspace structure
did the print statments work correctly when it wasnt working for you?
I don’t think it has anything to do with the container being tweened. I removed the tween and just tried manually changing the position, it only changes once and that’s it:
CreditsContainer.TextButton.Activated:Connect(function()
print"click"
print(IS_CREDIT_SHOP_OPEN)
if IS_CREDIT_SHOP_OPEN == false then
IS_CREDIT_SHOP_OPEN = true
BuyCreditsContainer.Position = UDim2.new(0.163, 0,0.929, 0)
--BuyCreditsContainer:TweenPosition(UDim2.new(0.163, 0,0.929, 0), Enum.EasingDirection.Out, Enum.EasingStyle.Quint, .7, true)
else -- this else condition never runs
IS_CREDIT_SHOP_OPEN = false
print(IS_CREDIT_SHOP_OPEN)
print"should be closing"
BuyCreditsContainer.Position = UDim2.new(-0.26, 0,0.929, 0)
--BuyCreditsContainer:TweenPosition(UDim2.new(-0.26, 0,0.929, 0), Enum.EasingDirection.InOut, Enum.EasingStyle.Quint, .7, true)
end
end)