-
Публикаций
1028 -
Зарегистрирован
-
Посещение
-
Победитель дней
16 -
Отзывы
100%
Тип контента
Профили
Форумы
Загрузки
Магазин
Инструкции
Весь контент CalypsoToolz
-
Я не кого не защищаю и не осуждаю, но мне вот интересно, для чего же было "ограничивать возможности клиентов", что же такого можно сделать с ядром плохого, добавляя собственные AI. И во вторых (по моему, если не прав - поправьте) раз человек "основывается на своем товаре", то не нужно намекать на платную услугу пользователю со своей стороны (как здесь), если он не является твоим клиентом. А так же "я не изучаю сборок конкурентов и других команд уже как 2 года" относится туда же.
-
За пример можно взять ивент с тыквами.
-
Глянул пв, нужно использовать onSkillUse: ... addSkillUseId(ид моба) // подключить обработчик ... @Override public String onSkillUse(L2NpcInstance npc, L2PcInstance caster, L2Skill skill) { //сам функционал }
-
Если хотя бы 1 из из операндов будет верен, то и другие возвратят true; Если бы я сделал так: if (player.getInventory().getItemByItemId(PASS).getCount() < MIN) ... и у игрока небыло бы ни одного предмета, то тогда было бы нпе.
-
НПЕ не будет. Да и вообще я же указал: И в чем разница между предоставленным вами кодом и моим, в добавлении англоязычных комментов?
-
Ну да, яву подгрузить из питона? в папке /data/scripts/custom создай папку killer и создай там файл killer.java, затем вставь туда мой скрипт и запускай сервер.
-
Кароче, если так и не сделал, то вот рабочий набросок: package custom.killer; import ru.catssoftware.gameserver.model.actor.instance.L2NpcInstance; import ru.catssoftware.gameserver.model.actor.instance.L2PcInstance; import ru.catssoftware.gameserver.model.quest.Quest; /** * * @author calypso * */ public class killer extends Quest { private final static int[] npcIds = { 27232, 27233 }; // ид нпц-киллеров private int PASS = 4037; // итем, наличие которого необходимо чтобы остаться в живых private int MIN = 1; // минимальное кол-во итемов public killer(int questId, String name, String descr) { super(questId, name, descr); for (int npcs : npcIds) addAggroRangeEnterId(npcs); } @Override public String onAggroRangeEnter(L2NpcInstance npc, L2PcInstance player, boolean isPet) { if (player.getInventory().getItemByItemId(PASS) == null || player.getInventory().getItemByItemId(PASS).getCount() < MIN) { if(player.getAppearance().isInvisible()) player.getAppearance().setVisible(); player.doDie(npc); } return super.onAggroRangeEnter(npc, player, isPet); } public static void main(String[] args) { new killer(-1, "killer", "custom.killer"); } }
-
Если так уверен что реализовано, то ты должен знать как правильно писать этот кондишн.
-
Не видел нигде конда на нублес, так что думаю нужно реализовывать. (хотя хз что у тебя за сборка, мб и реализовано)
-
Почему это без сурса не получится? Через АИ можно сделать это всё. Какая сборка?
-
Всем привет. Как-то забрал себе в коллекцию систему фантов, выложенную на данном форуме (не помню кем), думал полежат пусть, а потом гляну что да как. Ну и вот, начал ковырять лостов, решил прикрутить туда этих ботов. Прикрутил, вроде как работает (одиночные игроки бьют друг друга и других игроков, а пати тупо мечутся из точки в точку) Но нужно дорабатывать. Каждый класс (профа) имеет свое АИ, так что если довести все это дело довести до ума, то можно сделать не плохих ботов. Так же есть заготовки для фармеров. В общем решил поделиться может кому понадобится. Автора не знаю, но судя по комментариям в коде это некий "Vitalay". Как установить: Скачать
-
Сними её, прочисти шину спиртом и воткни снова. Если исправна, то должна хотя бы как "Неизвестное устройство" определиться. А вообще, возможно в биосе нужно переключить видеоадаптер.
-
В диспетчере устройств определяется? Если да, то скопируй ид оборудования и вбей в гугл - узнаешь модель видюхи.
-
Этот скилл присутствует у боссов? Статы скилла настроены верно? Хотелось бы взглянуть.
-
Обычно всем рейдам/эпикам должен даваться скилл Resist Full Magic Attack (4045).
-
Skill invul = SkillTable.getInstance().getInfo(1418,1); invul.getEffects(this, this, false, false, 60000, 0.0D, false); setVar("onSafeTele", "true", -1); sendMessage("Вы защищены от повреждений на 60 сек!"); Так должно норм быть
-
Ошибка не изменилась (т.е. изменения не были внесены). Файлы может не сохранил?
-
Добавь импорт import l2ft.gameserver.skills.SkillEntry; И замени getSkillEntry на getInfo
-
Пример для lostworld(не лучшая реализация, но как пример пойдет) В Player.java, в методе public boolean onTeleported() найти spawnMe(); ниже дописать: SkillEntry invul = SkillTable.getInstance().getSkillEntry(1418,1); invul.getEffects(this, this, false, false, 60000, 0.0D, 5); setVar("onSafeTele", "true", -1); sendMessage("Вы защищены от повреждений на 60 сек!"); Тут же найти метод public void setActive() и после setNonAggroTime(0); добавить: if(getVarB("onSafeTele", false)) { getEffectList().stopEffect(1418); unsetVar("onSafeTele"); }
-
1,2: Все там же, в Manage Users - выбрать нужного юзера -> Edit User
-
Будут использоваться названия констант, так что на англ. Можно сделать функцию, которая будет возвращать читаемое имя класса на его языке.
- 4 ответа
-
- 1