Module:NPCMaster and Module:NPCMaster/sandbox: Difference between pages

(Difference between pages)
Jump to navigation Jump to search
Page 1
Page 2
(Not used)
 
>OmegaK2
(Created page with "local xtable = require('Module:Table') local util = require('Module:Util') local getArgs = require('Module:Arguments').getArgs local m_item = require('Module:Item') local p =...")
 
Line 1: Line 1:
local m_util = require('Module:Util')
local xtable = require('Module:Table')
local util = require('Module:Util')
local getArgs = require('Module:Arguments').getArgs
local getArgs = require('Module:Arguments').getArgs
local m_item = require('Module:Item')


local p = {}
local p = {}
local g_frame, g_args


function p.infobox(frame)
function p.infobox(frame)
Line 17: Line 20:
      
      
      
      
     -- get args/frameQQD
     -- get args/frame
     tpl_args = getArgs(frame, {
     g_args = getArgs(frame, {
         parentFirst = true
         parentFirst = true
     })
     })
     frame = m_util.misc.get_frame(frame)
     if frame == nil or type(frame) == 'table' then
        frame = mw.getCurrentFrame()
    end
   
    g_frame = frame
      
      
     -- Argument validation
     -- Argument validation
Line 29: Line 36:
         lv = 'lv' .. i
         lv = 'lv' .. i
         for _, arg in ipairs({lv .. '_rep', lv .. '_rep_total'}) do
         for _, arg in ipairs({lv .. '_rep', lv .. '_rep_total'}) do
             lv_n = tonumber(tpl_args[arg])
             lv_n = tonumber(g_args[arg])
             if lv_n == nil then
             if lv_n == nil then
                 error(arg .. ' must be a valid number')
                 error(arg .. ' must be a valid number')
             else
             else
                 tpl_args[arg] = lv_n
                 g_args[arg] = lv_n
             end
             end
         end
         end
         tpl_args[lv .. '_unlocks'] = tpl_args[lv .. '_unlocks'] or '?'
         g_args[lv .. '_unlocks'] = g_args[lv .. '_unlocks'] or '?'
     end
     end
      
      
Line 48: Line 55:
                 :done()
                 :done()
             :tag('th')
             :tag('th')
                 :wikitext(m_util.html.abbr('Rep.', 'Reputation needed to level up'))
                 :wikitext(util.html.abbr('Rep.', 'Reputation needed to level up'))
                 :done()
                 :done()
             :tag('th')
             :tag('th')
                 :wikitext(m_util.html.abbr('Rep. total', 'Total reputation needed to level up'))
                 :wikitext(util.html.abbr('Rep. total', 'Total reputation needed to level up'))
                 :done()
                 :done()
             :tag('th')
             :tag('th')
                 :wikitext(m_util.html.abbr('Unlocks', 'Features first unlocked on this level'))
                 :wikitext(util.html.abbr('Unlocks', 'Features first unlocked on this level'))
                 :done()
                 :done()
             :done()
             :done()
Line 61: Line 68:
          
          
     for i=1, 8 do
     for i=1, 8 do
         --local property = {}
         local property = {}
         local hr
         local hr
         local row = exptable:tag('tr')
         local row = exptable:tag('tr')
Line 69: Line 76:
                 :wikitext(i)
                 :wikitext(i)
                 :done()
                 :done()
         --property['is level'] = i
         property['is level'] = i
          
          
         lv = 'lv' .. i
         lv = 'lv' .. i


         hr = lang:formatNum(tpl_args[lv .. '_rep'])
         hr = lang:formatNum(g_args[lv .. '_rep'])
         row
         row
             :tag('td')
             :tag('td')
                 :attr('data-sort-value', tpl_args[lv .. '_rep'])
                 :attr('data-sort-value', g_args[lv .. '_rep'])
                 :wikitext(hr)
                 :wikitext(hr)
                 :done()
                 :done()
         --property['has experience'] = hr
         property['has experience'] = hr
          
          
         hr = lang:formatNum(tpl_args[lv .. '_rep_total'])
         hr = lang:formatNum(g_args[lv .. '_rep_total'])
         row
         row
             :tag('td')
             :tag('td')
                 :attr('data-sort-value', tpl_args[lv .. '_rep_total'])
                 :attr('data-sort-value', g_args[lv .. '_rep_total'])
                 :wikitext(hr)
                 :wikitext(hr)
                 :done()
                 :done()
         --property['has total experience'] = hr
         property['has total experience'] = hr
          
          
          
          
         row
         row
             :tag('td')
             :tag('td')
                 :wikitext(tpl_args[lv .. '_unlocks'])
                 :wikitext(g_args[lv .. '_unlocks'])
                 :done()
                 :done()
                  
                  
         --property['has unlocks'] = tpl_args[lv .. '_unlocks']
         property['has unlocks'] = g_args[lv .. '_unlocks']
          
          
         --frame:callParserFunction('#subobject:', property)
         g_frame:callParserFunction('#subobject:master level', property)
     end
     end
      
      
     return tostring(exptable)
     return tostring(exptable)
end
function p.crafting(frame)
end
end


return p
return p