Ok, just committed a pretty serious factoring of gHud. The subby_ and tank_ functions are gone (well, commented). They've been factored into class gHud, which has member functions to do its work. Some code got consolidated, other code got split up.
Here's what's lost:
Speed gauge doesn't rescale
Needle gauges weren't checked at all
Possibly some of the new config items we just made are disabled, I forget
Anyway, I'll give it another look when my brain isn't mush and see that I got everything.
Still left to do:
Factor the clock into its own method
Factor the map into the hud. Currently it's an independent per frame task that happens to be in gHud, should be integrated with gHud.
So if you want to bang on xml resource files describing the hud, as soon as the anonymous servers update, have at it.

Like I said, you should be safe to put the xml reading in the constructor of gHud. You should probably make a gCockpitParser class or something, you know, in new header and cpp files. I glanced over gParser and it's definitely not generic, but you might be able to get away with copying it and then modifying it to suit us for a cockpit resource description. When you have that, I'll get rid of *all* of the stupid hud configs in favor of a single one to give a path to a cockpit xml file. (Well, maybe not all of them, but you know what I mean anyway

)
Edit: And for once I checked that the dedicated server compiles.
