I found a old and basic plugin which does that :
Code:
stock ShakeMapcyle()
{
new const MapcycleFile[] = "mapcycle.txt";
new Map[ 64 ];
new h = fopen( MapcycleFile, "rb" );
new Array:SavedMaps = ArrayCreate( 64 );
while( !feof( h ) )
{
fgets( h, Map, charsmax( Map ) );
trim( Map );
if ( Map[0] ) { ArrayPushString( SavedMaps, Map ); }
}
fclose( h );
delete_file( MapcycleFile );
new Cnt;
new MapCnt;
new Rand;
new Rand2;
Cnt = iMapCnt = ArraySize( SavedMaps );
while( Cnt )
{
Rand = random( MapCnt );
Rand2 = random( MapCnt );
if( Rand != Rand2 )
{
ArraySwap( SavedMaps, Rand, Rand2 );
Cnt--;
}
}
h = fopen( MapcycleFile, "wb" );
for( new i; i < MapCnt; ++i )
{
ArrayGetString( SavedMaps, i, Map, charsmax( Map ) );
fputs( h, Map );
fputc( h, '^n' );
}
fclose( h );
ArrayDestroy( SavedMaps );
}
Put this function in plubin_cfg() for example.
__________________