california 155 Опубликовано 24 июля, 2015 Доброе время суток, не подскажете в каком .class, находятся проверки на изучение скилов определенному классу, попробывать хочется отменить проверки, чтобы все классы могли учить скилы от любых других классов. Сборка high-five p5. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Gaikotsu 620 Опубликовано 24 июля, 2015 ну удачи ждать ответа с таким размывчатым указанием сборки Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
california 155 Опубликовано 24 июля, 2015 ну удачи ждать ответа с таким размывчатым указанием сборки Мне всего лишь нужен пример, без разницы, главное чтобы хф. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Naik 419 Опубликовано 24 июля, 2015 Наверное стоит начать копать от нпса, который скиллы выдаёт? Там все проверки и должны.находиться, а именно вилейджмастеринстанс Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
SmokiMo 892 Опубликовано 24 июля, 2015 Смотри по skill_tree Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
SmokiMo 892 Опубликовано 24 июля, 2015 В моем случае есть хмл в котором перечнь скилов доступных для изучения к каждому классу, парсером считываем этот скилл лист и выдаем игроку этот лист, за исключением уже изученных =) Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
california 155 Опубликовано 24 июля, 2015 (изменено) Спасибо буду копать инсты, по xml это понятно, там надо под каждый класс писать все скилы) По результатам отпишу. Изменено 24 июля, 2015 пользователем california Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Naik 419 Опубликовано 24 июля, 2015 Спасибо буду копать инсты, по xml это понятно, там надо под каждый класс писать все скилы) По результатам отпишу. Вообще на многих сборках есть конфиг на мультипрофу. Этот конфиг и снимает ограничения. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
california 155 Опубликовано 24 июля, 2015 (изменено) Вообще на многих сборках есть конфиг на мультипрофу. Этот конфиг и снимает ограничения. У меня там конфиги на сабовые скилы снимаются, а не на все классы. Изменено 24 июля, 2015 пользователем california Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Mizuwokiru 181 Опубликовано 24 июля, 2015 Это саб-классы. А вообще, советовал бы искать по использованию класса AcquireSkillList (серверный пакет, отвечающий за отображение окошка изучения скиллов). А оттуда уже и условия найдешь. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
california 155 Опубликовано 24 июля, 2015 Это саб-классы. А вообще, советовал бы искать по использованию класса AcquireSkillList (серверный пакет, отвечающий за отображение окошка изучения скиллов). А оттуда уже и условия найдешь. /* */ /* */ import java.util.ArrayList; /* */ import java.util.List; /* */ import l2p.gameserver.model.base.AcquireType; /* */ /* */ public class AcquireSkillList /* */ extends L2GameServerPacket /* */ { /* */ private AcquireType _type; /* */ private final List<Skill> _skills; /* */ /* */ class Skill /* */ { /* */ public int id; /* */ public int nextLevel; /* */ public int maxLevel; /* */ public int cost; /* */ public int requirements; /* */ public int subUnit; /* */ /* */ Skill(int id, int nextLevel, int maxLevel, int cost, int requirements, int subUnit) /* */ { /* 26 */ this.id = id; /* 27 */ this.nextLevel = nextLevel; /* 28 */ this.maxLevel = maxLevel; /* 29 */ this.cost = cost; /* 30 */ this.requirements = requirements; /* 31 */ this.subUnit = subUnit; /* */ } /* */ } /* */ /* */ public AcquireSkillList(AcquireType type, int size) /* */ { /* 36 */ this._skills = new ArrayList(size); /* 37 */ this._type = type; /* */ } /* */ /* */ public void addSkill(int id, int nextLevel, int maxLevel, int Cost, int requirements, int subUnit) /* */ { /* 41 */ this._skills.add(new Skill(id, nextLevel, maxLevel, Cost, requirements, subUnit)); /* */ } /* */ /* */ public void addSkill(int id, int nextLevel, int maxLevel, int Cost, int requirements) /* */ { /* 45 */ this._skills.add(new Skill(id, nextLevel, maxLevel, Cost, requirements, 0)); /* */ } /* */ /* */ protected final void writeImpl() /* */ { /* 50 */ writeC(144); /* 51 */ writeD(this._type.ordinal()); /* 52 */ writeD(this._skills.size()); /* 54 */ for (Skill temp : this._skills) /* */ { /* 55 */ writeD(temp.id); /* 56 */ writeD(temp.nextLevel); /* 57 */ writeD(temp.maxLevel); /* 58 */ writeD(temp.cost); /* 59 */ writeD(temp.requirements); /* 60 */ if (this._type == AcquireType.SUB_UNIT) { /* 61 */ writeD(temp.subUnit); /* */ } /* */ } /* */ } /* */ } Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Gaikotsu 620 Опубликовано 24 июля, 2015 еще и декомпил? тяжко тебе будет это править, ой как тяжко. учитывая еще что судя по импортам это овер, а в нем проверки на допустимость идут в методе rewardSkills класса Player, при восстановлении скиллов (все неподходящие просто пропускаются и не добавляются игроку) - самого наверное большого и сложного в ядре и декомпил/компил там столько неочевидных косяков внесет что тебе еще повезет если сервер после этого хотя бы запустится. ну и еще конечно проверки на допустимость изучения есть в пакете RequestAquireSkill Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты