Добро пожаловать

Для полноценного пользования форумом и общения с его участниками, пройдите регистрацию ниже
Регистрация

Решено Помощь

Тема в разделе "Свалка", создана пользователем sujh2000, 31 янв 2017.

Статус темы:
Закрыта.
  1. sujh2000

    sujh2000 Пользователь

    32
    0
    135
    Нужна помощь в плагине. Нужно вырезать команду голосового оповещения о взрыве. Кто может помочь?

    #include <amxmodx>
    #include <csx>

    #pragma semicolon 1

    new g_Plugin[] = "Bomb Count Down HUD/Voice Timer";
    new g_Version[] = "0.2 RuS";
    new g_Author[] = "xxxxx";

    #define MAX_SECONDS 2
    new g_Seconds[MAX_SECONDS] = {30, 20};

    #define MAX_COUNT_SECONDS 6
    new g_CountSeconds[MAX_COUNT_SECONDS] = {30, 29, 28, 20, 19, 18};

    new g_bomb_timer, p_Cvar[5], g_maxplayers, g_msgid_SayText, g_HudSyncObj;

    public plugin_init()
    {
    register_plugin(g_Plugin, g_Version, g_Author);

    register_logevent("logevent_Round_Start", 2, "1=Round_Start");
    register_logevent("logevent_Round_End", 2, "1=Round_End");
    register_event("TextMsg", "logevent_Round_End", "a", "2&Game_w");

    // %def_name% = Isminuotojo vardas...
    // %sec% = C4 laikas...
    // \n = Nauja eilute...
    p_Cvar[0] = register_cvar("amx_bcd_info_text", "До взрыва C4 осталось: %sec%\nсикунд...");
    p_Cvar[1] = register_cvar("amx_bcd_def_text", "%def_name% обезвредил бомбу!\nC4 остановлена на %sec% секунд(е).");
    p_Cvar[2] = register_cvar("amx_bcd_1st_color", "0 80 220"); // Melyna
    p_Cvar[3] = register_cvar("amx_bcd_2nd_color", "200 0 0"); // Raudona
    p_Cvar[4] = register_cvar("amx_bcd_3rd_color", "200 0 200"); // Rozine

    g_maxplayers = get_maxplayers();
    g_msgid_SayText = get_user_msgid("SayText");
    g_HudSyncObj = CreateHudSyncObj();
    }

    public logevent_Round_Start()
    {
    remove_task(8038);
    g_bomb_timer = 0;
    }

    public logevent_Round_End()
    {
    remove_task(8038);
    set_task(0.1, "task_reset_bomb_timer");
    }

    public task_reset_bomb_timer()
    {
    g_bomb_timer = 0;
    }

    public bomb_planted()
    {
    g_bomb_timer = get_cvar_num("mp_c4timer");
    set_task(1.0, "task_bomb_timer", 8038, "", 0, "b");

    for (new i = 1; i <= g_maxplayers; i++)
    {
    if (is_user_connected(i))
    {
    new message[192];
    format(message, charsmax(message), "^4[C4]^1^3 Бомба^1 была успешно установлена!");

    message_begin(MSG_ONE, g_msgid_SayText, {0,0,0}, i);
    write_byte(i);
    write_string(message);
    message_end();
    }
    }
    }

    public task_bomb_timer()
    {
    g_bomb_timer--;

    if (g_bomb_timer <= 0)
    remove_task(8038);

    else
    {
    new c4_msg[192], fix[8];
    get_pcvar_string(p_Cvar[0], c4_msg, charsmax(c4_msg));

    num_to_str(g_bomb_timer, fix, charsmax(fix));

    replace(c4_msg, charsmax(c4_msg), "%sec%", fix);
    replace(c4_msg, charsmax(c4_msg), "\n", "^n");

    for (new i = 0; i < MAX_SECONDS; i++)
    {
    if (g_bomb_timer == g_Seconds)
    {
    new temp[64];
    num_to_word(g_bomb_timer, temp, 63);
    client_cmd(0, "spk ^"fvox/%s seconds until explosion^"", temp);
    }
    }

    for (new i = 0; i < MAX_COUNT_SECONDS; i++)
    {
    if (g_bomb_timer == g_CountSeconds)
    {
    new string[192], red[8], green[8], blue[8];
    get_pcvar_string(p_Cvar[2], string, charsmax(string));
    parse(string, red, charsmax(red), green, charsmax(green), blue, charsmax(blue));

    set_hudmessage(str_to_num(red), str_to_num(green), str_to_num(blue), -1.0, 0.82, 1, 0.0, 1.0, 0.0, 0.0, -1);
    ShowSyncHudMsg(0, g_HudSyncObj, c4_msg, g_bomb_timer);
    }
    }

    if (g_bomb_timer <= 10)
    {
    new string[192], red[8], green[8], blue[8];
    get_pcvar_string(p_Cvar[3], string, charsmax(string));
    parse(string, red, charsmax(red), green, charsmax(green), blue, charsmax(blue));

    set_hudmessage(str_to_num(red), str_to_num(green), str_to_num(blue), -1.0, 0.82, 1, 0.0, 1.0, 0.0, 0.0, -1);
    ShowSyncHudMsg(0, g_HudSyncObj, c4_msg, g_bomb_timer);

    new temp[64];
    num_to_word(g_bomb_timer, temp, 63);
    client_cmd(0, "spk ^"fvox/%s^"", temp);
    }
    }
    }

    public bomb_defused(defuser)
    {
    remove_task(8038);

    new def_msg[192], string[192], red[8], green[8], blue[8];
    get_pcvar_string(p_Cvar[1], def_msg, charsmax(def_msg));
    get_pcvar_string(p_Cvar[4], string, charsmax(string));
    parse(string, red, charsmax(red), green, charsmax(green), blue, charsmax(blue));

    new defuser_name[32], fix[8];
    get_user_name(defuser, defuser_name, charsmax(defuser_name));
    num_to_str(g_bomb_timer, fix, charsmax(fix));

    replace(def_msg, charsmax(def_msg), "%def_name%", defuser_name);
    replace(def_msg, charsmax(def_msg), "%sec%", fix);
    replace(def_msg, charsmax(def_msg), "\n", "^n");

    set_hudmessage(str_to_num(red), str_to_num(green), str_to_num(blue), -1.0, 0.25, 1, 0.0, 6.0, 0.0, 0.0, -1);
    ShowSyncHudMsg(0, g_HudSyncObj, def_msg, defuser_name, g_bomb_timer);
    }

    public bomb_explode()
    {
    remove_task(8038);
    }

     
  2. Creativ4ik

    Creativ4ik Проверенный

    50
    40
    30
    sujh2000,
    Код:
                new temp[64];
                num_to_word(g_bomb_timer, temp, 63);
                client_cmd(0, "spk ^"fvox/%s^"", temp);
    
     
  3. sujh2000

    sujh2000 Пользователь

    32
    0
    135
    Спасибо.
     
  4. Creativ4ik

    Creativ4ik Проверенный

    50
    40
    30
    sujh2000, Обрайщайся
     
  5. ProroK

    ProroK Забанен

    658
    107
    150
    Решено.
     
Статус темы:
Закрыта.