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

мНет описания правки
мНет описания правки
Строка 10: Строка 10:


local function generateTemplate(entry)
local function generateTemplate(entry)
     if not entry.id or not entry.Sprite or not entry.Sprite.sprite then return "" end
     if not entry.id or not entry.Sprite or not entry.Sprite.sprite then return nil end
     return string.format(
     return string.format(
         [[<div class="entity-sprite__strings">== Краткое описание =={{Файл<br>|Описание = <br>|Id      = %s<br>|Сервера  = {{abb|SS14}}<br>|Источник = <br>|Путь    = Resources/Textures/%s<br>|Теги    = <br>}}<br>== Лицензирование ==<br>{{CC-BY-SA-3.0}}<br></div><div class="copy-icon">📋</div><br>]],
         [[<div class="entity-sprite__strings">== Краткое описание =={{Файл<br>|Описание = <br>|Id      = %s<br>|Сервера  = {{abb|SS14}}<br>|Источник = <br>|Путь    = Resources/Textures/%s<br>|Теги    = <br>}}<br>== Лицензирование ==<br>{{CC-BY-SA-3.0}}<br></div><div class="copy-icon">📋</div><br>]],
Строка 20: Строка 20:
     local data = loadData('User:IanComradeBot/prototypes/entity sprite.json')
     local data = loadData('User:IanComradeBot/prototypes/entity sprite.json')
     if not data or type(data) ~= 'table' then return 'Ошибка: Невозможно загрузить данные из JSON.' end
     if not data or type(data) ~= 'table' then return 'Ошибка: Невозможно загрузить данные из JSON.' end
 
   
     local result = {}
     local result = ""
     local append = table.insert
     local append = function(s) result = result .. s end


     for _, entry in ipairs(data) do
     for _, entry in ipairs(data) do
         local template = generateTemplate(entry)
         local template = generateTemplate(entry)
         if template ~= "" then
         if template then
             append(result, template)
             append(template)
         end
         end
     end
     end


     return table.concat(result)
     return result
end
end


return p
return p