*Problemă/Întrebare: Skill P cu Piatra Spiritului
*ServerFiles utilizat: PVM
*Detalii suplimentare:
Salut, ce trebuie sa fac pentru a face skill-uri P cu Piatra Spiritului ?
Am tot cautat cum sa fac P dar nu gasesc nimic care sa ma ajute...
Vreau sa fac G2-G3-G4 ... P cu Piatra Spiritului, sa scada gradul care la randul lui sa fie refacut cu Boabe Zen.
Skill P cu Piatra Spiritului
- waLkerWEED
-

- Mesaje: 91
- Membru din: 12 Sep 2017, 01:14
- Server: In lucru
- Regat: Jinno
- Aprecieri: 24
- Mulţumiri: 8
- Discord: Copiază ID
- Kidro
-

- Mesaje: 2487
- Membru din: 29 Aug 2019, 16:49
- Aprecieri: 331
- Mulţumiri: 5190
- Discord: Copiază ID
Cod: Selectaţi tot
quest training_gRangmaster_skill begin
state start begin
when 50513.use begin
say_title("Piatra Spiritului")
if pc.get_skill_group() == 0 then
say("Nu ai nicio aptitudine"..pc.get_skill_group())
return
end
if get_time() < pc.getqf("next_time") then -- and not is_test_server() then
if pc.is_skill_book_no_delay() then
say("Aceast lucru vă permite")
say("perfecţionarea competenţelor.")
say("")
wait()
say_title("Piatra Spiritului")
else
say("Trebuie să aşteptaţi.")
return
end
end
local result = training_gRangmaster_skill.BuildGRangMasterSkillList(pc.get_job(), pc.get_skill_group())
local vnum_list = result[1]
local name_list = result[2]
if table.getn(vnum_list) == 0 then
say("Nu iti poti perfectiona competentele!")
return
end
say("Alegeti o competenta din urmatoarele.")
say("")
local menu_list = {}
table.foreach(name_list, function(i, name) table.insert(menu_list, name) end)
table.insert(menu_list, "Renunta")
local s=select_table(menu_list)
if table.getn(menu_list) == s then
return
end
local skill_name=name_list[s]
local skill_vnum=vnum_list[s]
local skill_level = pc.get_skill_level(skill_vnum)
local -cenzurat-_alignment = pc.get_real_alignment()
local need_alignment = 1000+500*(skill_level-30)
test_chat("Punctre rang:"..-cenzurat-_alignment)
test_chat("Rang negativ prea mare:"..need_alignment)
local title=string.format("%s a reuşit", skill_name, skill_level-30+1)
say_title(title)
say("Atunci când citiţi piatra spiritului")
say("pierzi punctaj din grad!")
say("")
if -cenzurat-_alignment<-19000+need_alignment then
say_reward("Puncte insuficiente.")
return
end
if -cenzurat-_alignment<0 then
say_reward(string.format("Puncte necesare: %d -> %d", need_alignment, need_alignment*2))
say_reward("pentru a mari competenta")
need_alignment=need_alignment*2
elseif -cenzurat-_alignment<need_alignment then
say_reward(string.format("Puncte necesare: %d", need_alignment))
say_reward("Rang negativ prea mare")
else
say_reward(string.format("Puncte necesare: %d", need_alignment))
end
say("")
local s=select("Mai mult", "Renunta")
if s==2 then
return
end
if -cenzurat-_alignment>=0 and -cenzurat-_alignment<need_alignment then
say_title(string.format("Piatra Spiritului", title))
say("A venit timpul!!")
say("Pentru antrenament,")
say("Va rugam sa scrieti : Antrenament")
say("")
say("")
say_reward("Antrenament")
say("")
say("")
local s=input()
if s!="Antrenament" then
return
end
end
if get_time() < pc.getqf("next_time") then -- and not is_test_server() then
if pc.is_skill_book_no_delay() then
pc.remove_skill_book_no_delay()
else
say("Sa vedeam ce-ai reusit")
return
end
end
pc.setqf("next_time", get_time()+time_hour_to_sec(number(8, 12)))
if need_alignment>0 then
if pc.learn_gRang_master_skill(skill_vnum) then
pc.change_alignment(-need_alignment)
say_title(string.format("%s ", title))
if 40 == pc.get_skill_level(skill_vnum) then
say(string.format("%s este deja Perfect", skill_name))
else
say(string.format("%s Succes", skill_name, skill_level-30+1+1))
end
say("")
say_reward("Succes!")
say_reward(string.format("Puncte luate %d ", need_alignment))
say("")
else
say_title(string.format("%s ", title))
say("Acest lucru nu este elaborat ,din pacate.")
say("")
say_reward("Ai esuat!")
say("Mai Incearca")
pc.change_alignment(-number(need_alignment/3, need_alignment/2))
end
end
item.remove()
end
function BuildGRangMasterSkillList(job, group)
GRang_MASTER_SKILL_LEVEL = 30
PERFECT_MASTER_SKILL_LEVEL = 40
local skill_list = special.active_skill_list[job+1][group]
local ret_vnum_list = {}
local ret_name_list = {}
-- test_chat(string.format("job=%d, group=%d", job, group))
table.foreach(skill_list,
function(i, skill_vnum)
local skill_level = pc.get_skill_level(skill_vnum)
-- test_chat(string.format("[%d]=%d", skill_vnum, skill_level))
if skill_level >= GRang_MASTER_SKILL_LEVEL and skill_level < PERFECT_MASTER_SKILL_LEVEL then
table.insert(ret_vnum_list, skill_vnum)
local name=locale.GM_SKILL_NAME_DICT[skill_vnum]
if name == nil then name=skill_vnum end
table.insert(ret_name_list, name)
end
end)
return {ret_vnum_list, ret_name_list}
--return {ret_vnum_list, ret_name_list}
end
end
end- waLkerWEED
-

- Mesaje: 91
- Membru din: 12 Sep 2017, 01:14
- Server: In lucru
- Regat: Jinno
- Aprecieri: 24
- Mulţumiri: 8
- Discord: Copiază ID
Ceva nu e bine ca imi da eroare Abort (core dumped) la compilare ./qc
Am mai luat si eu ceva questuri de unde am mai gasit si aceeasi problema o am...
pune toata eroarea, poate fii de la functii
Am mai luat si eu ceva questuri de unde am mai gasit si aceeasi problema o am...
pune toata eroarea, poate fii de la functii
- coadapute123
-

- Mesaje: 536
- Membru din: 05 Ian 2019, 14:04
- Server: Heroes2
- Regat: Jinno
- Aprecieri: 103
- Mulţumiri: 362
- Discord: Copiază ID
- waLkerWEED
-

- Mesaje: 91
- Membru din: 12 Sep 2017, 01:14
- Server: In lucru
- Regat: Jinno
- Aprecieri: 24
- Mulţumiri: 8
- Discord: Copiază ID
Am rezolvat problema cu questul, merge, dar acum este o alta problema.
Dau click dreapta pe "Piatra Spiritului" se deschide fereastra unde ma intreaba ce la ce skill vreau sa fac upgrade, selectez Aura Sabiei si nu face nimic apoi... Nici in chat nu zice ca a esuat nici piatra nu dispare nici skill-ul nu ia upgrade...
Dau click dreapta pe "Piatra Spiritului" se deschide fereastra unde ma intreaba ce la ce skill vreau sa fac upgrade, selectez Aura Sabiei si nu face nimic apoi... Nici in chat nu zice ca a esuat nici piatra nu dispare nici skill-ul nu ia upgrade...
- exo.
-

- Mesaje: 1038
- Membru din: 29 Ian 2017, 12:38
- Aprecieri: 289
- Mulţumiri: 1314
- Discord: Copiază ID
Cod: Selectaţi tot
quest training_grandmaster_skill begin
state start begin
when 50513.use begin
say_title("Piatra spiritului")
say("")
local seelicount = pc.count_item(50513)
if pc.get_skill_group() == 0 then
say("Nu aveþi abilitãþi care pot fi antrenate.")
say("")
return
end
if get_time() < pc.getqf("next_time") then -- and not is_test_server() then
if pc.is_skill_book_no_delay() then
say("Ai folosit pergamentul exorcizãrii. Acum poþi")
say("citi o piatrã a spritiului.")
say("")
wait()
say_title("Piatra spiritului")
else
say("Trebuie sã aºtepþi o zi pentru a putea citi")
say("o piatrã a spiritului sau foloseºte")
say("pergamentul exorcizãrii.")
say("")
return
end
end
local result = training_grandmaster_skill.BuildGrandMasterSkillList(pc.get_job(), pc.get_skill_group())
local vnum_list = result[1]
local name_list = result[2]
if table.getn(vnum_list) == 0 then
say("Nu aveþi abilitãþi care pot fi antrenate.")
say("")
return
end
say("Selectaþi abilitatea care doriþi sã fie antrenatã.")
say("")
local menu_list = {}
table.foreach(name_list, function(i, name) table.insert(menu_list, name) end)
table.insert(menu_list, "Renunþã ")
local s=select_table(menu_list)
if table.getn(menu_list) == s then
return
end
local skill_name=name_list[s]
local skill_vnum=vnum_list[s]
local skill_level = pc.get_skill_level(skill_vnum)
local -cenzurat-_alignment = pc.get_real_alignment()
local need_alignment = 1000+500*(skill_level-30)
local title=string.format("Antreneazã %s", skill_name)
if pc.count_item(50513) != seelicount then
say("Nu ai piatra spiritului!")
return
end
say_title(title)
say("")
say("Pentru a citi o piatra a spritiului ai nevoie")
say("de puncte de grad.")
say("")
if -cenzurat-_alignment<-19000+need_alignment then
say_reward("Ai prea puþine puncte de grad.")
say("")
return
end
if -cenzurat-_alignment<0 then
say_reward("Punctele tale de grad vor scãdea dupã ")
say_reward("dupã citirea pietrei. Vei pierde")
say_reward(string.format( "între %d ºi %d puncte de grad.", need_alignment, need_alignment*2))
need_alignment=need_alignment*2
elseif -cenzurat-_alignment<need_alignment then
say(string.format("Puncte de grad necesare: %d", need_alignment))
say_reward("Este posibil ca rangul tãu sã fie negativ")
say_reward("dupã citirea pietrei.")
else
say_orange(string.format("Puncte de grad necesare: %d", need_alignment))
end
say("")
local s = select ("Învaþã ","Renunþã ")
if s == 2 then
return
end
if -cenzurat-_alignment>=0 and -cenzurat-_alignment<need_alignment then
say_title(string.format("%s ", title))
say("")
say("Pentru a citi piatra spiritului trebuie sã ")
say("introduci în caseta de mai jos cuvântul")
say_reward("Antrenament")
say("")
say_reward("Este posibil ca dupã citirea pietrei, rangul")
say_reward("tãu sã fie negativ.")
local s=input()
if s!="Antrenament" then
return
end
end
if get_time() < pc.getqf("next_time") then -- and not is_test_server() then
if pc.is_skill_book_no_delay() then
pc.remove_skill_book_no_delay()
end
end
pc.setqf("next_time", get_time()+time_hour_to_sec(number(8, 12)))
if need_alignment>0 then
if pc.learn_grand_master_skill(skill_vnum) then
pc.change_alignment(-need_alignment)
say_title(string.format("%s", title))
say("")
if 40 == pc.get_skill_level(skill_vnum) then
say(string.format("%s este perfect antrenat.", skill_name))
say("")
pc.remove_item(50513, 1)
else
say(string.format ( "Antrenamentul a reuºit.", skill_name, skill_level-30+1+1))
pc.remove_item(50513, 1)
end
say_reward (string.format("Punctele de grad au scãzut cu: %d ", need_alignment))
say("")
else
say_title(string.format("%s", title))
say("")
say_reward("Antrenamentul a eºuat.")
say("")
pc.change_alignment(-number(need_alignment/3, need_alignment/2))
pc.remove_item(50513, 1)
end
end
end
function BuildGrandMasterSkillList(job, group)
GRAND_MASTER_SKILL_LEVEL = 30
PERFECT_MASTER_SKILL_LEVEL = 40
local skill_list = special.active_skill_list[job+1][group]
local ret_vnum_list = {}
local ret_name_list = {}
table.foreach(skill_list,
function(i, skill_vnum)
local skill_level = pc.get_skill_level(skill_vnum)
if skill_level >= GRAND_MASTER_SKILL_LEVEL and skill_level < PERFECT_MASTER_SKILL_LEVEL then
table.insert(ret_vnum_list, skill_vnum)
local name=locale.GM_SKILL_NAME_DICT[skill_vnum]
if name == nil then name=skill_vnum end
table.insert(ret_name_list, name)
end
end)
return {ret_vnum_list, ret_name_list}
end
end
end
- KinKade
-

- Mesaje: 1224
- Membru din: 10 Mar 2014, 19:39
- Server: Quirin2
- Regat: Jinno
- Aprecieri: 132
- Mulţumiri: 55
- Discord: Copiază ID
- Contact:
Autorul nu a mai raspuns, topic inchis si trimis la arhiva.
-
- Informaţie
-
Cine este conectat
Utilizatori ce ce navighează pe acest forum: sanducatalin1 și 39 vizitatori
