quest refine_items begin
state start begin
when 9010.take begin
pc.remove_item(71009, 1)
local price = 100000000
say_title("Aufwertung")
say("Je nach groese des items brauchst du ")
say("Auch den dazugehoerigen platz")
say("So neben bei mus ich dich auch bitten")
say("keine items zu uppen die nicht uppbar")
say("Oder weiteruppbar sind")
say("Ich wider rum werde dir zur strafe das yang")
say("Trotzdem nehmen und du hast kein")
say("Geupptes item")
say("")
say("Wilst du das uppen "..item_name(item.vnum).." Fuer "..price.." Yang?")
if select("Uppen", "Nein Danke") == 2 then return end
say_title("Uppen")
if pc.count_item(25041) >= 1 then
say("Du hast magisches metall bei dir")
say("Somit kann ich dir das nicht Uppen")
return
end
if pc.get_empty_inventory_count() < 4 then
say("Du hast nicht genuhg Platz im Inventar")
return
elseif pc.get_gold() < price then
say("Du hast nicht genuhg Yang")
return
end
pc.change_gold(-price)
item.over9refine()
say("Dein item wurde erfolgreich geuppt")
end
end
end
quest refine_items begin state start begin when 9010.take with pc.getqf(einmalupp)==0 begin# pc.setqf(einmalupp, 1) pc.remove_item(71009, 1) local price = 100000000 say_title("Aufwertung") say("Je nach groese des items brauchst du ") say("Auch den dazugehoerigen platz") say("So neben bei mus ich dich auch bitten") say("keine items zu uppen die nicht uppbar") say("Oder weiteruppbar sind") say("Ich wider rum werde dir zur strafe das yang") say("Trotzdem nehmen und du hast kein") say("Geupptes item") say("") say("Wilst du das uppen "..item_name(item.vnum).." Fuer "..price.." Yang?") if select("Uppen", "Nein Danke") == 2 then return end say_title("Uppen")
if pc.count_item(25041) >= 1 then say("Du hast magisches metall bei dir") say("Somit kann ich dir das nicht Uppen") return end if pc.get_empty_inventory_count() < 4 then say("Du hast nicht genuhg Platz im Inventar") return elseif pc.get_gold() < price then say("Du hast nicht genuhg Yang") return end pc.change_gold(-price) item.over9refine() say("Dein item wurde erfolgreich geuppt") end end end
Habe es so gemacht das man den nur einmal anklicken kann mit dem Item, auch wenn man nicht uppt hat meine keine Versuche mehr wie der DT Schmied
quest marriage_manage begin
state start begin
when oldwoman.chat."Ich möchte heiraten" with not pc.is_engaged_or_married() begin
if not npc.lock() then
say_title("Alte Dame")
say("Die Hochzeitsinseln sind zurzeit voll. Wartet")
say("einen Moment oder kommt später wieder!")
return
end
if pc.level < 25 then
say_title("Alte Dame")
say("Du bist noch zu jung um zu heiraten.")
say("Die jungen Paare werden zu oft geschieden.")
say("Ich möchte nicht zulassen, dass du das")
say("durchstehen musst.")
say("Geh und sammle mehr Erfahrung.")
say_reward("Du kannst erst ab Level 25 heiraten.")
npc.unlock()
return
end
local m_ring_num = pc.countitem(70301)
local m_has_ring = m_ring_num > 0
if not m_has_ring then
say_title("Alte Dame")
say("Du willst ohne einen Verlobungsring heiraten?")
say_item("Verlobungsring", 70301, "")
say("Besorge mir erst einen Ring, dann können")
say("wir über Hochzeit reden...")
npc.unlock()
return
end
local m_sex = pc.get_sex()
if not marriage_manage.is_equip_wedding_dress() then
say_title("Alte Dame")
say("Möchtest du wirklich so heiraten?")
say("Meistens ist eine Ehe für die Ewigkeit,")
say("da kannst du doch nicht so gekleidet auftreten.")
if m_sex==0 then
say_item("Smoking", marriage_manage.get_wedding_dress(pc.get_job()), "")
say_reward("Wenn du heiraten möchtest brauchst du")
say_reward("einen Smoking.")
else
say_item("Brautkleid", marriage_manage.get_wedding_dress(pc.get_job()), "")
say_reward("Wenn du heiraten möchtest brauchst du")
say_reward("ein Brautkleid.")
end
npc.unlock()
return
end
local NEED_MONEY = 1000000
if pc.get_money() < NEED_MONEY then
say_title("Alte Dame")
say("Hochzeiten kosten eine Menge Yang.")
say("Du besitzt leider nicht genug um deine")
say("zu finanzieren.")
say_reward("Du brauchst eine Millionen Yang")
npc.unlock()
return
end
say_title("Alte Dame")
say("Wie ich sehe bist du entschlossen.")
say("Wollen wir jetzt die Vorbereitungen treffen?")
say("Dann schreib jetzt bitte den Namen der Person,")
say("die du heiraten möchtest.")
local sname = input()
if sname == "" then
say_title("Alte Dame")
say("Bist du so aufgeregt, dass du nichtmehr")
say("den Namen schreiben kannst? Probiers nochmal")
npc.unlock()
return
end
local u_vid = find_pc_by_name(sname)
local m_vid = pc.get_vid()
if u_vid == 0 then
say_title("Alte Dame")
say("Du weisst nicht den Namen deines Partners?")
say("Bist du sicher, dass du heiraten möchtest?")
say_reward(sname.." ist nicht online")
npc.unlock()
return
end
if not npc.is_near_vid(u_vid, 10) then
say_title("Alte Dame")
say("Dein Partner muss in der Nähe sein,")
say("damit ich euch trauen kann.")
say_reward(sname.." ist zu weit weg")
npc.unlock()
return
end
local old = pc.select(u_vid)
local u_level = pc.get_level()
local u_job = pc.get_job()
local u_sex = pc.get_sex()
local u_name = pc.name
local u_gold = pc.get_money()
local u_married = pc.is_married()
local u_has_ring = pc.countitem(70301) > 0
local u_wear = marriage_manage.is_equip_wedding_dress()
pc.select(old)
local m_level = pc.get_level()
if u_vid == m_vid then
say_title("Alte Dame")
say("Nicht deinen, den deines Partners!")
say_reward("Du hast deinen eigenen Namen eingegeben")
npc.unlock()
return
end
if u_married then
say_title("Alte Dame")
say("Die Person die du heiraten möchtest ist")
say("bereits verheiratet. Ich glaube du musst")
say("dir einen neuen, unverheirateten,")
say("Lebensgefährten suchen.")
npc.unlock()
return
end
if u_level < 25 then
say_title("Alte Dame")
say("Dein Partner ist noch keine 25, du kannst")
say("dich mit dieser Ehe strafbar machen!")
npc.unlock()
return
end
if m_level - u_level > 15 or u_level - m_level > 15 then
say_title("Alte Dame")
say("Der Erfahrungsunterschied zwischen dir und")
say("dein Partner ist zu groß! So eine Ehe kann")
say("ich leider nicht zulassen.")
say("Ihr dürft nur 15 Level unterschied haben.")
npc.unlock()
return
end
if not u_has_ring then
say_title("Alte Dame")
say("Dein Partner braucht auch einen Verlobungsring.")
say("Kauf ihn doch in Zeichen deiner Liebe einen!")
npc.unlock()
return
end
if not u_wear then
say_title("Alte Dame")
say("Dein Partner trägt keine Hochzeitskleidung")
say("Ist es dir nicht peinlich dich so mir ihn")
say("blicken zu lassen?")
npc.unlock()
return
end
local ok_sign = confirm(u_vid, "Möchtest du "..pc.name.." heiraten?", 30)
if ok_sign == CONFIRM_OK then
local m_name = pc.name
if pc.get_gold()>=NEED_MONEY then
pc.change_gold(-NEED_MONEY)
pc.removeitem(70301, 1)
pc.give_item2(70302, 1)
local old = pc.select(u_vid)
pc.removeitem(70301, 1)
pc.give_item2(70302, 1)
pc.select(old)
say_title("Alte Dame")
say("So, ich denke jetzt haben wirs.")
say("Ich werde euch jetzt auf die Hochzeits-")
say("insel schicken. Ich wünsch euch eine lange")
say("und glückliche Ehe. Gratulation!")
wait()
setskin(NOWINDOW)
marriage.engage_to(u_vid)
end
else
say_title("Alte Dame")
say("Dein Partner möchte dich nicht heiraten.")
say("Klärt es lieber untereinander ab.")
end
npc.unlock()
end
when oldwoman.chat."Zu meiner Hochzeit" with pc.is_engaged() begin
say_title("Alte Dame")
say("Warum bist du noch hier?")
say("Dein Partner vermisst dich!")
say("Ich begleite dich zu ihm.")
wait()
setskin(NOWINDOW)
marriage.warp_to_my_marriage_map()
end
when 9011.chat."Eheschließung" with pc.is_engaged() and marriage.in_my_wedding() begin
if not npc.lock() then
say_title("Hochzeitshelferin")
say("Ich rede gerade mit deinen Partner,")
say("einen Moment bitte.")
return
end
say_title("Hochzeitshelferin")
say("Ich werde eure Ehe offiziel eintragen.")
say("Gib erstmal den Namen deines Partners")
say("ein.")
local sname = input()
local u_vid = find_pc_by_name(sname)
local m_vid = pc.get_vid()
if u_vid == 0 then
say_title("Hochzeitshelferin")
say("Dieser Name ist nicht registriet.")
say("Möchtest du deine Eingabe nochmal")
say("überprüfen?")
say_reward(sname.." ist nicht online")
npc.unlock()
return
end
if not npc.is_near_vid(u_vid, 10) then
say_title("Hochzeitshelferin")
say("Du musst deinen Partner herbringen.")
say("Ich brauch ihn um den Ehebund zu")
say("schließen.")
npc.unlock()
return
end
if u_vid == m_vid then
say_title("Hochzeitshelferin")
say("Du sollst nicht deinen, sondern den deines")
say("Partners schreiben.")
npc.unlock()
return
end
if u_vid != marriage.find_married_vid() then
say_title("Hochzeitshelferin")
say("Das ist nicht die Person, die du")
say("ursprünglich heiraten wolltest.")
npc.unlock()
return
end
local ok_sign = confirm(u_vid, "Möchtest du "..pc.name.." heiraten?", 30)
if ok_sign != CONFIRM_OK then
say_title("Hochzeitshelferin")
say("Dein Partner ist noch nicht für die")
say("Eheschließung bereit.")
npc.unlock()
return
end
say_title("Hochzeitshelferin")
say("Ok, alles in Ordnung. Wir können anfangen.")
marriage.set_to_marriage()
npc.unlock()
end
function give_wedding_gift()
local male_item = {71072, 71073, 71074}
local female_item = {71069, 71070, 71071}
if pc.get_sex() == MALE then
pc.give_item2(male_item[number(1, 3)], 1)
else
pc.give_item2(female_item[number(1, 3)], 1)
end
end
when 9011.chat."Hochzeitsmusik abspielen" with
(pc.is_engaged() or pc.is_married()) and
marriage.in_my_wedding() and
not marriage.wedding_is_playing_music() begin
marriage.wedding_music(true, "wedding.mp3")
setskin(NOWINDOW)
end
when 9011.chat."Hochzeitsmusik beenden" with
(pc.is_engaged() or pc.is_married()) and
marriage.in_my_wedding() and
marriage.wedding_is_playing_music() begin
marriage.wedding_music(false, "default")
setskin(NOWINDOW)
end
when 9011.chat."Nacht" with
pc.is_married() and
marriage.in_my_wedding() begin
marriage.wedding_dark(true)
setskin(NOWINDOW)
end
when 9011.chat."Schnee" with pc.is_married() and marriage.in_my_wedding() begin
marriage.wedding_snow(true)
setskin(NOWINDOW)
end
when 9011.chat."Hochzeit beenden" with pc.is_married() and marriage.in_my_wedding() begin
if not npc.lock() then
say_title("Hochzeitshelferin")
say("Warte einen Moment, ich rede gerade mit")
say("deinen Partner.")
return
end
say_title("Hochzeitshelferin")
say("Möchtest du die Party abbrechen?")
local s = select("Ja","Nein")
if s == 1 then
local u_vid = marriage.find_married_vid()
say_title("Hochzeitshelferin")
say("Wir müssen auf deinen Partner warten.")
say("Es liegt jetzt an ihn..")
local ok_sign = confirm(u_vid, "Möchtest du die Hochzeit beenden? ", 30)
if ok_sign == CONFIRM_OK then
marriage.end_wedding()
else
say_title("Hochzeitshelferin")
say("Dein Partner möchte noch weiterfeiern!")
end
npc.unlock()
end
end
when 11000.chat."Scheidung einreichen" or 11002.chat."Scheidung einreichen" or 11004.chat."Scheidung einreichen " with pc.is_married() begin
if not marriage_manage.check_divorce_time() then
return
end
local u_vid = marriage.find_married_vid()
if u_vid == 0 or not npc.is_near_vid(u_vid, 10) then
say_title("Wächter des Dorfplatzes")
say("Ohne deinen Partner kannst du auf rechtlichen")
say("Wege nicht geschieden werden.")
return
end
say_title("Wächter des Dorfplatzes")
say("Für eine rechtlich Scheidung brauch ich")
say("500.000 Yang und eine Einverständniss")
say("von deinen Partner.")
say("Möchtest du dich wirklich Scheiden lassen?")
local MONEY_NEED_FOR_ONE = 500000
local s = select("Ja", "Nein")
if s == 1 then
local m_enough_money = pc.gold > MONEY_NEED_FOR_ONE
local m_have_ring = pc.countitem(70302) > 0
local old = pc.select(u_vid)
local u_enough_money = pc.gold > MONEY_NEED_FOR_ONE
local u_have_ring = pc.countitem(70302) > 0
pc.select(old)
if not m_have_ring then
say("Ich brauche den Ehering.")
return
end
if not u_have_ring then
say("Ich brauche den Ehering deines Partners.")
return
end
if not m_enough_money then
say_title("Wächter des Dorfplatzes")
say("Du hast nicht genug Yang für die Scheidung.")
return
end
if not u_enough_money then
say_title("Wächter des Dorfplatzes")
say("Du hast nicht genug Yang für die Scheidung.")
return
end
say_title("Wächter des Dorfplatzes")
say("Möchtet ihr euch wirklich scheiden lassen?")
say("Vielleicht ist es einfach nur ein Missverständniss.")
say("Wollt ihr es wirklich?")
local c=select("Ja", "Ich hab meine Meinung geändert")
if 2 == c then
say_pc_name()
say("Ich hab meine Meinung geändert")
say("Ich will doch nicht geschieden werden")
wait()
say_title("Wächter des Dorfplatzes")
say("Es ist das beste für euch..")
say("Ich wünsch euch noch eine lange und")
say("glückliche Ehe.")
say_reward("Die Scheidung wurde anuliert.")
return
end
local ok_sign = confirm(u_vid, "Möchtest du dich von "..pc.name.." scheiden lassen?", 30)
if ok_sign == CONFIRM_OK then
local m_enough_money = pc.gold > MONEY_NEED_FOR_ONE
local m_have_ring = pc.countitem(70302) > 0
local old = pc.select(u_vid)
local u_enough_money = pc.gold > MONEY_NEED_FOR_ONE
local u_have_ring = pc.countitem(70302) > 0
pc.select(old)
if m_have_ring and m_enough_money and u_have_ring and u_enough_money then
pc.removeitem(70302, 1)
pc.change_money(-MONEY_NEED_FOR_ONE)
local old = pc.select(u_vid)
pc.removeitem(70302, 1)
pc.change_money(-MONEY_NEED_FOR_ONE)
pc.select(old)
say_title("Wächter des Dorfplatzes")
say("Die Scheidung ist vollbracht.")
say("Du bist nun wieder ein freier Mensch.")
say("Die Scheidung kann nichtmehr rückgängig")
say("gemacht werden.")
marriage.remove()
else
say_title("Wächter des Dorfplatzes")
say("Eure Unterlagen sind nicht komplett.")
say("Kommt später wieder.")
end
else
say_title("Wächter des Dorfplatzes")
say("Dein Partner möchte sich nicht Scheiden")
say("lassen. Finde zuerst einen Grund.")
end
end
end
when 11000.chat."Einseitige Scheidung einreichen" or 11002.chat."Einseitige Scheidung einreichen" or 11004.chat."Einseitige Scheidung einreichen" with pc.is_married() begin
if not marriage_manage.check_divorce_time() then
return
end
say_title("Wächter des Dorfplatzes")
say("Du brauchst eine Millionen Yang um dich")
say("sofort scheiden zu lassen. Willst du es")
say("trotzdem machen?")
local s = select("Ja", "Nein")
local NEED_MONEY = 1000000
if s == 2 then
return
end
if pc.money < NEED_MONEY then
say_title("Wächter des Dorfplatzes")
say("Du hast nicht genug Yang für die")
say("einseitige Scheidung.")
return
end
say_title("Wächter des Dorfplatzes")
say("Möchtest du es wirklich machen?")
say("Denk nochmal drüber nach..")
local c = select("Ja, ich will","Nein, doch nicht")
if c == 2 then
say_title("Wächter des Dorfplatzes")
say("Na dann,")
say("Es ist besser so. Falls doch komm")
say("wieder zurück. Sei dir dann aber wirklich")
say("sicher dabei!")
return
end
pc.removeitem(70302, 1)
pc.change_gold(-NEED_MONEY)
marriage.remove()
say_title("Wächter des Dorfplatzes")
say("Wenn du dir ganz sicher bist..")
say("dann mal los! Ab jetzt bist du wieder")
say("ein freier Mensch.")
end
when oldwoman.chat."Liste der Hochzeiten" with not pc.is_engaged() begin
local t = marriage.get_wedding_list()
if table.getn(t) == 0 then
say_title("Alte Dame")
say("Momentan finden keine Hochzeiten statt...")
else
-- chat(table.getn(t))
local wedding_names = {}
table.foreachi(t, function(n, p) wedding_names[n] = p[3].." Hochzeit "..p[4].." von " end)
wedding_names[table.getn(t)+1] = locale.confirm
local s = select_table(wedding_names)
if s != table.getn(wedding_names) then
marriage.join_wedding(t[s][1], t[s][2])
end
end
end
function check_divorce_time()
local DIVORCE_LIMIT_TIME = 86400
if is_test_server() then
DIVORCE_LIMIT_TIME = 60
end
if marriage.get_married_time() < DIVORCE_LIMIT_TIME then
say_title("Guardian of the village:")
say("The ink is not even dry yet!")
say("Give yourself more time.")
return false
end
return true
end
function is_equip_wedding_dress()
local a = pc.get_armor()
return a >= 11901 and a <= 11904
end
function get_wedding_dress(pc_job)
if 0==pc_job then
return 11901
elseif 1==pc_job then
return 11903
elseif 2==pc_job then
return 11902
elseif 3==pc_job then
return 11904
else
return 0;
end
end
end
end
Man kommt auf die Map aber kein NPC ist dort --> Heirat nicht möglich.
Derzeit arbeite ich an einer Daily-Quest. Das ist eine Quest die man alle 24 erledigen kann.
Mein Problem ist jetzt, dass wenn ich den Hauptmann anklicke und die Mission annehme, bei der Auswahlmöglichkeit "Auf gehts!", dass es einfach nicht weiter geht... Ich bekomme keine Schriftrolle, wo die ganzen Quests angezeigt werden und wenn ich den bestimmten Mob kille (1105) passiert rein gar nichts. Ich weiß nicht wo das Problem liegt..
quest dayjob2 begin
state start begin
when 20354.chat."Im Auftrag der Nation I" begin
local delay = 86400
if get_global_time() - pc.getqf("time1") < delay and pc.getqf("time1") != 0 then
local zeit = delay - (get_global_time() - pc.getqf("time1"))
say_title("Hauptmann:")
say("")
say("Heute hast du mir bereits geholfen.")
say("Komme morgen wieder. Ich werde für dich")
say("sicherlich eine Aufgabe finden.")
return
end
if pc.get_level() < 100 then
say_title("Hauptmann:")
say("")
say("Du bist nicht stark genug um diesen Auftrag")
say("zu meistern. Komm wieder, wenn du das Level 100")
say("erreicht hast.")
return
end
say_title("Hauptmann:")
say("")
say("Hallo Neuling,")
say("du hast die Möglichkeit mir jeden Tag etwas")
say("unter die Arme zu greifen. Für dich springt dabei")
say("natürlich auch was raus. In letzter Zeit verwüsten")
say("die Eismänner das Eisland und ich schaffe es nicht")
say("mehr allein sie aufzuhalten.")
say("Du musst dort für Ordnung sorgen und uns von dieser")
say("Plage befreien!")
say("")
say("Willst du mir dabei helfen?")
say("")
local s= select("Auf gehts!","Nein danke")
if s==1 then
say_title("Hauptmann:")
say("")
say("Nungut, reise ins Eisland und töte die Eismänner!")
say("")
say_reward("Töte 300 Eismänner.")
local mobs = number(150, 300)
pc.setqf("flamqmobs1",mobs)
setstate(killiceman)
else
say_title("Hauptmann:")
say("")
say("Schade, jedoch ist es deine Entscheidung.")
say("Auf Wiedersehen.")
end
end
end
state killiceman begin
when letter begin
send_letter("Befreie uns von dieser Plage!")
end
when info or button begin
local tokill = pc.getqf("flamqmobs1") - pc.getqf("flamq1")
say_title("Hauptmann:")
say("")
say("Töte "..tokill.." Eismänner und kehre")
say("dann zu mir zurück.")
end
when 1105.kill begin
pc.setqf("flamq1",pc.getqf("flamq1")+1)
if pc.getqf("flamq1")==pc.getqf("flamqmobs1") then
say_title("Hauptmann:")
say("")
say("Gut gemacht!")
say("Du hast die Plage etwas gemindert.")
say("Kehre zurück und überbringe diese Nachtricht.")
setstate(retoguid)
end
end
end
state retoguid begin
when letter begin
local v=find_npc_by_vnum(20354)
if v!=0 then
target.npc("__TARGET__", v, "Überbringe die gute Nachricht")
end
end
when info or button begin
say("Kehre zurück")
end
when __TARGET__.target.click or 20354.click begin
target.delete("__TARGET__")
say("Du hast alle Eismänner getötet?")
say("Hoffen wir mal, dass diese nicht so")
say("schnell wieder kommen.")
say("Vielen Dank!")
say("Als Belohnung erhälst du auch eine blaue")
say("Perle")
pc.setqf("flamqmobs1",0)
pc.setqf("flamq1",0)
pc.give_item2(27993)
pc.setqf("time1",get_global_time())
setstate(start)
end
end
end
dass in klammern gesetzte hab ich neu eingefügt und seit dem funktioniert es nicht..
ich wollte dass man das item nur unter level 110 benutzen kann..
wenn man 110 ist sollte die weiteren funktionen des items nicht gehen ..was ist falsch?
Guten Morgen,
vllt ist es einfach nur zu frueh, aber ich kommt nichtmehr weiter grade.
Folgendes,
ich hab mir eine Timer gebaut der in Minuten und Sekunden ablaeuft und im Client angezeigt wird.
Nun passiert ab einer Zahl unter 10 aber etwas unschoenes!
Zeit: 3:10 <-- so siehts bei ueber 10 aus
Zeit: 3:4 <-- bei unter 10
Zeit 3:04 <--- So will es es haben
Code:
PHP Code:
when time_left_1.timer begin if pc.getqf("time_s") ~= 0 then local min = (math.floor((pc.getqf("time_s")-get_time())/60)) local sec = (pc.getqf("time_s")-get_time())-(min* 60) local m_s = min..":"..sec cmdchat("Time "..m_s) end end
Probiert habe ich schon folgendes:
PHP Code:
when time_left_1.timer begin if pc.getqf("time_s") ~= 0 then local min = (math.floor((pc.getqf("time_s")-get_time())/60)) local sec = (pc.getqf("time_s")-get_time())-(min* 60) if sec < 10 then local m_s = min..":0"..sec else local m_s = min..":"..sec end cmdchat("Time "..m_s) end end
PHP Code:
when time_left_1.timer begin if pc.getqf("time_s") ~= 0 then local min = (math.floor((pc.getqf("time_s")-get_time())/60)) local sec = (pc.getqf("time_s")-get_time())-(min* 60) if string.len(tostring(sec)) == 1 then local m_s = min..":0"..sec else local m_s = min..":"..sec end cmdchat("Time "..m_s) end end
Hallo epvp Community
Ich brauche etwas Hilfe...
Ich möchte gern Restzeit von Sekunden auf Minuten. ohne oder mit nur 1-2stellen hinter dem komma
Ich habe bereits etwas gemacht, aber kann es nicht testen ob es funktioniert.
Nun ist die Frage, funktioniert das?
PHP Code:
when button or info begin local rest_time = pc.getqf("time", get_time()/60) local ceil_time = math.ceil("rest_time") say("Du musst noch") say("".." "..pc.getqf("kill_count").."/10 Metin der Eifersucht zerstören.") say("Dir bleiben noch ".." "..ceil_time.." Minuten.") end
quest banker begin
state start begin
when 20007.chat."Bank" begin
banker.bankdialog()
end
function bankdialog()
say_title("Banker:")
say("Ich biete dir die Möglichkeit, dein Yang")
say("Zinsenfrei aufzubewahren.")
say("Du kannst jedoch nur begrenzt einzahlen.")
say("Das Limit liegt jedoch bei weit über einer Billiarde :)")
say("")
local action = select("Yang einzahlen", "Yang auszahlen", "Abbrechen")
if action == 1 then
say_title("Banker:")
if pc.gold < 1 then
say("Du hast kein Yang.")
say("")
return
end
say("Du hast "..pc.gold.." Yang.")
say("Wieviel möchtest du davon einzahlen?")
local yang = tonumber(input())
if yang < 0 then
return
end
if yang > pc.gold then
yang = pc.gold
end
pc.changegold(-yang)
local saved_rest = tonumber(pc.getqf("saved_rest"))
local saved_signed_longs = tonumber(pc.getqf("saved_signed_longs"))
if saved_rest + yang > 2147483647 then
pc.setqf("saved_signed_longs", saved_signed_longs + 1)
pc.setqf("saved_rest", saved_rest + yang - 2147483647)
else
pc.setqf("saved_rest", saved_rest + yang)
end
say_title("Banker:")
say("Es wurden "..yang.." Yang eingezahlt.")
say("")
return
elseif action == 2 then
local saved_rest = tonumber(pc.getqf("saved_rest"))
local saved_signed_longs = tonumber(pc.getqf("saved_signed_longs"))
local saved_yang = saved_signed_longs*2147483647+saved_rest
say_title("Banker:")
if saved_yang < 1 then
say("Ich habe kein Geld mehr von dir.")
say("")
return
end
say("Ich kann dir das Geld, das du eingezahlt hast,")
say("nun wieder auszahlen.")
say("")
say_reward("Kontostand: "..saved_yang.." Yang")
say("")
say("Wieviel Yang möchtest du ausgezahlt bekommen?")
local yang = tonumber(input())
if yang < 0 then
return
end
if yang > saved_yang then
yang = saved_yang
end
if pc.gold + yang > 1899999999 then
yang = 1899999999 - pc.gold
end
if yang > saved_yang then
yang = saved_yang
end
if saved_rest - yang < 0 then
pc.setqf("saved_signed_longs", saved_signed_longs - 1)
pc.setqf("saved_rest", 2147483647 - yang + saved_rest)
else
pc.setqf("saved_rest", saved_rest - yang)
end
pc.changegold(yang)
say_title("Banker:")
say("Es wurden "..yang.." Yang ausgezahlt.")
say("")
end
end
end
end
Es funktioniert garnichts..
Das Problem liegt wahrscheinlich laut putty an banker.bankdialog .. ?
Huhu bei mir funktioniert es leider nicht,wenn ich auf npc klicken kommt die quest.dann fragt er mich ob ich auf einem ein kopfgeld ausetzen möchte,sobald ich OK klicken schließt sich die quest =(
(keine fehler meldung)
quest kopfgeld begin
state start begin
when 33003.chat."Kopfgeld auf jemand aussetzen" begin
say_title("Kopfgeld aussetzen")
say("")
say("Hallo "..pc.get_name().."")
say("Hier kannst du Kopfgeld auf eine Person aussetzen.")
say_gold("WICHTIG: Du kannst kein Kopfgeld an Leute aussetzen die unter Level 45 sind.")
say("Willst du ein Kopfgeld aussetzen?")
local c = select ("Ja", "Nein")
if c == 2 then
return
elseif c == 1 then
say("Auf wen willst du das Kopfgeld aussetzen?")
say_reward("Gebe den Namen der Person an!")
local opfer = input()
local kls = mysql_query("SELECT level from player.player WHERE name = '"..opfer.."' LIMIT 1")
local jsan = tonumber(kls.level[1])
if jsan < 45 then
say(""..opfer.." ist unter Level 45.")
return
end
if opfer == "" then
say("Du musst einen Namen eingeben.")
return
end
say("Wieviel Kopfgeld willst du auf "..opfer.." setzen?")
say_reward("Gebe deine Geldsumme an!")
local geld = tonumber(input())
say("Du willst also "..geld.." Yang auf "..opfer.." setzen?")
local frage = select ("Ja", "Nein")
if frage == 2 then
return
end
if tonumber(geld) > pc.get_gold() then
say("Soviel Geld hast du nicht!")
return
end
if frage == 1 then
local eins = 1
local pp = mysql_query("SELECT kg_geld from player.player WHERE name = '"..opfer.."' LIMIT 1")
local pps = mysql_query("UPDATE player.player SET kg_geld = '"..pp.kg_geld[1]+geld.."' WHERE name = '"..opfer.."' LIMIT 1")
local aa = mysql_query("SELECT kg_name from player.player WHERE name = '"..opfer.."' LIMIT 1")
local aas = mysql_query("UPDATE player.player SET kg_name = '"..eins.."' WHERE name = '"..opfer.."' LIMIT 1")
pc.change_money(-geld)
game.set_event_flag(""..opfer.."kg", 1)
say("Du hast auf "..opfer.." "..geld.." Yang gesetzt!")
end
end
end
when 33003.chat."Die 15 größten Kopfgelder" begin
uiname = pc.get_name()
local eins = 1
local us = mysql_query("SELECT name, kg_geld from player.player WHERE kg_name = '"..eins.."' order by kg_geld desc, kg_name desc, name asc LIMIT 15")
say("Rang - Name - Kopfgeld")
table.foreachi(us,function(i,l)
say(i.." - "..l[1].." - "..l[2])
end)
end
when kill with npc.is_pc() begin
local vid = npc.get_vid()
local old_pc = pc.select(vid)
if old_pc != 0 then
local name = pc.get_name()
pc.select(old_pc)
if game.get_event_flag(""..name.."kg") == 1 then
local pi = mysql_query("SELECT ip from player.player WHERE name = '"..name.."' LIMIT 1")
local pis = mysql_query("SELECT ip from player.player WHERE name = '"..pc.get_name().."' LIMIT 1")
if pi.ip[1] == pis.ip[1] then
chat("Bugusing erkannt!")
return
end
local u = mysql_query("SELECT kg_geld from player.player WHERE name = '"..name.."' LIMIT 1")
chat("Du hast "..name.." getötet, auf ihn ist ein Kopfgeld von "..u.kg_geld[1].." ausgesetzt!")
chat("Du erhäst nun "..u.kg_geld[1].." Yang.")
local gelds = u.kg_geld[1]
pc.change_gold(gelds)
game.set_event_flag(""..name.."kg", 0)
local null = 0
local eins = 1
local pu = mysql_query("UPDATE player.player SET kg_geld = '"..null.."' WHERE name = '"..name.."' LIMIT 1")
local us = mysql_query("UPDATE player.player SET kg_name = '"..null.."' WHERE name = '"..name.."' LIMIT 1")
end
end
end
end
end
state start begin when login or levelup with pc.get_level() == 1 begin set_state( gotoinfomation ) end end state gotoinfomation begin when letter begin send_letter("Wilkommen bei ParallelWorldMT2") end when button or info begin say_title("Wilkommen bei ParallelWorldMT2")
say("Auf ParallelWorldMT2 erwartet dich ein") say("einzigartiges Spielerlebnis.") say("") say("Zögere nicht ein Teammitglied zu fragen") say("wenn du Probleme oder Anmerkungen hast.") say("") say("Das ParallelWorldMT2 - Team wünscht") say("dir viel Spaß und gutes Gelingen!") say("") say("") say("") pc.give_item2(27001, 100) pc.give_item2(27004, 50) pc.give_item2(27110, 10) pc.give_item2(27113, 10) if pc . job == 0 then pc.give_item2(16, 1) say_reward ( "Du erhielst deine Anfängerwaffe, ein Schwert + 6" ) say_reward ( "Viel Spaß damit !" ) elseif pc . job == 1 then pc.give_item2(1006, 1) say_reward ( "Du erhielst deine Anfängerwaffe, einen Dolch + 6" ) say_reward ( "Viel Spaß damit !" ) elseif pc . job == 2 then pc.give_item2(16, 1) say_reward ( "Du erhielst deine Anfängerwaffe, ein Schwert + 6" ) say_reward ( "Viel Spaß damit !" ) elseif pc . job == 3 then pc.give_item2(7006, 1) say_reward ( "Du erhielst deine Anfängerwaffe, einen Fächer + 6" ) say_reward ( "Viel Spaß damit !" ) end end end end
unser Server schmiert ab wenn wir die Quest einfügen
Code:
quest oxgewinnitem begin
state start begin
when 3.use begin
say_title("OX Gewinnitem")
say("Herzichen Glückwunsch")..pc.get_name()
say("Du hast es durch Mut und Tapferkeit bis hier geschafft.")
say("Nun ist es Zeit für eine Belohnung!")
say("Du hast die Auswahl zwischen einer Waffe, einer Rüstung oder einem Uppitem")
say("Wähle klug...")
say("Dein Lavanda2-Team")
say("")
local gewinnauswahl = select("Waffe","Rüstung","Uppitem","Abbrechen")
if gewinnauswahl == 4 then
return
end
if gewinnauswahl == 3 then
say_title("Uppitem")
say("Du hast dich für ein Uppitem entschieden!")
say("Wähle aus der Liste dein Item:")
say("")
local uppitem = select("5 x Gegenangriffsstrategie","2 x Blaue Münze","5 x Schwarze Perle","Abbrechen")
if uppitem == 4 then
return
end
if uppitem == 3 then
pc.give_item2(98705,5)
pc.remove_item(3)
end
if uppitem == 2 then
pc.give_item2(30229,2)
pc.remove_item(3)
end
if uppitem == 1 then
pc.give_item2(70031,5)
pc.remove_item(3)
end
end
if gewinnauswahl == 2 then
say_title("Rüstung")
say("Du hast dich für eine Rüstung entschieden!")
say("Wähle die gewünschte Rüstung aus der Liste aus:")
say("")
local ruestung = select("Schwarzstahl-Panzer+9","Schwarzwindanzug+9","Magie-Plattenpanzer+9","Schwarze Kleidung+9","Abbrechen")
if ruestung == 5 then
return
end
if ruestung == 1 then
pc.give_item2(11299,1)
pc.remove_item(3)
end
if ruestung == 2 then
pc.give_item2(11499,1)
pc.remove_item(3)
end
if ruestung == 3 then
pc.give_item2(11619,1)
pc.remove_item(3)
end
if ruestung == 4 then
pc.give_item2(11899,1)
pc.remove_item(3)
end
end
if gewinnauswahl == 1 then
say_title("Waffe")
say("Du hast dich für eine Waffe entschieden!")
say("Wähle die gewünschte Waffe aus der Liste aus:")
say("")
local waffe = select("Bogen des Schmerzes+0","Giftgrüne Messer+0","Gravitation+0","Gladiatus+0","Hitzeklinge+0","Abbrechen")
if waffe == 1 then
pc.give_item2(2530,1)
pc.remove_item(3)
end
if waffe == 2 then
pc.give_item2(2550,1)
pc.remove_item(3)
end
if waffe == 3 then
pc.give_item2(2580,1)
pc.remove_item(3)
end
if waffe == 4 then
pc.give_item2(2590,1)
pc.remove_item(3)
end
if waffe == 5 then
pc.give_item2(2680,1)
pc.remove_item(3)
end
if waffe == 6 then
return
end
end
end
end
end