Module:SkillInfoCard

From Eco - English Wiki
Revision as of 05:47, 10 July 2025 by StalEF (talk | contribs)

Warning about use

To prevent multiple call of data array, you must use the function: local SkillInfoCard = mw.loadData("Module:SkillInfoCard")


local p = {}

local Utils = require('Module:Utils')
local IconUtils = require('Module:IconUtils')
local L = require('Module:Localization')
local Lang = Utils.getLanguageName()

function p.main(frame)
	local PageName = frame.args[1]
	if (Lang == 'English') then SkillName = PageName else SkillName = Utils.SkillSearch(PageName) end
	local SkillData = require( "Module:SkillData" )
    local Skill = SkillData.skills[SkillName]	
	local WikiText =''
	
	WikiText =  WikiText .. IconUtils.main{name = Skill.Name[Lang], id = Skill.SkillID , size = 32, style = 1} .. ' '
	if (Skill.IsRoot == 'True') then WikiText =  WikiText .. Skill.Name[Lang] .. ' it is [[Skills|Profession]].<br>'   else WikiText =  WikiText .. Skill.Name[Lang] .. ' it is [[Skills|Specialty]].<br>' end
	WikiText =  WikiText .. Skill.Description[Lang] .. '<br>'
	
	if (Skill.IsRoot == 'True') then
		WikiText =  WikiText .. '<h3>Specialties</h3>'
		WikiText =  WikiText .. 'The '.. Skill.Name[Lang] .. ' Profession includes the following Specialties:<br>'
		for Sname,Sdata in pairs(SkillData.skills) do
			if Sdata.IsRoot == 'False' and Sdata.RootSkill == SkillName then 
				if (Sdata.Name[Lang] == "") then SpecialtyName = Sdata.Name.English else SpecialtyName = Sdata.Name[Lang] end
				text = text .. IconUtils.main{id = Sdata.SkillID , size = 32, style = 1, link = SpecialtyName} .. '  ';
			end
		end
	else
		WikiText =  WikiText .. '<h3>How to learn</h3>'

	end
	
	return WikiText
end

return p