30 Oct 2009
This commit is contained in:
parent
20358f2b85
commit
5db8612c47
|
@ -1,16 +0,0 @@
|
|||
<html>
|
||||
<body>
|
||||
<pre>
|
||||
<h1>Build Log</h1>
|
||||
<h3>
|
||||
--------------------Configuration: baserc - Win32 Debug--------------------
|
||||
</h3>
|
||||
<h3>Command Lines</h3>
|
||||
|
||||
|
||||
|
||||
<h3>Results</h3>
|
||||
baserc.dll - 0 error(s), 0 warning(s)
|
||||
</pre>
|
||||
</body>
|
||||
</html>
|
|
@ -6,6 +6,56 @@
|
|||
--------------------Configuration: client - Win32 Debug--------------------
|
||||
</h3>
|
||||
<h3>Command Lines</h3>
|
||||
Creating temporary file "C:\DOCUME~1\ÌÈØÀ\LOCALS~1\Temp\RSP397B.tmp" with contents
|
||||
[
|
||||
/nologo /MDd /W3 /Gm /Gi /GX /ZI /Od /I "./" /I "../common" /I "global" /I "hud" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /FR"..\temp\client\!debug/" /Fo"..\temp\client\!debug/" /Fd"..\temp\client\!debug/" /FD /c
|
||||
"D:\Xash3D\src_main\client\global\dll_int.cpp"
|
||||
]
|
||||
Creating command line "cl.exe @"C:\DOCUME~1\ÌÈØÀ\LOCALS~1\Temp\RSP397B.tmp""
|
||||
Creating temporary file "C:\DOCUME~1\ÌÈØÀ\LOCALS~1\Temp\RSP397C.tmp" with contents
|
||||
[
|
||||
msvcrtd.lib /nologo /subsystem:windows /dll /incremental:yes /pdb:"..\temp\client\!debug/client.pdb" /debug /machine:I386 /nodefaultlib:"libc.lib" /def:".\client.def" /out:"..\temp\client\!debug/client.dll" /implib:"..\temp\client\!debug/client.lib" /pdbtype:sept /libpath:"..\common\libs"
|
||||
"\Xash3D\src_main\temp\client\!debug\dll_int.obj"
|
||||
"\Xash3D\src_main\temp\client\!debug\hud.obj"
|
||||
"\Xash3D\src_main\temp\client\!debug\hud_ammo.obj"
|
||||
"\Xash3D\src_main\temp\client\!debug\hud_ammohistory.obj"
|
||||
"\Xash3D\src_main\temp\client\!debug\hud_battery.obj"
|
||||
"\Xash3D\src_main\temp\client\!debug\hud_death.obj"
|
||||
"\Xash3D\src_main\temp\client\!debug\hud_flashlight.obj"
|
||||
"\Xash3D\src_main\temp\client\!debug\hud_geiger.obj"
|
||||
"\Xash3D\src_main\temp\client\!debug\hud_health.obj"
|
||||
"\Xash3D\src_main\temp\client\!debug\hud_icons.obj"
|
||||
"\Xash3D\src_main\temp\client\!debug\hud_menu.obj"
|
||||
"\Xash3D\src_main\temp\client\!debug\hud_message.obj"
|
||||
"\Xash3D\src_main\temp\client\!debug\hud_motd.obj"
|
||||
"\Xash3D\src_main\temp\client\!debug\hud_msg.obj"
|
||||
"\Xash3D\src_main\temp\client\!debug\hud_saytext.obj"
|
||||
"\Xash3D\src_main\temp\client\!debug\hud_scoreboard.obj"
|
||||
"\Xash3D\src_main\temp\client\!debug\hud_sound.obj"
|
||||
"\Xash3D\src_main\temp\client\!debug\hud_statusbar.obj"
|
||||
"\Xash3D\src_main\temp\client\!debug\hud_text.obj"
|
||||
"\Xash3D\src_main\temp\client\!debug\hud_train.obj"
|
||||
"\Xash3D\src_main\temp\client\!debug\hud_warhead.obj"
|
||||
"\Xash3D\src_main\temp\client\!debug\hud_zoom.obj"
|
||||
"\Xash3D\src_main\temp\client\!debug\r_particle.obj"
|
||||
"\Xash3D\src_main\temp\client\!debug\tempents.obj"
|
||||
"\Xash3D\src_main\temp\client\!debug\triapi.obj"
|
||||
"\Xash3D\src_main\temp\client\!debug\utils.obj"
|
||||
"\Xash3D\src_main\temp\client\!debug\view.obj"
|
||||
]
|
||||
Creating command line "link.exe @"C:\DOCUME~1\ÌÈØÀ\LOCALS~1\Temp\RSP397C.tmp""
|
||||
Creating temporary file "C:\DOCUME~1\ÌÈØÀ\LOCALS~1\Temp\RSP397D.bat" with contents
|
||||
[
|
||||
@echo off
|
||||
copy \Xash3D\src_main\temp\client\!debug\client.dll "D:\Xash3D\bin\client.dll"
|
||||
]
|
||||
Creating command line ""C:\DOCUME~1\ÌÈØÀ\LOCALS~1\Temp\RSP397D.bat""
|
||||
Compiling...
|
||||
dll_int.cpp
|
||||
Linking...
|
||||
<h3>Output Window</h3>
|
||||
Performing Custom Build Step on \Xash3D\src_main\temp\client\!debug\client.dll
|
||||
‘ª®¯¨à®¢ ® ä ©«®¢: 1.
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -81,6 +81,7 @@ void HUD_Init( void )
|
|||
g_engfuncs.pfnAddCommand ("gametitle", NULL, "show game logo" );
|
||||
g_engfuncs.pfnAddCommand ("god", NULL, "classic cheat" );
|
||||
g_engfuncs.pfnAddCommand ("fov", NULL, "set client field of view" );
|
||||
g_engfuncs.pfnAddCommand ("fly", NULL, "fly mode (flight)" );
|
||||
|
||||
if ( g_pParticleSystems )
|
||||
{
|
||||
|
@ -293,4 +294,5 @@ void HUD_Shutdown( void )
|
|||
g_engfuncs.pfnDelCommand ("gametitle" );
|
||||
g_engfuncs.pfnDelCommand ("god" );
|
||||
g_engfuncs.pfnDelCommand ("fov" );
|
||||
g_engfuncs.pfnDelCommand ("fly" );
|
||||
}
|
|
@ -63,7 +63,6 @@ typedef struct
|
|||
BOOL fAllSolid; // if true, plane is not valid
|
||||
BOOL fStartSolid; // if true, the initial point was in a solid area
|
||||
float flFraction; // time completed, 1.0 = didn't hit anything
|
||||
float flRealFrac; // fraction of collision tangetially to the trace direction
|
||||
vec3_t vecEndPos; // final position
|
||||
int iContents; // final pos contents
|
||||
int iHitgroup; // 0 == generic, non zero is specific body part
|
||||
|
|
|
@ -350,9 +350,8 @@ void CL_AddEntities( void )
|
|||
//
|
||||
void CL_GetEntitySoundSpatialization( int entnum, vec3_t origin, vec3_t velocity )
|
||||
{
|
||||
edict_t *ent;
|
||||
model_t handle;
|
||||
vec3_t mins, maxs, midPoint;
|
||||
edict_t *ent;
|
||||
vec3_t mins, maxs, midPoint;
|
||||
|
||||
if( entnum < 0 || entnum >= GI->max_edicts )
|
||||
{
|
||||
|
@ -370,10 +369,9 @@ void CL_GetEntitySoundSpatialization( int entnum, vec3_t origin, vec3_t velocity
|
|||
VectorCopy( ent->v.velocity, velocity );
|
||||
|
||||
// if a brush model, offset the origin
|
||||
if( VectorIsNull( origin ))
|
||||
if( VectorIsNull( origin ) && ent->v.modelindex )
|
||||
{
|
||||
handle = cl.models[ent->pvClientData->current.modelindex];
|
||||
Mod_GetBounds( handle, mins, maxs );
|
||||
Mod_GetBounds( ent->v.modelindex, mins, maxs );
|
||||
VectorAverage( mins, maxs, midPoint );
|
||||
VectorAdd( origin, midPoint, origin );
|
||||
}
|
||||
|
|
|
@ -1113,7 +1113,7 @@ static void *pfnGetModelPtr( edict_t *pEdict )
|
|||
if( !pEdict || pEdict->free )
|
||||
return NULL;
|
||||
|
||||
return Mod_Extradata( cl.models[pEdict->v.modelindex] );
|
||||
return Mod_Extradata( pEdict->v.modelindex );
|
||||
}
|
||||
|
||||
/*
|
||||
|
|
|
@ -734,9 +734,8 @@ void CL_PrepVideo( void )
|
|||
{
|
||||
com.strncpy( name, cl.configstrings[CS_MODELS+1+i], MAX_STRING );
|
||||
re->RegisterModel( name, i+1 );
|
||||
pe->RegisterModel( name, i+1 );
|
||||
cl.models[i+1] = i+1;
|
||||
Cvar_SetValue("scr_loading", scr_loading->value + 45.0f / mdlcount );
|
||||
CM_RegisterModel( name, i+1 );
|
||||
Cvar_SetValue( "scr_loading", scr_loading->value + 45.0f / mdlcount );
|
||||
SCR_UpdateScreen();
|
||||
}
|
||||
|
||||
|
@ -748,6 +747,7 @@ void CL_PrepVideo( void )
|
|||
|
||||
// setup sky and free unneeded stuff
|
||||
re->EndRegistration( cl.configstrings[CS_SKYNAME] );
|
||||
pe->EndRegistration (); // free unused models
|
||||
Cvar_SetValue( "scr_loading", 100.0f ); // all done
|
||||
|
||||
if( host.developer <= 2 ) Con_ClearNotify(); // clear any lines of console text
|
||||
|
|
|
@ -408,8 +408,7 @@ void CL_ParseConfigString( sizebuf_t *msg )
|
|||
else if( i >= CS_MODELS && i < CS_MODELS+MAX_MODELS && cl.video_prepped )
|
||||
{
|
||||
re->RegisterModel( cl.configstrings[i], i-CS_MODELS );
|
||||
pe->RegisterModel( cl.configstrings[i], i-CS_MODELS );
|
||||
cl.models[i-CS_MODELS] = i-CS_MODELS;
|
||||
CM_RegisterModel( cl.configstrings[i], i-CS_MODELS );
|
||||
}
|
||||
else if( i >= CS_SOUNDS && i < CS_SOUNDS+MAX_SOUNDS && cl.audio_prepped )
|
||||
{
|
||||
|
|
|
@ -6,7 +6,13 @@
|
|||
--------------------Configuration: engine - Win32 Debug--------------------
|
||||
</h3>
|
||||
<h3>Command Lines</h3>
|
||||
Creating temporary file "C:\DOCUME~1\ÌÈØÀ\LOCALS~1\Temp\RSP2D05.tmp" with contents
|
||||
Creating temporary file "C:\DOCUME~1\ÌÈØÀ\LOCALS~1\Temp\RSP3998.tmp" with contents
|
||||
[
|
||||
/nologo /MDd /W3 /Gm /Gi /GX /ZI /Od /I "./" /I "common" /I "server" /I "client" /I "uimenu" /I "../public" /I "../common" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /FR"..\temp\engine\!debug/" /Fo"..\temp\engine\!debug/" /Fd"..\temp\engine\!debug/" /FD /c
|
||||
"D:\Xash3D\src_main\engine\server\sv_phys.c"
|
||||
]
|
||||
Creating command line "cl.exe @"C:\DOCUME~1\ÌÈØÀ\LOCALS~1\Temp\RSP3998.tmp""
|
||||
Creating temporary file "C:\DOCUME~1\ÌÈØÀ\LOCALS~1\Temp\RSP3999.tmp" with contents
|
||||
[
|
||||
user32.lib msvcrtd.lib /nologo /subsystem:windows /dll /incremental:yes /pdb:"..\temp\engine\!debug/engine.pdb" /debug /machine:I386 /nodefaultlib:"msvcrt.lib" /out:"..\temp\engine\!debug/engine.dll" /implib:"..\temp\engine\!debug/engine.lib" /pdbtype:sept
|
||||
"\Xash3D\src_main\temp\engine\!debug\cinematic.obj"
|
||||
|
@ -21,7 +27,6 @@ user32.lib msvcrtd.lib /nologo /subsystem:windows /dll /incremental:yes /pdb:"..
|
|||
"\Xash3D\src_main\temp\engine\!debug\cl_phys.obj"
|
||||
"\Xash3D\src_main\temp\engine\!debug\cl_scrn.obj"
|
||||
"\Xash3D\src_main\temp\engine\!debug\cl_view.obj"
|
||||
"\Xash3D\src_main\temp\engine\!debug\cl_world.obj"
|
||||
"\Xash3D\src_main\temp\engine\!debug\com_library.obj"
|
||||
"\Xash3D\src_main\temp\engine\!debug\con_keys.obj"
|
||||
"\Xash3D\src_main\temp\engine\!debug\con_main.obj"
|
||||
|
@ -66,16 +71,18 @@ user32.lib msvcrtd.lib /nologo /subsystem:windows /dll /incremental:yes /pdb:"..
|
|||
"\Xash3D\src_main\temp\engine\!debug\ui_savegame.obj"
|
||||
"\Xash3D\src_main\temp\engine\!debug\ui_saveload.obj"
|
||||
"\Xash3D\src_main\temp\engine\!debug\ui_video.obj"
|
||||
"\Xash3D\src_main\temp\engine\!debug\cl_world.obj"
|
||||
]
|
||||
Creating command line "link.exe @"C:\DOCUME~1\ÌÈØÀ\LOCALS~1\Temp\RSP2D05.tmp""
|
||||
Creating temporary file "C:\DOCUME~1\ÌÈØÀ\LOCALS~1\Temp\RSP2D06.bat" with contents
|
||||
Creating command line "link.exe @"C:\DOCUME~1\ÌÈØÀ\LOCALS~1\Temp\RSP3999.tmp""
|
||||
Creating temporary file "C:\DOCUME~1\ÌÈØÀ\LOCALS~1\Temp\RSP399A.bat" with contents
|
||||
[
|
||||
@echo off
|
||||
copy \Xash3D\src_main\temp\engine\!debug\engine.dll "D:\Xash3D\bin\engine.dll"
|
||||
]
|
||||
Creating command line ""C:\DOCUME~1\ÌÈØÀ\LOCALS~1\Temp\RSP2D06.bat""
|
||||
Creating command line ""C:\DOCUME~1\ÌÈØÀ\LOCALS~1\Temp\RSP399A.bat""
|
||||
Compiling...
|
||||
sv_phys.c
|
||||
Linking...
|
||||
Creating library ..\temp\engine\!debug/engine.lib and object ..\temp\engine\!debug/engine.exp
|
||||
<h3>Output Window</h3>
|
||||
Performing Custom Build Step on \Xash3D\src_main\temp\engine\!debug\engine.dll
|
||||
‘ª®¯¨à®¢ ® ä ©«®¢: 1.
|
||||
|
|
|
@ -72,7 +72,6 @@ typedef struct server_s
|
|||
|
||||
string name; // map name, or cinematic name
|
||||
string startspot; // player_start name on nextmap
|
||||
model_t models[MAX_MODELS];
|
||||
|
||||
char configstrings[MAX_CONFIGSTRINGS][CS_SIZE];
|
||||
|
||||
|
@ -289,7 +288,6 @@ extern cvar_t *sv_rollangle;
|
|||
extern cvar_t *sv_rollspeed;
|
||||
extern cvar_t *sv_maxspeed;
|
||||
extern cvar_t *sv_maxclients;
|
||||
extern cvar_t *sv_physics;
|
||||
extern sv_client_t *sv_client;
|
||||
|
||||
//===========================================================
|
||||
|
|
|
@ -719,7 +719,11 @@ pfnPrecacheModel
|
|||
*/
|
||||
int pfnPrecacheModel( const char *s )
|
||||
{
|
||||
return SV_ModelIndex( s );
|
||||
int modelIndex = SV_ModelIndex( s );
|
||||
|
||||
CM_RegisterModel( s, modelIndex );
|
||||
|
||||
return modelIndex;
|
||||
}
|
||||
|
||||
/*
|
||||
|
|
|
@ -48,7 +48,7 @@ int SV_FindIndex( const char *name, int start, int end, bool create )
|
|||
}
|
||||
|
||||
// register new resource
|
||||
com.strncpy (sv.configstrings[start+i], name, sizeof(sv.configstrings[i]));
|
||||
com.strncpy( sv.configstrings[start+i], name, sizeof( sv.configstrings[i] ));
|
||||
|
||||
if( sv.state != ss_loading )
|
||||
{
|
||||
|
@ -319,8 +319,7 @@ void SV_SpawnServer( const char *server, const char *startspot )
|
|||
for( i = 1; i < pe->NumBmodels(); i++ )
|
||||
{
|
||||
com.sprintf( sv.configstrings[CS_MODELS+1+i], "*%i", i );
|
||||
pe->RegisterModel( sv.configstrings[CS_MODELS+1+i], i+1 );
|
||||
sv.models[i+1] = i+1;
|
||||
CM_RegisterModel( sv.configstrings[CS_MODELS+1+i], i+1 );
|
||||
}
|
||||
|
||||
// precache and static commands can be issued during map initialization
|
||||
|
|
|
@ -29,7 +29,6 @@ cvar_t *sv_rollspeed;
|
|||
cvar_t *sv_maxspeed;
|
||||
cvar_t *sv_accelerate;
|
||||
cvar_t *sv_friction;
|
||||
cvar_t *sv_physics;
|
||||
cvar_t *hostname;
|
||||
cvar_t *sv_maxclients;
|
||||
cvar_t *public_server; // should heartbeats be sent
|
||||
|
@ -463,7 +462,6 @@ void SV_Init( void )
|
|||
sv_maxspeed = Cvar_Get("sv_maxspeed", DEFAULT_MAXSPEED, 0, "maximum speed a player can accelerate to when on ground");
|
||||
sv_accelerate = Cvar_Get( "sv_accelerate", DEFAULT_ACCEL, 0, "rate at which a player accelerates to sv_maxspeed" );
|
||||
sv_friction = Cvar_Get( "sv_friction", DEFAULT_FRICTION, 0, "how fast you slow down" );
|
||||
sv_physics = Cvar_Get( "cm_physic", "1", CVAR_ARCHIVE|CVAR_LATCH, "change physic model: 0 - Classic Quake Physic, 1 - Physics Engine" );
|
||||
sv_maxclients = Cvar_Get( "sv_maxclients", "1", CVAR_SERVERINFO|CVAR_LATCH, "server clients limit" );
|
||||
|
||||
public_server = Cvar_Get ("public", "0", 0, "change server type from private to public" );
|
||||
|
|
|
@ -29,28 +29,6 @@ solid_edge items only clip against bsp models.
|
|||
/*
|
||||
===============================================================================
|
||||
|
||||
LINE TESTING IN HULLS
|
||||
|
||||
===============================================================================
|
||||
*/
|
||||
int SV_ContentsMask( const edict_t *passedict )
|
||||
{
|
||||
if( passedict )
|
||||
{
|
||||
if( passedict->v.flags & FL_MONSTER )
|
||||
return MASK_MONSTERSOLID;
|
||||
else if( passedict->v.flags & FL_CLIENT )
|
||||
return MASK_PLAYERSOLID;
|
||||
else if( passedict->v.solid == SOLID_TRIGGER )
|
||||
return CONTENTS_SOLID|CONTENTS_BODY;
|
||||
return MASK_SOLID;
|
||||
}
|
||||
return MASK_SOLID;
|
||||
}
|
||||
|
||||
/*
|
||||
===============================================================================
|
||||
|
||||
Utility functions
|
||||
|
||||
===============================================================================
|
||||
|
@ -68,7 +46,7 @@ static int SV_TestEntityPosition( edict_t *ent, vec3_t offset )
|
|||
TraceResult trace;
|
||||
|
||||
VectorAdd( ent->v.origin, offset, org );
|
||||
trace = SV_Trace( org, ent->v.mins, ent->v.maxs, ent->v.origin, MOVE_NOMONSTERS, ent, CONTENTS_SOLID );
|
||||
trace = SV_Trace( org, ent->v.mins, ent->v.maxs, ent->v.origin, MOVE_NORMAL, ent, SV_ContentsMask( ent ));
|
||||
|
||||
if( trace.fStartSolid )
|
||||
return true;
|
||||
|
@ -480,7 +458,7 @@ SV_PushMove
|
|||
*/
|
||||
void SV_PushMove( edict_t *pusher, float movetime )
|
||||
{
|
||||
int i, e, index;
|
||||
int i, e;
|
||||
int checkcontents;
|
||||
bool rotated;
|
||||
float savesolid, movetime2, pushltime;
|
||||
|
@ -489,8 +467,8 @@ void SV_PushMove( edict_t *pusher, float movetime )
|
|||
int num_moved, numcheckentities;
|
||||
static edict_t *checkentities[MAX_EDICTS];
|
||||
model_t pushermodel = 0;
|
||||
TraceResult trace;
|
||||
word moved_edicts[MAX_EDICTS];
|
||||
TraceResult trace;
|
||||
|
||||
if( !pusher->v.velocity[0] && !pusher->v.velocity[1] && !pusher->v.velocity[2] && !pusher->v.avelocity[0] && !pusher->v.avelocity[1] && !pusher->v.avelocity[2])
|
||||
{
|
||||
|
@ -498,7 +476,7 @@ void SV_PushMove( edict_t *pusher, float movetime )
|
|||
return;
|
||||
}
|
||||
|
||||
switch((int) pusher->v.solid )
|
||||
switch( pusher->v.solid )
|
||||
{
|
||||
case SOLID_BSP:
|
||||
case SOLID_BBOX:
|
||||
|
@ -515,13 +493,13 @@ void SV_PushMove( edict_t *pusher, float movetime )
|
|||
MsgDev( D_WARN, "SV_PushMove: entity #%i, unrecognized solid type %f\n", NUM_FOR_EDICT( pusher ), pusher->v.solid );
|
||||
return;
|
||||
}
|
||||
index = (int)pusher->v.modelindex;
|
||||
if( index < 1 || index >= MAX_MODELS )
|
||||
|
||||
if( pusher->v.modelindex < 1 || pusher->v.modelindex >= MAX_MODELS )
|
||||
{
|
||||
MsgDev( D_WARN, "SV_PushMove: entity #%i has an invalid modelindex %f\n", NUM_FOR_EDICT( pusher ), pusher->v.modelindex );
|
||||
return;
|
||||
}
|
||||
pushermodel = sv.models[index];
|
||||
pushermodel = pusher->v.modelindex;
|
||||
|
||||
rotated = VectorLength2(pusher->v.angles) + VectorLength2(pusher->v.avelocity) > 0;
|
||||
|
||||
|
@ -1481,33 +1459,29 @@ void SV_Physics_ClientMove( sv_client_t *client, usercmd_t *cmd )
|
|||
svgame.dllFuncs.pfnPlayerPreThink( ent );
|
||||
svgame.globals->frametime = cmd->msec * 0.001f;
|
||||
|
||||
if( !sv_physics->integer )
|
||||
{
|
||||
// make sure the velocity is sane (not a NaN)
|
||||
SV_CheckVelocity( ent );
|
||||
if( DotProduct(ent->v.velocity, ent->v.velocity) < 0.0001 )
|
||||
VectorClear( ent->v.velocity );
|
||||
// make sure the velocity is sane (not a NaN)
|
||||
SV_CheckVelocity( ent );
|
||||
if( DotProduct(ent->v.velocity, ent->v.velocity) < 0.0001 )
|
||||
VectorClear( ent->v.velocity );
|
||||
|
||||
switch( ent->v.movetype )
|
||||
{
|
||||
case MOVETYPE_WALK:
|
||||
// perform MOVETYPE_WALK behavior
|
||||
if(!SV_CheckWater( ent ) && !( ent->v.flags & FL_WATERJUMP ))
|
||||
SV_AddGravity( ent );
|
||||
SV_CheckStuck( ent );
|
||||
SV_WalkMove( ent );
|
||||
break;
|
||||
case MOVETYPE_NOCLIP:
|
||||
SV_CheckWater( ent );
|
||||
VectorMA( ent->v.origin, svgame.globals->frametime, ent->v.velocity, ent->v.origin );
|
||||
VectorMA( ent->v.angles, svgame.globals->frametime, ent->v.avelocity, ent->v.angles );
|
||||
break;
|
||||
}
|
||||
SV_CheckVelocity( ent );
|
||||
SV_LinkEdict( ent );
|
||||
SV_CheckVelocity( ent );
|
||||
}
|
||||
else SV_LinkEdict( ent );
|
||||
switch( ent->v.movetype )
|
||||
{
|
||||
case MOVETYPE_WALK:
|
||||
// perform MOVETYPE_WALK behavior
|
||||
if(!SV_CheckWater( ent ) && !( ent->v.flags & FL_WATERJUMP ))
|
||||
SV_AddGravity( ent );
|
||||
SV_CheckStuck( ent );
|
||||
SV_WalkMove( ent );
|
||||
break;
|
||||
case MOVETYPE_NOCLIP:
|
||||
SV_CheckWater( ent );
|
||||
VectorMA( ent->v.origin, svgame.globals->frametime, ent->v.velocity, ent->v.origin );
|
||||
VectorMA( ent->v.angles, svgame.globals->frametime, ent->v.avelocity, ent->v.angles );
|
||||
break;
|
||||
}
|
||||
SV_CheckVelocity( ent );
|
||||
SV_LinkEdict( ent );
|
||||
SV_CheckVelocity( ent );
|
||||
|
||||
if( ent->v.movetype != MOVETYPE_NOCLIP )
|
||||
SV_TouchTriggers( ent );
|
||||
|
|
|
@ -161,9 +161,10 @@ SV_ClearWorld
|
|||
void SV_ClearWorld( void )
|
||||
{
|
||||
vec3_t mins, maxs;
|
||||
int worldIndex = 1;
|
||||
|
||||
sv_numareanodes = 0;
|
||||
Mod_GetBounds( sv.models[1], mins, maxs );
|
||||
Mod_GetBounds( worldIndex, mins, maxs );
|
||||
Mem_Set( sv_areanodes, 0, sizeof( sv_areanodes ));
|
||||
SV_CreateAreaNode( 0, mins, maxs );
|
||||
}
|
||||
|
@ -184,7 +185,7 @@ model_t SV_HullForEntity( const edict_t *ent )
|
|||
// explicit hulls in the BSP model
|
||||
return ent->v.modelindex;
|
||||
}
|
||||
if( ent->v.solid == SOLID_CAPSULE )
|
||||
if( ent->v.flags & FL_MONSTER || ent->v.solid == SOLID_CAPSULE )
|
||||
{
|
||||
// create a temp capsule from bounding box sizes
|
||||
return pe->TempModel( ent->v.mins, ent->v.maxs, true );
|
||||
|
@ -193,6 +194,49 @@ model_t SV_HullForEntity( const edict_t *ent )
|
|||
return pe->TempModel( ent->v.mins, ent->v.maxs, false );
|
||||
}
|
||||
|
||||
int SV_ContentsMask( const edict_t *passedict )
|
||||
{
|
||||
if( passedict )
|
||||
{
|
||||
if( passedict->v.flags & FL_MONSTER )
|
||||
return MASK_MONSTERSOLID;
|
||||
else if( passedict->v.flags & FL_CLIENT )
|
||||
return MASK_PLAYERSOLID;
|
||||
else if( passedict->v.solid == SOLID_TRIGGER )
|
||||
return CONTENTS_SOLID|CONTENTS_BODY;
|
||||
return MASK_SOLID;
|
||||
}
|
||||
return MASK_SOLID;
|
||||
}
|
||||
|
||||
int SV_ContentsForEntity( const edict_t *ent )
|
||||
{
|
||||
if( !ent || ent->free )
|
||||
return CONTENTS_NONE;
|
||||
|
||||
if( ent->v.flags & ( FL_MONSTER|FL_CLIENT ))
|
||||
{
|
||||
if( ent->v.health > 0 )
|
||||
return CONTENTS_BODY;
|
||||
return CONTENTS_CORPSE;
|
||||
}
|
||||
switch( ent->v.solid )
|
||||
{
|
||||
case SOLID_NOT:
|
||||
return CONTENTS_NONE;
|
||||
case SOLID_BSP:
|
||||
case SOLID_BBOX:
|
||||
case SOLID_MESH:
|
||||
case SOLID_SPHERE:
|
||||
case SOLID_CAPSULE:
|
||||
case SOLID_SLIDEBOX:
|
||||
return CONTENTS_SOLID;
|
||||
case SOLID_TRIGGER:
|
||||
return CONTENTS_TRIGGER;
|
||||
}
|
||||
|
||||
return CONTENTS_NONE;
|
||||
}
|
||||
|
||||
/*
|
||||
=================
|
||||
|
@ -453,7 +497,7 @@ void SV_ClipToEntity( TraceResult *trace, const vec3_t start, const vec3_t mins,
|
|||
|
||||
// if it doesn't have any brushes of a type we
|
||||
// are looking for, ignore it
|
||||
if(!( mask & e->v.contents ))
|
||||
if(!( mask & SV_ContentsForEntity( e )))
|
||||
{
|
||||
trace->flFraction = 1.0f;
|
||||
return;
|
||||
|
@ -513,15 +557,17 @@ void SV_ClipMoveToEntities( host_clip_t *clip )
|
|||
{
|
||||
continue; // don't clip against own missiles
|
||||
}
|
||||
/*
|
||||
if( touch->v.owner == passOwner )
|
||||
{
|
||||
continue; // don't clip against other missiles from our owner
|
||||
}
|
||||
*/
|
||||
}
|
||||
|
||||
// if it doesn't have any brushes of a type we
|
||||
// are looking for, ignore it
|
||||
if(!( clip->mask & touch->v.contents ))
|
||||
if(!( clip->mask & SV_ContentsForEntity( touch )))
|
||||
{
|
||||
continue;
|
||||
}
|
||||
|
@ -532,7 +578,6 @@ void SV_ClipMoveToEntities( host_clip_t *clip )
|
|||
origin = touch->v.origin;
|
||||
angles = touch->v.angles;
|
||||
|
||||
|
||||
if( touch->v.solid != SOLID_BSP )
|
||||
angles = vec3_origin; // boxes don't rotate
|
||||
|
||||
|
|
|
@ -1360,7 +1360,7 @@ void FS_CreateGameInfo( const char *filename )
|
|||
com.strncat( buffer, "\nsp_spawn\t\t\"info_player_start\"", MAX_SYSPATH );
|
||||
com.strncat( buffer, "\ndm_spawn\t\t\"info_player_deathmatch\"", MAX_SYSPATH );
|
||||
com.strncat( buffer, "\nctf_spawn\t\t\"info_player_ctf\"", MAX_SYSPATH );
|
||||
com.strncat( buffer, "\ncoop_spawn\t\t\"info_player_coop\"", MAX_SYSPATH );
|
||||
com.strncat( buffer, "\ncoop_spawn\t\"info_player_coop\"", MAX_SYSPATH );
|
||||
com.strncat( buffer, "\nteam_spawn\t\"info_player_team\"", MAX_SYSPATH );
|
||||
com.strncat( buffer, "\nplayermins\t\"-32 -32 -32\"", MAX_SYSPATH );
|
||||
com.strncat( buffer, "\nplayermaxs\t\"32 32 32\"", MAX_SYSPATH );
|
||||
|
|
|
@ -6,6 +6,53 @@
|
|||
--------------------Configuration: launch - Win32 Debug--------------------
|
||||
</h3>
|
||||
<h3>Command Lines</h3>
|
||||
Creating temporary file "C:\DOCUME~1\ÌÈØÀ\LOCALS~1\Temp\RSP394E.tmp" with contents
|
||||
[
|
||||
/nologo /MDd /W3 /Gm /Gi /GX /ZI /Od /I "./" /I "imagelib" /I "../public" /I "../common" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /FR"..\temp\launch\!debug/" /Fo"..\temp\launch\!debug/" /Fd"..\temp\launch\!debug/" /FD /GZ /c
|
||||
"D:\Xash3D\src_main\launch\filesystem.c"
|
||||
]
|
||||
Creating command line "cl.exe @"C:\DOCUME~1\ÌÈØÀ\LOCALS~1\Temp\RSP394E.tmp""
|
||||
Creating temporary file "C:\DOCUME~1\ÌÈØÀ\LOCALS~1\Temp\RSP394F.tmp" with contents
|
||||
[
|
||||
zlib.lib png.lib jpg.lib user32.lib gdi32.lib shell32.lib advapi32.lib winmm.lib /nologo /dll /incremental:yes /pdb:"..\temp\launch\!debug/launch.pdb" /debug /machine:I386 /nodefaultlib:"libc.lib" /out:"..\temp\launch\!debug/launch.dll" /implib:"..\temp\launch\!debug/launch.lib" /pdbtype:sept /libpath:"./imagelib"
|
||||
"\Xash3D\src_main\temp\launch\!debug\cmd.obj"
|
||||
"\Xash3D\src_main\temp\launch\!debug\console.obj"
|
||||
"\Xash3D\src_main\temp\launch\!debug\cpuinfo.obj"
|
||||
"\Xash3D\src_main\temp\launch\!debug\crclib.obj"
|
||||
"\Xash3D\src_main\temp\launch\!debug\cvar.obj"
|
||||
"\Xash3D\src_main\temp\launch\!debug\export.obj"
|
||||
"\Xash3D\src_main\temp\launch\!debug\filesystem.obj"
|
||||
"\Xash3D\src_main\temp\launch\!debug\img_bmp.obj"
|
||||
"\Xash3D\src_main\temp\launch\!debug\img_dds.obj"
|
||||
"\Xash3D\src_main\temp\launch\!debug\img_jpg.obj"
|
||||
"\Xash3D\src_main\temp\launch\!debug\img_main.obj"
|
||||
"\Xash3D\src_main\temp\launch\!debug\img_pcx.obj"
|
||||
"\Xash3D\src_main\temp\launch\!debug\img_png.obj"
|
||||
"\Xash3D\src_main\temp\launch\!debug\img_tga.obj"
|
||||
"\Xash3D\src_main\temp\launch\!debug\img_utils.obj"
|
||||
"\Xash3D\src_main\temp\launch\!debug\img_vtf.obj"
|
||||
"\Xash3D\src_main\temp\launch\!debug\img_wad.obj"
|
||||
"\Xash3D\src_main\temp\launch\!debug\memlib.obj"
|
||||
"\Xash3D\src_main\temp\launch\!debug\network.obj"
|
||||
"\Xash3D\src_main\temp\launch\!debug\parselib.obj"
|
||||
"\Xash3D\src_main\temp\launch\!debug\patch.obj"
|
||||
"\Xash3D\src_main\temp\launch\!debug\stdlib.obj"
|
||||
"\Xash3D\src_main\temp\launch\!debug\system.obj"
|
||||
"\Xash3D\src_main\temp\launch\!debug\utils.obj"
|
||||
]
|
||||
Creating command line "link.exe @"C:\DOCUME~1\ÌÈØÀ\LOCALS~1\Temp\RSP394F.tmp""
|
||||
Creating temporary file "C:\DOCUME~1\ÌÈØÀ\LOCALS~1\Temp\RSP3950.bat" with contents
|
||||
[
|
||||
@echo off
|
||||
copy \Xash3D\src_main\temp\launch\!debug\launch.dll "D:\Xash3D\bin\launch.dll"
|
||||
]
|
||||
Creating command line ""C:\DOCUME~1\ÌÈØÀ\LOCALS~1\Temp\RSP3950.bat""
|
||||
Compiling...
|
||||
filesystem.c
|
||||
Linking...
|
||||
<h3>Output Window</h3>
|
||||
Performing Custom Build Step on \Xash3D\src_main\temp\launch\!debug\launch.dll
|
||||
‘ª®¯¨à®¢ ® ä ©«®¢: 1.
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -8,11 +8,10 @@
|
|||
|
||||
//#define DEBUG_SIZE
|
||||
#define DEBUG_BLOCK
|
||||
//#define DEBUG_PATCH
|
||||
//#define DEBUG_BBOX
|
||||
|
||||
void CM_DrawCollision( cmdraw_t drawPoly )
|
||||
{
|
||||
static cvar_t *cv, *cv2;
|
||||
const cSurfaceCollide_t *pc;
|
||||
cfacet_t *facet;
|
||||
cwinding_t *w;
|
||||
|
@ -27,8 +26,6 @@ void CM_DrawCollision( cmdraw_t drawPoly )
|
|||
#endif
|
||||
|
||||
if( !drawPoly ) return;
|
||||
if( !cv2 ) cv2 = Cvar_Get( "r_debugsurface", "0", 0, "render debugsurface" );
|
||||
if( !cv ) cv = Cvar_Get( "cm_debugSize", "2", 0, "debug polygon line size" );
|
||||
if( !debugSurfaceCollide ) return;
|
||||
|
||||
pc = debugSurfaceCollide;
|
||||
|
@ -55,7 +52,7 @@ void CM_DrawCollision( cmdraw_t drawPoly )
|
|||
plane[3] = -plane[3];
|
||||
}
|
||||
#ifdef DEBUG_SIZE
|
||||
plane[3] += cv->value;
|
||||
plane[3] += cm_debugsize->value;
|
||||
|
||||
for( n = 0; n < 3; n++ )
|
||||
{
|
||||
|
@ -93,7 +90,7 @@ void CM_DrawCollision( cmdraw_t drawPoly )
|
|||
}
|
||||
#if DEBUG_SIZE
|
||||
// if( !facet->borderNoAdjust[j] )
|
||||
plane[3] -= cv->value;
|
||||
plane[3] -= cm_debugsize->value;
|
||||
|
||||
for( n = 0; n < 3; n++ )
|
||||
{
|
||||
|
@ -134,7 +131,7 @@ void CM_DrawCollision( cmdraw_t drawPoly )
|
|||
}
|
||||
#endif
|
||||
|
||||
#ifdef DEBUG_PATCH
|
||||
#ifdef DEBUG_BBOX
|
||||
{
|
||||
vec3_t v[4];
|
||||
|
||||
|
|
|
@ -20,12 +20,10 @@ extern stdlib_api_t com;
|
|||
//
|
||||
// local cvars
|
||||
//
|
||||
extern cvar_t *cm_triangles;
|
||||
extern cvar_t *cm_noareas;
|
||||
extern cvar_t *cm_nomeshes;
|
||||
extern cvar_t *cm_nocurves;
|
||||
extern cvar_t *cm_showcurves;
|
||||
extern cvar_t *cm_showtriangles;
|
||||
extern cvar_t *cm_novis;
|
||||
extern cvar_t *cm_debugsize;
|
||||
|
||||
#define Host_Error com.error
|
||||
#define CAPSULE_MODEL_HANDLE MAX_MODELS - 2
|
||||
|
@ -93,7 +91,7 @@ typedef struct
|
|||
typedef struct
|
||||
{
|
||||
int numpoints;
|
||||
vec3_t p[4]; // FIXME: variable sized
|
||||
vec3_t p[4];
|
||||
} cwinding_t;
|
||||
|
||||
typedef struct
|
||||
|
@ -214,7 +212,6 @@ typedef struct
|
|||
TraceResult trace; // returned from trace call
|
||||
sphere_t sphere; // sphere for oriented capsule collision
|
||||
biSphere_t biSphere; // bi-sphere params
|
||||
bool lateralCollision; // whether or not to test for lateral collision
|
||||
} traceWork_t;
|
||||
|
||||
typedef struct leaflist_s
|
||||
|
@ -279,6 +276,8 @@ typedef struct clipmap_s
|
|||
int numsurfaces;
|
||||
|
||||
int floodvalid;
|
||||
|
||||
int numInvalidBevels; // bevels failed
|
||||
} clipmap_t;
|
||||
|
||||
typedef struct clipmap_static_s
|
||||
|
@ -344,6 +343,8 @@ void CM_FloodAreaConnections( void );
|
|||
//
|
||||
// cm_model.c
|
||||
//
|
||||
extern cmodel_t *sv_models[];
|
||||
|
||||
const void *CM_VisData( void );
|
||||
int CM_NumClusters( void );
|
||||
int CM_NumShaders( void );
|
||||
|
@ -382,8 +383,6 @@ void CM_ChopWindingInPlace( cwinding_t **inout, vec3_t normal, float dist, float
|
|||
//
|
||||
void CM_BoxTrace( TraceResult *tr, const vec3_t p1, const vec3_t p2, vec3_t mins, vec3_t maxs, model_t model, int mask, trType_t type );
|
||||
void CM_TransformedBoxTrace( TraceResult *tr, const vec3_t p1, const vec3_t p2, vec3_t mins, vec3_t maxs, model_t model, int mask, const vec3_t org, const vec3_t ang, trType_t type );
|
||||
void CM_BiSphereTrace( TraceResult *tr, const vec3_t p1, const vec3_t p2, float startRad, float endRad, model_t model, int mask );
|
||||
void CM_TransformedBiSphereTrace( TraceResult *tr, const vec3_t p1, const vec3_t p2, float startRad, float endRad, model_t model, int mask, const vec3_t origin );
|
||||
|
||||
//
|
||||
// cm_patches.c
|
||||
|
@ -395,7 +394,6 @@ void CM_ClearLevelPatches( void );
|
|||
// cm_math.c
|
||||
//
|
||||
int CM_BoxOnPlaneSide( const vec3_t emins, const vec3_t emaxs, const cplane_t *p );
|
||||
float DistanceBetweenLineSegmentsSquared( const vec3_t sP0, const vec3_t sP1, const vec3_t tP0, const vec3_t tP1, float *s, float *t );
|
||||
bool CM_BoundsIntersect( const vec3_t mins, const vec3_t maxs, const vec3_t mins2, const vec3_t maxs2 );
|
||||
bool CM_BoundsIntersectPoint( const vec3_t mins, const vec3_t maxs, const vec3_t point );
|
||||
bool CM_PlaneFromPoints( vec4_t plane, const vec3_t a, const vec3_t b, const vec3_t c );
|
||||
|
|
|
@ -8,12 +8,10 @@
|
|||
physic_imp_t pi;
|
||||
stdlib_api_t com;
|
||||
|
||||
cvar_t *cm_triangles;
|
||||
cvar_t *cm_noareas;
|
||||
cvar_t *cm_nomeshes;
|
||||
cvar_t *cm_nocurves;
|
||||
cvar_t *cm_showcurves;
|
||||
cvar_t *cm_showtriangles;
|
||||
cvar_t *cm_novis;
|
||||
cvar_t *cm_debugsize;
|
||||
|
||||
bool CM_InitPhysics( void )
|
||||
{
|
||||
|
@ -21,11 +19,10 @@ bool CM_InitPhysics( void )
|
|||
Mem_Set( cms.nullrow, 0xFF, MAX_MAP_LEAFS / 8 );
|
||||
|
||||
cm_noareas = Cvar_Get( "cm_noareas", "0", 0, "ignore clipmap areas" );
|
||||
cm_triangles = Cvar_Get( "cm_triangles", "0", CVAR_ARCHIVE, "convert all collide polygons into triangles" );
|
||||
cm_nocurves = Cvar_Get( "cm_nocurves", "0", CVAR_ARCHIVE|CVAR_LATCH, "make patches uncollidable" );
|
||||
cm_showcurves = Cvar_Get( "cm_showcurves", "0", 0, "show collision curves" );
|
||||
cm_showtriangles = Cvar_Get( "cm_showtris", "0", 0, "show collision triangles" );
|
||||
cm_novis = Cvar_Get( "cm_novis", "0", 0, "ignore vis information (perfomance test)" );
|
||||
cm_nomeshes = Cvar_Get( "cm_nomeshes", "1", CVAR_ARCHIVE, "make meshes uncollidable" ); // q3a compatible
|
||||
cm_nocurves = Cvar_Get( "cm_nocurves", "0", CVAR_ARCHIVE, "make curves uncollidable" );
|
||||
cm_debugsize = Cvar_Get( "cm_debugsize", "2", 0, "adjust the debug lines scale" );
|
||||
sv_models[0] = NULL; // 0 modelindex isn't used
|
||||
|
||||
return true;
|
||||
}
|
||||
|
@ -91,8 +88,6 @@ physic_exp_t DLLEXPORT *CreateAPI ( stdlib_api_t *input, physic_imp_t *engfuncs
|
|||
Phys.PointContents2 = CM_TransformedPointContents;
|
||||
Phys.BoxTrace1 = CM_BoxTrace;
|
||||
Phys.BoxTrace2 = CM_TransformedBoxTrace;
|
||||
Phys.BiSphereTrace1 = CM_BiSphereTrace;
|
||||
Phys.BiSphereTrace2 = CM_TransformedBiSphereTrace;
|
||||
|
||||
Phys.TempModel = CM_TempBoxModel;
|
||||
|
||||
|
|
|
@ -150,102 +150,4 @@ void CM_SnapVector( vec3_t normal )
|
|||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
================
|
||||
DistanceBetweenLineSegmentsSquared
|
||||
|
||||
Return the smallest distance between two line segments, squared
|
||||
================
|
||||
*/
|
||||
float DistanceBetweenLineSegmentsSquared( const vec3_t sP0, const vec3_t sP1, const vec3_t tP0, const vec3_t tP1, float *s, float *t )
|
||||
{
|
||||
vec3_t sMag, tMag, diff;
|
||||
float a, b, c, d, e;
|
||||
float D;
|
||||
float sN, sD;
|
||||
float tN, tD;
|
||||
vec3_t separation;
|
||||
|
||||
VectorSubtract( sP1, sP0, sMag );
|
||||
VectorSubtract( tP1, tP0, tMag );
|
||||
VectorSubtract( sP0, tP0, diff );
|
||||
a = DotProduct( sMag, sMag );
|
||||
b = DotProduct( sMag, tMag );
|
||||
c = DotProduct( tMag, tMag );
|
||||
d = DotProduct( sMag, diff );
|
||||
e = DotProduct( tMag, diff );
|
||||
sD = tD = D = a * c - b * b;
|
||||
|
||||
if( D < LINE_DISTANCE_EPSILON )
|
||||
{
|
||||
// the lines are almost parallel
|
||||
sN = 0.0f; // force using point P0 on segment S1
|
||||
sD = 1.0f; // to prevent possible division by 0.0 later
|
||||
tN = e;
|
||||
tD = c;
|
||||
}
|
||||
else
|
||||
{
|
||||
// get the closest points on the infinite lines
|
||||
sN = (b * e - c * d);
|
||||
tN = (a * e - b * d);
|
||||
|
||||
if( sN < 0.0f )
|
||||
{
|
||||
// sN < 0 => the s=0 edge is visible
|
||||
sN = 0.0f;
|
||||
tN = e;
|
||||
tD = c;
|
||||
}
|
||||
else if( sN > sD )
|
||||
{
|
||||
// sN > sD => the s=1 edge is visible
|
||||
sN = sD;
|
||||
tN = e + b;
|
||||
tD = c;
|
||||
}
|
||||
}
|
||||
|
||||
if( tN < 0.0f )
|
||||
{
|
||||
// tN < 0 => the t=0 edge is visible
|
||||
tN = 0.0f;
|
||||
|
||||
// recompute sN for this edge
|
||||
if( -d < 0.0f ) sN = 0.0f;
|
||||
else if( -d > a ) sN = sD;
|
||||
else
|
||||
{
|
||||
sN = -d;
|
||||
sD = a;
|
||||
}
|
||||
}
|
||||
else if( tN > tD )
|
||||
{
|
||||
// tN > tD => the t=1 edge is visible
|
||||
tN = tD;
|
||||
|
||||
// recompute sN for this edge
|
||||
if((-d + b) < 0.0f ) sN = 0;
|
||||
else if((-d + b) > a ) sN = sD;
|
||||
else
|
||||
{
|
||||
sN = (-d + b);
|
||||
sD = a;
|
||||
}
|
||||
}
|
||||
|
||||
// finally do the division to get *s and *t
|
||||
*s = (fabs( sN ) < LINE_DISTANCE_EPSILON ? 0.0f : sN / sD );
|
||||
*t = (fabs( tN ) < LINE_DISTANCE_EPSILON ? 0.0f : tN / tD );
|
||||
|
||||
// get the difference of the two closest points
|
||||
VectorScale( sMag, *s, sMag );
|
||||
VectorScale( tMag, *t, tMag );
|
||||
VectorAdd( diff, sMag, separation );
|
||||
VectorSubtract( separation, tMag, separation );
|
||||
|
||||
return VectorLength2( separation );
|
||||
}
|
|
@ -228,6 +228,8 @@ void BSP_LoadModels( lump_t *l )
|
|||
for( j = 0; j < out->leaf.numleafsurfaces; j++ )
|
||||
indexes[j] = LittleLong( in->firstsurface ) + j;
|
||||
}
|
||||
|
||||
sv_models[1] = cm.models; // make link to world
|
||||
}
|
||||
|
||||
/*
|
||||
|
@ -767,7 +769,7 @@ void IBSP_LoadSurfaces( lump_t *surfs, lump_t *verts, lump_t *elems, bool xreal_
|
|||
// create the internal facet structure
|
||||
surface->sc = CM_GeneratePatchCollide( width, height, vertexes );
|
||||
}
|
||||
else if( LittleLong( in->facetype ) == MST_TRISURF && cm_triangles->integer )
|
||||
else if( LittleLong( in->facetype ) == MST_TRISURF )
|
||||
{
|
||||
cm.surfaces[i] = surface = Mem_Alloc( cms.mempool, sizeof( *surface ));
|
||||
surface->type = MST_TRISURF;
|
||||
|
@ -887,7 +889,7 @@ void RBSP_LoadSurfaces( lump_t *surfs, lump_t *verts, lump_t *elems )
|
|||
// create the internal facet structure
|
||||
surface->sc = CM_GeneratePatchCollide( width, height, vertexes );
|
||||
}
|
||||
else if( LittleLong( in->facetype ) == MST_TRISURF && cm_triangles->integer )
|
||||
else if( LittleLong( in->facetype ) == MST_TRISURF )
|
||||
{
|
||||
cm.surfaces[i] = surface = Mem_Alloc( cms.mempool, sizeof( *surface ));
|
||||
surface->type = MST_TRISURF;
|
||||
|
@ -972,6 +974,7 @@ void CM_BeginRegistration( const char *name, bool clientload, uint *checksum )
|
|||
CM_FreeWorld(); // release old map
|
||||
// cinematic servers won't have anything at all
|
||||
cm.numleafs = cm.numclusters = cm.numareas = 1;
|
||||
sv_models[1] = NULL; // no worldmodel
|
||||
*checksum = 0;
|
||||
return;
|
||||
}
|
||||
|
@ -988,6 +991,8 @@ void CM_BeginRegistration( const char *name, bool clientload, uint *checksum )
|
|||
// ... and reset entity script
|
||||
Com_ResetScript( cm.entityscript );
|
||||
}
|
||||
sv_models[1] = cm.models; // make link to world
|
||||
|
||||
// still have the right version
|
||||
return;
|
||||
}
|
||||
|
@ -1035,7 +1040,7 @@ void CM_BeginRegistration( const char *name, bool clientload, uint *checksum )
|
|||
}
|
||||
|
||||
com.strncpy( cm.name, name, MAX_STRING );
|
||||
|
||||
|
||||
// load into heap
|
||||
BSP_LoadEntityString( &hdr->lumps[LUMP_ENTITIES] );
|
||||
BSP_LoadShaders( &hdr->lumps[LUMP_SHADERS] );
|
||||
|
@ -1054,12 +1059,14 @@ void CM_BeginRegistration( const char *name, bool clientload, uint *checksum )
|
|||
if( raven_bsp ) RBSP_LoadSurfaces( &hdr->lumps[LUMP_SURFACES], &hdr->lumps[LUMP_VERTEXES], &hdr->lumps[LUMP_ELEMENTS] );
|
||||
else IBSP_LoadSurfaces( &hdr->lumps[LUMP_SURFACES], &hdr->lumps[LUMP_VERTEXES], &hdr->lumps[LUMP_ELEMENTS], xreal_bsp );
|
||||
|
||||
MsgDev( D_INFO, "CM_CreateCollisionTree: %i total invalid bevels\n", cm.numInvalidBevels );
|
||||
|
||||
BSP_CreateBrushSideWindings ();
|
||||
CM_InitBoxHull ();
|
||||
CM_FloodAreaConnections ();
|
||||
CM_CalcPHS ();
|
||||
Mem_Free( buf );
|
||||
|
||||
|
||||
cms.loaded = true; // all done
|
||||
}
|
||||
|
||||
|
@ -1153,7 +1160,7 @@ void CM_ModelBounds( model_t handle, vec3_t mins, vec3_t maxs )
|
|||
}
|
||||
else
|
||||
{
|
||||
MsgDev( D_ERROR, "Mod_GetBounds: NULL model\n" );
|
||||
MsgDev( D_ERROR, "Mod_GetBounds: NULL model %i\n", handle );
|
||||
if( mins ) VectorSet( mins, -32, -32, -32 );
|
||||
if( maxs ) VectorSet( maxs, 32, 32, 32 );
|
||||
}
|
||||
|
@ -1245,6 +1252,9 @@ bool CM_RegisterModel( const char *name, int index )
|
|||
{
|
||||
cmodel_t *mod;
|
||||
|
||||
if( index < 0 || index > MAX_MODELS )
|
||||
return false;
|
||||
|
||||
// this array used for acess to servermodels
|
||||
mod = CM_ModForName( name );
|
||||
sv_models[index] = mod;
|
||||
|
|
|
@ -683,7 +683,7 @@ static void CM_AddFacetBevels( cfacet_t *facet )
|
|||
|
||||
if( i == facet->numBorders )
|
||||
{
|
||||
if( facet->numBorders > MAX_FACET_BEVELS)
|
||||
if( facet->numBorders > MAX_FACET_BEVELS )
|
||||
MsgDev( D_ERROR, "CM_AddFacetBevels: too many bevels\n" );
|
||||
facet->borderPlanes[facet->numBorders] = CM_FindPlane2( plane, &flipped );
|
||||
facet->borderNoAdjust[facet->numBorders] = 0;
|
||||
|
@ -772,7 +772,7 @@ static void CM_AddFacetBevels( cfacet_t *facet )
|
|||
|
||||
if( !w2 )
|
||||
{
|
||||
MsgDev( D_WARN, "CM_AddFacetBevels: invalid bevel\n" );
|
||||
cm.numInvalidBevels++;
|
||||
continue;
|
||||
}
|
||||
else CM_FreeWinding( w2 );
|
||||
|
|
|
@ -17,19 +17,36 @@ cwinding_t *CM_AllocWinding( int points )
|
|||
int s;
|
||||
|
||||
s = sizeof( vec3_t ) * points + sizeof( int );
|
||||
w = malloc( s ); // FIXME: use Mem_Alloc instead
|
||||
w = malloc( s );
|
||||
memset( w, 0, s );
|
||||
|
||||
return w;
|
||||
}
|
||||
|
||||
/*
|
||||
==================
|
||||
CM_CopyWinding
|
||||
==================
|
||||
*/
|
||||
cwinding_t *CM_CopyWinding( cwinding_t *w )
|
||||
{
|
||||
size_t size;
|
||||
cwinding_t *c;
|
||||
|
||||
c = CM_AllocWinding( w->numpoints );
|
||||
size = (long)((cwinding_t *) 0)->p[w->numpoints];
|
||||
Mem_Copy( c, w, size );
|
||||
|
||||
return c;
|
||||
}
|
||||
|
||||
void CM_FreeWinding( cwinding_t *w )
|
||||
{
|
||||
if(*(uint *)w == 0xDEADDEAD )
|
||||
Host_Error( "CM_FreeWinding: already freed\n" );
|
||||
*(uint *)w = 0xDEADDEAD;
|
||||
|
||||
free( w ); // FIXME: use Mem_Free instead
|
||||
free( w );
|
||||
}
|
||||
|
||||
/*
|
||||
|
@ -125,23 +142,6 @@ cwinding_t *CM_BaseWindingForPlane( vec3_t normal, float dist )
|
|||
return w;
|
||||
}
|
||||
|
||||
/*
|
||||
==================
|
||||
CM_CopyWinding
|
||||
==================
|
||||
*/
|
||||
cwinding_t *CM_CopyWinding( cwinding_t *w )
|
||||
{
|
||||
size_t size;
|
||||
cwinding_t *c;
|
||||
|
||||
c = CM_AllocWinding( w->numpoints );
|
||||
size = (long)((cwinding_t *) 0)->p[w->numpoints];
|
||||
Mem_Copy( c, w, size );
|
||||
|
||||
return c;
|
||||
}
|
||||
|
||||
/*
|
||||
=============
|
||||
CM_ChopWindingInPlace
|
||||
|
|
1570
physic/cm_trace.c
1570
physic/cm_trace.c
File diff suppressed because it is too large
Load Diff
|
@ -456,7 +456,7 @@ static void CM_AddFacetBevels( cfacet_t *facet )
|
|||
|
||||
if( !w2 )
|
||||
{
|
||||
MsgDev( D_WARN, "CM_AddFacetBevels: invalid bevel\n" );
|
||||
cm.numInvalidBevels++;
|
||||
continue;
|
||||
}
|
||||
else CM_FreeWinding( w2 );
|
||||
|
@ -700,7 +700,5 @@ cSurfaceCollide_t *CM_GenerateTriangleSoupCollide( int numVertexes, vec3_t *vert
|
|||
sc->bounds[1][1] += 1;
|
||||
sc->bounds[1][2] += 1;
|
||||
|
||||
MsgDev( D_INFO, "CM_GenerateTriangleSoupCollide: %i planes %i facets\n", sc->numPlanes, sc->numFacets );
|
||||
|
||||
return sc;
|
||||
}
|
||||
}
|
|
@ -6,14 +6,13 @@
|
|||
--------------------Configuration: physic - Win32 Debug--------------------
|
||||
</h3>
|
||||
<h3>Command Lines</h3>
|
||||
Creating temporary file "C:\DOCUME~1\ÌÈØÀ\LOCALS~1\Temp\RSP3321.tmp" with contents
|
||||
Creating temporary file "C:\DOCUME~1\ÌÈØÀ\LOCALS~1\Temp\RSP392C.tmp" with contents
|
||||
[
|
||||
/nologo /MDd /W3 /Gm /Gi /GX /ZI /Od /I "../public" /I "../common" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /FR"..\temp\physic\!debug/" /Fo"..\temp\physic\!debug/" /Fd"..\temp\physic\!debug/" /FD /GZ /c
|
||||
"D:\Xash3D\src_main\physic\cm_model.c"
|
||||
"D:\Xash3D\src_main\physic\cm_trace.c"
|
||||
"D:\Xash3D\src_main\physic\cm_trisoup.c"
|
||||
]
|
||||
Creating command line "cl.exe @"C:\DOCUME~1\ÌÈØÀ\LOCALS~1\Temp\RSP3321.tmp""
|
||||
Creating temporary file "C:\DOCUME~1\ÌÈØÀ\LOCALS~1\Temp\RSP3322.tmp" with contents
|
||||
Creating command line "cl.exe @"C:\DOCUME~1\ÌÈØÀ\LOCALS~1\Temp\RSP392C.tmp""
|
||||
Creating temporary file "C:\DOCUME~1\ÌÈØÀ\LOCALS~1\Temp\RSP392D.tmp" with contents
|
||||
[
|
||||
user32.lib msvcrtd.lib /nologo /dll /incremental:yes /pdb:"..\temp\physic\!debug/physic.pdb" /debug /machine:I386 /nodefaultlib:"libc.lib" /out:"..\temp\physic\!debug/physic.dll" /implib:"..\temp\physic\!debug/physic.lib" /pdbtype:sept
|
||||
"\Xash3D\src_main\temp\physic\!debug\cm_debug.obj"
|
||||
|
@ -28,17 +27,15 @@ user32.lib msvcrtd.lib /nologo /dll /incremental:yes /pdb:"..\temp\physic\!debug
|
|||
"\Xash3D\src_main\temp\physic\!debug\cm_trisoup.obj"
|
||||
"\Xash3D\src_main\temp\physic\!debug\cm_main.obj"
|
||||
]
|
||||
Creating command line "link.exe @"C:\DOCUME~1\ÌÈØÀ\LOCALS~1\Temp\RSP3322.tmp""
|
||||
Creating temporary file "C:\DOCUME~1\ÌÈØÀ\LOCALS~1\Temp\RSP3323.bat" with contents
|
||||
Creating command line "link.exe @"C:\DOCUME~1\ÌÈØÀ\LOCALS~1\Temp\RSP392D.tmp""
|
||||
Creating temporary file "C:\DOCUME~1\ÌÈØÀ\LOCALS~1\Temp\RSP392E.bat" with contents
|
||||
[
|
||||
@echo off
|
||||
copy \Xash3D\src_main\temp\physic\!debug\physic.dll "D:\Xash3D\bin\physic.dll"
|
||||
]
|
||||
Creating command line ""C:\DOCUME~1\ÌÈØÀ\LOCALS~1\Temp\RSP3323.bat""
|
||||
Creating command line ""C:\DOCUME~1\ÌÈØÀ\LOCALS~1\Temp\RSP392E.bat""
|
||||
Compiling...
|
||||
cm_model.c
|
||||
cm_trace.c
|
||||
Generating Code...
|
||||
cm_trisoup.c
|
||||
Linking...
|
||||
<h3>Output Window</h3>
|
||||
Performing Custom Build Step on \Xash3D\src_main\temp\physic\!debug\physic.dll
|
||||
|
|
|
@ -69,8 +69,6 @@ typedef struct physic_exp_s
|
|||
int (*PointContents2)( const vec3_t p, model_t model, const vec3_t org, const vec3_t ang );
|
||||
void (*BoxTrace1)( TraceResult *results, const vec3_t p1, const vec3_t p2, vec3_t mins, vec3_t maxs, model_t model, int mask, trType_t type );
|
||||
void (*BoxTrace2)( TraceResult *results, const vec3_t p1, const vec3_t p2, vec3_t mins, vec3_t maxs, model_t model, int mask, const vec3_t org, const vec3_t ang, trType_t type );
|
||||
void (*BiSphereTrace1)( TraceResult *results, const vec3_t p1, const vec3_t p2, float startRad, float endRad, model_t model, int mask );
|
||||
void (*BiSphereTrace2)( TraceResult *results, const vec3_t p1, const vec3_t p2, float startRad, float endRad, model_t model, int mask, const vec3_t origin );
|
||||
model_t (*TempModel)( const vec3_t mins, const vec3_t maxs, bool capsule );
|
||||
|
||||
// needs to be removed
|
||||
|
|
|
@ -442,6 +442,19 @@ void ClientCommand( edict_t *pEntity )
|
|||
ClientPrint( &pEntity->v, HUD_PRINTCONSOLE, "godmode OFF\n" );
|
||||
else ClientPrint( &pEntity->v, HUD_PRINTCONSOLE, "godmode ON\n" );
|
||||
}
|
||||
else if( FStrEq( pcmd, "fly" ))
|
||||
{
|
||||
if ( pEntity->v.movetype == MOVETYPE_FLY )
|
||||
{
|
||||
pEntity->v.movetype = MOVETYPE_WALK;
|
||||
ClientPrint( &pEntity->v, HUD_PRINTCONSOLE, "flymode OFF\n" );
|
||||
}
|
||||
else
|
||||
{
|
||||
pEntity->v.movetype = MOVETYPE_FLY;
|
||||
ClientPrint( &pEntity->v, HUD_PRINTCONSOLE, "flymode ON\n" );
|
||||
}
|
||||
}
|
||||
else if( FStrEq( pcmd, "notarget" ))
|
||||
{
|
||||
pEntity->v.flags = pEntity->v.flags ^ FL_NOTARGET;
|
||||
|
|
|
@ -6,6 +6,91 @@
|
|||
--------------------Configuration: server - Win32 Debug--------------------
|
||||
</h3>
|
||||
<h3>Command Lines</h3>
|
||||
Creating temporary file "C:\DOCUME~1\ÌÈØÀ\LOCALS~1\Temp\RSP397F.tmp" with contents
|
||||
[
|
||||
/nologo /MDd /W3 /Gm /Gi /GX /ZI /Od /I "./" /I "ents" /I "game" /I "global" /I "monsters" /I "../common" /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /FR"..\temp\server\!debug/" /Fo"..\temp\server\!debug/" /Fd"..\temp\server\!debug/" /FD /c
|
||||
"D:\Xash3D\src_main\server\global\client.cpp"
|
||||
]
|
||||
Creating command line "cl.exe @"C:\DOCUME~1\ÌÈØÀ\LOCALS~1\Temp\RSP397F.tmp""
|
||||
Creating temporary file "C:\DOCUME~1\ÌÈØÀ\LOCALS~1\Temp\RSP3980.tmp" with contents
|
||||
[
|
||||
msvcrtd.lib /nologo /subsystem:windows /dll /incremental:yes /pdb:"..\temp\server\!debug/server.pdb" /debug /machine:I386 /nodefaultlib:"libc.lib" /def:".\server.def" /out:"..\temp\server\!debug/server.dll" /implib:"..\temp\server\!debug/server.lib" /pdbtype:sept
|
||||
"\Xash3D\src_main\temp\server\!debug\ai_sound.obj"
|
||||
"\Xash3D\src_main\temp\server\!debug\animating.obj"
|
||||
"\Xash3D\src_main\temp\server\!debug\animation.obj"
|
||||
"\Xash3D\src_main\temp\server\!debug\apache.obj"
|
||||
"\Xash3D\src_main\temp\server\!debug\barnacle.obj"
|
||||
"\Xash3D\src_main\temp\server\!debug\barney.obj"
|
||||
"\Xash3D\src_main\temp\server\!debug\basebrush.obj"
|
||||
"\Xash3D\src_main\temp\server\!debug\baseentity.obj"
|
||||
"\Xash3D\src_main\temp\server\!debug\basefunc.obj"
|
||||
"\Xash3D\src_main\temp\server\!debug\basefx.obj"
|
||||
"\Xash3D\src_main\temp\server\!debug\baseinfo.obj"
|
||||
"\Xash3D\src_main\temp\server\!debug\baseitem.obj"
|
||||
"\Xash3D\src_main\temp\server\!debug\baselogic.obj"
|
||||
"\Xash3D\src_main\temp\server\!debug\basemonster.obj"
|
||||
"\Xash3D\src_main\temp\server\!debug\basemover.obj"
|
||||
"\Xash3D\src_main\temp\server\!debug\baseother.obj"
|
||||
"\Xash3D\src_main\temp\server\!debug\basepath.obj"
|
||||
"\Xash3D\src_main\temp\server\!debug\basephys.obj"
|
||||
"\Xash3D\src_main\temp\server\!debug\baserockets.obj"
|
||||
"\Xash3D\src_main\temp\server\!debug\basetank.obj"
|
||||
"\Xash3D\src_main\temp\server\!debug\basetrigger.obj"
|
||||
"\Xash3D\src_main\temp\server\!debug\baseutil.obj"
|
||||
"\Xash3D\src_main\temp\server\!debug\baseweapon.obj"
|
||||
"\Xash3D\src_main\temp\server\!debug\baseworld.obj"
|
||||
"\Xash3D\src_main\temp\server\!debug\client.obj"
|
||||
"\Xash3D\src_main\temp\server\!debug\combat.obj"
|
||||
"\Xash3D\src_main\temp\server\!debug\decals.obj"
|
||||
"\Xash3D\src_main\temp\server\!debug\defaultai.obj"
|
||||
"\Xash3D\src_main\temp\server\!debug\dll_int.obj"
|
||||
"\Xash3D\src_main\temp\server\!debug\flyingmonster.obj"
|
||||
"\Xash3D\src_main\temp\server\!debug\game.obj"
|
||||
"\Xash3D\src_main\temp\server\!debug\gamerules.obj"
|
||||
"\Xash3D\src_main\temp\server\!debug\generic.obj"
|
||||
"\Xash3D\src_main\temp\server\!debug\globals.obj"
|
||||
"\Xash3D\src_main\temp\server\!debug\gman.obj"
|
||||
"\Xash3D\src_main\temp\server\!debug\hassassin.obj"
|
||||
"\Xash3D\src_main\temp\server\!debug\headcrab.obj"
|
||||
"\Xash3D\src_main\temp\server\!debug\hgrunt.obj"
|
||||
"\Xash3D\src_main\temp\server\!debug\leech.obj"
|
||||
"\Xash3D\src_main\temp\server\!debug\legacy.obj"
|
||||
"\Xash3D\src_main\temp\server\!debug\lights.obj"
|
||||
"\Xash3D\src_main\temp\server\!debug\multiplay_gamerules.obj"
|
||||
"\Xash3D\src_main\temp\server\!debug\nodes.obj"
|
||||
"\Xash3D\src_main\temp\server\!debug\osprey.obj"
|
||||
"\Xash3D\src_main\temp\server\!debug\parent.obj"
|
||||
"\Xash3D\src_main\temp\server\!debug\player.obj"
|
||||
"\Xash3D\src_main\temp\server\!debug\rat.obj"
|
||||
"\Xash3D\src_main\temp\server\!debug\roach.obj"
|
||||
"\Xash3D\src_main\temp\server\!debug\saverestore.obj"
|
||||
"\Xash3D\src_main\temp\server\!debug\scientist.obj"
|
||||
"\Xash3D\src_main\temp\server\!debug\scripted.obj"
|
||||
"\Xash3D\src_main\temp\server\!debug\sfx.obj"
|
||||
"\Xash3D\src_main\temp\server\!debug\singleplay_gamerules.obj"
|
||||
"\Xash3D\src_main\temp\server\!debug\sound.obj"
|
||||
"\Xash3D\src_main\temp\server\!debug\spectator.obj"
|
||||
"\Xash3D\src_main\temp\server\!debug\squadmonster.obj"
|
||||
"\Xash3D\src_main\temp\server\!debug\talkmonster.obj"
|
||||
"\Xash3D\src_main\temp\server\!debug\teamplay_gamerules.obj"
|
||||
"\Xash3D\src_main\temp\server\!debug\turret.obj"
|
||||
"\Xash3D\src_main\temp\server\!debug\utils.obj"
|
||||
"\Xash3D\src_main\temp\server\!debug\weapon_generic.obj"
|
||||
"\Xash3D\src_main\temp\server\!debug\zombie.obj"
|
||||
]
|
||||
Creating command line "link.exe @"C:\DOCUME~1\ÌÈØÀ\LOCALS~1\Temp\RSP3980.tmp""
|
||||
Creating temporary file "C:\DOCUME~1\ÌÈØÀ\LOCALS~1\Temp\RSP3981.bat" with contents
|
||||
[
|
||||
@echo off
|
||||
copy \Xash3D\src_main\temp\server\!debug\server.dll "D:\Xash3D\bin\server.dll"
|
||||
]
|
||||
Creating command line ""C:\DOCUME~1\ÌÈØÀ\LOCALS~1\Temp\RSP3981.bat""
|
||||
Compiling...
|
||||
client.cpp
|
||||
Linking...
|
||||
<h3>Output Window</h3>
|
||||
Performing Custom Build Step on \Xash3D\src_main\temp\server\!debug\server.dll
|
||||
‘ª®¯¨à®¢ ® ä ©«®¢: 1.
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -1,16 +0,0 @@
|
|||
<html>
|
||||
<body>
|
||||
<pre>
|
||||
<h1>Build Log</h1>
|
||||
<h3>
|
||||
--------------------Configuration: snd_al - Win32 Debug--------------------
|
||||
</h3>
|
||||
<h3>Command Lines</h3>
|
||||
|
||||
|
||||
|
||||
<h3>Results</h3>
|
||||
snd_al.dll - 0 error(s), 0 warning(s)
|
||||
</pre>
|
||||
</body>
|
||||
</html>
|
|
@ -1,16 +0,0 @@
|
|||
<html>
|
||||
<body>
|
||||
<pre>
|
||||
<h1>Build Log</h1>
|
||||
<h3>
|
||||
--------------------Configuration: snd_dx - Win32 Debug--------------------
|
||||
</h3>
|
||||
<h3>Command Lines</h3>
|
||||
|
||||
|
||||
|
||||
<h3>Results</h3>
|
||||
snd_dx.dll - 0 error(s), 0 warning(s)
|
||||
</pre>
|
||||
</body>
|
||||
</html>
|
|
@ -842,7 +842,7 @@ msurface_t *R_TransformedTraceLine( TraceResult *tr, const vec3_t start, const v
|
|||
tr->pHit = (edict_t *)test;
|
||||
}
|
||||
|
||||
tr->flFraction = tr->flRealFrac = trace_fraction;
|
||||
tr->flFraction = trace_fraction;
|
||||
VectorCopy( trace_impact, tr->vecEndPos );
|
||||
|
||||
return trace_surface;
|
||||
|
|
|
@ -1,16 +0,0 @@
|
|||
<html>
|
||||
<body>
|
||||
<pre>
|
||||
<h1>Build Log</h1>
|
||||
<h3>
|
||||
--------------------Configuration: vid_gl - Win32 Debug--------------------
|
||||
</h3>
|
||||
<h3>Command Lines</h3>
|
||||
|
||||
|
||||
|
||||
<h3>Results</h3>
|
||||
vid_gl.dll - 0 error(s), 0 warning(s)
|
||||
</pre>
|
||||
</body>
|
||||
</html>
|
|
@ -1,16 +0,0 @@
|
|||
<html>
|
||||
<body>
|
||||
<pre>
|
||||
<h1>Build Log</h1>
|
||||
<h3>
|
||||
--------------------Configuration: vprogs - Win32 Debug--------------------
|
||||
</h3>
|
||||
<h3>Command Lines</h3>
|
||||
|
||||
|
||||
|
||||
<h3>Results</h3>
|
||||
vprogs.dll - 0 error(s), 0 warning(s)
|
||||
</pre>
|
||||
</body>
|
||||
</html>
|
|
@ -1,16 +0,0 @@
|
|||
<html>
|
||||
<body>
|
||||
<pre>
|
||||
<h1>Build Log</h1>
|
||||
<h3>
|
||||
--------------------Configuration: xtools - Win32 Debug--------------------
|
||||
</h3>
|
||||
<h3>Command Lines</h3>
|
||||
|
||||
|
||||
|
||||
<h3>Results</h3>
|
||||
xtools.dll - 0 error(s), 0 warning(s)
|
||||
</pre>
|
||||
</body>
|
||||
</html>
|
Reference in New Issue