Die Sounds Girl

Сообщения
1,499
Реакции
1,499
Помог
2 раз(а)
Как можно например определённой модели дать свой звук смерти?

Вот у меня за сторону Т - мужики, КТ - девки

Я обычные звуки оставил мужские за Т, а девкам дал женские звуки

Просто ситуация на будущее - вдруг будут и мужс.и женс. за обе стороны

Вот так оно выглядит


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

new const old_die_sounds[][] =
{
        "player/die1.wav",
        "player/die2.wav",
        "player/die3.wav"
}

new const die_sounds_girl[][] =
{
        "die_sounds_girl/die1.wav",
        "die_sounds_girl/die2.wav",
        "die_sounds_girl/die3.wav"
}

public plugin_init()
{
    register_forward(FM_EmitSound, "Death_Sound")
}
public plugin_precache()
{  
    for(new i = 0; i < sizeof die_sounds_girl; i++)
        precache_sound(die_sounds_girl[i])
}

public Death_Sound(id, channel, const sample[], Float:volume, Float:attn, flags, pitch)
{
    if(sample[0] == 'h' && sample[1] == 'o' && sample[2] == 's' && sample[3] == 't' && sample[4] == 'a' && sample[5] == 'g' && sample[6] == 'e')
        return FMRES_SUPERCEDE;
   
    if(!is_user_connected(id) || get_user_team(id) != 2)
        return FMRES_IGNORED;

        for(new i = 0; i < sizeof die_sounds_girl; i++)
        {
             if(equal(sample, old_die_sounds[i]))
             {
                     emit_sound(id, channel, die_sounds_girl[i], 1.0, ATTN_NORM, 0, PITCH_NORM)
                     return FMRES_SUPERCEDE
             }
        }

    return FMRES_IGNORED;
}
 
Последнее редактирование:
Сообщения
713
Реакции
479
Помог
10 раз(а)
очевидно нужен какой-то переключатель, который будет показывать кто есть кто
например, отдельный плагин, который возвращает флажок и по нему ориентироваться
как будет задаваться флаг, это уже тебе решать, протягивай его в свой плагин и проверяй за место команды
 
Сообщения
1,499
Реакции
1,499
Помог
2 раз(а)
BalbuR,
Слушай,а что здесь не правильно ?
Просто бывает всёравно проскакивает через раз звук стандартный die за КТ
Код:
    if(sample[0] == 'h' && sample[1] == 'o' && sample[2] == 's' && sample[3] == 't' && sample[4] == 'a' && sample[5] == 'g' && sample[6] == 'e')
        return FMRES_SUPERCEDE;
 
Сообщения
713
Реакции
479
Помог
10 раз(а)
Это блок звука заложника и к игроку никак не относится
 
Сообщения
663
Реакции
233
Помог
11 раз(а)
блокируй и ставь свои (если ты про попадаение пуль в тело)

bhit_flesh-1, bhit_flesh-2, bhit_flesh-3
Код:
sample[0] == 'b' && sample[5] == 'f' && sample[6] == 'l'
 
Сообщения
3,390
Реакции
1,487
Помог
125 раз(а)
Я у себя так делал:

Код:
enum _:PlayerSounds
{
    SOUND_NONE,
    SOUND_DIE,
    SOUND_HIT,
    SOUND_HEADSHOT
};

detect_pain_sound(const szSample[])
{
    static iTypeSound; iTypeSound = SOUND_NONE;

    if(equal(szSample[7], "die", 3) || equal(szSample[7], "death6", 6))
    {
        iTypeSound = SOUND_DIE;
    }
    else if(equal(szSample[7], "bhit_f", 6) || equal(szSample[7], "bhit_k", 6))
    {
        iTypeSound = SOUND_HIT;
    }
    else if(equal(szSample[7], "headshot", 8))
    {
        iTypeSound = SOUND_HEADSHOT;
    }

    return iTypeSound;
}
 

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

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