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

Нет описания правки
Нет описания правки
Строка 32: Строка 32:
      
      
     local description = default(frame.args.description, "Не обладает никакими особыми свойствами") -- Описание
     local description = default(frame.args.description, "Не обладает никакими особыми свойствами") -- Описание
     local mutationId = default(frame.args.mutationId, "")                                          -- Мутации  
     local mutationId = frame.args.mutationId                                                           -- Мутации  
     local location = default(frame.args.location, "* Нет гарантированных мест спавна")             -- Местонахождение  
     local location = default(frame.args.location, "* Нет гарантированных мест спавна")                 -- Местонахождение  
      
      
     -- Разделение параметра mutationId на слова
     -- Разделение параметра mutationId на слова
Строка 44: Строка 44:
     end
     end


    local words = splitWords(mutationId)
     local mutationCells = ""
     local mutationCells = ""
      
     if mutationId == nil then
    -- Генерация HTML-кода для каждого ID
        -- Если параметр отсутствует
    local mutationCells = ""
        mutationCells = "" -- Не отображаем ничего для мутаций
     if mutationId == "" then
     elseif mutationId == "" then
         -- Если параметр пуст
         -- Если параметр пуст
         mutationCells = '<div class="maturation-cell">Не имеет мутаций</div> \n'
         mutationCells = '<div class="maturation-cell">Не имеет мутаций</div> \n'
     else
     else
         -- Есть ID имеется
         -- Если параметр задан и не пуст
         local words = splitWords(mutationId)
         local words = splitWords(mutationId)
         for _, word in ipairs(words) do
         for _, word in ipairs(words) do
Строка 79: Строка 78:
     out = out .. frame:preprocess('* {{tooltip|Освещения|Оптимальный уровень освещения|color=#e1f6ff}}: ' .. '<b>' .. idealLight .. '</b>' .. '\n')
     out = out .. frame:preprocess('* {{tooltip|Освещения|Оптимальный уровень освещения|color=#e1f6ff}}: ' .. '<b>' .. idealLight .. '</b>' .. '\n')
     out = out .. '| ' .. description .. '\n'
     out = out .. '| ' .. description .. '\n'
     out = out .. frame:preprocess('|' .. mutationCells .. '\n')
      
     out = out .. frame:preprocess('|{{SlideMenu|overlay|color=#e1f6ff|background-color=#0e693a|border-color=#094124|border-size=3px|title=Список|content=<p></p> \n' .. location .. '}} \n')
    -- Добавление блока мутаций, если параметр не отсутствует
    if mutationId ~= nil then
        out = out .. frame:preprocess('|' .. mutationCells .. '\n')
     end
 
    -- Добавление блока с локацией, меняя цвета в зависимости от наличия параметра `mutationId`
    if mutationId == nil then
        out = out .. frame:preprocess('|{{SlideMenu|overlay|color=#e1f6ff|background-color=#301453|border-color=#211235|border-size=3px|title=Список|content=<p></p> \n' .. location .. '}} \n')
    else
        out = out .. frame:preprocess('|{{SlideMenu|overlay|color=#e1f6ff|background-color=#0b6b3f|border-color=#074d2f|border-size=3px|title=Список|content=<p></p> \n' .. location .. '}} \n')
    end
   
     out = out .. '|- \n'
     out = out .. '|- \n'
      
      
Строка 86: Строка 96:
     if firstRun then
     if firstRun then
         firstRun = false
         firstRun = false
         out = out .. '<div class="customCSS" style="display:none"> .maturation-cell { width: 100%; margin: 5px 0; box-sizing: border-box; text-align: left; background: #0e693a; padding: 6px 10px; border-radius: 0.3em; border: 2px solid #094124; font-weight: 500; transition: background 0.05s; } .maturation-cell:hover { background: #0f6f3d; } </div>'
         out = out .. '<div class="customCSS" style="display:none"> .maturation-cell { width: 100%; margin: 5px 0; box-sizing: border-box; text-align: left; background: #10673a; padding: 6px 10px; border-radius: 0.3em; border: 2px solid #094124; font-weight: 500; transition: background 0.05s; } .maturation-cell:hover { background: #126d3e; } </div>'
     end
     end
     return out
     return out