Защита от нечестных ГМ'ов
Итак етот скрипт защитит вас от нечестных ГМ.
Принцып работы: Напримет на сервере стоит лимит на заточку +30.Если ГМ игроку даёт +31 на любую вещ то бан получают и ГМ и игрок.
P.S. Максимумальную заточку выставляем сами
Идём:
net/sf/l2j/gameserver/skills/funcs и открываем FunEncant.java
Находим такие сторчки:
import net.sf.l2j.gameserver.model.L2ItemInstance;
ПОсле етой строчки пишем:
import net.sf.l2j.gameserver.model.actor.instance.L2PcIns tance;
Дальше ищем.:
if (cond != null && !cond.test(env)) return;
L2ItemInstance item = (L2ItemInstance) funcOwner;
После точки с запятой жмём "enter" далжно всё выглядеть так:
if (cond != null && !cond.test(env)) return;
L2ItemInstance item = (L2ItemInstance) funcOwner;
int cristall = item.getItem().getCrystalType();
Enum itemType = item.getItemType();
Потом ищем:
if (cristall == L2Item.CRYSTAL_NONE) return;
int enchant = item.getEnchantLevel();
И ниже пишем:
if(env.player != null && env.player instanceof L2PcInstance)
{
if (!((L2PcInstance)env.player).isGM() && enchant > 16)
enchant = 16;
}
Там где 16 ето то сколько гм может дать ++ игроку,если ГМ даст ++ больше чем например 16, бан получат игрок и ГМ.
Сохраняем и закрываем файл.
Идём в папку:
net/sf/l2j/gameserver/handler/admincommandhandlers и открываем файл под названием AdminEnchant.java
Выше строки:
import net.sf.l2j.Config;
Такую строку:
import java.util.logging.Logger;
Ищем дальше:
//private static Logger _log = Logger.getLogger(AdminEnchant.class.getName());
Меняем на:
private static Logger _log = Logger.getLogger(AdminEnchant.class.getName());
Ещем дальше:
GMAudit.auditGMAction(activeChar.getName(), "enchant", player.getName(), itemInstance.getItem().getName() + " from " + curEnchant + " to " + ench);
Ниже пишем:
if (!player.isGM() && ench > 16)
{
_log.warning("GM: " + activeChar.getName() + " enchanted " + player.getName() + " item over the Limit.");
activeChar.setAccountAccesslevel(-100);
player.setAccountAccesslevel(-100);
player.closeNetConnection();
activeChar.closeNetConnection();
}
Там где 16 ето то сколько гм может дать ++ игроку,если ГМ даст ++ больше чем например 16, бан получат игрок и ГМ.

