I find it a bit weird everyone can be evil and then innocent afterwards. It would've made more sense and would be more fun, if you had to remember the bad guys (who can pretend to be innocent), and remember the good guys.
Maybe you can even add a level in which you have to protect someone who'll occasionally turn blue and shoot the red ones. (He'll then have more live points than the others, so he can live trough one battle)