--**
quest pda_perf_quest begin
state start begin
----------********** PDA perfetta (cambiare vnum eventualmente) **********----------
when 50512.use begin
say_title ("PDA Perfetta")
if pc.get_skill_group() == 0 then
say("Non hai ancora preso la dottrina.[ENTER]")
return
end
local vnum_list, name_list = pda_perf_quest.GetSkillList(1)
say("Con questo oggetto potrai portare un'abilita'")
say("di livello superiore o uguale a 1 direttamente")
say("a maestro perfetto.[ENTER]")
if table.getn(vnum_list) == 0 then
say_reward ("Non hai abilita' da migliorare.[ENTER]")
return
end
wait()
say_title ("PDA Perfetta")
say("Scegli l'abilita' da migliorare:[ENTER]")
table.insert(name_list, "Annulla")
local s = select_table(name_list)
if s == table.getn(name_list) then
return
end
local skill_name = name_list[s]
local skill_vnum = vnum_list[s]
say_title ("PDA Perfetta")
say("Hai scelto: "..skill_name)
say("Sei sicuro di voler continuare?[ENTER]")
local a = select("Si","No")
if a == 2 then
return
end
say_title ("PDA Perfetta")
say (skill_name, " portata a maestro perfetto.[ENTER]")
pc.set_skill_level (skill_vnum, 40)
pc.remove_item(item.get_vnum(), 1)
end
----------********** Funzione **********----------
function GetSkillList(min_level)
local skill_list = special.active_skill_list[pc.get_job()+1][pc.get_skill_group()]
local vnum_list = {}
local name_list = {}
for i = 1,table.getn(skill_list) do
local skill_vnum = skill_list[i]
local skill_level = pc.get_skill_level(skill_vnum)
if skill_level >= min_level and skill_level < 40 then
table.insert(vnum_list, skill_list[i])
table.insert(name_list, locale.GM_SKILL_NAME_DICT[skill_vnum])
end
end
return vnum_list, name_list
end
end
end