Hey, kennt sich hier jemand mit Quest's schreiben aus?
quest regenbogen begin
state start begin
when 50512.use begin
say_title("Regenbogenstein:")
say("Du möchtest also deine Skills ")
say("Perfektionieren?")
if pc.job ==0 then
say("Wähle deine Lehre aus")
local s=select("Körper","Mental")
if s==1 then
local s=select("3Wegeschnitt","Schwertwirbel","Kampfrausch","Aura","Sausen")
if s==1 then
pc.set_skill_group(1)
pc.set_skill_level(1 ,59)
say("Erfolgreich geskillt!")
if s==2 then
pc.set_skill_group(1)
pc.set_skill_level(2 ,59)
say("Erfolgreich geskillt!")
if s==3 then
pc.set_skill_group(1)
pc.set_skill_level(3 ,59)
say("Erfolgreich geskillt!")
if s==4 then
pc.set_skill_group(1)
pc.set_skill_level(4 ,59)
say("Erfolgreich geskillt!")
if s==5 then
pc.set_skill_group(1)
pc.set_skill_level(5 ,59)
say("Erfolgreich geskillt!")
end
if s==2 then
local s=select("Durchschlag","Heftiges Schlagen","Stampfer","Starker Körper","Schwertschlag")
if s==1 then
pc.set_skill_group(2)
pc.set_skill_level(16 ,59)
say("Erfolgreich geskillt!")
if s==2 then
pc.set_skill_group(2)
pc.set_skill_level(17 ,59)
say("Erfolgreich geskillt!")
if s==3 then
pc.set_skill_group(2)
pc.set_skill_level(18 ,59)
say("Erfolgreich geskillt!")
if s==4 then
pc.set_skill_group(2)
pc.set_skill_level(19 ,59)
say("Erfolgreich geskillt!")
if s==5 then
pc.set_skill_group(2)
pc.set_skill_level(20 ,59)
say("Erfolgreich geskillt!")
end
elseif pc.job ==1 then
say("Wähle deine Lehre aus")
local s=select("Nahkampf","Fernkampf")
if s==1 then
local s=select("Hinterhalt","Blitzangriff","Degenwirbel","Tarnung","Giftwolke")
if s==1 then
pc.set_skill_group(3)
pc.set_skill_level(31 ,59)
say("Erfolgreich geskillt!")
if s==2 then
pc.set_skill_group(3)
pc.set_skill_level(32 ,59)
say("Erfolgreich geskillt!")
if s==3 then
pc.set_skill_group(3)
pc.set_skill_level(33 ,59)
say("Erfolgreich geskillt!")
if s==4 then
pc.set_skill_group(3)
pc.set_skill_level(34 ,59)
say("Erfolgreich geskillt!")
if s==5 then
pc.set_skill_group(3)
pc.set_skill_level(35 ,59)
say("Erfolgreich geskillt!")
end
if s==2 then
local s=select("Wiederholter Schuss","Pfeilregen","Feuerpfeil","Federschreiten","Giftpfeil")
if s==1 then
pc.set_skill_group(4)
pc.set_skill_level(46 ,59)
say("Erfolgreich geskillt!")
if s==2 then
pc.set_skill_group(4)
pc.set_skill_level(47 ,59)
say("Erfolgreich geskillt!")
if s==3 then
pc.set_skill_group(4)
pc.set_skill_level(48 ,59)
say("Erfolgreich geskillt!")
if s==4 then
pc.set_skill_group(4)
pc.set_skill_level(49 ,59)
say("Erfolgreich geskillt!")
if s==5 then
pc.set_skill_group(4)
pc.set_skill_level(50 ,59)
say("Erfolgreich geskillt!")
end
elseif pc.job ==2 then
say("Wähle deine Lehre aus")
local s=select("Magie","Waffe")
if s==1 then
local s=select("Dunkler Schlag","Flammenschlag","Geist der Flamme","Dunkler Schutz","Geisterschlag","Dunkler Stein")
if s==1 then
pc.set_skill_group(5)
pc.set_skill_level(76 ,59)
say("Erfolgreich geskillt!")
if s==2 then
pc.set_skill_group(5)
pc.set_skill_level(77 ,59)
say("Erfolgreich geskillt!")
if s==3 then
pc.set_skill_group(5)
pc.set_skill_level(78 ,59)
say("Erfolgreich geskillt!")
if s==4 then
pc.set_skill_group(5)
pc.set_skill_level(79 ,59)
say("Erfolgreich geskillt!")
if s==5 then
pc.set_skill_group(5)
pc.set_skill_level(80 ,59)
say("Erfolgreich geskillt!")
if s==6 then
pc.set_skill_group(5)
pc.set_skill_level(81, 59)
say("Erfolgreich geskillt!")
end
if s==2 then
local s=select("Fingerschlag","Drachenwirbel","Verzauberte Klinge","Furcht","Verzauberte Rüstung","Zauber Aufheben")
if s==1then
pc.set_skill_group(6)
pc.set_skill_level(61 ,59)
say("Erfolgreich geskillt!")
if s==2then
pc.set_skill_group(6)
pc.set_skill_level(62 ,59)
say("Erfolgreich geskillt!")
if s==3then
pc.set_skill_group(6)
pc.set_skill_level(63 ,59)
say("Erfolgreich geskillt!")
if s==4then
pc.set_skill_group(6)
pc.set_skill_level(64 ,59)
say("Erfolgreich geskillt!")
if s==5then
pc.set_skill_group(6)
pc.set_skill_level(65 ,59)
say("Erfolgreich geskillt!")
if s==6then
pc.set_skill_group(6)
pc.set_skill_level(66 ,59)
say("Erfolgreich geskillt!")
end
elseif pc.job ==3 then
say("Wähle deine Lehre aus")
local s=select("Heilung","Drache")
if s==1 then
local s=select("Blitzwurf","Blitz heraufbeschwören","Blitzkralle","Kurieren","Schnelligkeit","Angriff+")
if s==1 then
pc.set_skill_group(7)
pc.set_skill_level(106 ,59)
say("Erfolgreich geskillt!")
if s==2 then
pc.set_skill_group(7)
pc.set_skill_level(107 ,59)
say("Erfolgreich geskillt!")
if s==3 then
pc.set_skill_group(7)
pc.set_skill_level(108 ,59)
say("Erfolgreich geskillt!")
if s==4 then
pc.set_skill_group(7)
pc.set_skill_level(109 ,59)
say("Erfolgreich geskillt!")
if s==5 then
pc.set_skill_group(7)
pc.set_skill_level(110 ,59)
say("Erfolgreich geskillt!")
if s==6 then
pc.set_skill_group(7)
pc.set_skill_level(111 ,59)
say("Erfolgreich geskillt!")
end
if s==2 then
local s=select("Fliegender Talisman","Drachenschiessen","Drachengebrüll","Segen","Reflektieren","Hilfe des Drachens")
if s==1 then
pc.set_skill_group(8)
pc.set_skill_level(91 ,59)
say("Erfolgreich geskillt!")
if s==2 then
pc.set_skill_group(8)
pc.set_skill_level(92 ,59)
say("Erfolgreich geskillt!")
if s==3 then
pc.set_skill_group(8)
pc.set_skill_level(93 ,59)
say("Erfolgreich geskillt!")
if s==4 then
pc.set_skill_group(8)
pc.set_skill_level(94 ,59)
say("Erfolgreich geskillt!")
if s==5 then
pc.set_skill_group(8)
pc.set_skill_level(95 ,59)
say("Erfolgreich geskillt!")
if s==6 then
pc.set_skill_group(8)
pc.set_skill_level(96 ,59)
say("Erfolgreich geskillt!")
end
end
end
end
end
quest regenbogen begin
state start begin
when 50512.use begin
say_title("Regenbogenstein:")
say("Du möchtest also deine Skills ")
say("Perfektionieren?")
say""
local race = pc.job
local sel = select_table(({{"Körper","Mental"},{"Nahkampf","Fernkampf"},{"Magie","Waffe"},{"Heilung","Drache"}})[race+1])
local SelJob= {}
for i,skill_id in pairs(special.active_skill_list[race+1][sel])do table.insert(SelJob,locale.GM_SKILL_NAME_DICT[skill_id])end
table.insert(SelJob,"Abbrechen")
local SelJobSkill = select_table(SelJob)
if SelJobSkill ~= table.getn(SelJobSkill) then
pc.set_skill_group(sel)
pc.set_skill_level(special.active_skill_list[race+1][sel][SelJobSkill],59)
say(string.format("%q",locale.GM_SKILL_NAME_DICT[special.active_skill_list[race+1][sel][SelJobSkill]]).." wurde auf Perfekt verbessert.")
else
return
end
end
end
end
quest regi begin
state start begin
when 36000.use or 36001.use or 36002.use or 36003.use begin
local from_to = ({
[36000] = {20, 30},
[36001] = {30, 40},
[36002] = {20, 40},
[36003] = {0, 40}
})[item.get_vnum()]
regenbogenstein(item.get_vnum(), from_to[1], from_to[2])
end
function regenbogenstein(item_vnum, from, to)
if pc.get_skill_group() == 0 then
say_title("Regenbogenstein")
say("")
say("Du hast noch keine Lehre gewählt und hast somit")
say("auch keine Fertigkeiten, die erhöht werden könnten.")
say("")
say_reward("Bitte wähle zunächst eine Lehre.")
say("")
return
end
local skillList = BuildSkillList(from, to)
if table.getn(skillList[1]) < 1 then
say_title("Regenbogenstein")
say("")
say("Du hast keine Fertigkeiten auf der erforderlichen")
say("Stufe.")
say("")
say_reward("Bitte versuche es erneut, wenn du deine")
say_reward("Fertigkeiten erhöht hast.")
say("")
return
end
say_reward("Welche Fertigkeit möchtest du steigern?")
local s = select3(skillList[2])
if s < 1 then return end
say_title("Regenbogenstein")
say("")
say_reward("Möchtest du die Stufe von ...")
say_reward(skillList[2][s])
say_reward("... wirklich erhöhen?")
say("")
local accept = select(skillList[2][s].." erhöhen", "Abbrechen")
if accept == 2 then return end
if pc.count_item(item_vnum) < 1 then
say("Du hast keinen Regenbogenstein mehr ...")
say("versuch nicht zu schummeln!")
return
end
pc.remove_item(item_vnum, 1)
if from == 0 and to == 40 then
pc.set_skill_level(skillList[1][s], pc.get_skill_level(skillList[1][s])+1)
else
pc.set_skill_level(skillList[1][s], to)
end
say_title("Regenbogenstein")
say("")
say("Herzlichen Glückwunsch, die Stufe von ...")
say(skillList[2][s])
say("... wurde erfolgreich erhöht.")
say("")
say_reward("Viel Spaß mit deinem Skill!")
say("")
end
end
end
function BuildSkillList(from, to)
local skillList = special.active_skill_list[pc.get_job()+1][pc.get_skill_group()]
local returnList = {{}, {}}
for _, skill_vnum in pairs(skillList) do
if pc.get_skill_level(skill_vnum) >= from and pc.get_skill_level(skill_vnum) < to then
local name = locale.GM_SKILL_NAME_DICT[skill_vnum] or skill_vnum
table.insert(returnList[1], skill_vnum)
table.insert(returnList[2], name)
end
end
return returnList
end