---------------------------------------------------- --UPITEMS QUEST_lv26-97 --XMT2 REFINE_ITEMS Quest ---------------------------------------------------- quest upitems begin state start begin --TEXT when login or levelup or letter or enter with pc.getqf("select") < 1 begin local v = find_npc_by_vnum(20016) if v != 0 then target.vid("__TARGET__", v, "Schmied") end q.set_icon("scroll_open_green.tga") send_letter("&Verbesserung der Gegenstände") end when button or info begin say_title("Verbesserung der Gegenstände") say("") say("Der Schmied benötigt ein weiteres Mal Hilfe.") say("Er meinte, er bräuchte Hilfe auf der Suche") say("nach speziellen Gegenständen.") say("Sprich mit ihm,") say("um eine genauere Beschreibung zu erhalten.") say("") say_reward("Sprich mit dem Schmied") say("") set_state(run) end end state run begin function get_item_table() local sub_set = { -- x = itemvnum,itemanzahl,mobvnum,mobanzahl,mobname,itemname, [1] = {27992,1,101,5,"Wildhunde","Weiße Perle"}, [2] = {27993,1,101,7,"Wildhunde","Blaue Perle"}, [3] = {27994,1,101,10,"Wildhunde","Blutrote Perle"}, } return sub_set end function informations(x,y) return upitems.get_item_table()[x][y] end when __TARGET__.target.click or 20016.chat."Spezialmaterial" with pc.getqf("select") < 1 begin say("Ok, gute Wahl. Ich sehe, du bist vernünftig.") say("Wähle bitte nun den gewünschten Gegenstand aus!") local tSelectTable = {} for curTableIndex = 1, table.getn(upitems.get_item_table()) do table.insert(tSelectTable, upitems.informations(curTableIndex,6)) end table.insert(tSelectTable, "Abbrechen") x = select_table(tSelectTable) pc.setqf("select",x) for i = 1, x, 1 do if x >= (table.getn(tSelectTable)+1) then return else say("Für die "..upitems.informations(pc.getqf("select"),6).." musst du "..upitems.informations(pc.getqf("select"),4).."x "..upitems.informations(pc.getqf("select"),5).." töten.") wait() set_state(information) break end end end end state information begin when login or levelup or letter or enter with pc.getqf("select") > 0 begin --makequestbutton("#"..upitems.informations(pc.getqf("select"),1).."#"..upitems.informations(pc.getqf("select"),6)) send_letter("#"..upitems.informations(pc.getqf("select"),1).."#"..upitems.informations(pc.getqf("select"),6)) --q.set_title("#"..upitems.informations(pc.getqf("select"),1).."#"..upitems.informations(pc.getqf("select"),6)) q.set_counter("Verbleibend", upitems.informations(pc.getqf("select"),4)) --q.start() end when button or info begin say_title(upitems.informations(pc.getqf("select"),6)) say_reward("Du hast "..pc.getqf("uppoints").." von "..upitems.informations(pc.getqf("select"),4).." "..upitems.informations(pc.getqf("select"),5).." getötet.") say("") end when kill with pc.getqf("select") > 0 begin if npc.get_race() == upitems.informations(pc.getqf("select"),3)then pc.setqf("uppoints", pc.getqf("uppoints")+1) q.set_counter("Verbleibend", upitems.informations(pc.getqf("select"),4) - pc.getqf("uppoints")) end if pc.getqf("uppoints") >= upitems.informations(pc.getqf("select"),4) then set_state(goback) end end end state goback begin when letter or enter begin send_letter("#"..upitems.informations(pc.getqf("select"),1).."#"..upitems.informations(pc.getqf("select"),6).." abholen!") --q.set_title("#"..upitems.informations(pc.getqf("select"),1).."#"..upitems.informations(pc.getqf("select"),6).." abholen!") end when button or info begin say_title(upitems.informations(pc.getqf("select"),6)) say_reward(upitems.informations(pc.getqf("select"),6).." ist abholbereit!") say("") end when 20016.chat."Verbesserungs-Gegenstände" with pc.getqf("select") > 0 begin if select("Belohnung abholen","Abhauen") == 1 then if pc.getqf("uppoints") >= upitems.informations(pc.getqf("select"),4)then pc.give_item2(upitems.informations(pc.getqf("select"),1),upitems.informations(pc.getqf("select"),2)) pc.setqf("uppoints",0) pc.setqf("select",0) set_state(run) clear_letter() --q.done() else return end end end end end --quest