这篇教程C++ FStrEq函数代码示例写得很实用,希望能帮到您。
本文整理汇总了C++中FStrEq函数的典型用法代码示例。如果您正苦于以下问题:C++ FStrEq函数的具体用法?C++ FStrEq怎么用?C++ FStrEq使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。 在下文中一共展示了FStrEq函数的29个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。 示例1: FStrEqbool CNewRecharge::KeyValue( const char *szKeyName, const char *szValue ){ if ( FStrEq(szKeyName, "style") || FStrEq(szKeyName, "height") || FStrEq(szKeyName, "value1") || FStrEq(szKeyName, "value2") || FStrEq(szKeyName, "value3")) { } else if (FStrEq(szKeyName, "dmdelay")) { m_iReactivate = atoi(szValue); } else { return BaseClass::KeyValue( szKeyName, szValue ); } return true;}
开发者ID:RaraFolf,项目名称:FIREFIGHT-RELOADED-src-sdk-2013,代码行数:20,
示例2: strtolvoid CElectrifiedWire::KeyValue( KeyValueData* pkvd ){ if( FStrEq( pkvd->szKeyName, "sparkfrequency" ) ) { m_iTipSparkFrequency = strtol( pkvd->szValue, nullptr, 10 ); pkvd->fHandled = true; } else if( FStrEq( pkvd->szKeyName, "bodysparkfrequency" ) ) { m_iBodySparkFrequency = strtol( pkvd->szValue, nullptr, 10 ); pkvd->fHandled = true; } else if( FStrEq( pkvd->szKeyName, "lightningfrequency" ) ) { m_iLightningFrequency = strtol( pkvd->szValue, nullptr, 10 ); pkvd->fHandled = true; } else if( FStrEq( pkvd->szKeyName, "xforce" ) ) { m_iXJoltForce = strtol( pkvd->szValue, nullptr, 10 ); pkvd->fHandled = true; } else if( FStrEq( pkvd->szKeyName, "yforce" ) ) { m_iYJoltForce = strtol( pkvd->szValue, nullptr, 10 ); pkvd->fHandled = true; } else if( FStrEq( pkvd->szKeyName, "zforce" ) ) { m_iZJoltForce = strtol( pkvd->szValue, nullptr, 10 ); pkvd->fHandled = true; } else BaseClass::KeyValue( pkvd );}
开发者ID:oskarlh,项目名称:HLEnhanced,代码行数:41,
示例3: ifint CSqueakGrenade::IRelationship( CBaseEntity *pTarget ) { if ( gameplayMods::snarkFriendlyToPlayer.isActive() ) { if ( FStrEq( "player", STRING( pTarget->pev->classname ) ) ) { return R_AL; } else if ( FStrEq( "monster_bullchicken", STRING( pTarget->pev->classname ) ) || FStrEq( "monster_alien_grunt", STRING( pTarget->pev->classname ) ) || FStrEq( "monster_alien_slave", STRING( pTarget->pev->classname ) ) ) { return R_DL; } } if ( gameplayMods::snarkFriendlyToAllies.isActive() && FStrEq( "monster_scientist", STRING( pTarget->pev->classname ) ) || FStrEq( "monster_barney", STRING( pTarget->pev->classname ) ) ) { return R_AL; } return CGrenade::IRelationship( pTarget );}
开发者ID:suXinjke,项目名称:HalfPayne,代码行数:22,
示例4: InitIcons//-----------------------------------------------------------------------------// Purpose: //-----------------------------------------------------------------------------void CHudControlPointIcons::FireGameEvent( IGameEvent *event ){ const char *eventname = event->GetName(); C_BasePlayer *pPlayer = C_BasePlayer::GetLocalPlayer(); if ( FStrEq( "controlpoint_initialized", eventname ) ) { // Create our control points InitIcons(); return; } if ( FStrEq( "controlpoint_updateimages", eventname ) ) { // Update the images of our control point icons int iIndex = event->GetInt( "index" ); if ( iIndex == -1 ) { for (int i = 0; i < m_Icons.Count(); i++) { m_Icons[i]->UpdateImage(); } } else { // Only invalidate the specified cap point for (int i = 0; i < m_Icons.Count(); i++) { if ( m_Icons[i]->GetCapIndex() == iIndex ) { m_Icons[i]->UpdateImage(); } } } UpdateProgressBarFor( iIndex ); return; } if ( FStrEq( "controlpoint_updatelayout", eventname ) ) { // Update the layout of our control point icons int iIndex = event->GetInt( "index" ); if ( iIndex == -1 ) { InvalidateLayout(); } else { // Only invalidate the specified cap point for (int i = 0; i < m_Icons.Count(); i++) { if ( m_Icons[i]->GetCapIndex() == iIndex ) { m_Icons[i]->InvalidateLayout(); } } } UpdateProgressBarFor( iIndex ); return; } if ( FStrEq( "controlpoint_updatecapping", eventname ) ) { // Update the capping status of our control point icons int iIndex = event->GetInt( "index" ); if ( iIndex == -1 ) { for (int i = 0; i < m_Icons.Count(); i++) { m_Icons[i]->UpdateCapImage(); } } else { // Only invalidate the specified cap point for (int i = 0; i < m_Icons.Count(); i++) { if ( m_Icons[i]->GetCapIndex() == iIndex ) { m_Icons[i]->UpdateCapImage(); } } } UpdateProgressBarFor( iIndex ); return; } if ( FStrEq( "controlpoint_starttouch", eventname ) ) { int iPlayer = event->GetInt( "player" ); if ( pPlayer && iPlayer == pPlayer->entindex() ) { m_iCurrentCP = event->GetInt( "area" ); UpdateProgressBarFor( m_iCurrentCP ); } }//.........这里部分代码省略.........
开发者ID:0xFEEDC0DE64,项目名称:UltraGame,代码行数:101,
示例5: ParseKeyValue virtual void ParseKeyValue( void *pData, const char *pKey, const char *pValue ) { breakmodel_t *pModel = (breakmodel_t *)pData; if ( !strcmpi( pKey, "model" ) ) { ParseModelName( pModel, pValue ); } else if (!strcmpi( pKey, "ragdoll" ) ) { ParseModelName( pModel, pValue ); pModel->isRagdoll = true; } else if (!strcmpi( pKey, "motiondisabled" ) ) { pModel->isMotionDisabled = true; } else if ( !strcmpi( pKey, "offset" ) ) { UTIL_StringToVector( pModel->offset.Base(), pValue ); } else if ( !strcmpi( pKey, "health" ) ) { pModel->health = atof(pValue); } else if ( !strcmpi( pKey, "fadetime" ) ) { pModel->fadeTime = atof(pValue); if ( !m_wroteCollisionGroup ) { pModel->collisionGroup = COLLISION_GROUP_DEBRIS; } } else if ( !strcmpi( pKey, "fademindist" ) ) { pModel->fadeMinDist = atof(pValue); } else if ( !strcmpi( pKey, "fademaxdist" ) ) { pModel->fadeMaxDist = atof(pValue); } else if ( !strcmpi( pKey, "debris" ) ) { pModel->collisionGroup = atoi(pValue) > 0 ? COLLISION_GROUP_DEBRIS : COLLISION_GROUP_INTERACTIVE; m_wroteCollisionGroup = true; } else if ( !strcmpi( pKey, "burst" ) ) { pModel->burstScale = atof( pValue ); } else if ( !strcmpi( pKey, "placementbone" ) ) { Q_strncpy( pModel->placementName, pValue, sizeof(pModel->placementName) ); pModel->placementIsBone = true; } else if ( !strcmpi( pKey, "placementattachment" ) ) { Q_strncpy( pModel->placementName, pValue, sizeof(pModel->placementName) ); pModel->placementIsBone = false; } else if ( !strcmpi( pKey, "multiplayer_break" ) ) { if ( FStrEq( pValue, "server" ) ) { pModel->mpBreakMode = MULTIPLAYER_BREAK_SERVERSIDE; } else if ( FStrEq( pValue, "client" ) ) { pModel->mpBreakMode = MULTIPLAYER_BREAK_CLIENTSIDE; } } else if ( !strcmpi( pKey, "velocity" ) ) { UTIL_StringToVector( pModel->velocity.Base(), pValue ); } }
开发者ID:Adidasman1,项目名称:source-sdk-2013,代码行数:75,
示例6: SquadRecruit//=========================================================//// SquadRecruit(), get some monsters of my classification and// link them as a group. returns the group size////=========================================================int CSquadMonster :: SquadRecruit( int searchRadius, int maxMembers ){ int squadCount; int iMyClass = Classify();// cache this monster's class // Don't recruit if I'm already in a group if ( InSquad() ) return 0; if ( maxMembers < 2 ) return 0; // I am my own leader m_hSquadLeader = this; squadCount = 1; CBaseEntity *pEntity = NULL; if ( !FStringNull( pev->netname ) ) { // I have a netname, so unconditionally recruit everyone else with that name. pEntity = UTIL_FindEntityByString( pEntity, "netname", STRING( pev->netname ) ); while ( pEntity ) { CSquadMonster *pRecruit = pEntity->MySquadMonsterPointer(); if ( pRecruit ) { if ( !pRecruit->InSquad() && pRecruit->Classify() == iMyClass && pRecruit != this ) { // minimum protection here against user error.in worldcraft. if (!SquadAdd( pRecruit )) break; squadCount++; } } pEntity = UTIL_FindEntityByString( pEntity, "netname", STRING( pev->netname ) ); } } else { while ((pEntity = UTIL_FindEntityInSphere( pEntity, pev->origin, searchRadius )) != NULL) { CSquadMonster *pRecruit = pEntity->MySquadMonsterPointer( ); if ( pRecruit && pRecruit != this && pRecruit->IsAlive() && !pRecruit->m_pCine ) { // Can we recruit this guy? if ( !pRecruit->InSquad() && pRecruit->Classify() == iMyClass && ( (iMyClass != CLASS_ALIEN_MONSTER) || FStrEq(STRING(pev->classname), STRING(pRecruit->pev->classname))) && FStringNull( pRecruit->pev->netname ) ) { TraceResult tr; UTIL_TraceLine( pev->origin + pev->view_ofs, pRecruit->pev->origin + pev->view_ofs, ignore_monsters, pRecruit->edict(), &tr );// try to hit recruit with a traceline. if ( tr.flFraction == 1.0 ) { if (!SquadAdd( pRecruit )) break; squadCount++; } } } } } // no single member squads if (squadCount == 1) { m_hSquadLeader = NULL; } return squadCount;}
开发者ID:jlecorre,项目名称:hlinvasion,代码行数:82,
示例7: RadioCreatebool RadioCreate( edict_t *pEntity ){ // Create the radio and stick to the wall entvars_t *pPev = VARS( pEntity ); if (pPev->iuser1 > 0) return 0; // make sure we dont already have a radio int radiocount = 0; int i = 1; char *pClassname; edict_t *frontEnt; for (i; i < 1025; i++) { frontEnt = INDEXENT ( i ); if (frontEnt) { pClassname = (char *)STRING(frontEnt->v.classname); if (FStrEq("building_radio", pClassname)) { if (frontEnt->v.euser4 == pEntity) { radiocount++; } } } } if (AdminLoggedIn[ENTINDEX(pEntity)] == 0) { if (radiocount >= 2) { ClientPrint( pPev, HUD_PRINTTALK, "* Cant have more than 2 radios!/n"); return 0; } } UTIL_MakeVectors( pPev->v_angle + pPev->punchangle ); Vector vecSrc = GetGunPosition( pEntity ); Vector vecAiming = gpGlobals->v_forward; TraceResult tr; UTIL_TraceLine( vecSrc, vecSrc + vecAiming * 128, dont_ignore_monsters, pEntity , &tr ); if (tr.flFraction < 1.0 || AdminLoggedIn[ENTINDEX(pEntity)]) { if (tr.pHit && !(tr.pHit->v.flags & FL_CONVEYOR) && (FStrEq((char *)STRING(tr.pHit->v.classname), "worldspawn") || FStrEq((char *)STRING(tr.pHit->v.classname), "func_wall") || AdminLoggedIn[ENTINDEX(pEntity)] || FStrEq((char *)STRING(tr.pHit->v.classname), "building_dancemachine"))) // Make sure it isnt a conveyor! { Vector angles = UTIL_VecToAngles( tr.vecPlaneNormal ); if ((angles.x > 30 || angles.x < -30) && AdminLoggedIn[ENTINDEX(pEntity)] == 0) { ClientPrint( pPev, HUD_PRINTTALK, "* Can't place radios on floors or cielings!/n"); return 0; } // Create the camera here! Vector vecOri = tr.vecEndPos + tr.vecPlaneNormal * 14; //Vector vecOri = tr.vecEndPos + tr.vecPlaneNormal * 15; int maxdist = (int)CVAR_GET_FLOAT("sa_radiospread"); // make sure we arent placing it within 400 units of another radio for (i=1; i < 1025; i++) { frontEnt = INDEXENT ( i ); if (frontEnt) { pClassname = (char *)STRING(frontEnt->v.classname); if (FStrEq("building_radio", pClassname)) { if ((frontEnt->v.origin - vecOri).Length() < maxdist && AdminLoggedIn[ENTINDEX(pEntity)] == 0) { ClientPrint( pPev, HUD_PRINTTALK, "* Can't place a radio so close to another radio!/n"); return 0; } } } } KeyValueData kvd; //edict_t *pent = CREATE_ENTITY(); //edict_t *pent = CREATE_NAMED_ENTITY(MAKE_STRING("info_target")); edict_t *tEntity; tEntity = CREATE_NAMED_ENTITY(MAKE_STRING("info_target")); entvars_t *pRunOnPev; pRunOnPev = VARS(tEntity); char buf[80]; sprintf( buf, "%s", "building_radio"); // Set the KEYVALUES here! kvd.fHandled = FALSE;//.........这里部分代码省略.........
开发者ID:Landokane,项目名称:avc,代码行数:101,
示例8: ALERT// make the entity enter a scripted sequencevoid CCineMonster::PossessEntity(void){ CBaseEntity * pEntity = m_hTargetEnt; CBaseMonster *pTarget = NULL; if(pEntity) pTarget = pEntity->MyMonsterPointer(); if(pTarget) {// FindEntity() just checked this!#if 0 if ( !pTarget->CanPlaySequence( FCanOverrideState() ) ) { ALERT( at_aiconsole, "Can't possess entity %s/n", STRING(pTarget->pev->classname) ); return; }#endif pTarget->m_pGoalEnt = this; pTarget->m_pCine = this; pTarget->m_hTargetEnt = this; m_saved_movetype = pTarget->pev->movetype; m_saved_solid = pTarget->pev->solid; m_saved_effects = pTarget->pev->effects; pTarget->pev->effects |= pev->effects; switch(m_fMoveTo) { case 0: pTarget->m_scriptState = SCRIPT_WAIT; break; case 1: pTarget->m_scriptState = SCRIPT_WALK_TO_MARK; DelayStart(1); break; case 2: pTarget->m_scriptState = SCRIPT_RUN_TO_MARK; DelayStart(1); break; case 4: UTIL_SetOrigin(pTarget->pev, pev->origin); pTarget->pev->ideal_yaw = pev->angles.y; pTarget->pev->avelocity = Vector(0, 0, 0); pTarget->pev->velocity = Vector(0, 0, 0); pTarget->pev->effects |= EF_NOINTERP; pTarget->pev->angles.y = pev->angles.y; pTarget->m_scriptState = SCRIPT_WAIT; m_startTime = gpGlobals->time + 1E6; // UNDONE: Add a flag to do this so people can fixup physics after teleporting monsters // pTarget->pev->flags &= ~FL_ONGROUND; break; } // ALERT( at_aiconsole, "/"%s/" found and used (INT: %s)/n", STRING( pTarget->pev->targetname ), FBitSet(pev->spawnflags, SF_SCRIPT_NOINTERRUPT)?"No":"Yes" ); pTarget->m_IdealMonsterState = MONSTERSTATE_SCRIPT; if(m_iszIdle) { StartSequence(pTarget, m_iszIdle, FALSE); if(FStrEq(STRING(m_iszIdle), STRING(m_iszPlay))) { pTarget->pev->framerate = 0; } } }}
开发者ID:Sh1ft0x0EF,项目名称:HLSDKRevamp,代码行数:70,
示例9: ClientCommand// Use CMD_ARGV, CMD_ARGV, and CMD_ARGC to get pointers the character string command.void ClientCommand( edict_t *pEntity ){ const char *pcmd = CMD_ARGV(0); const char *pstr; // Is the client spawned yet? if ( !pEntity->pvPrivateData ) return; entvars_t *pev = &pEntity->v; if ( FStrEq(pcmd, "say" ) ) { Host_Say( pEntity, 0 ); } else if ( FStrEq(pcmd, "say_team" ) ) { Host_Say( pEntity, 1 ); } else if ( FStrEq(pcmd, "fullupdate" ) ) { GetClassPtr((CBasePlayer *)pev)->ForceClientDllUpdate(); } else if ( FStrEq(pcmd, "give" ) ) { if ( g_flWeaponCheat != 0.0) { int iszItem = ALLOC_STRING( CMD_ARGV(1) ); // Make a copy of the classname GetClassPtr((CBasePlayer *)pev)->GiveNamedItem( STRING(iszItem) ); } } else if ( FStrEq(pcmd, "fire") ) { if ( g_flWeaponCheat != 0.0) { CBaseEntity *pPlayer = CBaseEntity::Instance(pEntity); if (CMD_ARGC() > 1) { FireTargets(CMD_ARGV(1), pPlayer, pPlayer, USE_TOGGLE, 0); } else { TraceResult tr; UTIL_MakeVectors(pev->v_angle); UTIL_TraceLine( pev->origin + pev->view_ofs, pev->origin + pev->view_ofs + gpGlobals->v_forward * 1000, dont_ignore_monsters, pEntity, &tr ); if (tr.pHit) { CBaseEntity *pHitEnt = CBaseEntity::Instance(tr.pHit); if (pHitEnt) { pHitEnt->Use(pPlayer, pPlayer, USE_TOGGLE, 0); ClientPrint( &pEntity->v, HUD_PRINTCONSOLE, UTIL_VarArgs( "Fired %s /"%s/"/n", STRING(pHitEnt->pev->classname), STRING(pHitEnt->pev->targetname) ) ); } } } } } else if ( FStrEq(pcmd, "drop" ) ) { // player is dropping an item. GetClassPtr((CBasePlayer *)pev)->DropPlayerItem((char *)CMD_ARGV(1)); } else if ( FStrEq(pcmd, "fov" ) ) { if ( g_flWeaponCheat && CMD_ARGC() > 1) { GetClassPtr((CBasePlayer *)pev)->m_iFOV = atoi( CMD_ARGV(1) ); } else { CLIENT_PRINTF( pEntity, print_console, UTIL_VarArgs( "/"fov/" is /"%d/"/n", (int)GetClassPtr((CBasePlayer *)pev)->m_iFOV ) ); } } else if ( FStrEq(pcmd, "use" ) ) { GetClassPtr((CBasePlayer *)pev)->SelectItem((char *)CMD_ARGV(1)); } else if (((pstr = strstr(pcmd, "weapon_")) != NULL) && (pstr == pcmd)) { GetClassPtr((CBasePlayer *)pev)->SelectItem(pcmd); } else if (FStrEq(pcmd, "lastinv" )) { GetClassPtr((CBasePlayer *)pev)->SelectLastItem(); } else if ( FStrEq( pcmd, "spectate" ) && (pev->flags & FL_PROXY) ) // added for proxy support { CBasePlayer * pPlayer = GetClassPtr((CBasePlayer *)pev); edict_t *pentSpawnSpot = g_pGameRules->GetPlayerSpawnSpot( pPlayer ); pPlayer->StartObserver( pev->origin, VARS(pentSpawnSpot)->angles); } else if ( g_pGameRules->ClientCommand( GetClassPtr((CBasePlayer *)pev), pcmd ) ) {//.........这里部分代码省略.........
开发者ID:zenithght,项目名称:xash3d,代码行数:101,
示例10: Q_SplitString//--------------------------------------------------------------------------------------------------------------void BuyState::OnUpdate( CCSBot *me ){ char cmdBuffer[256]; // wait for a Navigation Mesh if (!TheNavMesh->IsLoaded()) return; // apparently we cant buy things in the first few seconds, so wait a bit if (m_isInitialDelay) { const float waitToBuyTime = 0.25f; if (gpGlobals->curtime - me->GetStateTimestamp() < waitToBuyTime) return; m_isInitialDelay = false; } // if we're done buying and still in the freeze period, wait if (m_doneBuying) { if (CSGameRules()->IsMultiplayer() && CSGameRules()->IsFreezePeriod()) { // make sure we're locked and loaded me->EquipBestWeapon( MUST_EQUIP ); me->Reload(); me->ResetStuckMonitor(); return; } me->Idle(); return; } // If we're supposed to buy a specific weapon for debugging, do so and then bail const char *cheatWeaponString = bot_loadout.GetString(); if ( cheatWeaponString && *cheatWeaponString ) { CUtlVector<char*, CUtlMemory<char*> > loadout; Q_SplitString( cheatWeaponString, " ", loadout ); for ( int i=0; i<loadout.Count(); ++i ) { const char *item = loadout[i]; if ( FStrEq( item, "vest" ) ) { me->GiveNamedItem( "item_kevlar" ); } else if ( FStrEq( item, "vesthelm" ) ) { me->GiveNamedItem( "item_assaultsuit" ); } else if ( FStrEq( item, "defuser" ) ) { if ( me->GetTeamNumber() == TEAM_CT ) { me->GiveDefuser(); } } else if ( FStrEq( item, "nvgs" ) ) { me->m_bHasNightVision = true; } else if ( FStrEq( item, "primammo" ) ) { me->AttemptToBuyAmmo( 0 ); } else if ( FStrEq( item, "secammo" ) ) { me->AttemptToBuyAmmo( 1 ); } else { me->GiveWeapon( item ); } } m_doneBuying = true; return; } if (!me->IsInBuyZone()) { m_doneBuying = true; CONSOLE_ECHO( "%s bot spawned outside of a buy zone (%d, %d, %d)/n", (me->GetTeamNumber() == TEAM_CT) ? "CT" : "Terrorist", (int)me->GetAbsOrigin().x, (int)me->GetAbsOrigin().y, (int)me->GetAbsOrigin().z ); return; } // try to buy some weapons const float buyInterval = 0.02f; if (gpGlobals->curtime - me->GetStateTimestamp() > buyInterval) { me->m_stateTimestamp = gpGlobals->curtime; bool isPreferredAllDisallowed = true;//.........这里部分代码省略.........
开发者ID:Axitonium,项目名称:SourceEngine2007,代码行数:101,
示例11: LoadMaps//---------------------------------------------------------------------------------// Purpose: Load maps into memory//---------------------------------------------------------------------------------void LoadMaps(const char *map_being_loaded){ FileHandle_t file_handle; char base_filename[512]; char map_name[128]; bool map_is_in_map_cycle; bool found_match; // Don't call FreeMaps() !!!! FreeList((void **) &map_list, &map_list_size); FreeList((void **) &votemap_list, &votemap_list_size); FreeList((void **) &map_in_cycle_list, &map_in_cycle_list_size); FreeList((void **) &map_not_in_cycle_list, &map_not_in_cycle_list_size); FindMapCVars();// MMsg("************ LOADING MAP LISTS *************/n"); override_changelevel = 0;// MMsg("Loading Map [%s]/n", map_being_loaded); Q_strcpy(current_map, map_being_loaded); // Update last maps list last_map_index ++; if (last_map_index == MAX_LAST_MAPS) { last_map_index = 0; } Q_strcpy(last_map_list[last_map_index].map_name, current_map); time_t current_time; time(¤t_time); last_map_list[last_map_index].start_time = current_time; SetChangeLevelReason(""); Q_strcpy(last_map_list[last_map_index].end_reason, ""); // Reset force map stuff, mani_map_cycle_mode will set these if necessary // when server.cfg is run Q_strcpy(forced_nextmap,""); override_changelevel = 0; override_setnextmap = false; // Get nextmap on level change file_handle = filesystem->Open (mapcyclefile->GetString(),"rt",NULL); if (file_handle == NULL) {// MMsg("Failed to load %s/n", mapcyclefile->GetString()); Q_strcpy(next_map, map_being_loaded); mani_nextmap.SetValue(next_map); AddToList((void **) &map_in_cycle_list, sizeof(map_t), &map_in_cycle_list_size); Q_strcpy(map_in_cycle_list[map_in_cycle_list_size - 1].map_name, map_being_loaded); } else {// MMsg("Mapcycle list [%s]/n", mapcyclefile->GetString()); while (filesystem->ReadLine (map_name, sizeof(map_name), file_handle) != NULL) { if (!ParseLine(map_name, true, false)) { continue; } if (engine->IsMapValid(map_name) == 0) {// MMsg("/n*** Map [%s] is not a valid map !!! *****/n", map_name); continue; } AddToList((void **) &map_in_cycle_list, sizeof(map_t), &map_in_cycle_list_size); Q_strcpy(map_in_cycle_list[map_in_cycle_list_size - 1].map_name, map_name); map_in_cycle_list[map_in_cycle_list_size - 1].selected_for_vote = false;// MMsg("[%s] ", map_name); }// MMsg("/n"); filesystem->Close(file_handle); } // Check if this map is in the map cycle map_is_in_map_cycle = false; for (int i = 0; i < map_in_cycle_list_size; i ++) { if (FStrEq(map_in_cycle_list[i].map_name, current_map)) { map_is_in_map_cycle = true; break; } } if (!map_is_in_map_cycle) {//.........这里部分代码省略.........
开发者ID:gunslinger23,项目名称:maniadminplugin,代码行数:101,
示例12: ASSERT// Create a custom particle system. Create a new template instead of reading// one off disk.voidAvHCustomParticleSystemEntity::KeyValue( KeyValueData* inPkvd ){ // Read tag with ps name and create a new template using it if(FStrEq(inPkvd->szKeyName, kpscSystemName)) { // Custom particle systems shouldn't be specifying a system in the .ps to use ASSERT(false); } else if(FStrEq(inPkvd->szKeyName, kpscGenSource) || FStrEq(inPkvd->szKeyName, "particleGenerationSource")) { char* theEntityName = inPkvd->szValue; this->GetCustomTemplate()->SetGenerationEntityName(theEntityName); inPkvd->fHandled = TRUE; } else if(FStrEq(inPkvd->szKeyName, kpscGenShape) || FStrEq(inPkvd->szKeyName, "particleGenerationShape")) { int theGenerationShape = 0; if(sscanf(inPkvd->szValue, "%d", &theGenerationShape)) { ShapeType theShape = PS_Point; switch(theGenerationShape) { case 4: theShape = PS_Box; break; case 5: theShape = PS_Sphere; break; case 8: theShape = PS_Blob; break; } this->GetCustomTemplate()->SetGenerationShape(theShape); inPkvd->fHandled = TRUE; } } else if(FStrEq(inPkvd->szKeyName, kpscSprite) || FStrEq(inPkvd->szKeyName, "particleSprite")) { // relative path to sprite string theSpriteName(inPkvd->szValue); this->GetCustomTemplate()->SetSprite(theSpriteName); inPkvd->fHandled = TRUE; } else if(FStrEq(inPkvd->szKeyName, kpscSpriteNumFrames) || FStrEq(inPkvd->szKeyName, "particleSpriteNumFrames")) { // int number of frames int theNumFrames = 0; if(sscanf(inPkvd->szValue, "%d", &theNumFrames) == 1) { this->GetCustomTemplate()->SetNumSpriteFrames(theNumFrames); inPkvd->fHandled = TRUE; } } else if(FStrEq(inPkvd->szKeyName, kpscGenShapeParams) || FStrEq(inPkvd->szKeyName, "particleGenerationShapeParams")) { float theParameter = 0; if(sscanf(inPkvd->szValue, "%f", &theParameter) == 1) { this->GetCustomTemplate()->SetGenerationEntityParameter(theParameter); inPkvd->fHandled = TRUE; } } else if(FStrEq(inPkvd->szKeyName, kpscNumParticles) || FStrEq(inPkvd->szKeyName, "particleNumParticles")) { // max particles, or density int theNumParticles = 0; if(sscanf(inPkvd->szValue, "%d", &theNumParticles) == 1) { this->GetCustomTemplate()->SetMaxParticles(theNumParticles); inPkvd->fHandled = TRUE; } } else if(FStrEq(inPkvd->szKeyName, kpscGenRate) || FStrEq(inPkvd->szKeyName, "particleGenerationRate")) { // num particles per second int theNumParticles = 0; if(sscanf(inPkvd->szValue, "%d", &theNumParticles) == 1) { this->GetCustomTemplate()->SetGenerationRate(theNumParticles); inPkvd->fHandled = TRUE; } } else if(FStrEq(inPkvd->szKeyName, kpscSize) || FStrEq(inPkvd->szKeyName, "particleSize")) { // float particle size float theParticleSize = 0; if(sscanf(inPkvd->szValue, "%f", &theParticleSize) == 1) { this->GetCustomTemplate()->SetParticleSize(theParticleSize); inPkvd->fHandled = TRUE; } } else if(FStrEq(inPkvd->szKeyName, kpscSystemLifetime) || FStrEq(inPkvd->szKeyName, "particleSystemLifetime")) { // string system lifetime float theLifetime = -1; if(sscanf(inPkvd->szValue, "%f", &theLifetime) == 1)//.........这里部分代码省略.........
开发者ID:Arkshine,项目名称:NS,代码行数:101,
示例13: CMD_ARGV/* <36ace2> ../cstrike/dlls/bot/cs_bot_manager.cpp:484 */void CCSBotManager::__MAKE_VHOOK(ServerCommand)(const char *pcmd){ if (!m_bServerActive || !UTIL_IsGame("czero")) return; char buffer[400]; const char *msg = CMD_ARGV(1); if (FStrEq(pcmd, "bot_about")) { Q_sprintf(buffer, "/n--------------------------------------------------------------------------/nThe Official Counter-Strike Bot V%d.%02d/nCreated by Michael S. Booth/nWeb: www.turtlerockstudios.com//csbot/nE-mail: [email C++ FString函数代码示例 C++ FSpMakeFSRef函数代码示例
|