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

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

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

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

История благодарностей участнику igas ::: Спасибо сказали: 52
Дата поста: В теме: За сообщение: Спасибо сказали:
28.6.2016, 22:37 Платная графика от VR.prod
Обратился за шаблоном на лаунчер, до какой бы степени моей дотошности, работа была выполнена на отлично, рекомендую всем, буду обращаться впредь clapping.gif smile.gif
vRpRoD
20.5.2015, 19:07 кодировка текста в ланг файле
ALTnick, Код:
[ru]
LVL_1 = Рядовой
LVL_2 = Ефрейтор
LVL_3 = Мл. сержант
LVL_4 = Сержант
LVL_5 = Ст. сержант
LVL_6 = Старшина
LVL_7 = Прапорщик
LVL_8 = Ст. прапорщик
LVL_9 = Мл. лейтенант
LVL_10 = Лейтенант
LVL_11 = Ст. лейтенант
LVL_12 = Капитан
LVL_13 = Майор
LVL_14 = Подполковник
LVL_15 = Полковник
LVL_16 = Генерал-майор
LVL_17 = Генерал-лейтенант
LVL_18 = Генерал-полковник
LVL_19 = Генерал армии
LVL_20 = Маршал
ALTnick
25.4.2015, 14:40 Инфа из файла
парсить строку через PARSE
GOOD FELLOW
7.4.2015, 22:33 GTA 5 слили?
IGM еще тот паблик, сегодня началась предзагрузка гта5 официально
Скрытый текст
ssx
22.2.2015, 17:32 С Днём Рождения, Bloo
give_rose.gif
Всех благ
Bloo, iShot, ssx
16.2.2015, 13:33 Вопрос по get_user_flags
VBOY, добавить проверку на админа
Скрытый текст
Код:
public player_killed(victim, killer, corpse)
{
static const m_LastHitGroup = 75

if(is_user_cool(victim))
if(!g_chosen[victim])
set_task(1.0, "first_menu", victim)

if(is_user_cool(killer))
{
if(is_user_alive(killer) && is_user_admin(killer))
{
if( get_pdata_int( victim, m_LastHitGroup ) == HIT_HEAD)
{
set_user_health(killer, get_user_health(killer) + get_pcvar_num(cvar_health_head))
if(get_user_health(killer) > get_pcvar_num(cvar_health_max))
set_user_health(killer, get_pcvar_num(cvar_health_max))
cs_set_user_money(killer, cs_get_user_money(killer) + get_pcvar_num(cvar_money_head))
}
else
{
set_user_health(killer, get_user_health(killer) + get_pcvar_num(cvar_health))
if(get_user_health(killer) > get_pcvar_num(cvar_health_max))
set_user_health(killer, get_pcvar_num(cvar_health_max))
cs_set_user_money(killer, cs_get_user_money(killer) + get_pcvar_num(cvar_money))
}
}
}
}
VBOY
5.2.2015, 23:00 Плагин Админ меню
я не расслышал, приватный?, если не забуду, завтра залью динамическое меню, в нем нет необходимости прописывать в исходник каждый пункт, все настраивается в .ini файле, думаю добавить проверку на флаг игрока
Скрытый текст
Bloo, MiXa
5.2.2015, 21:51 простенький и красивый /mute
knix, держи, делал скромный мут для себя, в отличие от других:
- не показывает себя в списке
- возможность одной кнопкой дать\снять всем мут
- в меню показывает кому дан мут
- админам показывает кто администратор ( ник *)
- в зависимости какой присвоен квар sv_alltalk, отображаются игроки (команда\все)
- простой и легкий

Скрытый текст
Код:
#include <amxmodx>
#include <amxmisc>
#include <fakemeta>

#define ADMIN_FLAG ADMIN_BAN

new const m_iMenu = 205

enum base_
{
c_player[32],
c_name[32],
c_page,
c_num
}
new data[33][base_]
new bool:g_bPlayerMute[33][33], bool:g_bMuteAll[33]
new g_cvar_alltalk

public plugin_init()
{
register_plugin(
"Mute Menu",
"1.0",
"Rjava"
)

new cvar_alltalk
new szCommand[][] = {
"say /mute",
"say_team /mute"
}

for(new i = 0; i < sizeof szCommand; i++)
register_clcmd(szCommand[i], "cmdMuteMenu")

register_dictionary("addon_mute_menu.txt")
cvar_alltalk = get_cvar_pointer("sv_alltalk")
g_cvar_alltalk = get_pcvar_num(cvar_alltalk)
register_forward(FM_Voice_SetClientListening, "fwd_voice_setclientlistening")
register_menucmd(register_menuid("PlayerMenu"), 1023, "MenuHandler")
}

public cmdMuteMenu(id)
{
fnShowMenu(id, data[id][c_page] = 0)
return PLUGIN_HANDLED
}

public client_connect(id)
{
g_bMuteAll[id] = false
arrayset(g_bPlayerMute[id], false, sizeof g_bPlayerMute[])

}
public client_disconnect(id)
{
g_bMuteAll[id] = false
arrayset(g_bPlayerMute[id], false, sizeof g_bPlayerMute[])
}

public fnShowMenu(id, iPage)
{
if(iPage < 0)
return PLUGIN_HANDLED

new iPlayers[32], iPlayer, iNum, iMute, iItem, i
new szMenu[512], szName[32], szTeam[32]

get_user_team(id, szTeam, charsmax(szTeam))
get_players(iPlayers, iNum, g_cvar_alltalk ? "h":"eh", g_cvar_alltalk ? "":szTeam)

data[id][c_num] = 0
data[id][c_page] = iPage

for(i = 0; i < iNum; i++){
iPlayer = iPlayers[i]

if(id != iPlayer)
data[id][c_player][data[id][c_num]++] = iPlayer

get_user_name(iPlayer, data[iPlayer][c_name], charsmax(data[][c_name]))
}

if(data[id][c_num] <= 0){
set_hudmessage(0, 255, 50, -1.0, 0.35, 0, 0.0, 2.0, 0.0, 1.0, -1)
show_hudmessage(id, "%L", id, "#MuteNoPlayer")
return PLUGIN_HANDLED
}

i = min(iPage * 7, data[id][c_num])
new iStart = i - (i % 7)
new iEnd = min(iStart + 7, data[id][c_num])
iPage = iStart / 7

new iLen = formatex(szMenu, charsmax(szMenu), "\y%L^n^n", id, "#MuteMenuTitle")
new iKeys = MENU_KEY_0

for(i = iStart; i < iEnd; ++i){
if(i < data[id][c_num]){
iKeys |= (1 << iItem)
iPlayer = data[id][c_player][i]
iMute = g_bPlayerMute[id][iPlayer]
copy(szName, charsmax(szName), data[iPlayer][c_name])

if((get_user_flags(id) & ADMIN_FLAG) && (get_user_flags(iPlayer) & ADMIN_FLAG))
add(szName, charsmax(szName), "^t\r*")

if(iMute)
iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r[\w%d\r].\w^t%s^t%L^n", ++iItem, szName, id, "#Muted")
else
iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r[\w%d\r].\w^t%s^n", ++iItem, szName)
} else {
iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen,"^n")
++iItem
}
}

iKeys |= MENU_KEY_8
iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "^n\r[\w8\r].^t\y%L^n", id, g_bMuteAll[id] ? "#UnmuteAll":"#MuteAll")

if(iEnd < data[id][c_num]){
iKeys |= MENU_KEY_9
iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "^n\r[\w9\r].^t\w%L^n\r[\w0\r].^t\w%L", id, "#MuteNext", id, iPage ? "#MuteBack":"#MuteExit")
} else
iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "^n\r[\w0\r].^t\w%L", id, iPage ? "#MuteBack":"#MuteExit")

set_pdata_int(id, m_iMenu, 0)
return show_menu(id, iKeys, szMenu, -1, "PlayerMenu")
}

public MenuHandler(id, iKeys)
{
switch(iKeys){
case 7:{
g_bMuteAll[id] = !g_bMuteAll[id]
arrayset(g_bPlayerMute[id], g_bMuteAll[id], sizeof g_bPlayerMute[])
}
case 8: fnShowMenu(id, ++data[id][c_page])
case 9: fnShowMenu(id, --data[id][c_page])
default:{
new iPlayer = data[id][c_player][data[id][c_page] * 7 + iKeys]
g_bPlayerMute[id][iPlayer] = !g_bPlayerMute[id][iPlayer]
fnShowMenu(id, data[id][c_page])
}
}
return PLUGIN_HANDLED
}

public fwd_voice_setclientlistening(receiver, sender, listen)
{
if(receiver == sender)
return FMRES_IGNORED

if(g_bPlayerMute[receiver][sender])
{
engfunc(EngFunc_SetClientListening, receiver, sender, 0)
return FMRES_SUPERCEDE
}
return FMRES_IGNORED
}
9art, ahmetbro, Bloo, etkins, knix, marik, OFanok, ozmosis, popen021, r1nk0, tenb63rus
7.10.2014, 20:13 Counter-Strike Nexon: Zombies
Bloo,
Оф. релиз
Bloo
7.10.2014, 17:12 Counter-Strike Nexon: Zombies
Игра будет доступна в Steam`e сегодня в 20:00 по московскому времени.
Bloo
25.7.2014, 19:18 if + запросы
Код:
/* Gets player authid. */
native get_user_authid(index, authid[] ,len);
OverGame
24.7.2014, 11:06 Единая база халявы Steam
извиняюсь что не совсем по теме и не Steam, но все таки халява

Введите в поле для активации игр Origin
Код
I-LOVE-THE-SIMS

Получите "The SIMS 2 Полная Коллекция" бесплатно.
Bloo, damilurg, HoHoL, IORoK, TEROR^, X*CaHeK*X
14.7.2014, 0:03 [Metamod] WHBlocker 1.5.692
chemodann,
прочитайте все 109 страниц и передайте, тому кто вам говорил о лагах, что он глубоко заблуждается и распространяет ложную информацию
Safety1st, X*CaHeK*X
27.6.2014, 11:41 Ищем карты по скриншотам
Safety1st,
awp_park2005
Safety1st
27.6.2014, 1:47 Emit_sound
ssx,
хм, странно,
Код:
CHAN_STREAM
должен был работать,
Код:
 CHAN_VOICE
тоже оптимальный вариант, но у него есть 1 минус, если игрок получит урон, воспроизведение звука прекратится
ssx
26.6.2014, 18:10 Emit_sound
выложите полностью скрипт, мой вариант вывода звука правильный
emit_sound


upd...
забирай
на будущее
Код:
SND_STOP

останавливает звук
ssx
3.6.2014, 0:14 [Заказ] Звания HLStatsX
Bloo, если нужно поднять выше, уменьшай значение Y
Код:
X: 0.95 
Y: 0.91
Bloo
15.5.2014, 22:37 [Metamod] WHBlocker 1.5.692
написал костыль на дублирование звука, плагин не зависим от мода, пойдет даже на паблике, хотя смысла его там я не вижу smile.gif
в плагине реализовано 2 события, через которых выводится звук "gunpickup2"
Ham_AddPlayerItem - отлов события выдачи итема игроку
Ham_Spawn - отлов события спауна (сам использую его)
разница между ними:
Ham_AddPlayerItem - воспроизводит звук для каждого выданного итема,
Ham_Spawn - 1 раз при спауне (минус в том что не воспроизводится звук поднятия итема),
и собственно настройка задержка звука.

Писал для своего сервера, можете пинать

Исходник
Код:
/* 
* 1.0 - набросок кода
* 1.1 - фикс дублирование звука на месте смерти игрока, выполнение функции play_sound(index) через таск
* 1.2 - добавлен Ham_AddPlayerItem
* 1.3 - добавлен выбор использования события, мелкие фиксы
*/

#include <amxmodx>
#include <amxmisc>
#include <fakemeta>
#include <hamsandwich>

/* Расскоментируйте "HAM_ADD_PLAYER_ITEM", чтобы использовать отлов выдачи оружия
или закоментируйте, чтобы использовать отлов спауна */
// #define HAM_ADD_PLAYER_ITEM
/* -------------------------------------------- */

/* Расскоментируйте "DELAY", чтобы включить задержку звука */
#define DELAY
/* -------------------------------------------- */

#if defined DELAY
const Float:delay = 0.1 // Время задержки
#endif
/* -------------------------------------------- */

new INFO_PLUGIN[][] = { "CSDM Spawns Fix Sound", "1.3", "Rjava (Igas)" }
/* -------------------------------------------- */

new gunpickup[][] = {
"items/gunpickup2.wav",
"misc/csdm_gunpickup.wav"
}
/* -------------------------------------------- */

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

public plugin_init()
{
register_plugin(INFO_PLUGIN[0], INFO_PLUGIN[1], INFO_PLUGIN[2])
register_forward(FM_EmitSound, "fw_EmitSound")

#if defined HAM_ADD_PLAYER_ITEM
RegisterHam(Ham_AddPlayerItem, "player", "fw_Hams") // Отлов выдачи оружия
#else
RegisterHam(Ham_Spawn, "player", "fw_Hams", 1) // Отлов спауна
#endif
}

public fw_EmitSound(ent, channel, const sound[])
{
if (equal(sound, gunpickup[0]))
return FMRES_SUPERCEDE

return FMRES_IGNORED
}

public fw_Hams(id)
{
if(is_user_connected(id) && is_user_alive(id)){
#if defined DELAY
set_task(delay, "play_sound", id)
#else
play_sound(id)
#endif
}
}

public play_sound(id)
{
emit_sound(id, CHAN_VOICE, gunpickup[1], VOL_NORM, ATTN_NORM, 0, PITCH_NORM)
}
s1lent
13.5.2014, 22:20 [Metamod] WHBlocker 1.5.692
Цитата(plamont @ 13.5.2014, 22:18) *
т.е на 1.5.150 есть ?

да, с версии 1.5 появились, не было времени раньше написать, только сейчас руки добрались
s1lent
23.3.2014, 12:12 [Metamod] WHBlocker 1.5.692
Цитата(plamont @ 23.3.2014, 6:40) *
Paster, igas есть возможность предоставить тест?

есть
Paster, s1lent

2 страниц V   1 2