Implicit conversion from float -2.109375 to int loses precision