Hmm I don't know if you can check if a waypoint teleport happened though an event. If you can it would be easy enough to create such a system. If not you'd probably have to place a trigger at every waypoint destination and check for players walking in there. To ensure that it doesn't happen when a player just walks through that area you'd have to store the last region it was in and whenever a player enters a new region you'd have to actualise the region variable after a short delay. Then you'd check if the player was in the same region as the waypoint if he was, he didn't teleport.

Once you have an event for the teleport just have the camera fade to black, store the current location of the group and teleport them to your encounter area. Once they're done there teleport them back to the stored location. (Make sure that the teleport from the encounter area to the waypoint doesn't count as a fast travel event.)