diff --git a/mods/skills/init.lua b/mods/skills/init.lua index dcf47b4..708c151 100644 --- a/mods/skills/init.lua +++ b/mods/skills/init.lua @@ -109,16 +109,20 @@ end function skills.get_skills_formspec(player) local name = player:get_player_name() + local level = pd.get(name,"level") local formspec = "size[12,10]" .."list[current_player;main;8,0.5;4,8;]" local i = 0 + local sk = nil for id,skill in pairs(skills.available_skills) do - local sk = skills.get_skill(name,id) - formspec = formspec.."label[1.5,"..tostring(i)..".2;"..skill.desc.."]" - formspec = formspec.."label[3.5,"..tostring(i)..".2;"..math.floor(sk.exp).." / "..tostring( (math.floor((sk.level^1.75)) * skill.level_exp) ).."]" - formspec = formspec.."label[6,"..tostring(i)..".2;"..tostring(sk.level).." / "..tostring(skill.max_level).."]" - formspec = formspec.."list[detached:"..name.."_skills;"..tostring(id)..";0.5,"..tostring(i)..";1,1;]" - i = i + 1 + if skill.level == nil or skill.level <= level.level then + sk = skills.get_skill(name,id) + formspec = formspec.."label[1.5,"..tostring(i)..".2;"..skill.desc.."]" + formspec = formspec.."label[3.5,"..tostring(i)..".2;"..math.floor(sk.exp).." / "..tostring( (math.floor((sk.level^1.75)) * skill.level_exp) ).."]" + formspec = formspec.."label[6,"..tostring(i)..".2;"..tostring(sk.level).." / "..tostring(skill.max_level).."]" + formspec = formspec.."list[detached:"..name.."_skills;"..tostring(id)..";0.5,"..tostring(i)..";1,1;]" + i = i + 1 + end end return formspec end diff --git a/mods/skills/register_skills.lua b/mods/skills/register_skills.lua index e9a995f..606cffb 100644 --- a/mods/skills/register_skills.lua +++ b/mods/skills/register_skills.lua @@ -1,11 +1,11 @@ -- REGISTER THE SKILLS -skills.register_skill(SKILL_WOOD, { desc = 'Wood', max_level = 10, level_exp = 3 }) -skills.register_skill(SKILL_STONE, { desc = 'Stone', max_level = 10, level_exp = 5 }) -skills.register_skill(SKILL_METAL, { desc = 'Metals', max_level = 20, level_exp = 9 }) -skills.register_skill(SKILL_CRYSTAL, { desc = 'Crystals', max_level = 20, level_exp = 10 }) +skills.register_skill(SKILL_WOOD, { desc = 'Wood', max_level = 10, level_exp = 3, level = 1 }) +skills.register_skill(SKILL_STONE, { desc = 'Stone', max_level = 10, level_exp = 5, level = 1 }) +skills.register_skill(SKILL_METAL, { desc = 'Metals', max_level = 20, level_exp = 9, level = 5 }) +skills.register_skill(SKILL_CRYSTAL, { desc = 'Crystals', max_level = 20, level_exp = 10, level = 10 }) -skills.register_skill(SKILL_SMELTING, { desc = 'Smelting', max_level = 50, level_exp = 5 }) -skills.register_skill(SKILL_CRAFTING, { desc = 'Crafting', max_level = 50, level_exp = 5 }) +skills.register_skill(SKILL_SMELTING, { desc = 'Smelting', max_level = 50, level_exp = 5, level = 1 }) +skills.register_skill(SKILL_CRAFTING, { desc = 'Crafting', max_level = 50, level_exp = 5, level = 1 }) -skills.register_skill(SKILL_ARROW, { desc = 'Bow and Arrow', max_level=10, level_exp = 10}) -skills.register_skill(SKILL_MAGIC, { desc = 'Magic', max_level=15, level_exp = 10}) +skills.register_skill(SKILL_ARROW, { desc = 'Bow and Arrow', max_level=10, level_exp = 10, level = 10 }) +skills.register_skill(SKILL_MAGIC, { desc = 'Magic', max_level=15, level_exp = 10, level =5 })