Module:SkillList: Difference between revisions
From Eco - English Wiki
[unchecked revision] | [unchecked revision] |
Test List |
Commented out Skills as I dont think thats a thing now. Need to figure out how to list talents. |
||
Line 71: | Line 71: | ||
end | end | ||
for k,v in pairs(skillData.skills) do | -- --Skill List (exclude Profession and Specialty) | ||
if skillData.skills[k].specialty == false and skillData.skills[k].root == false then | -- if list == 'skill' then | ||
table.insert(a,k) | -- skillList = skillList .. '=== Skill List ===\n' | ||
end | -- skillList = skillList .. '<div style=\"column-count:3;-moz-column-count:3;-webkit-column-count:3\">\n' | ||
end | |||
table.sort(a) | -- for k,v in pairs(skillData.skills) do | ||
for i,n in ipairs(a) do | -- if skillData.skills[k].specialty == false and skillData.skills[k].root == false then | ||
skillList = skillList .. '* [[' .. n .. ']]\n' | -- table.insert(a,k) | ||
end | -- end | ||
-- end | |||
-- table.sort(a) | |||
-- for i,n in ipairs(a) do | |||
-- skillList = skillList .. '* [[' .. n .. ']]\n' | |||
-- end | |||
skillList = skillList .. '</div>' | -- skillList = skillList .. '</div>' | ||
end | -- end | ||
Revision as of 10:12, 25 August 2020
This module provides the back end functionality of the Template:SkillList.
If the template is passed, this module creates a list using details from the following Modules:
Credit
Original SkillList was created by Fyre (FishAus) then edited by Scotty (ZeelNightwolf) and used as a base for TalentList.
local p = {}
-- Grabs args from the parent frame
-- Trims and parses the args into a table, then returns the table
function norm()
local origArgs = mw.getCurrentFrame():getParent().args
local args = {}
for k, v in pairs( origArgs ) do
v = mw.text.trim( tostring( v ) )
if v ~= '' then
args[k] = v
end
end
return args
end
-- Main entry point for the Module
function p.main()
-- get args from the Template
local args = norm()
if args.list == nil or args.list == '' then
return '\'list\' must be specified.'
end
-- assign variables for list
local list = args.list
-- load lists
local skillData = require( "Module:TestSkills" )
local skillList = ''
--Check Passes
if list ~= 'profession' and list ~= 'specialty' and list ~= 'skill' then
return skillList .. ' Incorrect use of pass. '
end
local a = {}
--Profession List
if list == 'profession' then
skillList = skillList .. '=== Profession List ===\n'
for k,v in pairs(skillData.skills) do
if skillData.skills[k].root == true then
table.insert(a,k)
end
end
table.sort(a)
for i,n in ipairs(a) do
skillList = skillList .. '* [[' .. n .. ']]\n'
end
end
--Specialty List
if list == 'specialty' then
skillList = skillList .. '=== Specialty List ===\n'
skillList = skillList .. '<div style=\"column-count:2;-moz-column-count:2;-webkit-column-count:2\">\n'
for k,v in pairs(skillData.skills) do
if skillData.skills[k].specialty == true and skillData.skills[k].root == false then
table.insert(a,k)
end
end
table.sort(a)
for i,n in ipairs(a) do
skillList = skillList .. '* [[' .. n .. ']]\n'
end
skillList = skillList .. '</div>'
end
-- --Skill List (exclude Profession and Specialty)
-- if list == 'skill' then
-- skillList = skillList .. '=== Skill List ===\n'
-- skillList = skillList .. '<div style=\"column-count:3;-moz-column-count:3;-webkit-column-count:3\">\n'
-- for k,v in pairs(skillData.skills) do
-- if skillData.skills[k].specialty == false and skillData.skills[k].root == false then
-- table.insert(a,k)
-- end
-- end
-- table.sort(a)
-- for i,n in ipairs(a) do
-- skillList = skillList .. '* [[' .. n .. ']]\n'
-- end
-- skillList = skillList .. '</div>'
-- end
return skillList
end
return p