GetPropertyChangedSignal ("Position") Not Working

Hello everyone, I have a very simple script that does not fire.

print("function")
player.Character.HumanoidRootPart:GetPropertyChangedSignal("Position"):Connect(function()
	print("Has to be here at least?")
end)

Function prints, but the “Has to be here at least?” doesn’t. It’s really weird, because I did not modify this script in any way in the past week, and when I load a previous version of the game, it works just fine. I even used a text comparing tool and the script was the exact same. Why is this happening?

2 Likes

Changed events for Physics-related properties like CFrame and Position don’t fire. If you want to detect changes in those properties, you’ll have to use a RunService event or a loop

One nuance of that rule is that Camera:GetPropertyChangedSignal("CFrame") will return an RBXScriptSignal object that’ll fire whenever the camera’s ‘CFrame’ property changes.

I learned of this when I recently looked into the default bubble chat scripts.

3 Likes

BasePart:GetPropertyChangedSignal(“CFrame”) works now.

(I’m just bumping this topic for future reference for others)

1 Like