fixed "forbidden" vars, Math.round() all end positions
TODO: check Math.round(), because sometimes 0.49 instead of 0.5