@jingyi3027
there are many ways to do this. a simple way to adapt your current patch would be to use Trigger Value actors instead of your Toggle/Envelope Generator.
Connect the True output of your Comparator to a Trigger Value of 100 - connected to the Intensity of the Projector. Add a Trigger Value of zero connected in the same way to the False output.
Remember to Intialize the Intensity at zero, so that when you enter the scene, the visual effect is not shown until the Comparator recognises a value of 1 or higher.
I think the problem you are experiencing with the Envelope being triggered at the wrong time is because you are using the Toggle actor in an unconventional way.