Модуль:Entity Sprite: различия между версиями
Pok (обсуждение | вклад) Нет описания правки |
Pok (обсуждение | вклад) мНет описания правки |
||
| Строка 1: | Строка 1: | ||
local p = {} | local p = {} | ||
-- Загрузка данных | -- Загрузка данных | ||
local | local function loadData(filePath) | ||
return mw.loadData(filePath) | |||
return | |||
end | end | ||
| Строка 113: | Строка 108: | ||
-- Создаём индекс для путей | -- Создаём индекс для путей | ||
local function createSpritePathIndex(data) | local function createSpritePathIndex(data) | ||
local index = {} | local index = {} | ||
for _, entry in ipairs(data) do | for _, entry in ipairs(data) do | ||
| Строка 123: | Строка 115: | ||
end | end | ||
end | end | ||
return index | |||
end | end | ||
| Строка 208: | Строка 199: | ||
local param = frame.args[1] | local param = frame.args[1] | ||
local secondaryParam = frame.args[2] | local secondaryParam = frame.args[2] | ||
local data = loadData('User:IanComradeBot/prototypes/entity sprite.json') | |||
if not data or type(data) ~= 'table' then | |||
return 'Ошибка: Невозможно загрузить данные из JSON.' | |||
end | |||
-- Индекс путей | -- Индекс путей | ||
| Строка 224: | Строка 220: | ||
elseif param == "image" and secondaryParam then | elseif param == "image" and secondaryParam then | ||
for _, entry in ipairs(data) do | for _, entry in ipairs(data) do | ||
if entry.id == secondaryParam then | if tostring(entry.id) == tostring(secondaryParam) then | ||
return getSpritePath(entry) or "Ошибка: Спрайт не найден." | return getSpritePath(entry) or "Ошибка: Спрайт не найден." | ||
end | end | ||