Дата поста:
В теме:
За сообщение:
Спасибо сказали:
28.6.2016, 22:37
Платная графика от VR.prod
Обратился за шаблоном на лаунчер, до какой бы степени моей дотошности, работа была выполнена на отлично, рекомендую всем, буду обращаться впредь
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
Всех благ
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
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
написал костыль на дублирование звука, плагин не зависим от мода, пойдет даже на паблике, хотя смысла его там я не вижу
в плагине реализовано 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