SambukaRes 0 Опубликовано 23 апреля, 2020 Кто то может помочь поправить скрипт,чтобы при тп в зону снимались донат вещи. У меня просто при ударе рб, ТПшит в другую локацию. package ai; import net.sf.l2j.gameserver.model.actor.instance.L2NpcInstance; import net.sf.l2j.gameserver.model.actor.instance.L2PcInstance; import net.sf.l2j.gameserver.model.quest.jython.QuestJython; import net.sf.l2j.gameserver.model.L2ItemInstance; import javolution.util.FastList; public class newbay_farm extends QuestJython { //мобы которых можно убивать private final static int[] newbay_mobs = {25527,25163,25282}; // Вкл/Выкл проверку на сертификат новичка private boolean enabled = false; //ID сертификата новичка private final static int newbay_item = 9999; // Вкл/Выкл доп. проверку на предметы, грейд, заточку private boolean enable = true; // Список ID предметов, которые будут запрещены в этой зоне String value = "12780,13500,11544,16511,16510,16509"; // Максимально возможный уровень заточки для Армора/Бижутерии/Оружия private int maxEnch = 100; // Нужен ли премиум для фарма мобов? private boolean Premium = false; // НЕ ТРОГАТЬ private static FastList<Integer> penalty_items = new FastList<Integer>(); String[] items = value.split(","); public newbay_farm(int questId, String name, String descr) { super(questId, name, descr, 1); for(int mobs : newbay_mobs) { addAttackId(mobs); } } public String onAttack(L2NpcInstance npc, L2PcInstance attacker, int damage, boolean isPet) { if (enable) { for (L2ItemInstance item : attacker.getPcInventory().getItems()) { if (item != null) { for (String itemsd : items) { if (!itemsd.equalsIgnoreCase("")) { penalty_items.add(Integer.valueOf(Integer.parseInt(itemsd))); } } if (penalty_items.contains(Integer.valueOf(item.getItemId()))) { attacker.sendMessage("Предмет " + item.getName() + " запрещен в этой зоне!"); attacker.teleToLocation(18781,145247,-3129); } if (item.getEnchantLevel() > maxEnch) { attacker.sendMessage("Предмет " + item.getName() + " очень сильно заточен!"); attacker.teleToLocation(18781,145247,-3129); } } } } if (Premium && !attacker.isPremium()) { attacker.sendMessage("Купите премиум!"); attacker.teleToLocation(18781,145247,-3129); } int count = attacker.getInventory().getInventoryItemCount(newbay_item,0); if (count < 1 && enabled) { attacker.sendMessage("У Вас нет сертификата!"); attacker.teleToLocation(18781,145247,-3129); } return null; } public static void main(String... arguments ) { new newbay_farm(968, "newbay_farm", "newbay_farm"); } } Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты