Статы заточки сета от ***

Balalab

Знаменитый
Пользователь
Сообщения
23
Розыгрыши
0
Репутация
0
Реакции
3
Баллы
1 275
Смысл в том что я хочу сделать отдельный параметр, который будет давать скил если сет будет заточен на, например, 25 и больше.
Делал по аналогии enchan6Skill в SetStats.java (исходник Acis 372 рева).
Вот что в логах еррора пишет.

Оффтоп:
янв 02, 2018 4:13:49 PM net.sf.l2j.commons.data.xml.XMLDocument loadDocument
SEVERE: Error loading XML file armorSets.xml
java.lang.IllegalArgumentException: StatsSet : Integer value required, but found: null for key: enchant25Skill.
at net.sf.l2j.gameserver.templates.StatsSet.getInteger(StatsSet.java:226)
at net.sf.l2j.gameserver.model.item.ArmorSet.<init>(ArmorSet.java:34)
at net.sf.l2j.gameserver.data.xml.ArmorSetData.parseDocument(ArmorSetData.java:53)
at net.sf.l2j.commons.data.xml.XMLDocument.loadDocument(XMLDocument.java:60)
at net.sf.l2j.commons.data.xml.XMLDocument.loadDocument(XMLDocument.java:36)
at net.sf.l2j.gameserver.data.xml.ArmorSetData.load(ArmorSetData.java:31)
at net.sf.l2j.gameserver.data.xml.ArmorSetData.<init>(ArmorSetData.java:25)
at net.sf.l2j.gameserver.data.xml.ArmorSetData$SingletonHolder.<clinit>(ArmorSetData.java:77)
at net.sf.l2j.gameserver.data.xml.ArmorSetData.getInstance(ArmorSetData.java:72)
at net.sf.l2j.gameserver.GameServer.<init>(GameServer.java:172)
at net.sf.l2j.gameserver.GameServer.main(GameServer.java:120)


armorsets.xml не загружается.
При компиле исходов все норм.
Ткните пожалуйста куда нюхать проблему?
 
Смысл в том что я хочу сделать отдельный параметр, который будет давать скил если сет будет заточен на, например, 25 и больше.
Делал по аналогии enchan6Skill в SetStats.java (исходник Acis 372 рева).
Вот что в логах еррора пишет.

Оффтоп:
янв 02, 2018 4:13:49 PM net.sf.l2j.commons.data.xml.XMLDocument loadDocument
SEVERE: Error loading XML file armorSets.xml
java.lang.IllegalArgumentException: StatsSet : Integer value required, but found: null for key: enchant25Skill.
at net.sf.l2j.gameserver.templates.StatsSet.getInteger(StatsSet.java:226)
at net.sf.l2j.gameserver.model.item.ArmorSet.<init>(ArmorSet.java:34)
at net.sf.l2j.gameserver.data.xml.ArmorSetData.parseDocument(ArmorSetData.java:53)
at net.sf.l2j.commons.data.xml.XMLDocument.loadDocument(XMLDocument.java:60)
at net.sf.l2j.commons.data.xml.XMLDocument.loadDocument(XMLDocument.java:36)
at net.sf.l2j.gameserver.data.xml.ArmorSetData.load(ArmorSetData.java:31)
at net.sf.l2j.gameserver.data.xml.ArmorSetData.<init>(ArmorSetData.java:25)
at net.sf.l2j.gameserver.data.xml.ArmorSetData$SingletonHolder.<clinit>(ArmorSetData.java:77)
at net.sf.l2j.gameserver.data.xml.ArmorSetData.getInstance(ArmorSetData.java:72)
at net.sf.l2j.gameserver.GameServer.<init>(GameServer.java:172)
at net.sf.l2j.gameserver.GameServer.main(GameServer.java:120)


armorsets.xml не загружается.
При компиле исходов все норм.
Ткните пожалуйста куда нюхать проблему?
Тыкаю: прочитать то, что вы только что запостили. В случае непонимания заюзать гугл переводчик.
 
Тыкаю: прочитать то, что вы только что запостили. В случае непонимания заюзать гугл переводчик.
Я вроде юзал) Ругается на параметр в armorsets.xml, но это ругается из-за ядра. Дело в том что даже если параметр enchant25Skill не задан в xml то все равно загрузки не происходит пока не почистить исходник от этого enchant25Skill. Вот по этому я и вышел к вам.
сам работаю в с++, яву учу параллельно языку с.
 
Я вроде юзал) Ругается на параметр в armorsets.xml, но это ругается из-за ядра. Дело в том что даже если параметр enchant25Skill не задан в xml то все равно загрузки не происходит пока не почистить исходник от этого enchant25Skill. Вот по этому я и вышел к вам.
сам работаю в с++, яву учу параллельно языку с.
Судя по ошибке, при парсинге не инициализируется свойство в StatsSet, т.к. не найден параметр enchant25Skill. Попробуйте сделать его равным 0 по дефолту.
 
Судя по ошибке, при парсинге не инициализируется свойство в StatsSet, т.к. не найден параметр enchant25Skill. Попробуйте сделать его равным 0 по дефолту.
Код:
public final class ArmorSet
{
    private final String _name;
    
    private final int[] _set = new int[5];
    
    private final int _skillId;
    private final int _shield;
    private final int _shieldSkillId;
    private final int _enchant6Skill;
        private final int _enchant25Skill;
    
    public ArmorSet(StatsSet set)
    {
        _name = set.getString("name");
        
        _set[0] = set.getInteger("chest");
        _set[1] = set.getInteger("legs");
        _set[2] = set.getInteger("head");
        _set[3] = set.getInteger("gloves");
        _set[4] = set.getInteger("feet");
        
        _skillId = set.getInteger("skillId");
        _shield = set.getInteger("shield");
        _shieldSkillId = set.getInteger("shieldSkillId");
        _enchant6Skill = set.getInteger("enchant6Skill");
                _enchant25Skill = set.getInteger("enchant25Skill");
    }
вот код, увы, но не получилось.
Я сделал проверку на заточку, если 25 или больше дает пасивный скил, по шаблону, как и при заточки от 6 и выше. Увы, не работает.
 
Можно закрыть!
Ошибка была в моей невнимательности, не правильно вывел в конфиг. :)
 
Назад
Сверху Снизу