Roberto Sourcequadnet
Участник
- Сообщения
- 22
- Реакции
- 16
Делаем несколько звуков при заражении
Открываем файл zr/soundeffect/zombiesounds.inc
Добовляем сверху
PHP:
#define SOUND_INF_PATH "sourcequad/zombie/zmsound/infect%d.wav" //путь к звуку где %d это порядковый номер звука из которых будет выбираться рандом. Тоесть звуки должны называться infect1, infect2, infect3 и т.д
#define SOUND_INF_MIN 1
#define SOUND_INF_MAX 5 //это число звуков для рандома
Немного ниже находим и добовляем строку,
PHP:
enum ZombieSounds
{
Moan, /** Zombie's moan periodically */
Groan, /** When zombie is hurt */
Death, /** When a zombie is killed */
Infect, // добовляем свою группу звуков для рандома
}
Идём еще ниже, находим
PHP:
switch(soundtype)
{
// Find moan sound.
case Moan:
{
// Copy min and max
soundmin = SOUND_MOAN_MIN;
soundmax = SOUND_MOAN_MAX;
// Copy path
strcopy(soundpath, sizeof(soundpath), SOUND_MOAN_PATH);
}
// Find groan sound. (zombie shot)
case Groan:
{
// Copy min and max
soundmin = SOUND_GROAN_MIN;
soundmax = SOUND_GROAN_MAX;
// Copy path
strcopy(soundpath, sizeof(soundpath), SOUND_GROAN_PATH);
}
// Find death sound.
case Death:
{
// Copy min and max
soundmin = SOUND_DEATH_MIN;
soundmax = SOUND_DEATH_MAX;
// Copy path
strcopy(soundpath, sizeof(soundpath), SOUND_DEATH_PATH);
}
// Invalid case given.
default:
{
// No handled case was given.
return false;
}
Добовляем ближе к концу,
PHP:
case Infect:
{
// Copy min and max
soundmin = SOUND_INF_MIN;
soundmax = SOUND_INF_MAX;
// Copy path
strcopy(soundpath, sizeof(soundpath), SOUND_INF_PATH);
}
И последний шаг, находим
PHP:
ZombieSoundsScream(client)
{
decl String:sound[PLATFORM_MAX_PATH];
GetConVarString(g_hCvarsList[CVAR_INFECT_SOUND], sound, sizeof(sound));
// If cvar contains path, then continue.
if (sound[0])
{
// Emit infect sound from infected client.
SEffectsEmitSoundFromClient(client, sound, SNDLEVEL_SCREAMING);
}
}
Заменяем всё на,
PHP:
ZombieSoundsScream(client)
{
// Get random moan sound.
decl String:sound[SOUND_MAX_PATH];
ZombieSoundsGetRandomSound(sound, Infect);
// Emit sound from client.
SEffectsEmitSoundFromClient(client, sound, SNDLEVEL_SCREAMING);
}
Вот и всё, если что пропустил поправлю.
Последнее редактирование: