Hát végül nem én írtam meg, mert nem tudtam valamit megoldani, de azért át kellett szerkesszem.:
configs mappába csinálsz egy music_plugin.ini-t és így kell beírnod a cuccokat:
"Linkin Park - New Divide" "music/lp/newdivide.mp3"
"System Of A Down - Psycho" "music/soad/psycho.mp3"
"System Of A Down - Chop Suey!" "music/soad/chop_suey.mp3"
"Linkin Park - No More Sorrow" "music/lp/no_more_sorrow.mp3"
"Rammstein - Du Hast" "music/r/du_hast.wav"
Ezek persze csak példák, tehát az első "" közé a menüben megjelenő neve, a második "" közé az elérési út sound mappa nélkül.

Kód:
#include < amxmodx >
#include < amxmisc >
/****************************** PLUGIN EDITED BY SILENT PRODUCTIONS ***************************/
new SongName[ 64 ][ 33 ];
new SongDirection[ 64 ][33 ];
new Count, menu;
public plugin_precache( ) read_config( );
public plugin_init( )
{
register_plugin( "Music in Game", "1.0" , "Luqqas" );
menu = menu_create( "\rZenek:", "Music_Handled" );
static ToStr[ 35 ];
new i;
for( i = 0 ; i < Count ; i++ )
{
num_to_str( i, ToStr, 9 );
menu_additem( menu, SongName[ i ], ToStr );
}
num_to_str( i , ToStr, 9 )
menu_additem( menu, "Zene leallitasa", ToStr );
register_clcmd( "say /music", "clcmd_music" );
}
public clcmd_music( id )
{
if(get_user_flags(id) & ADMIN_KICK)
{
menu_display( id, menu, 0 );
return PLUGIN_HANDLED;
}
return PLUGIN_HANDLED;
}
public Music_Handled( id, menu, item )
{
if( item == MENU_EXIT )
return PLUGIN_HANDLED;
new szKey[ 2 ], _Access, _Callback;
menu_item_getinfo( menu, item, _Access, szKey, 1, "", 0, _Callback );
new key = str_to_num( szKey );
if( key == Count )
{
client_cmd( 0 , "stopsound" );
}
else
{
client_cmd( 0, "stopsound" );
emit_player_sound( 0 , SongDirection[ key ] );
menu_display( 0, menu, 0 );
}
return PLUGIN_HANDLED;
}
read_config( )
{
new szFilename[136];
new szPath[ 64 ];
get_configsdir( szPath, 63 );
formatex( szFilename, 63, "%s/music_plugin.ini", szPath );
static szData[ 256 ];
static iLen;
static iPos;
iPos = 0;
while ( read_file( szFilename , iPos++ , szData, 255, iLen ) )
{
if (iLen == 0 || ( szData[ 0 ] == '/' && szData[ 1 ] == '/' ) || szData[ 0 ] == ';' || szData[ 0 ] == '#' )
continue;
parse( szData, SongName[ Count ], charsmax(SongName), SongDirection[ Count ], charsmax(SongDirection) );
Count++;
}
}
emit_player_sound( id, const Sound[] = EOS )
{
client_cmd( id , "%s %s", ( equal( Sound[ strlen(Sound) - 4 ] , ".mp3" ) ) ? "mp3 play" : "spk" , Sound );
}