Module:Crafting: Difference between revisions

m
no edit summary
(Change cauldron grid to dynamic grid)
mNo edit summary
 
(70 intermediate revisions by 3 users not shown)
Line 12: Line 12:
end
end


return Grid(args, 3, 3)
return Grid(args, args['width'] or args['Width'] or 3, args['height'] or args['Height'] or 3)
end
end


Line 33: Line 33:


return Grid(args, 5, 1)
return Grid(args, 5, 1)
end
-- Make a dynamic crafting grid
function p.Dynamic( f )
local args = f.args
if #args == 0 then
args = f:getParent().args
end
return Grid(args, args['width'] or args['Width'], args['height'] or args['Height'])
end
end


Line 91: Line 81:
else
else
sprite:SetSize(args['size'] or args['Size'] or 32)
sprite:SetSize(args['size'] or args['Size'] or 32)
end
    local name = args['name'] or args['Name'] or args['title'] or args['Title']
    if name and #name ~= 0 then
        sprite:SetTitle(name)
    end
    local lore = args['lore'] or args['Lore'] or args['text'] or args['Text']
    if lore and #lore ~= 0 then
        sprite:SetLore(lore)
    end
local hideTooltip = args['hideToolTip'] or args['hideTooltip'] or args['HideToolTip'] or args['HideTooltip']
if hideTooltip then
sprite:HideTooltip()
end
end


local inline = args['inline'] or args['Inline']
local inline = args['inline'] or args['Inline']
local spriteDiv
local spriteDiv
if inline then
local parentDiv = mw.html.create("span"):css("position","relative")
if inline ~= 'false' then
spriteDiv = sprite:GenerateHTML("span")
spriteDiv = sprite:GenerateHTML("span")
spriteDiv:css("display","inline-block")
spriteDiv:css("display","inline-block")
Line 103: Line 110:
end
end


local count = tonumber(args['count']) or tonumber(args['Count']) or string.match(tostring(args['count']),'%?') or string.match(tostring(args['Count']),'%?') or 1
if count ~= 1 then
local countSpan = parentDiv:tag("span"):wikitext(count)
countSpan:addClass("invslot-stacksize")
end




local count = tonumber(args['count']) or tonumber(args['Count']) or 1
local enchanted = args['enchanted'] or args['Enchanted']
if count ~= 1 then
if enchanted == 'true' then
local countSpan = spriteDiv:tag("span"):wikitext(count)
spriteDiv:addClass("enchanted")
countSpan:addClass("invslot-stacksize")
end
 
local link = args['link'] or args['Link']
if link and #link ~= 0 then
if link:sub( 1,2 ) == '[[' then
parentDiv:wikitext(link:sub( 1,#link-2 ) .. '|')
elseif link:sub ( 1,1 ) == '[' then
parentDiv:wikitext(link:sub( 1,#link-1 ) .. '|')
end
end
 
 
parentDiv:node(spriteDiv)
if link and #link ~= 0 then
if link:sub( 1,2 ) == '[[' then
parentDiv:wikitext(']]')
elseif link:sub ( 1,1 ) == '[' then
parentDiv:wikitext(']')
end
end
end


return spriteDiv
return parentDiv
end
end


Line 147: Line 177:
else
else
sprite:SetSize(args['size'] or args['Size'] or 32)
sprite:SetSize(args['size'] or args['Size'] or 32)
end
    local name = args['name'] or args['Name'] or args['title'] or args['Title']
    if name and #name ~= 0 then
        sprite:SetTitle(name)
    end
    local lore = args['lore'] or args['Lore'] or args['text'] or args['Text']
    if lore and #lore ~= 0 then
        sprite:SetLore(lore)
    end
local hideTooltip = args['hideToolTip'] or args['hideTooltip'] or args['HideToolTip'] or args['HideTooltip']
if hideTooltip then
sprite:HideTooltip()
end
end


Line 156: Line 202:
spriteDiv:css("border-width","3px")
spriteDiv:css("border-width","3px")
spriteDiv:css("border-style","solid")
spriteDiv:css("border-style","solid")
spriteDiv:css("box-sizing","border-box")


if args['standard'] or args['Standard'] then
if args['standard'] or args['Standard'] then
Line 163: Line 210:
spriteDiv:css("background-color","#67AFD0")
spriteDiv:css("background-color","#67AFD0")
spriteDiv:css("border-color","#1A536E #C0DEEB #C0DEEB #1A536E")
spriteDiv:css("border-color","#1A536E #C0DEEB #C0DEEB #1A536E")
end
local count = tonumber(args['count']) or tonumber(args['Count']) or 1 or "?"
if count ~= 1 then
local countSpan = spriteDiv:tag("span"):wikitext(count)
countSpan:addClass("invslot-stacksize")
end
end


Bureaucrats, Check users, emailconfirmed, Interface administrators, staff, Administrators, translation-admin, Widget editors
1,637

edits