Module:Collection
Révision datée du 17 janvier 2018 à 14:51 par Alexandrep (discussion | contributions)
La documentation pour ce module peut être créée à Module:Collection/doc
local p = {} local Boite = mw.loadData('Module:Collection/Boite') local Vaisseau = {} Vaisseau["chasseurtie"] = { nom = "Chasseur Tie", icone = "{{Chasseur Tie icone}}", lien = "[[Chasseur Tie]]", faction = "Empire galactique", } Vaisseau["xwing"] = { nom = "X-wing", icone = "{{X-wing icone}}", lien = "[[X-wing]]", faction = "Alliance rebelle", } local FabListe = mw.loadData('Module:Collection/FabListe') function trim(s) return (string.gsub(s, "^%s*(.-)%s*$", "%1")) end function p.vaisseau(frame) local fabSelectStr = trim(frame.args[1]) or "" fabSelectTab={} fabSelectStr:gsub(".",function(c) table.insert(fabSelectTab,c) end) local vaissCollecTab={} retour = "Ma collection de boite : <br/>" for i, v in ipairs (fabSelectTab) do if fabSelectTab[i] ~= nil then if FabListe[i] ~= nil then if Boite[FabListe[i]] ~= nil then retour = retour .. "* " .. Boite[FabListe[i]].titre .. " x " .. fabSelectTab[i] .. "<br/>" for k, v in pairs (Boite[FabListe[i]].vaisseaux) do if vaissCollecTab[k] == nil then vaissCollecTab[k] = v * fabSelectTab[i] else vaissCollecTab[k] = vaissCollecTab[k] + (v * fabSelectTab[i]) end end end end end end retour = retour .. "Ma collection de vaisseau : <br/>" for k, v in pairs (vaissCollecTab) do if Vaisseau[k] ~= nil then retour = retour .. "* " .. Vaisseau[k].icone .. " x " .. v .. "<br/>" else retour = retour .. "* " .. k .. " x " .. v .. "<br/>" end end return retour end return p