这篇教程C++ CG_Error函数代码示例写得很实用,希望能帮到您。
本文整理汇总了C++中CG_Error函数的典型用法代码示例。如果您正苦于以下问题:C++ CG_Error函数的具体用法?C++ CG_Error怎么用?C++ CG_Error使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。 在下文中一共展示了CG_Error函数的27个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。 示例1: CG_RegisterUpgrade/*=================CG_RegisterUpgradeThe server says this item is used on this level=================*/void CG_RegisterUpgrade( int upgradeNum ){ upgradeInfo_t *upgradeInfo; char *icon; if( upgradeNum <= UP_NONE || upgradeNum >= UP_NUM_UPGRADES ) { CG_Error( "CG_RegisterUpgrade: out of range: %d", upgradeNum ); return; } upgradeInfo = &cg_upgrades[ upgradeNum ]; if( upgradeInfo->registered ) { CG_Printf( "CG_RegisterUpgrade: already registered: (%d) %s/n", upgradeNum, BG_Upgrade( upgradeNum )->name ); return; } upgradeInfo->registered = qtrue; if( !BG_Upgrade( upgradeNum )->name[ 0 ] ) CG_Error( "Couldn't find upgrade %i", upgradeNum ); upgradeInfo->humanName = BG_Upgrade( upgradeNum )->humanName; //la la la la la, i'm not listening! if( upgradeNum == UP_GRENADE ) upgradeInfo->upgradeIcon = cg_weapons[ WP_GRENADE ].weaponIcon; else if( ( icon = BG_Upgrade( upgradeNum )->icon ) ) upgradeInfo->upgradeIcon = trap_R_RegisterShader( icon );}
开发者ID:ZdrytchX,项目名称:cuboid,代码行数:40,
示例2: CG_SoundLoadSoundFilesstatic void CG_SoundLoadSoundFiles( void ) { char soundFiles[MAX_SOUND_FILES][MAX_QPATH]; char buffer[MAX_BUFFER]; char *text; char filename[MAX_QPATH]; fileHandle_t f; int numSounds; int i, len; char *token; // scan for sound files Com_sprintf( filename, MAX_QPATH, "sound/scripts/filelist.txt" ); len = trap_FS_FOpenFile( filename, &f, FS_READ ); if ( len <= 0 ) { CG_Printf( S_COLOR_RED "WARNING: no sound files found (filelist.txt not found in sound/scripts)/n" ); return; } if ( len > MAX_BUFFER ) { CG_Error( "%s is too big, make it smaller (max = %i bytes)/n", filename, MAX_BUFFER ); } // load the file into memory trap_FS_Read( buffer, len, f ); buffer[len] = 0; trap_FS_FCloseFile( f ); // parse the list text = buffer; numSounds = 0; while ( 1 ) { token = COM_ParseExt( &text, qtrue ); if ( !token[0] ) { break; } Com_sprintf( soundFiles[numSounds++], MAX_QPATH, token ); } if ( !numSounds ) { CG_Printf( S_COLOR_RED "WARNING: no sound files found/n" ); return; } // load and parse sound files for ( i = 0; i < numSounds; i++ ) { Com_sprintf( filename, sizeof( filename ), "sound/scripts/%s", soundFiles[i] );#ifndef NDEBUG CG_Printf( "...loading '%s'/n", filename );#endif len = trap_FS_FOpenFile( filename, &f, FS_READ ); if ( len <= 0 ) { CG_Error( "Couldn't load %s", filename ); } if ( len > MAX_BUFFER ) { CG_Error( "%s is too big, make it smaller (max = %i bytes)/n", filename, MAX_BUFFER ); } memset( buffer, 0, sizeof( buffer ) ); trap_FS_Read( buffer, len, f ); trap_FS_FCloseFile( f ); CG_SoundParseSounds( filename, buffer ); }}
开发者ID:LBoksha,项目名称:RTCW-SP-linux,代码行数:60,
示例3: CG_ParseTeamInfo/*=================CG_ParseTeamInfo=================*/static void CG_ParseTeamInfo( void ) { int i; int client; numSortedTeamPlayers = atoi( CG_Argv( 1 ) ); if( numSortedTeamPlayers < 0 || numSortedTeamPlayers > TEAM_MAXOVERLAY ) { CG_Error( "CG_ParseTeamInfo: numSortedTeamPlayers out of range (%d)", numSortedTeamPlayers ); return; } for ( i = 0 ; i < numSortedTeamPlayers ; i++ ) { client = atoi( CG_Argv( i * 6 + 2 ) ); if( client < 0 || client >= MAX_CLIENTS ) { CG_Error( "CG_ParseTeamInfo: bad client number: %d", client ); return; } sortedTeamPlayers[i] = client; cgs.clientinfo[ client ].location = atoi( CG_Argv( i * 6 + 3 ) ); cgs.clientinfo[ client ].health = atoi( CG_Argv( i * 6 + 4 ) ); cgs.clientinfo[ client ].armor = atoi( CG_Argv( i * 6 + 5 ) ); cgs.clientinfo[ client ].curWeapon = atoi( CG_Argv( i * 6 + 6 ) ); cgs.clientinfo[ client ].powerups = atoi( CG_Argv( i * 6 + 7 ) ); }}
开发者ID:donald-hanson,项目名称:battle-of-the-sexes,代码行数:35,
示例4: SP_info_train_spline_mainvoid SP_info_train_spline_main( void ) { char* targetname; char* target; char* control; vec3_t origin; int i; char* end; splinePath_t* spline; if( !CG_SpawnVector("origin", "0 0 0", origin) ) { CG_Error ("info_train_spline_main with no origin/n"); } if ( !CG_SpawnString("targetname", "", &targetname) ) { CG_Error ("info_train_spline_main with no targetname at %s/n", vtos(origin)); } CG_SpawnString("target", "", &target); spline = BG_AddSplinePath( targetname, target, origin ); if(CG_SpawnString( "end", "", &end )) { spline->isEnd = qtrue; } else if(CG_SpawnString( "start", "", &end )) { spline->isStart = qtrue; } for( i = 1;; i++ ) { if(!CG_SpawnString( i == 1 ? va( "control" ) : va( "control%i", i ), "", &control )) { break; } BG_AddSplineControl( spline, control ); }}
开发者ID:GenaSG,项目名称:ET,代码行数:35,
示例5: CG_JS_Sys_Cvar_Initvoid CG_JS_Sys_Cvar_Init(JSContext *ctx, JSObject *Sys){ JSObject *cvar = JS_DefineObject(ctx, Sys, "Cvar", &cvar_class, NULL, 0); if (!cvar) CG_Error("Failed to Define javascript Cvar object/n"); if (!JS_DefineFunctions(ctx, cvar, cvar_static_methods)) CG_Error("Failed to Define javascript Cvar functions/n");}
开发者ID:donald-hanson,项目名称:battle-of-the-sexes,代码行数:8,
示例6: CG_TransitionSnapshot/*===================CG_TransitionSnapshotThe transition point from snap to nextSnap has passed===================*/static void CG_TransitionSnapshot( void ) { centity_t *cent; snapshot_t *oldFrame; int i; if ( !cg.snap ) { CG_Error( "CG_TransitionSnapshot: NULL cg.snap" ); } if ( !cg.nextSnap ) { CG_Error( "CG_TransitionSnapshot: NULL cg.nextSnap" ); } // execute any server string commands before transitioning entities CG_ExecuteNewServerCommands( cg.nextSnap->serverCommandSequence ); // clear the currentValid flag for all entities in the existing snapshot for ( i = 0 ; i < cg.snap->numEntities ; i++ ) { cent = &cg_entities[ cg.snap->entities[ i ].number ]; cent->currentValid = qfalse; } // move nextSnap to snap and do the transitions oldFrame = cg.snap; cg.snap = cg.nextSnap; BG_PlayerStateToEntityState( &cg.snap->ps, &cg_entities[ cg.snap->ps.clientNum ].currentState, qfalse ); cg_entities[ cg.snap->ps.clientNum ].interpolate = qfalse; for ( i = 0 ; i < cg.snap->numEntities ; i++ ) { cent = &cg_entities[ cg.snap->entities[ i ].number ]; CG_TransitionEntity( cent ); // remember time of snapshot this entity was last updated in cent->snapShotTime = cg.snap->serverTime; } cg.nextSnap = NULL; // check for playerstate transition events if ( oldFrame ) { playerState_t *ops, *ps; ops = &oldFrame->ps; ps = &cg.snap->ps; // teleporting checks are irrespective of prediction if ( ( ps->eFlags ^ ops->eFlags ) & EF_TELEPORT_BIT ) { cg.thisFrameTeleport = qtrue; // will be cleared by prediction code } // if we are not doing client side movement prediction for any // reason, then the client events and view changes will be issued now if ( cg.demoPlayback || (cg.snap->ps.pm_flags & PMF_FOLLOW) || cg_nopredict.integer || cg_synchronousClients.integer ) { CG_TransitionPlayerState( ps, ops ); } }}
开发者ID:Developer626,项目名称:gamecode,代码行数:65,
示例7: CG_ParticleExplosionvoid CG_ParticleExplosion (char *animStr, vec3_t origin, vec3_t vel, int duration, int sizeStart, int sizeEnd){ cparticle_t *p; int anim; if (animStr < (char *)10) CG_Error( "CG_ParticleExplosion: animStr is probably an index rather than a string" ); // find the animation string for (anim=0; shaderAnimNames[anim]; anim++) { if (!Q_stricmp( animStr, shaderAnimNames[anim] )) break; } if (!shaderAnimNames[anim]) { CG_Error("CG_ParticleExplosion: unknown animation string: %s", animStr); return; } if (!free_particles) return; p = free_particles; free_particles = p->next; p->next = active_particles; active_particles = p; p->time = cg.time;#ifdef WOLF_PARTICLES p->alpha = 1.0;#else p->alpha = 0.5;#endif p->alphavel = 0; if (duration < 0) { duration *= -1; p->roll = 0; } else { p->roll = crandom()*179; } p->shaderAnim = anim; p->width = sizeStart; p->height = sizeStart*shaderAnimSTRatio[anim]; // for sprites that are stretch in either direction p->endheight = sizeEnd; p->endwidth = sizeEnd*shaderAnimSTRatio[anim]; p->endtime = cg.time + duration; p->type = P_ANIM; VectorCopy( origin, p->org ); VectorCopy( vel, p->vel ); VectorClear( p->accel );}
开发者ID:freemancw,项目名称:Q3Plan,代码行数:56,
示例8: assert/** SCR_GetNextColumnLayout*/static const char *SCR_GetNextColumnLayout( const char **ptrlay, const char **ptrtitle, char *type, int *width, struct qfontface_s *font ){ static const char *empty = ""; const char *token; assert( ptrlay && *ptrlay ); // get the token type from the layout token = COM_ParseExt( ptrlay, true ); if( !token[0] ) return NULL; if( token[0] != '%' ) CG_Error( "SCR_GetNextColumnLayout: Invalid player tab layout (expecting token type. found '%s')/n", token ); if( type ) *type = token[1]; // get the column width from the layout token = COM_ParseExt( ptrlay, true ); if( !token[0] || token[0] == '%' ) CG_Error( "SCR_GetNextColumnLayout: Invalid player tab layout (expecting token width. found '%s')/n", token ); if( width ) { float widthScale = cg_scoreboardWidthScale->value; bool relative = true; if( token[0] == 'l' ) // line heights { widthScale *= trap_SCR_FontHeight( font ); relative = false; token++; } *width = (int)( atof( token ) * widthScale ); if( relative ) *width = *width * cgs.vidHeight / 600; if( *width < 0 ) *width = 0; } if( ptrtitle && *ptrtitle ) { // get the column title token from the layout token = COM_ParseExt( ptrtitle, true ); if( !token[0] ) CG_Error( "SCR_GetNextColumnLayout: Invalid player tab layout (expecting token tittle. found '%s')/n", token ); } else { token = empty; } return token;}
开发者ID:DenMSC,项目名称:racemod_2.1,代码行数:58,
示例9: CG_ParseSpawnVars/*====================CG_ParseSpawnVarsParses a brace bounded set of key / value pairs out of thelevel's entity strings into cg.spawnVars[]This does not actually spawn an entity.====================*/qboolean CG_ParseSpawnVars(void){ char keyname[MAX_TOKEN_CHARS]; char com_token[MAX_TOKEN_CHARS]; cg.numSpawnVars = 0; cg.numSpawnVarChars = 0; // parse the opening brace if (!trap_GetEntityToken(com_token, sizeof(com_token))) { // end of spawn string return qfalse; } if (com_token[0] != '{') { CG_Error("CG_ParseSpawnVars: found %s when expecting {", com_token); } // go through all the key / value pairs while (1) { // parse key if (!trap_GetEntityToken(keyname, sizeof(keyname))) { CG_Error("CG_ParseSpawnVars: EOF without closing brace"); } if (keyname[0] == '}') { break; } // parse value if (!trap_GetEntityToken(com_token, sizeof(com_token))) { CG_Error("CG_ParseSpawnVars: EOF without closing brace"); } if (com_token[0] == '}') { CG_Error("CG_ParseSpawnVars: closing brace without data"); } if (cg.numSpawnVars == MAX_SPAWN_VARS) { CG_Error("CG_ParseSpawnVars: MAX_SPAWN_VARS"); } cg.spawnVars[cg.numSpawnVars][0] = CG_AddSpawnVarToken(keyname); cg.spawnVars[cg.numSpawnVars][1] = CG_AddSpawnVarToken(com_token); cg.numSpawnVars++; } return qtrue;}
开发者ID:morsik,项目名称:war-territory,代码行数:64,
示例10: CG_TransitionSnapshot/*===================CG_TransitionSnapshotThe transition point from snap to nextSnap has passed===================*/void CG_TransitionSnapshot( void ) { centity_t *cent; snapshot_t *oldFrame; int i; if ( !cg.snap ) { CG_Error( "CG_TransitionSnapshot: NULL cg.snap" ); } if ( !cg.nextSnap ) { CG_Error( "CG_TransitionSnapshot: NULL cg.nextSnap" ); } // execute any server string commands before transitioning entities CG_ExecuteNewServerCommands( cg.nextSnap->serverCommandSequence ); // clear the currentValid flag for all entities in the existing snapshot for ( i = 0 ; i < cg.snap->numEntities ; i++ ) { cent = &cg_entities[ cg.snap->entities[ i ].number ]; cent->currentValid = qfalse; } // move nextSnap to snap and do the transitions oldFrame = cg.snap; cg.snap = cg.nextSnap; // sort out solid entities //CG_BuildSolidList(); for ( i = 0 ; i < cg.snap->numEntities ; i++ ) { if ( 1 )//cg.snap->entities[ i ].number != 0 ) // I guess the player adds his/her events elsewhere, so doing this also gives us double events for the player! { cent = &cg_entities[ cg.snap->entities[ i ].number ]; CG_TransitionEntity( cent ); } } cg.nextSnap = NULL; // check for playerstate transition events if ( oldFrame ) { // if we are not doing client side movement prediction for any // reason, then the client events and view changes will be issued now if ( cg_timescale.value >= 1.0f ) { CG_TransitionPlayerState( &cg.snap->ps, &oldFrame->ps ); } }}
开发者ID:Agustinlv,项目名称:BlueHarvest,代码行数:57,
示例11: CG_RegisterUpgrade/*=================CG_RegisterUpgradeThe server says this item is used on this level=================*/void CG_RegisterUpgrade( int upgradeNum ){ upgradeInfo_t *upgradeInfo; char *icon; upgradeInfo = &cg_upgrades[ upgradeNum ]; if( upgradeNum == 0 ) return; if( upgradeInfo->registered ) return; memset( upgradeInfo, 0, sizeof( *upgradeInfo ) ); upgradeInfo->registered = qtrue; if( !BG_FindNameForUpgrade( upgradeNum ) ) CG_Error( "Couldn't find upgrade %i", upgradeNum ); upgradeInfo->humanName = BG_FindHumanNameForUpgrade( upgradeNum ); //la la la la la, i'm not listening! if( upgradeNum == UP_GRENADE ) upgradeInfo->upgradeIcon = cg_weapons[ WP_GRENADE ].weaponIcon; else if( ( icon = BG_FindIconForUpgrade( upgradeNum ) ) ) upgradeInfo->upgradeIcon = trap_R_RegisterShader( icon );}
开发者ID:ztdretcher,项目名称:zt-tremulous,代码行数:34,
示例12: CG_DrawStatsvoid CG_DrawStats( char *stats ) { int i, y, v, j; #define MAX_STATS_VARS 64 int vars[MAX_STATS_VARS]; char *str, *token; char *formatStr = NULL; // TTimo: init int varIndex; char string[MAX_QPATH]; UI_DrawProportionalString( 320, 120, "MISSION STATS", UI_CENTER | UI_SMALLFONT | UI_DROPSHADOW, colorWhite ); Q_strncpyz( string, stats, sizeof( string ) ); str = string; // convert commas to spaces for ( i = 0; str[i]; i++ ) { if ( str[i] == ',' ) { str[i] = ' '; } } for ( i = 0, y = 0, v = 0; statsItems[i].label; i++ ) { y += statsItems[i].YOfs; UI_DrawProportionalString( statsItems[i].labelX, y, statsItems[i].label, statsItems[i].labelFlags, *statsItems[i].labelColor ); if ( statsItems[i].numVars ) { varIndex = v; for ( j = 0; j < statsItems[i].numVars; j++ ) { token = COM_Parse( &str ); if ( !token || !token[0] ) { CG_Error( "error parsing mission stats/n" ); return; } vars[v++] = atoi( token ); } // build the formatStr switch ( statsItems[i].numVars ) { case 1: formatStr = va( statsItems[i].format, vars[varIndex] ); break; case 2: formatStr = va( statsItems[i].format, vars[varIndex], vars[varIndex + 1] ); break; case 3: formatStr = va( statsItems[i].format, vars[varIndex], vars[varIndex + 1], vars[varIndex + 2] ); break; case 4: formatStr = va( statsItems[i].format, vars[varIndex], vars[varIndex + 1], vars[varIndex + 2], vars[varIndex + 3] ); break; } UI_DrawProportionalString( statsItems[i].formatX, y, formatStr, statsItems[i].formatFlags, *statsItems[i].formatColor ); } }}
开发者ID:Justasic,项目名称:RTCW-MP,代码行数:60,
示例13: vmMain/*================vmMainThis is the only way control passes into the module.This must be the very first function compiled into the .q3vm file================*/Q_EXPORT intptr_t vmMain( int command, int arg0, int arg1, int arg2, int arg3, int arg4, int arg5, int arg6, int arg7, int arg8, int arg9, int arg10, int arg11 ) { switch ( command ) { case CG_INIT: CG_Init( arg0, arg1, arg2 ); return 0; case CG_SHUTDOWN: CG_Shutdown(); return 0; case CG_CONSOLE_COMMAND: return CG_ConsoleCommand(); case CG_DRAW_ACTIVE_FRAME: CG_DrawActiveFrame( arg0, arg1, arg2 ); return 0; case CG_CROSSHAIR_PLAYER: return CG_CrosshairPlayer(); case CG_LAST_ATTACKER: return CG_LastAttacker(); case CG_KEY_EVENT: CG_KeyEvent(arg0, arg1); return 0; case CG_MOUSE_EVENT: CG_MouseEvent(arg0, arg1); return 0; case CG_EVENT_HANDLING: CG_EventHandling(arg0); return 0; default: CG_Error( "vmMain: unknown command %i", command ); break; } return -1;}
开发者ID:asl97,项目名称:ZEQ2-Lite-1,代码行数:41,
示例14: CG_JS_Sys_Initvoid CG_JS_Sys_Init(JSContext *ctx, JSObject *global){ JSObject *Sys; int len = strlen(GAME_VERSION); char *gv = (char *)JS_malloc(ctx, len+1); Sys = JS_DefineObject(ctx, global, "Sys", &sys_class, NULL, 0); if (!Sys) CG_Error("Failed to Define javascript Sys object/n"); if (!JS_DefineFunctions(ctx, Sys, sys_static_methods)) CG_Error("Failed to Define javascript Sys functions/n"); if (!JS_DefineConstDoubles(ctx, Sys, sys_constants)) CG_Error("Failed to Define javascript Sys constants/n"); CG_JS_Sys_Cvar_Init(ctx, Sys);}
开发者ID:donald-hanson,项目名称:battle-of-the-sexes,代码行数:16,
示例15: CG_SoundPickOldestRandomSound/*==============CG_SoundPickOldestRandomSound==============*/void CG_SoundPickOldestRandomSound( soundScript_t *sound, vec3_t org, int entnum ) { int oldestTime = 0; // TTimo: init soundScriptSound_t *oldestSound; soundScriptSound_t *scriptSound; oldestSound = NULL; scriptSound = sound->soundList; while ( scriptSound ) { if ( !oldestSound || ( scriptSound->lastPlayed < oldestTime ) ) { oldestTime = scriptSound->lastPlayed; oldestSound = scriptSound; } scriptSound = scriptSound->next; } if ( oldestSound ) { // play this sound if ( !sound->streaming ) { if ( !oldestSound->sfxHandle ) { oldestSound->sfxHandle = trap_S_RegisterSound( oldestSound->filename ); } trap_S_StartSound( org, entnum, sound->channel, oldestSound->sfxHandle ); } else { trap_S_StartStreamingSound( oldestSound->filename, sound->looping ? oldestSound->filename : NULL, entnum, sound->channel, sound->attenuation ); } oldestSound->lastPlayed = cg.time; } else { CG_Error( "Unable to locate a valid sound for soundScript: %s/n", sound->name ); }}
开发者ID:Justasic,项目名称:RTCW-MP,代码行数:35,
示例16: CG_Errorstatic demoChasePoint_t *chasePointAlloc(void) { demoChasePoint_t * point = (demoChasePoint_t *)malloc(sizeof (demoChasePoint_t)); if (!point) CG_Error("Out of memory"); memset( point, 0, sizeof( demoChasePoint_t )); return point;}
开发者ID:entdark,项目名称:q3mme,代码行数:7,
示例17: CG_LimboPanel_GetWeaponForNumberweapon_t CG_LimboPanel_GetWeaponForNumber(int number, int slot, qboolean ignoreDisabled) { bg_playerclass_t *classInfo; if (CG_LimboPanel_GetTeam() == TEAM_SPECTATOR) { return WP_NONE; } classInfo = CG_LimboPanel_GetPlayerClass(); if (!classInfo) { return WP_NONE; } if (slot == 1) { if (!ignoreDisabled && CG_LimboPanel_WeaponIsDisabled(number)) { if (!number) { CG_Error("ERROR: Class weapon 0 disabled/n"); return WP_NONE; } return classInfo->classWeapons[0]; } return classInfo->classWeapons[number]; } if (number == 0) { if (CG_LimboPanel_GetClass() == PC_COVERTOPS) { return CG_LimboPanel_GetTeam() == TEAM_AXIS ? WP_SILENCER : WP_SILENCED_COLT; } return CG_LimboPanel_GetTeam() == TEAM_AXIS ? WP_LUGER : WP_COLT; } return 0;}
开发者ID:ETrun,项目名称:ETrun,代码行数:32,
示例18: CG_RestartLevelvoid CG_RestartLevel( void ) { int snapshotNum; int r; snapshotNum = cg.processedSnapshotNum;/*Ghoul2 Insert Start*/// memset( cg_entities, 0, sizeof( cg_entities ) ); CG_Init_CGents();// this is a No-No now we have stl vector classes in here.// memset( &cg, 0, sizeof( cg ) ); CG_Init_CG();/*Ghoul2 Insert End*/ CG_LinkCentsToGents(); CG_InitLocalEntities(); CG_InitMarkPolys(); // regrab the first snapshot of the restart cg.processedSnapshotNum = snapshotNum; r = cgi_GetSnapshot( cg.processedSnapshotNum, &cg.activeSnapshots[0] ); if ( !r ) { CG_Error( "cgi_GetSnapshot failed on restart" ); } CG_SetInitialSnapshot( &cg.activeSnapshots[0] ); cg.time = cg.snap->serverTime;}
开发者ID:Agustinlv,项目名称:BlueHarvest,代码行数:35,
示例19: SP_worldspawnvoid SP_worldspawn( void ) { char *s; CG_SpawnString( "classname", "", &s ); if ( Q_stricmp( s, "worldspawn" ) ) { CG_Error( "SP_worldspawn: The first entity isn't 'worldspawn'" ); } CG_SpawnString( "enableDust", "0", &s ); trap_Cvar_Set( "cg_enableDust", s ); CG_SpawnString( "enableBreath", "0", &s ); trap_Cvar_Set( "cg_enableBreath", s ); if ( CG_SpawnVector2D( "mapcoordsmins", "-128 128", cg.mapcoordsMins ) && // top left CG_SpawnVector2D( "mapcoordsmaxs", "128 -128", cg.mapcoordsMaxs ) ) { // bottom right cg.mapcoordsValid = qtrue; } else { cg.mapcoordsValid = qfalse; }#if 0 cg.mapcoordsScale[0] = 1 / ( cg.mapcoordsMaxs[0] - cg.mapcoordsMins[0] ); cg.mapcoordsScale[1] = 1 / ( cg.mapcoordsMaxs[1] - cg.mapcoordsMins[1] ); BG_InitLocations( cg.mapcoordsMins, cg.mapcoordsMaxs );#endif CG_SpawnString( "atmosphere", "", &s ); CG_EffectParse( s ); CG_SpawnFloat( "skyalpha", "1", &cg.skyAlpha );}
开发者ID:KuehnhammerTobias,项目名称:ioid3-game,代码行数:33,
示例20: CG_AddAuraToScene/*========================CG_AddAuraToScene========================*/void CG_AddAuraToScene( centity_t *player){ int clientNum, tier; auraState_t *state; auraConfig_t *config; // Get the aura system corresponding to the player clientNum = player->currentState.clientNum; if(clientNum < 0 || clientNum >= MAX_CLIENTS){ CG_Error( "Bad clientNum on player entity"); return; } state = &auraStates[ clientNum ]; tier = cgs.clientinfo[clientNum].tierCurrent; config = &(state->configurations[tier]); // Update origin VectorCopy( player->lerpOrigin, state->origin); // Calculate modulation for dimming CG_Aura_DimLight( player, state, config); // Add aura effects CG_Aura_AddSounds( player, state, config); CG_Aura_AddTrail( player, state, config); CG_Aura_AddDebris( player, state, config); CG_Aura_AddDLight( player, state, config); // Render the aura CG_Aura_ConvexHullRender( player, state, config);}
开发者ID:burzumishi,项目名称:dragonballworld,代码行数:34,
示例21: CG_ConfigString/*=================CG_ConfigString=================*/const char* CG_ConfigString( int index ){ if ( index < 0 || index >= MAX_CONFIGSTRINGS ) { CG_Error( "CG_ConfigString: bad index: %i", index ); } return cgs.gameState.stringData + cgs.gameState.stringOffsets[ index ];}
开发者ID:OnlyTheGhosts,项目名称:OWEngine,代码行数:13,
示例22: Com_Errorvoid QDECL Com_Error( int level, const char *error, ... ) { va_list argptr; char text[1024]; va_start (argptr, error); Q_vsnprintf (text, sizeof(text), error, argptr); va_end (argptr); CG_Error( "%s", text);}
开发者ID:asl97,项目名称:ZEQ2-Lite-1,代码行数:10,
示例23: sizeofdemoListPoint_t *listPointAlloc( int size ) { demoListPoint_t * point; size += sizeof( demoListPoint_t ); point = (demoListPoint_t *)malloc( size ); if (!point) CG_Error("Out of memory"); memset( point, 0, size ); return point;}
开发者ID:entdark,项目名称:q3mme,代码行数:10,
示例24: SP_path_corner_2void SP_path_corner_2( void ) { char* targetname; vec3_t origin; CG_SpawnString( "targetname", "", &targetname ); CG_SpawnVector( "origin", "0 0 0", origin ); if ( !*targetname ) { CG_Error( "path_corner_2 with no targetname at %s/n", vtos( origin ) ); return; } if ( numPathCorners >= MAX_PATH_CORNERS ) { CG_Error( "Maximum path_corners hit/n" ); return; } BG_AddPathCorner( targetname, origin );}
开发者ID:TheDushan,项目名称:OpenWolf,代码行数:19,
示例25: CG_ParticleExplosionvoid CG_ParticleExplosion(char *animStr, vec3_t origin, vec3_t vel, int duration, int sizeStart, int sizeEnd, qboolean dlight) { cparticle_t *p; int anim; // find the animation string for (anim = 0; shaderAnimNames[anim]; anim++) { if (!Q_stricmp(animStr, shaderAnimNames[anim])) { break; } } if (!shaderAnimNames[anim]) { CG_Error("CG_ParticleExplosion: unknown animation string: %s/n", animStr); return; } if (!free_particles) { return; } p = free_particles; free_particles = p->next; p->next = active_particles; active_particles = p; p->time = cg.time; p->alpha = 1.0; p->alphavel = 0; if (duration < 0) { duration *= -1; p->roll = 0; } else { p->roll = crandom() * 179; } p->shaderAnim = anim; p->width = sizeStart; p->height = sizeStart * shaderAnimSTRatio[anim]; // for sprites that are stretch in either direction p->endheight = sizeEnd; p->endwidth = sizeEnd * shaderAnimSTRatio[anim]; p->endtime = cg.time + duration; // ydnar if (dlight) { p->type = P_DLIGHT_ANIM; } else { p->type = P_ANIM; } VectorCopy(origin, p->org); VectorCopy(vel, p->vel); VectorClear(p->accel);}
开发者ID:Exosum,项目名称:ETrun,代码行数:55,
示例26: SP_worldspawnvoid SP_worldspawn( void ) { char *s; CG_SpawnString( "classname", "", &s ); if( Q_stricmp( s, "worldspawn" ) ) { CG_Error( "SP_worldspawn: The first entity isn't 'worldspawn'" ); } CG_SpawnFloat( "fogstart", "0", &cg_linearFogOverride ); CG_SpawnFloat( "radarrange", "2500", &cg_radarRange );}
开发者ID:NikitaRus,项目名称:JediKnightGalaxies,代码行数:11,
示例27: CG_Error/*====================CG_MakeExplosion====================*/localEntity_t *CG_MakeExplosion( vec3_t origin, vec3_t dir, qhandle_t hModel, qhandle_t shader, int msec, qboolean isSprite ) { float ang; localEntity_t *ex; int offset; vec3_t tmpVec, newOrigin; if ( msec <= 0 ) { CG_Error( "CG_MakeExplosion: msec = %i", msec ); } // skew the time a bit so they aren't all in sync offset = rand() & 63; ex = CG_AllocLocalEntity(); if ( isSprite ) { ex->leType = LE_SPRITE_EXPLOSION; // randomly rotate sprite orientation ex->refEntity.rotation = rand() % 360; VectorScale( dir, 16, tmpVec ); VectorAdd( tmpVec, origin, newOrigin ); } else { ex->leType = LE_EXPLOSION; VectorCopy( origin, newOrigin ); // set axis with random rotate if ( !dir ) { AxisClear( ex->refEntity.axis ); } else { ang = rand() % 360; VectorCopy( dir, ex->refEntity.axis[0] ); RotateAroundDirection( ex->refEntity.axis, ang ); } } ex->startTime = cg.time - offset; ex->endTime = ex->startTime + msec; // bias the time so all shader effects start correctly ex->refEntity.shaderTime = ex->startTime / 1000.0f; ex->refEntity.hModel = hModel; ex->refEntity.customShader = shader; // set origin VectorCopy( newOrigin, ex->refEntity.origin ); VectorCopy( newOrigin, ex->refEntity.oldorigin ); ex->color[0] = ex->color[1] = ex->color[2] = 1.0; return ex;}
开发者ID:kingtiger01,项目名称:OpenMOHAA,代码行数:59,
注:本文中的CG_Error函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 C++ CG_EventHandling函数代码示例 C++ CG_DrawStringExt函数代码示例 |