Module:Infobox Skill: Difference between revisions

From Eco - English Wiki
[unchecked revision][unchecked revision]
No edit summary
WHOOPS
Tag: Replaced
Line 1: Line 1:
-- Eco Version : 0.9.0.2 beta release-71
-- Credit: Original Infobox (now known as Infobox_Item) created by Pradoxzon was then edited by Nesphit and TreeNuts0. Fyre (FishAus) and Scotty (ZeelNightwolf) further edited the Infobox_Item. They then duplicated and used as a base for Infobox_Skill, Infobox_Plant, and Infobox_Animal.


return {
local p = {}
    skills = {
 
        ['Advanced Baking'] = {
-- Grabs args from the parent frame
                    ['untranslated'] = 'Advanced Baking',
-- Trims and parses the args into a table, then returns the table
                    ['title'] = '',
function norm()
                    ['description'] = 'Advanced baking mostly improves recipes that involve a leavening agent. Level by crafting advanced baking recipes.',
    local origArgs = mw.getCurrentFrame():getParent().args
                    ['skillID'] = 'AdvancedBakingSkill',
    local args = {}
                    ['skillIDNum'] = '765',
   
                    ['maxLevel'] = '7',
    for k, v in pairs( origArgs ) do
                    ['root'] = false,
        v = mw.text.trim( tostring( v ) )
                    ['rootSkill'] = '[[Chef]]',
        if v ~= '' then
                    ['specialty'] = true,
            args[k] = v
                    ['specialtySkill'] = nil,
        end
                    ['prerequisites'] = nil,
    end
                    ['childSkills'] = nil,
   
                    ['specialtySkillBook'] = '[[Advanced Baking Skill Book]]',
    return args
                    ['specialtySkillScroll'] = '[[Advanced Baking Skill Scroll]]',
end
                    ['itemsGiven'] = nil,
 
                    ['talents'] =  {
-- Main entry point for the Module
                            ['level3'] = {'[[Advanced Baking Focused Speed Talent]]', '[[Advanced Baking Parallel Speed Talent]]'},
function p.SkillMain()
                            ['level6'] = {'[[Advanced Baking Frugal Req Talent]]'},
    -- get args from the Template
                            },
    local args = norm()
                    ['benefits'] =  {
   
                            ['level1'] = {
-- create values outside of if statements to ensure they are available to whole function
                                    {'[[Bearclaw]]', 'Decreases', 'calories of labor', '10'},
local skills = ''
                                    {'[[Bread]]', 'Decreases', 'calories of labor', '10'},
local check = ''
                                    {'[[Camas Bread]]', 'Decreases', 'calories of labor', '10'},
                                    {'[[Elk Wellington]]', 'Decreases', 'calories of labor', '10'},
    -- assign variables for skill or talent whatever is passed. Skill has priority so if both are passed only skill will continue.
                                    {'[[Fruit Tart]]', 'Decreases', 'calories of labor', '10'},
    if args.skill ~= nil then
                                    {'[[Leavened Dough]]', 'Decreases', 'calories of labor', '10'},
        skills = args.skill
                                    {'[[Macaroons]]', 'Decreases', 'calories of labor', '10'},
        check = 'skill'
                                    {'[[Pastry Dough]]', 'Decreases', 'calories of labor', '10'},
                                    {'[[Pirozhok]]', 'Decreases', 'calories of labor', '10'},
                                    {'[[Stuffed Turkey]]', 'Decreases', 'calories of labor', '10'},
                                    {'[[Advanced Baking Advanced Upgrade]]', 'Decreases', 'calories of labor', '5000'},
                                    },
                            ['level2'] = {
                                    {'[[Bearclaw]]', 'Decreases', 'calories of labor', '9'},
                                    {'[[Bread]]', 'Decreases', 'calories of labor', '9'},
                                    {'[[Camas Bread]]', 'Decreases', 'calories of labor', '9'},
                                    {'[[Elk Wellington]]', 'Decreases', 'calories of labor', '9'},
                                    {'[[Fruit Tart]]', 'Decreases', 'calories of labor', '9'},
                                    {'[[Leavened Dough]]', 'Decreases', 'calories of labor', '9'},
                                    {'[[Macaroons]]', 'Decreases', 'calories of labor', '9'},
                                    {'[[Pastry Dough]]', 'Decreases', 'calories of labor', '9'},
                                    {'[[Pirozhok]]', 'Decreases', 'calories of labor', '9'},
                                    {'[[Stuffed Turkey]]', 'Decreases', 'calories of labor', '9'},
                                    {'[[Advanced Baking Advanced Upgrade]]', 'Decreases', 'calories of labor', '4500'},
                                    },
                            ['level3'] = {
                                    {'[[Bearclaw]]', 'Decreases', 'calories of labor', '8'},
                                    {'[[Bread]]', 'Decreases', 'calories of labor', '8'},
                                    {'[[Camas Bread]]', 'Decreases', 'calories of labor', '8'},
                                    {'[[Elk Wellington]]', 'Decreases', 'calories of labor', '8'},
                                    {'[[Fruit Tart]]', 'Decreases', 'calories of labor', '8'},
                                    {'[[Leavened Dough]]', 'Decreases', 'calories of labor', '8'},
                                    {'[[Macaroons]]', 'Decreases', 'calories of labor', '8'},
                                    {'[[Pastry Dough]]', 'Decreases', 'calories of labor', '8'},
                                    {'[[Pirozhok]]', 'Decreases', 'calories of labor', '8'},
                                    {'[[Stuffed Turkey]]', 'Decreases', 'calories of labor', '8'},
                                    {'[[Advanced Baking Advanced Upgrade]]', 'Decreases', 'calories of labor', '4000'},
                                    },
                            ['level4'] = {
                                    {'[[Bearclaw]]', 'Decreases', 'calories of labor', '7'},
                                    {'[[Bread]]', 'Decreases', 'calories of labor', '7'},
                                    {'[[Camas Bread]]', 'Decreases', 'calories of labor', '7'},
                                    {'[[Elk Wellington]]', 'Decreases', 'calories of labor', '7'},
                                    {'[[Fruit Tart]]', 'Decreases', 'calories of labor', '7'},
                                    {'[[Leavened Dough]]', 'Decreases', 'calories of labor', '7'},
                                    {'[[Macaroons]]', 'Decreases', 'calories of labor', '7'},
                                    {'[[Pastry Dough]]', 'Decreases', 'calories of labor', '7'},
                                    {'[[Pirozhok]]', 'Decreases', 'calories of labor', '7'},
                                    {'[[Stuffed Turkey]]', 'Decreases', 'calories of labor', '7'},
                                    {'[[Advanced Baking Advanced Upgrade]]', 'Decreases', 'calories of labor', '3500'},
                                    },
                            ['level5'] = {
                                    {'[[Bearclaw]]', 'Decreases', 'calories of labor', '6'},
                                    {'[[Bread]]', 'Decreases', 'calories of labor', '6'},
                                    {'[[Camas Bread]]', 'Decreases', 'calories of labor', '6'},
                                    {'[[Elk Wellington]]', 'Decreases', 'calories of labor', '6'},
                                    {'[[Fruit Tart]]', 'Decreases', 'calories of labor', '6'},
                                    {'[[Leavened Dough]]', 'Decreases', 'calories of labor', '6'},
                                    {'[[Macaroons]]', 'Decreases', 'calories of labor', '6'},
                                    {'[[Pastry Dough]]', 'Decreases', 'calories of labor', '6'},
                                    {'[[Pirozhok]]', 'Decreases', 'calories of labor', '6'},
                                    {'[[Stuffed Turkey]]', 'Decreases', 'calories of labor', '6'},
                                    {'[[Advanced Baking Advanced Upgrade]]', 'Decreases', 'calories of labor', '3000'},
                                    },
                            ['level6'] = {
                                    {'[[Bearclaw]]', 'Decreases', 'calories of labor', '5'},
                                    {'[[Bread]]', 'Decreases', 'calories of labor', '5'},
                                    {'[[Camas Bread]]', 'Decreases', 'calories of labor', '5'},
                                    {'[[Elk Wellington]]', 'Decreases', 'calories of labor', '5'},
                                    {'[[Fruit Tart]]', 'Decreases', 'calories of labor', '5'},
                                    {'[[Leavened Dough]]', 'Decreases', 'calories of labor', '5'},
                                    {'[[Macaroons]]', 'Decreases', 'calories of labor', '5'},
                                    {'[[Pastry Dough]]', 'Decreases', 'calories of labor', '5'},
                                    {'[[Pirozhok]]', 'Decreases', 'calories of labor', '5'},
                                    {'[[Stuffed Turkey]]', 'Decreases', 'calories of labor', '5'},
                                    {'[[Advanced Baking Advanced Upgrade]]', 'Decreases', 'calories of labor', '2500'},
                                    },
                            ['level7'] = {
                                    {'[[Bearclaw]]', 'Decreases', 'calories of labor', '4'},
                                    {'[[Bread]]', 'Decreases', 'calories of labor', '4'},
                                    {'[[Camas Bread]]', 'Decreases', 'calories of labor', '4'},
                                    {'[[Elk Wellington]]', 'Decreases', 'calories of labor', '4'},
                                    {'[[Fruit Tart]]', 'Decreases', 'calories of labor', '4'},
                                    {'[[Leavened Dough]]', 'Decreases', 'calories of labor', '4'},
                                    {'[[Macaroons]]', 'Decreases', 'calories of labor', '4'},
                                    {'[[Pastry Dough]]', 'Decreases', 'calories of labor', '4'},
                                    {'[[Pirozhok]]', 'Decreases', 'calories of labor', '4'},
                                    {'[[Stuffed Turkey]]', 'Decreases', 'calories of labor', '4'},
                                    {'[[Advanced Baking Advanced Upgrade]]', 'Decreases', 'calories of labor', '2000'},
                                    },
                            },
                    ['recipes'] =  {
                            ['level0'] = {},
                            ['level1'] = {'[[Bread]]', '[[Camas Bread]]', '[[Leavened Dough]]', '[[Pastry Dough]]'},
                            ['level2'] = {'[[Bearclaw]]', '[[Fruit Tart]]', '[[Macaroons]]', '[[Pirozhok]]'},
                            ['level3'] = {'[[Elk Wellington]]'},
                            ['level4'] = {'[[Stuffed Turkey]]'},
                            ['level5'] = {},
                            ['level6'] = {},
                            ['level7'] = {'[[Advanced Baking Advanced Upgrade]]'},
                            },
        },
        ['Advanced Cooking'] = {
                    ['untranslated'] = 'Advanced Cooking',
                    ['title'] = '',
                    ['description'] = 'Advanced cooking techniques for producing more complex foods. Level by crafting advanced cooking recipes.',
                    ['skillID'] = 'AdvancedCookingSkill',
                    ['skillIDNum'] = '768',
                    ['maxLevel'] = '7',
                    ['root'] = false,
                    ['rootSkill'] = '[[Chef]]',
                    ['specialty'] = true,
                    ['specialtySkill'] = nil,
                    ['prerequisites'] = nil,
                    ['childSkills'] = nil,
                    ['specialtySkillBook'] = '[[Advanced Cooking Skill Book]]',
                    ['specialtySkillScroll'] = '[[Advanced Cooking Skill Scroll]]',
                    ['itemsGiven'] = nil,
                    ['talents'] =  {
                            ['level3'] = {'[[Advanced Cooking Focused Speed Talent]]', '[[Advanced Cooking Parallel Speed Talent]]'},
                            ['level6'] = {'[[Advanced Cooking Frugal Req Talent]]'},
                            },
                    ['benefits'] =  {
                            ['level1'] = {
                                    {'[[Bear SUPREME]]', 'Decreases', 'calories of labor', '10'},
                                    {'[[Boiled Rice]]', 'Decreases', 'calories of labor', '10'},
                                    {'[[Boiled Sausage]]', 'Decreases', 'calories of labor', '10'},
                                    {'[[Corn Fritters]]', 'Decreases', 'calories of labor', '10'},
                                    {'[[Crimson Salad]]', 'Decreases', 'calories of labor', '10'},
                                    {'[[Elk Taco]]', 'Decreases', 'calories of labor', '10'},
                                    {'[[Fried Hare Haunches]]', 'Decreases', 'calories of labor', '10'},
                                    {'[[Huckleberry Extract]]', 'Decreases', 'calories of labor', '10'},
                                    {'[[Infused Oil]]', 'Decreases', 'calories of labor', '10'},
                                    {'[[Pineapple Friend Rice]]', 'Decreases', 'calories of labor', '10'},
                                    {'[[Seared Meat]]', 'Decreases', 'calories of labor', '10'},
                                    {'[[Simple Syrup]]', 'Decreases', 'calories of labor', '10'},
                                    {'[[Sweet Salad]]', 'Decreases', 'calories of labor', '10'},
                                    {'[[Tortilla]]', 'Decreases', 'calories of labor', '10'},
                                    {'[[Wild Mix]]', 'Decreases', 'calories of labor', '10'},
                                    {'[[Culinary Research Paper Modern]]', 'Decreases', 'calories of labor', '500'},
                                    {'[[Advanced Cooking Advanced Upgrade]]', 'Decreases', 'calories of labor', '5000'},
                                    {'[[Refine Tallow]]', 'Decreases', 'calories of labor', '15'},
                                    },
                            ['level2'] = {
                                    {'[[Bear SUPREME]]', 'Decreases', 'calories of labor', '9'},
                                    {'[[Boiled Rice]]', 'Decreases', 'calories of labor', '9'},
                                    {'[[Boiled Sausage]]', 'Decreases', 'calories of labor', '9'},
                                    {'[[Corn Fritters]]', 'Decreases', 'calories of labor', '9'},
                                    {'[[Crimson Salad]]', 'Decreases', 'calories of labor', '9'},
                                    {'[[Elk Taco]]', 'Decreases', 'calories of labor', '9'},
                                    {'[[Fried Hare Haunches]]', 'Decreases', 'calories of labor', '9'},
                                    {'[[Huckleberry Extract]]', 'Decreases', 'calories of labor', '9'},
                                    {'[[Infused Oil]]', 'Decreases', 'calories of labor', '9'},
                                    {'[[Pineapple Friend Rice]]', 'Decreases', 'calories of labor', '9'},
                                    {'[[Seared Meat]]', 'Decreases', 'calories of labor', '9'},
                                    {'[[Simple Syrup]]', 'Decreases', 'calories of labor', '9'},
                                    {'[[Sweet Salad]]', 'Decreases', 'calories of labor', '9'},
                                    {'[[Tortilla]]', 'Decreases', 'calories of labor', '9'},
                                    {'[[Wild Mix]]', 'Decreases', 'calories of labor', '9'},
                                    {'[[Culinary Research Paper Modern]]', 'Decreases', 'calories of labor', '450'},
                                    {'[[Advanced Cooking Advanced Upgrade]]', 'Decreases', 'calories of labor', '4500'},
                                    {'[[Refine Tallow]]', 'Decreases', 'calories of labor', '13.5'},
                                    },
                            ['level3'] = {
                                    {'[[Bear SUPREME]]', 'Decreases', 'calories of labor', '8'},
                                    {'[[Boiled Rice]]', 'Decreases', 'calories of labor', '8'},
                                    {'[[Boiled Sausage]]', 'Decreases', 'calories of labor', '8'},
                                    {'[[Corn Fritters]]', 'Decreases', 'calories of labor', '8'},
                                    {'[[Crimson Salad]]', 'Decreases', 'calories of labor', '8'},
                                    {'[[Elk Taco]]', 'Decreases', 'calories of labor', '8'},
                                    {'[[Fried Hare Haunches]]', 'Decreases', 'calories of labor', '8'},
                                    {'[[Huckleberry Extract]]', 'Decreases', 'calories of labor', '8'},
                                    {'[[Infused Oil]]', 'Decreases', 'calories of labor', '8'},
                                    {'[[Pineapple Friend Rice]]', 'Decreases', 'calories of labor', '8'},
                                    {'[[Seared Meat]]', 'Decreases', 'calories of labor', '8'},
                                    {'[[Simple Syrup]]', 'Decreases', 'calories of labor', '8'},
                                    {'[[Sweet Salad]]', 'Decreases', 'calories of labor', '8'},
                                    {'[[Tortilla]]', 'Decreases', 'calories of labor', '8'},
                                    {'[[Wild Mix]]', 'Decreases', 'calories of labor', '8'},
                                    {'[[Culinary Research Paper Modern]]', 'Decreases', 'calories of labor', '400'},
                                    {'[[Advanced Cooking Advanced Upgrade]]', 'Decreases', 'calories of labor', '4000'},
                                    {'[[Refine Tallow]]', 'Decreases', 'calories of labor', '12'},
                                    },
                            ['level4'] = {
                                    {'[[Bear SUPREME]]', 'Decreases', 'calories of labor', '7'},
                                    {'[[Boiled Rice]]', 'Decreases', 'calories of labor', '7'},
                                    {'[[Boiled Sausage]]', 'Decreases', 'calories of labor', '7'},
                                    {'[[Corn Fritters]]', 'Decreases', 'calories of labor', '7'},
                                    {'[[Crimson Salad]]', 'Decreases', 'calories of labor', '7'},
                                    {'[[Elk Taco]]', 'Decreases', 'calories of labor', '7'},
                                    {'[[Fried Hare Haunches]]', 'Decreases', 'calories of labor', '7'},
                                    {'[[Huckleberry Extract]]', 'Decreases', 'calories of labor', '7'},
                                    {'[[Infused Oil]]', 'Decreases', 'calories of labor', '7'},
                                    {'[[Pineapple Friend Rice]]', 'Decreases', 'calories of labor', '7'},
                                    {'[[Seared Meat]]', 'Decreases', 'calories of labor', '7'},
                                    {'[[Simple Syrup]]', 'Decreases', 'calories of labor', '7'},
                                    {'[[Sweet Salad]]', 'Decreases', 'calories of labor', '7'},
                                    {'[[Tortilla]]', 'Decreases', 'calories of labor', '7'},
                                    {'[[Wild Mix]]', 'Decreases', 'calories of labor', '7'},
                                    {'[[Culinary Research Paper Modern]]', 'Decreases', 'calories of labor', '350'},
                                    {'[[Advanced Cooking Advanced Upgrade]]', 'Decreases', 'calories of labor', '3500'},
                                    {'[[Refine Tallow]]', 'Decreases', 'calories of labor', '10.5'},
                                    },
                            ['level5'] = {
                                    {'[[Bear SUPREME]]', 'Decreases', 'calories of labor', '6'},
                                    {'[[Boiled Rice]]', 'Decreases', 'calories of labor', '6'},
                                    {'[[Boiled Sausage]]', 'Decreases', 'calories of labor', '6'},
                                    {'[[Corn Fritters]]', 'Decreases', 'calories of labor', '6'},
                                    {'[[Crimson Salad]]', 'Decreases', 'calories of labor', '6'},
                                    {'[[Elk Taco]]', 'Decreases', 'calories of labor', '6'},
                                    {'[[Fried Hare Haunches]]', 'Decreases', 'calories of labor', '6'},
                                    {'[[Huckleberry Extract]]', 'Decreases', 'calories of labor', '6'},
                                    {'[[Infused Oil]]', 'Decreases', 'calories of labor', '6'},
                                    {'[[Pineapple Friend Rice]]', 'Decreases', 'calories of labor', '6'},
                                    {'[[Seared Meat]]', 'Decreases', 'calories of labor', '6'},
                                    {'[[Simple Syrup]]', 'Decreases', 'calories of labor', '6'},
                                    {'[[Sweet Salad]]', 'Decreases', 'calories of labor', '6'},
                                    {'[[Tortilla]]', 'Decreases', 'calories of labor', '6'},
                                    {'[[Wild Mix]]', 'Decreases', 'calories of labor', '6'},
                                    {'[[Culinary Research Paper Modern]]', 'Decreases', 'calories of labor', '300'},
                                    {'[[Advanced Cooking Advanced Upgrade]]', 'Decreases', 'calories of labor', '3000'},
                                    {'[[Refine Tallow]]', 'Decreases', 'calories of labor', '9'},
                                    },
                            ['level6'] = {
                                    {'[[Bear SUPREME]]', 'Decreases', 'calories of labor', '5'},
                                    {'[[Boiled Rice]]', 'Decreases', 'calories of labor', '5'},
                                    {'[[Boiled Sausage]]', 'Decreases', 'calories of labor', '5'},
                                    {'[[Corn Fritters]]', 'Decreases', 'calories of labor', '5'},
                                    {'[[Crimson Salad]]', 'Decreases', 'calories of labor', '5'},
                                    {'[[Elk Taco]]', 'Decreases', 'calories of labor', '5'},
                                    {'[[Fried Hare Haunches]]', 'Decreases', 'calories of labor', '5'},
                                    {'[[Huckleberry Extract]]', 'Decreases', 'calories of labor', '5'},
                                    {'[[Infused Oil]]', 'Decreases', 'calories of labor', '5'},
                                    {'[[Pineapple Friend Rice]]', 'Decreases', 'calories of labor', '5'},
                                    {'[[Seared Meat]]', 'Decreases', 'calories of labor', '5'},
                                    {'[[Simple Syrup]]', 'Decreases', 'calories of labor', '5'},
                                    {'[[Sweet Salad]]', 'Decreases', 'calories of labor', '5'},
                                    {'[[Tortilla]]', 'Decreases', 'calories of labor', '5'},
                                    {'[[Wild Mix]]', 'Decreases', 'calories of labor', '5'},
                                    {'[[Culinary Research Paper Modern]]', 'Decreases', 'calories of labor', '250'},
                                    {'[[Advanced Cooking Advanced Upgrade]]', 'Decreases', 'calories of labor', '2500'},
                                    {'[[Refine Tallow]]', 'Decreases', 'calories of labor', '7.5'},
                                    },
                            ['level7'] = {
                                    {'[[Bear SUPREME]]', 'Decreases', 'calories of labor', '4'},
                                    {'[[Boiled Rice]]', 'Decreases', 'calories of labor', '4'},
                                    {'[[Boiled Sausage]]', 'Decreases', 'calories of labor', '4'},
                                    {'[[Corn Fritters]]', 'Decreases', 'calories of labor', '4'},
                                    {'[[Crimson Salad]]', 'Decreases', 'calories of labor', '4'},
                                    {'[[Elk Taco]]', 'Decreases', 'calories of labor', '4'},
                                    {'[[Fried Hare Haunches]]', 'Decreases', 'calories of labor', '4'},
                                    {'[[Huckleberry Extract]]', 'Decreases', 'calories of labor',

Revision as of 05:28, 22 September 2020

This module provides the back end functionality of the Template:Infobox_Skill.

If the template is passed an Infobox will be made using details from the following Modules:

Credit

Original Infobox (now known as Infobox_Item) created by Pradoxzon was then edited by Nesphit and TreeNuts0. Fyre (FishAus) and Scotty (ZeelNightwolf) further edited the Infobox_Item. They then duplicated and used as a base for Infobox_Skill, Infobox_Plant, and Infobox_Animal.


-- Credit: Original Infobox (now known as Infobox_Item) created by Pradoxzon was then edited by Nesphit and TreeNuts0. Fyre (FishAus) and Scotty (ZeelNightwolf) further edited the Infobox_Item. They then duplicated and used as a base for Infobox_Skill, Infobox_Plant, and Infobox_Animal.

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.SkillMain()
     -- get args from the Template
    local args = norm()
    
	-- create values outside of if statements to ensure they are available to whole function
	local skills = ''
	local check = ''
	
    -- assign variables for skill or talent whatever is passed. Skill has priority so if both are passed only skill will continue.
    if args.skill ~= nil then
        skills = args.skill
        check = 'skill'
    elseif args.talent ~= nil then
        skills = args.talent
        check = 'talent'
    end
   
	-- check to see if skills was actually passed in
	if skills == '' then
		return 'skill or talent must be specified.'
    end
   
	local skillData = {}
	local skillTable = {}
   
    -- checks if skill  and assigns correct modules based on check
    if check == 'skill' then
        skillData = require( "Module:Skills" )
        skillTable = skillData.skills[skills]
    else
        skillData = require( "Module:TalentData" )
        skillTable = skillData.talents[skills]
    end

    -- checks if skills can be found in plant data or tree data based on what was requested
    if skillTable == {} then
        if check == 'skill' then
            return skills .. ' could not be found in Module:TestSkills.'
        else
            return skills .. ' could not be found in Module:TalentData.'
        end
    end

    -- From now on using skillsTable."KeyValue" will return the value from that key. for most things a check for skills type is not necessary

-- Build an Infobox_Plant
	-- string used to build the infobox
    local infobox = '{| class=\"infobox\"\n'
   
    -- name of the skill/talent
   infobox = infobox .. '|- style=\"color: white; background-color: #1165AF; text-align: center;\"\n| colspan=\"2\" | \'\'\'<big>' .. skills .. '</big>\'\'\'\n'
 
       infobox = infobox .. '|- style=\"text-align: center;color: white; background-color: goldenrod;\"\n| colspan=\"2\"'
    if skillTable.root == true then
        infobox = infobox .. '| \'\'\'Profession\'\'\'[[Category:Profession]]\n'
    elseif skillTable.specialty == true then
        infobox = infobox .. '| \'\'\'Specialty\'\'\'[[Category:Specialty]]\n'
    elseif skillTable.group == 'Talents' then
        infobox = infobox .. '| \'\'\'Talent\'\'\'[[Category:Talent]]\n'  
	else
        infobox = infobox .. '|\n'	
    end
   
	-- Skill or Talent Image
	local checkImage = {'_Icon.png','_Icon.jpg'}
	local image = '' 

	if skillTable.skillID ~= nil then
		skillID = skillTable.skillID
		skillEN = string.sub (skillID, 1, -6)
		skillsimagename = string.gsub(skillEN, ' ', '')
		else
		skillsimagename = string.gsub(skills, ' ', '')
	end
	
	for i,v in ipairs(checkImage) do 
		image = skillsimagename .. checkImage[i]
		if mw.title.makeTitle('File', image).file.exists then
			break
		end
		if table.getn(checkImage) == i then
			image = 'NoImage.png' 
			if check == 'skill' then 
				image = image .. '|link=https://wiki.play.eco/index.php?title=Special:Upload&wpDestFile=' .. skillsimagename .. '_Icon.png|[[Category:Pages_with_missing_skill_Icon]]'
			end
			if check == 'talent' then 
				image = image .. '|link=https://wiki.play.eco/index.php?title=Special:Upload&wpDestFile=' .. skillsimagename .. '_Icon.png|[[Category:Pages_with_missing_talent_Icon]]'
			end				
		end
	end
	
	if check == 'skill' then
		infobox = infobox .. '|-\n| colspan=\"2\" style=\"padding: 10px;\" | <div class="iconContainer"><div class="iconStack">[[File:' .. image .. '|frameless|class=iconOrange]]</div><div class=iconBorder style=\"position:absolute;\"></div></div> \n'
	
	elseif check == 'talent' then
		infobox = infobox .. '|-\n| colspan=\"2\" style=\"padding: 10px;\" | <div class="iconContainer"><div class="iconStack">[[File:' .. image .. '|frameless|class=iconBrown]]</div><div class=iconBorder style=\"position:absolute;\"></div></div> \n'
	else
		infobox = infobox .. '|-\n| colspan=\"2\" style=\"padding: 10px;\" | <div class="iconContainer"><div class="iconStack">[[File:' .. image .. '|frameless|class=iconBlue]]</div><div class=iconBorder style=\"position:absolute;\"></div></div> \n'
	end
 
  -- 'Description' section header
    infobox = infobox .. '|- style=\"background-color: #4688C0; text-align: center;\"\n| colspan=\"2\" | \'\'\'Description\'\'\'\n'	
	
	if skillTable.description == nil then
		infobox = infobox .. '|- style=\"text-align: center;\"\n| colspan=\"2\" | \'\'\'None\'\'\'\n'
	elseif skillTable.description == '' then
		infobox = infobox .. '|- style=\"text-align: center;\"\n| colspan=\"2\" | \'\'\'None\'\'\'\n'
	else
		infobox = infobox .. '|- style=\"text-align: center;\"\n| colspan=\"2\" | ' .. skillTable.description .. '\n'
	end

	--SKILL
	if check == 'skill' then	
	  -- 'Skill Information' section header
		infobox = infobox .. '|- style=\"background-color: #4688C0; text-align: center;\"\n| colspan=\"2\" | \'\'\'Skill Information\'\'\'\n'
		
		-- Professsion  .rootSkill
		if skillTable.rootSkill ~= nil then
			infobox = infobox .. '|-\n| Profession:\n| style=\"text-align: right; padding: 3px;\" | ' .. skillTable.rootSkill .. '\n'
		end
		
		-- Specialty     .specialitySkill
		if skillTable.specialitySkill ~= nil then
			infobox = infobox .. '|-\n| Specialty:\n| style=\"text-align: right; padding: 3px;\" | ' .. skillTable.specialitySkill .. '\n'
		end
		
		-- Skills Required .prerequisites
		if skillTable.prerequisites ~= nil then
			infobox = infobox .. '|-\n| Skills Required:\n| style=\"text-align: right; padding: 3px;\" |[[ ' .. skillTable.prerequisites .. ']]\n'
		end
		
		-- Leads to  childSkills
        if skillTable.childSkills ~= nil then
            for i,v in pairs(skillTable.childSkills) do
				infobox = infobox .. '|-\n| Leads to:\n| style=\"text-align: right; padding: 3px;\" | ' .. skillTable.childSkills[i] .. '</br>\n'
            end
        end		
		-- maxlevel .maxLevel
		if skillTable.maxLevel ~= nil then
			infobox = infobox .. '|-\n| Max Level:\n| style=\"text-align: right; padding: 3px;\" | Level ' .. skillTable.maxLevel .. '\n'
		end	
			
		-- items given .itemsGiven	
		if skillTable.itemsGiven ~= nil then
			infobox = infobox .. '|-\n| Items Given:\n| style=\"text-align: right; padding: 3px;\" | ' .. skillTable.itemsGiven .. '\n'
		end	
		
		-- Related Talents
		if skillTable.talents ~= nil then
			local listTalents3 = ''
			local listTalents6 = ''
			local talent3 = skillTable.talents.level3
			local talent6 = skillTable.talents.level6
			
			-- for each item in the listTalents3 (b is position, c is value)            
			for b,c in ipairs(talent3) do
				--if not these tags listed here
				if c ~='[[]]'  then
					-- add the tag to the list
					listTalents3 = listTalents3 .. c
				end
				-- if not the last item in the list
				if (c ~= talent3[#talent3]) then
					-- add a comma
					listTalents3 = listTalents3 .. ', </br>'
				end
			end
			-- for each item in the listTalents6 (e is position, d is value)            
			for e,d in ipairs(talent6) do
				--if not these tags listed here
				if d ~='[[]]'  then
					-- add the tag to the list
					listTalents6 = listTalents6 .. d
				end
				-- if not the last item in the list
				if (d ~= talent6[#talent6]) then
					-- add a comma
					listTalents6 = listTalents6 .. ', </br>'
				end
			end
			-- 'Talent Information' section header
			infobox = infobox .. '|- style=\"background-color: #4688C0; text-align: center;\"\n| colspan=\"2\" | \'\'\'Talent Information\'\'\'\n'			
			infobox = infobox .. '|- style=\"border-bottom: solid #7BC2CE;\"\n| Level 3 Talents:\n| style=\"text-align: right; padding: 3px;\" | ' .. listTalents3 .. ' \n'
			infobox = infobox .. '|-\n| Level 6 Talents:\n| style=\"text-align: right; padding: 3px;\" | ' .. listTalents6 .. ' \n'
		end		
			
		-- 'IDs' section header
		infobox = infobox .. '|- style=\"background-color: #4688C0; text-align: center;\"\n| colspan=\"2\" | \'\'\'IDs\'\'\'\n'
		
		-- skill id (type)
		infobox = infobox .. '|- valign=\"center\"\n| Item ID:\n| style=\"text-align: right; padding: 3px;\" | ' .. skillTable.skillID .. '\n'
		
		-- id number (type id)
		infobox = infobox .. '|- valign=\"center\"\n| ID Number:\n| style=\"text-align: right; padding: 3px;\" | ' .. skillTable.skillIDNum .. '\n'	
	end	
		
	--TALENT
	if check == 'talent' then 
		-- 'Talent Information' section header
		infobox = infobox .. '|- style=\"background-color: #4688C0; text-align: center;\"\n| colspan=\"2\" | \'\'\'Talent Information\'\'\'\n'
		
		-- Talent Type
		if skillTable.talentType ~= nil then
			infobox = infobox .. '|-\n| Talent Type:\n| style=\"text-align: right; padding: 3px;\" |[[' .. skillTable.talentType .. ']]\n'
		end		
		
		-- Skill Needed
		if skillTable.owningSkill ~= nil then
			infobox = infobox .. '|-\n| Skill Needed:\n| style=\"text-align: right; padding: 3px;\" |[[' .. skillTable.owningSkill .. ']]\n'
		end	
		
		-- Talents Active at Level
		if skillTable.activeLevel ~= nil then
			infobox = infobox .. '|-\n| Active at Level:\n| style=\"text-align: right; padding: 3px;\" | ' .. skillTable.activeLevel .. '\n'
		end		
	end
    infobox = infobox .. '|}'
    return infobox
end

return p