I’m trying to get a position in 3D space for my plugin, which would then become the new position of a part. I managed to do a preview fine, but
print("Clicked!") never actually runs, which tells me that for some reason Button1Down is never detected.
I tried putting in the wait(0.1) as a way of not mixing up the clicking of an UI element from my plugin interface with the actual confirmation of position.
local Mouse = plugin:GetMouse() ActiveSeeking = false trackCreatorGui.Center.Create.MouseButton1Click:Connect(function() local newTrack = newTrackInstance() wait(0.1) coroutine.wrap(beginSeekingPos)(newTrack) print("test") -- <THIS IS THE BIT THAT DOESN'T WORK> Mouse.Button1Down:Connect(function() print("Clicked!") ActiveSeekingPos = false print(Mouse.Hit.p) createNode(Vector3.new(gridRound(Mouse.Hit.p.X, 1), Mouse.Hit.p.Y + 0.5, gridRound(Mouse.Hit.p.Z, 1)), newTrack) end) -- <THIS IS THE BIT THAT DOESN'T WORK/> end)
The beginSeekingPos function, which is just visual and shouldn't affect the code but I included it in anyway
local function beginSeekingPos(trackInstance) ActiveSeekingPos = true local previewItem = Instance.new("Part") previewItem.Name = "NodePreview" decorateNode(previewItem, Color3.new(0.6,0.6,0.6)) Mouse.TargetFilter = previewItem while ActiveSeekingPos == true do previewItem.Position = Vector3.new(gridRound(Mouse.Hit.p.X, 1), Mouse.Hit.p.Y + previewItem.Size.Y/2, gridRound(Mouse.Hit.p.Z, 1)) wait() end end
Any help here? Thanks in advance!