Because computers are rubbish.
It's a rounding error. Once 1 has been thrown around the machine for a while there is a good chance it is actually 1.00000000000000001.
Never use "==x" where x is a number, it's not going to work except occasionally by accident. Use true and false instead.
set a waypoint condition to: finished
set the init of my player to: finished=false
set a trigger OnActivation to: finished=true
But that's just for explanation, go with Cheetah's answer.