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

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

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

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

Добрые скриптеры нужна Ваша помощь!

, При суициде проигрывается 1 соунд, а нужно несколько!
Статус пользователя Fresenius
сообщение 19.10.2011, 14:25
Сообщение #1


Стаж: 14 лет

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

При суициде проигрывается 1 соунд, а нужно несколько!

Вот исходник.

#include <amxmodx>

#define PLUGIN "Suicide Sound"
#define VERSION "1.0"
#define AUTHOR "Fresenius"

new SUI_SOUND[] = "misc/suicide3.wav";

public plugin_init()
{
register_plugin(PLUGIN , VERSION , AUTHOR);
register_event("DeathMsg" , "event_DeathMsg" , "a");
}

public plugin_precache()
precache_sound(SUI_SOUND);

public event_DeathMsg()
{
new killer = read_data(1);
new victim = read_data(2);

if((killer == victim || !killer) && is_user_connected(victim))
{
new name[33];
get_user_name(victim , name , 32);
client_print(0 , print_chat , "%s разбился" , name);
client_cmd(0 , "spk ^"%s^"" , SUI_SOUND);
}
}
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   Цитировать сообщение
FixX
сообщение 19.10.2011, 14:44
Сообщение #2
Стаж: 15 лет

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

скриптеров добрых не бывает
а теперь внятно обьясни, они должны проигрываться одновременно, последовательно, или рандомно один из них?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя H@ROS
сообщение 19.10.2011, 15:52
Сообщение #3


Стаж: 14 лет

Сообщений: 102
Благодарностей: 17
Полезность: 134

Цитата(FixX @ 19.10.2011, 15:44) *
скриптеров добрых не бывает
а теперь внятно обьясни, они должны проигрываться одновременно, последовательно, или рандомно один из них?

О каком одновременном проигрывании ты говоришь вообще? Ты сам то себе это представляешь?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Fresenius
сообщение 19.10.2011, 16:06
Сообщение #4


Стаж: 14 лет

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

RANDOM естественно
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Fresenius
сообщение 19.10.2011, 16:50
Сообщение #5


Стаж: 14 лет

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

Я так понял что знающих здесь нет!
Ну ладно и на том СПАСИБО
Всё равно жду вашей помощи!)))

Отредактировал: Fresenius, - 19.10.2011, 16:52
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя H@ROS
сообщение 19.10.2011, 23:30
Сообщение #6


Стаж: 14 лет

Сообщений: 102
Благодарностей: 17
Полезность: 134

Код
#include <amxmodx>

new killer
new victim

new const suicide_sound[][] =
{
        "misc/suicide1",
        "misc/suicide2",
        "misc/suicide3"
}

public plugin_init()
{
    register_plugin("Suicide Sound", "1.0", "HAROS")
    
    register_event("DeathMsg", "DeathSound", "a")
    
    killer = read_data(1)
    victim = read_data(2)
}

public plugin_precache()
{
    for(new i; i < sizeof(suicide_sound); i++)
        precache_sound(suicide_sound[i])
}

public DeathSound()
{
    if((killer == victim || !killer) && is_user_connected(victim))
    {
        new name[32]
        get_user_name(victim, name, charsmax(name))
        
        color_print(0, "!g%s !yразбился!", name)
        
        emit_sound(0, CHAN_AUTO, suicide_sound[random(3)], VOL_NORM, ATTN_NORM, 0, PITCH_NORM)
    }
}

stock color_print(id, const input[], any:...)
{
    new message[192], player, msg_type
    
    vformat(message, 191, input, 3)
    format(message, 191, "^1%s", message)
    replace_all(message, 191, "!g", "^4")
    replace_all(message, 191, "!y", "^1")
    replace_all(message, 191, "!t", "^3")
    message[191] = '^0'
    
    if(id)
    {
        player = id
        msg_type = MSG_ONE_UNRELIABLE
    }
    else
    {
        for(new i = 1; i <= get_maxplayers(); i++)
        {
            if(is_user_connected(i))
            {
                player = i
                break
            }
        }
        
        msg_type = MSG_BROADCAST
    }
    
    message_begin(msg_type, get_user_msgid("SayText"), _, player)
    write_byte(player)
    write_string(message)
    message_end()

    return 1
}

Пробуй.

Отредактировал: H@ROS, - 19.10.2011, 23:39
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя Fresenius
сообщение 20.10.2011, 14:18
Сообщение #7


Стаж: 14 лет

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

Цитата(H@ROS @ 20.10.2011, 0:30) *
Код
#include <amxmodx>

new killer
new victim

new const suicide_sound[][] =
{
        "misc/suicide1",
        "misc/suicide2",
        "misc/suicide3"
}

public plugin_init()
{
    register_plugin("Suicide Sound", "1.0", "HAROS")
    
    register_event("DeathMsg", "DeathSound", "a")
    
    killer = read_data(1)
    victim = read_data(2)
}

public plugin_precache()
{
    for(new i; i < sizeof(suicide_sound); i++)
        precache_sound(suicide_sound[i])
}

public DeathSound()
{
    if((killer == victim || !killer) && is_user_connected(victim))
    {
        new name[32]
        get_user_name(victim, name, charsmax(name))
        
        color_print(0, "!g%s !yразбился!", name)
        
        emit_sound(0, CHAN_AUTO, suicide_sound[random(3)], VOL_NORM, ATTN_NORM, 0, PITCH_NORM)
    }
}

stock color_print(id, const input[], any:...)
{
    new message[192], player, msg_type
    
    vformat(message, 191, input, 3)
    format(message, 191, "^1%s", message)
    replace_all(message, 191, "!g", "^4")
    replace_all(message, 191, "!y", "^1")
    replace_all(message, 191, "!t", "^3")
    message[191] = '^0'
    
    if(id)
    {
        player = id
        msg_type = MSG_ONE_UNRELIABLE
    }
    else
    {
        for(new i = 1; i <= get_maxplayers(); i++)
        {
            if(is_user_connected(i))
            {
                player = i
                break
            }
        }
        
        msg_type = MSG_BROADCAST
    }
    
    message_begin(msg_type, get_user_msgid("SayText"), _, player)
    write_byte(player)
    write_string(message)
    message_end()

    return 1
}

Пробуй.



Haros спасибо что помогаешь!
Но при суициде соунд не играет
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя H@ROS
сообщение 20.10.2011, 15:01
Сообщение #8


Стаж: 14 лет

Сообщений: 102
Благодарностей: 17
Полезность: 134

Код
#include <amxmodx>

new killer
new victim

new const suicide_sound[][] =
{
        "misc/suicide1.wav",
        "misc/suicide2.wav",
        "misc/suicide3.wav"
}

public plugin_init()
{
    register_plugin("Suicide Sound", "1.0", "HAROS")
    
    register_event("DeathMsg", "DeathSound", "a")
    
    killer = read_data(1)
    victim = read_data(2)
}

public plugin_precache()
{
    for(new i; i < sizeof(suicide_sound); i++)
        precache_sound(suicide_sound[i])
}

public DeathSound()
{
    if((killer == victim || !killer) && is_user_connected(victim))
    {
        new name[32]
        get_user_name(victim, name, charsmax(name))
        
        color_print(0, "!g%s !yразбился!", name)
        
        emit_sound(0, CHAN_AUTO, suicide_sound[random(3)], VOL_NORM, ATTN_NORM, 0, PITCH_NORM)
    }
}

stock color_print(id, const input[], any:...)
{
    new message[192], player, msg_type
    
    vformat(message, 191, input, 3)
    format(message, 191, "^1%s", message)
    replace_all(message, 191, "!g", "^4")
    replace_all(message, 191, "!y", "^1")
    replace_all(message, 191, "!t", "^3")
    message[191] = '^0'
    
    if(id)
    {
        player = id
        msg_type = MSG_ONE_UNRELIABLE
    }
    else
    {
        for(new i = 1; i <= get_maxplayers(); i++)
        {
            if(is_user_connected(i))
            {
                player = i
                break
            }
        }
        
        msg_type = MSG_BROADCAST
    }
    
    message_begin(msg_type, get_user_msgid("SayText"), _, player)
    write_byte(player)
    write_string(message)
    message_end()

    return 1
}

А так?

Отредактировал: H@ROS, - 20.10.2011, 15:02
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Fresenius
сообщение 20.10.2011, 17:12
Сообщение #9


Стаж: 14 лет

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

Цитата(H@ROS @ 20.10.2011, 16:01) *
Код
#include <amxmodx>

new killer
new victim

new const suicide_sound[][] =
{
        "misc/suicide1.wav",
        "misc/suicide2.wav",
        "misc/suicide3.wav"
}

public plugin_init()
{
    register_plugin("Suicide Sound", "1.0", "HAROS")
    
    register_event("DeathMsg", "DeathSound", "a")
    
    killer = read_data(1)
    victim = read_data(2)
}

public plugin_precache()
{
    for(new i; i < sizeof(suicide_sound); i++)
        precache_sound(suicide_sound[i])
}

public DeathSound()
{
    if((killer == victim || !killer) && is_user_connected(victim))
    {
        new name[32]
        get_user_name(victim, name, charsmax(name))
        
        color_print(0, "!g%s !yразбился!", name)
        
        emit_sound(0, CHAN_AUTO, suicide_sound[random(3)], VOL_NORM, ATTN_NORM, 0, PITCH_NORM)
    }
}

stock color_print(id, const input[], any:...)
{
    new message[192], player, msg_type
    
    vformat(message, 191, input, 3)
    format(message, 191, "^1%s", message)
    replace_all(message, 191, "!g", "^4")
    replace_all(message, 191, "!y", "^1")
    replace_all(message, 191, "!t", "^3")
    message[191] = '^0'
    
    if(id)
    {
        player = id
        msg_type = MSG_ONE_UNRELIABLE
    }
    else
    {
        for(new i = 1; i <= get_maxplayers(); i++)
        {
            if(is_user_connected(i))
            {
                player = i
                break
            }
        }
        
        msg_type = MSG_BROADCAST
    }
    
    message_begin(msg_type, get_user_msgid("SayText"), _, player)
    write_byte(player)
    write_string(message)
    message_end()

    return 1
}

А так?

НЕА блин шо за хня?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Trollface_and_facepalm
сообщение 20.10.2011, 17:52
Сообщение #10


Стаж: 14 лет

Сообщений: 152
Благодарностей: 100
Полезность: 907

Цитата
public plugin_init()
{
killer = read_data(1)
victim = read_data(2)
}

LOL


!
Аккаунт пользователя заблокирован до: 17.7.273792712, 21:44
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Cracky
сообщение 20.10.2011, 20:31
Сообщение #11


Стаж: 15 лет

Сообщений: 768
Благодарностей: 197
Полезность: 506

правал
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя levenus
сообщение 20.10.2011, 22:05
Сообщение #12


Стаж: 15 лет

Сообщений: 34
Благодарностей: 19
Полезность: 426

Цитата
#include <amxmodx>

#define PLUGIN "Suicide Sound"
#define VERSION "1.0"
#define AUTHOR "Fresenius"

#pragma tabsize 0

new SUI_SOUND[3][] = {"misc/suicide3.wav", "misc/suicide4.wav", "misc/suicide5.wav"};
new last_random

public plugin_init()
{
register_plugin(PLUGIN , VERSION , AUTHOR);
register_event("DeathMsg" , "event_DeathMsg" , "a");
}

public plugin_precache()
{
for(new i = 0; i<=charsmax(SUI_SOUND); i++)
precache_sound(SUI_SOUND[i]);
}

public event_DeathMsg()
{
new killer = read_data(1);
new victim = read_data(2);

if((killer == victim || !killer) && is_user_connected(victim))
{
new name[33];
get_user_name(victim , name , 32);
client_print(0 , print_chat , "%s разбился" , name);

new iRandom_num = random_num(0,charsmax(SUI_SOUND))

while(last_random == iRandom_num)
iRandom_num = random_num(0,charsmax(SUI_SOUND))

last_random = iRandom_num

client_cmd(0 , "spk ^"%s^"" , SUI_SOUND[iRandom_num]);
}
}

Что б добавить ещё один звук, нужно увеличить размер массива и добавить звук :|

Отредактировал: levenus, - 20.10.2011, 22:13
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
  Тема закрытаНачать новую тему
 
0 пользователей и 1 гостей читают эту тему: