iEA 24 Опубликовано 7 января, 2018 Здравствуйте питаюсь установить скрипт фарм зона для новичков, сборка пв Закинул сам скрипт в gameserver\data\scripts\ai Прописал его в scripts.cfg Сам скрипт ( немного уточню некие вопроси в нем ) Открить 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 = {18119}; // Вкл/Выкл проверку на сертификат новичка private boolean enabled = false; //ID сертификата новичка private final static int newbay_item = 9999; // Вкл/Выкл доп. проверку на предметы, грейд, заточку private boolean enable = true; // Список ID предметов, которые будут запрещены в этой зоне String value = "9809,9808,57"; // Максимально возможный уровень заточки для Армора/Бижутерии/Оружия private int maxEnch = 50; // Нужен ли премиум для фарма мобов? 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(204431,-112473,65); } if (item.getEnchantLevel() > maxEnch) { attacker.sendMessage("Предмет " + item.getName() + " очень сильно заточен!"); attacker.teleToLocation(204431,-112473,65); <----- ето координати x,y,z ???? } } } } if (Premium && !attacker.isPremium()) { attacker.sendMessage("Купите премиум!"); attacker.teleToLocation(204431,-112473,65); <----- ето координати x,y,z ???? } int count = attacker.getInventory().getInventoryItemCount(newbay_item,0); if (count < 1 && enabled) { attacker.sendMessage("У Вас нет сертификата!"); attacker.teleToLocation(204431,-112473,65); <----- ето координати x,y,z ???? } return null; } public static void main(String... arguments ) { new newbay_farm(37015, "newbay_farm", "newbay_farm"); <----- ето id телепорта в бд ?????????? } } Hide Так вот, куда дальше его пихать ? и что дальше делать, чтоб он заработал ?? Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Demoncool 1110 Опубликовано 7 января, 2018 Scripts/ai И в scripts.cfg указать Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
iEA 24 Опубликовано 7 января, 2018 2 часа назад, Demoncool сказал: Scripts/ai И в scripts.cfg указать так и сделал. прописал етот id в телепорт. и меня тпшит в ету локу. хотя в инвентаре,есть запрещенная вещь. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
zGosu 396 Опубликовано 7 января, 2018 32 минуты назад, iEA сказал: так и сделал. прописал етот id в телепорт. и меня тпшит в ету локу. хотя в инвентаре,есть запрещенная вещь. Так он и должен ТПхать с запрещенной вещью: attacker.sendMessage("Предмет " + item.getName() + " запрещен в этой зоне!"); attacker.teleToLocation(204431,-112473,65); Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
iEA 24 Опубликовано 7 января, 2018 8 минут назад, zGosu сказал: Так он и должен ТПхать с запрещенной вещью: attacker.sendMessage("Предмет " + item.getName() + " запрещен в этой зоне!"); attacker.teleToLocation(204431,-112473,65); а как сделать так, чтоб он не тпхал, если в инвентаре, есть запрещенная вещь ? что нужно сменить в коде ?? Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
zGosu 396 Опубликовано 7 января, 2018 1 минуту назад, iEA сказал: а как сделать так, чтоб он не тпхал, если в инвентаре, есть запрещенная вещь ? что нужно сменить в коде ?? Удалить код на тп и return null; Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты