您当前的位置:首页 > IT编程 > C++
| C语言 | Java | VB | VC | python | Android | TensorFlow | C++ | oracle | 学术与代码 | cnn卷积神经网络 | gnn | 图像修复 | Keras | 数据集 | Neo4j | 自然语言处理 | 深度学习 | 医学CAD | 医学影像 | 超参数 | pointnet | pytorch | 异常检测 | Transformers | 情感分类 | 知识图谱 |

自学教程:C++ traceLastFunc函数代码示例

51自学网 2021-06-03 08:56:15
  C++
这篇教程C++ traceLastFunc函数代码示例写得很实用,希望能帮到您。

本文整理汇总了C++中traceLastFunc函数的典型用法代码示例。如果您正苦于以下问题:C++ traceLastFunc函数的具体用法?C++ traceLastFunc怎么用?C++ traceLastFunc使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。

在下文中一共展示了traceLastFunc函数的27个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。

示例1: sqliteDB_dropTable

bool sqliteDB_dropTable ( sqlite3 *db, char *tableName ){	traceLastFunc( "sqliteDB_dropTable()" );	int exist_check;	char sql_cmd[64];	char *errmsgs;	if ( db == NULL || tableName == NULL )	{		Log ( "sqliteDB_dropTable: received %s", db == NULL ? "db = NULL" : "tableName = NULL" );		return false;	}	exist_check = sqliteDB_checkTableExists( db, tableName );	if ( exist_check != 1 )	{		// table already doesn't exist anymore		if ( exist_check == 0 )			return true;		// some error		return false;	}		_snprintf_s( sql_cmd, sizeof(sql_cmd)-1, "DROP TABLE '%s';", tableName );	sqlite3_exec( db, sql_cmd, NULL, NULL, &errmsgs );	if ( errmsgs != NULL )	{		Log( "SQLite - Error (exec drop table '%s'): %s", tableName, sqlite3_errmsg(db) );		return false;	}	return true;}
开发者ID:DexterDejan,项目名称:mod_s0beit_sa,代码行数:34,


示例2: update_translateGTASAMP_pedPool

// update SAMPGTA ped translation structurevoid update_translateGTASAMP_pedPool ( void ){	traceLastFunc( "update_translateGTASAMP_pedPool()" );	if ( !g_Players )		return;	int iGTAID, i;	for ( i = 0; i < SAMP_PLAYER_MAX; i++ )	{		if ( i == g_Players->sLocalPlayerID )		{			translateGTASAMP_pedPool.iSAMPID[0] = i;			continue;		}		if ( isBadPtr_writeAny(g_Players->pRemotePlayer[i], sizeof(stRemotePlayer)) )			continue;		if ( isBadPtr_writeAny(g_Players->pRemotePlayer[i]->pPlayerData, sizeof(stRemotePlayerData)) )			continue;		if ( isBadPtr_writeAny(g_Players->pRemotePlayer[i]->pPlayerData->pSAMP_Actor, sizeof(stSAMPPed)) )			continue;		iGTAID = getPedGTAIDFromInterface( (DWORD *)g_Players->pRemotePlayer[i]->pPlayerData->pSAMP_Actor->pGTA_Ped );		if ( iGTAID <= SAMP_PLAYER_MAX && iGTAID >= 0 )		{			translateGTASAMP_pedPool.iSAMPID[iGTAID] = i;		}	}}
开发者ID:Aephout14,项目名称:m0d-s0beit-sa,代码行数:30,


示例3: rec_sqlite_optimizeDatabase

bool rec_sqlite_optimizeDatabase (){	traceLastFunc( "rec_sqlite_optimizeTable()" );	sqlite3 *rec_db;	char *errmsgs;	if ( sqlite3_open( REC_DB_NAME, &rec_db ) != SQLITE_OK )	{		Log( "SQLite - Error while connecting: %s", sqlite3_errmsg(rec_db) );		sqlite3_close( rec_db );		return false;	}	sqlite3_exec( rec_db, "VACUUM", NULL, NULL, &errmsgs );	if ( errmsgs != NULL )	{		Log( "SQLite - Error (optimize): %s", sqlite3_errmsg(rec_db) );		sqlite3_close( rec_db );		return false;	}	cheat_state_text( "Database has been optimized" );	sqlite3_close( rec_db );	return true;}
开发者ID:DexterDejan,项目名称:mod_s0beit_sa,代码行数:27,


示例4: sqliteDB_checkTableExists

// ret: -1 = fail, 0 = not exist, 1 = existint sqliteDB_checkTableExists ( sqlite3 *db, char *tableName ){	traceLastFunc( "sqliteDB_checkTableExists()" );	sqlite3_stmt *prep_stmt;	char sql_cmd[256];	if ( db == NULL || tableName == NULL )	{		Log ( "sqliteDB_checkTableExists: received %s", db == NULL ? "db = NULL" : "tableName = NULL" );		return -1;	}	_snprintf_s( sql_cmd, sizeof(sql_cmd)-1, "SELECT name FROM sqlite_master WHERE type='table' AND name='%s';", tableName );	if ( sqlite3_prepare_v2( db, sql_cmd, sizeof(sql_cmd), &prep_stmt, NULL ) != SQLITE_OK )	{		Log( "SQLite - Error (preparing statement to find '%s' table): %s", tableName, sqlite3_errmsg(db) );		return -1;	}	sqlite3_step( prep_stmt );	// if we receive some text the table exists	if ( sqlite3_column_text( prep_stmt, 0 ) != NULL )	{		sqlite3_finalize( prep_stmt );		return 1;	}	sqlite3_finalize( prep_stmt );	return 0;}
开发者ID:DexterDejan,项目名称:mod_s0beit_sa,代码行数:31,


示例5: patcher_remove

int patcher_remove ( struct patch_set *patch ){	traceLastFunc( "patcher_remove()" );	int i;	if ( patch->failed )	{		patch->failed = 0;		return 1;	}	if ( patch->installed )	{		for ( i = 0; i < PATCHER_CHUNKS_MAX; i++ )		{			if ( patch->chunk[i].ptr == NULL )				break;			if ( !memcpy_safe((uint8_t *)patch->chunk[i].ptr, patch->chunk[i].data_orig, patch->chunk[i].len) )				Log( "Failed to restore patch '%s' chunk %d", patch->name, i );		}		patch->installed = 0;		//Log("Removed patch '%s'.", patch->name);	}	return 1;}
开发者ID:BIG686,项目名称:mod-s0beit-sa,代码行数:30,


示例6: cheat_handle_emo

void cheat_handle_emo ( struct vehicle_info *vehicle_info, struct actor_info *actor_info, float time_diff ){	traceLastFunc( "cheat_handle_emo()" );	struct vehicle_info *vtemp;	if ( !isBadPtr_GTA_pPed(actor_info) )	{		if ( KEY_PRESSED(set.key_self_destruct) )			actor_info->hitpoints = 0.0f;	}	else if ( !isBadPtr_GTA_pVehicle(vehicle_info) )	{		actor_info = actor_info_get(ACTOR_SELF, 0);		if ( actor_info->state == ACTOR_STATE_DRIVING && actor_info->vehicle->passengers[0] == actor_info )		{			if ( KEY_PRESSED(set.key_self_destruct) )			{				for ( vtemp = vehicle_info; vtemp != NULL; vtemp = vtemp->trailer )				{					if(vtemp == NULL) return;					vtemp->hitpoints = 1.0f;					cheat_vehicle_tires_set( vtemp, 1 );					if ( !set.trailer_support )						break;				}			}		}	}}
开发者ID:iBelow,项目名称:modsa_sobeit,代码行数:31,


示例7: traceLastFunc

bool HookedRakClientInterface::Send(BitStream * bitStream, PacketPriority priority, PacketReliability reliability, char orderingChannel){	traceLastFunc("HookedRakClientInterface::Send(BitStream)");	if (bitStream != nullptr)	{		if (!OnSendPacket(bitStream, priority, reliability, orderingChannel))			return false;	}	return g_RakClient->GetInterface()->Send(bitStream, priority, reliability, orderingChannel);}
开发者ID:DexterDejan,项目名称:mod_s0beit_sa,代码行数:10,


示例8: traceLastFunc

bool HookedRakClientInterface::Send( BitStream * bitStream, PacketPriority priority, PacketReliability reliability, char orderingChannel ){	traceLastFunc( "HookedRakClientInterface::Send(BitStream)" );		// use this if you wanna log outgoing packets	/*BYTE packetId;	bitStream->Read( packetId );*/	return g_RakClient->GetRakClientInterface()->Send( bitStream, priority, reliability, orderingChannel );}
开发者ID:BinL3R,项目名称:m0d-s0beit-sa-03z,代码行数:10,


示例9: cmd_change_server_fav

void cmd_change_server_fav ( char *param ){	traceLastFunc( "cmd_change_server_fav()" );	if ( strlen(param) == 0 )	{		addMessageToChatWindow( "/m0d_fav_server <server name/part of server name>" );		addMessageToChatWindow( "In order to see the favorite server list type: /m0d_fav_server list" );		return;	}	if ( strncmp(param, "list", 4) == 0 )	{		int count = 0;		for ( int i = 0; i < INI_SERVERS_MAX; i++ )		{			if ( set.server[i].server_name == NULL )				continue;			count++;			addMessageToChatWindow( "%s", set.server[i].server_name );		}		if ( count == 0 )			addMessageToChatWindow( "No servers in favorite server list. Edit the ini file to add some." );		return;	}	char	IP[257], LocalName[29];	int		Port;	strcpy( IP, g_SAMP->szIP );	Port = g_SAMP->ulPort;	strcpy( LocalName, getPlayerName(g_Players->sLocalPlayerID) );	for ( int i = 0; i < INI_SERVERS_MAX; i++ )	{		if ( set.server[i].server_name == NULL || set.server[i].ip == NULL			|| strlen(set.server[i].ip) < 7 || set.server[i].port == 0 )			continue;		if ( !findstrinstr((char *)set.server[i].server_name, param) )			continue;		if ( !set.use_current_name )			setLocalPlayerName( set.server[i].nickname );		strcpy( g_SAMP->szIP, set.server[i].ip );		g_SAMP->ulPort = set.server[i].port;		setPassword( set.server[i].password );		joining_server = 1;		return;	}	addMessageToChatWindow( "/m0d_fav_server <server name/part of server name>" );	return;}
开发者ID:Aephout14,项目名称:m0d-s0beit-sa,代码行数:55,


示例10: cheat_actor_getPositionUnder

CVector cheat_actor_getPositionUnder ( actor_info *ainfo ){	traceLastFunc( "cheat_vehicle_getPositionUnder()" );	CVector offsetVector;	float	*matrix = ainfo->base.matrix;	offsetVector.fX = 0 * matrix[0] + 0 * matrix[4] - 1 * matrix[8];	offsetVector.fY = 0 * matrix[1] + 0 * matrix[5] - 1 * matrix[9];	offsetVector.fZ = 0 * matrix[2] + 0 * matrix[6] - 1 * matrix[10];	return offsetVector;}
开发者ID:mishannn,项目名称:m0d_sa,代码行数:11,


示例11: traceLastFunc

char *rec_sqlite_getTableName( int RouteNum ){	traceLastFunc( "rec_sqlite_getTableName()" );	sqlite3 *rec_db;	sqlite3_stmt *prep_stmt;	int prep_step_ret;	char sql_cmd[64];	char *cur_val;	char *ret_val;	int num_table;	// start at -1 - array-pos, not actual num	num_table = -1;	ret_val = NULL;	if ( sqlite3_open( REC_DB_NAME, &rec_db ) != SQLITE_OK )	{		Log( "SQLite - Error while connecting: %s", sqlite3_errmsg(rec_db) );		sqlite3_close( rec_db );		return NULL;	}	_snprintf_s( sql_cmd, sizeof(sql_cmd)-1, "SELECT name FROM sqlite_master WHERE type='table';" );	if ( sqlite3_prepare_v2( rec_db, sql_cmd, sizeof(sql_cmd), &prep_stmt, NULL ) != SQLITE_OK )	{		Log( "SQLite - Error (preparing statement in getTableName): %s", sqlite3_errmsg(rec_db) );		sqlite3_close( rec_db );		return NULL;	}	prep_step_ret = sqlite3_step( prep_stmt );	while ( prep_step_ret == SQLITE_ROW && ret_val == NULL )	{		cur_val = (char*)sqlite3_column_text( prep_stmt, 0 );		// filter sqlite_* tables		if ( strncmp(cur_val, "sqlite_", 7) != 0 )			num_table++;		if ( num_table == RouteNum )		{			ret_val = cur_val;			_snprintf_s( rec_tempTableCpy, sizeof(rec_tempTableCpy)-1, "%s", cur_val );			break;		}		prep_step_ret = sqlite3_step( prep_stmt );	}	sqlite3_finalize( prep_stmt );	sqlite3_close( rec_db );	if ( cur_val == NULL )		return NULL;	return &rec_tempTableCpy[0];}
开发者ID:DexterDejan,项目名称:mod_s0beit_sa,代码行数:54,


示例12: traceLastFunc

bool HookedRakClientInterface::RPC( int* uniqueID, BitStream *parameters, PacketPriority priority, PacketReliability reliability, char orderingChannel, bool shiftTimestamp ){	traceLastFunc( "HookedRakClientInterface::RPC(BitStream)" );		// use this if you wanna log outgoing RPCs	/*if ( *uniqueID != RPC_UpdateScoresPingsIPs )	{		int len = parameters ? parameters->GetNumberOfBytesUsed() : 0;		Log( "< [RPC Send] %d, len: %d", *uniqueID, len );	}*/	return g_RakClient->GetRakClientInterface()->RPC( uniqueID, parameters, priority, reliability, orderingChannel, shiftTimestamp );}
开发者ID:BIG686,项目名称:mod-s0beit-sa,代码行数:13,


示例13: cheat_handle_antiHijack

// sa-mp onlyvoid cheat_handle_antiHijack ( actor_info *ainfo, vehicle_info *veh, float time_diff ){	return;	if ( g_SAMP == NULL )	//	return;	traceLastFunc( "cheat_handle_antiHijack()" );	if ( set.anti_carjacking && veh == NULL )	{		if ( cheat_state->_generic.got_vehicle_id )			cheat_state->_generic.got_vehicle_id = false;		if ( cheat_state->_generic.anti_carjackTick		 &&	 cheat_state->_generic.anti_carjackTick < (GetTickCount() - 500)		 &&	 cheat_state->_generic.car_jacked )		{			if ( cheat_state->_generic.car_jacked_last_vehicle_id == 0 )			{				showGameText( "~r~Unable To Unjack~w~!", 1000, 5 );				cheat_state->_generic.anti_carjackTick = 0;				cheat_state->_generic.car_jacked = false;				return;			}			cheat_state->_generic.anti_carjackTick = 0;			cheat_state->_generic.car_jacked = false;			cheat_state->_generic.unrelatedToAnything = 1337;			GTAfunc_PutActorInCar(GetVehicleByGtaId(cheat_state->_generic.car_jacked_last_vehicle_id));			cheat_state->_generic.unrelatedToAnything = 0x1337;			struct vehicle_info *veh = GetVehicleByGtaId( cheat_state->_generic.car_jacked_last_vehicle_id );			//if ( veh != NULL )			//	vect3_copy( cheat_state->_generic.car_jacked_lastPos, &veh->base.matrix[4 * 3] );			showGameText( "~r~Car Unjacked~w~!", 1000, 5 );			return;		}	}	else if ( set.anti_carjacking )	{		if ( veh->passengers[0] == actor_info_get(ACTOR_SELF, 0) )		{			if ( !cheat_state->_generic.got_vehicle_id )			{				cheat_state->_generic.car_jacked_last_vehicle_id = getPlayerVehicleGTAScriptingID( ACTOR_SELF );				if ( cheat_state->_generic.car_jacked_last_vehicle_id > 0 )					cheat_state->_generic.got_vehicle_id = true;			}		}	}}
开发者ID:iBelow,项目名称:modsa_sobeit,代码行数:51,


示例14: cheat_handle_unfreeze

void cheat_handle_unfreeze ( struct vehicle_info *vehicle_info, struct actor_info *actor_info, float time_diff ){	traceLastFunc( "cheat_handle_unfreeze()" );	if ( KEY_PRESSED(set.key_anti_freeze) )	{		GTAfunc_TogglePlayerControllable(0);		GTAfunc_LockActor(0);		pGameInterface->GetCamera()->RestoreWithJumpCut();				// stop all animations		if ( actor_info != NULL && !actor_info->pedFlags.bInVehicle )			GTAfunc_DisembarkInstantly();	}}
开发者ID:iBelow,项目名称:modsa_sobeit,代码行数:15,


示例15: cheat_main_vehicle

static void cheat_main_vehicle ( double time_diff ){	traceLastFunc( "cheat_main_vehicle()" );	struct vehicle_info *info = vehicle_info_get( VEHICLE_SELF, 0 );	if ( info == NULL )		return;	cheat_handle_antiHijack( NULL, info, time_diff );	// copy vehicle coords to cheat_state storage	vect3_copy( &info->base.matrix[4 * 3], cheat_state->vehicle.coords );	// the following functions can be found in cheat_generic.cpp	cheat_handle_unfreeze( info, NULL, time_diff );	cheat_handle_teleport( info, NULL, time_diff );	cheat_handle_stick( info, NULL, time_diff );	cheat_handle_freeze_vehicles( info, NULL );	cheat_handle_hp( info, NULL, time_diff );	cheat_handle_emo( info, NULL, time_diff );	// the following functions can be found in cheat_vehicle.cpp	cheat_handle_vehicle_protection( info, time_diff );	cheat_handle_vehicle_unflip( info, time_diff );	cheat_handle_vehicle_nitro( info, time_diff );	cheat_handle_vehicle_air_brake( info, time_diff );	cheat_handle_vehicle_warp( info, time_diff );	cheat_handle_vehicle_quick_turn( info, time_diff );	cheat_handle_vehicle_brake( info, time_diff );	cheat_handle_vehicle_hop( info, time_diff );	cheat_handle_vehicle_engine( info, time_diff );	cheat_handle_vehicle_brakedance( info, time_diff );	cheat_handle_vehicle_blinking_carlights( info, time_diff );	cheat_handle_vehicle_fly( info, time_diff );	cheat_handle_vehicle_keepTrailer( info, time_diff );	cheat_handle_vehicle_repair_car( info, time_diff );	cheat_handle_vehicle_spiderWheels( info, time_diff );	//cheat_handle_vehicle_slowTeleport( info, time_diff );#ifdef __CHEAT_VEHRECORDING_H__	cheat_handle_vehicle_recording( info, time_diff );#endif	// these NEED to stay last, because they can remove the player from the vehicle	cheat_handle_vehicle_fast_exit( info, time_diff );	cheat_handle_exit_vehicle ( info, NULL );}
开发者ID:Arzy,项目名称:Dancing-Plastic,代码行数:46,


示例16: rec_sqlite_getNumTables

int rec_sqlite_getNumTables (){	traceLastFunc( "rec_sqlite_getNumTables()" );	sqlite3 *rec_db;	int numTables;	if ( sqlite3_open( REC_DB_NAME, &rec_db ) != SQLITE_OK )	{		Log( "SQLite - Error while connecting: %s", sqlite3_errmsg(rec_db) );		sqlite3_close( rec_db );		return -1;	}	numTables = sqliteDB_getNumTables( rec_db, true );	sqlite3_close( rec_db );	return numTables;}
开发者ID:DexterDejan,项目名称:mod_s0beit_sa,代码行数:18,


示例17: update_translateGTASAMP_vehiclePool

// update SAMPGTA vehicle translation structurevoid update_translateGTASAMP_vehiclePool ( void ){	traceLastFunc( "update_translateGTASAMP_vehiclePool()" );	if ( !g_Vehicles )		return;	int iGTAID;	for ( int i = 0; i <= SAMP_VEHICLE_MAX; i++ )	{		if ( g_Vehicles->iIsListed[i] != 1 )			continue;		if ( isBadPtr_writeAny(g_Vehicles->pSAMP_Vehicle[i], sizeof(stSAMPVehicle)) )			continue;		iGTAID = getVehicleGTAIDFromInterface( (DWORD *)g_Vehicles->pSAMP_Vehicle[i]->pGTA_Vehicle );		if ( iGTAID <= SAMP_VEHICLE_MAX && iGTAID >= 0 )		{			translateGTASAMP_vehiclePool.iSAMPID[iGTAID] = i;		}	}}
开发者ID:Aephout14,项目名称:m0d-s0beit-sa,代码行数:21,


示例18: rec_sqlite_dropTable

bool rec_sqlite_dropTable ( char *tableName ){	traceLastFunc( "rec_sqlite_dropTable()" );	sqlite3 *rec_db;	bool return_val = false;	if ( sqlite3_open( REC_DB_NAME, &rec_db ) != SQLITE_OK )	{		Log( "SQLite - Error while connecting: %s", sqlite3_errmsg(rec_db) );		sqlite3_close( rec_db );		return false;	}	return_val = sqliteDB_dropTable(rec_db, tableName);	if ( return_val == true )		cheat_state_text( "Dropped table '%s'", tableName );	sqlite3_close( rec_db );	return return_val;}
开发者ID:DexterDejan,项目名称:mod_s0beit_sa,代码行数:21,


示例19: sqliteDB_getNumTables

int sqliteDB_getNumTables ( sqlite3 *db, bool filter_sqlite_tables ){	traceLastFunc( "sqliteDB_getNumTables()" );	sqlite3_stmt *prep_stmt;	int prep_step_ret;	char sql_cmd[64];	int num_tables;	if ( db == NULL )	{		Log ( "sqliteDB_getNumTables: received db = NULL" );		return -1;	}	num_tables = 0;	_snprintf_s( sql_cmd, sizeof(sql_cmd)-1, "SELECT name FROM sqlite_master WHERE type='table';" );	if ( sqlite3_prepare_v2( db, sql_cmd, sizeof(sql_cmd), &prep_stmt, NULL ) != SQLITE_OK )	{		Log( "SQLite - Error (preparing statement in getNumTables): %s", sqlite3_errmsg(db) );		return -1;	}	prep_step_ret = sqlite3_step( prep_stmt );	while ( prep_step_ret == SQLITE_ROW )	{		// filter sqlite_* tables		if ( filter_sqlite_tables == false			|| strncmp((char*)sqlite3_column_text(prep_stmt,0), "sqlite_", 7) != 0 )			num_tables++;		prep_step_ret = sqlite3_step( prep_stmt );	}	sqlite3_finalize( prep_stmt );	return num_tables;}
开发者ID:DexterDejan,项目名称:mod_s0beit_sa,代码行数:38,


示例20: cheat_main_actor

static void cheat_main_actor ( double time_diff ){	traceLastFunc( "cheat_main_actor()" );	struct actor_info	*info = actor_info_get( ACTOR_SELF, 0 );	if ( info == NULL )	{		Log( "wtf, actor_info_get() returned NULL." );		return;	}	cheat_handle_antiHijack( info, NULL, time_diff );	vect3_copy( &info->base.matrix[4 * 3], cheat_state->actor.coords );	cheat_handle_freeze_vehicles( NULL, info );	cheat_handle_hp( NULL, info, time_diff );	cheat_handle_teleport( NULL, info, time_diff );	cheat_handle_unfreeze( NULL, info, time_diff );	cheat_handle_emo( NULL, info, time_diff );	// the following functions can be found in cheat_actor.cpp	cheat_handle_actor_air_brake( info, time_diff );	cheat_handle_stick( NULL, info, time_diff );	cheat_handle_actor_autoaim( info, time_diff );	// cheat_handle_SpiderFeet(info, time_diff);	cheat_handle_actor_fly(info, time_diff);	if ( set.custom_runanimation_enabled )		pPedSelf_setMoveAnimation__array( set.custom_runanimation_id );	// these NEED to stay last, because they can remove the player from the vehicle	if ( info->pedFlags.bInVehicle )		cheat_handle_vehicle_fast_exit( NULL, time_diff );	cheat_handle_exit_vehicle ( NULL, info );}
开发者ID:Arzy,项目名称:Dancing-Plastic,代码行数:37,


示例21: init

static int init ( void ){	traceLastFunc( "init()" );	if ( g_hOrigDll == NULL )	{		if ( GetModuleFileName(g_hDllModule, g_szWorkingDirectory, sizeof(g_szWorkingDirectory) - 32) != 0 )		{			if ( strrchr(g_szWorkingDirectory, '//') != NULL )				*strrchr( g_szWorkingDirectory, '//' ) = 0;			else				strcpy( g_szWorkingDirectory, "." );		}		else		{			strcpy( g_szWorkingDirectory, "." );		}		// Hello World		Log( "Initializing exe24 mod" );		Log( "Compiled: %s CL:%d", COMPILE_DT, COMPILE_VERSION );		// log windows version for people that forget to report it		WindowsInfo.osPlatform = (int) * (DWORD *)GTAvar_osPlatform;		WindowsInfo.osVer = (int) * (DWORD *)GTAvar_osVer;		WindowsInfo.winVer = (int) * (DWORD *)GTAvar_winVer;		WindowsInfo.winMajor = (int) * (DWORD *)GTAvar_winMajor;		if ( WindowsInfo.osPlatform == 2 )			Log( "OS: Windows Version %d.%d.%d", WindowsInfo.winMajor, WindowsInfo.winVer, WindowsInfo.osVer );		else			Log( "OS: Not Windows (%d.%d.%d)", WindowsInfo.winMajor, WindowsInfo.winVer, WindowsInfo.osVer );#pragma warning( disable : 4127 )		if ( sizeof(struct vehicle_info) != 2584 )		{			Log( "sizeof(struct vehicle_info) == %d, aborting.", sizeof(struct vehicle_info) );			return 0;		}		if ( sizeof(struct actor_info) != 1988 )		{			Log( "sizeof(struct actor_info) == %d, aborting.", sizeof(struct actor_info) );			return 0;		}#pragma warning( default : 4127 )		ini_load();		if ( !set.i_have_edited_the_ini_file )		{			MessageBox( 0, "Error when starting exe24.info mod.","Error", 0 );			return 0;		}		// get SAMP and set g_dwSAMP_Addr		getSamp();		// get actual d3d9.dll and proxy original D3D9Device		char	filename[MAX_PATH];		if (fileExists(".//d3d9_exe24+.dll"))		{			strlcat(filename, ".//d3d9_exe24+.dll", sizeof(filename));		}		else		{			GetSystemDirectory(filename, (UINT)(MAX_PATH - strlen("//d3d9.dll") - 1));			strlcat(filename, "//d3d9.dll", sizeof(filename));		}		g_hOrigDll = LoadLibrary( filename );		if ( g_hOrigDll == NULL )		{			Log( "Failed to load %s", filename );			return 0;		}		orig_Direct3DCreate9 = ( D3DC9 ) GetProcAddress( g_hOrigDll, "Direct3DCreate9" );		if ( orig_Direct3DCreate9 == NULL )		{			Log( "%s does not export Direct3DCreate9!?", filename );			FreeLibrary( g_hOrigDll );			return 0;		}	}	return 1;}
开发者ID:Alambos,项目名称:eXe,代码行数:84,


示例22: cheat_handle_vehicle_recording

void cheat_handle_vehicle_recording ( struct vehicle_info *info, float time_diff ){	char buffer[512];	float set_speed[3];	float set_spin[3];	if ( info == NULL || !set.recording_activated )		return;		traceLastFunc( "cheat_handle_vehicle_recording()" );		// recording key	if ( KEY_PRESSED(set.key_recording_record) )	{		if ( rec_state == RECORDING_RECORD )		{			rec_maxNum = rec_index;			rec_state = RECORDING_OFF;			return;		}		else if ( rec_state == RECORDING_OFF )		{			rec_state = RECORDING_RECORD;			rec_maxNum = 0;			rec_index = 0;			rec_playNext = 0.0f;		}	}	if ( KEY_PRESSED(set.key_recording_continueAfterFinish) )		rec_continueAfterFin ^= 1;	// play keys	if ( (KEY_PRESSED(set.key_recording_play) || KEY_PRESSED(set.key_recording_customSpeed)		|| KEY_PRESSED(set.key_recording_rev) || KEY_PRESSED(set.key_recording_rev_customSpeed)) )	{		// if record playing		if ( rec_state >= RECORDING_PLAY )		{			 rec_state = RECORDING_OFF;			 return;		}		else if ( rec_state == RECORDING_OFF )		{			// something to play?			if ( rec_maxNum <= 0 )			{				rec_state = RECORDING_OFF;				return;			}			rec_index = 0;			rec_playNext = 0.0f;						if ( KEY_PRESSED(set.key_recording_play) )				rec_state = RECORDING_PLAY;			else if ( KEY_PRESSED(set.key_recording_customSpeed) )				rec_state = RECORDING_PLAY_CUSTOMSPEED;			else if ( KEY_PRESSED(set.key_recording_rev) )			{				rec_index = (rec_maxNum-1);				rec_state = RECORDING_PLAY_REV;			}			else if ( KEY_PRESSED(set.key_recording_rev_customSpeed) )			{				rec_index = (rec_maxNum-1);				rec_state = RECORDING_PLAY_REV_CUSTOMSPEED;			}			// user set a maximum distance to entry point?			if ( set.recording_maxDistToEntryPoint > 0.0f )			{				// check if current selected index is in maxRange, else look for a point closest				// to the selected beginning, which is in the maxRange				if ( vect3_dist(rec_pos[rec_index], &info->base.matrix[4*3]) > set.recording_maxDistToEntryPoint )				{					int i = rec_index;					int rec_index_new = -1;					// not a entry point we want (too far), lets find a better one					while ( i >= 0 && i < rec_maxNum )					{						if ( vect3_dist(rec_pos[i], &info->base.matrix[4*3]) <= set.recording_maxDistToEntryPoint )						{							rec_index_new = i;							break;						}						if ( rec_state == RECORDING_PLAY_REV || rec_state == RECORDING_PLAY_REV_CUSTOMSPEED )							i--;						else							i++;					}					// nothing close enough found					if ( rec_index_new == -1 )					{						rec_state = RECORDING_OFF;						cheat_state_text( "Too far from route - maxDist: %0.2f", set.recording_maxDistToEntryPoint );					}//.........这里部分代码省略.........
开发者ID:DexterDejan,项目名称:mod_s0beit_sa,代码行数:101,


示例23: init

static int init ( void ){	traceLastFunc( "init()" );	if ( g_hOrigDll == NULL )	{		if ( GetModuleFileName(g_hDllModule, g_szWorkingDirectory, sizeof(g_szWorkingDirectory) - 32) != 0 )		{			if ( strrchr(g_szWorkingDirectory, '//') != NULL )				*strrchr( g_szWorkingDirectory, '//' ) = 0;			else				strcpy( g_szWorkingDirectory, "." );		}		else		{			strcpy( g_szWorkingDirectory, "." );		}		// Hello World		Log( "Initializing %s", NAME );		Log( "Compiled: %s CL:%d", COMPILE_DT, COMPILE_VERSION );		// log windows version for people that forget to report it		WindowsInfo.osPlatform = (int) * (DWORD *)GTAvar_osPlatform;		WindowsInfo.osVer = (int) * (DWORD *)GTAvar_osVer;		WindowsInfo.winVer = (int) * (DWORD *)GTAvar_winVer;		WindowsInfo.winMajor = (int) * (DWORD *)GTAvar_winMajor;		if ( WindowsInfo.osPlatform == 2 )			Log( "OS: Windows Version %d.%d.%d", WindowsInfo.winMajor, WindowsInfo.winVer, WindowsInfo.osVer );		else			Log( "OS: Not Windows (%d.%d.%d)", WindowsInfo.winMajor, WindowsInfo.winVer, WindowsInfo.osVer );		/*		int D3D9UseVersion = (int)*(DWORD*)GTAvar__D3D9UseVersion;		Log("D3D9UseVersion: %d", D3D9UseVersion);		int DXVersion = (int)*(DWORD*)GTAvar__DXVersion;		Log("DXVersion: %d", DXVersion);		int windowsVersion = (int)*(DWORD*)GTAvar__windowsVersion;		Log("windowsVersion: %d", windowsVersion);		int CPUSupportsMMX = (int)*(DWORD*)__rwD3D9CPUSupportsMMX;		int CPUSupports3DNow = (int)*(DWORD*)__rwD3D9CPUSupports3DNow;		int CPUSupportsSSE = (int)*(DWORD*)__rwD3D9CPUSupportsSSE;		int CPUSupportsSSE2 = (int)*(DWORD*)__rwD3D9CPUSupportsSSE2;		if (!CPUSupportsMMX)			Log("CPU Supports MMX: %d", CPUSupportsMMX);		if (!CPUSupports3DNow)			Log("CPU Supports 3DNow: %d", CPUSupports3DNow);		if (!CPUSupportsSSE)			Log("CPU Supports SSE: %d", CPUSupportsSSE);		if (!CPUSupportsSSE2)			Log("CPU Supports SSE2: %d", CPUSupportsSSE2);		*/#pragma warning( disable : 4127 )		if ( sizeof(struct vehicle_info) != 2584 )		{			Log( "sizeof(struct vehicle_info) == %d, aborting.", sizeof(struct vehicle_info) );			return 0;		}		if ( sizeof(struct actor_info) != 1988 )		{			Log( "sizeof(struct actor_info) == %d, aborting.", sizeof(struct actor_info) );			return 0;		}#pragma warning( default : 4127 )		ini_load();		if ( !set.i_have_edited_the_ini_file )		{			MessageBox( 0, "Looks like you've not edited the .ini file like you were told to!/n""/n"				"Before you can use mod_sa, you have to set /"i_have_edited_the_ini_file/" to true./n"				"We did this so you would read the INI file to see the configurability of mod_sa./n",				"You're a retard.", 0 );			ShellExecute( 0, "open", "notepad", INI_FILE, g_szWorkingDirectory, SW_SHOW );			return 0;		}		// get SAMP and set g_dwSAMP_Addr		getSamp();		// get actual d3d9.dll and proxy original D3D9Device		char	filename[MAX_PATH];		GetSystemDirectory( filename, (UINT) (MAX_PATH - strlen("//d3d9.dll") - 1) );		strlcat( filename, "//d3d9.dll", sizeof(filename) );		g_hOrigDll = LoadLibrary( filename );		if ( g_hOrigDll == NULL )		{			Log( "Failed to load %s", filename );			return 0;		}		orig_Direct3DCreate9 = ( D3DC9 ) GetProcAddress( g_hOrigDll, "Direct3DCreate9" );		if ( orig_Direct3DCreate9 == NULL )		{			Log( "%s does not export Direct3DCreate9!?", filename );			FreeLibrary( g_hOrigDll );			return 0;		}	}	return 1;//.........这里部分代码省略.........
开发者ID:Aephout14,项目名称:m0d-s0beit-sa,代码行数:101,


示例24: rec_sqlite_writeTable

bool rec_sqlite_writeTable (){	traceLastFunc( "rec_sqlite_writeTable()" );	sqlite3 *rec_db;	char sql_cmd[1024];	char *errmsgs = NULL;	int ret_exists;	if ( rec_state == RECORDING_RECORD )	{		cheat_state_text( "Can't save while recording." );		return false;	}	if ( rec_maxNum <= 0 )	{		cheat_state_text( "Nothing to be saved." );		return false;	}	if ( sqlite3_open( REC_DB_NAME, &rec_db ) != SQLITE_OK )	{		Log( "SQLite - Error while connecting: %s", sqlite3_errmsg(rec_db) );		sqlite3_close( rec_db );		return false;	}	for ( int i = 0; i < 64; i++ ) // max default name	{		_snprintf_s( sql_cmd, sizeof(sql_cmd)-1, "route%i", i );		ret_exists = sqliteDB_checkTableExists( rec_db, sql_cmd );		// continue, if table already exists		if ( ret_exists == 1 )			continue;		// quit function on fail		if ( ret_exists == -1 )		{			sqlite3_close( rec_db );			return false;		}		// create table with default name 'route..'		_snprintf_s( sql_cmd, sizeof(sql_cmd)-1, "CREATE TABLE 'route%i'(", i );		_snprintf_s( sql_cmd, sizeof(sql_cmd)-1, "%s 'index' INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT," /			"'maxNum' INTEGER NULL DEFAULT NULL," /			"'angle1' REAL NOT NULL,'angle2' REAL NOT NULL,'angle3' REAL NOT NULL,'angle4' REAL NOT NULL," /			"'angle5' REAL NOT NULL,'angle6' REAL NOT NULL,"/			"'spin1' REAL NOT NULL,'spin2' REAL NOT NULL,'spin3' REAL NOT NULL," /			"'speed1' REAL NOT NULL,'speed2' REAL NOT NULL,'speed3' REAL NOT NULL," /			"'pos1' REAL NOT NULL,'pos2' REAL NOT NULL,'pos3' REAL NOT NULL);"			, sql_cmd );		sqlite3_exec( rec_db, sql_cmd, NULL, NULL, &errmsgs );		if ( errmsgs != NULL )		{			Log( "SQLite - Error (executing CREATE TABLE statement): %s", errmsgs );			sqlite3_close( rec_db );			return false;		}		// add our data into the new table		for ( int j = 0; j < rec_maxNum && j < (REC_ARRAYSIZE-1); j++ )		{			if ( j != 0 )				_snprintf_s( sql_cmd, sizeof(sql_cmd)-1, "INSERT INTO 'route%i' VALUES( null, null,", i );			else				_snprintf_s( sql_cmd, sizeof(sql_cmd)-1, "INSERT INTO 'route%i' VALUES( null, %i,", i, rec_maxNum );			_snprintf_s( sql_cmd, sizeof(sql_cmd)-1, "%s %0.2f, %0.2f, %0.2f, %0.2f,"				"%0.2f, %0.2f," /				"%0.2f, %0.2f, %0.2f," /				"%0.2f, %0.2f, %0.2f," /				"%0.2f, %0.2f, %0.2f" /				");", 				sql_cmd, rec_angle[j][0], rec_angle[j][1], rec_angle[j][2], rec_angle[j][3], 				rec_angle[j][4], rec_angle[j][5],				rec_spin[j][0], rec_spin[j][1], rec_spin[j][2],				rec_speed[j][0], rec_speed[j][1], rec_speed[j][2],				rec_pos[j][0], rec_pos[j][1], rec_pos[j][2] );			//Log( sql_cmd );			sqlite3_exec( rec_db, sql_cmd, NULL, NULL, &errmsgs );			if ( errmsgs != NULL )			{				Log( "SQLite - Error (executing INSERT INTO statement): %s", errmsgs );				sqlite3_close( rec_db );				return false;			}		}		cheat_state_text( "saved to 'route%i'", i );		break;	}	sqlite3_close( rec_db );	return true;}
开发者ID:DexterDejan,项目名称:mod_s0beit_sa,代码行数:96,


示例25: rec_sqlite_loadTable

bool rec_sqlite_loadTable ( char *tableName ){	traceLastFunc( "rec_sqlite_loadTable()" );	sqlite3 *rec_db;	sqlite3_stmt *prep_stmt;	int prep_step_ret;	char sql_cmd[1024];	if ( sqlite3_open( REC_DB_NAME, &rec_db ) != SQLITE_OK )	{		Log( "SQLite - Error while connecting: %s", sqlite3_errmsg(rec_db) );		sqlite3_close( rec_db );		return false;	}	// return false, if error happens, or table doesn't exist	if ( sqliteDB_checkTableExists( rec_db, tableName ) != 1 )	{		sqlite3_close( rec_db );		cheat_state_text( "table doesn't exist" );		return false;	}	// stop playing/recording when loading a new route	rec_state = RECORDING_OFF;	_snprintf_s( sql_cmd, sizeof(sql_cmd)-1, "SELECT * FROM '%s';", tableName );	if ( sqlite3_prepare_v2( rec_db, sql_cmd, sizeof(sql_cmd), &prep_stmt, NULL ) != SQLITE_OK )	{		Log( "SQLite - Error (prepare statement to load from table '%s'): %s", tableName, sqlite3_errmsg(rec_db) );		sqlite3_close( rec_db );		return false;	}	// jump to first row and set the maxNum	prep_step_ret = sqlite3_step( prep_stmt );	rec_maxNum = sqlite3_column_int(prep_stmt,1);	if ( rec_maxNum > (REC_ARRAYSIZE-1) || rec_maxNum <= 0 )	{		Log( "Recording - load table '%s': rec_maxNum(%i) is <= 0 or greater than maximum array size!", 			tableName, rec_maxNum );		sqlite3_finalize( prep_stmt );		sqlite3_close( rec_db );		cheat_state_text( "failed to load" );		// we changed a variable, so set maxNum to 0, so it can't be 		// causing problems when trying to play record		rec_maxNum = 0;		return false;	}	for ( int i = 0; i < rec_maxNum; i++ )	{		// load our data from the table		// do not forget to adjust these offsets when changing table design		for ( int j = 0; j < 6; j++ )			rec_angle[i][j] = sqlite3_column_double( prep_stmt, j+2 );		for ( int j = 0; j < 3; j++ )		{			rec_spin[i][j] = sqlite3_column_double( prep_stmt, j+8 );			rec_speed[i][j] = sqlite3_column_double( prep_stmt, j+11 );			rec_pos[i][j] = sqlite3_column_double( prep_stmt, j+14 );		}		prep_step_ret = sqlite3_step( prep_stmt );				// step() returned some error/unexpected value?		if ( prep_step_ret != SQLITE_ROW && prep_step_ret != SQLITE_DONE )		{			Log( "SQLite - Error (prepare statement to load from table '%s' - cycle %i): %s", tableName, i, sqlite3_errmsg(rec_db) );			sqlite3_finalize( prep_stmt );			sqlite3_close( rec_db );						cheat_state_text( "failed to load" );			// data has been changed.. destroy record for playback			rec_maxNum = 0;			return false;		}		// we somehow reached the end (end of rows/end of loop)		if ( i == (rec_maxNum-1) || prep_step_ret == SQLITE_DONE )		{			// check if its only end of one = error while loading			if ( i != (rec_maxNum-1) || prep_step_ret != SQLITE_DONE )			{				Log( "Problem while loading Recording '%s': %s - MaxNum %i - cycleNum %i",					tableName,					prep_step_ret == SQLITE_DONE ? "End of rows" : "Not at end of rows",					rec_maxNum, i );				sqlite3_finalize( prep_stmt );				sqlite3_close( rec_db );				cheat_state_text( "failed to load" );				// we probably got incorrect data in the recording? - set maxNum to 0				rec_maxNum = 0;				return false;			}//.........这里部分代码省略.........
开发者ID:DexterDejan,项目名称:mod_s0beit_sa,代码行数:101,


示例26: cmd_change_server

void cmd_change_server ( char *param )	//127.0.0.1 7777 Username Password{	traceLastFunc( "cmd_change_server()" );	char	*result;	bool	success = false;	char	IP[257], LocalName[MAX_PLAYER_NAME];	int		Port;	strcpy( IP, g_SAMP->szIP );	Port = g_SAMP->ulPort;	strcpy( LocalName, getPlayerName(g_Players->sLocalPlayerID) );	result = strtok( param, " :" );	for ( int i = 0; i <= 4; i++ )	{		if ( result == NULL && !success )		{			addMessageToChatWindow( "USAGE: /m0d_change_server <ip> <port> <Username> <Server Password>" );			addMessageToChatWindow( "Variables that are set to /"NULL/" (capitalized) will be ignored." );			addMessageToChatWindow( "If you set the Password to /"NULL/" it is set to <no server password>." );			addMessageToChatWindow( "Username and password can also be left out completely." );			strcpy( g_SAMP->szIP, IP );			g_SAMP->ulPort = Port;			setLocalPlayerName( LocalName );			return;		}		else if ( result == NULL && success )		{			joining_server = 1;			return;		}		switch ( i )		{		case 0:			if ( strcmp(result, "NULL") != 0 )				strcpy( g_SAMP->szIP, result );			break;		case 1:			if ( strcmp(result, "NULL") != 0 )				g_SAMP->ulPort = atoi( result );			success = true;			break;		case 2:			if ( strcmp(result, "NULL") != 0 )			{				if ( strlen(result) > ALLOWED_PLAYER_NAME_LENGTH )					addMessageToChatWindow( "Username was too long - adjusted size." );				strncpy_s( LocalName, result, ALLOWED_PLAYER_NAME_LENGTH );				setLocalPlayerName( LocalName );			}			break;		case 3:			if ( strcmp(result, "NULL") != 0 )				setPassword( result );			else				setPassword( "" );			break;		default:			{				addMessageToChatWindow( "Too many variables." );				addMessageToChatWindow( "USAGE: /m0d_change_server <ip> <port> <Username> <Server Password>" );				addMessageToChatWindow( "Variables that are set to /"NULL/" (capitalized) will be ignored." );				addMessageToChatWindow( "If you set the Password to /"NULL/" it is set to <no server password>." );				addMessageToChatWindow( "Username and password can also be left out completely." );				strcpy( g_SAMP->szIP, IP );				g_SAMP->ulPort = Port;				strcpy( LocalName, getPlayerName(g_Players->sLocalPlayerID) );				if ( i >= 3 )				{					addMessageToChatWindow( "Setting password to <no server password>." );					setPassword( "" );				}				return;			}		}		result = strtok( NULL, " :" );	}}
开发者ID:Aephout14,项目名称:m0d-s0beit-sa,代码行数:86,


示例27: findstrinstr

// strtokstristr?bool findstrinstr ( char *text, char *find ){	char	realtext[256];	char	subtext[256];	char	*result;	char	*next;	char	temp;	int		i = 0;	traceLastFunc( "findstrinstr()" );	// can't find stuff that isn't there unless you are high	if ( text == NULL || find == NULL )		return false;	// lower case text ( sizeof()-2 = 1 for array + 1 for termination after while() )	while ( text[i] != NULL && i < (sizeof(realtext)-2) )	{		temp = text[i];		if ( isupper(temp) )			temp = tolower( temp );		realtext[i] = temp;		i++;	}	realtext[i] = 0;	// replace unwanted characters/spaces with dots	i = 0;	while ( find[i] != NULL && i < (sizeof(subtext)-2) )	{		temp = find[i];		if ( isupper(temp) )			temp = tolower( temp );		if ( !isalpha(temp) )			temp = '.';		subtext[i] = temp;		i++;	}	subtext[i] = 0;	// use i to count the successfully found text parts	i = 0;	// split and find every part of subtext/find in text	result = &subtext[0];	while ( *result != NULL )	{		next = strstr( result, "." );		if ( next != NULL )		{			// more than one non-alphabetic character			if ( next == result )			{				do					next++;				while ( *next == '.' );				if ( *next == NULL )					return (i != 0);				result = next;				next = strstr( result, "." );				if ( next != NULL )					*next = NULL;			}			else				*next = NULL;		}		if ( strstr(realtext, result) == NULL )			return false;		if ( next == NULL )			return true;		i++;		result = next + 1;	}	return false;}
开发者ID:Aephout14,项目名称:m0d-s0beit-sa,代码行数:81,



注:本文中的traceLastFunc函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


C++ traceMALLOC函数代码示例
C++ traceEvent函数代码示例
万事OK自学网:51自学网_软件自学网_CAD自学网自学excel、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。