It seems to me like you're doing:
condition ? if true : if false : if false.
(LibraryExists(LIBRARY_ALPHA, LibType_Library) && zp_class_alpha_get(player))
? "CLASS_ALPHA"
: "CLASS_ZOMBIE"
: (LibraryExists(LIBRARY_SURVIVOR, LibType_Library) && zp_class_survivor_get(player))
You can only have one if false. But then again it might be just one if false and that last one is a part of the wider conditions.
http://www.amxmodx.org/api/string/formatex
Is the full code yours? It complies fine for me.
Edit: I added your code to the full plugin just to see if it complies, and it does compile, though I had to change the names to nemisis as I dont have the library for the rest of them.