diff --git a/assets/ui/menudef.h b/assets/ui/menudef.h index 0a6ef5c93..7f3e8d11c 100644 --- a/assets/ui/menudef.h +++ b/assets/ui/menudef.h @@ -195,7 +195,6 @@ enum CG_LAGOMETER, CG_SPEEDOMETER, CG_PLAYER_CROSSHAIRNAMES, - CG_TEAM_STATUS, CG_STAGE_REPORT_TEXT, CG_ALIENS_SCORE_LABEL, CG_HUMANS_SCORE_LABEL, diff --git a/assets/ui/teamscore.menu b/assets/ui/teamscore.menu index ff253e680..6e71ccaf2 100644 --- a/assets/ui/teamscore.menu +++ b/assets/ui/teamscore.menu @@ -27,23 +27,6 @@ focusColor .75 .75 .75 1 // Avoid focus style WINDOW_STYLE_EMPTY - - // TEAM STATUS // - - itemDef - { - name teamStatus - textalign ALIGN_CENTER - textvalign VALIGN_CENTER - textscale 0.38 - rect 0 (-BAR_H - SPACE) W BAR_H - forecolor 1 1 1 1 - decoration - visible MENU_TRUE - textstyle ITEM_TEXTSTYLE_SHADOWED - ownerdraw CG_TEAM_STATUS - } - // TEAM NAME // itemDef diff --git a/src/cgame/cg_draw.c b/src/cgame/cg_draw.c index ed4c4dd07..c34098750 100644 --- a/src/cgame/cg_draw.c +++ b/src/cgame/cg_draw.c @@ -1495,68 +1495,6 @@ static void CG_DrawTeamLabel( rectDef_t *rect, team_t team, float text_x, float UI_Text_Paint( text_x + tx, text_y + ty, scale, color, s, 0, 0, textStyle ); } -/* -================== -CG_DrawTeamStatus -================== -*/ -static void CG_DrawTeamStatus( rectDef_t *rect, float text_x, float text_y, - vec4_t color, float scale, int textalign, int textvalign, int textStyle ) -{ - char s[ MAX_TOKEN_CHARS ]; - float tx, ty; - - if( cg.intermissionStarted ) - return; - - if( cg.snap->ps.stats[ STAT_TEAM ] == TEAM_NONE ) - return; - - if( cg.snap->ps.stats[ STAT_TEAM ] == TEAM_ALIENS ) - { - alienStates_t *alienStates = &cgs.alienStates; - int fullHealth = BG_Buildable(BA_A_OVERMIND)->health; - Com_sprintf( s, MAX_TOKEN_CHARS, "^7%s[overmind](%s%i/%i^7) [egg](%s%i^7) [granger](%s%i^7) [booster](%s%i^7)", - alienStates->omBuilding ? "[upgrade]" : (alienStates->omHealth ? "" : "[!]"), - ((alienStates->omHealth > fullHealth / 2) ? "^2" : ((alienStates->omHealth > fullHealth / 4) ? "^3" : "^1" )), - alienStates->omHealth, - fullHealth, - !alienStates->spawns ? "^1" : "^2", - alienStates->spawns, - !alienStates->builders ? ((!alienStates->spawns || !alienStates->omHealth) ? "^1" : "^0") : "^2", - alienStates->builders, - !alienStates->boosters ? (BG_BuildableAllowedInStage(BA_A_BOOSTER, cgs.alienStage) ? "^1" : "^0") : "^2", - alienStates->boosters - ); - } - else if( cg.snap->ps.stats[ STAT_TEAM ] == TEAM_HUMANS ) - { - humanStates_t *humanStates = &cgs.humanStates; - int fullHealth = BG_Buildable(BA_H_REACTOR)->health; - Com_sprintf( s, MAX_TOKEN_CHARS, "^7%s[reactor](%s%i/%i^7) [telenode](%s%i^7) [ckit](%s%i^7) [armoury](%s%i^7) [medstat](%s%i^7) [defcomp](%s%i^7)", - (humanStates->rcBuilding ? "[upgrade]" : (humanStates->rcHealth ? "" : "[!]")), - ((humanStates->rcHealth > fullHealth / 2) ? "^2" : ((humanStates->rcHealth > fullHealth / 4) ? "^3" : "^1" )), - humanStates->rcHealth, - fullHealth, - !humanStates->spawns ? "^1" : "^2", - humanStates->spawns, - !humanStates->builders ? ((!humanStates->spawns || !humanStates->rcHealth) ? "^1" : "^0") : "^2", - humanStates->builders, - !humanStates->armourys ? "^1" : "^2", - humanStates->armourys, - !humanStates->medicals ? "^1" : "^2", - humanStates->medicals, - !humanStates->computers ? (BG_BuildableAllowedInStage(BA_H_DCC, cgs.humanStage) ? "^1" : "^0") : "^2", - humanStates->computers - ); - } - - CG_AlignText( rect, s, scale, 0.0f, 0.0f, textalign, textvalign, &tx, &ty ); - - UI_Text_Paint( text_x + tx, text_y + ty, scale, color, s, 0, 0, textStyle ); -} - - /* ================== CG_DrawStageReport @@ -3033,9 +2971,6 @@ void CG_OwnerDraw( float x, float y, float w, float h, float text_x, case CG_PLAYER_CROSSHAIR: CG_DrawCrosshair( &rect, foreColor ); break; - case CG_TEAM_STATUS: - CG_DrawTeamStatus( &rect, text_x, text_y, foreColor, scale, textalign, textvalign, textStyle ); - break; case CG_STAGE_REPORT_TEXT: CG_DrawStageReport( &rect, text_x, text_y, foreColor, scale, textalign, textvalign, textStyle ); break; diff --git a/src/cgame/cg_local.h b/src/cgame/cg_local.h index e38b018ea..349245e4e 100644 --- a/src/cgame/cg_local.h +++ b/src/cgame/cg_local.h @@ -1392,9 +1392,6 @@ typedef struct int alienNextStageThreshold; int humanNextStageThreshold; - alienStates_t alienStates; - humanStates_t humanStates; - // // locally derived information from gamestate // diff --git a/src/cgame/cg_main.c b/src/cgame/cg_main.c index 9e250401b..a7c3f92d7 100644 --- a/src/cgame/cg_main.c +++ b/src/cgame/cg_main.c @@ -467,8 +467,6 @@ static void CG_SetUIVars( void ) char carriageCvar[ MAX_TOKEN_CHARS ]; int credit; playerState_t *ps; - alienStates_t *alienStates = &cgs.alienStates; - humanStates_t *humanStates = &cgs.humanStates; if( !cg.snap ) return; @@ -496,12 +494,6 @@ static void CG_SetUIVars( void ) trap_Cvar_Set( "ui_ammoFull", va( "%d", !CG_DoNeedAmmo(ps))); trap_Cvar_Set( "ui_stages", va( "%d %d", cgs.alienStage, cgs.humanStage ) ); - - trap_Cvar_Set( "ui_alienStates", va( "%d %d %d %d %d", alienStates->omBuilding, alienStates->omHealth, - alienStates->spawns, alienStates->builders, alienStates->boosters ) ); - - trap_Cvar_Set( "ui_humanStates", va( "%d %d %d %d %d %d %d", humanStates->rcBuilding, humanStates->rcHealth, - humanStates->spawns, humanStates->builders, humanStates->armourys, humanStates->medicals, humanStates->computers ) ); } /* diff --git a/src/cgame/cg_servercmds.c b/src/cgame/cg_servercmds.c index 3c98e0a43..2bc9abc13 100644 --- a/src/cgame/cg_servercmds.c +++ b/src/cgame/cg_servercmds.c @@ -146,44 +146,6 @@ static void CG_ParseWarmup( void ) cg.warmupTime = warmup; } -/* -================== -CG_ParseAlienStates -================== -*/ -static void CG_ParseAlienStates( void ) -{ - const char *alienStates = CG_ConfigString( CS_ALIEN_STATUS ); - alienStates_t *state = &cgs.alienStates; - - if( alienStates[0] ) - { - sscanf( alienStates, "%d %d %d %d %d", &state->omBuilding, &state->omHealth, - &state->spawns, &state->builders, &state->boosters ); - } - else - state->omBuilding = state->omHealth = state->spawns = state->builders = state->boosters = 0; -} - -/* -================== -CG_ParseAliensStates -================== -*/ -static void CG_ParseHumanStates( void ) -{ - const char *humanStates = CG_ConfigString( CS_HUMAN_STATUS ); - humanStates_t *state = &cgs.humanStates; - - if( humanStates[0] ) - { - sscanf( humanStates, "%d %d %d %d %d %d %d", &state->rcBuilding, &state->rcHealth, - &state->spawns, &state->builders, &state->armourys, &state->medicals, &state->computers ); - } - else - state->rcBuilding = state->rcHealth = state->spawns = state->builders = state->armourys = state->medicals = 0; -} - /* ================ CG_SetConfigValues @@ -213,9 +175,6 @@ void CG_SetConfigValues( void ) else cgs.humanStage = cgs.humanCredits = cgs.humanNextStageThreshold = 0; - CG_ParseAlienStates(); - CG_ParseHumanStates(); - cgs.levelStartTime = atoi( CG_ConfigString( CS_LEVEL_START_TIME ) ); cg.warmupTime = atoi( CG_ConfigString( CS_WARMUP ) ); } @@ -360,10 +319,6 @@ static void CG_ConfigStringModified( void ) cgs.humanStage = cgs.humanCredits = cgs.humanNextStageThreshold = 0; } } - else if( num == CS_ALIEN_STATUS ) - CG_ParseAlienStates( ); - else if( num == CS_HUMAN_STATUS ) - CG_ParseHumanStates( ); else if( num == CS_LEVEL_START_TIME ) cgs.levelStartTime = atoi( str ); else if( num >= CS_VOTE_TIME && num < CS_VOTE_TIME + NUM_TEAMS ) diff --git a/src/game/bg_public.h b/src/game/bg_public.h index 102a6e406..06f8efac1 100644 --- a/src/game/bg_public.h +++ b/src/game/bg_public.h @@ -83,8 +83,6 @@ enum CS_ALIEN_STAGES, CS_HUMAN_STAGES, - CS_ALIEN_STATUS, - CS_HUMAN_STATUS, CS_MODELS, CS_SOUNDS = CS_MODELS + MAX_MODELS, @@ -1108,27 +1106,6 @@ typedef struct team_t team; } upgradeAttributes_t; -// Teams status provided by the server, also a remplacement for /teamstatus -typedef struct -{ - int omBuilding; - int omHealth; - int spawns; - int builders; - int boosters; -} alienStates_t; - -typedef struct -{ - int rcBuilding; - int rcHealth; - int spawns; - int builders; - int armourys; - int medicals; - int computers; -} humanStates_t; - qboolean BG_WeaponIsFull( weapon_t weapon, int stats[ ], int ammo, int clips ); qboolean BG_InventoryContainsWeapon( int weapon, int stats[ ] ); void BG_GetConflictingWithInventory( int refSlots, int stats[ ], int conflictingWP[WP_NUM_WEAPONS - 1], diff --git a/src/game/g_main.c b/src/game/g_main.c index 9d9a4d543..9d49bd028 100644 --- a/src/game/g_main.c +++ b/src/game/g_main.c @@ -1396,90 +1396,6 @@ void G_CalculateStages( void ) humanNextStageThreshold ) ); } -/* -============ -G_CalculateStates -============ -*/ -void G_CalculateStates( void ) -{ - int i; - int abuilders = 0; - int hbuilders = 0; - int arm = 0, medi = 0, dcc = 0, boost = 0; - int om = 0, rc = 0; - qboolean ombuild = qfalse, rcbuild = qfalse; - gentity_t *ent; - - // Objects counter - for ( i = 1, ent = g_entities + i; i < level.num_entities; i++, ent++ ) - { - if( !ent->inuse || ent->s.eType != ET_BUILDABLE || ent->health <= 0 ) - continue; - - switch (ent->s.modelindex) { - - case BA_A_OVERMIND: - om = ent->health; - ombuild = !ent->spawned; - break; - - case BA_H_REACTOR: - rc = ent->health; - rcbuild = !ent->spawned; - break; - - case BA_A_BOOSTER: - boost++; - break; - - case BA_H_MEDISTAT: - medi++; - break; - - case BA_H_ARMOURY: - arm++; - break; - - case BA_H_DCC: - dcc++; - break; - - } - } - - // Builder counter - for( i = 0; i < level.maxclients; i++ ) - { - ent = &g_entities[ i ]; - if( !ent->client || ent->client->pers.connected != CON_CONNECTED - || ent->client->pers.teamSelection == TEAM_NONE || ent->client->sess.spectatorState == SPECTATOR_FOLLOW ) - continue; - - if( ent->client->ps.stats[ STAT_CLASS ] == PCL_ALIEN_BUILDER0 || - ent->client->ps.stats[ STAT_CLASS ] == PCL_ALIEN_BUILDER0_UPG ) - abuilders++; - else if( BG_InventoryContainsWeapon( WP_HBUILD, ent->client->ps.stats ) ) - hbuilders++; - } - - - trap_SetConfigstring( CS_ALIEN_STATUS, va( "%d %d %d %d %d", - ombuild, - ( om > 0 ) ? om : 0, - level.numAlienSpawns, - abuilders, - boost ) ); - trap_SetConfigstring( CS_HUMAN_STATUS, va( "%d %d %d %d %d %d %d", - rcbuild, - ( rc > 0 ) ? rc : 0, - level.numHumanSpawns, - hbuilders, - arm, - medi, - dcc ) ); -} - /* ============ CalculateAvgPlayers @@ -2529,7 +2445,6 @@ void G_RunFrame( int levelTime ) { G_CalculateBuildPoints( ); G_CalculateStages( ); - G_CalculateStates( ); G_SpawnClients( TEAM_ALIENS ); G_SpawnClients( TEAM_HUMANS ); G_CalculateAvgPlayers( ); diff --git a/src/game/g_team.c b/src/game/g_team.c index 15dfdd199..806247bb7 100644 --- a/src/game/g_team.c +++ b/src/game/g_team.c @@ -135,8 +135,6 @@ void G_UpdateTeamConfigStrings( void ) trap_SetConfigstringRestrictions( CS_ALIEN_STAGES, &humanTeam ); trap_SetConfigstringRestrictions( CS_HUMAN_STAGES, &alienTeam ); - trap_SetConfigstringRestrictions( CS_ALIEN_STATUS, &humanTeam ); - trap_SetConfigstringRestrictions( CS_HUMAN_STATUS, &alienTeam ); } /* diff --git a/src/ui/ui_main.c b/src/ui/ui_main.c index c048e2cf8..22328b164 100644 --- a/src/ui/ui_main.c +++ b/src/ui/ui_main.c @@ -1877,36 +1877,6 @@ static stage_t UI_GetCurrentHumanStage(void) return stage; } -/* -=============== -UI_alienStates -=============== -*/ -static void UI_alienStates(alienStates_t *state) -{ - char alienStates[MAX_TOKEN_CHARS]; - - trap_Cvar_VariableStringBuffer("ui_alienStates", alienStates, sizeof(alienStates)); - - sscanf( alienStates, "%d %d %d %d %d", &state->omBuilding, &state->omHealth, - &state->spawns, &state->builders, &state->boosters ); -} - -/* -=============== -UI_humanStates -=============== -*/ -static void UI_humanStates(humanStates_t *state) -{ - char humanStates[MAX_TOKEN_CHARS]; - - trap_Cvar_VariableStringBuffer("ui_humanStates", humanStates, sizeof(humanStates)); - - sscanf( humanStates, "%d %d %d %d %d %d %d", &state->rcBuilding, &state->rcHealth, - &state->spawns, &state->builders, &state->armourys, &state->medicals, &state->computers ); -} - /* =============== UI_GetStageText @@ -2911,29 +2881,17 @@ UI_LoadAlienClasses */ static void UI_LoadAlienClasses(void) { - alienStates_t state; - stage_t stage; - char *prefix; - memset(&(uiInfo.alienClassListModel), 0, sizeof(uiInfo.alienClassListModel)); uiInfo.alienClassCount = 0; - UI_alienStates(&state); - stage = UI_GetCurrentAlienStage(); - - if ( ( !state.omHealth || !state.spawns || BG_BuildableAllowedInStage(BA_A_BOOSTER, stage) && !state.boosters ) - && !state.builders ) - prefix = "[!] "; - else - prefix = ""; if (BG_ClassIsAllowed(PCL_ALIEN_LEVEL0)) UI_AddClass(PCL_ALIEN_LEVEL0, ""); if (BG_ClassIsAllowed(PCL_ALIEN_BUILDER0_UPG) && BG_ClassAllowedInStage(PCL_ALIEN_BUILDER0_UPG, UI_GetCurrentAlienStage())) - UI_AddClass(PCL_ALIEN_BUILDER0_UPG, prefix); + UI_AddClass(PCL_ALIEN_BUILDER0_UPG, ""); else if (BG_ClassIsAllowed(PCL_ALIEN_BUILDER0)) - UI_AddClass(PCL_ALIEN_BUILDER0, prefix); + UI_AddClass(PCL_ALIEN_BUILDER0, ""); } /* @@ -2965,28 +2923,14 @@ UI_LoadHumanItems */ static void UI_LoadHumanItems(void) { - humanStates_t state; - stage_t stage; - char *prefix; - memset(&(uiInfo.humanItemListModel), 0, sizeof(uiInfo.humanItemListModel)); uiInfo.humanItemCount = 0; - UI_humanStates(&state); - stage = UI_GetCurrentHumanStage(); - - if ( ( !state.rcHealth || !state.spawns || BG_BuildableAllowedInStage(BA_H_ARMOURY, stage) && !state.armourys - || BG_BuildableAllowedInStage(BA_H_MEDISTAT, stage) && !state.medicals - || BG_BuildableAllowedInStage(BA_H_DCC, stage) && !state.computers ) - && !state.builders ) - prefix = "[!] "; - else - prefix = ""; if (BG_WeaponIsAllowed(WP_MACHINEGUN)) UI_AddItem(WP_MACHINEGUN, ""); if (BG_WeaponIsAllowed(WP_HBUILD)) - UI_AddItem(WP_HBUILD, prefix); + UI_AddItem(WP_HBUILD, ""); } /* @@ -3272,8 +3216,7 @@ static void UI_LoadHumanArmouryModels(void) UI_LoadHumanArmouryBuysWeapon =============== */ -static void UI_LoadHumanArmouryBuysWeapon(int priority, int *j, int stage, int sellingBudget, - int credits, qboolean criticalBuilds) +static void UI_LoadHumanArmouryBuysWeapon(int priority, int *j, int stage, int sellingBudget, int credits) { int i = 0; qboolean addWeapon; @@ -3286,16 +3229,16 @@ static void UI_LoadHumanArmouryBuysWeapon(int priority, int *j, int stage, int s { addWeapon = qfalse; switch (priority) { - case 0: - if (criticalBuilds == qtrue && i == WP_HBUILD) // If there are critical builds to build - { - addWeapon = qtrue; - prefix = "[!] "; - } - break; + // case 0: + // if (criticalBuilds == qtrue && i == WP_HBUILD) // If there are critical builds to build + // { + // addWeapon = qtrue; + // prefix = "[!] "; + // } + // break; case 1: if (BG_WeaponAllowedInStage(i, stage) && UI_CanUpgradeToWeapon(i, sellingBudget, credits) - && !(criticalBuilds == qtrue && i == WP_HBUILD)) + /*&& !(criticalBuilds == qtrue && i == WP_HBUILD)*/) { addWeapon = qtrue; prefix = UI_IsBetterWeapon(i, sellingBudget) ? "[upgrade] " : ""; @@ -3403,14 +3346,11 @@ UI_LoadHumanArmouryBuys static void UI_LoadHumanArmouryBuys(void) { int i, j = 0; - humanStates_t state; - qboolean criticalBuilds; stage_t stage = UI_GetCurrentHumanStage(); int sellingBudget = 0; int upgrSlots = 0; int credits = UI_GetCurrentCredits(); - UI_humanStates(&state); UI_ParseCarriageList(); for (i = WP_NONE + 1; i < WP_NUM_WEAPONS; i++) @@ -3421,27 +3361,23 @@ static void UI_LoadHumanArmouryBuys(void) if (uiInfo.upgrades & (1 << i)) upgrSlots |= BG_Upgrade(i)->slots; - criticalBuilds = ( ( !state.rcHealth || !state.spawns || BG_BuildableAllowedInStage(BA_H_ARMOURY, stage) && !state.armourys - || BG_BuildableAllowedInStage(BA_H_MEDISTAT, stage) && !state.medicals - || BG_BuildableAllowedInStage(BA_H_DCC, stage) && !state.computers ) - && !state.builders ); uiInfo.humanArmouryBuyCount = 0; // Critical (ammo mainly) - UI_LoadHumanArmouryBuysWeapon(0, &j, stage, sellingBudget, credits, criticalBuilds); + UI_LoadHumanArmouryBuysWeapon(0, &j, stage, sellingBudget, credits); UI_LoadHumanArmouryBuysUpgrade(0, &j, stage, upgrSlots, credits); // Available to buy - UI_LoadHumanArmouryBuysWeapon(1, &j, stage, sellingBudget, credits, criticalBuilds); + UI_LoadHumanArmouryBuysWeapon(1, &j, stage, sellingBudget, credits); UI_LoadHumanArmouryBuysUpgrade(1, &j, stage, upgrSlots, credits); // Unlocked but no enough funds - UI_LoadHumanArmouryBuysWeapon(2, &j, stage, sellingBudget, credits, criticalBuilds); + UI_LoadHumanArmouryBuysWeapon(2, &j, stage, sellingBudget, credits); UI_LoadHumanArmouryBuysUpgrade(2, &j, stage, upgrSlots, credits); // Locked - UI_LoadHumanArmouryBuysWeapon(3, &j, stage, sellingBudget, credits, criticalBuilds); + UI_LoadHumanArmouryBuysWeapon(3, &j, stage, sellingBudget, credits); UI_LoadHumanArmouryBuysUpgrade(3, &j, stage, upgrSlots, credits); } @@ -3660,15 +3596,10 @@ static void UI_LoadAlienBuildsItems(int priority, int *j, int stage) int i = 0; qboolean addItem; char *prefix; - qboolean critical; - alienStates_t state; - - UI_alienStates(&state); for (i = BA_NONE + 1; i < BA_NUM_BUILDABLES; i++) { addItem = qfalse; - critical = qfalse; if (BG_Buildable(i)->team == TEAM_ALIENS && BG_BuildableIsAllowed(i)) { switch (priority) { @@ -3678,17 +3609,7 @@ static void UI_LoadAlienBuildsItems(int priority, int *j, int stage) if (BG_BuildableAllowedInStage(i, stage)) { addItem = qtrue; - if (i == BA_A_SPAWN && !state.spawns - || i == BA_A_BOOSTER && !state.boosters - || i == BA_A_OVERMIND && !state.omHealth ) - critical = qtrue; - prefix = (char*)(va( - "%s%s%s%s", - ( (!state.omHealth || state.omBuilding) && i != BA_A_OVERMIND ) ? "[overmind] " : "", // Show an overmind if it need it - ( !state.omHealth && i != BA_A_OVERMIND ) ? "^0" : "", // Grey out the item if om is not building too - ( !(BG_Buildable(i)->buildWeapon & uiInfo.weapons) ) ? "[upgrade][advgranger]^0 " : "", // Grey out and ask to upgrade if adv granger is needed - ( critical ) ? "[!] " : "" // Inform if this item is important - )); + prefix = ( !(BG_Buildable(i)->buildWeapon & uiInfo.weapons) ) ? "[upgrade][advgranger]^0 " : ""; // Grey out and ask to upgrade if adv granger is needed } break; case 2: @@ -3775,15 +3696,10 @@ static void UI_LoadHumanBuildsItems(int priority, int *j, int stage) int i = 0; qboolean addItem; char *prefix; - qboolean critical; - humanStates_t state; - - UI_humanStates(&state); for (i = BA_NONE + 1; i < BA_NUM_BUILDABLES; i++) { addItem = qfalse; - critical = qfalse; if (BG_Buildable(i)->team == TEAM_HUMANS && BG_BuildableIsAllowed(i)) { switch (priority) { @@ -3793,19 +3709,7 @@ static void UI_LoadHumanBuildsItems(int priority, int *j, int stage) if (BG_BuildableAllowedInStage(i, stage)) { addItem = qtrue; - if (i == BA_H_SPAWN && !state.spawns - || i == BA_H_ARMOURY && !state.armourys - || i == BA_H_MEDISTAT && !state.medicals - || i == BA_H_DCC && !state.computers - || i == BA_H_REACTOR && !state.rcHealth ) - critical = qtrue; - prefix = (char*)(va( - "%s%s%s%s", - ( (!state.rcHealth || state.rcBuilding) && i != BA_H_REACTOR ) ? "[reactor] " : "", // Show a reactor if it need it - ( !state.rcHealth && i != BA_H_REACTOR ) ? "^0" : "", // Grey out the item if om is not building too - ( !(BG_Buildable(i)->buildWeapon & uiInfo.weapons) ) ? "[upgrade][ckit]^0 " : "", // Grey out and ask to upgrade if adv ckit is needed. Now Ckit = AdvCkit (keep for compatibility) - ( critical ) ? "[!] " : "" // Inform if this item is important - )); + prefix = ( !(BG_Buildable(i)->buildWeapon & uiInfo.weapons) ) ? "[upgrade][ckit]^0 " : ""; // Grey out and ask to upgrade if adv ckit is needed. (Might never show in GPP as Ckit = AdvCkit) } break; case 2: