Hi guys. I need a help for seperating multiple touch inputs for mobile. My first input for dragging some objects in game. When player moving some part with first input, joystick(movement) input interrupts with dragging and part starts tracking the new touch input. How can I isolate the dragging input from any other input? Thanks!
Do you have a current script that you can show?
I did something like this but I believe there is a better way to do this.
UserInputService.InputEnded:Connect(function(input, gameProcessed)
if input.UserInputType == Enum.UserInputType.Touch then
if input.Name == "Mobile" then
obj.Transparency = 1
tracking = false
end
end
end)
UserInputService.InputBegan:Connect(function(input, gameProcessedEvent)
if input.UserInputType == Enum.UserInputType.Touch then
if not tracking then
tracking = true
input.Name = "Mobile"
obj.Transparency = 0
input:GetPropertyChangedSignal("Position"):Connect(function()
local mouseUnitRay = workspace.CurrentCamera:ScreenPointToRay(input.Position.X, input.Position.Y)
local mouseRay = Ray.new(mouseUnitRay.Origin, mouseUnitRay.Direction * 500)
local target, hit = workspace:FindPartOnRay(mouseRay,mouse.TargetFilter)
obj.Position = Vector3.new(hit.X,0,hit.Z)
end)
end
end
end)
You could try makimg variable for that input only, then compare it everytime new input was processed.
What i meant was… Filter it, by comparing if current input matches on that input only.
--[[ if Input == CurrentInput then
-- some magic you had
]]--