Szerző Téma: Lélekkő esélye  (Megtekintve 284 alkalommal)

Nem elérhető ddani700

  • Trainee
  • *
  • Thank You
  • -Given: 12
  • -Receive: 2
  • Hozzászólások: 144
  • Segített: -10
Lélekkő esélye
« Dátum: 2019-03-12, 11:01:26 »
Sziasztok!

Hol tudom állítani hogy hány % eséllyel legyen sikeres a képesség húzása lélekkőnél?
Quest ben kell keresni?
Mert én nem látom benne.
training_grandmaster_skill.ques t:
---------------------
--Magyarosítva
--by. P3NG3R
---------------------
quest training_grandmaster_skill begin
    state start begin
when 50513.use begin
say_title("A Nagymesteri képességek edzése")
say("")
say("Ez a kő tele van lelki energiával,")
say("amely javíthatja a képességeidet.")
say("")
wait()
if pc.get_skill_group() == 0 then
say("Nincs képességed, amit fejleszthetnél!" ..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_title("A Nagymesteri képességek edzése")
say("")
say("Ahhoz, hogy nagymesteri képességeid")
say("fejleszthesd, kattints a 'Tovább' gombra.")
say("")
wait()
say_title("A Nagymesteri képességek edzése")
say("")
else
say("Ma már használtál egy lélek követ!")
say("Ördögűző tekercs segítségével újat használhatsz.")
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("Jelenleg nincs nagymesteri képességed,")
say("amit fejleszthetnél.")
return
end

say("Válaszd ki azt a képességet, amivel el szeretnéd")
say("érni a tökéletes mester szintet.")

local menu_list = {}
table.foreach(name_list, function(i, name) table.insert(menu_list, name) end)
table.insert(menu_list, "Bezár")

local s=select_table(menu_list)
if table.getn(menu_list) == s then
return
end
if pc.count_item(50513)==0 then
say("A mágikus lelkek ereje megszűnt,")
say("mert a kő időközben eltűnt.")
say("")
return
end

local skill_name=name_list[s]
local skill_vnum=vnum_list[s]
local skill_level = pc.get_skill_level(skill_vnum)
local cur_alignment = pc.get_real_alignment()
local need_alignment = 1000+500*(skill_level-30)

test_chat("Jelenlegi rangod: "..cur_alignment)
test_chat("Szükséges rangpontok: "..need_alignment)

local title=string.format("%s fejlesztése G%d-ről", skill_name, skill_level-30+1)
say_title(string.format("%s", title))
say("Ha felhasználod edzés közben a rossz/jó pontjaidat,")
say("akkor megtörténhet, hogy az átlagszint alá esel.")
say("")

if cur_alignment<-19000+need_alignment then
say_reward("Nem lehet tovább rontani a rangod. Muszáj javítanod")
say_reward("rajta, hogy tovább fejleszthesd a képességeid!")
say("")
return
end

if cur_alignment<0 then --Fejlesztés előtti, és utáni rangod: %d -> %d
say_reward(string.format("Fejleszés után levont rang pont ha[ENTER]sikertelen és ha sikeres: %d -> %d", need_alignment, need_alignment*2))
say_reward("Folytatáshoz kattints a 'Tovább' gombra.")
need_alignment=need_alignment*2
elseif cur_alignment<need_alignment then
say_reward(string.format("Szükséges rossz/jó pontok: %d", need_alignment))
say("")
say_reward("Ha most edzed képességed, akkor a rangod negatívba")
say_reward("csökken, ami 50. Szint felett veszélyes is lehet!")
say_reward("Ha biztosan akarod, kattints a 'Tovább' gombra.")
else
say_reward(string.format("Szükséges rossz/jó pontok: %d", need_alignment))
end
say("")
local s=select("Tovább", "Megszakít")
if s==2 then
return
end


if cur_alignment>=0 and cur_alignment<need_alignment then
say_title(string.format("%s megerősítés!", title))
say("")
say("Ha nagymester képességeket akarsz elsajátítani,")
say("akkor a rossz/jó pontjaid az átlagszint alá ")
say("eshetnek, mivel pillanatnyilag csak kevés")
say("rang ponttal rendelkezel.")
say("Ha tényleg edzeni akarsz, akkor írd be az")
say("alábbi sorba a következő szót.")
say("")
say_reward("Fejleszteni")
say()
say("Ha nem akarod edzeni, akkor hagyd üresen a")
say("szövegdobozt és nyomd meg az 'ENTER' billentyűt.")
local s=input()
if s!="Fejleszteni" 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("blabla")
return
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 sikeres!", title))
say("")
if 40 == pc.get_skill_level(skill_vnum) then
say(string.format("A %s Tökéletes mester lett.", skill_name))
else
say_reward("Képesség edzése sikeres!")
say("")
say_reward(string.format("%s elérte a G%d szintet.",skill_name, skill_level-30+1+1))
end
say("")
say_reward("Vesztettél néhány rossz/jó rangpontot, és")
say_reward("felhasználtad a lélek követ.")
say("")
else
say_title(string.format("%s sikertelen!", title))
say("")
say_reward("Képesség edzése sikertelen!")
say("")
say("Nem sikerült a képességedet feljavítani.")
say("Próbáld meg később.")
say("")
say_reward("Vesztettél néhány rossz/jó rangpontot, és")
say_reward("felhasználtad a lélek követ.")
pc.change_alignment(-number(need_alignment/3, need_alignment/2))
end
end
pc.removeitem("50513", 1)
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


Mert olyan 5-10% növelnék a sikerességén.

Előre is köszi a segítséget!

Nem elérhető TheSLESH

  • Intermediate
  • **
  • Thank You
  • -Given: 11
  • -Receive: 23
  • Hozzászólások: 174
  • Segített: -19
  • Várom a napfelkeltét
Re:Lélekkő esélye
« Válasz #1 Dátum: 2019-03-13, 09:58:02 »
if need_alignment>0 then
if pc.learn_grand_master_skill(skill_vnum) then
pc.change_alignment(-need_alignment)
say_title(string.format("%s sikeres!", title))
say("")
if 40 == pc.get_skill_level(skill_vnum) then
say(string.format("A %s Tökéletes mester lett.", skill_name))
else
say_reward("Képesség edzése sikeres!")
say("")
say_reward(string.format("%s elérte a G%d szintet.",skill_name, skill_level-30+1+1))
end
say("")
say_reward("Vesztettél néhány rossz/jó rangpontot, és")
say_reward("felhasználtad a lélek követ.")
say("")
Az ember csak fiatalon találhat ki igazán új dolgokat. Utána már túl tapasztalt, túl híres (...) és túl ostoba.

Nem elérhető ddani700

  • Trainee
  • *
  • Thank You
  • -Given: 12
  • -Receive: 2
  • Hozzászólások: 144
  • Segített: -10
Re:Lélekkő esélye
« Válasz #2 Dátum: 2019-03-13, 22:48:35 »
Ezt most nem értem mit kell át írni hogy nagyobb % eséllyel sikerüljön?

Nem elérhető [VIP]Rin the Exorcist

  • VIP
  • Sage
  • *
  • Thank You
  • -Given: 297
  • -Receive: 344
  • Hozzászólások: 3 652
  • Segített: 344
Re:Lélekkő esélye
« Válasz #3 Dátum: 2019-03-13, 23:22:48 »
Itt semmit, mivel a forrásban kell átírni...
"Tisztelet a kivételnek! Mindig tisztelet a kivételnek!"
"Kezdő vagyok, ne nézz le... (:"