So I don’t know if this is Roblox’s bug or I am doing something wrong but whenever I change ImageTransparency to 0.8 and print it in the output it says 0.80000001192093 instead of 0.8 the video below explains my issue better
This is simply just an outcome of floating point errors, nothing wrong on your hand, it should be the same number as 0.8 but just barley slightly off by nanometers (joke but you get the point).
When you index the ImageTransparency property you can round to the 3rd decimal place which removes the artifact created from the floating point imprecision and set your reference to the ImageTransparency to be that, so when comparing there is no issues due to the floating point precision.
math.floor(ImageTransparency * 10^3) / 10^3
This works by shifting the ImageTransparency 3 places and so the remaining decimal portion becomes cut off. Then it divides the returned integer by the old shift to return it back to the approximate number.
Kind of like this: 10.1526 → 1015.26 → 1015 → 10.15
Alternatively you could try setting the ImageTransparency to .8 again.