They sometimes target those locations. Not always. The Fort Hood shooter was not stopped on an armed military base.
There are other examples of mass shootings occurring in locations where people are armed. The movie theater example, the guy was targeting that movie theater because it would be easier to get to with its policies but it could have been anywhere.
For that matter, schools are often gone after by students. In many cases the reasons are not clear but it is the same motivation for workplace violence.
Having an area potentially allow guns does not really fix much either. We know that from a fair number of examples. You are more likely to freeze up or shoot other people. Guys wanting to go out in a blaze of glory, as you put it, are likely not going to be detured by things like this.
We know for a fact they are not by the police, security guards and so on. Armed or not.
The point is that you can't throw out statements that no gun has stopped a mass shooting if there AREN'T guns around when mass shootings occur. Sure, they happen here and there at military bases, but most of the time they happen at locations where peoeple are unarmed and defenseless.