Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- quest energy_system begin
- state start begin
- when 20001.chat."Cristal fermecat" begin
- chat("Poti obtine cristale fermecate de la nivelul 35.")
- chat("Schimba caracterul.")
- set_state(energy_start)
- return 0
- end
- end
- state energy_start begin
- function setting ()
- return
- {
- ["prob_acc_table"] =
- {
- ["35to50"] = {10,25,45,65,80,88,94,97,99,100},
- ["51to70"] = {20,40,60,75,85,91,96,98,99,100},
- ["upto70"] = {30,55,70,80,90,95,97,98,99,100}
- },
- ["item_num_table"] ={0,1,2,3,4,6,8,10,12,15},
- ["energy_stone"] = 51001,
- ["charging_stone"] = 51002,
- }
- end
- function getItemNum ( str, r )
- local setting = energy_system.setting()
- for i = 1, 10 do
- if r < setting.prob_acc_table[str][i] then
- return setting.item_num_table[i]
- end
- end
- return 0
- end
- when 20001.take begin
- if pc.get_level() < 35 then
- chat("Trebuie sa ai nivel 35.")
- return
- end
- local item_vnum = item.vnum
- local levelLimit = item.get_level_limit(item_vnum)
- local setting = energy_system.setting()
- if levelLimit == nil then
- say_title("Alchimist")
- say("Poti aduce arme, armuri si accesorii (nivel 49+)")
- wait()
- elseif item.get_type() == ITEM_WEAPON and item.get_sub_type() == WEAPON_ARROW then
- say_title("Alchimist")
- say("Poti aduce arme, armuri si accesorii (nivel 49+)")
- wait()
- elseif item.is_binded() then
- say_title("Alchimist")
- say("Acest item este blocat.")
- wait()
- elseif levelLimit < 35 then
- -- kind of impossible condition?
- say_title("Alchimist")
- say("Poti aduce arme, armuri si accesorii (nivel 49+)")
- else
- say_title(mob_name(20001))
- say(item_name(item_vnum))
- say("Schimbi obiectul cu cristale?")
- local s = select("Da","Nu")
- if s == 1 then
- item.remove()
- local r = number (1, 100)
- local n
- if levelLimit >= 49 and levelLimit <= 74 then
- n = energy_system.getItemNum ("35to50",r)
- elseif levelLimit > 75 and levelLimit <= 90 then
- n = energy_system.getItemNum ("51to70",r)
- else
- n = energy_system.getItemNum ("upto70",r)
- end
- if (n == 0) then
- chat("Obiectul este praf, nu iti pot oferi cristale fermecate.")
- else
- pc.give_item2(setting.energy_stone, n)
- chat("Ai primit "..n.." cristale fermecate.")
- end
- end
- end
- end
- end
- end
Advertisement
Add Comment
Please, Sign In to add comment