Dota 2 Wiki
Advertisement

A documentação para este módulo pode ser criada na página Módulo:Hero ID/doc

local p = {}
local cargo = mw.ext.cargo
local getArgs = require('Module:Arguments').getArgs


function p.main(frame)
  local args = getArgs(frame, {
    wrappers = {
      'Template:Hero ID'
    }
  })
  return p._main(args)
end

function p._main(args)
  assert(args[1], 'Enter a hero name')

  local cargoOutput = cargo.query('heroes', 'icon, title', { where='_pageName="' .. args[1] .. '"', groupBy='_pageID' })[1]

  -- Check if cargo actually returned data.
  assert(cargoOutput, string.format('Could not find Cargo data for "%s"', args[1]))

  local formattedImage = string.format('[[%s|%s|link=%s|%s]]', cargoOutput['icon'], args[2] or '20px', args[1], args['text'] or cargoOutput['title'])
  local formattedLink = string.format('[[%s|%s]]', args['link'] or args[1], args['text'] or cargoOutput['title'])

  return string.format('<span class="image-link">%s %s</span>', formattedImage, formattedLink)
end


return p
Advertisement