Модуль:Entity Sprite: различия между версиями

мНет описания правки
мНет описания правки
Строка 1: Строка 1:
local data = mw.loadData("Module:Entity Sprite/data")
local data = mw.loadData("Module:Entity Sprite/data")
local p = {}
local p = {}


function p.getData()
function p.getData()
     return data
     return data
end
local function getSpritePath(entry)
    if entry.Sprite and entry.Sprite.sprite then
        return entry.Sprite.sprite
    elseif entry.Icon and entry.Icon.sprite then
        return entry.Icon.sprite
    elseif entry.Sprite and entry.Sprite.layers then
        for _, layer in pairs(entry.Sprite.layers) do
            if layer.sprite then
                return layer.sprite
            end
        end
    end
    return nil
end
end


Строка 13: Строка 27:
     for _, entry in ipairs(data) do
     for _, entry in ipairs(data) do
         if entry.id == id then
         if entry.id == id then
             return entry.Sprite and entry.Sprite.sprite or "Ошибка: спрайт не найден"
             return getSpritePath(entry) or "Ошибка: спрайт не найден"
         end
         end
     end
     end