SkillDuration

  • Автор темы Автор темы Maiden7
  • Дата начала Дата начала

Maiden7

Величайший
Проверенный
Сообщения
779
Розыгрыши
0
Решения
3
Репутация
170
Реакции
620
Баллы
1 563
Хроники
  1. Chaotic Throne: High Five
Исходники
Присутствуют
Сборка
L2J Mobius
Всем привет.
В конфигах SkillDurationList равный True задает всем умениям из списка время 1ч
А где найти множитель, время, что то что задает этот параметр?


JavaScript:
            ENABLE_MODIFY_SKILL_DURATION = characterConfig.getBoolean("EnableModifySkillDuration", false);
            if (ENABLE_MODIFY_SKILL_DURATION)
            {
                final String[] propertySplit = characterConfig.getString("SkillDurationList", "").split(";");
                SKILL_DURATION_LIST = new HashMap<>(propertySplit.length);
                for (String skill : propertySplit)
                {
                    final String[] skillSplit = skill.split(",");
                    if (skillSplit.length != 2)
                    {
                        LOGGER.warning("[SkillDurationList]: invalid config property -> SkillDurationList " + skill);
                    }
                    else
                    {
                        try
                        {
                            SKILL_DURATION_LIST.put(Integer.parseInt(skillSplit[0]), Integer.parseInt(skillSplit[1]));
                        }
                        catch (NumberFormatException nfe)
                        {
                            if (!skill.isEmpty())
                            {
                                LOGGER.warning(StringUtil.concat("[SkillDurationList]: invalid config property -> SkillList \"", skillSplit[0], "\"", skillSplit[1]));
                            }
                        }
                    }
                }
            }

Не там наверн ищу, подскажите?!
 
Так и будет со временем.



Ну я думал да, какая то формула типа там х20 или там х100 ну попроще.
А вот это:

JavaScript:
if (Config.ENABLE_MODIFY_SKILL_DURATION && Config.SKILL_DURATION_LIST.containsKey(_id) && (_operateType != SkillOperateType.T))
{
    if ((_level < 100) || (_level > 140))
    {
        abnormalTime = Config.SKILL_DURATION_LIST.get(_id);
    }
    else if ((_level >= 100) && (_level < 140))
    {
        abnormalTime += Config.SKILL_DURATION_LIST.get(_id);
    }
}

Для меня не понятно, пока в отпуске отложу, попозже посамообучаюсь яве.
У тебя конфиг принимает строчку вида skillId,duration[;skillId,duration...]. Например, 1,3600;2,7200;3,1234.
В коде в самом начале темы эта строчка парсится: перебираются пары skillId,duration, парсятся сами пары и записываются в хэш мэп, где ключ - skillId, а значение - duration.
В Skill.java в этом куске идет проверка, есть ли этот скилл в хэш мэпе. Если есть - задается значение (duration) по ключу (skillId) из хэш мэпы.
 

Назад
Сверху