OGSR-Engine icon indicating copy to clipboard operation
OGSR-Engine copied to clipboard

Registration class `FS_Path` for Lua

Open Graff46 opened this issue 2 years ago • 9 comments

Некоторые методы экспортированные из CLocatorAPI в Lua (например .def("get_path", &CLocatorAPI::get_path), метод get_path) возвращают экземпляры FS_Path, но Lua "не понимает" этот тип и бросает ошибку. Я вернул регистрацию FS_Path для Lua, но без методов.

Graff46 avatar Jun 05 '23 13:06 Graff46

Возможно стоит раскомментировать методы?

Graff46 avatar Jun 05 '23 13:06 Graff46

там 2 метода get_path и append_path вопрос - зачем они в скриптах ? я только update_path испольшую get_path вообще возращяет ссылку на внутренний объект движка непотяно зачем

joye-ramone avatar Jun 05 '23 13:06 joye-ramone

там 2 метода get_path и append_path вопрос - зачем они в скриптах ? я только update_path испольшую get_path вообще возращяет ссылку на внутренний объект движка непотяно зачем

Хз что там наделали. Мне надо было использовать append_path, пол ночи искал ошибку. Если что-то есть, оно должно быть рабочим или этого не должно быть.

Graff46 avatar Jun 05 '23 13:06 Graff46

вместо append_path испольщуй update_path - тоже самое делает без FS_Path

а тебе для твоих махинаций с FS ну да. тебе надо чинить. но обычно это не надо и так только накосячиить можно

joye-ramone avatar Jun 05 '23 13:06 joye-ramone

вместо append_path испольщуй update_path - тоже самое делает без FS_Path

Разве? append_path Добавляет новый путь с алиасом (если бы он был в fs_game.ltx). А update_path возвращает абсолютный путь от алиаса и относительного пути. Вот так у меня работает:

local fs = getFS()
fs:append_path('$game_weathers$', fs:update_path('$game_config$', 'environment\\weathers'), '', 1)

Graff46 avatar Jun 05 '23 13:06 Graff46

Да. да. Я вспомнил что у тебя там с работы с путями для сюжета. ну тогда да тебе надо вернуть это все

joye-ramone avatar Jun 05 '23 13:06 joye-ramone

Да. да. Я вспомнил что у тебя там с работы с путями для сюжета. ну тогда да тебе надо вернуть это все

Не для сюжета. У меня одновременно 2 погоды ТЧшная и ЗПшная, я хочу переключать их ингейм. Я написал за ночь рабочий код, но возможно с большими утечками, скрытыми багами, костылями и тд. Вот коммит: https://github.com/Graff46/OGSR-Engine/commit/5f993f96e56208a7f5df0b8eb52ad3ad4df5eff8

Graff46 avatar Jun 05 '23 13:06 Graff46

Вы тогда или добавьте эти правки или удалите 2 метода возвращающие экземпляры путей, а то кто нибудь заюзает в своих модах и тоже будет пол дня причину искать.

Graff46 avatar Jun 05 '23 13:06 Graff46

да. я б просто убрал методы пока. у тебя очень спец кейс. не везде такое надо.

joye-ramone avatar Jun 05 '23 13:06 joye-ramone