Исходник J-bp. Расширенная библиотека для работы с JSON в Moonloader | Удобные конфиги. Работа с imgui/mimgui. cData

1785663821229.png

Заголовок: Расширенная библиотека для работы с JSON в Moonloader.
Зависимость: cjson
Установка: Переместить папку jbp из архива в moonlaoder/lib
Подключение: local jbp = require 'jbp'
Библиотека JBP предоставляет простой и надёжный способ работы с данными в скриптах GTA SA. Особенно полезна при работе с указателями и сложными структурами данных, делая код более чистым и понятным.

Использование:
Lua:
local jbp = require "jbp"

-- Создание объекта
local obj = jbp.create({
    name = "test",
    value = 42,
    main = {
        show = imgui.new.bool(false)
    }
})

-- Сохранение в файл с красивым форматированием
obj:save_to_file("data.json", true, 2)

Все обновления а так-же подробное описание и примеры использования - здесь.(Гитхаб)

Прикрепил файл test_lua.lua с примерами работы с библиотекой.
Прикрепил файл gui_examples.lua с примерами Imgui и Mimgui используя данную библиотеку.
 

Вложения

  • test_lua.lua
    5.5 KB · Просмотры: 22
  • gui_examples.lua
    4.4 KB · Просмотры: 24
  • jbp.rar
    23.6 KB · Просмотры: 11
Последнее редактирование:

UBP

Технический специалист
Автор темы
Проверенный
375
267
Последнее редактирование:

chromiusj

Известный
Модератор
6,081
4,450
Я только начал разработку, буду пробовать. Создание темы мискликнул и не вписал все что хотел.
Скоро обновлю


Обновил, добавил сохранение cdata,
я вообще имел ввиду как будут храниться данные из инпутов mimgui, как в carbjsonconfig типа,но это тоже прикольно
 
  • Нравится
Реакции: UBP

UBP

Технический специалист
Автор темы
Проверенный
375
267
я вообще имел ввиду как будут храниться данные из инпутов mimgui, как в carbjsonconfig типа,но это тоже прикольно
Я понял. Работаю над обновлением. Сейчас в планах реализовать сериализацию сложных структур ffi без reflection.
Насчёт мимгуи, это точно будет. Скоро
 
  • Нравится
Реакции: PXPlayer и chromiusj

UBP

Технический специалист
Автор темы
Проверенный
375
267
Обновлено:
Функция path_query(data, path):
Убраны захардкодженые значения поиска, добавлена поддержка множественных индексов [0][1], обработка wildcard массива: items[*].
 

UBP

Технический специалист
Автор темы
Проверенный
375
267
Обновлено, добавлено кеширование, обработчик ошибок, собственный json парсер
 

UBP

Технический специалист
Автор темы
Проверенный
375
267
Вернул cjson как зависимость для парсинга некоторых json строк и кодинга/декодинга