270 538
contributi
(Changing sigla LC to TC, fixing alternative forms links *** sovrascritto il testo esistente ***) |
(Automatic text color using ChooseColor *** sovrascritto il testo esistente ***) |
||
local moves = mw.loadData('Modulo:Move/data')
local mtdata = mw.loadData('Modulo:Machines/data')
local cc = require('Modulo:ChooseColor')
-- Tabelle dati
j.strings = {
HEADERBASE = [=[
{| class="roundy text-center white-rows roundy-footer no-border-spacing" style="${bg}
! class="roundytl hidden-xs" rowspan="${rs}" | #
! rowspan="${rs}" colspan="2" | Pokémon
! class="hidden-sm" rowspan="${rs}" | Tipo
! class="hidden-sm" style="padding: 0 0.7ex;" rowspan="${rs}" | Gruppo
! class="roundytr" colspan="${cs}" | ]=],
HEADERTM = [=[
! class="roundytop ${textcolor}" style="background: #${bg}; min-width: 4ex; line-height: 1em;" colspan="${cs}" | [[${genl} generazione|${genr}]]<div class="text-small">${tm}</div>
]=],
}
cells.level = function(gen)
local str = '! class="roundytop ${textcolor}" style="background: #${bg}; min-width: 4ex;" colspan="${cs}" | [[${genl} generazione|${genr}]]\n'
local row = {}
for a = gen, gendata.latest do
table.insert(row, string.interp(str, {bg = c[gendata[a].region].normale,
genl = gendata[a].ext, genr = gendata[a].roman,
cs = mlentry.maxCellsNumber[a]
textcolor = cc.forModBg{args={gendata[a].region}}}))
end
return table.concat(row)
cells.tm = function(gen, tms)
local str = '! class="roundytop ${textcolor}" style="background: #${bg}; min-width: 4ex; line-height: 1em;" colspan="${cs}" | [[${genl} generazione|${genr}]]<div class="text-small">${tm}</div>\n'
local row = {}
local l
table.insert(row, string.interp(str, {bg = c[gendata[a].region].normale,
genl = gendata[a].ext, genr = gendata[a].roman, tm = l,
cs = mlentry.maxCellsNumber[a]
textcolor = cc.forModBg{args={gendata[a].region}}}))
end
return table.concat(row)
cells.breed = function(gen)
local str = '! class="roundytop ${textcolor}" style="background: #${bg}; min-width: 4ex" colspan="${cs}" | [[${genl} generazione|${genr}]]\n'
local row = {}
for a = gen, gendata.latest do
table.insert(row, string.interp(str, {bg = c[gendata[a].region].normale,
genl = gendata[a].ext, genr = gendata[a].roman,
cs = mlentry.maxCellsNumber[a]
textcolor = cc.forModBg{args={gendata[a].region}}}))
end
return table.concat(row)
cells.tutor = function(gen, gms)
local str = '! class="roundytop ${textcolor}" style="background: #${bg}; min-width: 6ex;" | ${game}\n'
local row = {}
for a in ipairs(gms) do
if gms[a] == 'yes' then
table.insert(row, string.interp(str, {bg = c[games[gen][a][2]].normale,
game = games[gen][a][1]
textcolor = cc.forModBg{args={gendata[a].region}}}))
end
end
return string.interp(j.strings.HEADERBASE, {
bg = css.horizGradLua{type = tipo},
textcolor = cc.forModGradBg{args={tipo}},
rs = kind == 'event' and 1 or 2,
cs = cs[kind](gen),
local tipo, gen = p[1] or 'pcwiki', tonumber(p[2]) or 0
return string.interp([=[${str}Livello
|-
▲|- class="white-text"
${g}]=], {str = j.headers(tipo, gen, 'level'), g = cells.level(gen)})
end
end
return string.interp([=[${str}Macchina
|-
${g}]=], {str = j.headers(tipo, gen, 'tm'), g = cells.tm(gen, tms)})
end
return string.interp([=[
${str}Padre
|-
${g}]=], {str = j.headers(tipo, gen, 'breed'), g = cells.breed(gen)})
end
local tipo = p[1] or 'pcwiki'
return string.interp([=[${str}Gioco
|-
]=], {str = j.headers(tipo, tonumber(p[2]) or 0, 'tutor')})
end
local game = p[1] or 'xd'
local colo = string.interp('\n! class="roundytop ${textcolor}" style="background: #${bg}; width: 100px;" | [[Pokémon Colosseum|
{bg = c.colo.normale, textcolor = cc.forModBg{args={c.colo.normale}}})
return string.interp([=[${str}Livello
|-${colo}
! class="roundytop ${textcolor}" style="background: #${bg}; width: 100px;" | [[Pokémon XD: Tempesta Oscura|
{
str = j.headers('xd', game == 'colo' and gendata.latest or gendata.latest - 1,
'level'),
bg = c.xd.light,
textcolor = cc.forModBg{args={c.xd.light}},
colo = game == 'colo' and colo or ''
})
local foot = function(interpData)
return string.interp([=[|-
! class="text-small text-left ${textcolor}" colspan="${cs}" |
* I Pokémon in '''grassetto''' sono quelli che ricevono il [[
* I Pokémon in ''corsivo'' sono quelli con evoluzioni o [[Differenze di forma|
|}]=], interpData)
end
j.footer = function(
local p = w.trimAndMap(mw.clone(frame.args), string.lower)
return foot({
cs = 5 + cs.level(1),
textcolor = cc.forModGradBg{args={p[1] or 'Sconosciuto'}},
last = ''})
end
-- Footer per le mosse apprese per livello
j.levelf = function(
local p = w.trimAndMap(mw.clone(frame.args), string.lower)
return foot({
cs = 5 + cs.level(1),
textcolor = cc.forModGradBg{args={p[1] or 'Sconosciuto'}},
last = [=[
-- Footer per le mosse apprese per accoppiamento
j.breedf = function(
local p = w.trimAndMap(mw.clone(frame.args), string.lower)
return foot({
cs = 5 + cs.level(1),
textcolor = cc.forModGradBg{args={p[1] or 'Sconosciuto'}},
last = [=[
local res = {
j.headers(tipo, startgen, 'tm'),
'Macchine\n|-
}
local link
table.insert(res, string.interp(j.strings.HEADERTM, {
bg = c[gendata[g].region].normale,
textcolor = cc.forModBg{args={gendata[g].region}},
genl = gendata[g].ext,
genr = gendata[g].roman,
|