Перейти к содержанию
Авторизация  
iEA

Установка скрипта на пв

Рекомендуемые сообщения

Здравствуйте

питаюсь установить скрипт фарм зона для новичков, сборка пв

Закинул сам скрипт в 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  

Так вот, куда дальше его пихать ? и что дальше делать, чтоб он заработал ?? 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
2 часа назад, Demoncool сказал:

Scripts/ai

И в scripts.cfg указать

так и сделал. прописал етот id в телепорт. и меня тпшит в ету локу. хотя в инвентаре,есть запрещенная вещь.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
32 минуты назад, iEA сказал:

так и сделал. прописал етот id в телепорт. и меня тпшит в ету локу. хотя в инвентаре,есть запрещенная вещь.

Так он и должен ТПхать с запрещенной вещью:

attacker.sendMessage("Предмет " + item.getName() + " запрещен в этой зоне!");
attacker.teleToLocation(204431,-112473,65);

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
8 минут назад, zGosu сказал:

Так он и должен ТПхать с запрещенной вещью:


attacker.sendMessage("Предмет " + item.getName() + " запрещен в этой зоне!");
attacker.teleToLocation(204431,-112473,65);

 

а как сделать так, чтоб он не тпхал, если в инвентаре, есть запрещенная вещь ? что нужно сменить в коде ?? 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
1 минуту назад, iEA сказал:

а как сделать так, чтоб он не тпхал, если в инвентаре, есть запрещенная вещь ? что нужно сменить в коде ?? 

Удалить код на тп :)

и return null;

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти
Авторизация  

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×
×
  • Создать...