Иконка ресурса

L2Data PHP Class 1.1.2

Нет прав для скачивания
Коррекция в отдаваемом функцией парса мультиселлов массиве данных на тему явного указывания, сколько адены участвует в расчете налога от замка (адена, задаваемая в виде {[adena];count} если что в расчете налога не участвует).
Теперь, если такая адена обнаруживается в обмене, то она сохраняется с отдельным ключом в массиве для этого варианта обмена.
Для примера фрагмент данных от мультиселла, в котором есть такие записи с налогооблагаемой аденой, хранящейся в записях с ключами "tax_adena":
PHP:
    [2404] => Array
        (
            [name] => [Scroll_of_Blessing_and_Cursed_free]
            [id] => 2404
            [config] => Array
                (
                    [required_npc] => Array
                        (
                            [0] => [head_blacksmith_boillin]
                            [1] => [head_blacksmith_ferris]
                            [2] => [head_blacksmith_flutter]
                            [3] => [head_blacksmith_kusto]
                            [4] => [head_blacksmith_lombert]
                            [5] => [head_blacksmith_mendio]
                            [6] => [head_blacksmith_newyear]
                            [7] => [head_blacksmith_noel]
                            [8] => [head_blacksmith_opix]
                            [9] => [head_blacksmith_roman]
                            [10] => [head_blacksmith_tapoy]
                            [11] => [head_blacksmith_vergara]
                        )

                    [is_dutyfree] => 0
                )

            [0] => Array
                (
                    [production] => Array
                        (
                            [0] => Array
                                (
                                    [name] => [cursed_free_scroll_r_weapon]
                                    [count] => 1
                                )

                        )

                    [ingredient] => Array
                        (
                            [0] => Array
                                (
                                    [name] => [adena]
                                    [count] => 110181950
                                )

                        )

                    [tax_adena] => 57990500
                )
  • Мне нравится
Реакции: kick
Исправление небольшой ошибки в функции loadMultisell, из-за которой могли некорректно разбираться мультиселлы, в которых ингредиентом задана адена в сокращенном виде, без указания имени самого предмета - для таких мультиселов могло разбирать только первый такой обмен, пропуская остальное.
Вобщем мультиселлы с строками типа таких:
Код:
{{{[stormbringer*caliburs];1}};{{[stormbringer];1};{[caliburs];1};{[dualsword_craft_stamp];1};{[crystal_c];183}};{548100}};
  • Мне нравится
Реакции: kick
Небольшое обновление:
  • В класс L2SData добавлена функция saveData, сохраняющая в файл данные, загруженные функцией loadData. Хочу сразу предупредить - даже если загруженные данные, никак не изменяя, обратно сохранить в файл - могут быть расхождения с оригинальным файлом, если там были комментарии на корейском и т.п., т.к. при загрузке файла идет перекодировка из UTF-16 в UTF-8 и часть таких символов может потеряться/исказится.
  • Добавлен класс L2CData для работы с клиентскими dat-файлами, декодированными при помощи L2ClientDat.
  • Мне нравится
Реакции: kick и Mifesto
Назад
Сверху Снизу