Sound.sma help

Сообщения
32
Реакции
3
Предупреждения
100
Обратите внимание, если вы хотите заключить сделку с этим пользователем, он заблокирован
Здравия желаю! Хотел бы провести данную манипуляцию , но не дорос нос , чтобы так высоко смотреть. Есть в наличие плагин и хотелось бы , чтобы при достижении допустим 30 и 40 и 50 киллов (убийств) также производилась озвучка. А то в плагине запрограммировано после 12 или 16 точно не помню , тишина и молчание.. помогите , подскажите?

Код:
#include <amxmodx>
#include <amxmisc>

new kills[33] = {0,...};
new deaths[33] = {0,...};
new kill[33][24];

#define LEVELS 19
#define TASK_CLEAR_KILL 100

new levels[LEVELS] = {4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19};

new sounds[LEVELS][] =
{
"qality/us/01_m_multikill",
"qality/us/02_m_killingspree",
"qality/us/03_m_megakill",
"qality/us/04_m_dominating",
"qality/us/05_m_ultrakill",
"qality/us/06_m_rampage",
"qality/us/07_m_monsterkill",
"qality/us/08_m_ludicrouskill",
"qality/us/09_m_unstoppable",
"qality/us/10_m_whickedsick",
"qality/us/10_m_whickedsick",
"qality/us/10_m_whickedsick"
"qality/us/10_m_whickedsick"
"qality/us/10_m_whickedsick"
"qality/us/10_m_whickedsick"
"qality/us/10_m_whickedsick"
"qality/us/10_m_whickedsick"
"qality/us/10_m_whickedsick"
"qality/us/10_m_whickedsick"
};

public plugin_precache()
{
    for(new i = 0; i < LEVELS; i++)
    {
        new CacheSound[64]
        formatex(CacheSound, 63, "%s.wav", sounds[i])
        precache_sound(CacheSound)
    }
}

new messages[LEVELS][] =
{
"%s -4 kill",
"%s -5 kill",
"%s -6 kill",
"%s -7 kill",
"%s -8 kill",
"%s -9 kill",
"%s -10 kill",
"%s -11 kill",
"%s -12 kill",
"%s | ДЕЛАЕТ НЕВОЗМОЖНОЕ | -13",
"%s | ТАКОЕ ЕЩЁ НЕ ВИДЕЛИ | -14",
"%s | НЕВЕРОЯТНЫЙ SKILL | -15"
"%s | НЕВЕРОЯТНЫЙ SKILL | -16"
"%s | НЕВЕРОЯТНЫЙ SKILL | -17"
"%s | НЕВЕРОЯТНЫЙ SKILL | -18"
"%s | НЕВЕРОЯТНЫЙ SKILL | -19"
"%s | НЕВЕРОЯТНЫЙ SKILL | -20"
"%s | НЕВЕРОЯТНЫЙ SKILL | -21"
"%s | НЕВЕРОЯТНЫЙ SKILL | -22"
};

new killstreaktype

public plugin_init()
{
    register_plugin("Ultimate KillStreak Sounds", "1.0", "Leo_[BH]");
    
    killstreaktype = register_cvar("ut_killstreak_advanced", "3");
    
    register_event("DeathMsg", "event_death", "a");
    register_event("ResetHUD", "reset_hud", "b");
}

public event_death(id)
{
    new killer = read_data(1);
    new victim = read_data(2);
//    new headshot = read_data(3);
    new weapon[24], vicname[32], killname[32]
    read_data(4,weapon,23)
    get_user_name(victim,vicname,31)
    get_user_name(killer,killname,31)
    
    if(kill[killer][0] && equal(kill[killer],weapon))
    {
        kill[killer][0] = 0;
    }
    else
    {
        kill[killer] = weapon;
        set_task(0.1,"clear_kill",TASK_CLEAR_KILL+killer);
    }
    
    kills[killer] += 1;
    kills[victim] = 0;
    deaths[killer] = 0;
    deaths[victim] += 1;
    
    for (new i = 0; i < LEVELS; i++)
    {
        if (kills[killer] == levels[i])
        {
            announce(killer, i);
            break;
        }
    }
}

announce(killer, level)
{
    if(killer == 0 || !is_user_connected(killer)) // FiX - No Server Kills ;D
    {
        return PLUGIN_CONTINUE;
    }
    
    new name[33]
    get_user_name(killer, name, 32);
    
    new hud_col = random_num(1,4)
    switch (hud_col)
    {
        case 1: set_hudmessage(224, 224, 0, 0.05, 0.65, 2, 0.02, 5.0, 0.02, 0.25, 2); // yellow
        case 2: set_hudmessage(0, 224, 224, 0.05, 0.65, 2, 0.02, 5.0, 0.02, 0.25, 2); // birz
        case 3: set_hudmessage(128, 0, 224, 0.05, 0.65, 2, 0.02, 5.0, 0.02, 0.25, 2); // violla
        case 4: set_hudmessage(0, 224, 0, 0.05, 0.65, 2, 0.02, 5.0, 0.02, 0.25, 2); // green
    }

    if( (get_pcvar_num(killstreaktype) <= 0 ) || get_pcvar_num(killstreaktype) > 3) return PLUGIN_HANDLED;

    if(get_pcvar_num(killstreaktype) == 1)
    {
        show_hudmessage(0, messages[level], name);
    }
    else if(get_pcvar_num(killstreaktype) == 2)
    {
        client_cmd(0, "spk %s", sounds[level]);
    }
    else if(get_pcvar_num(killstreaktype) == 3)
    {
        show_hudmessage(0, messages[level], name);
        client_cmd(0, "spk %s", sounds[level]);
    }
    
    return PLUGIN_CONTINUE;
}

public reset_hud(id)
{
    if (kills[id] > levels[0])
    {
        set_hudmessage(0,224,224, 0.98, 0.70, 2, 0.02, 4.0, 0.02, 0.5, 2);
        show_hudmessage(id, "Комбо %dx!   ", kills[id]);
    }
    else if (deaths[id] > 1)
    {
        set_hudmessage(224,224,0, 0.40, 0.05, 2, 0.02, 4.0, 0.02, 0.3, 2);
        show_hudmessage(id, "Вы умираете %d-ый раунд подряд.  ", deaths[id]);
    }
}

public client_connect(id)
{
    kills[id] = 0;
    deaths[id] = 0;
}

public clear_kill(taskid)
{
    new id = taskid-TASK_CLEAR_KILL;
    kill[id][0] = 0;
}

// // // // // // // // // // // // // // // //
 
Сообщения
957
Реакции
1,185
Помог
52 раз(а)
Добавить новые элементы:
  1. В levels[LEVELS] 30,40,50
  2. В sounds[LEVELS][] скопировать 3 последних элемента
  3. В messages[LEVELS][] добавить в конец так же 3 описания для дхуда
 

Пользователи, просматривающие эту тему

Сейчас на форуме нет ни одного пользователя.
Сверху Снизу