Модуль:Meta Sprite: различия между версиями
Материал из Space Station 14 Вики
Pok (обсуждение | вклад) мНет описания правки |
Pok (обсуждение | вклад) мНет описания правки |
||
| (не показано 10 промежуточных версий этого же участника) | |||
| Строка 6: | Строка 6: | ||
function p.main(frame) | function p.main(frame) | ||
local mode = frame.args[1] -- Режим | local mode = frame.args[1] -- Режим | ||
local path = frame.args[2] -- | local filePath = require('Module:FilePath') | ||
local path = filePath.getOthersPath({ args = { frame.args[2] } }) -- Входной путь | |||
if not mode or not path then | if not mode or not path then | ||
return "Ошибка: необходимо указать режим и путь." | return "Ошибка: необходимо указать режим и путь." | ||
end | end | ||
local entry = data | local entry = nil | ||
-- Ищем среди всех ключей JSON по полному совпадению суффикса | |||
for key, value in pairs(data) do | |||
if key:sub(-#path) == path then | |||
entry = value | |||
break | |||
end | |||
end | |||
-- Если ничего не найдено | |||
if not entry then | if not entry then | ||
return "" | return "" | ||
end | end | ||
local result = entry[mode] | local result = entry[mode] | ||
if not result then | if not result then | ||
return "Ошибка: указанный режим не найден в данных." | return "Ошибка: указанный режим не найден в данных." | ||
end | end | ||
return result | return result | ||
end | end | ||
return p | return p | ||
Текущая версия от 16:38, 2 июня 2025
Для документации этого модуля может быть создана страница Модуль:Meta Sprite/doc
-- Загрузка данных
local data = mw.loadData("Модуль:IanComradeBot/meta sprite.json/data")
local p = {}
function p.main(frame)
local mode = frame.args[1] -- Режим
local filePath = require('Module:FilePath')
local path = filePath.getOthersPath({ args = { frame.args[2] } }) -- Входной путь
if not mode or not path then
return "Ошибка: необходимо указать режим и путь."
end
local entry = nil
-- Ищем среди всех ключей JSON по полному совпадению суффикса
for key, value in pairs(data) do
if key:sub(-#path) == path then
entry = value
break
end
end
-- Если ничего не найдено
if not entry then
return ""
end
local result = entry[mode]
if not result then
return "Ошибка: указанный режим не найден в данных."
end
return result
end
return p