Plugin ma być menu z muzyka. Każdy gracz może użyć /dj. Jednak gdy aktualnie leci jedna nutka, nie można puścić drugiej. Trzeba czekać aż poprzednia się skończy dopiero w tedy menu /dj będzie znów dostępne! Waluta w menu /dj będą fragi. Plugin będzie prosty i wystarczy jedynie konfiguracja nutki.ini. Poniżej rozpisałem plugin.
--nutki.ini
Tutaj będziemy ustalać ścieżkę, nazwę wyświetlana w menu, czas trwania w sec oraz koszt
Przykład:
"ścieżka" "nazwa" "czas" "koszt"
"misc/dj/1" "La viva" "47" "10"
Informacje na czacie:
-Zostałes Dj! Grasz wlasnie nazwa za % fragow/i.
-Gracz nick został Dj! Aktualnie gra nazwa.
-Masz za malo fragow aby zostac Dj! [x/x]
-Juz byles Dj w tej rundzie!
-Aktualnie juz gra Dj! Poczekaj na swoja kolej.
--Menu
-Nagłówek:
Nazwa sieci
Masz [x/x fragów]
-Nazwy Pobierane z nutki.ini [Koszt : 10 fragi/ow]
-Nawigacja: Wroc, Nastepna, Wyjdz
--HUD
-Aktualnie gra: Nick Gracza
-Tytuł:
-Czas:
Możecie mi również pomoc przerobić ten plugin.
#include <amxmodx> #include <fun> #include <ColorChat> new const gNazwaPluginu[] = "DJ"; new const gWersjaPluginu[] = "1.0"; new const gAutorPluginu[] = "MisieQ"; new const info[][] = { "^x03 nutke nr^x04 1", "^x03 nutke nr^x04 2", "^x03 nutke nr^x04 3", "^x03 nutke nr^x04 4", "^x03 nutke nr^x04 5", "^x03 nutke nr^x04 6", "^x03 nutke nr^x04 7", "^x03 nutke nr^x04 8" }; new const nutka[][] = { "dj/1.mp3", "dj/2.mp3", "dj/3.mp3", "dj/4.mp3", "dj/5.mp3", "dj/6.mp3", "dj/7.mp3", "dj/8.mp3" }; new const g_cmds[][]= { "/dj", "dj" }; public plugin_init() { register_plugin(gNazwaPluginu, gWersjaPluginu, gAutorPluginu); register_clcmd("say", "say_handle"); register_clcmd("say_team", "say_handle"); } public plugin_precache() { precache_sound("dj/1.mp3"); precache_sound("dj/2.mp3"); precache_sound("dj/3.mp3"); precache_sound("dj/4.mp3"); precache_sound("dj/5.mp3"); precache_sound("dj/6.mp3"); precache_sound("dj/7.mp3"); precache_sound("dj/8.mp3"); } public say_handle(id) { new stringsay[192]; read_args(stringsay, 192); remove_quotes(stringsay); for(new i = 0; i < sizeof g_cmds; i++) { if(equal(stringsay, g_cmds[i])) { dj_menu(id); return PLUGIN_HANDLED; } } return PLUGIN_CONTINUE; } public dj_menu(id) { new menu = menu_create("\y[\rDJ\y]\w Kup Nutke", "dj_menu_wubor") menu_additem(menu, "\wNuta \r1 \y[\wKoszt: \r10 \wfragow\y]", "1", 0) menu_additem(menu, "\wNuta \r2 \y[\wKoszt: \r9 \wfragow\y]", "2", 0) menu_additem(menu, "\wNuta \r3 \y[\wKoszt: \r8 \wfragow\y]", "3", 0) menu_additem(menu, "\wNuta \r4 \y[\wKoszt: \r7 \wfragow\y]", "4", 0) menu_additem(menu, "\wNuta \r5 \y[\wKoszt: \r6 \wfragow\y]", "5", 0) menu_additem(menu, "\wNuta \r6 \y[\wKoszt: \r5 \wfragow\y]", "6", 0) menu_additem(menu, "\wNuta \r7 \y[\wKoszt: \r4 \wfragow\y]", "7", 0) menu_additem(menu, "\wNuta \r8 \y[\wKoszt: \r3 \wfragow\y]", "8", 0) menu_display(id, menu) } public dj_menu_wubor(id, menu, item) { if (item == MENU_EXIT) { menu_destroy(menu) return PLUGIN_HANDLED } new data[6], iName[64] new acces, callback menu_item_getinfo(menu, item, acces, data,5, iName, 63, callback) new key = str_to_num(data) switch(key) { case 1: { if(get_user_frags(id) > 10) { informacja(id, 0); odtwarzaj(id, 0); set_user_frags(id,get_user_frags(id) - 10) } else ColorChat(id, GREEN, "Niestety ale cie nie stac!"); } case 2: { if(get_user_frags(id) > 9) { informacja(id, 1); odtwarzaj(id, 1); set_user_frags(id,get_user_frags(id) - 9) } else ColorChat(id, GREEN, "Niestety ale cie nie stac!"); } case 3: { if(get_user_frags(id) > 8) { informacja(id, 2); odtwarzaj(id, 2); set_user_frags(id,get_user_frags(id) - 8) } else ColorChat(id, GREEN, "Niestety ale cie nie stac!"); } case 4: { if(get_user_frags(id) > 7) { informacja(id, 3); odtwarzaj(id, 3); set_user_frags(id,get_user_frags(id) - 7) } else ColorChat(id, GREEN, "Niestety ale cie nie stac!"); } case 5: { if(get_user_frags(id) > 6) { informacja(id, 4); odtwarzaj(id, 4); set_user_frags(id,get_user_frags(id) - 6) } else ColorChat(id, GREEN, "Niestety ale cie nie stac!"); } case 6: { if(get_user_frags(id) > 5) { informacja(id, 5); odtwarzaj(id, 5); set_user_frags(id,get_user_frags(id) - 5) } else ColorChat(id, GREEN, "Niestety ale cie nie stac!"); } case 7: { if(get_user_frags(id) > 4) { informacja(id, 6); odtwarzaj(id, 6); set_user_frags(id,get_user_frags(id) - 4) } else ColorChat(id, GREEN, "Niestety ale cie nie stac!"); } case 8: { if(get_user_frags(id) > 3) { informacja(id, 7); odtwarzaj(id, 7); set_user_frags(id,get_user_frags(id) - 3) } else ColorChat(id, GREEN, "Niestety ale cie nie stac!"); } } menu_destroy(menu) return PLUGIN_HANDLED } public informacja(id,itp) { new Name[32]; get_user_name(id, Name, sizeof Name - 1); ColorChat(0, GREEN, "Gracz^x04 %s^x03 kupil%s", Name, info[itp]); ColorChat(id, GREEN, "Kupiles%s", info[itp]); } public odtwarzaj(id,itp) { client_cmd(0, "mp3 play sound/%s", nutka[itp]) }