amberija saidFF = 10*thisComp.frameDuration; if (time=inPoint && time<=inPoint+FF) {time-inPoint} else if (time=outPoint && time>=outPoint-FF) {thisLayer.source.duration+time-outPoint}
Don’t you mean…
FF = 10*thisComp.frameDuration; if (time>=inPoint && time<=inPoint+FF) {time-inPoint} else if (time<=outPoint && time>=outPoint-FF) {thisLayer.source.duration+(time-(outPoint-FF))}
…? You used an = instead of a >= . If you did want to use an ‘equals’ it would need to be a comparative equals, i.e. == . At the moment, you’re setting time to be inPoint and then comparing it to a different value. In the above, both of your if statements will evaluate to false and the expression will always return FF.
Also, shouldn’t the time to subtract from the layer source duration be the time past the outPoint- FF, not the time past the outPoint.
With my adjustment above the case where time >inPoint+FF and time <outPoint-FF isn’t really covered. (i.e. when not animating in or out). The expression will currently return the value FF. That’s probably a decent thing to return, but it’s probably good to make it explicit, with the addition of…
else FF;