In my opinion it is a lot easier to have a script for each moving object. While I am not 100% sure that it is smarter to have 1 master control script vs a bunch of scripts that handle each of the objects movements I can say that the master control script will only be running 1 update loop vs x number of loops but the 1 loop might be bigger if it’s constantly updating other objects so it might not be optimal either. My advice, make it easy for you and adjust it if you need to. No need to over complicate things if you don’t have to. I would suggest to you object pooling vs instantiate/destroying game objects.