IntValue
An IntValue stores a single signed 64-bit integer. The highest allowed value is 2^63-1 or around 9.2 quintillion (9.2^18); attempting to store larger numbers will cause integer overflow. The lowest allowed value is -2^63 or about -9.2 quintillion. Practically, however, working with integers larger than 2^53 (9.0^15) will cause loss of precision since Luau uses double-precision floating-point to store numbers.
Note that it's possible to store values between 2^53 and 2^63-1 via the Properties window since it uses strings to pass data to the engine, but manipulating large values via Luau scripts will result in loss of precision and rounding as mentioned above.
The main advantage of using IntValue lies in its rounding of values to the nearest integer, with halfway cases rounded away from 0. For values outside of this range, use a NumberValue instead. Like all ValueBase objects, this single value is stored in the Value property.
The Changed event for this (and other objects like it) will run with the new value being stored in the object, instead of a string representing the property being changed.
Summary
Events
Fires whenever the IntValue.Value is changed.
Properties
Methods
Events
Changed
This event fires whenever the IntValue.Value is changed. It will run with the new value being stored in the argument object, instead of a string representing the property being changed.
Equivalent change events exist for similar objects such as NumberValue and StringValue, depending on what object type best suits the need.
Parameters
The new value after the change.
Code Samples
local value = Instance.new("IntValue")
value.Parent = workspace
local function onValueChanged(newValue)
print(newValue)
end
value.Changed:Connect(onValueChanged)
value.Value = 20