Implicit conversion from float -28.5 to int loses precision