Anonymous

Module:Sandbox/SkillTree: Difference between revisions

From Melvor Idle
no edit summary
No edit summary
No edit summary
Line 47: Line 47:
     end
     end
      
      
     local skillNodes = p.getSkillTreeNodes(skillName)
     local skillNodes = p.getSkillTree(skillName)


     if not skillNodes then
     if not skillNodes then
Line 53: Line 53:
     end
     end


     local html = mw.html.create('div'):addClass('skill-tree')
     local html = mw.html.create('div'):addClass('skill-tree-container')


     for _, node in ipairs(skillNodes) do
     for _, node in ipairs(skillNodes) do
Line 59: Line 59:
             :addClass('skill-tree-node')
             :addClass('skill-tree-node')
             :tag('h4'):wikitext(node.name):done()
             :tag('h4'):wikitext(node.name):done()
             :tag('p'):wikitext('Points: ' .. node.costs.points):done()
             :tag('p'):wikitext('Points: ' .. node.costs):done()


         if node.modifiers then
         if node.modifiers then
             local modifierList = nodeDiv:tag('ul')
             local modifierText = ""
             for modifier, data in pairs(node.modifiers) do
             for _, data in pairs(node.modifiers) do
                 if type(data) == "table" then
                 modifierText = modifierText .. (data.skillID or "") .. ": " .. (data.value or "") .. "<br>"
                    modifierList:tag('li')
                        :wikitext(modifier .. ': Skill: ' .. (data.skillID or "N/A") ..  
                        ', Realm: ' .. (data.realmID or "N/A") ..  
                        ', Value: ' .. (data.value or "N/A"))
                        :done()
                else
                    modifierList:tag('li')
                        :wikitext(modifier .. ': ' .. tostring(data))
                        :done()
                end
             end
             end
             modifierList:done()
             nodeDiv:tag('p'):wikitext(modifierText):done()
         end
         end


Line 84: Line 74:
     return tostring(html)
     return tostring(html)
end
end




return p
return p
393

edits