From 844b2d5f84009ad6a992349e2aea8c174743fb7f Mon Sep 17 00:00:00 2001 From: perle Date: Wed, 31 Jul 2024 23:44:29 +0200 Subject: [PATCH] Reverted all 4TCTF Changes --- engine/code/cgame/cg_draw.c | 163 +++++++++++------------------ engine/code/cgame/cg_local.h | 4 +- engine/code/cgame/cg_main.c | 12 +-- engine/code/cgame/cg_players.c | 3 + engine/code/cgame/cg_playerstate.c | 2 - engine/code/cgame/cg_predict.c | 6 -- engine/code/cgame/cg_scoreboard.c | 14 --- engine/code/game/ai_dmq3.c | 8 -- engine/code/game/ai_dmq3.h | 4 - engine/code/game/bg_misc.c | 51 +-------- engine/code/game/bg_public.h | 4 +- engine/code/game/g_active.c | 6 -- engine/code/game/g_combat.c | 10 -- engine/code/game/g_misc.c | 8 -- engine/code/game/g_rankings.c | 2 +- engine/code/game/g_target.c | 4 - engine/code/game/g_team.c | 52 ++------- engine/code/game/g_weapon.c | 8 +- engine/code/game/inv.h | 106 +++++++++---------- 19 files changed, 132 insertions(+), 335 deletions(-) diff --git a/engine/code/cgame/cg_draw.c b/engine/code/cgame/cg_draw.c index 92da4255..b6271b44 100644 --- a/engine/code/cgame/cg_draw.c +++ b/engine/code/cgame/cg_draw.c @@ -391,10 +391,6 @@ void CG_DrawFlagModel( float x, float y, float w, float h, int team, qboolean fo handle = cgs.media.redFlagModel; } else if( team == TEAM_BLUE ) { handle = cgs.media.blueFlagModel; - } else if( team == TEAM_GREEN) { - handle = cgs.media.greenFlagModel; - } else if( team == TEAM_YELLOW ) { - handle = cgs.media.yellowFlagModel; } else if( team == TEAM_FREE ) { handle = cgs.media.neutralFlagModel; } else { @@ -408,10 +404,6 @@ void CG_DrawFlagModel( float x, float y, float w, float h, int team, qboolean fo item = BG_FindItemForPowerup( PW_REDFLAG ); } else if( team == TEAM_BLUE ) { item = BG_FindItemForPowerup( PW_BLUEFLAG ); - } else if( team == TEAM_GREEN ) { - item = BG_FindItemForPowerup( PW_GREENFLAG ); - } else if( team == TEAM_YELLOW ) { - item = BG_FindItemForPowerup( PW_YELLOWFLAG ); } else if( team == TEAM_FREE ) { item = BG_FindItemForPowerup( PW_NEUTRALFLAG ); } else { @@ -648,10 +640,6 @@ static void CG_DrawStatusBar( void ) { CG_DrawStatusBarFlag( 185 + CHAR_WIDTH*3 + TEXT_ICON_SPACE + ICON_SIZE, TEAM_RED ); } else if( cg.predictedPlayerState.powerups[PW_BLUEFLAG] ) { CG_DrawStatusBarFlag( 185 + CHAR_WIDTH*3 + TEXT_ICON_SPACE + ICON_SIZE, TEAM_BLUE ); - } else if( cg.predictedPlayerState.powerups[PW_GREENFLAG] ) { - CG_DrawStatusBarFlag( 185 + CHAR_WIDTH*3 + TEXT_ICON_SPACE + ICON_SIZE, TEAM_GREEN ); - } else if( cg.predictedPlayerState.powerups[PW_YELLOWFLAG] ) { - CG_DrawStatusBarFlag( 185 + CHAR_WIDTH*3 + TEXT_ICON_SPACE + ICON_SIZE, TEAM_YELLOW ); } else if( cg.predictedPlayerState.powerups[PW_NEUTRALFLAG] ) { CG_DrawStatusBarFlag( 185 + CHAR_WIDTH*3 + TEXT_ICON_SPACE + ICON_SIZE, TEAM_FREE ); } @@ -859,10 +847,6 @@ static void CG_DrawRallyStatusBar( void ) { CG_DrawStatusBarFlag( 495, TEAM_RED); else if (cg.predictedPlayerState.powerups[PW_BLUEFLAG]) CG_DrawStatusBarFlag( 495, TEAM_BLUE); - else if (cg.predictedPlayerState.powerups[PW_GREENFLAG]) - CG_DrawStatusBarFlag( 495, TEAM_GREEN); - else if (cg.predictedPlayerState.powerups[PW_YELLOWFLAG]) - CG_DrawStatusBarFlag( 495, TEAM_YELLOW); else if (cg_entities[cg.snap->ps.clientNum].finishRaceTime && cg_entities[cg.snap->ps.clientNum].currentPosition == 1){ @@ -1195,17 +1179,17 @@ static void CG_DrawRallyPowerups( void ) { active++; } - // draw the icons and timers TRYOUT: bug #71 + // draw the icons and timers for ( i = 0 ; i < active ; i++ ) { item = BG_FindItemForPowerup( sorted[i] ); color = 1; - CG_FillRect( 495, 476 - 30, 90, 24, bg_color ); + CG_FillRect( 402, 476 - 30, 90, 24, bg_color ); trap_R_SetColor( colors[color] ); - CG_DrawField( 517 + CHAR_WIDTH, 476 - 28, 2, sortedTime[ i ] / 1000 ); + CG_DrawField( 424 + CHAR_WIDTH, 476 - 28, 2, sortedTime[ i ] / 1000 ); t = ps->powerups[ sorted[i] ]; if ( t - cg.time >= POWERUP_BLINKS * POWERUP_BLINK_TIME ) { @@ -1232,7 +1216,7 @@ static void CG_DrawRallyPowerups( void ) { size = 19; } - CG_DrawPic( 503, 476 - 27, size, size, trap_R_RegisterShader( item->icon ) ); + CG_DrawPic( 408, 476 - 27, size, size, trap_R_RegisterShader( item->icon ) ); } trap_R_SetColor( NULL ); } @@ -1359,7 +1343,7 @@ static float CG_DrawFPS( float y ) { s = va( "%ifps", fps ); w = CG_DrawStrlen( s ) * BIGCHAR_WIDTH; - CG_DrawBigString( 622 - w, 355 + 2, s, 1.0F); + CG_DrawBigString( 635 - w, y + 2, s, 1.0F); } return y + BIGCHAR_HEIGHT + 4; @@ -1641,9 +1625,9 @@ float CG_DrawScores( float x, float y ) { if ( cgs.gametype >= GT_TEAM ) { CG_FillRect( x - 80, y, 96, 18, bgColor ); - - // draw yellow - + + if (cgs.gametype >= GT_TEAM){ + // draw yellow color[0] = 1.0f; color[1] = 1.0f; color[2] = 0.0f; @@ -1657,23 +1641,7 @@ float CG_DrawScores( float x, float y ) { } CG_DrawTinyDigitalString( x + 4, y+4, s, 1.0F); - if ( cgs.gametype == GT_CTF ) { - // Display yellow flag status - item = BG_FindItemForPowerup( PW_YELLOWFLAG ); - - if (item) { - - y1 = y + TINYCHAR_HEIGHT + 8; - if( cgs.yellowflag >= 0 && cgs.yellowflag <= 2 ) { - - CG_DrawPic( x+1, y1+1, w-2, 16, cgs.media.yellowFlagShader[cgs.yellowflag] ); - - } - } - } - // draw green - color[0] = 0.0f; color[1] = 1.0f; color[2] = 0.0f; @@ -1686,84 +1654,71 @@ float CG_DrawScores( float x, float y ) { CG_DrawPic( x+1, y+1, w-2, 16, cgs.media.selectShader ); } CG_DrawTinyDigitalString( x + 4, y+4, s, 1.0F); + } - if ( cgs.gametype == GT_CTF ) { - // Display green flag status - item = BG_FindItemForPowerup( PW_GREENFLAG ); + color[0] = 0.0f; + color[1] = 0.0f; + color[2] = 1.0f; + color[3] = 0.33f; + s = va( "%2i", s2 ); + w = CG_DrawStrlen( s ) * TINYCHAR_WIDTH + 8; + x -= w; + + CG_FillRect( x+1, y+1, w-2, 16, color ); + if ( cg.snap->ps.persistant[PERS_TEAM] == TEAM_BLUE ) { + CG_DrawPic( x+1, y+1, w-2, 16, cgs.media.selectShader ); + + } + + CG_DrawTinyDigitalString( x + 4, y+4, s, 1.0F); + + if ( cgs.gametype == GT_CTF ) { + // Display flag status + item = BG_FindItemForPowerup( PW_BLUEFLAG ); if (item) { - y1 = y + TINYCHAR_HEIGHT + 8; - if( cgs.greenflag >= 0 && cgs.greenflag <= 2 ) { - - CG_DrawPic( x+1, y1+1, w-2, 16, cgs.media.greenFlagShader[cgs.greenflag] ); - - } - } - } - - // draw blue - - color[0] = 0.0f; - color[1] = 0.0f; - color[2] = 1.0f; - color[3] = 0.33f; - s = va( "%2i", s2 ); - w = CG_DrawStrlen( s ) * TINYCHAR_WIDTH + 8; - x -= w; - CG_FillRect( x+1, y+1, w-2, 16, color ); - if ( cg.snap->ps.persistant[PERS_TEAM] == TEAM_BLUE ) { - CG_DrawPic( x+1, y+1, w-2, 16, cgs.media.selectShader ); - } - CG_DrawTinyDigitalString( x + 4, y+4, s, 1.0F); - - if ( cgs.gametype == GT_CTF ) { - // Display blue flag status - item = BG_FindItemForPowerup( PW_BLUEFLAG ); - - if (item) { - - y1 = y + TINYCHAR_HEIGHT + 8; - if( cgs.blueflag >= 0 && cgs.blueflag <= 2 ) { + y1 = y + TINYCHAR_HEIGHT + 8; + if( cgs.blueflag >= 0 && cgs.blueflag <= 2 ) { CG_DrawPic( x+1, y1+1, w-2, 16, cgs.media.blueFlagShader[cgs.blueflag] ); - } - } - } - - // draw red + } + } + } - color[0] = 1.0f; - color[1] = 0.0f; - color[2] = 0.0f; - color[3] = 0.33f; - s = va( "%2i", s1 ); - w = CG_DrawStrlen( s ) * TINYCHAR_WIDTH + 8; - x -= w; - CG_FillRect( x+1, y+1, w-2, 16, color ); - if ( cg.snap->ps.persistant[PERS_TEAM] == TEAM_RED ) { - CG_DrawPic( x+1, y+1, w-2, 16, cgs.media.selectShader ); - } - CG_DrawTinyDigitalString( x + 4, y+4, s, 1.0F); + color[0] = 1.0f; + color[1] = 0.0f; + color[2] = 0.0f; + color[3] = 0.33f; + s = va( "%2i", s1 ); + w = CG_DrawStrlen( s ) * TINYCHAR_WIDTH + 8; + x -= w; - if ( cgs.gametype == GT_CTF ) { - // Display red flag status - item = BG_FindItemForPowerup( PW_REDFLAG ); + CG_FillRect( x+1, y+1, w-2, 16, color ); + if ( cg.snap->ps.persistant[PERS_TEAM] == TEAM_RED ) { + + CG_DrawPic( x+1, y+1, w-2, 16, cgs.media.selectShader ); + + } + + CG_DrawTinyDigitalString( x + 4, y+4, s, 1.0F); + + if ( cgs.gametype == GT_CTF ) { + // Display flag status + item = BG_FindItemForPowerup( PW_REDFLAG ); if (item) { - y1 = y + TINYCHAR_HEIGHT + 8; - if( cgs.redflag >= 0 && cgs.redflag <= 2 ) { + y1 = y + TINYCHAR_HEIGHT + 8; - CG_DrawPic( x+1, y1+1, w-2, 16, cgs.media.redFlagShader[cgs.redflag] ); - - } - } - } + if( cgs.redflag >= 0 && cgs.redflag <= 2 ) { + + + } + } + } - - #ifdef MISSIONPACK if ( cgs.gametype == GT_1FCTF ) { // Display flag status diff --git a/engine/code/cgame/cg_local.h b/engine/code/cgame/cg_local.h index 6f711c4c..8ae07e5b 100644 --- a/engine/code/cgame/cg_local.h +++ b/engine/code/cgame/cg_local.h @@ -827,8 +827,6 @@ typedef struct { qhandle_t redFlagFlapSkin; qhandle_t blueFlagFlapSkin; - qhandle_t greenFlagFlapSkin; - qhandle_t yellowFlagFlapSkin; qhandle_t neutralFlagFlapSkin; qhandle_t redFlagBaseModel; @@ -1244,7 +1242,7 @@ typedef struct { // Q3Rally Code Start int scores3, scores4; // from configstrings // Q3Rally Code END - int redflag, blueflag, greenflag, yellowflag; // flag status from configstrings + int redflag, blueflag; // flag status from configstrings int flagStatus; int sigil[MAX_SIGILS]; qboolean newHud; diff --git a/engine/code/cgame/cg_main.c b/engine/code/cgame/cg_main.c index ff6ccdef..bfa0a1de 100644 --- a/engine/code/cgame/cg_main.c +++ b/engine/code/cgame/cg_main.c @@ -1130,8 +1130,6 @@ static void CG_RegisterGraphics( void ) { cgs.media.redFlagFlapSkin = trap_R_RegisterSkin( "models/flag2/red.skin" ); cgs.media.blueFlagFlapSkin = trap_R_RegisterSkin( "models/flag2/blue.skin" ); - cgs.media.greenFlagFlapSkin = trap_R_RegisterSkin( "models/flag2/green.skin" ); - cgs.media.yellowFlagFlapSkin = trap_R_RegisterSkin( "models/flag2/yellow.skin" ); cgs.media.neutralFlagFlapSkin = trap_R_RegisterSkin( "models/flag2/white.skin" ); cgs.media.redFlagBaseModel = trap_R_RegisterModel( "models/mapobjects/flagbase/red_base.md3" ); @@ -1912,10 +1910,6 @@ static const char *CG_FeederItemText(float feederID, int index, int column, qhan team = TEAM_RED; } else if (feederID == FEEDER_BLUETEAM_LIST) { team = TEAM_BLUE; - } else if (feederID == FEEDER_GREENTEAM_LIST) { - team = TEAM_GREEN; - } else if (feederID == FEEDER_YELLOWTEAM_LIST) { - team = TEAM_YELLOW; } info = CG_InfoFromScoreIndex(index, team, &scoreIndex); @@ -1932,10 +1926,6 @@ static const char *CG_FeederItemText(float feederID, int index, int column, qhan *handle = cg_items[ ITEM_INDEX(item) ].icon; } else if ( info->powerups & ( 1 << PW_BLUEFLAG ) ) { item = BG_FindItemForPowerup( PW_BLUEFLAG ); - } else if ( info->powerups & ( 1 << PW_GREENFLAG ) ) { - item = BG_FindItemForPowerup( PW_GREENFLAG ); - } else if ( info->powerups & ( 1 << PW_YELLOWFLAG ) ) { - item = BG_FindItemForPowerup( PW_YELLOWFLAG ); *handle = cg_items[ ITEM_INDEX(item) ].icon; } else { if ( info->botSkill > 0 && info->botSkill <= 5 ) { @@ -2203,7 +2193,7 @@ void CG_Init( int serverMessageNum, int serverCommandSequence, int clientNum ) { cg.weaponSelect = WP_MACHINEGUN; - cgs.redflag = cgs.blueflag = cgs.greenflag = cgs.yellowflag = -1; // For compatibily, default to unset for + cgs.redflag = cgs.blueflag = -1; // For compatibily, default to unset for cgs.flagStatus = -1; // Q3Rally Code Start for ( i = 0; i < MAX_SIGILS; i++ ) { diff --git a/engine/code/cgame/cg_players.c b/engine/code/cgame/cg_players.c index 3a42df7a..5d47571a 100644 --- a/engine/code/cgame/cg_players.c +++ b/engine/code/cgame/cg_players.c @@ -2416,6 +2416,7 @@ static void CG_PlayerPowerups( centity_t *cent, refEntity_t *torso ) { trap_R_AddLightToScene( cent->lerpOrigin, 200 + (rand()&31), 0.2f, 0.2f, 1.0 ); } +/* finish in 0.5 // greenflag if ( powerups & ( 1 << PW_GREENFLAG ) ) { @@ -2439,6 +2440,8 @@ static void CG_PlayerPowerups( centity_t *cent, refEntity_t *torso ) { trap_R_AddLightToScene( cent->lerpOrigin, 200 + (rand()&31), 1.0, 1.0, 0.2f ); } +// end finish in 0.5 +*/ // neutralflag if ( powerups & ( 1 << PW_NEUTRALFLAG ) ) { diff --git a/engine/code/cgame/cg_playerstate.c b/engine/code/cgame/cg_playerstate.c index 5bb3d337..58a65182 100644 --- a/engine/code/cgame/cg_playerstate.c +++ b/engine/code/cgame/cg_playerstate.c @@ -437,8 +437,6 @@ void CG_CheckLocalSounds( playerState_t *ps, playerState_t *ops ) { if ( cgs.gametype > GT_TEAM ) { if ((ps->powerups[PW_REDFLAG] != ops->powerups[PW_REDFLAG] && ps->powerups[PW_REDFLAG]) || (ps->powerups[PW_BLUEFLAG] != ops->powerups[PW_BLUEFLAG] && ps->powerups[PW_BLUEFLAG]) || - (ps->powerups[PW_GREENFLAG] != ops->powerups[PW_GREENFLAG] && ps->powerups[PW_GREENFLAG]) || - (ps->powerups[PW_YELLOWFLAG] != ops->powerups[PW_YELLOWFLAG] && ps->powerups[PW_YELLOWFLAG]) || (ps->powerups[PW_NEUTRALFLAG] != ops->powerups[PW_NEUTRALFLAG] && ps->powerups[PW_NEUTRALFLAG]) ) { trap_S_StartLocalSound( cgs.media.youHaveFlagSound, CHAN_ANNOUNCER ); diff --git a/engine/code/cgame/cg_predict.c b/engine/code/cgame/cg_predict.c index 881e617a..6949a2bd 100644 --- a/engine/code/cgame/cg_predict.c +++ b/engine/code/cgame/cg_predict.c @@ -494,12 +494,6 @@ static void CG_TouchItem( centity_t *cent ) { if (cg.predictedPlayerState.persistant[PERS_TEAM] == TEAM_BLUE && item->giType == IT_TEAM && item->giTag == PW_BLUEFLAG) return; - if (cg.predictedPlayerState.persistant[PERS_TEAM] == TEAM_GREEN && - item->giType == IT_TEAM && item->giTag == PW_GREENFLAG) - return; - if (cg.predictedPlayerState.persistant[PERS_TEAM] == TEAM_YELLOW && - item->giType == IT_TEAM && item->giTag == PW_YELLOWFLAG) - return; } // grab it diff --git a/engine/code/cgame/cg_scoreboard.c b/engine/code/cgame/cg_scoreboard.c index b8055392..25175c9d 100644 --- a/engine/code/cgame/cg_scoreboard.c +++ b/engine/code/cgame/cg_scoreboard.c @@ -143,20 +143,6 @@ static void CG_DrawClientScore( int y, score_t *score, float *color, float fade, else { CG_DrawFlagModel( iconx, y, 16, 16, TEAM_BLUE, qfalse ); } - } else if ( ci->powerups & ( 1 << PW_GREENFLAG ) ) { - if( largeFormat ) { - CG_DrawFlagModel( iconx, y - ( 32 - BIGCHAR_HEIGHT ) / 2, 32, 32, TEAM_GREEN, qfalse ); - } - else { - CG_DrawFlagModel( iconx, y, 16, 16, TEAM_GREEN, qfalse ); - } - } else if ( ci->powerups & ( 1 << PW_YELLOWFLAG ) ) { - if( largeFormat ) { - CG_DrawFlagModel( iconx, y - ( 32 - BIGCHAR_HEIGHT ) / 2, 32, 32, TEAM_YELLOW, qfalse ); - } - else { - CG_DrawFlagModel( iconx, y, 16, 16, TEAM_YELLOW, qfalse ); - } } // STONELANCE - draw flag beside winner else if (cg_entities[score->client].finishRaceTime && diff --git a/engine/code/game/ai_dmq3.c b/engine/code/game/ai_dmq3.c index 0662355d..8237f362 100644 --- a/engine/code/game/ai_dmq3.c +++ b/engine/code/game/ai_dmq3.c @@ -135,8 +135,6 @@ int BotCTFCarryingFlag(bot_state_t *bs) { if (bs->inventory[INVENTORY_REDFLAG] > 0) return CTF_FLAG_RED; else if (bs->inventory[INVENTORY_BLUEFLAG] > 0) return CTF_FLAG_BLUE; - else if (bs->inventory[INVENTORY_GREENFLAG] > 0) return CTF_FLAG_GREEN; - else if (bs->inventory[INVENTORY_YELLOWFLAG] > 0) return CTF_FLAG_YELLOW; return CTF_FLAG_NONE; } @@ -231,10 +229,6 @@ qboolean EntityCarriesFlag(aas_entityinfo_t *entinfo) { return qtrue; if ( entinfo->powerups & ( 1 << PW_BLUEFLAG ) ) return qtrue; - if ( entinfo->powerups & ( 1 << PW_GREENFLAG ) ) - return qtrue; - if ( entinfo->powerups & ( 1 << PW_YELLOWFLAG ) ) - return qtrue; #ifdef MISSIONPACK if ( entinfo->powerups & ( 1 << PW_NEUTRALFLAG ) ) return qtrue; @@ -1805,8 +1799,6 @@ void BotUpdateInventory(bot_state_t *bs) { #endif bs->inventory[INVENTORY_REDFLAG] = bs->cur_ps.powerups[PW_REDFLAG] != 0; bs->inventory[INVENTORY_BLUEFLAG] = bs->cur_ps.powerups[PW_BLUEFLAG] != 0; - bs->inventory[INVENTORY_GREENFLAG] = bs->cur_ps.powerups[PW_GREENFLAG] != 0; - bs->inventory[INVENTORY_YELLOWFLAG] = bs->cur_ps.powerups[PW_YELLOWFLAG] != 0; #ifdef MISSIONPACK bs->inventory[INVENTORY_NEUTRALFLAG] = bs->cur_ps.powerups[PW_NEUTRALFLAG] != 0; if (BotTeam(bs) == TEAM_RED) { diff --git a/engine/code/game/ai_dmq3.h b/engine/code/game/ai_dmq3.h index e57662ea..42d1f763 100644 --- a/engine/code/game/ai_dmq3.h +++ b/engine/code/game/ai_dmq3.h @@ -183,13 +183,9 @@ void BotMapScripts(bot_state_t *bs); #define CTF_FLAG_NONE 0 #define CTF_FLAG_RED 1 #define CTF_FLAG_BLUE 2 -#define CTF_FLAG_GREEN 3 -#define CTF_FLAG_YELLOW 4 //CTF skins #define CTF_SKIN_REDTEAM "red" #define CTF_SKIN_BLUETEAM "blue" -#define CTF_SKIN_GREENTEAM "green" -#define CTF_SKIN_YELLOWTEAM "yellow" extern int gametype; //game type extern int maxclients; //maximum number of clients diff --git a/engine/code/game/bg_misc.c b/engine/code/game/bg_misc.c index aabb6ddc..f1a2027c 100644 --- a/engine/code/game/bg_misc.c +++ b/engine/code/game/bg_misc.c @@ -881,40 +881,7 @@ Only in CTF games /* precache */ "", /* sounds */ "" }, - -/*QUAKED team_CTF_greenflag (0 1 0) (-16 -16 -16) (16 16 16) -Only in CTF games -*/ - { - "team_CTF_greenflag", - NULL, - { "models/flags/b_flag.md3", - NULL, NULL, NULL }, -/* icon */ "icons/iconf_green1", -/* pickup */ "Green Flag", - 0, - IT_TEAM, - PW_GREENFLAG, -/* precache */ "", -/* sounds */ "" - }, -/*QUAKED team_CTF_yellowflag (1 1 0) (-16 -16 -16) (16 16 16) -Only in CTF games -*/ - { - "team_CTF_yellowflag", - NULL, - { "models/flags/b_flag.md3", - NULL, NULL, NULL }, -/* icon */ "icons/iconf_yell1", -/* pickup */ "Yellow Flag", - 0, - IT_TEAM, - PW_YELLOWFLAG, -/* precache */ "", -/* sounds */ "" - }, // Q3Rally Code Start /*QUAKED team_DOMINATION_sigil_red @@ -1538,28 +1505,12 @@ qboolean BG_CanItemBeGrabbed( int gametype, const entityState_t *ent, const play (item->giTag == PW_REDFLAG && ent->modelindex2) || (item->giTag == PW_REDFLAG && ps->powerups[PW_BLUEFLAG]) ) return qtrue; - } - - else if (ps->persistant[PERS_TEAM] == TEAM_BLUE) { + } else if (ps->persistant[PERS_TEAM] == TEAM_BLUE) { if (item->giTag == PW_REDFLAG || (item->giTag == PW_BLUEFLAG && ent->modelindex2) || (item->giTag == PW_BLUEFLAG && ps->powerups[PW_REDFLAG]) ) return qtrue; } - - else if (ps->persistant[PERS_TEAM] == TEAM_BLUE) { - if (item->giTag == PW_REDFLAG || - (item->giTag == PW_BLUEFLAG && ent->modelindex2) || - (item->giTag == PW_BLUEFLAG && ps->powerups[PW_REDFLAG]) ) - return qtrue; - } - - else if (ps->persistant[PERS_TEAM] == TEAM_BLUE) { - if (item->giTag == PW_REDFLAG || - (item->giTag == PW_BLUEFLAG && ent->modelindex2) || - (item->giTag == PW_BLUEFLAG && ps->powerups[PW_REDFLAG]) ) - return qtrue; - } } #ifdef MISSIONPACK diff --git a/engine/code/game/bg_public.h b/engine/code/game/bg_public.h index b627bfcb..eae5b444 100644 --- a/engine/code/game/bg_public.h +++ b/engine/code/game/bg_public.h @@ -405,8 +405,8 @@ typedef enum { PW_REDFLAG, PW_BLUEFLAG, - PW_GREENFLAG, - PW_YELLOWFLAG, +// PW_GREENFLAG, +// PW_YELLOWFLAG, PW_NEUTRALFLAG, #ifdef MISSIONPACK diff --git a/engine/code/game/g_active.c b/engine/code/game/g_active.c index 2ca5e1da..c622fa97 100644 --- a/engine/code/game/g_active.c +++ b/engine/code/game/g_active.c @@ -803,12 +803,6 @@ void ClientEvents( gentity_t *ent, int oldEventSequence ) { } else if ( ent->client->ps.powerups[ PW_BLUEFLAG ] ) { item = BG_FindItemForPowerup( PW_BLUEFLAG ); j = PW_BLUEFLAG; - } else if ( ent->client->ps.powerups[ PW_GREENFLAG ] ) { - item = BG_FindItemForPowerup( PW_GREENFLAG ); - j = PW_GREENFLAG; - } else if ( ent->client->ps.powerups[ PW_YELLOWFLAG ] ) { - item = BG_FindItemForPowerup( PW_YELLOWFLAG ); - j = PW_YELLOWFLAG; } else if ( ent->client->ps.powerups[ PW_NEUTRALFLAG ] ) { item = BG_FindItemForPowerup( PW_NEUTRALFLAG ); j = PW_NEUTRALFLAG; diff --git a/engine/code/game/g_combat.c b/engine/code/game/g_combat.c index 33699f66..c65c9249 100644 --- a/engine/code/game/g_combat.c +++ b/engine/code/game/g_combat.c @@ -415,8 +415,6 @@ void CheckAlmostCapture( gentity_t *self, gentity_t *attacker ) { // if this player was carrying a flag if ( self->client->ps.powerups[PW_REDFLAG] || self->client->ps.powerups[PW_BLUEFLAG] || - self->client->ps.powerups[PW_GREENFLAG] || - self->client->ps.powerups[PW_YELLOWFLAG] || self->client->ps.powerups[PW_NEUTRALFLAG] ) { // get the goal flag this player should have been going for if ( g_gametype.integer == GT_CTF ) { @@ -633,14 +631,6 @@ void player_die( gentity_t *self, gentity_t *inflictor, gentity_t *attacker, int Team_ReturnFlag( TEAM_BLUE ); self->client->ps.powerups[PW_BLUEFLAG] = 0; } - else if ( self->client->ps.powerups[PW_GREENFLAG] ) { // only happens in standard CTF - Team_ReturnFlag( TEAM_GREEN ); - self->client->ps.powerups[PW_GREENFLAG] = 0; - } - else if ( self->client->ps.powerups[PW_YELLOWFLAG] ) { // only happens in standard CTF - Team_ReturnFlag( TEAM_YELLOW ); - self->client->ps.powerups[PW_YELLOWFLAG] = 0; - } } TossClientItems( self ); diff --git a/engine/code/game/g_misc.c b/engine/code/game/g_misc.c index aaf7da2a..8347c23e 100644 --- a/engine/code/game/g_misc.c +++ b/engine/code/game/g_misc.c @@ -479,14 +479,6 @@ static void PortalTouch( gentity_t *self, gentity_t *other, trace_t *trace) { Drop_Item( other, BG_FindItemForPowerup( PW_BLUEFLAG ), 0 ); other->client->ps.powerups[PW_BLUEFLAG] = 0; } - else if ( other->client->ps.powerups[PW_GREENFLAG] ) { // only happens in standard CTF - Drop_Item( other, BG_FindItemForPowerup( PW_GREENFLAG ), 0 ); - other->client->ps.powerups[PW_GREENFLAG] = 0; - } - else if ( other->client->ps.powerups[PW_YELLOWFLAG] ) { // only happens in standard CTF - Drop_Item( other, BG_FindItemForPowerup( PW_YELLOWFLAG ), 0 ); - other->client->ps.powerups[PW_YELLOWFLAG] = 0; - } // find the destination destination = NULL; diff --git a/engine/code/game/g_rankings.c b/engine/code/game/g_rankings.c index 397b990e..4d8f6947 100644 --- a/engine/code/game/g_rankings.c +++ b/engine/code/game/g_rankings.c @@ -898,7 +898,7 @@ void G_RankPickupPowerup( int self, int powerup ) } // ctf flags are treated as powerups - if( (powerup == PW_REDFLAG) || (powerup == PW_BLUEFLAG) || (powerup == PW_GREENFLAG) || (powerup == PW_YELLOWFLAG) ) + if( (powerup == PW_REDFLAG) || (powerup == PW_BLUEFLAG) ) { trap_RankReportInt( self, -1, QGR_KEY_FLAG_PICKUP, 1, 1 ); return; diff --git a/engine/code/game/g_target.c b/engine/code/game/g_target.c index 7b9bcfc6..f76235f0 100644 --- a/engine/code/game/g_target.c +++ b/engine/code/game/g_target.c @@ -74,10 +74,6 @@ void Use_target_remove_powerups( gentity_t *ent, gentity_t *other, gentity_t *ac Team_ReturnFlag( TEAM_RED ); } else if( activator->client->ps.powerups[PW_BLUEFLAG] ) { Team_ReturnFlag( TEAM_BLUE ); - } else if( activator->client->ps.powerups[PW_GREENFLAG] ) { - Team_ReturnFlag( TEAM_GREEN ); - } else if( activator->client->ps.powerups[PW_YELLOWFLAG] ) { - Team_ReturnFlag( TEAM_YELLOW ); } else if( activator->client->ps.powerups[PW_NEUTRALFLAG] ) { Team_ReturnFlag( TEAM_FREE ); } diff --git a/engine/code/game/g_team.c b/engine/code/game/g_team.c index 45f49eae..7e1684c4 100644 --- a/engine/code/game/g_team.c +++ b/engine/code/game/g_team.c @@ -457,12 +457,6 @@ void Team_CheckDroppedItem( gentity_t *dropped ) { else if( dropped->item->giTag == PW_BLUEFLAG ) { Team_SetFlagStatus( TEAM_BLUE, FLAG_DROPPED ); } - else if( dropped->item->giTag == PW_GREENFLAG ) { - Team_SetFlagStatus( TEAM_GREEN, FLAG_DROPPED ); - } - else if( dropped->item->giTag == PW_YELLOWFLAG ) { - Team_SetFlagStatus( TEAM_YELLOW, FLAG_DROPPED ); - } else if( dropped->item->giTag == PW_NEUTRALFLAG ) { Team_SetFlagStatus( TEAM_FREE, FLAG_DROPPED ); } @@ -713,17 +707,10 @@ void Team_CheckHurtCarrier(gentity_t *targ, gentity_t *attacker) if (!targ->client || !attacker->client) return; - if (targ->client->sess.sessionTeam == TEAM_RED || targ->client->sess.sessionTeam == TEAM_GREEN || targ->client->sess.sessionTeam == TEAM_YELLOW) + if (targ->client->sess.sessionTeam == TEAM_RED) flag_pw = PW_BLUEFLAG; - else if - (targ->client->sess.sessionTeam == TEAM_BLUE || targ->client->sess.sessionTeam == TEAM_GREEN || targ->client->sess.sessionTeam == TEAM_YELLOW) - flag_pw = PW_REDFLAG; - else if - (targ->client->sess.sessionTeam == TEAM_GREEN || targ->client->sess.sessionTeam == TEAM_RED || targ->client->sess.sessionTeam == TEAM_BLUE) - flag_pw = PW_YELLOWFLAG; - else if - (targ->client->sess.sessionTeam == TEAM_BLUE || targ->client->sess.sessionTeam == TEAM_RED || targ->client->sess.sessionTeam == TEAM_YELLOW) - flag_pw = PW_GREENFLAG; + else + flag_pw = PW_REDFLAG; #ifdef MISSIONPACK if (g_gametype.integer == GT_1FCTF) { @@ -878,13 +865,7 @@ void Team_FreeEntity( gentity_t *ent ) { } else if( ent->item->giTag == PW_BLUEFLAG ) { Team_ReturnFlag( TEAM_BLUE ); - } - else if( ent->item->giTag == PW_GREENFLAG ) { - Team_ReturnFlag( TEAM_GREEN ); } - else if( ent->item->giTag == PW_YELLOWFLAG ) { - Team_ReturnFlag( TEAM_YELLOW ); - } else if( ent->item->giTag == PW_NEUTRALFLAG ) { Team_ReturnFlag( TEAM_FREE ); } @@ -908,12 +889,6 @@ void Team_DroppedFlagThink(gentity_t *ent) { else if( ent->item->giTag == PW_BLUEFLAG ) { team = TEAM_BLUE; } - else if( ent->item->giTag == PW_GREENFLAG ) { - team = TEAM_GREEN; - } - else if( ent->item->giTag == PW_YELLOWFLAG ) { - team = TEAM_YELLOW; - } else if( ent->item->giTag == PW_NEUTRALFLAG ) { team = TEAM_FREE; } @@ -940,19 +915,12 @@ int Team_TouchOurFlag( gentity_t *ent, gentity_t *other, int team ) { } else { #endif - if (cl->sess.sessionTeam == TEAM_RED || cl->sess.sessionTeam == TEAM_GREEN || cl->sess.sessionTeam == TEAM_YELLOW) { + if (cl->sess.sessionTeam == TEAM_RED) { enemy_flag = PW_BLUEFLAG; - } - else if (cl->sess.sessionTeam == TEAM_RED || cl->sess.sessionTeam == TEAM_BLUE || cl->sess.sessionTeam == TEAM_GREEN) { - enemy_flag = PW_YELLOWFLAG; - } - else if (cl->sess.sessionTeam == TEAM_BLUE || cl->sess.sessionTeam == TEAM_GREEN || cl->sess.sessionTeam == TEAM_YELLOW) { + } else { enemy_flag = PW_REDFLAG; - } - else if (cl->sess.sessionTeam == TEAM_RED || cl->sess.sessionTeam == TEAM_BLUE || cl->sess.sessionTeam == TEAM_YELLOW) { - enemy_flag = PW_GREENFLAG; - } - + } + if ( ent->flags & FL_DROPPED_ITEM ) { // hey, it's not home. return it by teleporting it back PrintMsg( NULL, "%s" S_COLOR_WHITE " returned the %s flag!\n", @@ -1075,12 +1043,8 @@ int Team_TouchEnemyFlag( gentity_t *ent, gentity_t *other, int team ) { if (team == TEAM_RED) cl->ps.powerups[PW_REDFLAG] = INT_MAX; // flags never expire - else if (team == TEAM_BLUE) + else cl->ps.powerups[PW_BLUEFLAG] = INT_MAX; // flags never expire - else if (team == TEAM_GREEN) - cl->ps.powerups[PW_GREENFLAG] = INT_MAX; // flags never expire - else if (team == TEAM_YELLOW) - cl->ps.powerups[PW_YELLOWFLAG] = INT_MAX; // flags never expire Team_SetFlagStatus( team, FLAG_TAKEN ); #ifdef MISSIONPACK diff --git a/engine/code/game/g_weapon.c b/engine/code/game/g_weapon.c index caa304c5..7ef9dcfc 100644 --- a/engine/code/game/g_weapon.c +++ b/engine/code/game/g_weapon.c @@ -1128,8 +1128,8 @@ void FireWeapon( gentity_t *ent ) { trap_Trace( &tr, tr.endpos, mins, maxs, end, entNumber, CONTENTS_PLAYERCLIP | CONTENTS_BODY ); } -// tryout r604 - if ( count == 100000 ){ + + if ( count == 10000 ){ Com_Printf( "Detected long loop in verticle autoaiming\n" ); Com_Printf( "fraction %f, startsolid %i, contents %i, entityNum %i\n", tr.fraction, tr.startsolid, tr.contents, tr.entityNum ); } @@ -1272,8 +1272,8 @@ void FireAltWeapon( gentity_t *ent ) { trap_Trace( &tr, tr.endpos, mins, maxs, end, entNumber, CONTENTS_PLAYERCLIP | CONTENTS_BODY ); } -// tryout r604 - if ( count == 100000 ){ + + if ( count == 10000 ){ Com_Printf( "Detected long loop in verticle autoaiming\n" ); Com_Printf( "fraction %f, startsolid %i, contents %i, entityNum %i\n", tr.fraction, tr.startsolid, tr.contents, tr.entityNum ); } diff --git a/engine/code/game/inv.h b/engine/code/game/inv.h index fd8bb5ca..3366d68a 100644 --- a/engine/code/game/inv.h +++ b/engine/code/game/inv.h @@ -25,66 +25,64 @@ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA //armor #define INVENTORY_ARMOR 1 //weapons -#define INVENTORY_GAUNTLET 4 +#define INVENTORY_GAUNTLET 4 #define INVENTORY_SHOTGUN 5 -#define INVENTORY_MACHINEGUN 6 -#define INVENTORY_GRENADELAUNCHER 7 -#define INVENTORY_ROCKETLAUNCHER 8 -#define INVENTORY_LIGHTNING 9 -#define INVENTORY_RAILGUN 10 -#define INVENTORY_PLASMAGUN 11 -#define INVENTORY_BFG10K 12 -#define INVENTORY_GRAPPLINGHOOK 13 -#define INVENTORY_NAILGUN 14 -#define INVENTORY_PROXLAUNCHER 15 -#define INVENTORY_CHAINGUN 16 -#define INVENTORY_FLAMETHROWER 17 // rally +#define INVENTORY_MACHINEGUN 6 +#define INVENTORY_GRENADELAUNCHER 7 +#define INVENTORY_ROCKETLAUNCHER 8 +#define INVENTORY_LIGHTNING 9 +#define INVENTORY_RAILGUN 10 +#define INVENTORY_PLASMAGUN 11 +#define INVENTORY_BFG10K 12 +#define INVENTORY_GRAPPLINGHOOK 13 +#define INVENTORY_NAILGUN 14 +#define INVENTORY_PROXLAUNCHER 15 +#define INVENTORY_CHAINGUN 16 +#define INVENTORY_FLAMETHROWER 17 // rally //ammo -#define INVENTORY_SHELLS 18 -#define INVENTORY_BULLETS 19 -#define INVENTORY_GRENADES 20 -#define INVENTORY_CELLS 21 -#define INVENTORY_LIGHTNINGAMMO 22 -#define INVENTORY_ROCKETS 23 -#define INVENTORY_SLUGS 24 -#define INVENTORY_BFGAMMO 25 -#define INVENTORY_FLAMETHROWERAMMO 26 // rally -#define INVENTORY_NAILS 27 -#define INVENTORY_MINES 28 -#define INVENTORY_BELT 29 +#define INVENTORY_SHELLS 18 +#define INVENTORY_BULLETS 19 +#define INVENTORY_GRENADES 20 +#define INVENTORY_CELLS 21 +#define INVENTORY_LIGHTNINGAMMO 22 +#define INVENTORY_ROCKETS 23 +#define INVENTORY_SLUGS 24 +#define INVENTORY_BFGAMMO 25 +#define INVENTORY_FLAMETHROWERAMMO 26 // rally +#define INVENTORY_NAILS 27 +#define INVENTORY_MINES 28 +#define INVENTORY_BELT 29 //powerups -#define INVENTORY_HEALTH 30 -#define INVENTORY_TELEPORTER 31 -#define INVENTORY_MEDKIT 32 -#define INVENTORY_TURBO 33 // rally -#define INVENTORY_KAMIKAZE 34 -#define INVENTORY_PORTAL 35 -#define INVENTORY_INVULNERABILITY 36 -#define INVENTORY_QUAD 37 -#define INVENTORY_ENVIRONMENTSUIT 38 -#define INVENTORY_HASTE 39 -#define INVENTORY_INVISIBILITY 40 -#define INVENTORY_REGEN 41 +#define INVENTORY_HEALTH 30 +#define INVENTORY_TELEPORTER 31 +#define INVENTORY_MEDKIT 32 +#define INVENTORY_TURBO 33 // rally +#define INVENTORY_KAMIKAZE 34 +#define INVENTORY_PORTAL 35 +#define INVENTORY_INVULNERABILITY 36 +#define INVENTORY_QUAD 37 +#define INVENTORY_ENVIRONMENTSUIT 38 +#define INVENTORY_HASTE 39 +#define INVENTORY_INVISIBILITY 40 +#define INVENTORY_REGEN 41 //#define INVENTORY_FLIGHT -#define INVENTORY_SHIELD 42 // rally +#define INVENTORY_SHIELD 42 // rally //missionpack -#define INVENTORY_SCOUT 43 -#define INVENTORY_GUARD 44 -#define INVENTORY_DOUBLER 45 -#define INVENTORY_AMMOREGEN 46 -#define INVENTORY_REDFLAG 47 -#define INVENTORY_BLUEFLAG 48 -#define INVENTORY_GREENFLAG 49 -#define INVENTORY_YELLOWFLAG 50 -#define INVENTORY_NEUTRALFLAG 51 -#define INVENTORY_REDCUBE 52 -#define INVENTORY_BLUECUBE 53 +#define INVENTORY_SCOUT 43 +#define INVENTORY_GUARD 44 +#define INVENTORY_DOUBLER 45 +#define INVENTORY_AMMOREGEN 46 +#define INVENTORY_REDFLAG 47 +#define INVENTORY_BLUEFLAG 48 +#define INVENTORY_NEUTRALFLAG 49 +#define INVENTORY_REDCUBE 50 +#define INVENTORY_BLUECUBE 51 //rally rearfire weapons -#define INVENTORY_RWP_SMOKE 54 -#define INVENTORY_RWP_OIL 55 -#define INVENTORY_RWP_MINE 56 -#define INVENTORY_RWP_FLAME 57 -#define INVENTORY_RWP_BIO 58 +#define INVENTORY_RWP_SMOKE 52 +#define INVENTORY_RWP_OIL 53 +#define INVENTORY_RWP_MINE 54 +#define INVENTORY_RWP_FLAME 55 +#define INVENTORY_RWP_BIO 56 //enemy stuff #define ENEMY_HORIZONTAL_DIST 200 #define ENEMY_HEIGHT 201