Thanks! Congrats on your perfect score! Yeah, the final boss' cheapness is totally on me. Here's what's going on under the hood, if you're interested:
The enemies all use the same Gunman AI with variables changed for health, damage, aim variance, stagger chance, et cetera, but they also have a couple that determine how they fight. In combat, they first do a random roll to see if they do a single shot or a burst shot, and then they roll another one to determine if they move after they shoot or just stand still and wait. (These are 2 separate variables but they ended up being set the same for each different enemy.) The standard gunman has a 25% chance to do a 3-round burst fire and a 25% chance to move afterwards. McCobb is basically a powered up guard with a 50% chance to do a 3-round burst fire and a 50% chance to move. Lizaro always does a 5-round burst fire and always moves. Zoroaster always fires a single shot and never moves. But because he never moves, he actually attacks faster than any of the others, and he also has an aim variance of 0.0 so he never misses. As long as he has line of sight, he will hit you for 20-30 damage every half second. And I also forgot to implement an attack delay variable, so he was supposed to only attack every 2 seconds or so. I didn't have too much trouble with him, but that's because I knew what to do. You either have to duck in and out of cover or else drip-feed yourself like 5 health vials if you face him out in the open. He definitely needs some adjusting, maybe just reduce his damage, his accuracy, and maybe his health.
Thanks for the feedback. I don't currently plan on making more levels or anything for this but I do want to fix it up a bit based on everybody's suggestions. Glad you enjoyed!