Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <amxmodx>
- #define PLUGIN "New Plug-In"
- #define VERSION "1.0"
- #define AUTHOR "Author"
- new Array:g_musics
- new Array:g_m_name
- new g_menu
- public plugin_init()
- {
- register_plugin(PLUGIN, VERSION, AUTHOR)
- register_clcmd("say /music", "pfn_show_menu")
- }
- public plugin_precache()
- {
- new FILE[] = "addons/amxmodx/configs/music.ini";
- if(!file_exists(FILE))
- {
- set_fail_state("Archivo music.ini no existe");
- return
- }
- g_musics = ArrayCreate(128, 64);
- g_m_name = ArrayCreate(128)
- g_menu = menu_create("Musicas", "mh_musica")
- new fh = fopen(FILE, "r")
- if(!fh)
- {
- set_fail_state("Error abriendo music.ini");
- return
- }
- new line[132], name[32], loc[100], count
- count = 0
- while(!feof(fh))
- {
- fgets(fh, line, charsmax(line))
- trim(line)
- if(!line[0] || line[0] == ';')
- {
- continue;
- }
- parse(line, name, charsmax(name), loc, charsmax(loc))
- trim(name)
- trim(loc)
- if(!loc[0] || !name[0])
- {
- continue;
- }
- if(file_exists(loc))
- {
- ArraySetString(g_musics, count, loc)
- ArraySetString(g_m_name, count, name)
- if(is_mp3(loc))
- {
- precache_generic(loc)
- }
- else
- {
- precache_sound(loc)
- }
- menu_additem(g_menu, name)
- }
- else
- {
- log_amx("[MUSICAS] Archivo %s no existe", loc)
- }
- }
- fclose(fh)
- menu_setprop(g_menu, MPROP_EXIT, MEXIT_ALL)
- }
- public pfn_show_menu(id)
- {
- menu_display(id, g_menu)
- }
- public mh_musica(id, menu, item)
- {
- if(item == MENU_EXIT)
- {
- return
- }
- if(item >= ArraySize(g_musics))
- {
- return
- }
- new file[64]
- ArrayGetString(g_musics, item, file, charsmax(file))
- client_cmd(id, "%s ^"%s^"", is_mp3(file) ? "mp3 play" : "spk", file)
- client_print(id, print_chat, "[MUSICA] Estas escuchando %a", ArrayGetStringHandle(g_m_name, item))
- }
- stock bool:is_mp3(file[])
- {
- if(equali(file[strlen(file) - 4], ".mp3"))
- {
- return true;
- }
- return false
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement