Module:Donnees jeu

De X-Wing 2.0 - Le wiki des figurines
Révision datée du 30 août 2018 à 21:52 par Alexandrep (discussion | contributions) (5 révisions importées)
Aller à : navigation, rechercher

La documentation pour ce module peut être créée à Module:Donnees jeu/doc

local p = {}

local Data = mw.loadData('Module:Donnees jeu/Data')
local AmeliorationType = mw.loadData('Module:Donnees jeu/AmeliorationType')

function trim(s)
  return (string.gsub(s, "^%s*(.-)%s*$", "%1"))
end

function p.affichage(frame)
    local typeCarteStr = trim(frame.args[1]) or ""
    local nomCarteStr = trim(frame.args[2]) or ""
    local typeDonnees = trim(frame.args[3]) or "Cout"
    if typeDonnees == "Cout" then
        if Data[typeCarteStr] == nil then
            return typeCarteStr .. " : non défini"
        end
        if Data[typeCarteStr][nomCarteStr] == nil then
            return typeCarteStr .. " - " .. nomCarteStr .. " : non défini"
        end
        if Data[typeCarteStr][nomCarteStr][typeDonnees] == nil then
            return typeCarteStr .. " - " .. nomCarteStr .. " - " .. typeDonnees .. " : non défini"
        end
        return Data[typeCarteStr][nomCarteStr][typeDonnees]
    end
    if typeDonnees == "Amelioration" then
        retour = "== Améliorations ==\n"
        if Data[typeCarteStr] == nil then
            return typeCarteStr .. " : non défini"
        end
        if Data[typeCarteStr][nomCarteStr] == nil then
            return typeCarteStr .. " - " .. nomCarteStr .. " : non défini"
        end
        if Data[typeCarteStr][nomCarteStr][typeDonnees] == nil then
            return typeCarteStr .. " - " .. nomCarteStr .. " - " .. typeDonnees .. " : non défini"
        end
        for k, a in pairs (Data[typeCarteStr][nomCarteStr][typeDonnees]) do
            retour = retour .. "* " .. AmeliorationType[k].icone .. " " .. AmeliorationType[k].lien .. " x " .. a .. "\n"
        end
        if retour == "== Améliorations ==\n" then
            retour = retour .. "* Aucune\n"
        end
        return retour
    end
end
return p