mirror of
https://github.com/UberGames/rpgxEF.git
synced 2025-02-19 10:31:06 +00:00
Sync with RPG-X rpgxEF edition repo
This commit is contained in:
parent
40d05218c7
commit
725dfe17a1
15 changed files with 113 additions and 76 deletions
|
@ -31,9 +31,9 @@ int infoStringCount;
|
||||||
|
|
||||||
static qboolean drawCrosshairName=qfalse;
|
static qboolean drawCrosshairName=qfalse;
|
||||||
|
|
||||||
extern void InitPostGameMenuStruct(void);
|
extern void InitPostGameMenuStruct();
|
||||||
|
|
||||||
static void CG_InterfaceStartup(void);
|
static void CG_InterfaceStartup();
|
||||||
|
|
||||||
char *ingame_text[IGT_MAX]; /* Holds pointers to ingame text */
|
char *ingame_text[IGT_MAX]; /* Holds pointers to ingame text */
|
||||||
|
|
||||||
|
@ -748,6 +748,7 @@ Used for both the status bar and the scoreboard
|
||||||
|
|
||||||
void CG_DrawHead( float x, float y, float w, float h, int clientNum, vec3_t headAngles ) {
|
void CG_DrawHead( float x, float y, float w, float h, int clientNum, vec3_t headAngles ) {
|
||||||
clipHandle_t cm;
|
clipHandle_t cm;
|
||||||
|
centity_t *cent;
|
||||||
clientInfo_t *ci;
|
clientInfo_t *ci;
|
||||||
playerState_t *ps;
|
playerState_t *ps;
|
||||||
float value;
|
float value;
|
||||||
|
@ -755,6 +756,7 @@ void CG_DrawHead( float x, float y, float w, float h, int clientNum, vec3_t head
|
||||||
vec3_t origin;
|
vec3_t origin;
|
||||||
vec3_t mins, maxs;
|
vec3_t mins, maxs;
|
||||||
|
|
||||||
|
cent = &cg_entities[ clientNum ];
|
||||||
ci = &cgs.clientinfo[ clientNum ];
|
ci = &cgs.clientinfo[ clientNum ];
|
||||||
|
|
||||||
ps = &cg.snap->ps;
|
ps = &cg.snap->ps;
|
||||||
|
@ -953,6 +955,15 @@ CG_DrawAmmo
|
||||||
*/
|
*/
|
||||||
static void CG_DrawAmmo(centity_t *cent)
|
static void CG_DrawAmmo(centity_t *cent)
|
||||||
{
|
{
|
||||||
|
float value;
|
||||||
|
// float xLength;
|
||||||
|
playerState_t *ps;
|
||||||
|
// int max,brightColor_i,darkColor_i,numColor_i;
|
||||||
|
|
||||||
|
ps = &cg.snap->ps;
|
||||||
|
|
||||||
|
value = ps->ammo[cent->currentState.weapon];
|
||||||
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1246,16 +1257,17 @@ CG_DrawStatusBar
|
||||||
static void CG_DrawStatusBar( void )
|
static void CG_DrawStatusBar( void )
|
||||||
{
|
{
|
||||||
centity_t *cent;
|
centity_t *cent;
|
||||||
|
playerState_t *ps;
|
||||||
vec3_t angles;
|
vec3_t angles;
|
||||||
int y=0;
|
int y=0;
|
||||||
vec4_t whiteA;
|
vec4_t whiteA;
|
||||||
int x, z, i, h, yZ;
|
int x, z, i, h, yZ;
|
||||||
vec3_t tmpVec, eAngle, forward, dAngle;
|
vec3_t tmpVec, eAngle, forward, dAngle;
|
||||||
//RPG-X: Redtechie - for the HACK code below
|
//RPG-X: Redtechie - for the HACK code below
|
||||||
//int rpg_shakemycamera;
|
//int rpg_shakemycamera;
|
||||||
int healthBarWidth;
|
int healthBarWidth;
|
||||||
//float rpg_shakemycamera_intensity;
|
//float rpg_shakemycamera_intensity;
|
||||||
//const char *info;
|
//const char *info;
|
||||||
|
|
||||||
/*static float colors[4][4] =
|
/*static float colors[4][4] =
|
||||||
{
|
{
|
||||||
|
@ -1283,6 +1295,8 @@ static void CG_DrawStatusBar( void )
|
||||||
// draw the team background
|
// draw the team background
|
||||||
CG_DrawTeamBackground( 0, 420, 640, 60, 0.33, cg.snap->ps.persistant[PERS_TEAM], qfalse );
|
CG_DrawTeamBackground( 0, 420, 640, 60, 0.33, cg.snap->ps.persistant[PERS_TEAM], qfalse );
|
||||||
|
|
||||||
|
ps = &cg.snap->ps;
|
||||||
|
|
||||||
VectorClear( angles );
|
VectorClear( angles );
|
||||||
|
|
||||||
// draw any 3D icons first, so the changes back to 2D are minimized
|
// draw any 3D icons first, so the changes back to 2D are minimized
|
||||||
|
@ -2127,7 +2141,16 @@ Draw the small two score display
|
||||||
*/
|
*/
|
||||||
static float CG_DrawScores( float y )
|
static float CG_DrawScores( float y )
|
||||||
{
|
{
|
||||||
float y1;
|
// const char *s;
|
||||||
|
int s1, s2; //, score;
|
||||||
|
// int x, w;
|
||||||
|
// int v;
|
||||||
|
// vec4_t color;
|
||||||
|
float y1;
|
||||||
|
// gitem_t *item;
|
||||||
|
|
||||||
|
s1 = cgs.scores1;
|
||||||
|
s2 = cgs.scores2;
|
||||||
|
|
||||||
y -= BIGCHAR_HEIGHT + 8;
|
y -= BIGCHAR_HEIGHT + 8;
|
||||||
y1 = y;
|
y1 = y;
|
||||||
|
@ -3200,6 +3223,7 @@ CG_LabelCrosshairEntity
|
||||||
|
|
||||||
static void CG_LabelViewEntity( int clientNum, vec3_t origin, vec3_t entMins, vec3_t entMaxs, char *name, qboolean scanAll, vec4_t color, qboolean drawHealth, int health, char *pClass, char *rank, char *race, char* age, char *height, char *weight, char *weapon )
|
static void CG_LabelViewEntity( int clientNum, vec3_t origin, vec3_t entMins, vec3_t entMaxs, char *name, qboolean scanAll, vec4_t color, qboolean drawHealth, int health, char *pClass, char *rank, char *race, char* age, char *height, char *weight, char *weapon )
|
||||||
{//ID teammates, ID enemies, ID objectives, etc.
|
{//ID teammates, ID enemies, ID objectives, etc.
|
||||||
|
centity_t *cent;
|
||||||
//clientInfo_t *ci;
|
//clientInfo_t *ci;
|
||||||
vec3_t center, maxs, mins, top, bottom, topLeft, topRight, bottomLeft, bottomRight;
|
vec3_t center, maxs, mins, top, bottom, topLeft, topRight, bottomLeft, bottomRight;
|
||||||
vec3_t worldEast = {1.0f, 0, 0}, worldNorth = {0, 1.0f, 0}, worldUp = {0, 0, 1.0f};
|
vec3_t worldEast = {1.0f, 0, 0}, worldNorth = {0, 1.0f, 0}, worldUp = {0, 0, 1.0f};
|
||||||
|
@ -3226,6 +3250,8 @@ static void CG_LabelViewEntity( int clientNum, vec3_t origin, vec3_t entMins, ve
|
||||||
char showAge[1024];
|
char showAge[1024];
|
||||||
char showClass[1024];
|
char showClass[1024];
|
||||||
//char *health = "100";
|
//char *health = "100";
|
||||||
|
|
||||||
|
cent = &cg_entities[clientNum];
|
||||||
|
|
||||||
/*if ( clientNum < MAX_CLIENTS ) {
|
/*if ( clientNum < MAX_CLIENTS ) {
|
||||||
ci = &cgs.clientinfo[clientNum];
|
ci = &cgs.clientinfo[clientNum];
|
||||||
|
@ -4293,6 +4319,7 @@ static void CG_DrawWarmup( void ) {
|
||||||
int sec;
|
int sec;
|
||||||
int i;
|
int i;
|
||||||
clientInfo_t *ci1, *ci2;
|
clientInfo_t *ci1, *ci2;
|
||||||
|
int cw;
|
||||||
const char *s;
|
const char *s;
|
||||||
|
|
||||||
sec = cg.warmup;
|
sec = cg.warmup;
|
||||||
|
@ -4330,6 +4357,11 @@ static void CG_DrawWarmup( void ) {
|
||||||
// w = CG_DrawStrlen( s );
|
// w = CG_DrawStrlen( s );
|
||||||
w = UI_ProportionalStringWidth(s,UI_BIGFONT);
|
w = UI_ProportionalStringWidth(s,UI_BIGFONT);
|
||||||
|
|
||||||
|
if ( w > 640 / BIGCHAR_WIDTH ) {
|
||||||
|
cw = 640 / w;
|
||||||
|
} else {
|
||||||
|
cw = BIGCHAR_WIDTH;
|
||||||
|
}
|
||||||
// CG_DrawStringExt( 320 - w * cw/2, 20,s, colorWhite,
|
// CG_DrawStringExt( 320 - w * cw/2, 20,s, colorWhite,
|
||||||
// qfalse, qtrue, cw, (int)(cw * 1.5), 0 );
|
// qfalse, qtrue, cw, (int)(cw * 1.5), 0 );
|
||||||
UI_DrawProportionalString( (SCREEN_WIDTH/2), 20,s, UI_BIGFONT|UI_CENTER, colorTable[CT_LTGOLD1]);
|
UI_DrawProportionalString( (SCREEN_WIDTH/2), 20,s, UI_BIGFONT|UI_CENTER, colorTable[CT_LTGOLD1]);
|
||||||
|
@ -4354,6 +4386,12 @@ static void CG_DrawWarmup( void ) {
|
||||||
|
|
||||||
w = UI_ProportionalStringWidth(s,UI_BIGFONT);
|
w = UI_ProportionalStringWidth(s,UI_BIGFONT);
|
||||||
|
|
||||||
|
if ( w > 640 / BIGCHAR_WIDTH ) {
|
||||||
|
cw = 640 / w;
|
||||||
|
} else {
|
||||||
|
cw = BIGCHAR_WIDTH;
|
||||||
|
}
|
||||||
|
|
||||||
UI_DrawProportionalString((SCREEN_WIDTH/2) , 20,gamename, UI_BIGFONT|UI_CENTER, colorTable[CT_LTGOLD1]);
|
UI_DrawProportionalString((SCREEN_WIDTH/2) , 20,gamename, UI_BIGFONT|UI_CENTER, colorTable[CT_LTGOLD1]);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -4378,6 +4416,20 @@ static void CG_DrawWarmup( void ) {
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
switch ( cg.warmupCount ) {
|
||||||
|
case 0:
|
||||||
|
cw = 28;
|
||||||
|
break;
|
||||||
|
case 1:
|
||||||
|
cw = 24;
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
cw = 20;
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
cw = 16;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
// w = CG_DrawStrlen( s );
|
// w = CG_DrawStrlen( s );
|
||||||
// CG_DrawStringExt( 320 - w * cw/2, 70, s, colorWhite,
|
// CG_DrawStringExt( 320 - w * cw/2, 70, s, colorWhite,
|
||||||
|
|
|
@ -750,9 +750,15 @@ static void UI_DrawProportionalString2( int x, int y, const char* str, vec4_t co
|
||||||
float fcol;
|
float fcol;
|
||||||
float fwidth;
|
float fwidth;
|
||||||
float fheight;
|
float fheight;
|
||||||
|
vec4_t givenColor;
|
||||||
int colorI;
|
int colorI;
|
||||||
int special;
|
int special;
|
||||||
|
|
||||||
|
givenColor[0] = color[0];
|
||||||
|
givenColor[1] = color[1];
|
||||||
|
givenColor[2] = color[2];
|
||||||
|
givenColor[3] = color[3];
|
||||||
|
|
||||||
// draw the colored text
|
// draw the colored text
|
||||||
trap_R_SetColor( color );
|
trap_R_SetColor( color );
|
||||||
|
|
||||||
|
@ -1446,7 +1452,7 @@ qboolean CG_ParseRankData( char **data, rankMenuData_t* rankMenuData ) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
Com_Printf( S_COLOR_RED "Could not find { in current rankset file.\n" );
|
Com_Printf( S_COLOR_RED, "Could not find { in current rankset file.\n" );
|
||||||
return qtrue;
|
return qtrue;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1461,7 +1467,7 @@ qboolean CG_LoadRanks( void ) {
|
||||||
fileHandle_t file;
|
fileHandle_t file;
|
||||||
int file_len;
|
int file_len;
|
||||||
char charText[32000];
|
char charText[32000];
|
||||||
char *textPtr;
|
char *textPtr, *prevValue;
|
||||||
char fileName[MAX_QPATH];
|
char fileName[MAX_QPATH];
|
||||||
int i;
|
int i;
|
||||||
int rankCount=0;
|
int rankCount=0;
|
||||||
|
@ -1517,6 +1523,7 @@ qboolean CG_LoadRanks( void ) {
|
||||||
//DEFAULT I SAY! IT'S SPECIAL!
|
//DEFAULT I SAY! IT'S SPECIAL!
|
||||||
//WE NEED A DEFAULT FOR ERRORS! NO DEFAULT NO RANK FOR YOU!
|
//WE NEED A DEFAULT FOR ERRORS! NO DEFAULT NO RANK FOR YOU!
|
||||||
while ( 1 ) {
|
while ( 1 ) {
|
||||||
|
prevValue = textPtr;
|
||||||
|
|
||||||
token = COM_Parse( &textPtr );
|
token = COM_Parse( &textPtr );
|
||||||
if ( !token[0] ) {
|
if ( !token[0] ) {
|
||||||
|
@ -1583,6 +1590,7 @@ qboolean CG_LoadRanks( void ) {
|
||||||
else {
|
else {
|
||||||
//Parse.Rank.Data? :) *sigh* if only rofl
|
//Parse.Rank.Data? :) *sigh* if only rofl
|
||||||
while (1) {
|
while (1) {
|
||||||
|
prevValue = textPtr;
|
||||||
token = COM_Parse( &textPtr );
|
token = COM_Parse( &textPtr );
|
||||||
if ( !token[0] ) {
|
if ( !token[0] ) {
|
||||||
break;
|
break;
|
||||||
|
|
|
@ -871,7 +871,7 @@ Also called by client movement prediction code
|
||||||
void CG_AdjustPositionForMover( const vec3_t in, int moverNum, int fromTime, int toTime, vec3_t out ) {
|
void CG_AdjustPositionForMover( const vec3_t in, int moverNum, int fromTime, int toTime, vec3_t out ) {
|
||||||
centity_t *cent;
|
centity_t *cent;
|
||||||
vec3_t oldOrigin, origin, deltaOrigin;
|
vec3_t oldOrigin, origin, deltaOrigin;
|
||||||
vec3_t oldAngles, angles, UNUSED_VAR deltaAngles;
|
vec3_t oldAngles, angles, deltaAngles;
|
||||||
|
|
||||||
if ( moverNum <= 0 || moverNum >= ENTITYNUM_MAX_NORMAL ) {
|
if ( moverNum <= 0 || moverNum >= ENTITYNUM_MAX_NORMAL ) {
|
||||||
VectorCopy( in, out );
|
VectorCopy( in, out );
|
||||||
|
|
|
@ -671,7 +671,7 @@ void CG_FountainSpurt( vec3_t org, vec3_t end )
|
||||||
//vec3_t rgb = { 0.4f, 0.7f, 0.8f };
|
//vec3_t rgb = { 0.4f, 0.7f, 0.8f };
|
||||||
//float distance;
|
//float distance;
|
||||||
//FXBezier *fxb;
|
//FXBezier *fxb;
|
||||||
localEntity_t UNUSED_VAR *le;
|
localEntity_t *le;
|
||||||
|
|
||||||
// offset table, could have used sin/cos, I suppose
|
// offset table, could have used sin/cos, I suppose
|
||||||
//TiM - This was for the 4-way fountain. not needed no more
|
//TiM - This was for the 4-way fountain. not needed no more
|
||||||
|
@ -800,10 +800,10 @@ void electric_spark( vec3_t pos, vec3_t normal, vec3_t dir, vec3_t user )
|
||||||
void CG_ElectricalExplosion( vec3_t start, vec3_t dir, float radius )
|
void CG_ElectricalExplosion( vec3_t start, vec3_t dir, float radius )
|
||||||
{
|
{
|
||||||
localEntity_t *le;
|
localEntity_t *le;
|
||||||
localEntity_t UNUSED_VAR *particle; //FXTrail
|
localEntity_t *particle; //FXTrail
|
||||||
vec3_t pos, temp/*, angles*/;
|
vec3_t pos, temp/*, angles*/;
|
||||||
int i, numSparks;
|
int i, numSparks;
|
||||||
float scale;
|
float scale, dscale;
|
||||||
|
|
||||||
// Spawn some delayed smoke
|
// Spawn some delayed smoke
|
||||||
/*FX_AddSpawner( start, dir, NULL, NULL, 150, 40, qfalse, 9000, smoke_puffs );
|
/*FX_AddSpawner( start, dir, NULL, NULL, 150, 40, qfalse, 9000, smoke_puffs );
|
||||||
|
@ -816,6 +816,7 @@ void CG_ElectricalExplosion( vec3_t start, vec3_t dir, float radius )
|
||||||
for ( i = 0; i < numSparks; i++ )
|
for ( i = 0; i < numSparks; i++ )
|
||||||
{
|
{
|
||||||
scale = 0.7f + random(); //0.2
|
scale = 0.7f + random(); //0.2
|
||||||
|
dscale = -scale*2;
|
||||||
|
|
||||||
particle = FX_AddTrail( start,
|
particle = FX_AddTrail( start,
|
||||||
NULL,
|
NULL,
|
||||||
|
@ -918,7 +919,7 @@ void CG_PhaserFX(centity_t *cent) {
|
||||||
|
|
||||||
qboolean TorpedoQFX_Think(localEntity_t *le)
|
qboolean TorpedoQFX_Think(localEntity_t *le)
|
||||||
{
|
{
|
||||||
vec3_t line1end, line2end, axis[3], vel, dis;
|
vec3_t line1end, line2end, axis[3], rgb, vel, dis;
|
||||||
float dist;
|
float dist;
|
||||||
|
|
||||||
VectorSubtract(le->refEntity.origin, le->addOrigin, dis);
|
VectorSubtract(le->refEntity.origin, le->addOrigin, dis);
|
||||||
|
@ -957,6 +958,8 @@ qboolean TorpedoQFX_Think(localEntity_t *le)
|
||||||
FX_AddLine( line1end, line2end, 1.0f, random() * 25 + 2, 0.0f, /*0.1 + random() * 0.2*/0.0f, 0.0f, 1, cgs.media.quantumGlow);
|
FX_AddLine( line1end, line2end, 1.0f, random() * 25 + 2, 0.0f, /*0.1 + random() * 0.2*/0.0f, 0.0f, 1, cgs.media.quantumGlow);
|
||||||
//FX_AddSprite(line1end, NULL, qfalse, random() * 90 + 30, 4, 1.0f, 0.0f, 0, 0.0f, 1.0f, cgs.media.photonStar);
|
//FX_AddSprite(line1end, NULL, qfalse, random() * 90 + 30, 4, 1.0f, 0.0f, 0, 0.0f, 1.0f, cgs.media.photonStar);
|
||||||
|
|
||||||
|
VectorSet( rgb, 1.0f, 0.45f, 0.15f ); // orange
|
||||||
|
|
||||||
FX_AddSprite( le->refEntity.origin, NULL,qfalse,random() * 60 + 30, 4, 0.5f, 0.0f, 0, 0.0f, 1.0f, cgs.media.quantumRays);
|
FX_AddSprite( le->refEntity.origin, NULL,qfalse,random() * 60 + 30, 4, 0.5f, 0.0f, 0, 0.0f, 1.0f, cgs.media.quantumRays);
|
||||||
//FX_AddSprite2(le->refEntity.origin, NULL,qfalse,random() * 10 + 60, 0.0f, 0.1f, 0.1f, rgb, rgb, 0.0f, 0.0f, 1, cgs.media.whiteRingShader);
|
//FX_AddSprite2(le->refEntity.origin, NULL,qfalse,random() * 10 + 60, 0.0f, 0.1f, 0.1f, rgb, rgb, 0.0f, 0.0f, 1, cgs.media.whiteRingShader);
|
||||||
FX_AddSprite( le->refEntity.origin, NULL,qfalse,random() * 40 + 8, 4, 0.5f, 0.0f, 0, 0.0f, 1.0f, cgs.media.quantumGlow );
|
FX_AddSprite( le->refEntity.origin, NULL,qfalse,random() * 40 + 8, 4, 0.5f, 0.0f, 0, 0.0f, 1.0f, cgs.media.quantumGlow );
|
||||||
|
@ -972,7 +975,7 @@ qboolean TorpedoQFX_Think(localEntity_t *le)
|
||||||
|
|
||||||
qboolean TorpedoPFX_Think(localEntity_t *le)
|
qboolean TorpedoPFX_Think(localEntity_t *le)
|
||||||
{
|
{
|
||||||
vec3_t line1end, line2end, axis[3], vel, dis;
|
vec3_t line1end, line2end, axis[3], rgb, vel, dis;
|
||||||
float dist;
|
float dist;
|
||||||
|
|
||||||
VectorSubtract(le->refEntity.origin, le->addOrigin, dis);
|
VectorSubtract(le->refEntity.origin, le->addOrigin, dis);
|
||||||
|
@ -1011,6 +1014,8 @@ qboolean TorpedoPFX_Think(localEntity_t *le)
|
||||||
FX_AddLine( line1end, line2end, 1.0f, random() * 25 + 2, 0.0f, /*0.1 + random() * 0.2*/0.0f, 0.0f, 1, cgs.media.photonGlow);
|
FX_AddLine( line1end, line2end, 1.0f, random() * 25 + 2, 0.0f, /*0.1 + random() * 0.2*/0.0f, 0.0f, 1, cgs.media.photonGlow);
|
||||||
//FX_AddSprite(line1end, NULL, qfalse, random() * 90 + 30, 4, 1.0f, 0.0f, 0, 0.0f, 1.0f, cgs.media.photonStar);
|
//FX_AddSprite(line1end, NULL, qfalse, random() * 90 + 30, 4, 1.0f, 0.0f, 0, 0.0f, 1.0f, cgs.media.photonStar);
|
||||||
|
|
||||||
|
VectorSet( rgb, 1.0f, 0.45f, 0.15f ); // orange
|
||||||
|
|
||||||
FX_AddSprite( le->refEntity.origin, NULL,qfalse,random() * 60 + 30, 4, 0.5f, 0.0f, 0, 0.0f, 1.0f, cgs.media.photonRay);
|
FX_AddSprite( le->refEntity.origin, NULL,qfalse,random() * 60 + 30, 4, 0.5f, 0.0f, 0, 0.0f, 1.0f, cgs.media.photonRay);
|
||||||
//FX_AddSprite2(le->refEntity.origin, NULL,qfalse,random() * 10 + 60, 0.0f, 0.1f, 0.1f, rgb, rgb, 0.0f, 0.0f, 1, cgs.media.whiteRingShader);
|
//FX_AddSprite2(le->refEntity.origin, NULL,qfalse,random() * 10 + 60, 0.0f, 0.1f, 0.1f, rgb, rgb, 0.0f, 0.0f, 1, cgs.media.whiteRingShader);
|
||||||
FX_AddSprite( le->refEntity.origin, NULL,qfalse,random() * 40 + 8, 4, 0.5f, 0.0f, 0, 0.0f, 1.0f, cgs.media.photonGlow );
|
FX_AddSprite( le->refEntity.origin, NULL,qfalse,random() * 40 + 8, 4, 0.5f, 0.0f, 0, 0.0f, 1.0f, cgs.media.photonGlow );
|
||||||
|
@ -1082,7 +1087,7 @@ qboolean ParticleFire_Think(localEntity_t *le) {
|
||||||
}
|
}
|
||||||
|
|
||||||
void CG_ParticleFire(vec3_t origin, int killtime, int size) {
|
void CG_ParticleFire(vec3_t origin, int killtime, int size) {
|
||||||
localEntity_t UNUSED_VAR *le;
|
localEntity_t *le;
|
||||||
le = FX_AddSpawner(origin, NULL, NULL, NULL, qfalse, 0, 0, killtime, ParticleFire_Think, 10);
|
le = FX_AddSpawner(origin, NULL, NULL, NULL, qfalse, 0, 0, killtime, ParticleFire_Think, 10);
|
||||||
//le->data.spawner.data1 = size;
|
//le->data.spawner.data1 = size;
|
||||||
}
|
}
|
||||||
|
@ -1555,8 +1560,7 @@ Creates an orange electricity bolt effect with a pulse that travels down the bea
|
||||||
======================
|
======================
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#if 0
|
/*void ForgeBoltFireback( vec3_t start, vec3_t end, vec3_t velocity, vec3_t user )
|
||||||
void ForgeBoltFireback( vec3_t start, vec3_t end, vec3_t velocity, vec3_t user )
|
|
||||||
{
|
{
|
||||||
FX_AddElectricity( start, end, 1.0, user[DATA_RADIUS], 5.0, 1.0, 0.0, 200, cgs.media.pjBoltShader,
|
FX_AddElectricity( start, end, 1.0, user[DATA_RADIUS], 5.0, 1.0, 0.0, 200, cgs.media.pjBoltShader,
|
||||||
(int)user[DATA_EFFECTS], user[DATA_CHAOS] );
|
(int)user[DATA_EFFECTS], user[DATA_CHAOS] );
|
||||||
|
@ -1610,7 +1614,7 @@ bool ForgeBoltPulse( FXPrimitive *fx, centity_t *ent )
|
||||||
}
|
}
|
||||||
|
|
||||||
//-----------------------------
|
//-----------------------------
|
||||||
void CG_ForgeBolt( centity_t *cent )
|
/*void CG_ForgeBolt( centity_t *cent )
|
||||||
{
|
{
|
||||||
qboolean pulse;
|
qboolean pulse;
|
||||||
int effects;
|
int effects;
|
||||||
|
@ -1672,7 +1676,6 @@ void CG_ForgeBolt( centity_t *cent )
|
||||||
BoltSparkSpew( cent->currentState.origin2, dir, cgs.media.dkorangeParticleShader );
|
BoltSparkSpew( cent->currentState.origin2, dir, cgs.media.dkorangeParticleShader );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#endif
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
===========================
|
===========================
|
||||||
|
@ -1684,8 +1687,8 @@ Create directed and scaled plasma jet
|
||||||
|
|
||||||
void CG_Plasma( vec3_t start, vec3_t end, vec3_t sRGB, vec3_t eRGB, int startalpha, int endalpha )
|
void CG_Plasma( vec3_t start, vec3_t end, vec3_t sRGB, vec3_t eRGB, int startalpha, int endalpha )
|
||||||
{
|
{
|
||||||
vec3_t v;
|
vec3_t v, sp;
|
||||||
float len, salpha = (startalpha / 255) , ealpha = (endalpha / 255);
|
float detail, len, salpha = (startalpha / 255) , ealpha = (endalpha / 255);
|
||||||
|
|
||||||
//detail = FX_DetailLevel( start, 16, 1200 );
|
//detail = FX_DetailLevel( start, 16, 1200 );
|
||||||
//if ( detail == 0 )
|
//if ( detail == 0 )
|
||||||
|
@ -1694,6 +1697,7 @@ void CG_Plasma( vec3_t start, vec3_t end, vec3_t sRGB, vec3_t eRGB, int startalp
|
||||||
// Orient the plasma
|
// Orient the plasma
|
||||||
VectorSubtract( end, start, v );
|
VectorSubtract( end, start, v );
|
||||||
len = VectorNormalize( v );
|
len = VectorNormalize( v );
|
||||||
|
VectorMA( start, 0.5f, v, sp );
|
||||||
|
|
||||||
// Stash a quad at the base to make the effect look a bit more solid
|
// Stash a quad at the base to make the effect look a bit more solid
|
||||||
//FX_AddQuad( sp, v, NULL, NULL, len * 0.36f, 0.0f, salpha, salpha, sRGB, sRGB, 0.0f, 45.0f, 0.0f, 200, cgs.media.prifleImpactShader );
|
//FX_AddQuad( sp, v, NULL, NULL, len * 0.36f, 0.0f, salpha, salpha, sRGB, sRGB, 0.0f, 45.0f, 0.0f, 200, cgs.media.prifleImpactShader );
|
||||||
|
@ -1720,8 +1724,7 @@ particle stream fx for STASIS level
|
||||||
======================
|
======================
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#if 0
|
/*bool particle_stream_think( FXPrimitive *fx, centity_t *ent )
|
||||||
bool particle_stream_think( FXPrimitive *fx, centity_t *ent )
|
|
||||||
{
|
{
|
||||||
vec3_t old_org;
|
vec3_t old_org;
|
||||||
|
|
||||||
|
@ -1791,7 +1794,7 @@ The particles will accelerate up to the half-way point of the cylinder, then dec
|
||||||
======================
|
======================
|
||||||
*/
|
*/
|
||||||
|
|
||||||
void CG_TransporterStream( centity_t *cent )
|
/*void CG_TransporterStream( centity_t *cent )
|
||||||
{
|
{
|
||||||
vec3_t vel, accel, dir, pos, right, up;
|
vec3_t vel, accel, dir, pos, right, up;
|
||||||
float len, time, acceleration, scale, dis, vf;
|
float len, time, acceleration, scale, dis, vf;
|
||||||
|
@ -1875,7 +1878,7 @@ CG_ExplosionTrail
|
||||||
-------------------------
|
-------------------------
|
||||||
*/
|
*/
|
||||||
|
|
||||||
qboolean explosionTrailThink( localEntity_t *fx )
|
/*qboolean explosionTrailThink( localEntity_t *fx )
|
||||||
{
|
{
|
||||||
localEntity_t *le=0;
|
localEntity_t *le=0;
|
||||||
vec3_t direction, origin, new_org, angles, dir;
|
vec3_t direction, origin, new_org, angles, dir;
|
||||||
|
@ -1952,7 +1955,7 @@ A scanning type beam
|
||||||
----------------------
|
----------------------
|
||||||
*/
|
*/
|
||||||
|
|
||||||
void CG_BorgEnergyBeam( centity_t *cent )
|
/*void CG_BorgEnergyBeam( centity_t *cent )
|
||||||
{
|
{
|
||||||
vec3_t normal, angles, base, dir, dir2, rgb;
|
vec3_t normal, angles, base, dir, dir2, rgb;
|
||||||
float len, alpha;
|
float len, alpha;
|
||||||
|
@ -2015,7 +2018,6 @@ void CG_BorgEnergyBeam( centity_t *cent )
|
||||||
VectorCopy( base, cent->gent->pos1 );
|
VectorCopy( base, cent->gent->pos1 );
|
||||||
cent->gent->angle += cent->gent->speed * 0.08f;
|
cent->gent->angle += cent->gent->speed * 0.08f;
|
||||||
}
|
}
|
||||||
#endif
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
----------------------
|
----------------------
|
||||||
|
|
|
@ -558,7 +558,7 @@ static void ObjectivePrint_Line(int strIndex,int color,centity_t *cent)
|
||||||
int y,pixelLen,charLen;
|
int y,pixelLen,charLen;
|
||||||
char holdText[1024], holdText2[2];
|
char holdText[1024], holdText2[2];
|
||||||
char finalText[MAX_OBJ_LENGTH];
|
char finalText[MAX_OBJ_LENGTH];
|
||||||
int len,maxPixLength,charHeight;
|
int len,len_s,maxPixLength,charHeight;
|
||||||
|
|
||||||
assert(cgs.objectives[strIndex].text);
|
assert(cgs.objectives[strIndex].text);
|
||||||
|
|
||||||
|
@ -567,6 +567,7 @@ static void ObjectivePrint_Line(int strIndex,int color,centity_t *cent)
|
||||||
len = strlen(str);
|
len = strlen(str);
|
||||||
len++;
|
len++;
|
||||||
Q_strncpyz(finalText,str,len);
|
Q_strncpyz(finalText,str,len);
|
||||||
|
len_s = strlen(str);
|
||||||
|
|
||||||
pixelLen = UI_ProportionalStringWidth(finalText,UI_SMALLFONT);
|
pixelLen = UI_ProportionalStringWidth(finalText,UI_SMALLFONT);
|
||||||
|
|
||||||
|
@ -657,7 +658,7 @@ static int Objective_LineCnt(int strIndex,centity_t *cent)
|
||||||
int pixelLen,charLen;
|
int pixelLen,charLen;
|
||||||
char holdText[1024], holdText2[2];
|
char holdText[1024], holdText2[2];
|
||||||
char finalText[MAX_OBJ_LENGTH];
|
char finalText[MAX_OBJ_LENGTH];
|
||||||
int len,maxPixLength;
|
int len,len_s,maxPixLength;
|
||||||
int lineCnt;
|
int lineCnt;
|
||||||
|
|
||||||
assert(cgs.objectives[strIndex].text);
|
assert(cgs.objectives[strIndex].text);
|
||||||
|
@ -666,6 +667,7 @@ static int Objective_LineCnt(int strIndex,centity_t *cent)
|
||||||
len = strlen(str);
|
len = strlen(str);
|
||||||
len++;
|
len++;
|
||||||
Q_strncpyz(finalText,str,len);
|
Q_strncpyz(finalText,str,len);
|
||||||
|
len_s = strlen(str);
|
||||||
|
|
||||||
pixelLen = UI_ProportionalStringWidth(finalText,UI_SMALLFONT);
|
pixelLen = UI_ProportionalStringWidth(finalText,UI_SMALLFONT);
|
||||||
lineCnt = 0;
|
lineCnt = 0;
|
||||||
|
|
|
@ -1838,8 +1838,8 @@ qboolean CG_Cvar_ClampInt( const char *name, vmCvar_t *vmCvar, int min, int max
|
||||||
const char *CG_ConfigString( int index );
|
const char *CG_ConfigString( int index );
|
||||||
const char *CG_Argv( int arg );
|
const char *CG_Argv( int arg );
|
||||||
|
|
||||||
void QDECL CG_Printf( const char *msg, ... ) __attribute__ ((format(printf, 1, 2)));
|
void QDECL CG_Printf( const char *msg, ... );
|
||||||
void QDECL CG_Error( const char *msg, ... ) __attribute__ ((format(printf, 1, 2)));
|
void QDECL CG_Error( const char *msg, ... );
|
||||||
void CG_StartMusic( void );
|
void CG_StartMusic( void );
|
||||||
|
|
||||||
void CG_UpdateCvars( void );
|
void CG_UpdateCvars( void );
|
||||||
|
|
|
@ -433,7 +433,7 @@ void QDECL CG_Printf( const char *msg, ... ) {
|
||||||
char *msgPtr;
|
char *msgPtr;
|
||||||
|
|
||||||
va_start (argptr, msg);
|
va_start (argptr, msg);
|
||||||
Q_vsnprintf(text, sizeof(text), msg, argptr);
|
vsprintf (text, msg, argptr);
|
||||||
va_end (argptr);
|
va_end (argptr);
|
||||||
|
|
||||||
if ( cg_chatColor.integer > 0 && cg_chatColor.integer < 8 )
|
if ( cg_chatColor.integer > 0 && cg_chatColor.integer < 8 )
|
||||||
|
@ -496,7 +496,7 @@ void QDECL CG_Error( const char *msg, ... ) {
|
||||||
char text[1024];
|
char text[1024];
|
||||||
|
|
||||||
va_start (argptr, msg);
|
va_start (argptr, msg);
|
||||||
Q_vsnprintf (text,sizeof(text), msg, argptr);
|
vsprintf (text, msg, argptr);
|
||||||
va_end (argptr);
|
va_end (argptr);
|
||||||
|
|
||||||
trap_Error( text );
|
trap_Error( text );
|
||||||
|
@ -510,7 +510,7 @@ void QDECL Com_Error( int level, const char *error, ... ) {
|
||||||
char text[1024];
|
char text[1024];
|
||||||
|
|
||||||
va_start (argptr, error);
|
va_start (argptr, error);
|
||||||
Q_vsnprintf (text,sizeof(text), error, argptr);
|
vsprintf (text, error, argptr);
|
||||||
va_end (argptr);
|
va_end (argptr);
|
||||||
|
|
||||||
CG_Error( "%s", text);
|
CG_Error( "%s", text);
|
||||||
|
@ -521,7 +521,7 @@ void QDECL Com_Printf( const char *msg, ... ) {
|
||||||
char text[1024];
|
char text[1024];
|
||||||
|
|
||||||
va_start (argptr, msg);
|
va_start (argptr, msg);
|
||||||
Q_vsnprintf (text, sizeof(text), msg, argptr);
|
vsprintf (text, msg, argptr);
|
||||||
va_end (argptr);
|
va_end (argptr);
|
||||||
|
|
||||||
CG_Printf ("%s", text);
|
CG_Printf ("%s", text);
|
||||||
|
@ -2312,7 +2312,7 @@ qboolean CG_LoadUsablesStrings( void )
|
||||||
token = COM_Parse( &textPtr );
|
token = COM_Parse( &textPtr );
|
||||||
if ( Q_strncmp( token, "{", 1 ) != 0 )
|
if ( Q_strncmp( token, "{", 1 ) != 0 )
|
||||||
{
|
{
|
||||||
CG_Printf( S_COLOR_RED "ERROR: UsableDescriptions had no opening brace ( { )!\n" );
|
CG_Printf( S_COLOR_RED "ERROR: UsableDescriptions had no opening brace ( { )!\n", fileRoute );
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -952,7 +952,7 @@ static qboolean CG_ParseModelDataFile( clientInfo_t *ci, const char *charName,
|
||||||
fileHandle_t file;
|
fileHandle_t file;
|
||||||
int file_len;
|
int file_len;
|
||||||
char charText[20000];
|
char charText[20000];
|
||||||
char *textPtr;
|
char *textPtr, *prevValue;
|
||||||
char fileName[MAX_QPATH];
|
char fileName[MAX_QPATH];
|
||||||
//char animPath[MAX_QPATH];
|
//char animPath[MAX_QPATH];
|
||||||
int i, n;
|
int i, n;
|
||||||
|
@ -1017,6 +1017,7 @@ static qboolean CG_ParseModelDataFile( clientInfo_t *ci, const char *charName,
|
||||||
}
|
}
|
||||||
|
|
||||||
while ( 1 ) {
|
while ( 1 ) {
|
||||||
|
prevValue = textPtr; //set a backup
|
||||||
token = COM_Parse( &textPtr );
|
token = COM_Parse( &textPtr );
|
||||||
|
|
||||||
if (!token[0] || !token ) { //we've hit the end of the file. w00t! exit!
|
if (!token[0] || !token ) { //we've hit the end of the file. w00t! exit!
|
||||||
|
|
|
@ -24,5 +24,5 @@ extern screenFX_t theScreenFX;
|
||||||
|
|
||||||
void CG_AddFullScreenEffect(int screenfx, int clientNum);
|
void CG_AddFullScreenEffect(int screenfx, int clientNum);
|
||||||
|
|
||||||
void CG_DrawFullScreenFX(void);
|
void CG_DrawFullScreenFX();
|
||||||
|
|
||||||
|
|
|
@ -1,2 +0,0 @@
|
||||||
#include "g_cinematic.h"
|
|
||||||
|
|
|
@ -1,10 +0,0 @@
|
||||||
#ifndef _G_CIN_H_
|
|
||||||
#define _G_CIN_H_
|
|
||||||
#include "g_local.h"
|
|
||||||
|
|
||||||
void Cinematic_ActivateCameraMode(gentity_t *ent, gentity_t *target);
|
|
||||||
void Cinematic_DeactivateCameraMode(gentity_t *ent);
|
|
||||||
void Cinematic_ActivateGlobalCameraMode(gentity_t *target);
|
|
||||||
void Cinematic_DeactivateGlobalCameraMode(void);
|
|
||||||
|
|
||||||
#endif //_G_CIN_H_
|
|
|
@ -1280,8 +1280,8 @@ qboolean LuaHook_G_EntityReached(char *function, int entnum);
|
||||||
qboolean LuaHook_G_EntityReachedAngular(char *function, int entnum);
|
qboolean LuaHook_G_EntityReachedAngular(char *function, int entnum);
|
||||||
|
|
||||||
void G_LuaStatus(gentity_t * ent);
|
void G_LuaStatus(gentity_t * ent);
|
||||||
qboolean G_LuaInit(void);
|
qboolean G_LuaInit();
|
||||||
void G_LuaShutdown(void);
|
void G_LuaShutdown();
|
||||||
|
|
||||||
extern vmCvar_t g_debugLua;
|
extern vmCvar_t g_debugLua;
|
||||||
extern vmCvar_t lua_allowedModules;
|
extern vmCvar_t lua_allowedModules;
|
||||||
|
|
|
@ -11,7 +11,6 @@
|
||||||
// special server behaviors
|
// special server behaviors
|
||||||
#define SVF_NOCLIENT 0x00000001 // don't send entity to clients, even if it has effects
|
#define SVF_NOCLIENT 0x00000001 // don't send entity to clients, even if it has effects
|
||||||
#define SVF_SHIELD_BBOX 0x00000002 // signals that SV_LinkEntity needs to use special client-side bbox encoding
|
#define SVF_SHIELD_BBOX 0x00000002 // signals that SV_LinkEntity needs to use special client-side bbox encoding
|
||||||
#define SVF_CLIENTMASK 0x00000004
|
|
||||||
#define SVF_BOT 0x00000008
|
#define SVF_BOT 0x00000008
|
||||||
#define SVF_ELIMINATED 0x00000010 // Just so we know he's been eliminated without adding the EF_ELIMINATED flag which has all sorts of side effects
|
#define SVF_ELIMINATED 0x00000010 // Just so we know he's been eliminated without adding the EF_ELIMINATED flag which has all sorts of side effects
|
||||||
#define SVF_BROADCAST 0x00000020 // send to all connected clients
|
#define SVF_BROADCAST 0x00000020 // send to all connected clients
|
||||||
|
|
|
@ -54,7 +54,7 @@ typedef struct list_iter * list_iter_p;
|
||||||
|
|
||||||
/* Create a linked_list object. This pointer is created on the heap and must be
|
/* Create a linked_list object. This pointer is created on the heap and must be
|
||||||
cleared with a call to destroy_list to avoid memory leaks */
|
cleared with a call to destroy_list to avoid memory leaks */
|
||||||
list_p create_list(void);
|
list_p create_list();
|
||||||
|
|
||||||
/* Create a list_iter object for the linked_list list. The flag init can be
|
/* Create a list_iter object for the linked_list list. The flag init can be
|
||||||
either FRONT or BACK and indicates whether to start the iterator from the first
|
either FRONT or BACK and indicates whether to start the iterator from the first
|
||||||
|
|
|
@ -37,20 +37,6 @@
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
||||||
//Ignore __attribute__ on non-gcc platforms
|
|
||||||
#ifndef __GNUC__
|
|
||||||
#ifndef __attribute__
|
|
||||||
#define __attribute__(x)
|
|
||||||
#endif
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#ifdef __GNUC__
|
|
||||||
#define UNUSED_VAR __attribute__((unused))
|
|
||||||
#else
|
|
||||||
#define UNUSED_VAR
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/**********************************************************************
|
/**********************************************************************
|
||||||
VM Considerations
|
VM Considerations
|
||||||
|
|
||||||
|
@ -88,7 +74,6 @@
|
||||||
#include <ctype.h>
|
#include <ctype.h>
|
||||||
#include <limits.h>
|
#include <limits.h>
|
||||||
|
|
||||||
#define Q_vsnprintf vsnprintf
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef _WIN32
|
#ifdef _WIN32
|
||||||
|
@ -755,8 +740,8 @@ qboolean Info_Validate( const char *s );
|
||||||
void Info_NextPair( const char **s, char key[MAX_INFO_KEY], char value[MAX_INFO_VALUE] );
|
void Info_NextPair( const char **s, char key[MAX_INFO_KEY], char value[MAX_INFO_VALUE] );
|
||||||
|
|
||||||
// this is only here so the functions in q_shared.c and bg_*.c can link
|
// this is only here so the functions in q_shared.c and bg_*.c can link
|
||||||
void QDECL Com_Error( int errlevel, const char *error, ... ) __attribute__ ((format(printf, 2, 3)));
|
void QDECL Com_Error( int errlevel, const char *error, ... );
|
||||||
void QDECL Com_Printf( const char *msg, ... ) __attribute__ ((format (printf, 1, 2)));
|
void QDECL Com_Printf( const char *msg, ... );
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
|
Loading…
Reference in a new issue