Thanks, I've tried so many different ways, my buddy even told me how he would do it in C and I still can't work it out. He was saying you'd made one player class and then give it a players 1-4 variable, then have the player await input and have it filter out the signals coming in and accept only the assigned controler.
I was trying to duplicate all these different combinations of controllers and players but he said that I should be able to do it only writing one bit of code for the movement and one bit of code for each controller, not separate code for every single combination.