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

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

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

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

Не могу понять

vip-servera
сообщение 14.6.2011, 11:07
Сообщение #1
Стаж: 15 лет

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

Вот плагин который воспроизводить звук когда админ зашел вот только звук не воспроизвожит
*
Код
#include <amxmodx>

// Registering plug-in
#define PLUGIN "Admin on"
#define VERSION "1.0"        
#define AUTHOR "test02"

// Constants section. Comment '//' defines to disable feature
#define ANN2HUD        // show hud message when admin connected
#define ANN2CHAT    // show hud message when best player connected (need ps_stats base)
#define PLAYSND        // play sound then admin connected

//================================================================

#if defined ANN2CHAT

#define A_CONNECT "^x04 Начальник ^x01[^x03%s^x01] ^x04Пришел!!!"

enum ChatColor
{
    CHATCOLOR_YELLOW = 1,     // Yellow
    CHATCOLOR_GREEN,     // Green Color
    CHATCOLOR_TEAM_COLOR,     // Red, grey, blue
    CHATCOLOR_GREY,     // grey
    CHATCOLOR_RED,         // Red
    CHATCOLOR_BLUE,     // Blue
}

new g_TeamName[][] =
{
    "",
    "TERRORIST",
    "CT",
    "SPECTATOR"
}

new g_msgSayText
new g_msgTeamInfo
#endif

#if defined PLAYSND
new sound[] = "radio/vip.wav"
#endif

public client_putinserver(id) {
    new name[32], sflags[32]
    
          get_user_name(id,name,31)
    get_flags(get_user_flags(id),sflags,31)
    
    #if defined ANN2HUD
    new text[128]
    
    format(text,127,"Админ %s Зашел!", name)
    if (contain(sflags,"l")!=-1)
    {
        set_hudmessage(255, 0, 32, 0.05, 0.60, 1, 5.0, 5.0, 0.3, 0.3, 3)
        show_hudmessage(0,"%s",text)
    }
    else if (contain(sflags,"cde")!=-1)
    {
        set_hudmessage(0, 100, 255, 0.05, 0.60, 1, 5.0, 5.0, 0.7, 0.7, 3)
        show_hudmessage(0,"%s",text)
    }
    #endif

    #if defined ANN2CHAT
    if (contain(sflags,"l")!=-1)
    {
        colorChat(0, CHATCOLOR_RED, A_CONNECT, name)
    }
    else if (contain(sflags,"cde")!=-1)
    {
        colorChat(0, CHATCOLOR_BLUE, A_CONNECT, name)
    }
    #endif
    
    #if defined PLAYSND
    if (contain(sflags,"l")!=-1 || contain(sflags,"cde")!=-1)
    {
        playsound ()
    }
    #endif

    return PLUGIN_CONTINUE
}

#if defined ANN2CHAT
// Функция ColorChat с***жена с http://forums.alliedmods.net/showthread.php?t=45753,
// за что им огромное спасиба!
colorChat(id, ChatColor:color, const msg[], {Float,Sql,Result,_}:...) {
    new team, index, MSG_Type
    new bool:teamChanged = false
    new message[192]

    switch(color)
    {
    case CHATCOLOR_YELLOW: // Yellow
    {
        message[0] = 0x01;
    }
    case CHATCOLOR_GREEN: // Green
    {
        message[0] = 0x04;
    }
    default: // Grey, Red, Blue
    {
        message[0] = 0x03;
    }
    }

    vformat(message[1], 190, msg, 4);

    if (id == 0)
    {
        index = findAnyPlayer();
        MSG_Type = MSG_ALL;
    }
    else
    {
        index = id;
        MSG_Type = MSG_ONE;
    }
    
    if (index != 0)
    {
        team = get_user_team(index);    
        if (color == CHATCOLOR_RED && team != 1)
        {
            messageTeamInfo(index, MSG_Type, g_TeamName[1])
            teamChanged = true
        }
        else if (color == CHATCOLOR_BLUE && team != 2)
        {
            messageTeamInfo(index, MSG_Type, g_TeamName[2])
            teamChanged = true
        }
        else if (color == CHATCOLOR_GREY && team != 0)
        {
            messageTeamInfo(index, MSG_Type, g_TeamName[0])
            teamChanged = true
        }
        messageSayText(index, MSG_Type, message);
        if (teamChanged)
        {
            messageTeamInfo(index, MSG_Type, g_TeamName[team]);
        }
    }
}

messageSayText(id, type, message[])
{
    message_begin(type, g_msgSayText, _, id)
    write_byte(id)        
    write_string(message)
    message_end()
}

messageTeamInfo(id, type, team[])
{
    message_begin(type, g_msgTeamInfo, _, id)
    write_byte(id)
    write_string(team)
    message_end()
}

findAnyPlayer()
{
    new players[32], inum
    
    get_players(players, inum)
    
    for (new a = 0; a < inum; ++a)
    {
        if(is_user_connected(players[a]))
            return players[a];
    }

    return 0
}
#endif

#if defined PLAYSND
public plugin_precache()  
{

    
    return PLUGIN_CONTINUE
}  

playsound()
{
    client_cmd(0 , "stopsound")
    client_cmd(0, "spk ^"%s^"",sound)
}
#endif

public plugin_init() {
    register_plugin(PLUGIN, VERSION, AUTHOR)
    
    #if defined ANN2CHAT
    g_msgSayText = get_user_msgid("SayText")
    g_msgTeamInfo = get_user_msgid("TeamInfo")
    #endif
    
    return PLUGIN_CONTINUE
}
/* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
*{\\ rtf1\\ ansi\\ deff0{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ lang1049\\ f0\\ fs18 \n\\ par }
*/
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   Цитировать сообщение
Asmodai
сообщение 14.6.2011, 11:56
Сообщение #2
Стаж: 15 лет

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

Аа это стандартный. Тогда не знаю.

Отредактировал: Asmodai, - 14.6.2011, 11:59
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Rejiser
сообщение 14.6.2011, 12:11
Сообщение #3


Стаж: 15 лет

Сообщений: 2261
Благодарностей: 1068
Полезность: 870

vip-servera, уверен? ты этот звук слышал? Это из радио команд звук, воспроизведи сам в консоли:
Код
spk radio/vip.wav

Видимо ты на него просто внимания не обращаешь.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
vip-servera
сообщение 14.6.2011, 15:28
Сообщение #4
Стаж: 15 лет

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

Rejiser,
Да у меня так воспроизводит а вот на плагине чето нет
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Doogle
сообщение 14.6.2011, 17:19
Сообщение #5


Стаж: 15 лет

Сообщений: 345
Благодарностей: 93
Полезность: 75

vip-servera,
Во первых не увидел скачки звука клиенту.

Замени
Код
new sound[] = "radio/vip.wav"

->>

Код
new const gs_sound[] = "radio/vip.wav"


В public client_putinserver добавь
Код
client_cmd(0, "spk %s", gs_sound)


И также добавь загрузку на клиент
Код
public plugin_precache()
{    
precache_sound(gs_sound)
}



Вообще исходник огромен и корявый для столь легкой затеи...

Отредактировал: Doogle, - 14.6.2011, 17:29
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
vip-servera
сообщение 14.6.2011, 18:31
Сообщение #6
Стаж: 15 лет

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

есть идея сделать его менньше?

тогда это должнно быть так
Код
client_cmd(0, "spk ^"%s^"",gs_sound)
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Rejiser
сообщение 14.6.2011, 18:45
Сообщение #7


Стаж: 15 лет

Сообщений: 2261
Благодарностей: 1068
Полезность: 870

Код
client_cmd(0, "spk %s", gs_sound)
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Doogle
сообщение 14.6.2011, 19:25
Сообщение #8


Стаж: 15 лет

Сообщений: 345
Благодарностей: 93
Полезность: 75

vip-servera,
Я тебе все правильно написал, тебе остается добавить\изменить.

Нужно меньше, пиши в скриптинг.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
vip-servera
сообщение 14.6.2011, 19:50
Сообщение #9
Стаж: 15 лет

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

тепер в чат выходит 2 раза подряд сообшение
*плагин
Код
#include <amxmodx>

// Registering plug-in
#define PLUGIN "Admin on"
#define VERSION "1.0"        
#define AUTHOR "test02"

// Constants section. Comment '//' defines to disable feature
#define ANN2HUD        // show hud message when admin connected
#define ANN2CHAT    // show hud message when best player connected (need ps_stats base)
#define PLAYSND        // play sound then admin connected

//================================================================

#if defined ANN2CHAT

#define A_CONNECT "^x04 Начальник ^x01[^x03%s^x01] ^x04Пришел!!!"

enum ChatColor
{
    CHATCOLOR_YELLOW = 1,     // Yellow
    CHATCOLOR_GREEN,     // Green Color
    CHATCOLOR_TEAM_COLOR,     // Red, grey, blue
    CHATCOLOR_GREY,     // grey
    CHATCOLOR_RED,         // Red
    CHATCOLOR_BLUE,     // Blue
}

new g_TeamName[][] =
{
    "",
    "TERRORIST",
    "CT",
    "SPECTATOR"
}

new g_msgSayText
new g_msgTeamInfo
#endif

#if defined PLAYSND
new const gs_sound[] = "radio/vip.wav"
#endif

public client_putinserver(id) {
  
     new name[32], sflags[32]
    
          get_user_name(id,name,31)
    get_flags(get_user_flags(id),sflags,31)
    
    #if defined ANN2HUD
    new text[128]

    
    format(text,127,"Начальник %s Зашел!", name)
    if (contain(sflags,"d")!=-1)
    {
        set_hudmessage(255, 0, 32, 0.05, 0.60, 1, 5.0, 5.0, 0.3, 0.3, 3)
        show_hudmessage(0,"%s",text)
    }
    else if (contain(sflags,"b")!=-1)
    {
        set_hudmessage(0, 100, 255, 0.05, 0.60, 1, 5.0, 5.0, 0.7, 0.7, 3)
        show_hudmessage(0,"%s",text)
    }
    #endif

    #if defined ANN2CHAT
    if (contain(sflags,"d")!=-1)
    {
        colorChat(0, CHATCOLOR_RED, A_CONNECT, name)
    }
    else if (contain(sflags,"b")!=-1)
    {
        colorChat(0, CHATCOLOR_BLUE, A_CONNECT, name)
    }
    #endif
    
    #if defined PLAYSND
    if (contain(sflags,"d")!=-1 || contain(sflags,"b")!=-1)
    {
    client_cmd(0, "spk %s", gs_sound)
    }
    #endif

    return PLUGIN_CONTINUE
}

#if defined ANN2CHAT
// Функция ColorChat с***жена с http://forums.alliedmods.net/showthread.php?t=45753,
// за что им огромное спасиба!
colorChat(id, ChatColor:color, const msg[], {Float,Sql,Result,_}:...) {
    new team, index, MSG_Type
    new bool:teamChanged = false
    new message[192]

    switch(color)
    {
    case CHATCOLOR_YELLOW: // Yellow
    {
        message[0] = 0x01;
    }
    case CHATCOLOR_GREEN: // Green
    {
        message[0] = 0x04;
    }
    default: // Grey, Red, Blue
    {
        message[0] = 0x03;
    }
    }

    vformat(message[1], 190, msg, 4);

    if (id == 0)
    {
        index = findAnyPlayer();
        MSG_Type = MSG_ALL;
    }
    else
    {
        index = id;
        MSG_Type = MSG_ONE;
    }
    
    if (index != 0)
    {
        team = get_user_team(index);    
        if (color == CHATCOLOR_RED && team != 1)
        {
            messageTeamInfo(index, MSG_Type, g_TeamName[1])
            teamChanged = true
        }
        else if (color == CHATCOLOR_BLUE && team != 2)
        {
            messageTeamInfo(index, MSG_Type, g_TeamName[2])
            teamChanged = true
        }
        else if (color == CHATCOLOR_GREY && team != 0)
        {
            messageTeamInfo(index, MSG_Type, g_TeamName[0])
            teamChanged = true
        }
        messageSayText(index, MSG_Type, message);
        if (teamChanged)
        {
            messageTeamInfo(index, MSG_Type, g_TeamName[team]);
        }
    }
}

messageSayText(id, type, message[])
{
    message_begin(type, g_msgSayText, _, id)
    write_byte(id)        
    write_string(message)
    message_end()
}

messageTeamInfo(id, type, team[])
{
    message_begin(type, g_msgTeamInfo, _, id)
    write_byte(id)
    write_string(team)
    message_end()
}

findAnyPlayer()
{
    new players[32], inum
    
    get_players(players, inum)
    
    for (new a = 0; a < inum; ++a)
    {
        if(is_user_connected(players[a]))
            return players[a];
    }

    return 0
}
#endif

#if defined PLAYSND
public plugin_precache()  
{
precache_sound(gs_sound)
    
    return PLUGIN_CONTINUE
}  

playsound()
{
    client_cmd(0 , "stopsound")
    client_cmd(0, "spk %s", gs_sound)
}
#endif

public plugin_init() {
    register_plugin(PLUGIN, VERSION, AUTHOR)
    
    #if defined ANN2CHAT
    g_msgSayText = get_user_msgid("SayText")
    g_msgTeamInfo = get_user_msgid("TeamInfo")
    #endif
    
    return PLUGIN_CONTINUE
}
/* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
*{ rtf1 ansi deff0{ fonttbl{ f0 fnil Tahoma;}}n viewkind4 uc1 pard lang1049 f0 fs18 n par }
*/
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
vip-servera
сообщение 14.6.2011, 20:08
Сообщение #10
Стаж: 15 лет

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

а не не надо исправлять прикольно получилос даже
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
vip-servera
сообщение 14.6.2011, 20:32
Сообщение #11
Стаж: 15 лет

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

))

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