Does it detect if say, an BoolInstance.value = true, when it was already true in the first place? Basically, does it have like a filter to detect if an instance changed, but it didn’t actually change to a new int or vector3 or whatever?
I don’t know what you mean, maybe the last part caught me up. Instance.Changed event is fired when a property [like the position of a part] is changed. I’m a little confused about the last bit, Changed is exclusive to the Instance data type.
Are you referring to the parameter of the .Changed
Event? That would happen to return the “string” value of what property specified changed
But objects such as Value Objects (BoolValue, BrickColorValue, etc) instead return back the new value of the Value Object
You can filter which property was changed using a parameter like (if thats what youre asking for):
script.Parent.Value.Changed:Connect(function(property)
print(property) -- Prints the property changed
end)
No, if it’s the same then it wouldn’t detect that. It would only detect it if the value changed to something different. (i.e false → true)
You can’t detect when something is set but not changed with Instances sadly, at least as far as I know.
Also, most people stay away from using .Changed
since there’s :GetPropertyChangedSignal()
now.
No, the .Changed event does not fire if it’s set to the same value as before as the value isn’t really “updated”. Though you can always use a function/remote event/bindable event instead of the .Changed event so that you can see when the value is set to the same value.
Holy crap, thanks for actually answering the question.