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

Ошибка Скрипта

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

Витаскивал с сборки pw за 2014г. 

Поставил на pw за 2017г.

 

Ошибка:

2304ef4bb48ae35f8385d9ab52fd3d53.jpg

 

сам скрипт:

 

 

package items;

 
import javolution.util.FastMap;
 
import net.sf.l2j.gameserver.datatables.SkillTable;
import net.sf.l2j.gameserver.cache.Static;
import net.sf.l2j.gameserver.model.L2ItemInstance;
import net.sf.l2j.gameserver.model.actor.instance.L2PcInstance;
import net.sf.l2j.gameserver.model.actor.instance.L2PlayableInstance;
import net.sf.l2j.gameserver.network.serverpackets.MagicSkillUser;
import scripts.items.ItemHandler;
import scripts.items.IItemHandler;
 
public class DonateScrolls implements IItemHandler         <--- 14 строка, в которой ошибку дает.
{
private final static FastMap<Integer, Integer[]> SCROLLS = new FastMap<Integer, Integer[]>().shared("DonateScrolls.SCROLLS");
private static int[] ITEM_IDS = null;
 
public DonateScrolls()
{
/**шаблон
**SCROLLS.put(итем_ид, new Integer[] { ид_баффа, уровень_баффа, ид_скилла_анимации, продолжительность_анимации(мс.)), кушать_скролл(1 да, 0 нет)) });
**/
SCROLLS.put(10010, new Integer[] { 10010, 1, 1077, 1000, 1 });
SCROLLS.put(10011, new Integer[] { 10011, 1, 1077, 1000, 1 });
SCROLLS.put(10012, new Integer[] { 10012, 1, 1077, 1000, 1 });
SCROLLS.put(10013, new Integer[] { 10013, 1, 1077, 1000, 1 });
SCROLLS.put(10014, new Integer[] { 10014, 1, 1077, 1000, 1 });
SCROLLS.put(10015, new Integer[] { 10015, 1, 1077, 1000, 1 });
SCROLLS.put(10016, new Integer[] { 10016, 1, 1077, 1000, 0 });
SCROLLS.put(10017, new Integer[] { 10017, 1, 1077, 1000, 0 });
SCROLLS.put(10018, new Integer[] { 10018, 1, 1077, 1000, 0 });
SCROLLS.put(10019, new Integer[] { 10019, 1, 1077, 1000, 0 });
SCROLLS.put(10020, new Integer[] { 10020, 1, 1077, 1000, 0 });
SCROLLS.put(10021, new Integer[] { 10021, 1, 1077, 1000, 0 });
 
//
Integer[] tmp_ids = (Integer[]) SCROLLS.keySet().toArray(new Integer[sCROLLS.size()]);
ITEM_IDS = toIntArray(tmp_ids);
tmp_ids = null;
ItemHandler.getInstance().registerItemHandler(this);
}
 
public static void main (String... arguments )
{
new DonateScrolls();
}
 
public void useItem(L2PlayableInstance playable, L2ItemInstance item)
    {
if (!playable.isPlayer())
return;
 
L2PcInstance player = (L2PcInstance) playable;
if (player.isAllSkillsDisabled())
{
player.sendActionFailed();
return;
}
 
if (player.isInOlympiadMode())
{
player.sendPacket(Static.THIS_ITEM_IS_NOT_AVAILABLE_FOR_THE_OLYMPIAD_EVENT);
player.sendActionFailed();
return;
}
 
Integer[] data = SCROLLS.get(item.getItemId());
if(data != null)
{
player.stopSkillEffects(data[0]);
SkillTable.getInstance().getInfo(data[0], data[1]).getEffects(player, player);
player.broadcastPacket(new MagicSkillUser(player, player, data[2], 1, data[3], 0));
if (data[4] == 1)
player.destroyItem("Consume", item.getObjectId(), 1, null, false);
}
    }
 
private int[] toIntArray(Integer[] arr)
{
int[] ret = new int[arr.length];
int i = 0;
for (Integer e : arr)  
ret[i++] = e.intValue();
return ret;
}
 
public int[] getItemIds()
{
return ITEM_IDS;
}
}
 
Изменено пользователем DoHParDon

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


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

У тебя с английским проблемы или с программированием? Если с английским, то надо реализовать все методы интерфейса или убрать его в объявлении класса.

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


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

Витаскивал с сборки pw за 2014г. 

Поставил на pw за 2017г.

 

Ошибка:

2304ef4bb48ae35f8385d9ab52fd3d53.jpg

 

сам скрипт:

У Вас сейчас стоит так:

public void useItem(L2PlayableInstance playable, L2ItemInstance item)

А должно быть так:

public void useItem(L2PlayableInstance playable, L2ItemInstance item, boolean value)

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


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

(L2PlayableInstance playable, L2ItemInstance item)

ваше метод

а ожидает 3 значения*

Изменено пользователем Demoncool
  • Upvote 1

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


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

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

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

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

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

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

Войти

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

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

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

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

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