Способ вставить голос в jbextreme 100%-ый

Архів · 2013 igorek105120 Статті 2 264

Архівний матеріал ya-cs.ru (2013). Російською. Плагіни й збірки можуть не працювати з ReHLDS та AMXX 1.10.

Описание: Как же вставить голос в jbextreme новый способ для CS 1.6 JB

Всем привет, бродил я по интернету в поисках вопроса как встроить голоса в мод jbextreme но все попытки встроить голос в мод кончались неудачей и я подправил кое-что вроде получилось)
1 Регистрируем команду и ставим любую функцию
вот пример:

Спойлер

register_clcmd(“say /voice”, “cmd_simon_micr”)

2 Регистрируем глобал переменную : new g_PlayerVoice
3 Создаем функцию которую мы указали в команде в моем случае public cmd_simon_micr(id)
4 В него вставляем следующее:

Спойлер

{
if (g_Simon == id || is_user_admin(id))
{
menu_players(id, CS_TEAM_T, 0, 1, “voice_enable_select”, “%L”, LANG_SERVER, “MENU_VOICE”)

}
}

тут стоит проверка на саймона и админа,следующая функция и название меню выдачи голоса которое вы можете поменять : заходим в jbextreme.txt пишем туда MENU_VOICE = “Название меню”
5 Создаем само меню):

Спойлер

public voice_enable_select(id, menu, item)
{

if(item == MENU_EXIT)
{
menu_destroy(menu)
return PLUGIN_HANDLED
}

static dst[32], data[5], player, access, callback

menu_item_getinfo(menu, item, access, data, charsmax(data), dst, charsmax(dst), callback)
player = str_to_num(data)
enable_player_voice(id, player)
return PLUGIN_HANDLED
}

6 И самое главное функцию самой выдачи и вывода сообщения о том кто и кому выдал голос:

Спойлер

public enable_player_voice(id, player)
{
static src[32], dst[32]
get_user_name(player, dst, charsmax(dst))

if (!get_bit(g_PlayerVoice, player))

{
set_bit(g_PlayerVoice, player)
if(0 {
get_user_name(id, src, charsmax(src))
player_hudmessage(0, 6, 3.0, {010, 010, 250}, “%L”, LANG_SERVER, “VOICEENABLED”, src, dst)
}
}

else

{
clear_bit(g_PlayerVoice, player)
if(0 {
get_user_name(id, src, charsmax(src))
player_hudmessage(0, 6, 3.0, {250, 010, 250}, “%L”, LANG_SERVER, “VOICEDISABLED”, src, dst)
}

}

7 Что бы показывало кто и кому выдал голос пишем в jbextreme.txt : VOICEDISABLED = %s отобрал голос у %
VOICEENABLED = %s разрешил говорить %s
Кое-что забыл важное:
Ищем паблик public voice_listening(receiver, sender, bool:listen)
Спускаемся до

Спойлер

if(sender == g_Simon)
{
engfunc(EngFunc_SetClientListening, receiver, sender, true)
return FMRES_SUPERCEDE
}

После него вставляем это:

Спойлер

if(get_bit(g_PlayerVoice, sender))
{
engfunc(EngFunc_SetClientListening, receiver, sender, true)
return FMRES_SUPERCEDE
}

Да после этой проверки должно стоять вот это:listen = true
Вот и все) Компилим и профит)

Мітки:

Коментарі 7

  1. Legalize

    100% способ? Да ладно? Если так, то ты его сделай и скомпилируй. И будет ошибка на "g_PlayerVoice". Сто процентный бле…

    Відповісти

  2. vlao19

    ModZona55.sma(750) : error 017: undefined symbol "fm_set_user_rendering"
    ModZona55.sma(751) : error 017: undefined symbol "fm_set_user_rendering"
    ModZona55.sma(1946) : error 029: invalid expression, assumed zero
    ModZona55.sma(1946) : error 017: undefined symbol "voice_enable_select"
    ModZona55.sma(1946) : error 017: undefined symbol "item"
    ModZona55.sma(1946) : fatal error 107: too many error messages on one line

    Відповісти

Ваш коментар

Коментар з’явиться після перевірки. E-mail не публікується.