Hi,
I'm implementing a system for choosing skills instantly.
I've created a quest so that when the player clicks on it, it opens a GUI for the player to choose skills.
Quest:
quest select_skill begin
state start begin
when login or levelup with pc.level>=5 and pc.skillgroup == 0 begin
set_state(run)
end
end
state run begin
when login with pc.get_skill_group()!=0 begin
restart_quest()
end
when login or levelup with pc.get_level() >= 5 and pc.get_skill_group() == 0 begin
send_letter("Choose your path");
end
when button or info with pc.get_level() >= 5 and pc.get_skill_group() == 0 begin
command ("selectskill_open");
end
end
end
The quest works perfectly under these conditions, but when I try to set_state_quest in the skill_reset2 quest to call it as soon as the skills are reset, it is not called.
Quest 2:
quest skill_reset2 begin
state start begin
when 9006.chat.gameforge.skill_reset2._10_npcChat begin
if pc.level < 5 then
say_title(gameforge.couple_ring._20_sayTitle)
say(gameforge.skill_reset2._20_say)
return
end
if pc.level >30 then
say_title(gameforge.couple_ring._20_sayTitle)
say(string.format(gameforge.skill_reset2._30_say, pc.level))
return
end
if pc.get_skill_group()==0 then
say_title(gameforge.couple_ring._20_sayTitle)
say(gameforge.skill_reset2._40_say)
return
end
local cost = 10000 + pc.level * 2000
local s = 0
if not pc.has_master_skill() then
say_title(gameforge.couple_ring._20_sayTitle)
say(string.format(gameforge.skill_reset2._50_say, cost))
s = select(gameforge.skill_reset2._10_npcChat, gameforge.skill_reset2._60_select)
else
say_title(gameforge.couple_ring._20_sayTitle)
say(gameforge.skill_reset2._70_say)
wait()
say(string.format(gameforge.skill_reset2._80_say, cost))
s = select(gameforge.skill_reset2._90_select, gameforge.locale.cancel)
end
if 2==s then
say_title(gameforge.couple_ring._20_sayTitle)
say(gameforge.skill_reset2._110_say)
return
end
if pc.money < cost then
say_title(gameforge.couple_ring._20_sayTitle)
say(gameforge.skill_reset2._120_say)
return
end
pc.changegold(-cost)
pc.clear_skill()
pc.set_skill_group(0)
set_quest_state("select_skill","run")
end
end
end
This quest was already created in the severfiles when I started using it, I just changed the set_quest_state to the quest I wanted to call.
If someone could help me explain why this is happening, I'd be very grateful.