|
You last visited: Today at 19:53
Advertisement
[SERVICE] Die Questkontrolle
Discussion on [SERVICE] Die Questkontrolle within the Metin2 Private Server forum part of the Metin2 category.
10/14/2011, 22:47
|
#3751
|
elite*gold: 0
Join Date: Sep 2010
Posts: 427
Received Thanks: 105
|
1quest:
PHP Code:
quest lvl100 begin
state start begin
when levelup with pc.level >= 100 begin
notice_all("".. pc.get_name() .." hat gerade das")
notice_all("Level 100 erreicht!")
notice_all("")
notice_all("Weiter so!")
set_state(lvl120)
end
end
state lvl120 begin
when levelup with pc.level >= 120 begin
notice_all("".. pc.get_name() .." hat gerade das")
notice_all("Level 120 erreicht!")
notice_all("")
notice_all("Weiter so!")
set_sate(lvl135)
end
end
state lvl135 begin
when levelup with pc.level >= 135 begin
notice_all("".. pc.get_name() .." hat gerade das")
notice_all("Level 135 erreicht!")
notice_all("")
notice_all("Weiter so!")
set_state(lvl150)
end
end
state lvl150 begin
when levelup with pc.level >= 150 begin
notice_all("".. pc.get_name() .." hat gerade das")
notice_all("Level 150 erreicht!")
notice_all("")
notice_all("Herzlichen Glückwunsch!")
notice_all("Gratuliert ihm!")
end
end
end
2quest:
PHP Code:
quest map1 begin
state start begin
when login or levelup with pc.get_level()>=50 begin
set_state(farmmaplow)
end
end
state farmmaplow begin
when 9013.chat."Farmmap Low(ab 50)" begin
say_title("Farmmap Low")
say_green("Möchtest du zur Farm map Low ?")
say_green("auf der Map findest du metins bis")
say_green("level 90 zum Farmen deiner Items.")
local main_set = select("Ja", "Nein")
if main_set == 2 then
return
end
if main_set == 1 then
say("Gut, ich bringe dich umgehend hin!")
wait()
pc.warp(90000, 10000)
end
set_state(farmh)
end
end
end
end
state farmh begin
when login or levelup with pc.get_level()>=95 begin
set_state(farmmaphigh)
end
end
state farmmaphigh begin
when 9013.chat."Farmmap High(ab 95)" begin
say_title("Farmmap High")
say_green("Möchtest du zur Farm map High ?")
say_green("auf der Map findest du metins bis")
say_green("level 150 oder Höher zum Farmen deiner Items.")
local main_set = select("Ja", "Nein")
if main_set == 2 then
return
end
if main_set == 1 then
say("Gut, ich bringe dich umgehend hin!")
wait()
pc.warp(1599900, 1599900)
end
set_state(tald)
end
end
end
end
state tald begin
when login or levelup with pc.get_level()>=115 begin
set_state(taldz)
end
end
state taldz begin
when 9013.chat."Tal der Zombies(ab 115)" begin
say_title("Tal der Zombies")
say_green("Möchtest du ins Tal der Zombies ?")
say_green("auf der Map findest du Zombies im")
say_green("level 120 oder Höher zum Leveln.")
local main_set = select("Ja", "Nein")
if main_set == 2 then
return
end
if main_set == 1 then
say("Gut, ich bringe dich umgehend hin!")
wait()
pc.warp(999700, 999700)
end
end
end
end
|
|
|
10/14/2011, 23:19
|
#3752
|
elite*gold: 15
Join Date: Sep 2010
Posts: 844
Received Thanks: 975
|
1.
PHP Code:
quest lvl100 begin state start begin when login or levelup with pc.level >= 100 and pc.getqf("level_eins") == 0 begin notice_all("".. pc.get_name() .." hat gerade das") notice_all("Level 100 erreicht!") notice_all("") notice_all("Weiter so!") pc.setqf("level_eins", 1) end
when login or levelup with pc.level >= 120 and pc.getqf("level_zwei") == 0 begin notice_all("".. pc.get_name() .." hat gerade das") notice_all("Level 120 erreicht!") notice_all("") notice_all("Weiter so!") pc.setqf("level_zwei", 1) end when login or levelup with pc.level >= 135 and pc.getqf("level_drei") == 0 begin notice_all("".. pc.get_name() .." hat gerade das") notice_all("Level 135 erreicht!") notice_all("") notice_all("Weiter so!") pc.setqf("level_drei", 1) end when login or levelup with pc.level >= 150 and pc.getqf("level_max") == 0 begin notice_all("".. pc.get_name() .." hat gerade das") notice_all("Level 150 erreicht!") notice_all("") notice_all("Herzlichen Glückwunsch!") notice_all("Gratuliert ihm!") pc.setqf("level_max", 1) end end end
andere später mal gucken bin essen
|
|
|
10/16/2011, 00:38
|
#3753
|
elite*gold: 4
Join Date: Feb 2011
Posts: 1,878
Received Thanks: 1,350
|
Habe leider ein kleines Problem mit meiner Quest >.<
Ich möchte dass die Notiz des Weisen als "Teleporter" funktioniert und die Spieler in eine bestimmte Kammer portet .. Die Kammer ist vollständig entbuggt, und für alle Spieler erreichbar, denke also dass ich einen Fehler drinne habe ..
Hoffe auf eure Hilfe ^^
Hier der Quest
quest tele begin
state start begin
when 70029.use begin
say_title("Der Weg zum Wasserstein")
say("Aaah, die Notiz der Weisen...")
say("Lass ihn mich begutachten...")
say("Dieser geheimnisvolle Stein wird")
say("dich in eine Kammer voller Gefahren führen")
say_reward("Willst du wirklich dorthin?")
local s = select("Ja", "Nein")
if 1 == s then
pc.warp(121,170)
else
return
end
end
end
end
|
|
|
10/16/2011, 02:56
|
#3754
|
elite*gold: 0
Join Date: Sep 2010
Posts: 427
Received Thanks: 105
|
du hast falsche kords
|
|
|
10/16/2011, 11:01
|
#3755
|
elite*gold: 0
Join Date: Oct 2011
Posts: 106
Received Thanks: 56
|
Hilfe  Immer wenn ich die Quest einfügen will kommt in PuTTy :
Quote:
expecting 'when' or 'function'
hunde.quest:30:Abort trap (core dumped)
Error occured on compile hunde.quest
|
Die Quest sieht so aus :
PHP Code:
quest hunde begin
state start begin
when 20087.chat."Teleportieren" begin
say_title("Teleportieren")
say("")
say("Ist das nicht ein schöner Ort hier?")
say("Doch irgendwie ist es hier langweilig")
say("und trostlos. Doch zum erholen ist dies")
say("ein prima Ort. Wenn du diesen Ort jedoch")
say("verlassen willst, kann ich dich hier fort")
say("bringen.")
say_reward("Willst du dich Teleportieren?")
local s = select("Ja","Nein")
if s == 5 then
return
end
if s == 1 then
say_title("Teleportieren")
say("")
say_reward("Wo soll es hingehen?")
local s = select("Grotte-1","Farmmap","90iger Map","Abbrechen")
if s == 1 then
return
end
if s == 2 then
pc.warp(0, 1203200)
end
end
end
if s == 3 then
pc.warp(0, 0)
end
end
if s == 4 then
if pc.level >= 90 then
pc.warp(153600, 1203200)
else
chat("Du bist noch nicht bereit für diese Map. Komm wieder")
chat("wenn du das Level 90 erreicht hast!")
end
end
if s == 9 then
pc.warp(921600, 153600)
end
end
end
end
end
|
|
|
10/16/2011, 11:36
|
#3756
|
elite*gold: 0
Join Date: Sep 2009
Posts: 154
Received Thanks: 8
|
Das übliche halt..
Hab mir das auch mit Fehlerscreen aus Vpc angeschaut, aber werde einfach nicht schlau daraus...
PHP Code:
quest GM_File2 begin state start begin when 30181.use with pc.is_gm() begin say_title("GM-Tool:") say("") say("Oh Hallo, GameMaster!") say("Möchtest du die GM Rechte aktualiseren?") say("Oder willst du doch eher etwas ankündigen?") say_title("Bitte Funktion Wählen") local s = select("GM Rechte Aktualiseren", "Eventmanagement", "Support anbieten", "Tag / Nacht", "Weiter") if s == 1 then command("reload a") elseif s == 2 then say_title("GM-Tool:") say("") say("Willkommen im Eventmanagement!") say("Wähle das zustartende oder zubeendende Event:") local wup = select("Weihnachtsevent", "Abbrechen") if wup == 1 then say_title("GM-Tool:") say("") say("Möchtest du das Event starten oder beenden?") local xmas = select("Starten", "Beenden") if xmas == 1 then command("e xmas_tree 1") command("e xmas_song 1") command("e xmas_boom 1") command("e xmas_snow 1") notice_all("Das Weihnachtsevent wurde gestartet!") say_title("GM-Tool:") say("") say("Du hast das Weihnachtsevent gestartet.") elseif xmas == 2 then command("e xmas_tree 0") command("e xmas_song 0") command("e xmas_boom 0") command("e xmas_snow 0") notice_all("Das Weihnachtsevent wurde beendet!") say_title("GM-Tool:") say("") say("Du hast das Weihnachtsevent beendet.") elseif wup == 2 then return end elseif s == 3 then say_title("GM-Tool:") say("") say("Willkommen im Supportfenster!") say("Möchtest du dich Anmelden, oder verabschieden?") local o = select("Anmelden", "Verabschieden", "Abbrechen") if o == 1 then say_title("GM-Tool:") say("") say("Du hast dich angemeldet.") command ("n "..pc.get_name() .." steht euch für Fragen und Probleme zur Verfügung!") elseif o == 2 then say_title("GM-Tool:") say("") say("Du hast dich abgemeldet.") say("Schönen Tag noch!") command ("n "..pc.get_name() .." meldet sich nun ab und wünscht weiterhin viel Spaß!") elseif o == 3 then return end elseif s == 4 then say_title("GM-Tool:") say("") say("Du möchtest also zwischen Tag und") say("Nacht wechseln ?") local f = select ("Tag" , "Nacht", "Abbrechen") if f == 1 then command("x 0") elseif f == 2 then command ("x 1") elseif f == 3 then return end elseif s == 5 then say_title("GM-Tool:") say("") say_title("Bitte Funktion wählen") local m = select ("Reboot Ankündigen", "Rates einstellen", "Schließen") if m == 1 then notice_all("Wir werden einen Reboot durchführen, bitte ausloggen!") timer("wiederholen", 5) elseif m == 2 then say_title("GM-Tool:") say("") say("Welche Rates willst du erhöhen / heruntersetzen?") local s = select("Exp-Rates", "Yang-Rates", "Drop-Rate", "Yangbomben", "Abbrechen") if s == 1 then say_title("GM-Tool:") say("") say("Alles klar. Dann gib die Exp-Rate Höhe hier ein:") local zahl = tonumber(input()) if zahl <= 0 then say_title("GM-Tool:") say("") say("Die Zahl ist zu niedrig!") return else say_title("GM-Tool:") say("") say("Willst du die Exp-Rate wirklich auf "..zahl.." % erhöhen?") local w = select("Ja", "Nein") if w == 1 then command("priv 0 4 "..zahl.." 699") else say_title("GM-Tool:") say("") say("Dann nicht.") return end end elseif s == 2 then say_title("GM-Tool:") say("") say("Alles klar. Dann gib die Yang-Rate Höhe hier ein :") local nummer = tonumber(input()) if nummer <= 0 then say_title("GM-Tool:") say("") say("Die Zahl ist zu niedrig!") return else say_title("GM-Tool:") say("") say("Willst du die Yang-Rate wirklich auf "..nummer.." % erhöhen?") local c = select("Ja", "Nein") if c == 1 then command("priv 0 2 "..nummer.." 699") else say_title("GM-Tool:") say("") say("Dann nicht.") return end end elseif s == 3 then say_title("GM-Tool:") say("") say("Alles klar. Dann gib die Drop-Rate Höhe hier ein :") local number = tonumber(input()) if number <= 0 then say("Die Zahl ist zu niedrig!") return else say_title("GM-Tool:") say("") say("Willst du die Drop-Rate wirklich auf "..number.." % erhöhen?") local k = select("Ja", "Nein") if k == 1 then command("priv 0 1 "..number.." 699") else say_title("GM-Tool:") say("") say("Dann nicht.") return end end elseif s == 4 then say_title("GM-Tool:") say("") say("Alles klar. Dann gib die Yangbomben-Rate Höhe hier ein :") local nummber = tonumber(input()) if nummber <= 0 then say_title("GM-Tool:") say("") say("Die Zahl ist zu niedrig!") return else say_title("GM-Tool:") say("") say("Willst du die Yangbomben-Rate wirklich auf "..nummber.." % erhöhen?") local l = select("Ja", "Nein") if l == 1 then command("priv 0 3 "..nummber.." 699") else say_title("GM-Tool:") say("") say("Dann nicht.") return end end end elseif m == 3 then return end end end when wiederholen.timer begin notice_all("Wir werden einen Reboot durchführen, bitte ausloggen!") timer("wiederholen1", 5) end when wiederholen1.timer begin notice_all("Wir werden einen Reboot durchführen, bitte ausloggen!") timer("wiederholen", 5) end end end
@ToBeUnleashed
Habs mir mal angeschaut, habs auf meinem Server getestet - sollte also funktionieren;
PHP Code:
quest Notiz begin state start begin when 70029.use begin say_title("Der Weg zum Wasserstein") say("") say("Aaah, die Notiz der Weisen...") say("Lass ihn mich begutachten...") say("") say("Dieser geheimnisvolle Stein wird") say("dich in eine Kammer voller Gefahren führen") say("") say_reward("Willst du wirklich dorthin?") local s = select("Ja", "Nein") if s == 1 then say_title("Der Weg zum Wasserstein") say("") say("Ich werde dich jetzt teleportieren.") say("Viel Glück, du wirst es brauchen!") wait() pc.warp(999900 ,999900) elseif s == 2 then say_title("Der Weg zum Wasserstein") say("") say("Das wird wohl besser sein,") say("wenn du nicht dort hin gehst.") say("") return end end end end
@.Destores
PHP Code:
quest hunde begin state start begin when 20087.chat."Teleportieren" begin say_title("Teleportieren") say("") say("Ist das nicht ein schöner Ort hier?") say("Doch irgendwie ist es hier langweilig") say("und trostlos. Doch zum erholen ist dies") say("ein prima Ort. Wenn du diesen Ort jedoch") say("verlassen willst, kann ich dich hier fort") say("bringen.") say_reward("Willst du dich Teleportieren?") local s = select("Ja","Nein") if s == 1 then say_title("Teleportieren") say("") say_reward("Wo soll es hingehen?") local b = select("Grotte-1","Farmmap","90iger Map","Abbrechen") if b == 1 then pc.warp(0, 1203200) elseif b == 2 then pc.warp(153600, 1203200) elseif b == 3 then if pc.level >= 90 then pc.warp(921600, 153600) else say("Du bist noch nicht bereit für diese Map. Komm wieder") say("wenn du das Level 90 erreicht hast!") end elseif b == 4 then say_title("Teleportieren") say("") say("Dann nicht") end elseif s == 2 then say_title("Teleportieren") say("") say("Dann bleib erstmal hier.") end end end end
Habs nur kurz überflogen, aber sollte funktionieren
|
|
|
10/16/2011, 15:46
|
#3757
|
elite*gold: 0
Join Date: May 2011
Posts: 385
Received Thanks: 260
|
Quote:
Originally Posted by .Detores
Hilfe  Immer wenn ich die Quest einfügen will kommt in PuTTy :
Die Quest sieht so aus :
PHP Code:
quest hunde begin
state start begin
when 20087.chat."Teleportieren" begin
say_title("Teleportieren")
say("")
say("Ist das nicht ein schöner Ort hier?")
say("Doch irgendwie ist es hier langweilig")
say("und trostlos. Doch zum erholen ist dies")
say("ein prima Ort. Wenn du diesen Ort jedoch")
say("verlassen willst, kann ich dich hier fort")
say("bringen.")
say_reward("Willst du dich Teleportieren?")
local s = select("Ja","Nein")
if s == 5 then
return
end
if s == 1 then
say_title("Teleportieren")
say("")
say_reward("Wo soll es hingehen?")
local s = select("Grotte-1","Farmmap","90iger Map","Abbrechen")
if s == 1 then
return
end
if s == 2 then
pc.warp(0, 1203200)
end
end
end
if s == 3 then
pc.warp(0, 0)
end
end
if s == 4 then
if pc.level >= 90 then
pc.warp(153600, 1203200)
else
chat("Du bist noch nicht bereit für diese Map. Komm wieder")
chat("wenn du das Level 90 erreicht hast!")
end
end
if s == 9 then
pc.warp(921600, 153600)
end
end
end
end
end
|
Öffne die quest mal mit n++ und schau mal in der zeile 30 obda ein fehler ist
|
|
|
10/16/2011, 16:35
|
#3758
|
elite*gold: 0
Join Date: Mar 2010
Posts: 1,086
Received Thanks: 557
|
Bitte um Hilfe
PHP Code:
quest collektion_9 begin
state start begin
when login or levelup with pc.get_level() >= 92 begin
set_state(information)
end
end
state information begin
when letter begin
local v = find_npc_by_vnum(20091)
if v != 0 then
target.vid("__TARGET__", v, "Seon-Pyeong")
end
send_letter("Seon-Pyeongs Forschung 1")
end
when button or info begin
say_title("Seon-Pyeongs Forschung 1")
say("Seon-Pyeong, ein überall anerkannter")
say("Sura Meister der alten Künste, bat um")
say("deine Hilfe. Du solltest wissen, dass")
say("Seon-Pyeong schon vor dieser Generation")
say("mächtige Krieger um Hilfe bat. Das soll")
say("also schon was heißen.")
end
when __TARGET__.target.click or
20091.chat."Seon-Pyeongs Forschung 1" begin
target.delete("__TARGET__")
say_title(mob_name(20091))
say("Hallo " ..pc.get_name().. ", es ist schön")
say("das ich dich endlich mal näher kennen lerne.")
say("Ich habe viel von dir und deinen Taten gehört.")
say("Du scheinst bereits weit gekommen zu sein. Nun,")
say("ich biete dir ein Angebot an, das dir bestimmt")
say("sehr gefallen wird. Kennst du Juwel der Missgunst?")
say("Nein? Hätte mich gewundert wenn doch. Sie sind")
say("enorm selten und verflucht schwer zu bekommen.")
say("Sie enthalten mächtige Extrakte die viele neue")
say("Möglichkeiten bieten. Bisher weiß nur ich wie")
say("man die Extrakte aus den Juwelen gewinnt. Es")
say("genügt nur ein Juwel um deine Lebenserwartung")
say("zu verdoppeln oder deine Kräfte stark zu")
say("verbessern.")
wait()
say_title(mob_name(20091))
say("Ich wäre bereit, dir solch ein Extrakt")
say("anzufertigen, wenn du mir 10 Juwelen der")
say("Missgunst lieferst. Diese Juwelen bekommt man")
say("nur von den Teuflichen Eiskreaturen in den")
say("tiefen Ebenen der Grotte der Verbannung.")
say("Allerdings ist dies nicht alles. Das Extrakt")
say("aus den Juwelen zugewinnen ist nicht einfach...")
say("Keine Angst! - Es wird schon nicht fehlschlagen.")
say("Ich bin nicht so ein Anfänger, wie der Biologe")
say("Chaegirab. Allerdings benötige ich zwei Stunden")
say("um aus einem Juwel das Extrakt zu entnehmen.")
say("Daher bitte ich dich, mir die Juwelen alle")
say("einzeln zu bringen. Nun geh und besorge mir")
say("diese Juwelen.")
set_state(go_to_disciple)
pc.setqf("duration",0)
pc.setqf("collect_count",0)
pc.setqf("drink_drug",0)
end
end
state go_to_disciple begin
when letter begin
send_letter("Seon-Pyeongs Forschung - Juwelen der Missgunst")
end
when button or info begin
say_title("Die dunklen tiefen Ebenen der Grotte der Verbannung")
say("Seon-Pyeong, ein Weiser Surameister, schlug dir")
say("vor, für ihn 10 Juwelen der Missgünste zu sammeln")
say("um das Extrakt daraus zu gewinnen was nahezu")
say("grenzenlose Kräfte verbirgt und dir anschließend")
say("eines der Extrakte überlässt. Diese Juwelen der")
say("Missgunst findet man ausschließlich bei den")
say("Teuflischen Eiskreaturen in den tiefen Ebenen der")
say("Grotte der Verbannung. Sei vorsichtig,")
say("wenn du dort hingehst.")
say_item_vnum(30251)
say_reward("Bislang wurden ".." "..pc.getqf("collect_count").." Juwelen von dir abgegeben.")
end
when 1131.kill or
1132.kill or
1133.kill or
1134.kill or
1135.kill or
1136.kill or
1137.kill begin
local s = number(1, 150)
if s <= 1 and pc.count_item(30251) == 0 then
game.drop_item_with_ownership(30251)
end
end
when 20091.chat."Juwel der Missgunst" with pc.count_item(30251) >0 begin
if get_time() > pc.getqf("duration") then
say_title(mob_name(20091))
say("Ich habe bereits alle Vorbereitungen")
say("zur Extraktion vorgenommen. Übergebe")
say("mir nun den Juwel der Missgunst und")
say("ich beginne sofort mit der Arbeit.")
pc.remove_item(30251, 1)
if is_test_server() then
pc.setqf("duration",get_time()+2)
else
pc.setqf("duration",get_time()+60*60*0)
end
wait()
if pc.getqf("collect_count") < 9 then
local index =pc.getqf("collect_count") +1
pc.setqf("collect_count",index)
say_title(mob_name(20091))
say("Die Extraktion wird einige Zeit in Anspruch")
say("nehmen. Bitte erscheine mit einem neuen Juwel")
say("in genau zwei Stunden, bisdahin bin ich bestimmt")
say("fertig. Falls nicht, warte einige Minuten.")
say("Derzeit musst mir noch ".." "..10-pc.getqf("collect_count").. " weitere")
say("Juwele der Missgunst liefern.")
else
say_title(mob_name(20091))
say("Hervorragende Arbeit " ..pc.get_name().. ", ")
say("ich habe bereits für dich ein Extrakt fertig")
say("gestellt. Es fehlt noch eine spezielle Zutat")
say("die du selbst dir aussuchen sollst. Doch")
say("wähle klug! Diese Aktion ist nicht rückgängig")
say("zu machen und bleibt Permanent vorhanden.")
pc.setqf("collect_count", 0)
local s = select("+1000 Trefferpunkte","+100 Verteidigung","+50 Angriffspunkte")
if 1== s then
affect.add_collect(apply.MAX_HP, 1000, 60*60*24*365*60)
chat("Deine TP wurde um 1.000 Permanent verbessert.")
elseif 2== s then
affect.add_collect(apply.DEF_GRADE_BONUS, 100, 60*60*24*365*60)
chat("Deine Verteidigung wurde um 100 Permanent verbessert.")
elseif 3== s then
affect.add_collect(apply.ATT_GRADE_BONUS, 50, 60*60*24*365*60)
chat("Deine Angriffspunkte wurden um 50 Permanent verbessert.")
end
end
pc.setqf("collect_count",0)
pc.setqf("drink_drug",0)
pc.setqf("duration",0)
clear_letter()
set_quest_state("collektion_10", "run")
set_state(__COMPLETE__)
else
say_title(mob_name(20091))
say("Es ist toll das du einen weiteren Juwel")
say("der Missgunst gefunden hast, aber ich bin")
say("mit der Extraktion des letzten Juwel noch")
say("nicht fertig. Bitte gedulde dich noch einen")
say("Augenblick.")
end
end
end
state __COMPLETE__ begin
end
end
PHP Code:
quest collektion_10 begin
state start begin
end
state run begin
when login or levelup with pc.get_level() >= 94 begin
set_state(information)
end
end
state information begin
when letter begin
local v = find_npc_by_vnum(20091)
if v != 0 then
target.vid("__TARGET__", v, "Seon-Pyeong")
end
send_letter("Seon-Pyeongs Forschung 2")
end
when button or info begin
say_title("Seon-Pyeongs Forschung 2")
say("Seon-Pyeong, ein überall anerkannter")
say("Sura Meister der alten Künste, bat erneut um")
say("deine Hilfe.")
end
when __TARGET__.target.click or
20091.chat."Seon-Pyeongs Forschung 2" begin
target.delete("__TARGET__")
say_title(mob_name(20091))
say("Hallo " ..pc.get_name().. ", ich habe")
say("eine weitere Aufgabe für dich. Ich habe")
say("von einem neuem Juwel gehört. Sein Name")
say("soll angeblich Juwel der Weissheit sein.")
say("Ich möchte unbedingt diesen Juwel mir")
say("näher ansehen. Wohlmöglich enthält er die")
say("selben Kräfte, aber in verstärkter Form.")
say("Sie sollen angeblich von den Setaou-Soldaten")
say("bewacht werden. Bringe mir bitte 20 Juwele")
say("der Weissheit. Da sie noch relativ neu für")
say("mich sein werden, werde ich für die Unter-")
say("suchung einen ganzen Tag benötigen. Bringe")
say("sie mir bitte alle einzeln.")
set_state(go_to_disciple)
pc.setqf("duration",0)
pc.setqf("collect_count",0)
pc.setqf("drink_drug",0)
end
end
state go_to_disciple begin
when letter begin
send_letter("Seon-Pyeongs Forschung - Juwelen der Weissheit")
end
when button or info begin
say_title("Die neuste Entdeckung")
say("Seon-Pyeong hörte von einem neuem Juwel, sein Name")
say("lautet Juwel der Weissheit. Die Setaou-Soldaten")
say("sollen sie angeblich bewachen und beschützen.")
say("Besorge dem großen Surameister 20 dieser Juwele.")
say("Du findest die Setaou-Soldaten in der Grotte der")
say("Verbannung 1 & 2.")
say_item_vnum(30252)
say_reward("Bislang wurden ".." "..pc.getqf("collect_count").." Juwelen von dir abgegeben.")
end
when 2401.kill or
2402.kill or
2403.kill or
2404.kill or
2411.kill or
2412.kill or
2413.kill begin
local s = number(1, 80)
if s <= 1 and pc.count_item(30252) == 0 then
game.drop_item_with_ownership(30252)
end
end
when 20091.chat."Juwel der Weissheit" with pc.count_item(30252) >0 begin
if get_time() > pc.getqf("duration") then
say_title(mob_name(20091))
say("Ich habe bereits alle Vorbereitungen")
say("zur Untersuchung des Juweles vorgenommen.")
say("Gebe mir nun den Juwel der Weissheit und")
say("ich beginne sofort mit der Arbeit.")
pc.remove_item(30252, 1)
if is_test_server() then
pc.setqf("duration",get_time()+2)
else
pc.setqf("duration",get_time()+60*60*23)
end
wait()
local pass_percent
if pc.getqf("drink_drug")==0 then
pass_percent= 50
else
pass_percent= 50
end
local s= number(1,100)
if s<= pass_percent then
if pc.getqf("collect_count")< 19 then
local index =pc.getqf("collect_count")+1
pc.setqf("collect_count",index)
say_title(mob_name(20091))
say("Das sieht sehr interessant aus. Die Untersuchung")
say("wird 100%tig einen Tag dauern. Bitte liefere")
say("mir morgen das nächste Juwel der Weissheit.")
say("Du musst mir noch ".." "..20-pc.getqf("collect_count").. " weitere")
say("Juwele der Weissheit liefern.")
pc.setqf("drink_drug", 0)
else
say_title(mob_name(20091))
say("Hervorragende Arbeit " ..pc.get_name().. ", ")
say("die Untersuchungen ergaben bemerkenswerte")
say("Ergebnisse. Ich habe auch gleich ein Extrakt")
say("verfahren entwickelt und die ersten Extrakte")
say("hergestellt. Bitte wähle erneut eine Zutat um")
say("die jeweiligen Verbesserungen zu erhalten.")
pc.setqf("collect_count", 0)
local s = select("+1100 Trefferpunkte","+120 Verteidigung","+60 Angriffspunkte")
if 1== s then
affect.add_collect(apply.MAX_HP, 1100, 60*60*24*365*60)
chat("Deine TP wurde um 1.100 Permanent verbessert.")
elseif 2== s then
affect.add_collect(apply.DEF_GRADE_BONUS, 120, 60*60*24*365*60)
chat("Deine Verteidigung wurde um 120 Permanent verbessert.")
elseif 3== s then
affect.add_collect(apply.ATT_GRADE_BONUS, 60, 60*60*24*365*60)
chat("Deine Angriffspunkte wurden um 60 Permanent verbessert.")
end
end
pc.setqf("collect_count",0)
pc.setqf("drink_drug",0)
pc.setqf("duration",0)
clear_letter()
set_state(__COMPLETE__)
else
say_title(mob_name(20091))
say("Oh verdammt! - Das ist mir aber peinlich.")
say("Ich habe versehentlich den Juwel der Weissheit")
say("bei den anfänglichen Untersuchungen zerstört.")
say("Bitte bringe mir ein neues. Es tut mir leid...")
say("")
pc.setqf("drink_drug", 0)
end
else
say_title(mob_name(20091))
say("Es ist toll das du einen weiteren Juwel")
say("der Weissheit gefunden hast, aber ich bin")
say("mit der Untersuchung des letzten Juwel noch")
say("nicht fertig. Bitte gedulde dich noch einen")
say("Augenblick.")
end
end
end
state __COMPLETE__ begin
end
end
Es gibt "Keine" Fehlermeldung. Die Quest funktioniert einwandfrei, allerdings wenn ich ein Item abgebe und dieser erfolgreich war, kann ich kein weiteres mehr abgeben?! Aber die Quest ist nicht beendet.
|
|
|
10/16/2011, 21:49
|
#3759
|
elite*gold: 0
Join Date: Sep 2011
Posts: 302
Received Thanks: 282
|
Quote:
Originally Posted by .ExoTiC
PHP Code:
quest soldat begin
state start begin
end
state run begin
when letter begin
send_letter("Berufsstatus")
pc.setqf("aufstieg", 1)
end
when button or info begin
say_title("Berufsstatus")
say("Dein Beruf:")
say_reward("Soldat")
say("Dein Rang:")
if pc.getqf("aufstieg")==1 then
say_reward("Rekrut")
say("Deine Vorteile:")
say_reward("+10 Stärke")
say_reward("+500 max. HP")
say_reward("+5% Erfahrungsbonus")
elseif pc.getqf("aufstieg")==2 then
say_reward("Soldat")
say("Deine Vorteile:")
say_reward("+12 Stärke")
say_reward("+750 max. HP")
say_reward("+10% Erfahrungsbonus")
elseif pc.getqf("aufstieg")==3 then
say_reward("Corporal")
say("Deine Vorteile:")
say_reward("+14 Stärke")
say_reward("+1000 max. HP")
say_reward("+15% Erfahrungsbonus")
elseif pc.getqf("aufstieg")==4 then
say_reward("Leutnant")
say("Deine Vorteile:")
say_reward("+16 Stärke")
say_reward("+1250 max. HP")
say_reward("+20% Erfahrungsbonus")
elseif pc.getqf("aufstieg")==5 then
say_reward("General")
say("Deine Vorteile:")
say_reward("+20 Stärke")
say_reward("+1500 max. HP")
say_reward("+25% Erfahrungsbonus")
end
end
when login or levelup begin
if pc.get_level()>=26 and pc.getqf("aufstieg")==1 then
set_state(soldaterste)
elseif pc.get_level()>=34 and pc.getqf("aufstieg")==2 then
set_state(soldatzweite)
elseif pc.get_level()>=48 and pc.getqf("aufstieg")==3 then
set_state(soldatdritte)
elseif pc.get_level()>=70 and pc.getqf("aufstieg")==4 then
set_state(soldatvierte)
end
end
end
state soldaterste begin
when letter begin
if pc.getqf("letter")==0 then
send_letter("Beförderung!")
local v=find_npc_by_vnum(20355)
if 0!=v then
target.vid("target", v, "Hauptmann")
end
elseif pc.getqf("letter")==1 then
send_letter("Berufsstatus")
end
end
when button or info begin
if pc.getqf("letter")==0 then
say_title("Beförderung!")
say("Gehe zum Hauptmann. Er hat eine")
say("bestimmte Aufgabe für dich.")
elseif pc.getqf("letter")==1 then
say_title("Berufsstatus")
say("Dein Beruf:")
say_reward("Soldat")
say("Dein Rang:")
say_reward("Rekrut")
say("Deine Vorteile:")
say_reward("+10 Stärke")
say_reward("+500 max. HP")
say_reward("+5% Erfahrungsbonus")
end
end
when target.target.click begin
say_title("Hauptmann")
say("Hallo "..pc.get_name())
say("Endlich ist es so weit. Du bist")
say("erfahren genug dich der Aufgabe zu")
say("stellen um in deinen Beruf aufzusteigen.")
say("Um zu bestehen musst du 10 Spieler aus")
say("einem anderen Reich bezwungen haben und")
say("2500 Rangpunkte besitzen.")
say("Viel Erfolg!")
wait()
clear_letter()
send_letter("Berufsstatus")
pc.setqf("spieler", 0)
pc.setqf("letter", 1)
q.set_counter("Getötete Spieler", 0)
target.delete("target")
end
when kill with npc.is_pc() and npc.get_empire()!=pc.get_empire() begin
if pc.getqf("spieler")<10 then
pc.setqf("spieler", pc.getqf("spieler")+1)
q.set_counter("Getötete Spieler", pc.getqf("spieler"))
end
end
when 20355.chat."Beförderung" begin
say_title("Hauptmann")
if pc.getqf("spieler")<10 then
say("Du hast noch zu wenig Spieler")
say("getötet. Es werden nur welche aus")
say("einen anderen Reich gezählt.")
say_reward("Du musst 10 Spieler getötet haben.")
return
end
if pc.get_alignment()<2500 then
say("Du hast zu wenig Rangpunkte, als dass")
say("ich dich schon befördern könnte. Zeig mir,")
say("dass du geehrt wirst indem du 2500 Rang-")
say("punkte besitzt.")
return
end
say("Wow, du hast mir bewiesen, dass")
say("du es verdient hast befördert zu")
say("werden. So soll es auch sein! Ab")
say("jetzt trägst du den Rang:")
say_reward("Soldat")
say("Herzlichen Glückwunsch!")
say("Mach weiter so und aus dir wird eine")
say("Legende.")
clear_letter()
affect.add_collect(apply.STR,2,60*60*24*365*4)
affect.add_collect(apply.MAX_HP,250,60*60*24*365*4)
affect.add_collect(apply.EXP_DOUBLE_BONUS,5,60*60*24*365*4)
pc.setqf("aufstieg", 2)
pc.setqf("letter", 0)
set_state(run)
end
end
state soldatzweite begin
when letter begin
if pc.getqf("letter")==0 then
send_letter("Beförderung!")
local v=find_npc_by_vnum(20355)
if 0!=v then
target.vid("target", v, "Hauptmann")
end
elseif pc.getqf("letter")==1 then
send_letter("Berufsstatus")
end
end
when button or info begin
if pc.getqf("letter")==0 then
say_title("Beförderung!")
say("Gehe zum Hauptmann. Er hat eine")
say("bestimmte Aufgabe für dich.")
elseif pc.getqf("letter")==1 then
say_title("Berufsstatus")
say("Dein Beruf:")
say_reward("Soldat")
say("Dein Rang:")
say_reward("Soldat")
say("Deine Vorteile:")
say_reward("+12 Stärke")
say_reward("+750 max. HP")
say_reward("+10% Erfahrungsbonus")
end
end
when target.target.click begin
say_title("Hauptmann")
say("Hallo "..pc.get_name())
say("Endlich ist es so weit. Du bist")
say("erfahren genug dich der Aufgabe zu")
say("stellen um in deinen Beruf aufzusteigen.")
say("Um zu bestehen musst du 50 Spieler aus")
say("einem anderen Reich bezwungen haben und")
say("5000 Rangpunkte besitzen.")
say("Viel Erfolg!")
wait()
target.delete("target")
clear_letter()
send_letter("Berufsstatus")
pc.setqf("letter", 1)
pc.setqf("spieler", 0)
q.set_counter("Getötete Spieler", 0)
end
when kill with npc.is_pc() and npc.get_empire()!=pc.get_empire() begin
if pc.getqf("spieler")<50 then
pc.setqf("spieler", pc.getqf("spieler")+1)
q.set_counter("Getötete Spieler", pc.getqf("spieler"))
end
end
when 20355.chat."Beförderung" begin
say_title("Hauptmann")
if pc.getqf("spieler")<50 then
say("Du hast noch zu wenig Spieler")
say("getötet. Es werden nur welche aus")
say("einen anderen Reich gezählt.")
say_reward("Du musst 50 Spieler getötet haben.")
return
end
if pc.get_alignment()<5000 then
say("Du hast zu wenig Rangpunkte, als dass")
say("ich dich schon befördern könnte. Zeig mir,")
say("dass du geehrt wirst indem du 5000 Rang-")
say("punkte besitzt.")
return
end
say("Wow, du hast mir bewiesen, dass")
say("du es verdient hast befördert zu")
say("werden. So soll es auch sein! Ab")
say("jetzt trägst du den Rang:")
say_reward("Corporal")
say("Herzlichen Glückwunsch!")
say("Mach weiter so und aus dir wird eine")
say("Legende.")
clear_letter()
affect.add_collect(apply.STR,2,60*60*24*365*4)
affect.add_collect(apply.MAX_HP,250,60*60*24*365*4)
affect.add_collect(apply.EXP_DOUBLE_BONUS,5,60*60*24*365*4)
pc.setqf("aufstieg", 3)
pc.setqf("letter", 0)
set_state(run)
end
end
state soldatdritte begin
when letter begin
if pc.getqf("letter")==0 then
send_letter("Beförderung!")
local v=find_npc_by_vnum(20355)
if 0!=v then
target.vid("target", v, "Hauptmann")
end
elseif pc.getqf("letter")==1 then
send_letter("Berufsstatus")
end
end
when button or info begin
if pc.getqf("letter")==0 then
say_title("Beförderung!")
say("Gehe zum Hauptmann. Er hat eine")
say("bestimmte Aufgabe für dich.")
elseif pc.getqf("letter")==1 then
say_title("Berufsstatus")
say("Dein Beruf:")
say_reward("Soldat")
say("Dein Rang:")
say_reward("Corporal")
say("Deine Vorteile:")
say_reward("+14 Stärke")
say_reward("+1000 max. HP")
say_reward("+15% Erfahrungsbonus")
end
end
when target.target.click begin
say_title("Hauptmann")
say("Hallo "..pc.get_name())
say("Endlich ist es so weit. Du bist")
say("erfahren genug dich der Aufgabe zu")
say("stellen um in deinen Beruf aufzusteigen.")
say("Um zu bestehen musst du 75 Spieler aus")
say("einem anderen Reich bezwungen haben und")
say("10000 Rangpunkte besitzen.")
say("Viel Erfolg!")
wait()
clear_letter()
send_letter("Berufsstatus")
target.delete("target")
pc.setqf("spieler", 0)
pc.setqf("letter", 1)
q.set_counter("Getötete Spieler", 0)
end
when kill with npc.is_pc() and npc.get_empire()!=pc.get_empire() begin
if pc.getqf("spieler")<75 then
pc.setqf("spieler", pc.getqf("spieler")+1)
q.set_counter("Getötete Spieler", pc.getqf("spieler"))
end
end
when 20355.chat."Beförderung" begin
say_title("Hauptmann")
if pc.getqf("spieler")<75 then
say("Du hast noch zu wenig Spieler")
say("getötet. Es werden nur welche aus")
say("einen anderen Reich gezählt.")
say_reward("Du musst 75 Spieler getötet haben.")
return
end
if pc.get_alignment()<10000 then
say("Du hast zu wenig Rangpunkte, als dass")
say("ich dich schon befördern könnte. Zeig mir,")
say("dass du geehrt wirst indem du 10000 Rang-")
say("punkte besitzt.")
return
end
say("Wow, du hast mir bewiesen, dass")
say("du es verdient hast befördert zu")
say("werden. So soll es auch sein! Ab")
say("jetzt trägst du den Rang:")
say_reward("Leutnant")
say("Herzlichen Glückwunsch!")
say("Mach weiter so und aus dir wird eine")
say("Legende.")
clear_letter()
affect.add_collect(apply.STR,2,60*60*24*365*4)
affect.add_collect(apply.MAX_HP,250,60*60*24*365*4)
affect.add_collect(apply.EXP_DOUBLE_BONUS,5,60*60*24*365*4)
pc.setqf("aufstieg", 4)
pc.setqf("letter", 0)
set_state(run)
end
end
state soldatvierte begin
when letter begin
if pc.getqf("letter")==0 then
send_letter("Beförderung!")
local v=find_npc_by_vnum(20355)
if 0!=v then
target.vid("target", v, "Hauptmann")
end
elseif pc.getqf("letter")==1 then
send_letter("Berufsstatus")
end
end
when button or info begin
if pc.getqf("letter")==0 then
say_title("Beförderung!")
say("Gehe zum Hauptmann. Er hat eine")
say("bestimmte Aufgabe für dich.")
elseif pc.getqf("letter")==1 then
say_title("Berufsstatus")
say("Dein Beruf:")
say_reward("Soldat")
say("Dein Rang:")
say_reward("Leutnant")
say("Deine Vorteile:")
say_reward("+16 Stärke")
say_reward("+1250 max. HP")
say_reward("+20% Erfahrungsbonus")
end
end
when target.target.click begin
say_title("Hauptmann")
say("Hallo "..pc.get_name())
say("Endlich ist es so weit. Du bist")
say("erfahren genug dich der letzten Aufgabe")
say("zu stellen um deinen Beruf auszulernen.")
say("Um zu bestehen musst du 250 Spieler aus")
say("einem anderen Reich bezwungen haben und")
say("20000 Rangpunkte besitzen.")
say("Viel Erfolg!")
wait()
clear_letter()
send_letter("Berufsstatus")
target.delete("target")
pc.setqf("letter", 1)
pc.setqf("spieler", 0)
q.set_counter("Getötete Spieler", 0)
end
when kill with npc.is_pc() and npc.get_empire()!=pc.get_empire() begin
if pc.getqf("spieler")<250 then
pc.setqf("spieler", pc.getqf("spieler")+1)
q.set_counter("Getötete Spieler", pc.getqf("spieler"))
end
end
when 20355.chat."Beförderung" begin
say_title("Hauptmann")
if pc.getqf("spieler")<250 then
say("Du hast noch zu wenig Spieler")
say("getötet. Es werden nur welche aus")
say("einen anderen Reich gezählt.")
say_reward("Du musst 250 Spieler getötet haben.")
return
end
if pc.get_alignment()<20000 then
say("Du hast zu wenig Rangpunkte, als dass")
say("ich dich schon befördern könnte. Zeig mir,")
say("dass du geehrt wirst indem du 20000 Rang-")
say("punkte besitzt.")
return
end
say("Wow, du hast mir bewiesen, dass")
say("du deinen Beruf beherschst. Dafür")
say("soll man dich ab jetzt:")
say_reward("General")
say("Nennen und dich mit äußersten Respekt")
say("behandeln.")
say("Herzlichen Glückwunsch!")
clear_letter()
affect.add_collect(apply.STR,4,60*60*24*365*4)
affect.add_collect(apply.MAX_HP,250,60*60*24*365*4)
affect.add_collect(apply.EXP_DOUBLE_BONUS,5,60*60*24*365*4)
pc.setqf("aufstieg", 5)
pc.setqf("letter", 0)
set_state(run)
end
end
end
Fehler
PHP Code:
Segmentation fault (core dumped)
Was ist an der Quest falsch. Wäre euch sehr dankbar, wenn ihr den Fehler beheben könntet.
|
Wo ist der Fehler hier?
Code:
quest soldat begin
state start begin
end
state run begin
when letter begin
send_letter("Berufsstatus")
pc.setqf("aufstieg", 1)
end
when button or info begin
say_title("Berufsstatus")
say("Dein Beruf:")
say_reward("Soldat")
say("Dein Rang:")
if pc.getqf("aufstieg")==1 then
say_reward("Rekrut")
say("Deine Vorteile:")
say_reward("+10 Stärke")
say_reward("+500 max. HP")
say_reward("+5% Erfahrungsbonus")
elseif pc.getqf("aufstieg")==2 then
say_reward("Soldat")
say("Deine Vorteile:")
say_reward("+12 Stärke")
say_reward("+750 max. HP")
say_reward("+10% Erfahrungsbonus")
elseif pc.getqf("aufstieg")==3 then
say_reward("Corporal")
say("Deine Vorteile:")
say_reward("+14 Stärke")
say_reward("+1000 max. HP")
say_reward("+15% Erfahrungsbonus")
elseif pc.getqf("aufstieg")==4 then
say_reward("Leutnant")
say("Deine Vorteile:")
say_reward("+16 Stärke")
say_reward("+1250 max. HP")
say_reward("+20% Erfahrungsbonus")
elseif pc.getqf("aufstieg")==5 then
say_reward("General")
say("Deine Vorteile:")
say_reward("+20 Stärke")
say_reward("+1500 max. HP")
say_reward("+25% Erfahrungsbonus")
end
end
when login or levelup begin
if pc.get_level()>=26 and pc.getqf("aufstieg")==1 then
set_state(soldaterste)
elseif pc.get_level()>=34 and pc.getqf("aufstieg")==2 then
set_state(soldatzweite)
elseif pc.get_level()>=48 and pc.getqf("aufstieg")==3 then
set_state(soldatdritte)
elseif pc.get_level()>=70 and pc.getqf("aufstieg")==4 then
set_state(soldatvierte)
end
end
end
state soldaterste begin
when letter begin
if pc.getqf("letter")==0 then
send_letter("Beförderung!")
local v=find_npc_by_vnum(20355)
if 0!=v then
target.vid("target", v, "Hauptmann")
end
elseif pc.getqf("letter")==1 then
send_letter("Berufsstatus")
end
end
when button or info begin
if pc.getqf("letter")==0 then
say_title("Beförderung!")
say("Gehe zum Hauptmann. Er hat eine")
say("bestimmte Aufgabe für dich.")
elseif pc.getqf("letter")==1 then
say_title("Berufsstatus")
say("Dein Beruf:")
say_reward("Soldat")
say("Dein Rang:")
say_reward("Rekrut")
say("Deine Vorteile:")
say_reward("+10 Stärke")
say_reward("+500 max. HP")
say_reward("+5% Erfahrungsbonus")
end
end
when target.target.click begin
say_title("Hauptmann")
say("Hallo "..pc.get_name())
say("Endlich ist es so weit. Du bist")
say("erfahren genug dich der Aufgabe zu")
say("stellen um in deinen Beruf aufzusteigen.")
say("Um zu bestehen musst du 10 Spieler aus")
say("einem anderen Reich bezwungen haben und")
say("2500 Rangpunkte besitzen.")
say("Viel Erfolg!")
wait()
clear_letter()
send_letter("Berufsstatus")
pc.setqf("spieler", 0)
pc.setqf("letter", 1)
q.set_counter("Getötete Spieler", 0)
target.delete("target")
end
when kill with npc.is_pc() and npc.get_empire()!=pc.get_empire() begin
if pc.getqf("spieler")<10 then
pc.setqf("spieler", pc.getqf("spieler")+1)
q.set_counter("Getötete Spieler", pc.getqf("spieler"))
end
end
when 20355.chat."Beförderung" begin
say_title("Hauptmann")
if pc.getqf("spieler")<10 then
say("Du hast noch zu wenig Spieler")
say("getötet. Es werden nur welche aus")
say("einen anderen Reich gezählt.")
say_reward("Du musst 10 Spieler getötet haben.")
return
end
if pc.get_alignment()<2500 then
say("Du hast zu wenig Rangpunkte, als dass")
say("ich dich schon befördern könnte. Zeig mir,")
say("dass du geehrt wirst indem du 2500 Rang-")
say("punkte besitzt.")
return
end
say("Wow, du hast mir bewiesen, dass")
say("du es verdient hast befördert zu")
say("werden. So soll es auch sein! Ab")
say("jetzt trägst du den Rang:")
say_reward("Soldat")
say("Herzlichen Glückwunsch!")
say("Mach weiter so und aus dir wird eine")
say("Legende.")
clear_letter()
affect.add_collect(apply.STR,2,60*60*24*365*4)
affect.add_collect(apply.MAX_HP,250,60*60*24*365*4)
affect.add_collect(apply.EXP_DOUBLE_BONUS,5,60*60*24*365*4)
pc.setqf("aufstieg", 2)
pc.setqf("letter", 0)
set_state(run)
end
end
state soldatzweite begin
when letter begin
if pc.getqf("letter")==0 then
send_letter("Beförderung!")
local v=find_npc_by_vnum(20355)
if 0!=v then
target.vid("target", v, "Hauptmann")
end
elseif pc.getqf("letter")==1 then
send_letter("Berufsstatus")
end
end
when button or info begin
if pc.getqf("letter")==0 then
say_title("Beförderung!")
say("Gehe zum Hauptmann. Er hat eine")
say("bestimmte Aufgabe für dich.")
elseif pc.getqf("letter")==1 then
say_title("Berufsstatus")
say("Dein Beruf:")
say_reward("Soldat")
say("Dein Rang:")
say_reward("Soldat")
say("Deine Vorteile:")
say_reward("+12 Stärke")
say_reward("+750 max. HP")
say_reward("+10% Erfahrungsbonus")
end
end
when target.target.click begin
say_title("Hauptmann")
say("Hallo "..pc.get_name())
say("Endlich ist es so weit. Du bist")
say("erfahren genug dich der Aufgabe zu")
say("stellen um in deinen Beruf aufzusteigen.")
say("Um zu bestehen musst du 50 Spieler aus")
say("einem anderen Reich bezwungen haben und")
say("5000 Rangpunkte besitzen.")
say("Viel Erfolg!")
wait()
target.delete("target")
clear_letter()
send_letter("Berufsstatus")
pc.setqf("letter", 1)
pc.setqf("spieler", 0)
q.set_counter("Getötete Spieler", 0)
end
when kill with npc.is_pc() and npc.get_empire()!=pc.get_empire() begin
if pc.getqf("spieler")<50 then
pc.setqf("spieler", pc.getqf("spieler")+1)
q.set_counter("Getötete Spieler", pc.getqf("spieler"))
end
end
when 20355.chat."Beförderung" begin
say_title("Hauptmann")
if pc.getqf("spieler")<50 then
say("Du hast noch zu wenig Spieler")
say("getötet. Es werden nur welche aus")
say("einen anderen Reich gezählt.")
say_reward("Du musst 50 Spieler getötet haben.")
return
end
if pc.get_alignment()<5000 then
say("Du hast zu wenig Rangpunkte, als dass")
say("ich dich schon befördern könnte. Zeig mir,")
say("dass du geehrt wirst indem du 5000 Rang-")
say("punkte besitzt.")
return
end
say("Wow, du hast mir bewiesen, dass")
say("du es verdient hast befördert zu")
say("werden. So soll es auch sein! Ab")
say("jetzt trägst du den Rang:")
say_reward("Corporal")
say("Herzlichen Glückwunsch!")
say("Mach weiter so und aus dir wird eine")
say("Legende.")
clear_letter()
affect.add_collect(apply.STR,2,60*60*24*365*4)
affect.add_collect(apply.MAX_HP,250,60*60*24*365*4)
affect.add_collect(apply.EXP_DOUBLE_BONUS,5,60*60*24*365*4)
pc.setqf("aufstieg", 3)
pc.setqf("letter", 0)
set_state(run)
end
end
state soldatdritte begin
when letter begin
if pc.getqf("letter")==0 then
send_letter("Beförderung!")
local v=find_npc_by_vnum(20355)
if 0!=v then
target.vid("target", v, "Hauptmann")
end
elseif pc.getqf("letter")==1 then
send_letter("Berufsstatus")
end
end
when button or info begin
if pc.getqf("letter")==0 then
say_title("Beförderung!")
say("Gehe zum Hauptmann. Er hat eine")
say("bestimmte Aufgabe für dich.")
elseif pc.getqf("letter")==1 then
say_title("Berufsstatus")
say("Dein Beruf:")
say_reward("Soldat")
say("Dein Rang:")
say_reward("Corporal")
say("Deine Vorteile:")
say_reward("+14 Stärke")
say_reward("+1000 max. HP")
say_reward("+15% Erfahrungsbonus")
end
end
when target.target.click begin
say_title("Hauptmann")
say("Hallo "..pc.get_name())
say("Endlich ist es so weit. Du bist")
say("erfahren genug dich der Aufgabe zu")
say("stellen um in deinen Beruf aufzusteigen.")
say("Um zu bestehen musst du 75 Spieler aus")
say("einem anderen Reich bezwungen haben und")
say("10000 Rangpunkte besitzen.")
say("Viel Erfolg!")
wait()
clear_letter()
send_letter("Berufsstatus")
target.delete("target")
pc.setqf("spieler", 0)
pc.setqf("letter", 1)
q.set_counter("Getötete Spieler", 0)
end
when kill with npc.is_pc() and npc.get_empire()!=pc.get_empire() begin
if pc.getqf("spieler")<75 then
pc.setqf("spieler", pc.getqf("spieler")+1)
q.set_counter("Getötete Spieler", pc.getqf("spieler"))
end
end
when 20355.chat."Beförderung" begin
say_title("Hauptmann")
if pc.getqf("spieler")<75 then
say("Du hast noch zu wenig Spieler")
say("getötet. Es werden nur welche aus")
say("einen anderen Reich gezählt.")
say_reward("Du musst 75 Spieler getötet haben.")
return
end
if pc.get_alignment()<10000 then
say("Du hast zu wenig Rangpunkte, als dass")
say("ich dich schon befördern könnte. Zeig mir,")
say("dass du geehrt wirst indem du 10000 Rang-")
say("punkte besitzt.")
return
end
say("Wow, du hast mir bewiesen, dass")
say("du es verdient hast befördert zu")
say("werden. So soll es auch sein! Ab")
say("jetzt trägst du den Rang:")
say_reward("Leutnant")
say("Herzlichen Glückwunsch!")
say("Mach weiter so und aus dir wird eine")
say("Legende.")
clear_letter()
affect.add_collect(apply.STR,2,60*60*24*365*4)
affect.add_collect(apply.MAX_HP,250,60*60*24*365*4)
affect.add_collect(apply.EXP_DOUBLE_BONUS,5,60*60*24*365*4)
pc.setqf("aufstieg", 4)
pc.setqf("letter", 0)
set_state(run)
end
end
state soldatvierte begin
when letter begin
if pc.getqf("letter")==0 then
send_letter("Beförderung!")
local v=find_npc_by_vnum(20355)
if 0!=v then
target.vid("target", v, "Hauptmann")
end
elseif pc.getqf("letter")==1 then
send_letter("Berufsstatus")
end
end
when button or info begin
if pc.getqf("letter")==0 then
say_title("Beförderung!")
say("Gehe zum Hauptmann. Er hat eine")
say("bestimmte Aufgabe für dich.")
elseif pc.getqf("letter")==1 then
say_title("Berufsstatus")
say("Dein Beruf:")
say_reward("Soldat")
say("Dein Rang:")
say_reward("Leutnant")
say("Deine Vorteile:")
say_reward("+16 Stärke")
say_reward("+1250 max. HP")
say_reward("+20% Erfahrungsbonus")
end
end
when target.target.click begin
say_title("Hauptmann")
say("Hallo "..pc.get_name())
say("Endlich ist es so weit. Du bist")
say("erfahren genug dich der letzten Aufgabe")
say("zu stellen um deinen Beruf auszulernen.")
say("Um zu bestehen musst du 250 Spieler aus")
say("einem anderen Reich bezwungen haben und")
say("20000 Rangpunkte besitzen.")
say("Viel Erfolg!")
wait()
clear_letter()
send_letter("Berufsstatus")
target.delete("target")
pc.setqf("letter", 1)
pc.setqf("spieler", 0)
q.set_counter("Getötete Spieler", 0)
end
when kill with npc.is_pc() and npc.get_empire()!=pc.get_empire() begin
if pc.getqf("spieler")<250 then
pc.setqf("spieler", pc.getqf("spieler")+1)
q.set_counter("Getötete Spieler", pc.getqf("spieler"))
end
end
when 20355.chat."Beförderung" begin
say_title("Hauptmann")
if pc.getqf("spieler")<250 then
say("Du hast noch zu wenig Spieler")
say("getötet. Es werden nur welche aus")
say("einen anderen Reich gezählt.")
say_reward("Du musst 250 Spieler getötet haben.")
return
end
if pc.get_alignment()<20000 then
say("Du hast zu wenig Rangpunkte, als dass")
say("ich dich schon befördern könnte. Zeig mir,")
say("dass du geehrt wirst indem du 20000 Rang-")
say("punkte besitzt.")
return
end
say("Wow, du hast mir bewiesen, dass")
say("du deinen Beruf beherschst. Dafür")
say("soll man dich ab jetzt:")
say_reward("General")
say("Nennen und dich mit äußersten Respekt")
say("behandeln.")
say("Herzlichen Glückwunsch!")
clear_letter()
affect.add_collect(apply.STR,4,60*60*24*365*4)
affect.add_collect(apply.MAX_HP,250,60*60*24*365*4)
affect.add_collect(apply.EXP_DOUBLE_BONUS,5,60*60*24*365*4)
pc.setqf("aufstieg", 5)
pc.setqf("letter", 0)
set_state(run)
end
end
end
|
|
|
10/16/2011, 22:40
|
#3760
|
elite*gold: 26
Join Date: Mar 2010
Posts: 3,765
Received Thanks: 2,661
|
@ Brodan:
try this
Code:
quest GM_File2 begin
state start begin
when 30181.use with pc.is_gm() begin
say_title("GM-Tool:")
say("")
say("Oh Hallo, GameMaster!")
say("Möchtest du die GM Rechte aktualiseren?")
say("Oder willst du doch eher etwas ankündigen?")
say_title("Bitte Funktion Wählen")
local s = select("GM Rechte Aktualiseren", "Eventmanagement", "Support anbieten", "Tag / Nacht", "Weiter")
if s == 1 then
command("reload a")
elseif s == 2 then
say_title("GM-Tool:")
say("")
say("Willkommen im Eventmanagement!")
say("Wähle das zustartende oder zubeendende Event:")
local wup = select("Weihnachtsevent", "Abbrechen")
if wup == 1 then
say_title("GM-Tool:")
say("")
say("Möchtest du das Event starten oder beenden?")
local xmas = select("Starten", "Beenden")
if xmas == 1 then
command("e xmas_tree 1")
command("e xmas_song 1")
command("e xmas_boom 1")
command("e xmas_snow 1")
notice_all("Das Weihnachtsevent wurde gestartet!")
say_title("GM-Tool:")
say("")
say("Du hast das Weihnachtsevent gestartet.")
elseif xmas == 2 then
command("e xmas_tree 0")
command("e xmas_song 0")
command("e xmas_boom 0")
command("e xmas_snow 0")
notice_all("Das Weihnachtsevent wurde beendet!")
say_title("GM-Tool:")
say("")
say("Du hast das Weihnachtsevent beendet.")
end -- hat gefehlt
elseif wup == 2 then
return
end
elseif s == 3 then
say_title("GM-Tool:")
say("")
say("Willkommen im Supportfenster!")
say("Möchtest du dich Anmelden, oder verabschieden?")
local o = select("Anmelden", "Verabschieden", "Abbrechen")
if o == 1 then
say_title("GM-Tool:")
say("")
say("Du hast dich angemeldet.")
command ("n "..pc.get_name() .." steht euch für Fragen und Probleme zur Verfügung!")
elseif o == 2 then
say_title("GM-Tool:")
say("")
say("Du hast dich abgemeldet.")
say("Schönen Tag noch!")
command ("n "..pc.get_name() .." meldet sich nun ab und wünscht weiterhin viel Spaß!")
elseif o == 3 then
return
end
elseif s == 4 then
say_title("GM-Tool:")
say("")
say("Du möchtest also zwischen Tag und")
say("Nacht wechseln ?")
local f = select ("Tag" , "Nacht", "Abbrechen")
if f == 1 then
command("x 0")
elseif f == 2 then
command ("x 1")
elseif f == 3 then
return
end
elseif s == 5 then
say_title("GM-Tool:")
say("")
say_title("Bitte Funktion wählen")
local m = select ("Reboot Ankündigen", "Rates einstellen", "Schließen")
if m == 1 then
notice_all("Wir werden einen Reboot durchführen, bitte ausloggen!")
timer("wiederholen", 5)
elseif m == 2 then
say_title("GM-Tool:")
say("")
say("Welche Rates willst du erhöhen / heruntersetzen?")
local q = select("Exp-Rates", "Yang-Rates", "Drop-Rate", "Yangbomben", "Abbrechen")
if q == 1 then
say_title("GM-Tool:")
say("")
say("Alles klar. Dann gib die Exp-Rate Höhe hier ein:")
local zahl = tonumber(input())
if zahl <= 0 then
say_title("GM-Tool:")
say("")
say("Die Zahl ist zu niedrig!")
return
else
say_title("GM-Tool:")
say("")
say("Willst du die Exp-Rate wirklich auf "..zahl.." % erhöhen?")
local w = select("Ja", "Nein")
if w == 1 then
command("priv 0 4 "..zahl.." 699")
else
say_title("GM-Tool:")
say("")
say("Dann nicht.")
return
end
end
elseif q == 2 then
say_title("GM-Tool:")
say("")
say("Alles klar. Dann gib die Yang-Rate Höhe hier ein :")
local nummer = tonumber(input())
if nummer <= 0 then
say_title("GM-Tool:")
say("")
say("Die Zahl ist zu niedrig!")
return
else
say_title("GM-Tool:")
say("")
say("Willst du die Yang-Rate wirklich auf "..nummer.." % erhöhen?")
local c = select("Ja", "Nein")
if c == 1 then
command("priv 0 2 "..nummer.." 699")
else
say_title("GM-Tool:")
say("")
say("Dann nicht.")
return
end
end
elseif q == 3 then
say_title("GM-Tool:")
say("")
say("Alles klar. Dann gib die Drop-Rate Höhe hier ein :")
local number = tonumber(input())
if number <= 0 then
say("Die Zahl ist zu niedrig!")
return
else
say_title("GM-Tool:")
say("")
say("Willst du die Drop-Rate wirklich auf "..number.." % erhöhen?")
local k = select("Ja", "Nein")
if k == 1 then
command("priv 0 1 "..number.." 699")
else
say_title("GM-Tool:")
say("")
say("Dann nicht.")
return
end
end
elseif q == 4 then
say_title("GM-Tool:")
say("")
say("Alles klar. Dann gib die Yangbomben-Rate Höhe hier ein :")
local nummber = tonumber(input())
if nummber <= 0 then
say_title("GM-Tool:")
say("")
say("Die Zahl ist zu niedrig!")
return
else
say_title("GM-Tool:")
say("")
say("Willst du die Yangbomben-Rate wirklich auf "..nummber.." % erhöhen?")
local l = select("Ja", "Nein")
if l == 1 then
command("priv 0 3 "..nummber.." 699")
else
say_title("GM-Tool:")
say("")
say("Dann nicht.")
return
end
end
end
elseif m == 3 then
return
end
end
end
when wiederholen.timer begin
notice_all("Wir werden einen Reboot durchführen, bitte ausloggen!")
timer("wiederholen1", 5)
end
when wiederholen1.timer begin
notice_all("Wir werden einen Reboot durchführen, bitte ausloggen!")
timer("wiederholen", 5)
end
end
end
@.Muhammed
Fehlermeldung?
|
|
|
10/16/2011, 23:14
|
#3761
|
elite*gold: 0
Join Date: Sep 2010
Posts: 427
Received Thanks: 105
|
was daran falsch=?
PHP Code:
quest map1 begin
state start begin
when login or levelup with pc.get_level()>=50 begin
set_state(farmmaplow)
end
end
state farmmaplow begin
when 9013.chat."Farmmap Low(ab 50)" begin
say_title("Farmmap Low")
say_green("Möchtest du zur Farm map Low ?")
say_green("auf der Map findest du metins bis")
say_green("level 90 zum Farmen deiner Items.")
local main_set = select("Ja", "Nein")
if main_set == 2 then
return
end
if main_set == 1 then
say("Gut, ich bringe dich umgehend hin!")
wait()
pc.warp(90000, 10000)
end
set_state(farmh)
end
end
end
end
state farmh begin
when login or levelup with pc.get_level()>=95 begin
set_state(farmmaphigh)
end
end
state farmmaphigh begin
when 9013.chat."Farmmap High(ab 95)" begin
say_title("Farmmap High")
say_green("Möchtest du zur Farm map High ?")
say_green("auf der Map findest du metins bis")
say_green("level 150 oder Höher zum Farmen deiner Items.")
local main_set = select("Ja", "Nein")
if main_set == 2 then
return
end
if main_set == 1 then
say("Gut, ich bringe dich umgehend hin!")
wait()
pc.warp(1599900, 1599900)
end
set_state(tald)
end
end
end
end
state tald begin
when login or levelup with pc.get_level()>=115 begin
set_state(taldz)
end
end
state taldz begin
when 9013.chat."Tal der Zombies(ab 115)" begin
say_title("Tal der Zombies")
say_green("Möchtest du ins Tal der Zombies ?")
say_green("auf der Map findest du Zombies im")
say_green("level 120 oder Höher zum Leveln.")
local main_set = select("Ja", "Nein")
if main_set == 2 then
return
end
if main_set == 1 then
say("Gut, ich bringe dich umgehend hin!")
wait()
pc.warp(999700, 999700)
end
end
end
end
|
|
|
10/16/2011, 23:18
|
#3762
|
elite*gold: 26
Join Date: Mar 2010
Posts: 3,765
Received Thanks: 2,661
|
da, probiers so
Code:
quest map1 begin
state start begin
when 9013.chat."Farmmap Low(ab 50)" with pc.get_level() >= 50 begin
say_title("Farmmap Low")
say_green("Möchtest du zur Farm map Low ?")
say_green("auf der Map findest du metins bis")
say_green("level 90 zum Farmen deiner Items.")
local main_set = select("Ja", "Nein")
if main_set == 2 then
return
end
say("Gut, ich bringe dich umgehend hin!")
wait()
pc.warp(90000, 10000)
end
when 9013.chat."Farmmap High(ab 95)" with pc.get_level() >= 95 begin
say_title("Farmmap High")
say_green("Möchtest du zur Farm map High ?")
say_green("auf der Map findest du metins bis")
say_green("level 150 oder Höher zum Farmen deiner Items.")
local main_set = select("Ja", "Nein")
if main_set == 2 then
return
end
say("Gut, ich bringe dich umgehend hin!")
wait()
pc.warp(1599900, 1599900)
end
when 9013.chat."Tal der Zombies(ab 115)" with pc.get_level() >= 115 begin
say_title("Tal der Zombies")
say_green("Möchtest du ins Tal der Zombies ?")
say_green("auf der Map findest du Zombies im")
say_green("level 120 oder Höher zum Leveln.")
local main_set = select("Ja", "Nein")
if main_set == 2 then
return
end
say("Gut, ich bringe dich umgehend hin!")
wait()
pc.warp(999700, 999700)
end
end
end
|
|
|
10/16/2011, 23:19
|
#3763
|
elite*gold: 0
Join Date: Sep 2011
Posts: 302
Received Thanks: 282
|
Ouh Sorry Quest funzt doch ^^
#edit
Ingame funzt aber quest iwie nicht.
muss ich rebooten?
|
|
|
10/17/2011, 00:15
|
#3764
|
elite*gold: 0
Join Date: Sep 2010
Posts: 427
Received Thanks: 105
|
ja oder /reload q aber am besten rebooten
|
|
|
10/17/2011, 13:17
|
#3765
|
elite*gold: 0
Join Date: Jan 2010
Posts: 1,916
Received Thanks: 538
|
Was ist daran falsch??
Quote:
quest armortrade2 begin
state start begin
when 9001.chat."110er zur 120er Rüstung Uppen" begin
say("Hey Landratte")
say("Möchtest du deine Lv110 Rüstung zur Lv120 Rüstung Uppen?")
say("")
say("Es kostet dich 100000000 Yang, 10x Plasma Perlen, 10x Violetter Kristall, 10x Weißer Kristall.")
local a=select("Ja, Krieger","Ja, Sura","Ja, Ninja","Ja, Schamane","Nein Danke")
if 1==a then
if pc.money>=100000000 and pc.count_item("13229")>=1 and pc.count_item("33012")>=10 and pc.count_item("33014")>=10 and pc.count_item("33015")>=10 then
pc.changemoney(-100000000)
pc.removeitem("13229", 1)
pc.removeitem("33012", 10)
pc.removeitem("33014", 10)
pc.removeitem("33015", 10)
say("Hier hast du eine")
say("Level 120er Krieger Rüstung")
pc.give_item2("13250", 1)
else
say("Ok")
say("Dann nicht")
say("Hast bestimmt wichtigeres zu tun.")
end
elseif 2==a then
if pc.money>=100000000 and pc.count_item("13219")>=1 and pc.count_item("33012")>=10 and pc.count_item("33014")>=10 and pc.count_item("33015")>=10 then
pc.changemoney(-100000000)
pc.removeitem("13219", 1)
pc.removeitem("33012", 10)
pc.removeitem("33014", 10)
pc.removeitem("33015", 10)
say("Hier hast du eine")
say("Level 120er Sura Rüstung")
pc.give_item2("13280", 1)
else
say("Ok")
say("Dann nicht")
say("Hast bestimmt wichtigeres zu tun.")
end
elseif 3==a then
if pc.money>=100000000 and pc.count_item("13239")>=1 and pc.count_item("33012")>=10 and pc.count_item("33014")>=10 and pc.count_item("33015")>=10 then
pc.changemoney(-100000000)
pc.removeitem("13239", 1)
pc.removeitem("33012", 10)
pc.removeitem("33014", 10)
pc.removeitem("33015", 10)
say("Hier hast du eine")
say("Level 120er Ninja Rüstung")
pc.give_item2("13270", 1)
else
say("Ok")
say("Dann nicht")
say("Hast bestimmt wichtigeres zu tun.")
end
elseif 4==a then
if pc.money>=100000000 and pc.count_item("13249")>=1 and pc.count_item("33012")>=10 and pc.count_item("33014")>=10 and pc.count_item("33015")>=10 then
pc.changemoney(-100000000)
pc.removeitem("13249", 1)
pc.removeitem("33012", 10)
pc.removeitem("33014", 10)
pc.removeitem("33015", 10)
say("Hier hast du eine")
say("Level 120er Schamanen Rüstung")
pc.give_item2("13260", 1)
else
say("Ok")
say("Dann nicht")
say("Hast bestimmt wichtigeres zu tun.")
end
elseif 5==a then
else
say("UNKNOWN BUTTON ["..b.."]")
end
end
end
end
end
end
end
end
|
Es wird kein Fehler angezeigt wenn ich sh make.sh mache.
Aber wenn ich z.n krieger wähle, dann gehts aber wenn ich alle anderen wähle, dann schließt sich einfach das fenster (nicht metin2)
|
|
|
All times are GMT +1. The time now is 19:54.
|
|