right, I dag out the structures which correspond to the buildables and classes. The FIRST in the structure is number one, and so on.
buildableAttributes_t bg_buildableList[ ] =
{
{
BA_A_SPAWN, //int buildNum;
"eggpod", //char *buildName;
"Egg", //char *humanName;
"team_alien_spawn", //char *entityName;
},
{
BA_A_BARRICADE, //int buildNum;
"barricade", //char *buildName;
"Barricade", //char *humanName;
"team_alien_barricade",//char *entityName;
},
{
BA_A_BOOSTER, //int buildNum;
"booster", //char *buildName;
"Booster", //char *humanName;
"team_alien_booster", //char *entityName;
},
{
BA_A_ACIDTUBE, //int buildNum;
"acid_tube", //char *buildName;
"Acid Tube", //char *humanName;
"team_alien_acid_tube",//char *entityName;
},
{
BA_A_HIVE, //int buildNum;
"hive", //char *buildName;
"Hive", //char *humanName;
"team_alien_hive", //char *entityName;
},
{
BA_A_TRAPPER, //int buildNum;
"trapper", //char *buildName;
"Trapper", //char *humanName;
"team_alien_trapper", //char *entityName;
},
{
BA_A_OVERMIND, //int buildNum;
"overmind", //char *buildName;
"Overmind", //char *humanName;
"team_alien_overmind", //char *entityName;
},
{
BA_A_HOVEL, //int buildNum;
"hovel", //char *buildName;
"Hovel", //char *humanName;
"team_alien_hovel", //char *entityName;
},
{
BA_H_SPAWN, //int buildNum;
"telenode", //char *buildName;
"Telenode", //char *humanName;
"team_human_spawn", //char *entityName;
},
{
BA_H_MEDISTAT, //int buildNum;
"medistat", //char *buildName;
"Medistation", //char *humanName;
"team_human_medistat", //char *entityName;
},
{
BA_H_MGTURRET, //int buildNum;
"mgturret", //char *buildName;
"Machinegun Turret", //char *humanName;
"team_human_mgturret", //char *entityName;
},
{
BA_H_TESLAGEN, //int buildNum;
"tesla", //char *buildName;
"Tesla Generator", //char *humanName;
"team_human_tesla", //char *entityName;
},
{
BA_H_DCC, //int buildNum;
"dcc", //char *buildName;
"Defence Computer", //char *humanName;
"team_human_dcc", //char *entityName;
},
{
BA_H_ARMOURY, //int buildNum;
"arm", //char *buildName;
"Armoury", //char *humanName;
"team_human_armoury", //char *entityName;
},
{
BA_H_REACTOR, //int buildNum;
"reactor", //char *buildName;
"Reactor", //char *humanName;
"team_human_reactor", //char *entityName;
{ "models/buildables/reactor/reactor.md3", 0, 0, 0 },
1.0f, //float modelScale;
},
{
BA_H_REPEATER, //int buildNum;
"repeater", //char *buildName;
"Repeater", //char *humanName;
"team_human_repeater", //char *entityName;
}
};
and alien classes
classAttributes_t bg_classList[ ] =
{
{
PCL_NONE, //int classnum;
"spectator", //char *className;
"Spectator", //char *humanName;
},
{
PCL_ALIEN_BUILDER0, //int classnum;
"builder", //char *className;
"Builder", //char *humanName;
"builder", //char *modelname;
},
{
PCL_ALIEN_BUILDER0_UPG, //int classnum;
"builderupg", //char *classname;
"Advanced Builder", //char *humanname;
"builder", //char *modelname;
1.0f, //float modelScale;
},
{
PCL_ALIEN_LEVEL0, //int classnum;
"level0", //char *classname;
"Soldier", //char *humanname;
"jumper", //char *modelname;
0.2f, //float modelScale;
},
{
PCL_ALIEN_LEVEL1, //int classnum;
"level1", //char *classname;
"Hydra", //char *humanname;
"spitter", //char *modelname;
0.6f, //float modelScale;
},
{
PCL_ALIEN_LEVEL1_UPG, //int classnum;
"level1upg", //char *classname;
"Hydra Upgrade", //char *humanname;
"spitter", //char *modelname;
0.7f, //float modelScale;
"blue", //char *skinname;
},
{
PCL_ALIEN_LEVEL2, //int classnum;
"level2", //char *classname;
"Chimera", //char *humanname;
"tarantula", //char *modelname;
0.75f, //float modelScale;
"default", //char *skinname;
1.0f, //float shadowScale;
},
{
PCL_ALIEN_LEVEL2_UPG, //int classnum;
"level2upg", //char *classname;
"Chimera Upgrade", //char *humanname;
"tarantula", //char *modelname;
0.9f, //float modelScale;
"red", //char *skinname;
},
{
PCL_ALIEN_LEVEL3, //int classnum;
"level3", //char *classname;
"Dragoon", //char *humanname;
"prowl", //char *modelname;
1.0f, //float modelScale;
"default", //char *skinname;
1.0f, //float shadowScale;
},
{
PCL_ALIEN_LEVEL3_UPG, //int classnum;
"level3upg", //char *classname;
"Dragoon Upgrade", //char *humanname;
"prowl", //char *modelname;
1.0f, //float modelScale;
"default", //char *skinname;
},
{
PCL_ALIEN_LEVEL4, //int classnum;
"level4", //char *classname;
"Big Mofo", //char *humanname;
"mofo", //char *modelname;
1.0f, //float modelScale;
"default", //char *skinname;
},
{
PCL_HUMAN, //int classnum;
"human_base", //char *classname;
"Human", //char *humanname;
"sarge", //char *modelname;
1.0f, //float modelScale;
},
{
PCL_HUMAN_BSUIT, //int classnum;
"human_bsuit", //char *classname;
"bsuit", //char *humanname;
"keel", //char *modelname;
1.0f, //float modelScale;
"default", //char *skinname;
},
};
So this means, to disable eggs for aliens, you have to have disabledbuildables : value = spectator. since spectator is the first class in class structure, and eggpod is the first buildable in the buildable structure.
As you can see you actually cannot disable some of the buildables since there arent enough classes.
and again. Lakitu qvm since 5.4 (iirc) and main svn has this issue fixed, so you actually can use mgturret to disable turrets, and dont have to dig out corresponding alien class that will disable that buildable.