Правила форума Гаранты форума
Размещение рекламы AMX-X компилятор

Здравствуйте, гость Вход | Регистрация

Наши новости:

14-дек
24-апр
10-апр
11-апр

> Правила форума

Этот раздел, как вы могли заметить по названию, предназначен для решения вопросов по поводу уже существующих модов и плагинов.
Пожалуйста, если у вас проблема с написанием плагина, не путайте этот раздел с разделом по скриптингу.
Для поиска плагинов и модов существует соответствующий раздел.

Название темы должно соответствовать содержанию. Темы с названием типа "Помогите", "Вопрос", "парни подскажите..." - будут удалены.
Все темы, не относящиеся к "Вопросам по модам и плагинам", будут удалены или перемещены в соответствующий раздел.

Правила оформления темы:
1. Помимо заголовка не забудьте верно сформулировать свой вопрос.
2. Выложите исходник (в тег кода + ) или ссылку на плагин который вызывает у вас вопросы.
3. Выложите лог с ошибками (если имеется) под спойлер

помогите вшить менюшку

IIuKa
сообщение 7.12.2012, 19:47
Сообщение #1
Стаж: 13 лет

Сообщений: 667
Благодарностей: 29
Полезность: < 0

Доброго времени! помогите вшить менюшку что бы после захода игрока секунд через 15 автоматически выдовало меню с быборов вкл выкл музыку
типо этого:

Включить музыку в конце раунда?
1.да
2.нет

Скрытый текст
CODE
/*
* ===== ИНФОРМАЦИЯ =====
*
* Название: END ROUND MUSIC MP3
* Версия: 1.6b
* Автор: Sho0ter ( Специально для http://cs.4m.net.ua )
* Последнее обновление: 02.05.2010
*
* ========================
*
* ======= ОПИСАНИЕ =======
*
* Сравнительно простой, но в то же время функциональный плагин для проигрывания MP3 музыки в конце раунда
*
* ========================
*
* == ОСНОВНЫЕ ФУНКЦИИ ==
*
* 1. Отдельные плейлисты для Т и CT
* 2. Автовыставление mp3volume
* 3. Возможность включить/отключить плагин на стороне клиента
* 4. Ведение собственного лога
* 5. Переменные для управления плагином
*
* ========================
*
* ===== ПЕРЕМЕННЫЕ ======
*
* amx_erm_autovol <0...1> [По умолчанию: 0.5]
* - Уровень громкости, который выставляется на клиенте при подключении к серверу.
*
* amx_erm_radio <0/1> [По умолчанию: 1]
* - Проигрывать ли звуки ctwin или twin
* - 1 да
* - 0 нет
*
* amx_erm_showinfo_delay <секунды> [По умолчанию: 20.0]
* - Время после подключения к серверу, после которого показывается информация о чат-коммандах плагина
*
* amx_erm_log <0/1> [По умолчанияю: 1]
* - Писать ли лог
* - 1 да
* - 0 нет
*
* ========================
*
* ===== ЧАТ-КОМАНДЫ =====
*
* say /ermoff - выключить музыку в конце раунда (только для себя)
* say /ermon - включить музыку в конце раунда (только для себя)
*
* =========================
*
* ========= CОВЕТЫ =========
* 1. Конвентируйте музызку:
* - Формат: MP3
* - Битрейт: 32-320 Kbps
* - Частота 22-44 KHz
*
* 2. Используйте конвентор http://formatoz.com/RU_download.html
* - Поскольку КС дружит далеко не со всеми конвенторами
*
* 3. Музыку кидайте в папку sound и прописывайте в плей-лист все что после cstrike/sound/
* =========================
*/

#include <amxmodx>
#include <amxmisc>

#define PLUGIN "End Round Music MP3"
#define VERSION "1.6b"
#define AUTHOR "Sho0ter"

new g_SizeLineTFile, g_SizeLineCTFile, SayText
new g_configfileT[128], g_configfileCT[128]
new g_checkErminf[33][32]
new logdate[64], logfile[64]

public plugin_init()
{
register_plugin(PLUGIN, VERSION, AUTHOR)
register_dictionary("endroundmusicmp3.txt")
register_event("SendAudio", "t_win", "a", "2&%!MRAD_terwin")
register_event("SendAudio", "ct_win", "a", "2&%!MRAD_ctwin")
register_cvar("amx_erm_autovol", "0.5")
register_cvar("amx_erm_radio", "1")
register_cvar("amx_erm_showinfo_delay", "20.0")
register_cvar("amx_erm_log", "1")
register_clcmd("say /ermon", "cmd_ermon", 0, " - turn on end round music")
register_clcmd("say /ermoff", "cmd_ermoff", 0, " - turn off end round music")
SayText = get_user_msgid("SayText");
return PLUGIN_CONTINUE
}

public plugin_precache()
{
new config[64]
get_configsdir(config, 63)
get_time("20%y.%m.%d", logdate, 63)
formatex(logfile, 63, "endroundmusicmp3_%s.log", logdate)
format(g_configfileT, 127, "%s/endroundmusicmp3_t.ini", config)
format(g_configfileCT, 127, "%s/endroundmusicmp3_ct.ini", config)
if(file_exists(g_configfileT) && file_exists(g_configfileCT))
{
g_SizeLineTFile = file_size(g_configfileT, 1)
g_SizeLineCTFile = file_size(g_configfileCT, 1)
}
else
{
server_print("[ERM MP3 ERROR] Could not find config file!")
if(get_cvar_num("amx_erm_log") == 1)
{
log_to_file(logfile, "[ERM MP3 ERROR] [Could not find config file!]")
log_to_file(logfile, "[ERM MP3 ERROR] [You should put endroundmusicmp3_t.ini in addons/amxmodx/configs/]")
log_to_file(logfile, "[ERM MP3 ERROR] [You should put endroundmusicmp3_ct.ini in addons/amxmodx/configs/]")
}
return PLUGIN_CONTINUE
}
new BufferFileName[160], len, index
index=0
while (read_file(g_configfileT, index, BufferFileName, sizeof(BufferFileName)-1, len) )
{
index++
precache_sound(BufferFileName)
}
index=0
while (read_file(g_configfileCT, index, BufferFileName, sizeof(BufferFileName)-1, len) )
{
index++
precache_sound(BufferFileName)
}
return PLUGIN_CONTINUE
}

public client_disconnect(id)
{
remove_task(id)
return PLUGIN_CONTINUE
}

public client_putinserver(id)
{
set_task(get_cvar_float("amx_erm_showinfo_delay"), "showerminfo", id)
return PLUGIN_HANDLED
}

public t_win()
{
new players[32], inum, id
new buffer[160],len
new random_line = random(g_SizeLineTFile)
read_file(g_configfileT, random_line, buffer, sizeof(buffer)-1, len)
get_players(players, inum, "c")
for(new a=0;a<inum;++a)
{
id=players[a]
if (equali(g_checkErminf[id],"ON"))
{
client_cmd(id,"stopsound")
client_cmd(id,"mp3 play sound/%s", buffer)
if(get_cvar_num("amx_erm_radio") == 1)
{
client_cmd(id, "spk radio/terwin")
}
}
}
if(get_cvar_num("amx_erm_log") == 1)
{
new map[32]
get_mapname(map, 31)
get_time("20%y.%m.%d", logdate, 63)
formatex(logfile, 63, "endroundmusicmp3_%s.log", logdate)
log_to_file(logfile, "[T PLAY] [%s] [%s] [%d] [%s]", buffer, g_configfileT, g_SizeLineTFile, map)
}
return PLUGIN_HANDLED
}

public ct_win()
{
new players[32], inum, id
new buffer[160],len
new random_line = random(g_SizeLineCTFile)
read_file(g_configfileCT, random_line, buffer, sizeof(buffer)-1, len)
get_players(players, inum, "c")
for(new a=0;a<inum;++a)
{
id=players[a]
if (equali(g_checkErminf[id],"ON"))
{
client_cmd(id,"stopsound")
client_cmd(id, "mp3 play sound/%s",buffer)
if(get_cvar_num("amx_erm_radio") == 1)
{
client_cmd(id, "spk radio/ctwin")
}
}
}
if(get_cvar_num("amx_erm_log") == 1)
{
new map[32]
get_mapname(map, 31)
get_time("20%y.%m.%d", logdate, 63)
formatex(logfile, 63, "endroundmusicmp3_%s.log", logdate)
log_to_file(logfile, "[CT PLAY] [%s] [%s] [%d] [%s]", buffer, g_configfileCT, g_SizeLineCTFile, map)
}
return PLUGIN_HANDLED
}

public cmd_ermon(id)
{
client_cmd(id, "setinfo erm ON")
g_checkErminf[id]= "ON"
client_cmd(id, "mp3volume %f", get_cvar_float("amx_erm_autovol"))
client_cmd(id, "spk vox/activated")
green_print(id, "ERMMP3ON_MSG1")
green_print(id, "ERMMP3ON_MSG2")
if(get_cvar_num("amx_erm_log") == 1)
{
new map[32]
get_mapname(map, 31)
new name[32]
get_user_name(id, name, 31)
get_time("20%y.%m.%d", logdate, 63)
formatex(logfile, 63, "endroundmusicmp3_%s.log", logdate)
log_to_file(logfile, "[ERM MP3 ON] [%s] [%s]", name, map)
}
return PLUGIN_CONTINUE
}


public cmd_ermoff(id)
{
client_cmd(id, "setinfo erm OFF")
g_checkErminf[id]= "OFF"
client_cmd(id, "mp3 stop")
client_cmd(id, "spk vox/deactivated")
green_print(id, "ERMMP3OFF_MSG1")
green_print(id, "ERMMP3OFF_MSG2")
if(get_cvar_num("amx_erm_log") == 1)
{
new map[32]
get_mapname(map, 31)
new name[32]
get_user_name(id, name, 31)
get_time("20%y.%m.%d", logdate, 63)
formatex(logfile, 63, "endroundmusicmp3_%s.log", logdate)
log_to_file(logfile, "[ERM MP3 OFF] [%s] [%s]", name, map)
}
return PLUGIN_CONTINUE
}

public showerminfo(id)
{
client_cmd(id, "setinfo erm ON")
g_checkErminf[id]= "ON"
client_cmd(id, "mp3volume %f", get_cvar_float("amx_erm_autovol"))
green_print(id, "ERMMP3INFO_MSG1")
green_print(id, "ERMMP3INFO_MSG2")
}

stock green_print(index, const message[])
{
new finalmsg[192];
formatex(finalmsg, 191, "^x04[ERM MP3] ^x01%L", LANG_PLAYER, message);
message_begin(MSG_ONE, SayText, _, index);
write_byte(index);
write_string(finalmsg);
message_end();
}
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   Цитировать сообщение
underwoker
сообщение 7.12.2012, 20:12
Сообщение #2
Стаж: 56 лет


Благодарностей:

Скрытый текст
Код
/*
* ===== ИНФОРМАЦИЯ =====
*
* Название: END ROUND MUSIC MP3
* Версия: 1.6b
* Автор: Sho0ter ( Специально для http://cs.4m.net.ua )
* Последнее обновление: 02.05.2010
*
* ========================
*
* ======= ОПИСАНИЕ =======
*
* Сравнительно простой, но в то же время функциональный плагин для проигрывания MP3 музыки в конце раунда
*
* ========================
*
* == ОСНОВНЫЕ ФУНКЦИИ ==
*
* 1. Отдельные плейлисты для Т и CT
* 2. Автовыставление mp3volume
* 3. Возможность включить/отключить плагин на стороне клиента
* 4. Ведение собственного лога
* 5. Переменные для управления плагином
*
* ========================
*
* ===== ПЕРЕМЕННЫЕ ======
*     
* amx_erm_autovol <0...1> [По умолчанию: 0.5]
*     - Уровень громкости, который выставляется на клиенте при подключении к серверу.
*
* amx_erm_radio <0/1> [По умолчанию: 1]
*    - Проигрывать ли звуки ctwin или twin
*    - 1 да
*    - 0 нет
*
* amx_erm_showinfo_delay <секунды> [По умолчанию: 20.0]
*    - Время после подключения к серверу, после которого показывается информация о чат-коммандах плагина
*
* amx_erm_log <0/1> [По умолчанияю: 1]
*    - Писать ли лог
*    - 1 да
*    - 0 нет
*
* ========================
*
* ===== ЧАТ-КОМАНДЫ =====
*
* say /ermoff - выключить музыку в конце раунда (только для себя)
* say /ermon - включить музыку в конце раунда (только для себя)
*
* =========================
*
* ========= CОВЕТЫ =========
* 1. Конвентируйте музызку:
*    - Формат: MP3
*    - Битрейт: 32-320 Kbps
*    - Частота 22-44 KHz
*
* 2. Используйте конвентор http://formatoz.com/RU_download.html
*    - Поскольку КС дружит далеко не со всеми конвенторами
*
* 3. Музыку кидайте в папку sound и прописывайте в плей-лист все что после cstrike/sound/
* =========================
*/

#include <amxmodx>
#include <amxmisc>

#define PLUGIN "End Round Music MP3"
#define VERSION "1.6b"
#define AUTHOR "Sho0ter"

new g_SizeLineTFile, g_SizeLineCTFile, SayText
new g_configfileT[128], g_configfileCT[128]
new g_checkErminf[33][32]
new logdate[64], logfile[64]

public plugin_init()
{
    register_plugin(PLUGIN, VERSION, AUTHOR)
    register_dictionary("endroundmusicmp3.txt")
    register_event("SendAudio", "t_win", "a", "2&%!MRAD_terwin")
    register_event("SendAudio", "ct_win", "a", "2&%!MRAD_ctwin")
    register_cvar("amx_erm_autovol", "0.5")
    register_cvar("amx_erm_radio", "1")
    register_cvar("amx_erm_showinfo_delay", "20.0")
    register_cvar("amx_erm_log", "1")
    register_clcmd("say /ermon", "cmd_ermon", 0, " - turn on end round music")  
    register_clcmd("say /ermoff", "cmd_ermoff", 0, " - turn off end round music")  
    SayText = get_user_msgid("SayText");
    return PLUGIN_CONTINUE
}

public plugin_precache()
{
    new config[64]
    get_configsdir(config, 63)
    get_time("20%y.%m.%d", logdate, 63)
    formatex(logfile, 63, "endroundmusicmp3_%s.log", logdate)
    format(g_configfileT, 127, "%s/endroundmusicmp3_t.ini", config)
    format(g_configfileCT, 127, "%s/endroundmusicmp3_ct.ini", config)
    if(file_exists(g_configfileT)  &&  file_exists(g_configfileCT))
    {
        g_SizeLineTFile = file_size(g_configfileT, 1)
        g_SizeLineCTFile = file_size(g_configfileCT, 1)
    }
    else
    {
        server_print("[ERM MP3 ERROR] Could not find config file!")
        if(get_cvar_num("amx_erm_log") == 1)
        {
            log_to_file(logfile, "[ERM MP3 ERROR] [Could not find config file!]")
            log_to_file(logfile, "[ERM MP3 ERROR] [You should put endroundmusicmp3_t.ini in addons/amxmodx/configs/]")
            log_to_file(logfile, "[ERM MP3 ERROR] [You should put endroundmusicmp3_ct.ini in addons/amxmodx/configs/]")
        }
        return PLUGIN_CONTINUE
    }    
    new BufferFileName[160], len, index    
    index=0
    while (read_file(g_configfileT, index, BufferFileName, sizeof(BufferFileName)-1, len) )
    {    
        index++    
        precache_sound(BufferFileName)
    }
    index=0
    while (read_file(g_configfileCT, index, BufferFileName, sizeof(BufferFileName)-1, len) )
    {
        index++
        precache_sound(BufferFileName)
    }    
    return PLUGIN_CONTINUE
}

public client_disconnect(id)
{
    remove_task(id)
    return PLUGIN_CONTINUE
}

public client_putinserver(id)
{
    set_task(get_cvar_float("amx_erm_showinfo_delay"), "showerminfo", id)
    return PLUGIN_HANDLED
}

public client_authorized(id)
{
    set_task(15.0, "music_on_ili_off")
}

public t_win()
{
    new players[32], inum, id
    new buffer[160],len
    new random_line = random(g_SizeLineTFile)
    read_file(g_configfileT, random_line, buffer, sizeof(buffer)-1, len)
    get_players(players, inum, "c")
    for(new a=0;a<inum;++a)
    {
        id=players[a]
        if (equali(g_checkErminf[id],"ON"))
        {
            client_cmd(id,"stopsound")
            client_cmd(id,"mp3 play sound/%s", buffer)
            if(get_cvar_num("amx_erm_radio") == 1)
            {
                client_cmd(id, "spk radio/terwin")
            }
        }
    }
    if(get_cvar_num("amx_erm_log") == 1)
    {
        new map[32]
        get_mapname(map, 31)
        get_time("20%y.%m.%d", logdate, 63)
        formatex(logfile, 63, "endroundmusicmp3_%s.log", logdate)
        log_to_file(logfile, "[T PLAY] [%s] [%s] [%d] [%s]", buffer, g_configfileT, g_SizeLineTFile, map)
    }
    return PLUGIN_HANDLED
}

public ct_win()
{
    new players[32], inum, id
    new buffer[160],len
    new random_line = random(g_SizeLineCTFile)
    read_file(g_configfileCT, random_line, buffer, sizeof(buffer)-1, len)
    get_players(players, inum, "c")
    for(new a=0;a<inum;++a)
    {
        id=players[a]
        if (equali(g_checkErminf[id],"ON"))
        {
            client_cmd(id,"stopsound")
            client_cmd(id, "mp3 play sound/%s",buffer)
            if(get_cvar_num("amx_erm_radio") == 1)
            {
                client_cmd(id, "spk radio/ctwin")
            }
        }
    }
    if(get_cvar_num("amx_erm_log") == 1)
    {
        new map[32]
        get_mapname(map, 31)
        get_time("20%y.%m.%d", logdate, 63)
        formatex(logfile, 63, "endroundmusicmp3_%s.log", logdate)
        log_to_file(logfile, "[CT PLAY] [%s] [%s] [%d] [%s]", buffer, g_configfileCT, g_SizeLineCTFile, map)
    }
    return PLUGIN_HANDLED
}

public cmd_ermon(id)
{
    client_cmd(id, "setinfo erm ON")
    g_checkErminf[id]= "ON"    
    client_cmd(id, "mp3volume %f", get_cvar_float("amx_erm_autovol"))
    client_cmd(id, "spk vox/activated")
    green_print(id, "ERMMP3ON_MSG1")
    green_print(id, "ERMMP3ON_MSG2")
    if(get_cvar_num("amx_erm_log") == 1)
    {
        new map[32]
        get_mapname(map, 31)
        new name[32]
        get_user_name(id, name, 31)
        get_time("20%y.%m.%d", logdate, 63)
        formatex(logfile, 63, "endroundmusicmp3_%s.log", logdate)
        log_to_file(logfile, "[ERM MP3 ON] [%s] [%s]", name, map)
    }
    return PLUGIN_CONTINUE
}


public cmd_ermoff(id)
{
    client_cmd(id, "setinfo erm OFF")
    g_checkErminf[id]= "OFF"
    client_cmd(id, "mp3 stop")
    client_cmd(id, "spk vox/deactivated")
    green_print(id, "ERMMP3OFF_MSG1")
    green_print(id, "ERMMP3OFF_MSG2")
    if(get_cvar_num("amx_erm_log") == 1)
    {
        new map[32]
        get_mapname(map, 31)
        new name[32]
        get_user_name(id, name, 31)
        get_time("20%y.%m.%d", logdate, 63)
        formatex(logfile, 63, "endroundmusicmp3_%s.log", logdate)
        log_to_file(logfile, "[ERM MP3 OFF] [%s] [%s]", name, map)
    }
    return PLUGIN_CONTINUE
}

public showerminfo(id)
{
    client_cmd(id, "setinfo erm ON")
    g_checkErminf[id]= "ON"    
    client_cmd(id, "mp3volume %f", get_cvar_float("amx_erm_autovol"))
    green_print(id, "ERMMP3INFO_MSG1")
    green_print(id, "ERMMP3INFO_MSG2")
}

public music_on_ili_off(id)
{
    new menu = menu_create("\rМузыка в конце раунда","menu_handler");
    menu_additem( menu, "\w1\r. \wВключить")
    menu_additem( menu, "\w2\r. \wВыключить")
    menu_setprop(menu, MPROP_EXITNAME, "Выход")
    menu_setprop(menu, MPROP_EXIT,MEXIT_ALL)
    menu_display(id,menu,0)
    return PLUGIN_HANDLED
}

public menu_handler(id, menu, item)
{
    if(item == MENU_EXIT)
    {
        menu_destroy(menu)
        return PLUGIN_HANDLED
    }
    
    new data[6], iName[64], access, callback
    menu_item_getinfo(menu, item, access, data, 5, iName, 63, callback)
    
    new key = str_to_num(data)
    
    switch(key)
    {
    case 1:
        {
            if(is_user_alive(id))
            client_cmd(id, "say /ermon")
            green_print(id, "^x04Вы включили мызку в конце раунда")
        }
    case 2:
        {
            if(is_user_alive(id))
            client_cmd(id, "say /ermoff")
            green_print(id, "^x04Вы выключили музыку в конце раунда")
        }
        
    }
    return PLUGIN_HANDLED
}

stock green_print(index, const message[])
{
    new finalmsg[192];
    formatex(finalmsg, 191, "^x04[ERM MP3] ^x01%L", LANG_PLAYER, message);
    message_begin(MSG_ONE, SayText, _, index);
    write_byte(index);
    write_string(finalmsg);
    message_end();
}


Не проверял. Напиши если будут косяки.
Перейти в начало страницы     
   +
IIuKa
сообщение 7.12.2012, 20:24
Сообщение #3
Стаж: 13 лет

Сообщений: 667
Благодарностей: 29
Полезность: < 0

нет нету меню
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
underwoker
сообщение 7.12.2012, 21:09
Сообщение #4
Стаж: 56 лет


Благодарностей:

Скрытый текст
Код
#include <amxmodx>
#include <amxmisc>

new menu

#define PLUGIN "End Round Music MP3"
#define VERSION "1.6b"
#define AUTHOR "Sho0ter"

new g_SizeLineTFile, g_SizeLineCTFile, SayText
new g_configfileT[128], g_configfileCT[128]
new g_checkErminf[33][32]
new logdate[64], logfile[64]

public plugin_init()
{
    register_plugin(PLUGIN, VERSION, AUTHOR)
    register_dictionary("endroundmusicmp3.txt")
    register_event("SendAudio", "t_win", "a", "2&%!MRAD_terwin")
    register_event("SendAudio", "ct_win", "a", "2&%!MRAD_ctwin")
    register_cvar("amx_erm_autovol", "0.5")
    register_cvar("amx_erm_radio", "1")
    register_cvar("amx_erm_showinfo_delay", "20.0")
    register_cvar("amx_erm_log", "1")
    register_clcmd("say /ermon", "cmd_ermon", 0, " - turn on end round music")  
    register_clcmd("say /ermoff", "cmd_ermoff", 0, " - turn off end round music")  
    SayText = get_user_msgid("SayText");
    menu = menu_create("\rМузыка в конце раунда:","func_menu");
    menu_additem( menu, "1. Включить")
    menu_additem( menu, "2. Выключить")
    menu_setprop(menu, MPROP_EXITNAME, "Выход")
    menu_setprop(menu, MPROP_EXIT,MEXIT_ALL)
    register_clcmd("player_menu","go_menu");
    return PLUGIN_CONTINUE
}

public plugin_precache()
{
    new config[64]
    get_configsdir(config, 63)
    get_time("20%y.%m.%d", logdate, 63)
    formatex(logfile, 63, "endroundmusicmp3_%s.log", logdate)
    format(g_configfileT, 127, "%s/endroundmusicmp3_t.ini", config)
    format(g_configfileCT, 127, "%s/endroundmusicmp3_ct.ini", config)
    if(file_exists(g_configfileT)  &&  file_exists(g_configfileCT))
    {
        g_SizeLineTFile = file_size(g_configfileT, 1)
        g_SizeLineCTFile = file_size(g_configfileCT, 1)
    }
    else
    {
        server_print("[ERM MP3 ERROR] Could not find config file!")
        if(get_cvar_num("amx_erm_log") == 1)
        {
            log_to_file(logfile, "[ERM MP3 ERROR] [Could not find config file!]")
            log_to_file(logfile, "[ERM MP3 ERROR] [You should put endroundmusicmp3_t.ini in addons/amxmodx/configs/]")
            log_to_file(logfile, "[ERM MP3 ERROR] [You should put endroundmusicmp3_ct.ini in addons/amxmodx/configs/]")
        }
        return PLUGIN_CONTINUE
    }    
    new BufferFileName[160], len, index    
    index=0
    while (read_file(g_configfileT, index, BufferFileName, sizeof(BufferFileName)-1, len) )
    {    
        index++    
        precache_sound(BufferFileName)
    }
    index=0
    while (read_file(g_configfileCT, index, BufferFileName, sizeof(BufferFileName)-1, len) )
    {
        index++
        precache_sound(BufferFileName)
    }    
    return PLUGIN_CONTINUE
}

public client_disconnect(id)
{
    remove_task(id)
    return PLUGIN_CONTINUE
}

public client_putinserver(id)
{
    set_task(get_cvar_float("amx_erm_showinfo_delay"), "showerminfo", id)
    return PLUGIN_HANDLED
}

public client_authorized(id)
{
    set_task(15.0, "music_on_ili_off")
}

public t_win()
{
    new players[32], inum, id
    new buffer[160],len
    new random_line = random(g_SizeLineTFile)
    read_file(g_configfileT, random_line, buffer, sizeof(buffer)-1, len)
    get_players(players, inum, "c")
    for(new a=0;a<inum;++a)
    {
        id=players[a]
        if (equali(g_checkErminf[id],"ON"))
        {
            client_cmd(id,"stopsound")
            client_cmd(id,"mp3 play sound/%s", buffer)
            if(get_cvar_num("amx_erm_radio") == 1)
            {
                client_cmd(id, "spk radio/terwin")
            }
        }
    }
    if(get_cvar_num("amx_erm_log") == 1)
    {
        new map[32]
        get_mapname(map, 31)
        get_time("20%y.%m.%d", logdate, 63)
        formatex(logfile, 63, "endroundmusicmp3_%s.log", logdate)
        log_to_file(logfile, "[T PLAY] [%s] [%s] [%d] [%s]", buffer, g_configfileT, g_SizeLineTFile, map)
    }
    return PLUGIN_HANDLED
}

public ct_win()
{
    new players[32], inum, id
    new buffer[160],len
    new random_line = random(g_SizeLineCTFile)
    read_file(g_configfileCT, random_line, buffer, sizeof(buffer)-1, len)
    get_players(players, inum, "c")
    for(new a=0;a<inum;++a)
    {
        id=players[a]
        if (equali(g_checkErminf[id],"ON"))
        {
            client_cmd(id,"stopsound")
            client_cmd(id, "mp3 play sound/%s",buffer)
            if(get_cvar_num("amx_erm_radio") == 1)
            {
                client_cmd(id, "spk radio/ctwin")
            }
        }
    }
    if(get_cvar_num("amx_erm_log") == 1)
    {
        new map[32]
        get_mapname(map, 31)
        get_time("20%y.%m.%d", logdate, 63)
        formatex(logfile, 63, "endroundmusicmp3_%s.log", logdate)
        log_to_file(logfile, "[CT PLAY] [%s] [%s] [%d] [%s]", buffer, g_configfileCT, g_SizeLineCTFile, map)
    }
    return PLUGIN_HANDLED
}

public cmd_ermon(id)
{
    client_cmd(id, "setinfo erm ON")
    g_checkErminf[id]= "ON"    
    client_cmd(id, "mp3volume %f", get_cvar_float("amx_erm_autovol"))
    client_cmd(id, "spk vox/activated")
    green_print(id, "ERMMP3ON_MSG1")
    green_print(id, "ERMMP3ON_MSG2")
    if(get_cvar_num("amx_erm_log") == 1)
    {
        new map[32]
        get_mapname(map, 31)
        new name[32]
        get_user_name(id, name, 31)
        get_time("20%y.%m.%d", logdate, 63)
        formatex(logfile, 63, "endroundmusicmp3_%s.log", logdate)
        log_to_file(logfile, "[ERM MP3 ON] [%s] [%s]", name, map)
    }
    return PLUGIN_CONTINUE
}


public cmd_ermoff(id)
{
    client_cmd(id, "setinfo erm OFF")
    g_checkErminf[id]= "OFF"
    client_cmd(id, "mp3 stop")
    client_cmd(id, "spk vox/deactivated")
    green_print(id, "ERMMP3OFF_MSG1")
    green_print(id, "ERMMP3OFF_MSG2")
    if(get_cvar_num("amx_erm_log") == 1)
    {
        new map[32]
        get_mapname(map, 31)
        new name[32]
        get_user_name(id, name, 31)
        get_time("20%y.%m.%d", logdate, 63)
        formatex(logfile, 63, "endroundmusicmp3_%s.log", logdate)
        log_to_file(logfile, "[ERM MP3 OFF] [%s] [%s]", name, map)
    }
    return PLUGIN_CONTINUE
}

public showerminfo(id)
{
    client_cmd(id, "setinfo erm ON")
    g_checkErminf[id]= "ON"    
    client_cmd(id, "mp3volume %f", get_cvar_float("amx_erm_autovol"))
    green_print(id, "ERMMP3INFO_MSG1")
    green_print(id, "ERMMP3INFO_MSG2")
}

public music_on_ili_off(id)
{
    client_cmd(id, "player_menu")
}

stock green_print(index, const message[])
{
    new finalmsg[192];
    formatex(finalmsg, 191, "^x04[ERM MP3] ^x01%L", LANG_PLAYER, message);
    message_begin(MSG_ONE, SayText, _, index);
    write_byte(index);
    write_string(finalmsg);
    message_end();
}

public func_menu(id, menu, key)
{
key++
if(key==1) client_cmd(id, "say /ermon")
if(key==2) client_cmd(id, "say /ermoff")
}

public go_menu(id)
{
menu_display(id,menu)

return PLUGIN_HANDLED
}
Перейти в начало страницы     
Поблагодарили 1 раз
   +
underwoker
сообщение 8.12.2012, 11:56
Сообщение #5
Стаж: 56 лет


Благодарностей:

Ну а теперь работает?
Перейти в начало страницы     
   + Цитировать сообщение
  Тема закрытаНачать новую тему
 
0 пользователей и 1 гостей читают эту тему: