Module:InfoboxCharacter: Difference between revisions

From Elwiki
No edit summary
No edit summary
Line 13: Line 13:
         addField('name', args.l_name);
         addField('name', args.l_name);
     end
     end
     addField2('name', args.l_name);
 
    addField('class', args.l_class);
     local fields = {
    addField2('classes', args.l_classes);
        {
    addField('weapon', args.l_weapon, true);
            'name',
    addField('age', args.l_age, true);
            args.l_name
    addField('race', args.l_race, true);
        },
    addField('Birth', args.l_birth, true);
        {
    addField('Height', args.l_height, true);
            'class',
    addField('Weight', args.l_weight, true);
            args.l_class
    addField('Blood', args.l_blood, true);
        },
    addField('ESP', args.l_esp);
        {
    addField('tree', args.l_tree);
            'classes',
    addField('VA', args.l_va, true);
            args.l_classes,
    addField('RD', args.l_rd);
            true
    addField('TRD', args.l_trd);
        },
    addField('MRD', args.l_mrd);
        {
    addField('theme', args.l_theme);
            'weapon',
    addField('video', args.l_video);
            args.l_weapon,
    addField('stat', args.l_stat);
            true
        },
        {
            'age',
            args.l_age,
            true
        },
        {
            'race',
            args.l_race,
            true
        },
        {
            'Birth',
            args.l_birth,
            true
        },
        {
            'Height',
            args.l_height,
            true
        },
        {
            'Weight',
            args.l_weight,
            true
        },
        {
            'Blood',
            args.l_blood,
            true
        },
        {
            'ESP',
            args.l_esp
        },
        {
            'tree',
            args.l_tree
        },
        {
            'VA',
            args.l_va,
            true
        },
        {
            'RD',
            args.l_rd
        },
        {
            'TRD',
            args.l_trd
        },
        {
            'MRD',
            args.l_mrd
        },
        {
            'theme',
            args.l_theme
        },
        {
            'video',
            args.l_video
        },
        {
            'stat',
            args.l_stat
        }
    }
 
    for k, v in ipairs(fields) do
        if (v[3] == true) then
            addField2(v[1], v[2], true)
        else
            addField(v[1], v[2])
        end
    end
      
      
     return tostring(infobox);
     return tostring(infobox);

Revision as of 15:32, 1 September 2022

Documentation for this module may be created at Module:InfoboxCharacter/doc

require('Module:CommonFunctions')
require('Module:InfoboxProto');
local getArgs = require('Module:Arguments').getArgs
local p = {}

-- Main process
function p.main(frame)
    local args = getArgs(frame);
    local infobox = require('Module:InfoboxProto').main(frame, args.class);
    infobox:addClass('infobox-character');

    if (args.name1 == nil and args.name2 == nil) then
        addField('name', args.l_name);
    end

    local fields = {
        {
            'name',
            args.l_name
        },
        {
            'class',
            args.l_class
        },
        {
            'classes',
            args.l_classes,
            true
        },
        {
            'weapon',
            args.l_weapon,
            true
        },
        {
            'age',
            args.l_age,
            true
        },
        {
            'race',
            args.l_race,
            true
        },
        {
            'Birth',
            args.l_birth,
            true
        },
        {
            'Height',
            args.l_height,
            true
        },
        {
            'Weight',
            args.l_weight,
            true
        },
        {
            'Blood',
            args.l_blood,
            true
        },
        {
            'ESP',
            args.l_esp
        },
        {
            'tree',
            args.l_tree
        },
        {
            'VA',
            args.l_va,
            true
        },
        {
            'RD',
            args.l_rd
        },
        {
            'TRD',
            args.l_trd
        },
        {
            'MRD',
            args.l_mrd
        },
        {
            'theme',
            args.l_theme
        },
        {
            'video',
            args.l_video
        },
        {
            'stat',
            args.l_stat
        }
    }

    for k, v in ipairs(fields) do
        if (v[3] == true) then
            addField2(v[1], v[2], true)
        else
            addField(v[1], v[2])
        end
    end
    
    return tostring(infobox);

end

return p