Case carrier glowing removed. Ignorenum bug fixed

This commit is contained in:
Richard Allen 2002-08-07 16:13:33 +00:00
parent 5ba05f73f6
commit 2207a53a8e
4 changed files with 54 additions and 36 deletions

View file

@ -28,6 +28,9 @@
* Added the dynamic radio system * Added the dynamic radio system
* Hacked the bufferedsound system so radio sound overlap less * Hacked the bufferedsound system so radio sound overlap less
* No rcon stuff command alowed in matchmode * No rcon stuff command alowed in matchmode
* Ignorenum bug (ignoring player no. 0) fixed
* Case carrier glowing removed.
# List fixes here for the 2.1 release # List fixes here for the 2.1 release

View file

@ -5,6 +5,9 @@
//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------
// //
// $Log$ // $Log$
// Revision 1.42 2002/08/07 16:13:33 jbravo
// Case carrier glowing removed. Ignorenum bug fixed
//
// Revision 1.41 2002/07/22 06:30:52 niceass // Revision 1.41 2002/07/22 06:30:52 niceass
// cleaned up the powerup code // cleaned up the powerup code
// //
@ -2071,6 +2074,9 @@ static void CG_PlayerPowerups(centity_t * cent, refEntity_t * torso)
int powerups; int powerups;
clientInfo_t *ci; clientInfo_t *ci;
// JBravo: no glowing stuff in CTB
return;
powerups = cent->currentState.powerups; powerups = cent->currentState.powerups;
if (!powerups) { if (!powerups) {
return; return;

View file

@ -5,6 +5,9 @@
//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------
// //
// $Log$ // $Log$
// Revision 1.115 2002/08/07 16:13:33 jbravo
// Case carrier glowing removed. Ignorenum bug fixed
//
// Revision 1.114 2002/08/03 06:52:35 jbravo // Revision 1.114 2002/08/03 06:52:35 jbravo
// Fixed the plost3 sound in all radiopaks and now damage is only tracked for // Fixed the plost3 sound in all radiopaks and now damage is only tracked for
// players you hit that are not on your team // players you hit that are not on your team
@ -342,37 +345,6 @@ void TossClientItems(gentity_t * self)
// drop the weapon if not a gauntlet or machinegun // drop the weapon if not a gauntlet or machinegun
weapon = self->s.weapon; weapon = self->s.weapon;
// make a special check to see if they are changing to a new
// weapon that isn't the mg or gauntlet. Without this, a client
// can pick up a weapon, be killed, and not drop the weapon because
// their weapon change hasn't completed yet and they are still holding the MG.
//Blaze: No need to worry about the machinegun here so I removed weapon == WP_MACHINEGUN || or grappling hook so I removed this too
/*
if ( weapon == WP_GRAPPLING_HOOK ) {
if ( self->client->ps.weaponstate == WEAPON_DROPPING ) {
weapon = self->client->pers.cmd.weapon;
}
if ( !( self->client->ps.stats[STAT_WEAPONS] & ( 1 << weapon ) ) ) {
weapon = WP_NONE;
}
}
*/
//Blaze: dont need this check as we will be dropping everyhing, but just changed WP_MACHINEGUN to WP_PISTOL just in case, also removed grappling hook check
//Elder:
//don't drop akimbos (maybe drop another pistol), knives, or grenades
//and don't drop knife - that's handled later
//Maybe we should check the player's weapon inventory instead
/*
if ( weapon != WP_GRENADE && weapon != WP_AKIMBO &&
weapon != WP_KNIFE && weapon > WP_PISTOL && self->client->ps.ammo[ weapon ] ) {
// find the item type for this weapon
item = BG_FindItemForWeapon( weapon );
// spawn the item
Drop_Item( self, item, 0 );
}
*/
//Elder: run through player STAT_WEAPONS and drop any unique weapons //Elder: run through player STAT_WEAPONS and drop any unique weapons
//That way, we can also account for servers with extra weapons //That way, we can also account for servers with extra weapons
//BTW, that means no cheating to get all weapons or it'll spawn mad!! //BTW, that means no cheating to get all weapons or it'll spawn mad!!
@ -1232,7 +1204,7 @@ void player_die(gentity_t * self, gentity_t * inflictor, gentity_t * attacker, i
// Elder: Statistics tracking // Elder: Statistics tracking
//Blaze: make sure the game is in progress before recording stats //Blaze: make sure the game is in progress before recording stats
if (level.team_round_going) { if ((g_gametype.integer == GT_TEAMPLAY && level.team_round_going) || g_gametype.integer != GT_TEAMPLAY) {
switch (meansOfDeath) { switch (meansOfDeath) {
case MOD_KNIFE: case MOD_KNIFE:
if (attacker && attacker->client) if (attacker && attacker->client)
@ -1296,7 +1268,7 @@ void player_die(gentity_t * self, gentity_t * inflictor, gentity_t * attacker, i
} }
} }
self->enemy = attacker; self->enemy = attacker;
if (level.team_round_going) { if ((g_gametype.integer == GT_TEAMPLAY && level.team_round_going) || g_gametype.integer != GT_TEAMPLAY) {
//Makro - crash bug fix //Makro - crash bug fix
if ((self->client != NULL) && (attacker->client != NULL)) { if ((self->client != NULL) && (attacker->client != NULL)) {
self->client->ps.persistant[PERS_KILLED]++; self->client->ps.persistant[PERS_KILLED]++;
@ -1393,7 +1365,7 @@ void player_die(gentity_t * self, gentity_t * inflictor, gentity_t * attacker, i
// Unless we are in teamplay // Unless we are in teamplay
if (meansOfDeath == MOD_SUICIDE) { if (meansOfDeath == MOD_SUICIDE) {
// Elder: Statistics tracking // Elder: Statistics tracking
if (level.team_round_going) { if ((g_gametype.integer == GT_TEAMPLAY && level.team_round_going) || g_gametype.integer != GT_TEAMPLAY) {
self->client->pers.records[REC_SUICIDES]++; self->client->pers.records[REC_SUICIDES]++;
self->client->pers.records[REC_KILLS]--; self->client->pers.records[REC_KILLS]--;
} }

View file

@ -5,6 +5,9 @@
//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------
// //
// $Log$ // $Log$
// Revision 1.128 2002/08/07 16:13:33 jbravo
// Case carrier glowing removed. Ignorenum bug fixed
//
// Revision 1.127 2002/08/07 03:49:44 jbravo // Revision 1.127 2002/08/07 03:49:44 jbravo
// No rcon stuff use allowed in matchmode // No rcon stuff use allowed in matchmode
// //
@ -1038,7 +1041,39 @@ void RQ3_Cmd_Choose_f(gentity_t * ent)
} }
} }
/* Drop weapon or Item ala. AQ */ /* Drop weapon, Item or case ala. AQ */
void Cmd_Dropcase_f(gentity_t * ent)
{
gitem_t *item;
if (!ent->client)
return;
if (!ent->client->ps.powerups[PW_REDFLAG] && !ent->client->ps.powerups[PW_BLUEFLAG]) {
trap_SendServerCommand(ent - g_entities, va("print \"Go get the enemy case and try again.\n\""));
return;
}
item = NULL;
if (ent->client->sess.sessionTeam == TEAM_RED) {
item = BG_FindItemForPowerup(PW_BLUEFLAG);
if (item) {
ent->client->ps.powerups[PW_BLUEFLAG] = 0;
dropWeapon(ent, item, 0, FL_DROPPED_ITEM | FL_THROWN_ITEM);
ent->client->uniqueItems--;
}
} else if (ent->client->sess.sessionTeam == TEAM_BLUE) {
item = BG_FindItemForPowerup(PW_REDFLAG);
if (item) {
ent->client->ps.powerups[PW_REDFLAG] = 0;
dropWeapon(ent, item, 0, FL_DROPPED_ITEM | FL_THROWN_ITEM);
ent->client->uniqueItems--;
}
} else {
trap_SendServerCommand(ent - g_entities, va("print \"Huh? You dont have a flag to drop!\n\""));
}
}
void RQ3_Cmd_Drop_f(gentity_t * ent) void RQ3_Cmd_Drop_f(gentity_t * ent)
{ {
char cmd[MAX_TOKEN_CHARS]; char cmd[MAX_TOKEN_CHARS];
@ -1053,6 +1088,8 @@ void RQ3_Cmd_Drop_f(gentity_t * ent)
Cmd_DropItem_f(ent); Cmd_DropItem_f(ent);
} else if (Q_stricmp(cmd, "weapon") == 0) { } else if (Q_stricmp(cmd, "weapon") == 0) {
Cmd_DropWeapon_f(ent); Cmd_DropWeapon_f(ent);
} else if (Q_stricmp(cmd, "case") == 0) {
Cmd_Dropcase_f(ent);
} else { } else {
trap_SendServerCommand(ent - g_entities, va("print \"unknown item: %s\n\"", cmd)); trap_SendServerCommand(ent - g_entities, va("print \"unknown item: %s\n\"", cmd));
} }
@ -2434,7 +2471,7 @@ void Cmd_Ignorenum_f(gentity_t * self)
trap_Argv(1, arg, sizeof(arg)); trap_Argv(1, arg, sizeof(arg));
i = atoi(arg); i = atoi(arg);
if (i && i <= level.maxclients) { if (i <= level.maxclients) {
target = &g_entities[i]; target = &g_entities[i];
if (target && target->client && target != self && target->inuse) if (target && target->client && target != self && target->inuse)
RQ3_AddOrDelIgnoreSubject(self, target, qfalse); RQ3_AddOrDelIgnoreSubject(self, target, qfalse);