mirror of
https://github.com/ReactionQuake3/reaction.git
synced 2024-11-11 15:52:30 +00:00
Loading screen. Jump kicks. Bot stuff
This commit is contained in:
parent
42928c4a67
commit
455303ef72
6 changed files with 311 additions and 146 deletions
|
@ -5,6 +5,9 @@
|
|||
//-----------------------------------------------------------------------------
|
||||
//
|
||||
// $Log$
|
||||
// Revision 1.20 2002/05/02 23:05:25 makro
|
||||
// Loading screen. Jump kicks. Bot stuff
|
||||
//
|
||||
// Revision 1.19 2002/05/02 12:44:58 makro
|
||||
// Customizable color for the loading screen text. Bot stuff
|
||||
//
|
||||
|
@ -99,17 +102,7 @@
|
|||
//Makro - to get rid of the warnings
|
||||
void Cmd_Bandage (gentity_t *ent);
|
||||
void Cmd_DropItem_f(gentity_t *ent);
|
||||
gentity_t *SelectRandomDeathmatchSpawnPoint( void );
|
||||
|
||||
int FindHumanTeamLeader(bot_state_t *bs);
|
||||
void BotVoiceChat_FollowMe(bot_state_t *bs, int client, int mode);
|
||||
|
||||
//From ai_dmq3.c
|
||||
void VectorTargetDist(vec3_t src, vec3_t dest, int dist, vec3_t final);
|
||||
void BotAttack(bot_state_t *bs);
|
||||
bot_moveresult_t BotMoveTo(bot_state_t *bs, vec3_t dest);
|
||||
void BotMoveTowardsEnt(bot_state_t *bs, vec3_t dest, int dist);
|
||||
|
||||
void Cmd_DropWeapon_f(gentity_t *ent);
|
||||
|
||||
//goal flag, see be_ai_goal.h for the other GFL_*
|
||||
#define GFL_AIR 128
|
||||
|
@ -119,15 +112,6 @@ char nodeswitch[MAX_NODESWITCHES+1][144];
|
|||
|
||||
#define LOOKAHEAD_DISTANCE 300
|
||||
|
||||
/*
|
||||
==================
|
||||
BotRespawn
|
||||
|
||||
Added by Makro
|
||||
Replaces trap_EA_respawn
|
||||
==================
|
||||
*/
|
||||
|
||||
/*
|
||||
==================
|
||||
BotResetNodeSwitches
|
||||
|
@ -283,12 +267,25 @@ int BotNearbyGoal(bot_state_t *bs, int tfl, bot_goal_t *ltg, float range) {
|
|||
|
||||
/*
|
||||
==================
|
||||
RQ3_Bot_SpecialWeapon
|
||||
RQ3_Bot_WeaponToDrop
|
||||
|
||||
Added by Makro
|
||||
==================
|
||||
*/
|
||||
int RQ3_Bot_SpecialWeapon(bot_state_t *bs) {
|
||||
int RQ3_Bot_WeaponToDrop(bot_state_t *bs) {
|
||||
if (bs->cur_ps.weapon <= WP_NONE || bs->cur_ps.weapon >= WP_NUM_WEAPONS)
|
||||
return WP_NONE;
|
||||
if (bs->cur_ps.weapon == WP_PISTOL || bs->cur_ps.weapon == WP_KNIFE ||
|
||||
bs->cur_ps.weapon == WP_AKIMBO || bs->cur_ps.weapon == WP_GRENADE) {
|
||||
//no special weapon selected
|
||||
if (bs->inventory[INVENTORY_M4]) return WP_M4;
|
||||
else if (bs->inventory[INVENTORY_M3]) return WP_M3;
|
||||
else if (bs->inventory[INVENTORY_MP5]) return WP_MP5;
|
||||
else if (bs->inventory[INVENTORY_HANDCANNON]) return WP_HANDCANNON;
|
||||
else if (bs->inventory[INVENTORY_SSG3000]) return WP_SSG3000;
|
||||
} else {
|
||||
return bs->cur_ps.weapon;
|
||||
}
|
||||
return WP_NONE;
|
||||
}
|
||||
|
||||
|
@ -374,6 +371,11 @@ Added by Makro
|
|||
==================
|
||||
*/
|
||||
qboolean RQ3_Bot_NeedToDropStuff(bot_state_t *bs, bot_goal_t *goal) {
|
||||
float attack_skill = trap_Characteristic_BFloat(bs->character, CHARACTERISTIC_ATTACK_SKILL, 0, 1);
|
||||
|
||||
//check the bot skill
|
||||
if ( random() < (1 - attack_skill) ) return qfalse;
|
||||
|
||||
//if the bot doesn't have an item or it didn't reach one
|
||||
if ( !g_entities[goal->entitynum].item )
|
||||
return qfalse;
|
||||
|
@ -384,23 +386,28 @@ qboolean RQ3_Bot_NeedToDropStuff(bot_state_t *bs, bot_goal_t *goal) {
|
|||
else {
|
||||
holdable_t oldItem = bg_itemlist[bs->cur_ps.stats[STAT_HOLDABLE_ITEM]].giTag;
|
||||
holdable_t newItem = g_entities[goal->entitynum].item->giTag;
|
||||
int i, oldScore, newScore;
|
||||
int i, oldScore, newScore, dropWeapon = WP_NONE;
|
||||
|
||||
//if the two items are identical
|
||||
if ( oldItem == newItem ) return qfalse;
|
||||
//if the bot drops the bandolier a weapon might be dropped, too
|
||||
if ( oldItem == HI_BANDOLIER && g_entities[bs->entitynum].client->uniqueWeapons > g_RQ3_maxWeapons.integer )
|
||||
dropWeapon = RQ3_Bot_WeaponToDrop(bs);
|
||||
|
||||
newScore = oldScore = 0;
|
||||
//check all the weapons
|
||||
for ( i = 0; i < MAX_WEAPONS; i++ ) {
|
||||
for ( i = WP_NONE+1; i < MAX_WEAPONS; i++ ) {
|
||||
//if the bot has the weapon
|
||||
if ( bs->cur_ps.stats[STAT_WEAPONS] & (1 << i) ) {
|
||||
//get the score for it
|
||||
oldScore += RQ3_Bot_ComboScore(i, oldItem);
|
||||
newScore += RQ3_Bot_ComboScore(i, newItem);
|
||||
//don't add the score for a weapon if it's going to be dropped
|
||||
if (i != dropWeapon)
|
||||
newScore += RQ3_Bot_ComboScore(i, newItem);
|
||||
}
|
||||
}
|
||||
|
||||
//FIXME - special code is needed for the bandolier, since throwing it away
|
||||
//will also throw one of the weapons
|
||||
//if the new item is better
|
||||
if (newScore > oldScore) {
|
||||
Cmd_DropItem_f( &g_entities[bs->entitynum] );
|
||||
return qtrue;
|
||||
|
@ -408,12 +415,20 @@ qboolean RQ3_Bot_NeedToDropStuff(bot_state_t *bs, bot_goal_t *goal) {
|
|||
}
|
||||
//if the bot can pick up a weapon
|
||||
} else if ( g_entities[goal->entitynum].item->giType == IT_WEAPON ) {
|
||||
//Code coming soon :P
|
||||
return qfalse;
|
||||
int dropWeapon = RQ3_Bot_WeaponToDrop(bs);
|
||||
|
||||
if (dropWeapon == WP_NONE) return qfalse;
|
||||
if (bs->cur_ps.ammo[dropWeapon]) return qfalse;
|
||||
if (RQ3_Bot_CanReload(bs, dropWeapon)) return qfalse;
|
||||
//Makro - the current weapon is empty, drop it
|
||||
Cmd_DropWeapon_f( &g_entities[bs->entitynum] );
|
||||
|
||||
return qtrue;
|
||||
}
|
||||
|
||||
return qfalse;
|
||||
}
|
||||
|
||||
/*
|
||||
==================
|
||||
BotReachedGoal
|
||||
|
@ -424,8 +439,8 @@ int BotReachedGoal(bot_state_t *bs, bot_goal_t *goal) {
|
|||
//if touching the goal
|
||||
if (trap_BotTouchingGoal(bs->origin, goal)) {
|
||||
if (!(goal->flags & GFL_DROPPED)) {
|
||||
//Makro - check if the bot picked up a better weapon or item
|
||||
trap_BotSetAvoidGoalTime(bs->gs, goal->number, -1);
|
||||
//Makro - check if the bot picked up a better weapon or item
|
||||
RQ3_Bot_NeedToDropStuff( bs , goal );
|
||||
}
|
||||
/*
|
||||
|
@ -1408,8 +1423,7 @@ AINode_Stand
|
|||
==================
|
||||
*/
|
||||
int AINode_Stand(bot_state_t *bs) {
|
||||
qboolean willBandage = qfalse;
|
||||
|
||||
|
||||
//if the bot's health decreased
|
||||
if (bs->lastframe_health > bs->inventory[INVENTORY_HEALTH]) {
|
||||
if (BotChat_HitTalking(bs)) {
|
||||
|
|
|
@ -5,6 +5,9 @@
|
|||
//-----------------------------------------------------------------------------
|
||||
//
|
||||
// $Log$
|
||||
// Revision 1.24 2002/05/02 23:05:25 makro
|
||||
// Loading screen. Jump kicks. Bot stuff
|
||||
//
|
||||
// Revision 1.23 2002/05/02 12:44:58 makro
|
||||
// Customizable color for the loading screen text. Bot stuff
|
||||
//
|
||||
|
@ -320,10 +323,34 @@ RQ3_Bot_GetWeaponInfo
|
|||
Added by Makro
|
||||
==================
|
||||
*/
|
||||
void RQ3_Bot_GetWeaponInfo(bot_state_t *bs, int weaponstate, int weapon, void *weaponinfo) {
|
||||
trap_BotGetWeaponInfo(weaponstate, weapon, weaponinfo);
|
||||
//TODO: - set spreads here depending on what the player is doing - crouching, running etc.
|
||||
// - set grenade range
|
||||
//TODO: - set spreads here depending on what the player is doing - crouching, running etc.
|
||||
qboolean RQ3_Bot_GetWeaponInfo(bot_state_t *bs, int weaponstate, int weapon, void *weaponinfo) {
|
||||
|
||||
//if the weapon is not valid
|
||||
if (weapon <= WP_NONE || weapon >= WP_NUM_WEAPONS) {
|
||||
return qfalse;
|
||||
} else {
|
||||
weaponinfo_t *wi;
|
||||
trap_BotGetWeaponInfo(weaponstate, weapon, weaponinfo);
|
||||
wi = (weaponinfo_t*) weaponinfo;
|
||||
|
||||
if (!wi) return qfalse;
|
||||
if (!wi->valid) return qfalse;
|
||||
if (wi->number == WP_GRENADE) {
|
||||
//long range
|
||||
if ( (bs->cur_ps.persistant[PERS_WEAPONMODES] & RQ3_GRENMED) == RQ3_GRENMED &&
|
||||
(bs->cur_ps.persistant[PERS_WEAPONMODES] & RQ3_GRENSHORT) == RQ3_GRENSHORT ) {
|
||||
wi->speed = GRENADE_LONG_SPEED;
|
||||
//medium range
|
||||
} else if ( (bs->cur_ps.persistant[PERS_WEAPONMODES] & RQ3_GRENMED) == RQ3_GRENMED ) {
|
||||
wi->speed = GRENADE_MEDIUM_SPEED;
|
||||
//short range
|
||||
} else {
|
||||
wi->speed = GRENADE_SHORT_SPEED;
|
||||
}
|
||||
}
|
||||
}
|
||||
return qtrue;
|
||||
}
|
||||
|
||||
/*
|
||||
|
@ -425,7 +452,8 @@ qboolean EntityIsDead(aas_entityinfo_t *entinfo) {
|
|||
if (entinfo->number >= 0 && entinfo->number < MAX_CLIENTS) {
|
||||
//retrieve the current client state
|
||||
BotAI_GetClientState( entinfo->number, &ps );
|
||||
if (ps.pm_type != PM_NORMAL) return qtrue;
|
||||
//Makro - added health check
|
||||
if (ps.pm_type != PM_NORMAL || ps.stats[STAT_HEALTH] <= 0) return qtrue;
|
||||
}
|
||||
return qfalse;
|
||||
}
|
||||
|
@ -1545,13 +1573,17 @@ Added by Makro
|
|||
*/
|
||||
void BotRQ3TPSeekGoals( bot_state_t *bs ) {
|
||||
int firstBot = 0, firstHuman = 0, leader = 0, i;
|
||||
static int maxclients;
|
||||
|
||||
if (!maxclients)
|
||||
maxclients = trap_Cvar_VariableIntegerValue("sv_maxclients");
|
||||
|
||||
//if the bot already has a goal
|
||||
if (bs->ltgtype)
|
||||
return;
|
||||
|
||||
//find the first human/bot teammates
|
||||
for ( i=0; i<MAX_CLIENTS; i++ ) {
|
||||
for ( i=0; i < MAX_CLIENTS && i < maxclients; i++ ) {
|
||||
if ( !(g_entities[i].inuse) || !(g_entities[i].client) )
|
||||
continue;
|
||||
if (!BotSameTeam(bs, i))
|
||||
|
@ -3695,10 +3727,11 @@ void BotAimAtEnemy(bot_state_t *bs) {
|
|||
|
||||
//get the weapon information
|
||||
//trap_BotGetWeaponInfo(bs->ws, bs->weaponnum, &wi);
|
||||
//Makro - new function
|
||||
RQ3_Bot_GetWeaponInfo(bs, bs->ws, bs->weaponnum, &wi);
|
||||
//get the weapon specific aim accuracy and or aim skill
|
||||
//Makro - new function; if weapon/weapon info not ok, stop
|
||||
if (!RQ3_Bot_GetWeaponInfo(bs, bs->ws, bs->weaponnum, &wi))
|
||||
return;
|
||||
|
||||
//get the weapon specific aim accuracy and or aim skill
|
||||
//Blaze: just gonna set the Characteristic aim to machinegun for all of these, but I am still doing the if's so we can edit it later for bot support
|
||||
//Blaze: Reaction Pistol
|
||||
if (wi.number == WP_PISTOL) {
|
||||
|
@ -3990,8 +4023,9 @@ void BotCheckAttack(bot_state_t *bs) {
|
|||
//Makro - we need the weapon info sooner
|
||||
//get the weapon info
|
||||
//trap_BotGetWeaponInfo(bs->ws, bs->weaponnum, &wi);
|
||||
//Makro - new function
|
||||
RQ3_Bot_GetWeaponInfo(bs, bs->ws, bs->weaponnum, &wi);
|
||||
//Makro - new function; if weapon/weapon info not ok, stop
|
||||
if (!RQ3_Bot_GetWeaponInfo(bs, bs->ws, bs->weaponnum, &wi))
|
||||
return;
|
||||
reactiontime = trap_Characteristic_BFloat(bs->character, CHARACTERISTIC_REACTIONTIME, 0, 1);
|
||||
if (bs->enemysight_time > FloatTime() - reactiontime) return;
|
||||
if (bs->teleport_time > FloatTime() - reactiontime) return;
|
||||
|
@ -5607,6 +5641,20 @@ void BotCheckEvents(bot_state_t *bs, entityState_t *state) {
|
|||
}
|
||||
case EV_FOOTSTEP:
|
||||
case EV_FOOTSTEP_METAL:
|
||||
case EV_FOOTSTEP_GRASS: // Elder: new surfaces
|
||||
case EV_FOOTSTEP_WOOD:
|
||||
case EV_FOOTSTEP_CARPET:
|
||||
case EV_FOOTSTEP_METAL2:
|
||||
case EV_FOOTSTEP_GRAVEL:
|
||||
case EV_FOOTSTEP_SNOW: // JBravo: new surfaces
|
||||
case EV_FOOTSTEP_MUD:
|
||||
case EV_FOOTSTEP_WOOD2:
|
||||
case EV_FOOTSTEP_HARDMETAL:
|
||||
case EV_FOOTSTEP_LEAVES: // Makro: new surfaces
|
||||
case EV_FOOTSTEP_CEMENT:
|
||||
case EV_FOOTSTEP_MARBLE:
|
||||
case EV_FOOTSTEP_SNOW2:
|
||||
case EV_FOOTSTEP_HARDSTEPS:
|
||||
case EV_FOOTSPLASH:
|
||||
case EV_FOOTWADE:
|
||||
case EV_SWIM:
|
||||
|
|
|
@ -5,6 +5,9 @@
|
|||
//-----------------------------------------------------------------------------
|
||||
//
|
||||
// $Log$
|
||||
// Revision 1.6 2002/05/02 23:05:25 makro
|
||||
// Loading screen. Jump kicks. Bot stuff
|
||||
//
|
||||
// Revision 1.5 2002/04/06 21:42:20 makro
|
||||
// Changes to bot code. New surfaceparm system.
|
||||
//
|
||||
|
@ -180,6 +183,15 @@ int BotPointAreaNum(vec3_t origin);
|
|||
//
|
||||
void BotMapScripts(bot_state_t *bs);
|
||||
|
||||
//RQ3 bot functions
|
||||
qboolean RQ3_Bot_CheckBandage( bot_state_t *bs );
|
||||
qboolean RQ3_Bot_CanReload( bot_state_t *bs, int weapon );
|
||||
void VectorTargetDist(vec3_t src, vec3_t dest, int dist, vec3_t final);
|
||||
void BotAttack(bot_state_t *bs);
|
||||
bot_moveresult_t BotMoveTo(bot_state_t *bs, vec3_t dest);
|
||||
void BotMoveTowardsEnt(bot_state_t *bs, vec3_t dest, int dist);
|
||||
|
||||
|
||||
//ctf flags
|
||||
#define CTF_FLAG_NONE 0
|
||||
#define CTF_FLAG_RED 1
|
||||
|
|
|
@ -5,6 +5,9 @@
|
|||
//-----------------------------------------------------------------------------
|
||||
//
|
||||
// $Log$
|
||||
// Revision 1.21 2002/05/02 23:05:25 makro
|
||||
// Loading screen. Jump kicks. Bot stuff
|
||||
//
|
||||
// Revision 1.20 2002/05/02 12:44:58 makro
|
||||
// Customizable color for the loading screen text. Bot stuff
|
||||
//
|
||||
|
@ -707,6 +710,7 @@ void SP_worldspawn( void ) {
|
|||
char *s;
|
||||
vec3_t color;
|
||||
char info[MAX_INFO_STRING];
|
||||
int nodetail = 0;
|
||||
|
||||
G_SpawnString( "classname", "", &s );
|
||||
if ( Q_stricmp( s, "worldspawn" ) ) {
|
||||
|
@ -725,10 +729,18 @@ void SP_worldspawn( void ) {
|
|||
trap_SetConfigstring( CS_MESSAGE, s ); // map specific message
|
||||
|
||||
//Makro - color for the loading screen text
|
||||
G_SpawnVector( "_color", "1 1 1", color );
|
||||
Info_SetValueForKey(info, "red", va("%f", color[0]));
|
||||
Info_SetValueForKey(info, "green", va("%f", color[1]));
|
||||
Info_SetValueForKey(info, "blue", va("%f", color[2]));
|
||||
G_SpawnVector( "_color", "0.75 0.75 0.75", color );
|
||||
Info_SetValueForKey(info, "r1", va("%f", color[0]));
|
||||
Info_SetValueForKey(info, "g1", va("%f", color[1]));
|
||||
Info_SetValueForKey(info, "b1", va("%f", color[2]));
|
||||
G_SpawnVector( "_color2", "1 1 1", color );
|
||||
Info_SetValueForKey(info, "r2", va("%f", color[0]));
|
||||
Info_SetValueForKey(info, "g2", va("%f", color[1]));
|
||||
Info_SetValueForKey(info, "b2", va("%f", color[2]));
|
||||
//skip detail ?
|
||||
G_SpawnInt( "nodetail", "0", &nodetail );
|
||||
Info_SetValueForKey(info, "nodetail", va("%i", nodetail));
|
||||
//save settings
|
||||
trap_SetConfigstring( CS_LOADINGSCREEN, info );
|
||||
|
||||
trap_SetConfigstring( CS_MOTD, g_motd.string ); // message of the day
|
||||
|
|
|
@ -5,6 +5,9 @@
|
|||
//-----------------------------------------------------------------------------
|
||||
//
|
||||
// $Log$
|
||||
// Revision 1.51 2002/05/02 23:05:25 makro
|
||||
// Loading screen. Jump kicks. Bot stuff
|
||||
//
|
||||
// Revision 1.50 2002/05/02 03:06:09 blaze
|
||||
// Fixed breakables crashing on vashes
|
||||
//
|
||||
|
@ -156,24 +159,7 @@ qboolean JumpKick( gentity_t *ent )
|
|||
return qfalse;
|
||||
}
|
||||
|
||||
// JBravo: some sanity checks on the traceEnt
|
||||
if (traceEnt == NULL || traceEnt->client == NULL)
|
||||
return qfalse;
|
||||
|
||||
// JBravo: no kicking teammates while rounds are going
|
||||
if (g_gametype.integer == GT_TEAMPLAY) {
|
||||
if (ent->client->sess.sessionTeam == traceEnt->client->sess.sessionTeam &&
|
||||
level.team_round_going)
|
||||
return qfalse;
|
||||
}
|
||||
|
||||
if (ent->client->ps.powerups[PW_QUAD] ) {
|
||||
G_AddEvent( ent, EV_POWERUP_QUAD, 0 );
|
||||
s_quadFactor = g_quadfactor.value;
|
||||
} else {
|
||||
s_quadFactor = 1;
|
||||
}
|
||||
|
||||
//Makro - this was a few lines below
|
||||
damage = 20;
|
||||
|
||||
if ( traceEnt->s.eType == ET_BREAKABLE || traceEnt->client)
|
||||
|
@ -190,6 +176,34 @@ qboolean JumpKick( gentity_t *ent )
|
|||
if (ent->client && level.team_round_going)
|
||||
ent->client->pers.records[REC_KICKHITS]++;
|
||||
}
|
||||
//end Makro
|
||||
|
||||
// JBravo: some sanity checks on the traceEnt
|
||||
// Makro - this check made the sound only play when a client is hit
|
||||
// if (traceEnt == NULL || traceEnt->client == NULL)
|
||||
if (traceEnt == NULL)
|
||||
return qfalse;
|
||||
|
||||
// JBravo: no kicking teammates while rounds are going
|
||||
if (g_gametype.integer == GT_TEAMPLAY) {
|
||||
//Makro - client check here
|
||||
if (ent->client)
|
||||
if (ent->client->sess.sessionTeam == traceEnt->client->sess.sessionTeam &&
|
||||
level.team_round_going)
|
||||
return qfalse;
|
||||
}
|
||||
|
||||
//Makro - client check
|
||||
if (ent->client) {
|
||||
if (ent->client->ps.powerups[PW_QUAD] ) {
|
||||
G_AddEvent( ent, EV_POWERUP_QUAD, 0 );
|
||||
s_quadFactor = g_quadfactor.value;
|
||||
} else {
|
||||
s_quadFactor = 1;
|
||||
}
|
||||
}
|
||||
|
||||
//Makro - moved some code up by a few lines to allow breakables to be kicked
|
||||
|
||||
// send blood impact + event stuff
|
||||
/*
|
||||
|
@ -258,7 +272,6 @@ qboolean JumpKick( gentity_t *ent )
|
|||
//traceEnt->s.groundEntityNum = ENTITYNUM_NONE;
|
||||
//}
|
||||
|
||||
|
||||
//Elder: Our set of locally called sounds
|
||||
if (kickSuccess)
|
||||
{
|
||||
|
|
|
@ -3,54 +3,110 @@
|
|||
<pre>
|
||||
<h1>Build Log</h1>
|
||||
<h3>
|
||||
--------------------Configuration: game - Win32 Release--------------------
|
||||
--------------------Configuration: cgame - Win32 Release--------------------
|
||||
</h3>
|
||||
<h3>Command Lines</h3>
|
||||
Creating temporary file "D:\DOCUME~1\Andrei\LOCALS~1\Temp\RSP1E1E.tmp" with contents
|
||||
Creating temporary file "D:\DOCUME~1\Andrei\LOCALS~1\Temp\RSP212D.tmp" with contents
|
||||
[
|
||||
/nologo /G6 /ML /W4 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /FR"c:\reactionoutput/" /Fp"c:\reactionoutput/game.pch" /YX /Fo"c:\reactionoutput/" /Fd"c:\reactionoutput/" /FD /c
|
||||
"C:\Games\Quake3\rq3source\reaction\game\ai_chat.c"
|
||||
"C:\Games\Quake3\rq3source\reaction\game\ai_cmd.c"
|
||||
"C:\Games\Quake3\rq3source\reaction\game\ai_dmnet.c"
|
||||
"C:\Games\Quake3\rq3source\reaction\game\ai_dmq3.c"
|
||||
"C:\Games\Quake3\rq3source\reaction\game\ai_main.c"
|
||||
"C:\Games\Quake3\rq3source\reaction\game\ai_team.c"
|
||||
"C:\Games\Quake3\rq3source\reaction\game\ai_vcmd.c"
|
||||
/nologo /G6 /ML /W4 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /Fp"Release/cgame.pch" /YX /Fo"Release/" /Fd"Release/" /FD /c
|
||||
"C:\Games\Quake3\rq3source\reaction\game\bg_misc.c"
|
||||
"C:\Games\Quake3\rq3source\reaction\game\bg_pmove.c"
|
||||
"C:\Games\Quake3\rq3source\reaction\game\bg_slidemove.c"
|
||||
"C:\Games\Quake3\rq3source\reaction\game\g_active.c"
|
||||
"C:\Games\Quake3\rq3source\reaction\game\g_arenas.c"
|
||||
"C:\Games\Quake3\rq3source\reaction\game\g_bot.c"
|
||||
"C:\Games\Quake3\rq3source\reaction\game\g_client.c"
|
||||
"C:\Games\Quake3\rq3source\reaction\game\g_cmds.c"
|
||||
"C:\Games\Quake3\rq3source\reaction\game\g_combat.c"
|
||||
"C:\Games\Quake3\rq3source\reaction\game\g_fileio.c"
|
||||
"C:\Games\Quake3\rq3source\reaction\game\g_items.c"
|
||||
"C:\Games\Quake3\rq3source\reaction\game\g_main.c"
|
||||
"C:\Games\Quake3\rq3source\reaction\game\g_matchmode.c"
|
||||
"C:\Games\Quake3\rq3source\reaction\game\g_mem.c"
|
||||
"C:\Games\Quake3\rq3source\reaction\game\g_misc.c"
|
||||
"C:\Games\Quake3\rq3source\reaction\game\g_missile.c"
|
||||
"C:\Games\Quake3\rq3source\reaction\game\g_mover.c"
|
||||
"C:\Games\Quake3\rq3source\reaction\game\g_session.c"
|
||||
"C:\Games\Quake3\rq3source\reaction\game\g_spawn.c"
|
||||
"C:\Games\Quake3\rq3source\reaction\game\g_svcmds.c"
|
||||
"C:\Games\Quake3\rq3source\reaction\game\g_syscalls.c"
|
||||
"C:\Games\Quake3\rq3source\reaction\game\g_target.c"
|
||||
"C:\Games\Quake3\rq3source\reaction\game\g_team.c"
|
||||
"C:\Games\Quake3\rq3source\reaction\game\g_teamplay.c"
|
||||
"C:\Games\Quake3\rq3source\reaction\game\g_trigger.c"
|
||||
"C:\Games\Quake3\rq3source\reaction\game\g_utils.c"
|
||||
"C:\Games\Quake3\rq3source\reaction\game\g_weapon.c"
|
||||
"C:\Games\Quake3\rq3source\reaction\game\q_math.c"
|
||||
"C:\Games\Quake3\rq3source\reaction\game\q_shared.c"
|
||||
"C:\Games\Quake3\rq3source\reaction\game\rxn_game.c"
|
||||
"C:\Games\Quake3\rq3source\reaction\game\zcam.c"
|
||||
"C:\Games\Quake3\rq3source\reaction\game\zcam_target.c"
|
||||
"C:\Games\Quake3\rq3source\reaction\cgame\cg_consolecmds.c"
|
||||
"C:\Games\Quake3\rq3source\reaction\cgame\cg_draw.c"
|
||||
"C:\Games\Quake3\rq3source\reaction\cgame\cg_drawtools.c"
|
||||
"C:\Games\Quake3\rq3source\reaction\cgame\cg_effects.c"
|
||||
"C:\Games\Quake3\rq3source\reaction\cgame\cg_ents.c"
|
||||
"C:\Games\Quake3\rq3source\reaction\cgame\cg_event.c"
|
||||
"C:\Games\Quake3\rq3source\reaction\cgame\cg_info.c"
|
||||
"C:\Games\Quake3\rq3source\reaction\cgame\cg_localents.c"
|
||||
"C:\Games\Quake3\rq3source\reaction\cgame\cg_main.c"
|
||||
"C:\Games\Quake3\rq3source\reaction\cgame\cg_marks.c"
|
||||
"C:\Games\Quake3\rq3source\reaction\cgame\cg_players.c"
|
||||
"C:\Games\Quake3\rq3source\reaction\cgame\cg_playerstate.c"
|
||||
"C:\Games\Quake3\rq3source\reaction\cgame\cg_predict.c"
|
||||
"C:\Games\Quake3\rq3source\reaction\cgame\cg_scoreboard.c"
|
||||
"C:\Games\Quake3\rq3source\reaction\cgame\cg_servercmds.c"
|
||||
"C:\Games\Quake3\rq3source\reaction\cgame\cg_snapshot.c"
|
||||
"C:\Games\Quake3\rq3source\reaction\cgame\cg_syscalls.c"
|
||||
"C:\Games\Quake3\rq3source\reaction\cgame\cg_view.c"
|
||||
"C:\Games\Quake3\rq3source\reaction\cgame\cg_weapons.c"
|
||||
]
|
||||
Creating command line "cl.exe @D:\DOCUME~1\Andrei\LOCALS~1\Temp\RSP1E1E.tmp"
|
||||
Creating temporary file "D:\DOCUME~1\Andrei\LOCALS~1\Temp\RSP1E1F.tmp" with contents
|
||||
Creating command line "cl.exe @D:\DOCUME~1\Andrei\LOCALS~1\Temp\RSP212D.tmp"
|
||||
Creating temporary file "D:\DOCUME~1\Andrei\LOCALS~1\Temp\RSP212E.tmp" with contents
|
||||
[
|
||||
/nologo /base:"0x30000000" /subsystem:windows /dll /incremental:no /pdb:"Release/cgamex86.pdb" /map:"Release/cgamex86.map" /machine:I386 /def:".\cgame.def" /out:"../Release/cgamex86.dll" /implib:"Release/cgamex86.lib"
|
||||
.\Release\bg_misc.obj
|
||||
.\Release\bg_pmove.obj
|
||||
.\Release\bg_slidemove.obj
|
||||
.\Release\cg_consolecmds.obj
|
||||
.\Release\cg_draw.obj
|
||||
.\Release\cg_drawtools.obj
|
||||
.\Release\cg_effects.obj
|
||||
.\Release\cg_ents.obj
|
||||
.\Release\cg_event.obj
|
||||
.\Release\cg_info.obj
|
||||
.\Release\cg_localents.obj
|
||||
.\Release\cg_main.obj
|
||||
.\Release\cg_marks.obj
|
||||
.\Release\cg_players.obj
|
||||
.\Release\cg_playerstate.obj
|
||||
.\Release\cg_predict.obj
|
||||
.\Release\cg_scoreboard.obj
|
||||
.\Release\cg_servercmds.obj
|
||||
.\Release\cg_snapshot.obj
|
||||
.\Release\cg_syscalls.obj
|
||||
.\Release\cg_view.obj
|
||||
.\Release\cg_weapons.obj
|
||||
.\Release\q_math.obj
|
||||
.\Release\q_shared.obj
|
||||
.\Release\ui_shared.obj
|
||||
]
|
||||
Creating command line "link.exe @D:\DOCUME~1\Andrei\LOCALS~1\Temp\RSP212E.tmp"
|
||||
<h3>Output Window</h3>
|
||||
Compiling...
|
||||
bg_misc.c
|
||||
bg_pmove.c
|
||||
bg_slidemove.c
|
||||
cg_consolecmds.c
|
||||
cg_draw.c
|
||||
cg_drawtools.c
|
||||
cg_effects.c
|
||||
cg_ents.c
|
||||
cg_event.c
|
||||
cg_info.c
|
||||
cg_localents.c
|
||||
cg_main.c
|
||||
cg_marks.c
|
||||
cg_players.c
|
||||
cg_playerstate.c
|
||||
cg_predict.c
|
||||
cg_scoreboard.c
|
||||
cg_servercmds.c
|
||||
cg_snapshot.c
|
||||
cg_syscalls.c
|
||||
cg_view.c
|
||||
cg_weapons.c
|
||||
Linking...
|
||||
Creating library Release/cgamex86.lib and object Release/cgamex86.exp
|
||||
|
||||
|
||||
|
||||
<h3>Results</h3>
|
||||
cgamex86.dll - 0 error(s), 0 warning(s)
|
||||
<h3>
|
||||
--------------------Configuration: game - Win32 Release--------------------
|
||||
</h3>
|
||||
<h3>Command Lines</h3>
|
||||
Creating temporary file "D:\DOCUME~1\Andrei\LOCALS~1\Temp\RSP2132.tmp" with contents
|
||||
[
|
||||
/nologo /G6 /ML /W4 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /FR"c:\reactionoutput/" /Fp"c:\reactionoutput/game.pch" /YX /Fo"c:\reactionoutput/" /Fd"c:\reactionoutput/" /FD /c
|
||||
"C:\Games\Quake3\rq3source\reaction\game\ai_dmnet.c"
|
||||
"C:\Games\Quake3\rq3source\reaction\game\ai_dmq3.c"
|
||||
"C:\Games\Quake3\rq3source\reaction\game\g_spawn.c"
|
||||
]
|
||||
Creating command line "cl.exe @D:\DOCUME~1\Andrei\LOCALS~1\Temp\RSP2132.tmp"
|
||||
Creating temporary file "D:\DOCUME~1\Andrei\LOCALS~1\Temp\RSP2133.tmp" with contents
|
||||
[
|
||||
kernel32.lib user32.lib winmm.lib /nologo /base:"0x20000000" /subsystem:windows /dll /incremental:no /pdb:"c:\reactionoutput/qagamex86.pdb" /map:"c:\reactionoutput/qagamex86.map" /machine:I386 /def:".\game.def" /out:"..\Release/qagamex86.dll" /implib:"c:\reactionoutput/qagamex86.lib"
|
||||
\reactionoutput\ai_chat.obj
|
||||
|
@ -93,56 +149,66 @@ kernel32.lib user32.lib winmm.lib /nologo /base:"0x20000000" /subsystem:windows
|
|||
\reactionoutput\zcam.obj
|
||||
\reactionoutput\zcam_target.obj
|
||||
]
|
||||
Creating command line "link.exe @D:\DOCUME~1\Andrei\LOCALS~1\Temp\RSP1E1F.tmp"
|
||||
Creating command line "link.exe @D:\DOCUME~1\Andrei\LOCALS~1\Temp\RSP2133.tmp"
|
||||
<h3>Output Window</h3>
|
||||
Compiling...
|
||||
ai_chat.c
|
||||
ai_cmd.c
|
||||
ai_dmnet.c
|
||||
ai_dmq3.c
|
||||
ai_main.c
|
||||
ai_team.c
|
||||
ai_vcmd.c
|
||||
bg_misc.c
|
||||
bg_pmove.c
|
||||
bg_slidemove.c
|
||||
g_active.c
|
||||
g_arenas.c
|
||||
g_bot.c
|
||||
g_client.c
|
||||
g_cmds.c
|
||||
g_combat.c
|
||||
g_fileio.c
|
||||
g_items.c
|
||||
g_main.c
|
||||
g_matchmode.c
|
||||
g_mem.c
|
||||
g_misc.c
|
||||
g_missile.c
|
||||
g_mover.c
|
||||
g_session.c
|
||||
g_spawn.c
|
||||
g_svcmds.c
|
||||
g_syscalls.c
|
||||
g_target.c
|
||||
g_team.c
|
||||
g_teamplay.c
|
||||
g_trigger.c
|
||||
g_utils.c
|
||||
g_weapon.c
|
||||
q_math.c
|
||||
C:\Games\Quake3\rq3source\reaction\game\g_weapon.c(2576) : warning C4701: local variable 'tr' may be used without having been initialized
|
||||
q_shared.c
|
||||
rxn_game.c
|
||||
zcam.c
|
||||
zcam_target.c
|
||||
Linking...
|
||||
Creating library c:\reactionoutput/qagamex86.lib and object c:\reactionoutput/qagamex86.exp
|
||||
|
||||
|
||||
|
||||
<h3>Results</h3>
|
||||
qagamex86.dll - 0 error(s), 1 warning(s)
|
||||
qagamex86.dll - 0 error(s), 0 warning(s)
|
||||
<h3>
|
||||
--------------------Configuration: ui - Win32 Release TA--------------------
|
||||
</h3>
|
||||
<h3>Command Lines</h3>
|
||||
Creating temporary file "D:\DOCUME~1\Andrei\LOCALS~1\Temp\RSP2137.tmp" with contents
|
||||
[
|
||||
/nologo /G6 /ML /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "UI_EXPORTS" /Fp"Release_TA/ta_ui.pch" /YX /Fo"Release_TA/" /Fd"Release_TA/" /FD /c
|
||||
"C:\Games\Quake3\rq3source\reaction\game\bg_misc.c"
|
||||
"C:\Games\Quake3\rq3source\reaction\ta_ui\ui_atoms.c"
|
||||
"C:\Games\Quake3\rq3source\reaction\ta_ui\ui_gameinfo.c"
|
||||
"C:\Games\Quake3\rq3source\reaction\ta_ui\ui_main.c"
|
||||
"C:\Games\Quake3\rq3source\reaction\ta_ui\ui_players.c"
|
||||
"C:\Games\Quake3\rq3source\reaction\ta_ui\ui_shared.c"
|
||||
"C:\Games\Quake3\rq3source\reaction\ta_ui\ui_syscalls.c"
|
||||
]
|
||||
Creating command line "cl.exe @D:\DOCUME~1\Andrei\LOCALS~1\Temp\RSP2137.tmp"
|
||||
Creating temporary file "D:\DOCUME~1\Andrei\LOCALS~1\Temp\RSP2138.tmp" with contents
|
||||
[
|
||||
/nologo /base:"0x40000000" /dll /incremental:no /pdb:"Release_TA/uix86.pdb" /map:"Release_TA/uix86.map" /machine:I386 /def:".\ui.def" /out:"uix86.dll" /implib:"Release_TA/uix86.lib"
|
||||
.\Release_TA\bg_misc.obj
|
||||
.\Release_TA\q_math.obj
|
||||
.\Release_TA\q_shared.obj
|
||||
.\Release_TA\ui_atoms.obj
|
||||
.\Release_TA\ui_gameinfo.obj
|
||||
.\Release_TA\ui_main.obj
|
||||
.\Release_TA\ui_players.obj
|
||||
.\Release_TA\ui_shared.obj
|
||||
.\Release_TA\ui_syscalls.obj
|
||||
.\Release_TA\ui_util.obj
|
||||
]
|
||||
Creating command line "link.exe @D:\DOCUME~1\Andrei\LOCALS~1\Temp\RSP2138.tmp"
|
||||
<h3>Output Window</h3>
|
||||
Compiling...
|
||||
bg_misc.c
|
||||
ui_atoms.c
|
||||
ui_gameinfo.c
|
||||
ui_main.c
|
||||
ui_players.c
|
||||
ui_shared.c
|
||||
ui_syscalls.c
|
||||
Linking...
|
||||
Creating library Release_TA/uix86.lib and object Release_TA/uix86.exp
|
||||
|
||||
|
||||
|
||||
<h3>Results</h3>
|
||||
uix86.dll - 0 error(s), 0 warning(s)
|
||||
</pre>
|
||||
</body>
|
||||
</html>
|
||||
|
|
Loading…
Reference in a new issue