One thing that will really help you down the road is to create one player as a container object and add all of their health/score/UI info to the container as well. It will simplify things greatly down the road for you.
Then each player will have different different animations based on which player they are actually playing eg: if you choose the red guy, you'd play the red guy set of animations. All animations would be stored in one player object.
Then as you guessed, assign each player a variable that would equal which player they were on the keyboard/gamepad etc.
Only the buttons associated with the particular player would trigger the appropriate player in the game.
now if you want to get a bit fancy and save yourself programming duplicate version of the same code over and over you can use a function to do all the work for you.
create a function and call it "punch" lets say.
When you Call the function, you would tell it which player send the command,
eg: call function "punch" (1) *<--player's controller name
This number will be used as a parameter for the function to tell construct which player should initiate the punch animation
On function "punch" (parameter)
if function.param(0) = 1 then
-> player 1 play animation punch
if function.param(0) = 2 then
-> player 2 play animation punch
etc.
its kinda complicated, so lemme know if you have any questions
use justifun to notify me that there's a reply