Numbers in AS2 misbehaving

I seem to be having a strange problem with a flash variable whilst creating an isometric game. The variable is created as follows…

[COLOR=DimGray]i is an array*
tiles,current_sub and x are all objects*[/COLOR]


add_group*['tiles']['current_sub']['x'] = 1;     
add_group*['tiles']['current_sub']['y'] = 2;
level.live_groups.push(add_group);

Then in a loop on the next frame…
[COLOR=DimGray]g,p are arrays
tiles,current_sub,x,y are objects
[/COLOR]


currentX = level.live_groups[g][p]['tiles']['current_sub']['x'];
currentY = level.live_groups[g][p]['tiles']['current_sub']['y'];
movetoY = level.live_groups[g][p]['tiles']['route'][nextmove]['0'];
movetoX = level.live_groups[g][p]['tiles']['route'][nextmove]['1'];

if(currentX > movetoX) 
{
    new_pos_X = currentX-0.1;
}
else if(currentX < movetoX)
{
    new_pos_X = currentX+0.1;
}
else
{
    new_pos_X = movetoX;
    in_X = true;
}
if(currentY > movetoY)
{
    new_pos_Y = currentY-0.1;
}
else if(currentY < movetoY)
{
    new_pos_Y = currentY+0.1;
}
else
{
    new_pos_Y = movetoY;
    in_Y = true;
}

level.live_groups[g][p]['tiles']['current_sub']['x'] = new_pos_X;
level.live_groups[g][p]['tiles']['current_sub']['y'] = new_pos_Y;

btw it moves to 1,0

On y this goes down 0.9, 0.8, 0.7, 0.6, 0.5, 0.4, 0.3, 0.2, 0.1, 1.38777878078145e-16

And I cant understand why it goes from
0.1 to 1.38777878078145e-16
when it should go to 0.

Thanks in advance for any reply :slight_smile: