Hey Apollo87!
That is most likely going to take a lot of time and code to implement so it would have to be considered custom work.
I don’t know of any plugins that I can recommend for this. It sounds pretty specific so I’m not sure if there would be something out there for it.
Regards,
Elliott