From f5f25895d89d48470df9ca140d7a4f4d636f596b Mon Sep 17 00:00:00 2001 From: UberGames Date: Thu, 9 Jun 2011 13:31:41 +0200 Subject: [PATCH] fixed all compile warning in game --- game/ai_dmq3.c | 2 +- game/g_active.c | 6 ++--- game/g_bot.c | 2 +- game/g_client.c | 7 ++++-- game/g_cmds.c | 60 +++++++++++++++++++++++++----------------------- game/g_combat.c | 6 ++--- game/g_items.c | 3 ++- game/g_local.h | 2 +- game/g_main.c | 30 ++++++++++++------------ game/g_mover.c | 18 +++++++++------ game/g_target.c | 2 +- game/g_team.c | 4 ++-- game/g_ui.c | 2 +- game/g_weapon.c | 4 ++-- game/lua_game.c | 4 ++-- stefgame.suo | Bin 197632 -> 203776 bytes 16 files changed, 81 insertions(+), 71 deletions(-) diff --git a/game/ai_dmq3.c b/game/ai_dmq3.c index a87fd00..b15abd0 100644 --- a/game/ai_dmq3.c +++ b/game/ai_dmq3.c @@ -2114,7 +2114,7 @@ int BotEntityToActivate(int entitynum) { return 0; } trap_AAS_ValueForBSPEpairKey(ent, "classname", classname, sizeof(classname)); - if (!classname) { + if (!classname[0]) { BotAI_Print(PRT_ERROR, "BotEntityToActivate: entity with model %s has no classname\n", model); return 0; } diff --git a/game/g_active.c b/game/g_active.c index 25e39e3..b6dc3cb 100644 --- a/game/g_active.c +++ b/game/g_active.c @@ -123,7 +123,7 @@ void TryUse( gentity_t *ent ) #endif return; } - else if ( target && target->s.number == ENTITYNUM_WORLD || (target->s.pos.trType == TR_STATIONARY && !(trace.surfaceFlags & SURF_NOIMPACT) && !target->takedamage) ) + else if ( (target && target->s.number == ENTITYNUM_WORLD) || (target->s.pos.trType == TR_STATIONARY && !(trace.surfaceFlags & SURF_NOIMPACT) && !target->takedamage) ) { //switch( ent->client->sess.sessionClass ) //{ @@ -595,7 +595,7 @@ char *TimedMessage( void ){ } //TiM: Cheap hack to stop it freezing if string0 is empty. THe above condition don't work here - if ( ( i == lastTimedMessage == 1 ) && !strlen( rpg_message[i-1] ) ) { + if ( ((i == 1 && lastTimedMessage == 1) && !strlen( rpg_message[i-1] )) ) { return NULL; } @@ -1499,7 +1499,7 @@ void CreateShield(gentity_t *ent) int height, posWidth, negWidth, halfWidth = 0; qboolean xaxis; int paramData = 0; - static int shieldID; + //static int shieldID; //gentity_t *emitter; // trace upward to find height of shield diff --git a/game/g_bot.c b/game/g_bot.c index b92aea5..a4acd51 100644 --- a/game/g_bot.c +++ b/game/g_bot.c @@ -398,7 +398,7 @@ void G_CheckMinimumPlayers( void ) { } } - if ( g_pModAssimilation.integer != 0 && numKilled != 0 || g_pModElimination.integer != 0 && numKilled != 0 ) + if ( (g_pModAssimilation.integer != 0 && numKilled != 0) || (g_pModElimination.integer != 0 && numKilled != 0) ) { return; } diff --git a/game/g_client.c b/game/g_client.c index 4c14df2..4b451b9 100644 --- a/game/g_client.c +++ b/game/g_client.c @@ -1379,6 +1379,8 @@ void SetCSTeam( team_t team, char *teamname ) case TEAM_RED: trap_SetConfigstring( CS_RED_GROUP, teamname ); break; + default: // make gcc happy + break; } } /* @@ -1744,7 +1746,8 @@ void ClientUserinfoChanged( int clientNum ) { } break; } - + default: + break; } if ( g_gametype.integer >= GT_TEAM && sess->sessionTeam == TEAM_SPECTATOR ) { // don't ever use a default skin in teamplay, it would just waste memory @@ -4000,7 +4003,7 @@ void ClientSpawn(gentity_t *ent, int rpgx_spawn, qboolean fromDeath ) { //body->s.apos.trBase[PITCH] = 0; //body->s.apos.trBase[ROLL] = 0; - /*AngleVectors( body->s.apos.trBase, f, r, u ); + AngleVectors( body->s.apos.trBase, f, r, u ); VectorMA( pad->r.currentOrigin, offset[0], f, vec ); VectorMA( vec, offset[1], r, vec ); VectorMA( vec, offset[2], u, vec ); diff --git a/game/g_cmds.c b/game/g_cmds.c index 584b30d..1bb66b6 100644 --- a/game/g_cmds.c +++ b/game/g_cmds.c @@ -6,6 +6,8 @@ //#include +static void G_SayTo( gentity_t *ent, gentity_t *other, int mode, int color, const char *name, const char *message ); + extern void G_CheckReplaceQueen( int clientNum ); extern qboolean PlaceDecoy( gentity_t *ent ); @@ -86,7 +88,7 @@ RPG-X Addition Phenix 14/06/2004 ===================*/ -static void RPGX_SendVersion( gentity_t *other ) { +/*static void RPGX_SendVersion( gentity_t *other ) { if (!other) { return; } @@ -99,7 +101,7 @@ static void RPGX_SendVersion( gentity_t *other ) { //AWAYS UPDATE! - Version No. - Complier Name - Complier Date trap_SendServerCommand( other-g_entities, va("chat \"%c ^1RPG-X: Version ^7%s ^1- ^7%s ^1- ^7%s\"", Q_COLOR_ESCAPE, RPGX_VERSION, RPGX_COMPILEDBY, RPGX_COMPILEDATE)); -} +}*/ /*static void RPGX_SendRcon( gentity_t *other ) { //char buf[144]; @@ -142,7 +144,7 @@ static void RPGX_SendVersion( gentity_t *other ) { //TiM: Removed for 'finnal' release :) }*/ -static void RPGX_SendHelp( gentity_t *other ) { +/*static void RPGX_SendHelp( gentity_t *other ) { if (!other) { return; } @@ -154,9 +156,9 @@ static void RPGX_SendHelp( gentity_t *other ) { } trap_SendServerCommand( other-g_entities, "chat \"^1!version = Sends Server Version. !os = Sends OS of Server\""); -} +}*/ -static void RPGX_SendOSVersion( gentity_t * other) +/*static void RPGX_SendOSVersion( gentity_t * other) { char buf[144]; @@ -173,9 +175,9 @@ static void RPGX_SendOSVersion( gentity_t * other) trap_Cvar_VariableStringBuffer("version", buf, sizeof(buf)); //finish me - /* - strstr(buf, "win") - */ + + //strstr(buf, "win") + if (strstr (buf, "win") != 0 ) { trap_SendServerCommand( other-g_entities, "chat \"^1EXE Operating System: ^7Windows\"" ); } else if (strstr (buf, "linux") != 0 ) { @@ -187,7 +189,7 @@ static void RPGX_SendOSVersion( gentity_t * other) } else { trap_SendServerCommand( other-g_entities, "chat \"^1EXE Operating System: ^7Unkown\"" ); } -} +}*/ /*=================== End Addition ====================*/ @@ -1510,7 +1512,7 @@ qboolean SetTeam( gentity_t *ent, char *s ) { } else { - if ( g_pModElimination.integer != 0 && numKilled == 0 || g_pModElimination.integer == 0 ) + if ( (g_pModElimination.integer != 0 && numKilled == 0) || g_pModElimination.integer == 0 ) { team = TEAM_FREE; } @@ -2118,7 +2120,7 @@ static void Cmd_Team_f( gentity_t *ent ) { trap_Argv( 1, s, sizeof( s ) ); - if ( !s || s[0] != 's' ) + if ( !s[0] || s[0] != 's' ) {//not trying to become a spectator /*if ( g_pModElimination.integer ) { @@ -2577,7 +2579,7 @@ static void Cmd_Flight_f( gentity_t *ent ) Cmd_Follow_f ================= */ -static void Cmd_Follow_f( gentity_t *ent ) { +/*static void Cmd_Follow_f( gentity_t *ent ) { int i; char arg[MAX_TOKEN_CHARS]; playerState_t *ps, *ps2; @@ -2586,10 +2588,10 @@ static void Cmd_Follow_f( gentity_t *ent ) { {//bots can't follow! return; } - /*else + else { return; - }*/ + } if ( trap_Argc() != 2 ) { if ( ent->client->sess.spectatorState == SPECTATOR_FOLLOW ) { @@ -2624,7 +2626,7 @@ static void Cmd_Follow_f( gentity_t *ent ) { return; // } -/* // if they are playing a tournement game, count as a loss + // if they are playing a tournement game, count as a loss if ( g_gametype.integer == GT_TOURNAMENT && ent->client->sess.sessionTeam == TEAM_FREE ) { ent->client->sess.losses++; } @@ -2632,12 +2634,12 @@ static void Cmd_Follow_f( gentity_t *ent ) { // first set them to spectator if ( ent->client->sess.sessionTeam != TEAM_SPECTATOR ) { SetTeam( ent, "spectator" ); - }*/ + } //ent->client->sess.spectatorState = SPECTATOR_FOLLOW; //ent->client->sess.spectatorClient = i; -} +}*/ /* ================= @@ -2830,7 +2832,7 @@ static void G_SayTo( gentity_t *ent, gentity_t *other, int mode, int color, cons name, Q_COLOR_ESCAPE, color, message)); } -static void G_ModifyChatTextForRace(char *chatText, int race) { +/*static void G_ModifyChatTextForRace(char *chatText, int race) { char c; int i, min; @@ -2853,9 +2855,9 @@ static void G_ModifyChatTextForRace(char *chatText, int race) { } chatText[i] = c; } -} +}*/ -static void G_LanguageMod(char *chatText, int clientNum, int targetNum) { +/*static void G_LanguageMod(char *chatText, int clientNum, int targetNum) { gentity_t *ent = &g_entities[clientNum]; gentity_t *target = &g_entities[targetNum]; languageData_t *targetLang = target->client->languages; @@ -2868,7 +2870,7 @@ static void G_LanguageMod(char *chatText, int clientNum, int targetNum) { G_ModifyChatTextForRace(chatText, entLang->language); } } -} +}*/ static void G_Say( gentity_t *ent, gentity_t *target, int mode, const char *chatText ) { int j; @@ -6926,14 +6928,14 @@ void Cmd_BeamToPlayer_f( gentity_t *ent ) { qboolean validTraceFound = qfalse; int startPoint; int totalCount; - int offsetRA[8][2] = { 1, 0, //offsets for each beam test location - 1, -1, - 0, -1, - -1, -1, - -1, 0, - -1, 1, - 0, 1, - 1, 1 + int offsetRA[8][2] = { { 1, 0 }, //offsets for each beam test location + { 1, -1 }, + { 0, -1 }, + { -1, -1 }, + { -1, 0 }, + { -1, 1 }, + { 0, 1 }, + { 1, 1 } }; int viewAngleHeading[8] = { 180, 135, 90, 45, 0, -45, -90, -135 }; qboolean everyone = qfalse; diff --git a/game/g_combat.c b/game/g_combat.c index f351124..e53fca3 100644 --- a/game/g_combat.c +++ b/game/g_combat.c @@ -356,7 +356,7 @@ void player_die( gentity_t *self, gentity_t *inflictor, gentity_t *attacker, int contents = trap_PointContents( self->r.currentOrigin, -1 ); if(rpg_medicsrevive.integer == 1 && !( contents & CONTENTS_NODROP ) && (meansOfDeath != MOD_TRIGGER_HURT)){ - static int deathNum; + //static int deathNum; int anim; char *classname = NULL; gentity_t *detpack = NULL; @@ -1574,8 +1574,8 @@ void G_Damage( gentity_t *targ, gentity_t *inflictor, gentity_t *attacker, } // shootable doors / buttons don't actually have any health - if ( targ->s.eType == ET_MOVER && Q_stricmp("func_breakable", targ->classname) != 0 && Q_stricmp("misc_model_breakable", targ->classname) != 0 || - targ->s.eType == ET_MOVER_STR && Q_stricmp("func_breakable", targ->classname) != 0 && Q_stricmp("misc_model_breakable", targ->classname) != 0) //RPG-X | GSIO01 | 13/05/2009 + if ( (targ->s.eType == ET_MOVER && Q_stricmp("func_breakable", targ->classname) != 0 && Q_stricmp("misc_model_breakable", targ->classname) != 0) || + (targ->s.eType == ET_MOVER_STR && Q_stricmp("func_breakable", targ->classname) != 0 && Q_stricmp("misc_model_breakable", targ->classname) != 0)) //RPG-X | GSIO01 | 13/05/2009 { if ( !Q_stricmp( targ->classname, "func_forcefield" ) ) { diff --git a/game/g_items.c b/game/g_items.c index 02a08b1..c68ef8a 100644 --- a/game/g_items.c +++ b/game/g_items.c @@ -65,7 +65,7 @@ vmCvar_t *Min_Weapons[WP_NUM_WEAPONS] = { // RPG-X: Marcin: Definitions of the PADD messaging system data structures - 06/12/2008 -paddData_t paddData[PADD_DATA_MAX] = { 0 }; +paddData_t paddData[PADD_DATA_MAX]; int paddDataNum = 0; int numTotalDropped = 0; @@ -95,6 +95,7 @@ int Max_Weapon(int num) Min_Weapon RPG-X | Marcin | 06/12/2008 =============== +*/ /** * Get the minimum ammount of weapons a player can carry for a weapon. * \param num weapon number (WP_...) diff --git a/game/g_local.h b/game/g_local.h index 256425b..84ca874 100644 --- a/game/g_local.h +++ b/game/g_local.h @@ -965,7 +965,7 @@ void SP_fx_spark( gentity_t *ent ); // // g_cmds.c // -static void G_SayTo( gentity_t *ent, gentity_t *other, int mode, int color, const char *name, const char *message ); +//static void G_SayTo( gentity_t *ent, gentity_t *other, int mode, int color, const char *name, const char *message ); // // g_pweapon.c diff --git a/game/g_main.c b/game/g_main.c index 5bb1509..23f9590 100644 --- a/game/g_main.c +++ b/game/g_main.c @@ -750,25 +750,25 @@ void QDECL G_Error( const char *fmt, ... ) { stringID_table_t WeaponTable[] = { - ENUM2STRING(WP_TRICORDER), - ENUM2STRING(WP_PADD), - ENUM2STRING(WP_COFFEE), + { ENUM2STRING(WP_TRICORDER) }, + { ENUM2STRING(WP_PADD) }, + { ENUM2STRING(WP_COFFEE) }, - ENUM2STRING(WP_PHASER), - ENUM2STRING(WP_COMPRESSION_RIFLE), - ENUM2STRING(WP_TR116), + { ENUM2STRING(WP_PHASER) }, + { ENUM2STRING(WP_COMPRESSION_RIFLE) }, + { ENUM2STRING(WP_TR116) }, - ENUM2STRING(WP_GRENADE_LAUNCHER), - ENUM2STRING(WP_QUANTUM_BURST), - ENUM2STRING(WP_DISRUPTOR), + { ENUM2STRING(WP_GRENADE_LAUNCHER) }, + { ENUM2STRING(WP_QUANTUM_BURST) }, + { ENUM2STRING(WP_DISRUPTOR) }, - ENUM2STRING(WP_MEDKIT), - ENUM2STRING(WP_VOYAGER_HYPO), - ENUM2STRING(WP_DERMAL_REGEN), + { ENUM2STRING(WP_MEDKIT) }, + { ENUM2STRING(WP_VOYAGER_HYPO) }, + { ENUM2STRING(WP_DERMAL_REGEN) }, - ENUM2STRING(WP_TOOLKIT), - ENUM2STRING(WP_HYPERSPANNER), - NULL, -1 + { ENUM2STRING(WP_TOOLKIT) }, + { ENUM2STRING(WP_HYPERSPANNER) }, + { NULL, -1 } }; /************************** diff --git a/game/g_mover.c b/game/g_mover.c index 8f4ca1c..49860e0 100644 --- a/game/g_mover.c +++ b/game/g_mover.c @@ -422,6 +422,8 @@ void ROT_SetMoverState( gentity_t *ent, moverState_t moverState, int time ) VectorScale( delta, f, ent->s.apos.trDelta ); ent->s.apos.trType = TR_LINEAR_STOP; break; + default: // to make gcc happy + break; } BG_EvaluateTrajectory( &ent->s.apos, level.time, ent->r.currentAngles ); } @@ -521,6 +523,8 @@ void SetMoverState( gentity_t *ent, moverState_t moverState, int time ) { case MOVER_LUA: break; #endif + default: // to make gcc happy + break; } BG_EvaluateTrajectory( &ent->s.pos, level.time, ent->r.currentOrigin ); BG_EvaluateTrajectory( &ent->s.apos, level.time, ent->r.currentAngles ); @@ -868,8 +872,8 @@ void Use_BinaryMover( gentity_t *ent, gentity_t *other, gentity_t *activator ) { } //GSIO01 | 09/05/2009: do engage if door is admin only and player isn admin - if(!Q_stricmp(ent->classname, "func_door") && ent->spawnflags & 128 - || !Q_stricmp(ent->classname, "func_door_rotating") && ent->spawnflags & 64) { + if((!Q_stricmp(ent->classname, "func_door") && (ent->spawnflags & 128)) + || (!Q_stricmp(ent->classname, "func_door_rotating") && (ent->spawnflags & 64))) { if(activator && !IsAdmin(activator)) return; } @@ -1401,8 +1405,8 @@ void Think_SpawnNewDoorTrigger( gentity_t *ent ) { } // should we have a big old trigger volume, or a small one? - if(ent->spawnflags & 256 && !Q_stricmp(ent->classname, "func_door") || - ent->spawnflags & 128 && !Q_stricmp(ent->classname, "func_door_rotating")) { + if(((ent->spawnflags & 256) && !Q_stricmp(ent->classname, "func_door")) || + ((ent->spawnflags & 128) && !Q_stricmp(ent->classname, "func_door_rotating"))) { maxs[best] += 12; mins[best] -= 12; } @@ -2350,8 +2354,8 @@ static void forcefield_touch( gentity_t *ent, gentity_t *other, trace_t *trace ) ent->r.svFlags &= ~SVF_NOCLIENT; ent->s.eFlags &= ~EF_NODRAW; - if ( (ent->spawnflags & 4) && /*g_classData[other->client->sess.sessionClass].isAdmin*/ IsAdmin(other) || - (rpg_borgAdapt.integer && rpg_borgMoveThroughFields.integer && IsBorg(other) && !(ent->spawnflags & 256)) ) + if ( ((ent->spawnflags & 4) && IsAdmin(other)) || + ((rpg_borgAdapt.integer && rpg_borgMoveThroughFields.integer && IsBorg(other) && !(ent->spawnflags & 256))) ) { FieldGoNotSolid( ent ); } @@ -3149,7 +3153,7 @@ void Reached_AdvancedMover(gentity_t *ent) { ent->damage = 0; if(!touched->targetname2 && !(ent->spawnflags & 1)) ent->damage = 1; - if(!touched->target && touched->angle || !touched->targetname2 && !(ent->spawnflags & 1) && touched->angle) + if((!touched->target && touched->angle) || (!touched->targetname2 && !(ent->spawnflags & 1) && touched->angle)) bypass = qtrue; if( touched->wait < 0) { diff --git a/game/g_target.c b/game/g_target.c index 21f2da7..addb1e3 100644 --- a/game/g_target.c +++ b/game/g_target.c @@ -1040,7 +1040,7 @@ static void target_turbolift_endMove ( gentity_t *ent ) #ifdef XTRA // check for shader remaps if(rpg_calcLiftTravelDuration.integer) { - if(ent->truename && otherLift->truename || ent->falsename && otherLift->falsename) { + if((ent->truename && otherLift->truename) || (ent->falsename && otherLift->falsename)) { f = level.time * 0.001; AddRemap(ent->targetShaderName, ent->targetShaderName, f); AddRemap(otherLift->targetShaderName, otherLift->targetShaderName, f); diff --git a/game/g_team.c b/game/g_team.c index 82fb057..470809e 100644 --- a/game/g_team.c +++ b/game/g_team.c @@ -755,9 +755,9 @@ gentity_t *SelectCTFSpawnPoint ( gentity_t *ent, team_t team, int teamstate, vec } /*---------------------------------------------------------------------------*/ -static int QDECL SortClients( const void *a, const void *b ) { +/*static int QDECL SortClients( const void *a, const void *b ) { return *(int *)a - *(int *)b; -} +}*/ /* ================== diff --git a/game/g_ui.c b/game/g_ui.c index 71b8ed8..0b464b5 100644 --- a/game/g_ui.c +++ b/game/g_ui.c @@ -67,7 +67,7 @@ void ui_transporter_use(gentity_t *ent, gentity_t *other, gentity_t *activator) */ void ui_transporter_setup(gentity_t *ent) { //int i; - gentity_t *target; + gentity_t *target = NULL; target = G_Find(target, FOFS(targetname), ent->target); diff --git a/game/g_weapon.c b/game/g_weapon.c index 997da48..47640a6 100644 --- a/game/g_weapon.c +++ b/game/g_weapon.c @@ -500,7 +500,7 @@ void IMODHit(qboolean alt_fire, gentity_t *traceEnt, gentity_t *ent, vec3_t d_di if (alt_fire) { ent->client->accurateCount++; - /*if ( ent->client->accurateCount >= 2 ) + if ( ent->client->accurateCount >= 2 ) { ent->client->accurateCount -= 2; ent->client->ps.persistant[PERS_REWARD_COUNT]++; @@ -642,7 +642,7 @@ void FireScavengerBullet( gentity_t *ent, vec3_t start, vec3_t dir ) grenade->parent = ent; grenade->damage = SCAV_ALT_DAMAGE*DMG_VAR*s_quadFactor; grenade->splashDamage = SCAV_ALT_SPLASH_DAM*s_quadFactor; - grenade->splashRadius = SCAV_ALT_SPLASH_RAD;//*s_quadFactor; + grenade->splashRadius = SCAV_ALT_SPLASH_RAD;// *s_quadFactor; grenade->methodOfDeath = MOD_SCAVENGER_ALT; grenade->splashMethodOfDeath = MOD_SCAVENGER_ALT_SPLASH; grenade->clipmask = MASK_SHOT; diff --git a/game/lua_game.c b/game/lua_game.c index e3cd6e6..4162258 100644 --- a/game/lua_game.c +++ b/game/lua_game.c @@ -279,9 +279,9 @@ static int Game_AlertAddShader(lua_State *L) { // game.Alert(entity ent, integer target, boolean silent) static int Game_Alert(lua_State *L) { - lent_t *lent; + /*lent_t *lent; int current, target; - qboolean silent; + qboolean silent;*/ return 0; } diff --git a/stefgame.suo b/stefgame.suo index 5da9c9beb6373b10db1c258702dd0b75fabca6b3..dfad91798bdf86ca82369677d91a1b5071d6fb6f 100644 GIT binary patch delta 7143 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 O;iw$F{pc+^7XAe$^jtCk delta 8839 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