[Помощь]Переделка под L2jLovely

PulseOfDeath

Прославленный
Участник
Сообщения
145
Розыгрыши
0
Репутация
24
Реакции
280
Баллы
1 403
Ребят помогите пожалуйста переделать код под L2Jlovely. Понимаю будете кричать что это г... и т.д.
Но в данный момент нужна она:)
Код:
package custom.core;

import ru.catssoftware.gameserver.datatables.ItemTable;
import ru.catssoftware.gameserver.model.actor.instance.L2NpcInstance;
import ru.catssoftware.gameserver.model.actor.instance.L2PcInstance;
import ru.catssoftware.gameserver.model.quest.jython.QuestJython;
import ru.catssoftware.gameserver.network.serverpackets.MagicSkillUser;

/**
 * 
 * @author Calypso
 *
 */

public class ExtendedNoblesse extends QuestJython
{
    /** выдавать нублес (true), либо же выдавать определенные предметы **/
    private final static boolean giveNoblesse = true;
    /** награда для всей пати? **/
    private final static boolean forParty = true;
    /** доступно только для саб-класса? **/
    private final static boolean onlySubClass = true;
    /** минимальный уровень игрока для получения награды **/
    private final static int minLvl = 75;
    /** макс дистанция от добившего игрока до мембера пати, для выдачи награды **/
    private final static int applyRange = 2800;
    /** ид мобов, при убийстве которых будем выдавать нубл/итемы **/
    private final static int[] nobbleseMonsters = {
            25325,
            37506
    };

    /** список итемов, которые будут выдаваться игроку при giveNoblesse = false
    * {{ид, кол-во}, {ид, кол-во}, {ид, кол-во}}
    **/
    private final static int[][] altItemList = {
            { 4037, 10 },
            { 57, 10000 }
    };
    /** список итемов, которые будут выдаваться игроку в любом случае (если прошел проверки по лвлу и т.п)
    * {{ид, кол-во}, {ид, кол-во}, {ид, кол-во}}
    **/
    private final static int[][] itemList = {

    };

    public ExtendedNoblesse(int questId, String name, String descr)
    {
        super(questId, name, descr);
        for(int i : nobbleseMonsters)
            addKillId(i);
    }

    @Override
    public String onKill(L2NpcInstance npc, L2PcInstance player, boolean isPet)
    {
        if(forParty && player.isInParty())
            for(L2PcInstance member : player.getParty().getPartyMembers())
                if(member.isInsideRadius(player, applyRange, false, false))
                {
                    if(member.getLevel() < minLvl)
                        continue;
                    if(onlySubClass && !member.isSubClassActive())
                        continue;
                    giveReward(member);
                }
        else
        {
            if(player.getLevel() < minLvl)
                return super.onKill(npc, player, isPet);
            if(onlySubClass && !player.isSubClassActive())
                return super.onKill(npc, player, isPet);
            giveReward(player);
        }

        return super.onKill(npc, player, isPet);
    }

    private void giveReward(L2PcInstance player)
    {
        if(giveNoblesse)
        {
            if(!player.isNoble())
            {
                player.setNoble(true);
                player.broadcastPacket(new MagicSkillUser(player, player, 5103, 1, 1000, 0));
                player.sendMessage("Поздравляем, Вы получили статус Дворянина!");
            }
        }
        else if (altItemList.length > 0)
        {
            for (int [] i : altItemList)
            {
                player.giveItem(i[0], i[1]);
                player.sendMessage("Вы получили " + i[1] + " " + ItemTable.getInstance().getItemName(i[0]));
            }
        }

        if(itemList.length > 0)
        {
            for (int [] i : itemList)
            {
                player.giveItem(i[0], i[1]);
                player.sendMessage("Вы получили " + i[1] + " " + ItemTable.getInstance().getItemName(i[0]));
            }
        }
    }

    public static void main(String... arguments) {
        new ExtendedNoblesse(-1, "ExtendedNoblesse", "ExtendedNoblesse by Calypso");
        _log.info("Loaded \"ExtendedNoblesse\" by Calypso...");
    }
}
В ловели нет импорта import ru.catssoftware.gameserver.network.serverpackets.MagicSkillUser;
А следовательно летит player.broadcastPacket(new MagicSkillUser(player, player, 5103, 1, 1000, 0));
Может подскажете как это переделать ? Не имея исходников :(
 
Зато там есть импорт в той же папочке. MagicSkillUse
 
Ребят помогите пожалуйста переделать код под L2Jlovely. Понимаю будете кричать что это г... и т.д.
Но в данный момент нужна она:)
Код:
package custom.core;

import ru.catssoftware.gameserver.datatables.ItemTable;
import ru.catssoftware.gameserver.model.actor.instance.L2NpcInstance;
import ru.catssoftware.gameserver.model.actor.instance.L2PcInstance;
import ru.catssoftware.gameserver.model.quest.jython.QuestJython;
import ru.catssoftware.gameserver.network.serverpackets.MagicSkillUser;

/**
 *
 * @author Calypso
 *
 */

public class ExtendedNoblesse extends QuestJython
{
    /** выдавать нублес (true), либо же выдавать определенные предметы **/
    private final static boolean giveNoblesse = true;
    /** награда для всей пати? **/
    private final static boolean forParty = true;
    /** доступно только для саб-класса? **/
    private final static boolean onlySubClass = true;
    /** минимальный уровень игрока для получения награды **/
    private final static int minLvl = 75;
    /** макс дистанция от добившего игрока до мембера пати, для выдачи награды **/
    private final static int applyRange = 2800;
    /** ид мобов, при убийстве которых будем выдавать нубл/итемы **/
    private final static int[] nobbleseMonsters = {
            25325,
            37506
    };

    /** список итемов, которые будут выдаваться игроку при giveNoblesse = false
    * {{ид, кол-во}, {ид, кол-во}, {ид, кол-во}}
    **/
    private final static int[][] altItemList = {
            { 4037, 10 },
            { 57, 10000 }
    };
    /** список итемов, которые будут выдаваться игроку в любом случае (если прошел проверки по лвлу и т.п)
    * {{ид, кол-во}, {ид, кол-во}, {ид, кол-во}}
    **/
    private final static int[][] itemList = {

    };

    public ExtendedNoblesse(int questId, String name, String descr)
    {
        super(questId, name, descr);
        for(int i : nobbleseMonsters)
            addKillId(i);
    }

    @Override
    public String onKill(L2NpcInstance npc, L2PcInstance player, boolean isPet)
    {
        if(forParty && player.isInParty())
            for(L2PcInstance member : player.getParty().getPartyMembers())
                if(member.isInsideRadius(player, applyRange, false, false))
                {
                    if(member.getLevel() < minLvl)
                        continue;
                    if(onlySubClass && !member.isSubClassActive())
                        continue;
                    giveReward(member);
                }
        else
        {
            if(player.getLevel() < minLvl)
                return super.onKill(npc, player, isPet);
            if(onlySubClass && !player.isSubClassActive())
                return super.onKill(npc, player, isPet);
            giveReward(player);
        }

        return super.onKill(npc, player, isPet);
    }

    private void giveReward(L2PcInstance player)
    {
        if(giveNoblesse)
        {
            if(!player.isNoble())
            {
                player.setNoble(true);
                player.broadcastPacket(new MagicSkillUser(player, player, 5103, 1, 1000, 0));
                player.sendMessage("Поздравляем, Вы получили статус Дворянина!");
            }
        }
        else if (altItemList.length > 0)
        {
            for (int [] i : altItemList)
            {
                player.giveItem(i[0], i[1]);
                player.sendMessage("Вы получили " + i[1] + " " + ItemTable.getInstance().getItemName(i[0]));
            }
        }

        if(itemList.length > 0)
        {
            for (int [] i : itemList)
            {
                player.giveItem(i[0], i[1]);
                player.sendMessage("Вы получили " + i[1] + " " + ItemTable.getInstance().getItemName(i[0]));
            }
        }
    }

    public static void main(String... arguments) {
        new ExtendedNoblesse(-1, "ExtendedNoblesse", "ExtendedNoblesse by Calypso");
        _log.info("Loaded \"ExtendedNoblesse\" by Calypso...");
    }
}
В ловели нет импорта import ru.catssoftware.gameserver.network.serverpackets.MagicSkillUser;
А следовательно летит player.broadcastPacket(new MagicSkillUser(player, player, 5103, 1, 1000, 0));
Может подскажете как это переделать ? Не имея исходников :(

почему ты выбрал именно ловели? полно других исходов покопайся там может найдешь ответ на свой вопрос
 
почему ты выбрал именно ловели? полно других исходов покопайся там может найдешь ответ на свой вопрос
Я же написал нужно в данный момент мне так!
Попросил помощи в решении проблемы а не в тыканье носом, почему эту команду взяли, возьмите другую!
 
Закоментируйте, это не особо важный а просто визуальный эффект раз найти не можешь
 
Я же написал нужно в данный момент мне так!
Попросил помощи в решении проблемы а не в тыканье носом, почему эту команду взяли, возьмите другую!
почему ты переходишь на агресию когда я пытаюсь дать совет и причем тут тыканье носом?
 
почему ты переходишь на агресию когда я пытаюсь дать совет и причем тут тыканье носом?
Та я не агрессирую ) Просто уже вторые сутки не сплю, бошка плохо варит! Прости =)
Но пока действительно остаюсь на ловели, потому что своя сборка еще очень сырая!
А вот этот скрипт очень нужен сегодня :(
 
Закоментируйте, это не особо важный а просто визуальный эффект раз найти не можешь
Отлично это подходит)
Теперь осталась player.giveItem(i[0], i[1]); эта деталь )
Я так понимаю он дает итем, верно? Его впринцепи тоже можно закаментировать, это не помешает работе скрипта ?
 
Помешает, это выдача предмета
 
Так напишите по нормальному + вариаблес для этого
 
Может у кого есть готовый под ловели уже?
Пачка которая добила Нубл Боса получила нубл?
 
Обратите внимание, что данный пользователь заблокирован! Не совершайте с ним никаких сделок! Перейдите в его профиль, чтобы узнать причину блокировки.
Все изображения и файлы загружайте только на наш сервер! Для этого используйте кнопку "Загрузить файл", расположенную ниже или просто перетащите необходимые файлы/изображения со своего компьютера в окно редактора.
Держи
 
Назад
Сверху Снизу