Differenze tra le versioni di "Modulo:Wikilib"

1 081 byte aggiunti ,  02:37, 29 set 2013
m
nessun oggetto della modifica
(Correzione errori *** sovrascritto il testo esistente ***)
m
w.form_index = function(str)
return string.lower(str:match('%s(%S-)$'))
end
 
-- Dato un nome di Pokémon seguito dalla sigla della forma,
-- ritorna il link della stessa: necessita del modulo
-- AltForms/data mmorizzato nella variabile alt
 
w.sigla_link = function(name, color)
local sigla = name:match('(%u%a?)$')
local poke = name:match('^(%l+)')
if w.linear_search(alt.megaevo, poke) then
return w.interp(alt[(color or '') .. 'links'].mega, {p = p.pokedata[name].name})
end
for key, form in pairs(alt.names[poke]) do
local i = w.form_index(form)
if alt.sigle[i] == sigla then
return alt[(color or '') .. 'links'][i]
end
end
return ''
end
 
end
return d
end
 
-- Funzione da passare come secondo argomento alla table.sort:
-- Dato un elenco di entries come elementi di una table
-- li ordina in base al numero di dex nazionale; in presenza
-- di forme alternative, le ordina in ordine alfabetico,
-- con al forma base per prima
 
local sort_ndex = function(a, b)
local na, sa = a:match('Ani(%d+)(%a*)MS.gif')
local nb, sb = b:match('Ani(%d+)(%a*)MS.gif')
if na == nb then
return (sa or 'a'):lower() < (sb or 'a'):lower()
else
return na < nb
end
end