|
Метки: очистка ручная отмена |
| (не показаны 22 промежуточные версии этого же участника) |
| Строка 1: |
Строка 1: |
| local p = {}
| |
|
| |
|
| local function split(str, sep)
| |
| local result = {}
| |
| for part in mw.text.gsplit(str, sep) do
| |
| table.insert(result, mw.text.trim(part))
| |
| end
| |
| return result
| |
| end
| |
|
| |
| function p.card(frame)
| |
| local args = frame:getParent().args or {}
| |
|
| |
| local name = args['Название'] or ''
| |
| local ingredients_raw = args['Ингредиенты'] or ''
| |
| local result = args['Результат'] or ''
| |
| local effects_raw = args['Эффекты'] or ''
| |
| local effects_desc = args['ОписаниеЭффектов'] or ''
| |
| local border_color = args['ЦветРамки'] or '#338833'
| |
| local bg_color = args['ЦветФона'] or '#1a2a1a'
| |
|
| |
| local ingredients = split(ingredients_raw, ';')
| |
| local effects = split(effects_raw, ';')
| |
|
| |
| local card = mw.html.create('div')
| |
| :addClass('alchemy-card')
| |
| :css('border-color', border_color)
| |
| :css('background-color', bg_color)
| |
|
| |
| card:tag('h3'):wikitext(name)
| |
|
| |
| local ingr_div = card:tag('div'):addClass('alchemy-ingredients')
| |
| for _, ingr in ipairs(ingredients) do
| |
| ingr_div:tag('div'):wikitext(ingr)
| |
| end
| |
|
| |
| card:tag('div'):addClass('alchemy-mix'):wikitext('Смешайте')
| |
|
| |
| card:tag('div'):addClass('alchemy-result'):wikitext(result)
| |
|
| |
| local eff_div = card:tag('div'):addClass('alchemy-effects')
| |
| for _, eff in ipairs(effects) do
| |
| eff_div:tag('div'):addClass('alchemy-effect-line'):wikitext(eff)
| |
| end
| |
|
| |
| if effects_desc and effects_desc ~= '' then
| |
| eff_div:tag('div'):addClass('alchemy-effect-desc'):wikitext(effects_desc)
| |
| end
| |
|
| |
| return tostring(card)
| |
| end
| |
|
| |
| return p
| |