• Этот раздел переехал на новый ДОМЕН, чтобы комментировать перейдите по ссылке, для входа можете использовать текущий логин и пароль.

Запрет гранат bf4 | bf3 (no grenades)

Статус
В этой теме нельзя размещать новые ответы.

Timm

XLGAMES.PRO
5 Сен 2014
21.234
2.941
3.549
Battlelog
[BL]
ВКонтакте
[ВК]
Facebook
[FB]
Как вводить скрипты и создавать лимит показано здесь Insane limits

Для запрета гранат на своём сервере, используйте следующий скрипт:
- установите limit_evaluation на OnKill
*ЗАПРЕТ ТОЛЬКО ВЗРЫВЧАТЫХ ГРАНАТ
1)
Код:
Regex.Match(kill.Weapon, @"(U_M67|M67|U_Grenade_RGO|U_V40)", RegexOptions.IgnoreCase).Success

2)
Код:
String kCounter = killer.Name + "_TreatAsOne_Count";
TimeSpan time = TimeSpan.FromSeconds(5); // Activations within 5 seconds count as 1

int warnings = 0;
if (server.RoundData.issetInt(kCounter)) warnings = server.RoundData.getInt(kCounter);


String msg = "none";
if (warnings == 0) {
        msg = plugin.R("[АВТО-АДМИН] %k_n% не используй %w_n% Следующий раз КИК!"); // Первое предупреждающее сообщение
        plugin.SendGlobalMessage(msg);
        plugin.PRoConChat("ADMIN > " + msg);
        plugin.PRoConEvent(msg, "Insane Limits");
        plugin.KillPlayer(killer.Name, 2);
        server.RoundData.setInt(kCounter, warnings+1);
        return false;
}

if (limit.Activations(killer.Name, time) > 1) return false;

if (warnings >= 1) {
        msg = plugin.R("[АВТО-АДМИН] %k_n% исключен за использование %w_n%");
        plugin.SendGlobalMessage(msg);
        plugin.PRoConChat("ADMIN > " + msg);
        plugin.PRoConEvent(msg, "Insane Limits");
        plugin.KickPlayerWithMessage(killer.Name, msg);
}
server.RoundData.setInt(kCounter, warnings+1);
return false;

С этим скриптом, игрока использующего запрещенное оружие, первый раз убьет, второй раз кикнет.

Если вы хотите запретить все гранаты, включая флешки и зажигательную, используйте этот Expression код
Код:
Regex.Match(kill.Weapon, @"(U_M67|M67|U_Grenade_RGO|U_Flashbang|U_M34|U_V40)", RegexOptions.IgnoreCase).Success


Кому-то, может показаться малым, просто кик с сервера.
Этот код, будет сначала предупреждать игрока, затем забанит на 20 минут, если он зайдет и снова начнет использовать запрещенное оружие его опять предупредит, а затем забанит уже на неделю
Код:
    //plugin.PRoConChat("plugin: " + player.Name +" - " + plugin.Data.issetBool(player.Name));
    //plugin.SendGlobalMessage("plugin: " + player.Name +" - "+ plugin.Data.issetBool(player.Name));
  

    TimeSpan time = TimeSpan.FromSeconds(2);

    double count = limit.Activations(player.Name);
  

    if (limit.Activations(killer.Name, time) > 1)
    {
        //TODO: send to player
        plugin.SendGlobalMessage(plugin.R("%p_n% совершил мультиккилл с %w_n%."));
        return false;
    }
  
    if (count%2 == 1)
    {
        //plugin.SendPlayerMessage(player.Name, plugin.R ("%p_n%, это %w_n% оружие запрещено, след. раз бан!"));

        plugin.KillPlayer(player.Name);
        plugin.SendGlobalMessage(plugin.R("%p_n%, это %w_n% оружие запрещено, след. раз бан!"));
        plugin.PRoConChat(plugin.R("%p_n%, это %w_n% оружие запрещено, след. раз бан!"));
    }
    else if (count%2 == 0)
    {
        if (plugin.Data.issetBool(player.Name))
        {
            plugin.SendGlobalMessage(plugin.R("%p_n% Вы забанены на неделю, за использование %w_n%"));
            plugin.PRoConChat(plugin.R("%p_n% Вы забанены на неделю, за использование %w_n%"));
            plugin.PBBanPlayerWithMessage(PBBanDuration.Temporary, player.Name, 10080, plugin.R("%p_n% Вы забанены на неделю, за использование %w_n%"));
            plugin.Data.unsetBool(player.Name);

            //plugin.Data.setDouble("count", 0);

          
        }
        else
        {
            plugin.SendGlobalMessage(plugin.R("%p_n% Вы забанены на 20 минут, за использование %w_n%"));
            plugin.PRoConChat(plugin.R("%p_n% Вы забанены на 20 минут, за использование %w_n%"));
            plugin.PBBanPlayerWithMessage(PBBanDuration.Temporary, player.Name, 20, plugin.R("%p_n% Вы забанены на 20 минут, за использование %w_n%"));
          
            //plugin.Data.setDouble("count", 0);
            if (!plugin.Data.issetBool(player.Name))
            {
                plugin.Data.setBool(player.Name, true);
            }
        }
    }

Все предупреждения, и причины указываются на русском языке!
 
Последнее редактирование:

Stanis

Прапорщик
Арендатор
1 Ноя 2017
169
0
204
39
Battlelog
[BL]
подскажите пожалуйста, как отключить m320 фугас на сервере
 

Timm

XLGAMES.PRO
5 Сен 2014
21.234
2.941
3.549
Battlelog
[BL]
ВКонтакте
[ВК]
Facebook
[FB]
подскажите пожалуйста, как отключить m320 фугас на сервере
Чтобы после использования запрещённого оружия убивало? или убивало до убийства? то есть как только игрок реснулся с запрещённым оружием?

Если Вы по теме выше, то впишите в скрипт U_M320_LVG
 
  • Like
Реакции: Stanis

Stanis

Прапорщик
Арендатор
1 Ноя 2017
169
0
204
39
Battlelog
[BL]
Чтобы после использования запрещённого оружия убивало? или убивало до убийства? то есть как только игрок реснулся с запрещённым оружием?

Если Вы по теме выше, то впишите в скрипт U_M320_LVG
спасибо
 

Timm

XLGAMES.PRO
5 Сен 2014
21.234
2.941
3.549
Battlelog
[BL]
ВКонтакте
[ВК]
Facebook
[FB]
Коды оружия U_M34 и U_M84 внести, а остальное удалить.
 

Maverick

Полковник
Арендатор
1 Дек 2017
1.003
45
1.519
52
Battlelog
[BL]
Regex.Match(kill.Weapon, @"(U_M34|M34|U_M84)", RegexOptions.IgnoreCase).Success
Правильно?
 

Maverick

Полковник
Арендатор
1 Дек 2017
1.003
45
1.519
52
Battlelog
[BL]
а в силу вступит со следующего раунда?
 

Maverick

Полковник
Арендатор
1 Дек 2017
1.003
45
1.519
52
Battlelog
[BL]
а что будет с теми кто играет сейчас? Их убьет?
 

Timm

XLGAMES.PRO
5 Сен 2014
21.234
2.941
3.549
Battlelog
[BL]
ВКонтакте
[ВК]
Facebook
[FB]

Maverick

Полковник
Арендатор
1 Дек 2017
1.003
45
1.519
52
Battlelog
[BL]
Я прописал limit_2_check expesson
Выставил limit _2_second_check
а вот limit_2_second_check_code - это вот этот код вписывать в ручную?

String kCounter = killer.Name + "_TreatAsOne_Count";
TimeSpan time = TimeSpan.FromSeconds(5); // Activations within 5 seconds count as 1

int warnings = 0;
if (server.RoundData.issetInt(kCounter)) warnings = server.RoundData.getInt(kCounter);


String msg = "none";
if (warnings == 0) {
msg = plugin.R("[АВТО-АДМИН] %k_n% не используй %w_n% Следующий раз КИК!"); // Первое предупреждающее сообщение
plugin.SendGlobalMessage(msg);
plugin.PRoConChat("ADMIN > " + msg);
plugin.PRoConEvent(msg, "Insane Limits");
plugin.KillPlayer(killer.Name, 2);
server.RoundData.setInt(kCounter, warnings+1);
return false;
}

if (limit.Activations(killer.Name, time) > 1) return false;

if (warnings >= 1) {
msg = plugin.R("[АВТО-АДМИН] %k_n% исключен за использование %w_n%");
plugin.SendGlobalMessage(msg);
plugin.PRoConChat("ADMIN > " + msg);
plugin.PRoConEvent(msg, "Insane Limits");
plugin.KickPlayerWithMessage(killer.Name, msg);
}
server.RoundData.setInt(kCounter, warnings+1);
return false;

Карта Locker
 

Maverick

Полковник
Арендатор
1 Дек 2017
1.003
45
1.519
52
Battlelog
[BL]
Я спросил и как вписывать, и какой код прописывать в разделе - limit_2_second_check_code ,на карте LOCKER
 

Maverick

Полковник
Арендатор
1 Дек 2017
1.003
45
1.519
52
Battlelog
[BL]
Там в написании на скрине,идет наложение строк
 
Статус
В этой теме нельзя размещать новые ответы.