Плагин на иммунитет админа

Плагин на иммунитет админа thumbnail

#1
Плагин на иммунитет админа

alcatraz_ua_

Отправлено 20 Июль 2014 — 13:24

У меня админка root, я прописываю себе sv_cheats 1 далее r_drawothermodels 2 (эт как бы вх от css)
Стоит античит: Kigen’s Anti-Cheat (1.2.2.9.8.4) for CSS v.34

Проходит около 3-4 мин, он меня банит за читы.
Как сделать мне имуннитет?

#2
Плагин на иммунитет админа

wanek17

Отправлено 20 Июль 2014 — 14:38

убери античит и будет тебе счастье

#3
Плагин на иммунитет админа

alcatraz_ua_

Отправлено 20 Июль 2014 — 14:56

убери античит и будет тебе счастье

Думаю мог бы догадаться что я не хочу его удалять.

#4
Плагин на иммунитет админа

LORD

Отправлено 21 Июль 2014 — 18:34

alcatraz_ua_+ВХ=БОТ ! ! !

#5
Плагин на иммунитет админа

alcatraz_ua_

Отправлено 22 Июль 2014 — 1:52

Мне это нужно для того чтобы следить за ВХ (плохими людьми)

#6
Плагин на иммунитет админа

wait-angel

Отправлено 22 Июль 2014 — 17:51

Как вариант, попробуй изменить значение переменной kac_cvars на 1. Проверять cvar все, кроме sv_cheats.

#7
Плагин на иммунитет админа

LORD

Отправлено 26 Июль 2014 — 1:06

Мне это нужно для того чтобы следить за ВХ (плохими людьми)

Ну-да конечно кому ты расказываешь,,,БОШМАК!!!

#8
Плагин на иммунитет админа

ruskydubl

Отправлено 26 Июль 2014 — 10:10

У меня админка root, я прописываю себе sv_cheats 1 далее r_drawothermodels 2 (эт как бы вх от css)
Стоит античит: Kigen’s Anti-Cheat (1.2.2.9.8.4) for CSS v.34

Проходит около 3-4 мин, он меня банит за читы.
Как сделать мне имуннитет?

Ставишь имунитет 99 и флаг z <- главная админка

Ставишь имунитет 97 и все флаги кроме z <- обычный админ

#9
Плагин на иммунитет админа

alcatraz_ua_

Отправлено 26 Июль 2014 — 10:55

Ну-да конечно кому ты расказываешь,,,БОШМАК!!!

Лол, зачем мне тогда это все. Если бы я хотел поиграть в ВХ я скачал бы и не парился! Тольк флудишь
 

Ставишь имунитет 99 и флаг z <- главная админка

Ставишь имунитет 97 и все флаги кроме z <- обычный админ

у меня 99:z и не помогает, если дать все флаги то считай что гл.

#10
Плагин на иммунитет админа

666fox666

Отправлено 26 Июль 2014 — 11:09

Лол, зачем мне тогда это все. Если бы я хотел поиграть в ВХ я скачал бы и не парился! Тольк флудишь

у меня 99:z и не помогает, если дать все флаги то считай что гл.

Стоп. А что мешает поставить плагин adminesp? В случае если и с ним будет банить, смените квар в античите (написано ранее)

#11
Плагин на иммунитет админа

LORD

Отправлено 26 Июль 2014 — 12:10

Лол, зачем мне тогда это все. Если бы я хотел поиграть в ВХ я скачал бы и не парился! Тольк флудишь
 

у меня 99:z и не помогает, если дать все флаги то считай что гл.

:D НУ конечно если качнёшь то можно в скором времени распрощятся с акком,,,а  серверный чит VAC не ловит,,,НУБАС,,,есле ты хочешь следить за ВХашниками то установи из панели Cheater Buster Tools (ранее Admin ESP) v.1.2.1  и не используй для угара,,а то я сообщу куда надо :D 

Источник

#1
Плагин на иммунитет админа

d3pt1kwOw

d3pt1kwOw

    Новичок

  • Плагин на иммунитет админа

  • Пользователь
  • Pip

  • 23 сообщений

Отправлено 28 Декабрь 2011 — 19:19

Допустим я главный админ сервера, назначаю других админов, можно ли сделать так, чтобы я мог slay`ить kick`ать других админов, а они друг друга нет… Можно ли вообще сделать такие права админа? :ugeek:

#2
Плагин на иммунитет админа

zfvc

Отправлено 28 Декабрь 2011 — 19:25

Читаем файл users.ini там есть доступы к команде «amx_slap» и «amx_slay»

; Users configuration file
; File location: $moddir/addons/amxmodx/configs/users.ini

; Line starting with ; is a comment

; Access flags:
Флаги управления админкой

; a — immunity (can’t be kicked/baned/slayed/slaped and affected by other commmands)
иммунитет (против игрока не могут быть использованы команды: kick/ban/slay/slap и т.д)

; b — reservation (can join on reserved slots)
резервация (игрок сможет пользоваться резервным слотом)

; c — amx_kick command
доступ к команде amx_kick

; d — amx_ban and amx_unban commands
доступ к команде amx_ban и amx_unban

; e — amx_slay and amx_slap commands
доступ к команде amx_slay и amx_slap

; f — amx_map command
доступ к команде amx_map

; g — amx_cvar command (not all cvars will be available)
доступ к команде amx_cvar (не все переменные могут быть доступны)

; h — amx_cfg command
доступ к команде amx_cfg

; i — amx_chat and other chat commands
доступ к команде amx_csay и другим чат командам

; j — amx_vote and other vote commands
доступ к команде amx_vote и другим командам голосования

; k — access to sv_password cvar (by amx_cvar command)
доступ к переменной sv_password (через команду amx_cvar)

; l — access to amx_rcon command and rcon_password cvar (by amx_cvar command)
доступ к переменной amx_rcon и rcon_password (через команду amx_cvar)

; m — custom level A (for additional plugins)
произвольный уровень A (если вы используете нестандартные амх плагины)

; n — custom level B
произвольный уровень B

; o — custom level C
произвольный уровень C

; p — custom level D
произвольный уровень D

; q — custom level E
произвольный уровень E

; r — custom level F
произвольный уровень F

; s — custom level G
произвольный уровень G

; t — custom level H
произвольный уровень H

; u — menu access
доступ к графическому меню управления (amxmodmenu)

; z — user (no admin)
пользователь (не админ)

; Account flags:
Флаги доступа к админке

; a — disconnect player on invalid password
не пускать игрока на сервер с неправильно введенным паролем

; b — clan tag
регистрация клан тега

; c — this is steamid/wonid
админ зайдет на сервер только со значениями authid/wonid

; d — this is ip
админ заходит только с этого ip адресса

; e — password is not checked (only name/ip/steamid needed)
пароль не проверяется (необходимо только совпадение name/ip/wonid)

; k — name or tag is case sensitive. eg: if you set it so the name «Ham»
; is protected and case sensitive (flags «k» only), then anybody
; can use the names «haM», «HAM», «ham», etc, but not «Ham»
флаг чуствительности ввода ника к регистру

#3
Плагин на иммунитет админа

4ak. 😀

Отправлено 28 Декабрь 2011 — 19:25

Допустим я главный админ сервера, назначаю других админов, можно ли сделать так, чтобы я мог slay`ить kick`ать других админов, а они друг друга нет… Можно ли вообще сделать такие права админа? :ugeek:

Да «cdefijmu» поставь эти права у других админов а себе стандартные оставь (все)

#4
Плагин на иммунитет админа

d3pt1kwOw

d3pt1kwOw

    Новичок

  • Плагин на иммунитет админа

  • Пользователь
  • Pip

  • 23 сообщений

Отправлено 28 Декабрь 2011 — 19:26

Спасиюо :)

Источник

#1
Плагин на иммунитет админа

SD_

Отправлено 01 Март 2012 — 21:30

Эт ребят возниктакой вопрос как сделать иммунитет
«Защита от Администратора равного или низшего Иммунитета»
вообщем попробывал SourceMod » sourcemod.cfg воставил
sm_immunity_mode
Как SourceMod должен проверять уровнь иммунитета администраторов.
ТАК «Защита от Администратора равного или низшего Иммунитета»
в admins_simple.ini тоже прописал иммунитет больше и в SourceBans так же себе больше
НОвсе ровно ребята могут меня банить и тд кто может подсказать как настроить буду благодарин думаю не только мне это надо

#2
Плагин на иммунитет админа

SD_

Отправлено 02 Март 2012 — 7:14

#3
Плагин на иммунитет админа

lilbeam

Отправлено 02 Март 2012 — 7:57

Какой иммунитет ставите себе? другим админам? стоит ли у вас SourceBans и прописаны ли там админы?

#4
Плагин на иммунитет админа

SD_

Отправлено 02 Март 2012 — 8:00

себе ставлю 99 другим админам по 70 -80 SourceBans Прописал себе так же иммунитет 99 у них 70-80

#5
Плагин на иммунитет админа

lilbeam

Отправлено 02 Март 2012 — 8:03

себе ставлю 99 другим админам по 70 -80 SourceBans Прописал себе так же иммунитет 99 у них 70-80

в таком случае они не смогут вас забанить.. а лишь админы с 80 иммуном смогут банить иммунов 70 (p.s Админы имеют доступ к системе банов? и у них есть привилегии на бан??? тогда в этом дело.. через сайт меня могли тоже забанить)

#6
Плагин на иммунитет админа

SD_

Отправлено 02 Март 2012 — 8:10

да эт я понял но у меня проблемма админы все ровно банят с 70 иммунитетом

#7
Плагин на иммунитет админа

lilbeam

Отправлено 02 Март 2012 — 8:15

да эт я понял но у меня проблемма админы все ровно банят с 70 иммунитетом

предположений в данном случае нет.. возможно что-то с сурсмодом у вас и не работает этот квар.

#8
Плагин на иммунитет админа

SD_

Отправлено 02 Март 2012 — 8:43

SourceBans надо менять что бы был иммунитет в самом SourceBans имею введу что надо и там знач ставить иммунитет

#9
Плагин на иммунитет админа

Komsomol

Komsomol

    Новичок

  • Плагин на иммунитет админа

  • Пользователь
  • Pip

  • 45 сообщений

Отправлено 02 Март 2012 — 10:46

в sourcemod.cfg поставь sm_immunity_mode 3

#10
Плагин на иммунитет админа

BombermaG

BombermaG

    Администратор

  • Плагин на иммунитет админа

  • Администратор
  • Плагин на иммунитет админа

  • 991 сообщений

Отправлено 02 Март 2012 — 11:32

У админов не должно быть выставлено флага z.

#11
Плагин на иммунитет админа

kiryaha77

Отправлено 02 Март 2012 — 16:02

У админов не должно быть выставлено флага z.

Ну вот хоть один дельный совет!!! :D А то все сюда сурсбанс приплетают…( а если не установлен сурсбанс,то что же имунитет нельзя сделать???Да даже если сурсбанс и стоит,а админы там не прописаны…,короче бред..)..И ещё вопрос…А что даёт прописка админов в админ.цфг ??? Расскажите и скиньте пожалуйста наглядно посмотреть ,как там правильно админов прописать…

#12
Плагин на иммунитет админа

SD_

Отправлено 02 Март 2012 — 18:17

Ок тока у себя поставлю фраг Z

#13
Плагин на иммунитет админа

BombermaG

BombermaG

    Администратор

  • Плагин на иммунитет админа

  • Администратор
  • Плагин на иммунитет админа

  • 991 сообщений

Отправлено 02 Март 2012 — 18:56

У админов не должно быть выставлено флага z.

Ну вот хоть один дельный совет!!! :D А то все сюда сурсбанс приплетают…( а если не установлен сурсбанс,то что же имунитет нельзя сделать???Да даже если сурсбанс и стоит,а админы там не прописаны…,короче бред..)..И ещё вопрос…А что даёт прописка админов в админ.цфг ??? Расскажите и скиньте пожалуйста наглядно посмотреть ,как там правильно админов прописать…

Просто прописываете админам любые другие флаги, но только не z.
И пишите, пожалуйста, внятнее.

#14
Плагин на иммунитет админа

SD_

Отправлено 02 Март 2012 — 19:10

У админов не должно быть выставлено флага z.

да спс как ты сказал сделал пошло эт ребят хочу задать вопрос ещё Но не по этой теме Можите мне дать плагин который Атомат кикает с большим пингом с ПУ ставил что то не кикало если есть наз его и ПУ и настроику

#15
Плагин на иммунитет админа

Komsomol

Komsomol

    Новичок

  • Плагин на иммунитет админа

  • Пользователь
  • Pip

  • 45 сообщений

Отправлено 03 Март 2012 — 8:22

Источник

#include < amxmodx >
#include < reapi >

#if AMXX_VERSION_NUM < 183
#include < colorchat >

#define client_disconnected client_disconnect
#define MAX_PLAYERS 32
#endif

#define IsPlayer(%0) (0 < %0 < 33)

//■■■■■■■■■■■■■■■■■■■■■■■ CONFIG START ■■■■■■■■■■■■■■■■■■■■■■■//
#define AWP_ONLINE //Закоментируйте, если не нужен функционал отключения авп при низком онлайне
#define AWP_LIMIT //Закоментируйте, если не нужен функционал ограничения авп по командам
#define AWP_ROUND_LIMIT //Закоментируйте, если не нужен функционал ограничения авп по раундам

// ^4 — зелёный | ^3 — цвет тимы (КТ — синий | Т — красный | SPEC — серый) | ^1 — жёлтый
#define MSG_PREFIX «^1[^4AWP_ONLINE^1]»
#define MSG_LOWONLINE «У вас отобрано^4 AWP^1. Причина:^3 Низкий онлайн игроков»
#define MSG_LIMIT «У вас отобрано^4 AWP^1. Причина:^3 Превышен лимит на команду»
#define MSG_ROUND «%s У вас отобрано^4 AWP^1. Причина:^3 подождите %d %s»

//#define ALLPLAYERS
/*
Закоментируйте, чтобы для проверки на онлайн брались только КТ и ТТ(ботов, хлтв и спектаров считать не будет).

Пример:
Допустим на сервере 5 ботов и 2 человека 1 хлтв.
Дефайн закоментирован: Посчитает, что на сервере 2 из Максимально возможных игроков.
Дефайн раскоментирован: Посчитает, что на сервере 8 игроков из Максимально возможных игроков (5 ботов + 2 человека + 1 хлтв).

Отбирать авп будет ТОЛЬКО У ЛЮДЕЙ в любом случае.
*/

#define FLAG ADMIN_IMMUNITY //Флаг для иммунитета от лимита и блока на раунды

#define RETURN_MONEY //Возвращать деньги при отборе авп в конце раунда из-за низкого онлайна? (Закоментируйте, если не хотите, чтобы возвращало деньги)
#if defined RETURN_MONEY
#define MONEY_AWP 4750 //Сколько денег возвращать?
#endif

//#define PERCENT_PLAYERS
/*
Разкоменитруйте, если хотите чтобы лимит зависил от процента игроков [I am chetko ob’yasnyat’]

Например: Онлайн = 10, Процент в кваре(awp_limit_max) = 20
10/100*20 = 2 авп на тиму (2 у терров и 2 у кт)
*/

//#define NOEND //Если разкоментировано, то не будет отбирать АВП в конце раунда из-за низкого онлайна. [Если онлайн ниже чем указан в кваре и человек сам дропнет авп или потеряет ее, то подобрать заного не сможет]
//■■■■■■■■■■■■■■■■■■■■■■■■ CONFIG END ■■■■■■■■■■■■■■■■■■■■■■■■//

#if !defined AWP_LIMIT && defined PERCENT_PLAYERS
#undef PERCENT_PLAYERS
#endif
#if !defined AWP_ONLINE && !defined NOEND
#define NOEND
#endif

enum ECVARS {
CVAR_ONLINE,
CVAR_LIMIT_AWP_STATUS,
CVAR_LIMIT_MAX_AWP,
CVAR_LIMIT_IMMUN,
CVAR_ROUNDS_LIMIT
};

enum EBLOCKS {
BL_RND,
BL_LIMIT,
BL_ONLINE
};

enum {
AWP_DROP = 0,
AWP_NONE,
AWP_BUY,
AWP_PICK_UP
};

new gCvar[ECVARS], sCvars[ECVARS], COST_AWP, gAwp[MAX_PLAYERS + 1], gCount;

#if defined AWP_LIMIT || defined AWP_ROUND_LIMIT
new TeamName: gTeam[MAX_PLAYERS + 1];
#endif
#if defined AWP_LIMIT
new sAwp[TeamName: TEAM_SPECTATOR];
#endif
#if defined AWP_ROUND_LIMIT
new gBlock[MAX_PLAYERS + 1], gRound;
#endif

#if defined PERCENT_PLAYERS
new gLimit;
#endif

public plugin_precache(){
register_plugin(«[ReAPI] AWPoff», «1.4.3», «PAffAEJIkA :3»);

#if !defined AWP_LIMIT && !defined AWP_ROUND_LIMIT && !defined AWP_ONLINE
set_fail_state(«xmm, ti ubral ves’ funkcional plagina, no postavil ego na server… ti molodec!»);
#endif

#if defined AWP_ONLINE
gCvar[CVAR_ONLINE] = register_cvar(«awp_players_low», «10»); //Если онлайн ниже указнного в кваре, в конце раунда у всех отберет авп, и запретит ее. (Что бы отключить поставьте 0) [стандартно: при онлайне меньше 8]
#endif
#if defined AWP_LIMIT
gCvar[CVAR_LIMIT_AWP_STATUS] = register_cvar(«awp_limit», «1»); //Включить|Выключить лимит авп [Стандартно: включен]
gCvar[CVAR_LIMIT_MAX_AWP] = register_cvar(«awp_limit_max», «3»); //Сколько АВП разрешено при лимите [Стандартно по 2 авп на команду] | Если раскоментирован PERCENT_PLAYERS, то сюда вписывать нужный процент
gCvar[CVAR_LIMIT_IMMUN] = register_cvar(«awp_limit_immun», «3»); //Иммунитет для админов. [0 — Выкл | 1 — Иммунитет от лимита кол-ва АВП | 2 — Иммунитет от блока АВП по раундам | 3 — Имумунитет от 1 и 2]
#endif
#if defined AWP_ROUND_LIMIT
gCvar[CVAR_ROUNDS_LIMIT] = register_cvar(«awp_limit_round», «5»); //На сколько раундов блочить?
#endif
}

public plugin_init(){
new mapname[32];
get_mapname(mapname, charsmax(mapname));

static maps[][] = { «awp», «aim», «35hp» };
for(new i; i < sizeof maps; i++){
if(containi(mapname, maps[i]) != -1){
pause(«ad»);
return;
}
}

COST_AWP = rg_get_weapon_info(WEAPON_AWP, WI_COST);

RegisterHookChain(RG_CBasePlayer_AddPlayerItem, «AddItem»);
RegisterHookChain(RG_BuyWeaponByWeaponID, «BuyWeaponByWeaponID»);
RegisterHookChain(RG_CBasePlayer_RemovePlayerItem, «RemoveItem»);

register_concmd(«awpoff_reload», «load_cvars»);

register_event(«HLTV», «EventRoundStart», «a», «1=0», «2=0»);
register_logevent(«EventRestartRound», 2, «1&Restart_Round_»);
#if !defined NOEND
register_logevent(«EventRoundEnd», 2, «1=Round_End»);
#endif
}

public plugin_cfg(){
#if AMXX_VERSION_NUM < 183
server_exec();
#endif
load_cvars(0);
}

public load_cvars(id){
#if defined AWP_ONLINE
sCvars[CVAR_ONLINE] = get_pcvar_num(gCvar[CVAR_ONLINE]);
#endif
#if defined AWP_LIMIT
sCvars[CVAR_LIMIT_AWP_STATUS] = get_pcvar_num(gCvar[CVAR_LIMIT_AWP_STATUS]);
sCvars[CVAR_LIMIT_MAX_AWP] = get_pcvar_num(gCvar[CVAR_LIMIT_MAX_AWP]);
sCvars[CVAR_LIMIT_IMMUN] = get_pcvar_num(gCvar[CVAR_LIMIT_IMMUN]);
#endif
#if defined AWP_ROUND_LIMIT
sCvars[CVAR_ROUNDS_LIMIT] = get_pcvar_num(gCvar[CVAR_ROUNDS_LIMIT]);
#endif
if(IsPlayer(id))
client_print(id, print_center, «[AWPoff] Cvars have been reloaded!»);
}

public client_disconnected(id) if(IsPlayer(id)) minus_awp(id);

public EventRoundStart(){
#if defined AWP_ROUND_LIMIT
gRound ++;
#endif

gCount = 0;

static pl[32];
get_pl(pl, gCount);

#if defined PERCENT_PLAYERS
const MAX_PERCENT = 100;
gLimit = gCount * sCvars[CVAR_LIMIT_MAX_AWP] / MAX_PERCENT;
#endif

#if defined AWP_LIMIT
sAwp[TEAM_CT] = 0;
sAwp[TEAM_TERRORIST] = 0;
#endif

#if defined AWP_LIMIT || defined AWP_ROUND_LIMIT
for(new i,id; i < gCount; i ++){
id = pl[i];

gTeam[id] = get_member(id, m_iTeam);
#if defined ALLPLAYERS
if(!(TEAM_UNASSIGNED < gTeam[id] < TEAM_SPECTATOR) || !is_user_valid(id))
continue;
#endif

switch(gAwp[id]){
case AWP_NONE: continue;
#if defined AWP_ROUND_LIMIT
case AWP_DROP:{
gAwp[id] = AWP_NONE;
gBlock[id] = gRound + sCvars[CVAR_ROUNDS_LIMIT];
}
#endif
#if defined AWP_LIMIT
default: sAwp[gTeam[id]] ++;
#endif
}
}
#endif
}

public EventRestartRound(){
#if defined AWP_LIMIT
sAwp[TEAM_CT] = 0;
sAwp[TEAM_TERRORIST] = 0;
#endif
#if defined AWP_ROUND_LIMIT
gRound = 0;
arrayset(gBlock, false, sizeof gBlock);
#endif
arrayset(gAwp, AWP_NONE, sizeof gAwp);
}

#if !defined NOEND
public EventRoundEnd(){
new players[32], count;
get_pl(players, count);

if(count >= sCvars[CVAR_ONLINE])
return PLUGIN_CONTINUE;

for(new i = 0; i < count; i ++){
#if defined ALLPLAYERS
if(!is_user_valid(players[i]))
continue;
#endif

return_awp(players[i]);
}
EventRestartRound();
return PLUGIN_CONTINUE;
}
#endif

stock get_pl(players[32], &count){
#if defined ALLPLAYERS
get_players(players, count);
#else
get_players(players, count, «ch»);
new players1[32], cnt = 0;
for(new i; i < count; i ++){
if(TEAM_UNASSIGNED < get_member(players[i], m_iTeam) < TEAM_SPECTATOR)
players1[cnt ++] = players[i];
}

players = players1;
count = cnt;
#endif
}

stock return_awp(id){
if(gAwp[id] <= AWP_NONE)
return;

rg_remove_item(id, «weapon_awp»);
#if defined RETURN_MONEY
if(gAwp[id] == AWP_BUY)
rg_add_account(id, MONEY_AWP);
#endif
client_print_color(id, false, «%s %s», MSG_PREFIX, MSG_LOWONLINE);
}

public BuyWeaponByWeaponID(id, WeaponIdType:weaponID){
if(weaponID != WEAPON_AWP || !is_user_valid(id) || gAwp[id] > AWP_NONE)
return HC_CONTINUE;

new gMoney = get_member(id, m_iAccount);
if(gMoney < COST_AWP)
return HC_CONTINUE;

if(check_awp(id)){
gAwp[id] = AWP_BUY;
return HC_CONTINUE;
}

SetHookChainReturn(ATYPE_INTEGER, true);
return HC_SUPERCEDE;
}

public AddItem(id, pItem){
if(get_member(pItem, m_iId) != WEAPON_AWP || gAwp[id] > AWP_NONE || !is_user_valid(id))
return HC_CONTINUE;

if(check_awp(id)){
gAwp[id] = AWP_PICK_UP;
return HC_CONTINUE;
}

SetHookChainReturn(ATYPE_INTEGER, false);
return HC_SUPERCEDE;
}

//Native’s
public plugin_natives()
register_native(«awpoff_check», «check_native», true);

public check_native(id, chat){
#if defined AWP_LIMIT
#if defined ALLPLAYERS
if(!(TEAM_UNASSIGNED < gTeam[id] < TEAM_SPECTATOR))
return false;
#endif
return check_awp(id, true, chat);
#else
return check_awp(id, chat);
#endif
}
//Native’s

#if defined AWP_LIMIT
bool: check_awp(id, check = false, chat = true)
#else
bool: check_awp(id, chat = true)
#endif
{
new EBLOCKS:block;

#if defined AWP_ROUND_LIMIT
if(gBlock[id] > gRound)
block = BL_RND;
else
#endif
#if defined AWP_ONLINE
if(gCount < sCvars[CVAR_ONLINE])
block = BL_ONLINE;
else
#endif
#if defined AWP_LIMIT
if(sCvars[CVAR_LIMIT_AWP_STATUS]){
if(sCvars[CVAR_LIMIT_IMMUN] && sCvars[CVAR_LIMIT_IMMUN] != 2 && get_user_flags(id) & FLAG)
return true;

#if defined PERCENT_PLAYERS
if(sAwp[gTeam[id]] < gLimit)
#else
if(sAwp[gTeam[id]] < sCvars[CVAR_LIMIT_MAX_AWP])
#endif
{
if(!check)
sAwp[gTeam[id]] ++;
return true;
}else
block = BL_LIMIT;
}else
#endif
return true;

if(chat){ //Слишком туп, чтобы придумать какой нибудь другой вариант с чатом.
switch(block){
#if defined AWP_ROUND_LIMIT
case BL_RND:{
new c = gBlock[id] — gRound;
client_print_color(id, false, MSG_ROUND, MSG_PREFIX, c, get_text(c));
}
#endif
#if defined AWP_ONLINE
case BL_ONLINE: client_print_color(id, false, «%s %s», MSG_PREFIX, MSG_LOWONLINE);
#endif
#if defined AWP_LIMIT
case BL_LIMIT: client_print_color(id, false, «%s %s», MSG_PREFIX, MSG_LIMIT);
#endif
}
}
return false;
}

public RemoveItem(id, pItem){
if(get_member(pItem, m_iId) == WEAPON_AWP)
minus_awp(id);
}

stock minus_awp(id){
if(!is_user_valid(id) || gAwp[id] <= AWP_NONE)
return;

#if defined AWP_LIMIT || defined AWP_ROUND_LIMIT
new flag = get_user_flags(id) & FLAG;
#endif

#if defined AWP_ROUND_LIMIT
gAwp[id] = (flag && sCvars[CVAR_LIMIT_IMMUN] > 1) ? AWP_NONE : AWP_DROP;
#else
gAwp[id] = AWP_NONE;
#endif

#if defined AWP_LIMIT
if(!sCvars[CVAR_LIMIT_AWP_STATUS])
return;

if(sCvars[CVAR_LIMIT_IMMUN] && sCvars[CVAR_LIMIT_IMMUN] != 2 && flag)
return;

sAwp[gTeam[id]] —;
#endif
}

stock bool: is_user_valid(id){
if(is_user_bot(id) || is_user_hltv(id))
return false;
return true;
}

stock get_text(tm){
new ost = tm % 10, ost2 = tm % 100, buff[16];

if(ost2 >= 5 && ost2 <= 20)
format(buff, charsmax(buff), «раундов»);
else{
switch(ost){
case 1: format(buff, charsmax(buff), «раунд»);
case 2..4: format(buff, charsmax(buff), «раунда»);
case 0, 5..9: format(buff, charsmax(buff), «раундов»);
}
}
return buff;
}

Источник

Читайте также:  Эхинацея для иммунитета как применять