1. Гость, мы просим Вас ознакомиться с Правилами Форума и Отказом от ответственности!

Любая версия pwAPI (files)

Тема в разделе 'PW Разработки', создана пользователем SkyDev, 14 янв 2015.

  1. TopicStarter Overlay

    SkyDev Программист Old school Пользователи Open Source Contributor

    Сообщения:
    197
    Лайки:
    234
    Пол:
    Мужской
    Репутация:
    -1
    Страна:
    Ukraine Ukraine
    Небольшой порт моего api для работы с дата файлами клиента\сервера perfect world.
    Ссылка - https://github.com/skynet2/pwAPI
    На данный момент поддерживается работа с :
    • elements.data ( Используя конфиги для редактора ronny )
    • tasks.data ( Классы взяты с редактора Joslin`а )
    • gshop.data ( Орентировался на поддержку версии 1.5.1 ( клиент ) )
    • precinct ( Классы взяты с редактора Joslin`а )
    В планах (domain.data\sev,npcgen)

    API написано на языке С#.

    Структура достаточно простая, Readers отвечают за чтение определенных типов файлов, а Structures* соотвественно вмещают в себе структуры.

    Пример использования :
    Импорт стилей в шоп
    Добавление новых полетов\стилей с конвертированием версии
    Код:
                var rus = new ElementReader(@"C:\work\PW_1.5.1_v101.cfg", @"C:\work\elements.data");
                var china = new ElementReader(@"C:\work\PW_1.5.2_v127.cfg", @"C:\chinaPW\element\data\elements.data");
                Utils.ElementUtils.AddUniqFly(rus, china,out flyPaths);
                Utils.ElementUtils.AddUniqStyles(rus, china, out stylesPaths,out weaponsPaths);
                rus.Save(@"C:\work\elements+china.data");
    Код:
        GShopReader shop = new GShopReader (@"/home/iren/work/gshop.data"); // Чтение GShop,data
                ElementReader element = new ElementReader(@"/home/iren/work/PW_1.5.1_v101.cfg", @"/home/iren/work/elements.data"); // Чтение конфига + елемента
                GShopUtils.ClenUP (shop, element); // Очистка gshop.data от старых стилей
                GShopUtils.AddStyles (shop, element); // Добавление новых
                shop.Save ("path"); // Сохранение 
    Перевод element.data
    Код:
    ElementReader rus = new ElementReader (@"/home/iren/work/PW_1.5.1_v101.cfg", @"/home/iren/work/elements.data");
                ElementReader eng = new ElementReader (@"/home/iren/work/PW_1.5.2_v123.cfg", "/home/iren/work/elements_new.data");
                ElementUtils.Translate (eng, rus);
    rus.Save("elements.data");
    Позже добавлю еще несколько примеров ( по мере портирования с явы ) :)

    Отдельное спасибо бисту :D
    Последнее редактирование: 19 янв 2015
    dixgen2, SomePerson, werewolf и 10 другим нравится это.
  2. pdev 14:23 Команда форума Администратор Программист Open Source Contributor

    Сообщения:
    1.409
    Лайки:
    1.407
    Пол:
    Мужской
    Репутация:
    7
    Команда:
    Indy
    Страна:
    Turkey Turkey
    еще один человек, не стесняющийся своего кода:)
    Joslian нравится это.
  3. werewolf Old school Пользователи

    Сообщения:
    507
    Лайки:
    158
    Пол:
    Мужской
    Репутация:
    1
    А чего его стесняться? Мне например, как не программисту, совершенно пофигу как написан код, красиво или тяп-ляп... главное чтобы он работал. Сильно сомневаюсь, что у крупных компаний, адоб к примеру, код написан идеально.
  4. TopicStarter Overlay

    SkyDev Программист Old school Пользователи Open Source Contributor

    Сообщения:
    197
    Лайки:
    234
    Пол:
    Мужской
    Репутация:
    -1
    Страна:
    Ukraine Ukraine
    Программисты любят друг друга троллить по поводу грамотности кода.
    С одной стороны идея правильная, код работает, значит все отлично ( для пользователя ), программистам же зачастую приходится поддерживать свой\чужой код, соотвтвенно если где-то нагавнокоджено, это вызывает много бурных эмоций у человека который будет в этом всем разбираться.
    Например, в данном проекте, около года мой метод добавления в шоп (написаный на коленке) прекрасно работал и никого не смущал (меня) :D
    [​IMG]
    После того как я открыл исходник этот метод достаточно лесно прокоментировали и пришлось его изменить ;D
    [​IMG]
    Функционал по сути ни капли не изменился, но выглядит приятней и понимать легче
  5. werewolf Old school Пользователи

    Сообщения:
    507
    Лайки:
    158
    Пол:
    Мужской
    Репутация:
    1
    В большинстве случаев крики "говнокод" сводятся к тому что код просто трудно прочитать (отступы, табуляция...эстетика написания короче), и, как следствие, трудно понять.
    Поэтому когда пишешь для себя или на заказ (кому исходники не нужны) это одно. А когда ты код показываешь на обозрение, будь готов к критике (даже если с точки зрения эстетики написания кода он идеален).
    Да и вообще, тут не тот форум, где это обсуждать.
    P.S. Поздравляю с ленточками)))
  6. Joslian AngeliCore Программист Пользователи Open Source Contributor

    Сообщения:
    1.051
    Лайки:
    537
    Пол:
    Мужской
    Репутация:
    2
    это вовсе не говнокод. http://govnokod.ru/
Черновик сохранён Черновик удалён
Similar Threads
  1. Тыщ
    Ответов:
    1
    Просмотров:
    1.372
  2. Joslian
    Ответов:
    18
    Просмотров:
    14.360
  3. TwoStar
    Ответов:
    0
    Просмотров:
    1.686
  4. NetSpirit
    Ответов:
    16
    Просмотров:
    3.537
  5. wmgames1986
    Ответов:
    3
    Просмотров:
    1.658
Загрузка...

Поделиться этой страницей