Code:
new modulesINI[] = "addons/amxmodx/configs/modules.ini";
new tempModulesINI[] ="addons/amxmodx/configs/temp_modules.ini";
public MODULE_Enable( module_name[] )
{
new fp = fopen( modulesINI, "r" );
new data[128];
new fptemp = fopen( tempModulesINI, "w" );
while( !feof( fp ) )
{
fgets( fp, data, 63 );
server_print( "Searching %s", data );
// Module Name Found
if ( contain( data, module_name ) != -1 )
{
// Semicolon before module name found
if ( contain( data, ";" ) != -1 )
{
// Lets go to the start of the line we're on so we can remove the ;
fseek( fp, strlen(data), SEEK_CUR );
// Remove the ; from the line
replace( data, strlen(data), ";" , "" );
server_print( "%s", data );
new len = strlen( data );
for ( new i = 0; i < len; i++ )
{
fputc( fptemp, data[i] );
server_print( "%c:%s", data[i], data[i] );
}
server_print( "done" );
}
}
}
fclose( fp );
fclose( fptemp );
delete_file( modulesINI );
//we dont have an rename_file function so we have to copy the temp file again
fp = fopen( modulesINI, "w" );
fptemp = fopen( tempModulesINI, "r" );
while( !feof( fptemp ) )
{
fgets( fptemp, data, 63 );
//fputs( fptemp, data ); // we don't have this native so we have to use another method
new len = strlen( data );
for ( new i = 0; i < len; i++ )
{
fputc( fp, data[i] );
}
}
fclose( fp );
fclose( fptemp );
//delete the tempfile
delete_file( tempModulesINI );
}
this one should work( not tested )