ContextActionServices only working once

Editing the position and image of the two ContextActionServices after the first one seem to have no effect. In this image below the 2 action buttons are stacked ontop of eachother at the default position without a set image. Which ever ContextActionServices is first is the only one that works.
image


		ContextActionService:BindAction(ACTION_ROTATECW, handleCW, true, Enum.KeyCode.R)
		ContextActionService:SetPosition(ACTION_ROTATECW, UDim2.new(-1,0,0,0))
		ContextActionService:SetImage(ACTION_ROTATECW, "rbxassetid://7563845301")
	
		ContextActionService:BindAction(ACTION_ROTATEACW, handleACW, true, Enum.KeyCode.T)
		ContextActionService:SetPosition(ACTION_ROTATEACW, UDim2.new(-.5,0,0,0))
		ContextActionService:SetImage(ACTION_ROTATEACW, "rbxassetid://7632413467")
		
		ContextActionService:BindAction(ACTION_INCREMENT, handleIncrement, false, Enum.KeyCode.Z)

		ContextActionService:BindAction(ACTION_INCREMENTROT, handleIncrementRot, true, Enum.KeyCode.X)
		ContextActionService:SetPosition(ACTION_INCREMENTROT, UDim2.new(0,0,0,0))
		ContextActionService:SetImage(ACTION_INCREMENTROT, "rbxassetid://7563863633")

result if I comment out the first ContextActionService for ACTION_ROTATECW

image

I assume it’s not giving any error, right?

You could try to add a delay in between the bindings using wait()

No errors and I’ve tried putting a wait(1) between them. I see the buttons appear one after the other but I get the same results

Is it possible to have the values of the variables you used?

The weirdest thing is that if I take it out of the MouseButton1Click event the first and second ContextActionServices load properly and the third one load two times. So then it looks like this (notice how the right button is brighter? because there are multiple there. While the only contextactionservices called are all that I’ve posted and one of them is set to false for mobile)
image

local ACTION_ROTATECW = "RotateCW"
local ACTION_ROTATEACW = "RotateACW"
local ACTION_INCREMENT = "Increment"
local ACTION_INCREMENTROT = "IncrementRot"
invenButton.MouseButton1Click:Connect(function()
	if holder.Visible == false then
		invenButton.Image = "rbxassetid://7163674171"
		holder.Position = UDim2.new(1,-300,0,00)
		arrow.Rotation = 0
		holder.Visible = true
		main.DeleteButton.Visible = true
		--
		wait(1)
		ContextActionService:BindAction(ACTION_ROTATECW, handleCW, true, Enum.KeyCode.R)
		ContextActionService:SetPosition(ACTION_ROTATECW, UDim2.new(-1,0,0,0))
		ContextActionService:SetImage(ACTION_ROTATECW, "rbxassetid://7563845301")
		print("R")
		wait(1)
		ContextActionService:BindAction(ACTION_ROTATEACW, handleACW, true, Enum.KeyCode.T)
		ContextActionService:SetPosition(ACTION_ROTATEACW, UDim2.new(-.5,0,0,0))
		ContextActionService:SetImage(ACTION_ROTATEACW, "rbxassetid://7632413467")
		print("T")
		wait(1)
		ContextActionService:BindAction(ACTION_INCREMENT, handleIncrement, false, Enum.KeyCode.Z)
		print("Z")
		wait(1)
		ContextActionService:BindAction(ACTION_INCREMENTROT, handleIncrementRot, true, Enum.KeyCode.X)
		ContextActionService:SetPosition(ACTION_INCREMENTROT, UDim2.new(0,0,0,0))
		ContextActionService:SetImage(ACTION_INCREMENTROT, "rbxassetid://7563863633")
		print("X")
		if invenLoaded == false then
			invenLoaded = true
			loadFurnitureInven()
		end

Apparently ContextActionService has a limit of 7 buttons. Anything passed 7 just doesn’t work but I guess still shows up on the screen as a button. I’m not sure why there is this limit and something this crucial should really be included in the api page and would of saved me some hours of thinking why my code is broken.