Hi,
I've been experimenting recently with a cutscene system. I use an AnimationPlayer for cutscenes. When the player enters an area, player input is disabled and a non-loopable animation for a given AnimationPlayer node is played. The animation can use multiple tracks to animate scene objects properties, the camera, play other animations and call script functions for things like starting a dialogue (I have functions which start a modal dialogue which pause a cutscene which is resumed after the dialogue is finished, or a non-modal one which runs along with the cutscene).
Take a look at this screenshot of an example animation I use.
