Module:CharStats

From Elwiki
Revision as of 17:04, 6 May 2022 by Ritsu (talk | contribs)

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

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

-- Main process
function p.main(frame, title)
    local args = getArgs(frame);

    local speed = args.l_slow;
    if args['Speed'] == '2' then
        speed = args.l_average;
    elseif args['Speed'] == '3' then
        speed = args.l_fast;
    end

    local range = args.l_short;
    if args['Range'] == '2' then
        range = args.l_medium;
    elseif args['Range'] == '3' then
        range = args.l_long;
    end

    local difficulty = args.l_easy;
    if args['Difficulty'] == '2' then
        difficulty = args.l_normal;
    elseif args['Difficulty'] == '3' then
        difficulty = args.l_hard;
    end

    local type = args.l_magical;
    local type_img = '[[File:UI - Magical Class.png]]';
    if args['Damage'] == 'P' then
        type = args.l_physical;
        type_img = '[[File:UI - Physical Class.png]]';
    end

    local char_stats = mw.html.create('div'):addClass('char-stats');
    char_stats:tag('div'):addClass('char-stats-cat'):tag('span'):wikitext(args.l_speed);
    char_stats:tag('div'):addClass('char-stats-active'):wikitext(speed);
    char_stats:tag('div'):addClass('char-stats-attack'):wikitext(type_img);
    char_stats:tag('div'):addClass('char-stats-cat'):tag('span'):wikitext(args.l_range);
    char_stats:tag('div'):addClass('char-stats-active'):wikitext(range);
    char_stats:tag('div'):addClass('char-stats-cat'):tag('span'):wikitext(args.l_difficulty);
    char_stats:tag('div'):addClass('char-stats-active'):wikitext(difficulty);
    char_stats:tag('div'):addClass('char-stats-attack-caption'):tag('span'):wikitext(type);

    return char_stats;

end

return p