|
You last visited: Today at 13:28
Advertisement
[SERVICE] Die Questkontrolle
Discussion on [SERVICE] Die Questkontrolle within the Metin2 Private Server forum part of the Metin2 category.
05/20/2012, 20:45
|
#5761
|
elite*gold: 0
Join Date: Dec 2011
Posts: 101
Received Thanks: 59
|
Hallo, ich habe hier eine Quest die ich selber gemacht habe(es ist meine 1. quest die ich bisher gemacht habe) aber obwohl ich finde das alles passt, kommt bei mir in VB trotzdem diese Fehlermeldung: " must start with ´quest´
levelpay.quest:1:Error occured on Compile levelpay.quest"
Ich wollte eine quest machen bei der man 700kk yang gegen ein levelup zahlt.
Hier ist die selbstgemachte quest:
PHP Code:
quest levelpay begin
state start begin
when 20011.chat."Levelservice" with pc.get_level() >= 120 begin
say_title("Levelservice")
say("")
say("Hallo "..pc.get_name.."!")
say("Du möchtest also ein Levelup kommen?!")
say("Ich kann dich gerne Leveln, ich habe aber auch Familie und Kinder")
say("Für 700kk helfe ich dir gerne!")
say("Entscheide dich bitte!")
say("")
local o = select ("Ja, Level mich", Abbrechen")
if o == 2 then
return
elseif o == 1 then
pc.change_gold(-700000000)
pc.give_exp_perc(100)
end
end
end
end
|
|
|
05/20/2012, 20:52
|
#5762
|
elite*gold: 0
Join Date: Nov 2010
Posts: 187
Received Thanks: 99
|
Punkt 1:
Oben steht "...pc.get_level() == 90...", soweit so gut.
Damit kann die Quest aber nur mit level 90 erledigt werden.
Falls es auch mit 91 ust noch gehen soll ändern in "pc.get_level() >= 90"
Punkt 2:
Die Auswahl in der Questrolle ist falsch gesetzt... ersetze dies durch:
PHP Code:
local s = select ("Ja","Nein") if s == 1 then --- .... Was passieren soll wen ja elseif s == 2 then --- .... Was passieren soll wenn nein end
Eventuell kannst du sie auch einfach rauslassen. (Behaupte mal sie wird nicht gebraucht)
Punkt 3:
bei dir steht oben set_state(__COMPLETE__), das bedeutet, die eigentliche Quest wird übersprungen. (Also z.B. bei "Nein" einbaubar.)
Setz einen anderen State, führe diesen vor when 101.kill aus... (Dannach übrigends das begin vergessen)
Punkt 4:
PHP Code:
pc setf("Drache", pc.getf("hund") - 1)
gehts um 'n Hund oder 'n Drachen?
Eventuell nocheinmal den Sinn der Quest posten. Soll man einen Wildhund, oder einen Drachen töten? Oder einfach die MobID... dann kann man dir notfalls die Quest auch komplett reinschreiben 
Aber vielleicht schaffst du es nun ja auch alleine, viel Glück!
________________________________________
@ Fuzzy
Nicht schlecht für den Anfang
Kleine Hilfe:
PHP Code:
local o = select ("Ja, Level mich", Abbrechen")
vor Abbrechen fehlt ein ".
King regards.
|
|
|
05/20/2012, 21:40
|
#5763
|
elite*gold: 0
Join Date: Oct 2009
Posts: 382
Received Thanks: 161
|
PHP Code:
function pc.get_accountid(c1)
local b5 = mysql_query("SELECT account_id FROM player.player WHERE player.name='"..c1.."'")
return b5[1]
end
where is the problem?
|
|
|
05/20/2012, 21:53
|
#5764
|
elite*gold: 1
Join Date: Mar 2011
Posts: 180
Received Thanks: 10
|
bei mir wird die quest wenn ich auf npc klick nicht angezeigt
bei npc ist es bei oneklick 2
hier die quest :
quest dckammer begin
state start begin
when 30122.chat."Die Catacomben" begin
say_title(mob_name(30122))
say("Du Willst also in den Bossraum?")
say("Sei gewarnt Azrael ist nicht gut")
say("auf Fremde zu sprechen.")
if pc.count_item(30320) < 1 then
say("Du benötigst einen Schrumpfkopf")
say("zum passieren! Du erhälst ihn")
say("von Seon-Hae!")
wait()
d.exit_all()
else
say("Oh wie ich sehe hast du einen")
say("Schrumpfkopf. Mit ihm lass ich")
say("dich passieren.")
say("Wenn du willst.")
local s = select("Ja", "Nein")
if s==2 then return end
if pc.count_item(30320) >= 1 then
pc.remove_item(30320, 1)
pc.warp(5771239, 5875834)
end
end
end
when 2598.kill with pc.get_map_index() == 300 begin
notice_in_map("Ihr habt Azreal getötet, gut gemacht!")
pc.give_item2(91057,1)
pc.warp(3147, 13191)
end
end
end
|
|
|
05/20/2012, 22:21
|
#5765
|
elite*gold: 0
Join Date: Nov 2010
Posts: 187
Received Thanks: 99
|
PHP Code:
quest dckammer begin
state start begin
when 30122.chat."Die Catacomben" begin
say_title(mob_name(30122))
say("Du Willst also in den Bossraum?")
say("Sei gewarnt Azrael ist nicht gut")
say("auf Fremde zu sprechen.")
if pc.count_item(30320) < 1 then
say("Du benötigst einen Schrumpfkopf")
say("zum passieren! Du erhälst ihn")
say("von Seon-Hae!")
wait()
d.exit_all()
else
say("Oh wie ich sehe hast du einen")
say("Schrumpfkopf. Mit ihm lass ich")
say("dich passieren.")
say("Wenn du willst.")
local s = select("Ja", "Nein")
if s == 2 then
return
end
if s == 1 then
pc.remove_item(30320, 1)
pc.warp(5771239, 5875834)
end
end
end
when 2598.kill with pc.get_map_index() == 300 begin
notice_in_map("Ihr habt Azreal getötet, gut gemacht!")
pc.give_item2(91057,1)
pc.warp(3147, 13191)
end
end
end
Wenn die Befehle stimmen, sollte es nun gehen...
Fehler lag bei der Auswahl
|
|
|
05/21/2012, 21:37
|
#5766
|
elite*gold: 0
Join Date: Aug 2011
Posts: 336
Received Thanks: 37
|
PHP Code:
quest berufauswahl begin state start begin when login or levelup with pc.get_level() >= 5 begin set_state(beruf) end end state beruf begin when letter begin send_letter("Beruf") end when button or info begin say("Guten Tag.") say("Gehe zum Waffenhändler, er kann dir ein Beruf erlernen") end when 9001.chat."Beruf" begin say_title("Wähle deinen Beruf:") say("Tank:") say("1000 HP 20 Stärke") say(" ") say("Assasinne:") say("20 Int und 20 Deff") say(" ") say("Heiler:") say("1500 Mana 15 INT") say(" ") say("Supporter:") say("500 HP und Mana 25 INT") say(" ") say("Magier:") say("1000 Mana 25 Int") local s=select("Tank","Assassine","Heiler","Supporter","Magier") if s==1 then affect.add_collect(apply.MAX_HP, 1000, 60*60*24*365*60) affect.add_collect(apply.STR, 20, 60*60*24*365*60) chat("Du bist jetzt ein Tank. Du bekommst 1000 HP und 20 Stärkepunkte.") set_state(__COMPLETE__) elseif s==2 then affect.add_collect(apply.DEX, 20, 60*60*24*365*60) affect.add_collect(apply.INT, 20, 60*60*24*365*60) chat("Du bist jetzt ein Assassine. Du bekommst 20 Int und 20 DEX Punkte.") set_state(__COMPLETE__) elseif s==3 then affect.add_collect(apply.MAX_SP, 1500, 60*60*24*365*60) affect.add_collect(apply.INT, 15, 60*60*24*365*60) chat("Du bist jetzt ein Heiler. Du bekommst 1500 Mana und 15 INT Punkte") set_state(__COMPLETE__) elseif s==4 then affect.add_collect(apply.MAX_HP, 500, 60*60*24*365*60) affect.add_collect(apply.MAX_SP, 500, 60*60*24*365*60) affect.add_collect(apply.INT, 25, 60*60*24*365*60) chat("Du bist jetzt ein Supporter. Du bekommst 500 HP und MP und 25 INT Punkte.") set_state(__COMPLETE__) elseif s==5 then affect.add_collect(apply.MAX_SP, 1000, 60*60*24*365*60) affect.add_collect(apply.INT, 25, 60*60*24*365*60) chat("Du bist jetzt ein Magier. Du bekommst 1000 Mana und 25 INT Punkte.") set_state(__COMPLETE__) end end end state __COMPLETE__ begin end end
könnte mir jemand das "weiter" ab hier einbauen:
PHP Code:
quest berufauswahl begin state start begin when login or levelup with pc.get_level() >= 5 begin set_state(beruf) end end state beruf begin when letter begin send_letter("Beruf") end when button or info begin say("Guten Tag.") say("Gehe zum Waffenhändler, er kann dir ein Beruf erlernen") end when 9001.chat."Beruf" begin say_title("Wähle deinen Beruf:") say("Tank:") say("1000 HP 20 Stärke") say(" ") say("Assasinne:") say("20 Int und 20 Deff") say(" ") say("Heiler:") say("1500 Mana 15 INT") say(" ") say("Supporter:") say("500 HP und Mana 25 INT") say(" ") say("Magier:") say("1000 Mana 25 Int")
PHP Code:
local s=select("Tank","Assassine","Heiler","Supporter","Magier") if s==1 then affect.add_collect(apply.MAX_HP, 1000, 60*60*24*365*60) affect.add_collect(apply.STR, 20, 60*60*24*365*60) chat("Du bist jetzt ein Tank. Du bekommst 1000 HP und 20 Stärkepunkte.") set_state(__COMPLETE__) elseif s==2 then affect.add_collect(apply.DEX, 20, 60*60*24*365*60) affect.add_collect(apply.INT, 20, 60*60*24*365*60) chat("Du bist jetzt ein Assassine. Du bekommst 20 Int und 20 DEX Punkte.") set_state(__COMPLETE__) elseif s==3 then affect.add_collect(apply.MAX_SP, 1500, 60*60*24*365*60) affect.add_collect(apply.INT, 15, 60*60*24*365*60) chat("Du bist jetzt ein Heiler. Du bekommst 1500 Mana und 15 INT Punkte") set_state(__COMPLETE__) elseif s==4 then affect.add_collect(apply.MAX_HP, 500, 60*60*24*365*60) affect.add_collect(apply.MAX_SP, 500, 60*60*24*365*60) affect.add_collect(apply.INT, 25, 60*60*24*365*60) chat("Du bist jetzt ein Supporter. Du bekommst 500 HP und MP und 25 INT Punkte.") set_state(__COMPLETE__) elseif s==5 then affect.add_collect(apply.MAX_SP, 1000, 60*60*24*365*60) affect.add_collect(apply.INT, 25, 60*60*24*365*60) chat("Du bist jetzt ein Magier. Du bekommst 1000 Mana und 25 INT Punkte.") set_state(__COMPLETE__) end end end state __COMPLETE__ begin end end
also das er so eine nächste seite macht
|
|
|
05/22/2012, 18:53
|
#5767
|
elite*gold: 1
Join Date: Mar 2011
Posts: 180
Received Thanks: 10
|
kann jemand vllt die quest umschreiben damit man ein npc anklickt und ausuchen weche king man will?
----------------------------------
-- Teil einer Karte , ItemID 30128
-- Vergibt King-, Königsrüstungen
----------------------------------
quest give_king begin
state start begin
when 30128.use begin
say_title("Die Könige")
say("")
say("Dieser Teil der Karte wird dich zu den")
say("Königsrüstung führen, die schon vor vielen")
say("Jahren von Kaiser Seon-Hwang versteckt wurden.")
say("Nicht viele kennen den Ort dieser Rüstungen.")
say("Behalten ihn deshalb besser für dich!")
local w=select("Weiter","Abbrechen")
if w == 1 then
say_title("Die Könige")
say("")
say_reward("Obwohl die Karte schon sehr alt und zerrissen ist,")
say_reward("konntest du sie noch lesen. Wähle nun deine Klasse.")
say("")
local c=select("Krieger", "Sura", "Ninja", "Schamane", "Abbrechen")
if c == 1 then
say_title("Die Könige")
say("")
say("Bist du dir sicher dass du die Königsrüstung")
say("für Krieger haben möchtest?")
say_item("Hwang-Rüstung", 11971, "")
say("")
local sub1=select("Ja","Nein")
if sub1 == 1 then
say_title("Die Könige")
say("")
say("Beim aufheben der Königsrüstung ist die Karte")
say("leider zerissen und ist nun nichtmehr brauchbar.")
say("")
say_reward("Königsrüstung für Krieger erhalten.")
pc.give_item2("11971", 1)
pc.removeitem("30128", 1)
elseif sub1 == 2 then
return
end
elseif c == 2 then
say_title("Die Könige")
say("")
say("Bist du dir sicher dass du die Königsrüstung")
say("für Sura haben möchtest?")
say_item("Zin-Hwang Rüstung", 11973, "")
say("")
local sub2=select("Ja","Nein")
if sub2 == 1 then
say_title("Die Könige")
say("")
say("Beim aufheben der Königsrüstung ist die Karte")
say("leider zerissen und ist nun nichtmehr brauchbar.")
say("")
say_reward("Königsrüstung für Sura erhalten.")
pc.give_item2("11973", 1)
pc.removeitem("30128", 1)
elseif sub2 == 2 then
return
end
elseif c == 3 then
say_title("Die Könige")
say("")
say("Bist du dir sicher dass du die Königsrüstung")
say("für Ninja haben möchtest?")
say_item("Rote Hwang-Rüstung", 11972, "")
say("")
local sub3=select("Ja","Nein")
if sub3 == 1 then
say_title("Die Könige")
say("")
say("Beim aufheben der Königsrüstung ist die Karte")
say("leider zerissen und ist nun nichtmehr brauchbar.")
say("")
say_reward("Königsrüstung für Ninja erhalten.")
pc.give_item2("11972", 1)
pc.removeitem("30128", 1)
elseif sub3 == 2 then
return
end
elseif c == 4 then
say_title("Die Könige")
say("")
say("Bist du dir sicher dass du die Königsrüstung")
say("für Schamanen haben möchtest?")
say_item("Sang-Hwang Rüstung", 11974, "")
say("")
local sub4=select("Ja","Nein")
if sub4 == 1 then
say_title("Die Könige")
say("")
say("Beim aufheben der Königsrüstung ist die Karte")
say("leider zerissen und ist nun nichtmehr brauchbar.")
say("")
say_reward("Königsrüstung für Schamanen erhalten.")
pc.give_item2("11974", 1)
pc.removeitem("30128", 1)
elseif sub4 == 2 then
return
end
elseif c == 5 then
return
end
elseif w==2 then
return
end
end
end
end
|
|
|
05/22/2012, 19:22
|
#5768
|
elite*gold: 0
Join Date: Nov 2010
Posts: 187
Received Thanks: 99
|
@DarkNess
PHP Code:
quest berufauswahl begin state start begin when login or levelup with pc.get_level() >= 5 begin set_state( beruf ) end end state beruf begin when letter begin send_letter("Beruf") end when button or info begin say("Guten Tag.") say("Gehe zum Waffenhändler, er kann dir ein Beruf erlernen") end when 9001.chat."Beruf" begin say_title("Wähle deinen Beruf:") say("Tank:") say("1000 HP 20 Stärke") say(" ") say("Assasinne:") say("20 Int und 20 Deff") say(" ") say("Heiler:") say("1500 Mana 15 INT") say(" ") say("Supporter:") say("500 HP und Mana 25 INT") say(" ") say("Magier:") say("1000 Mana 25 Int") wait() say_title("Wähle deinen Beruf:") say("") say_reward("Welcher ist dein Wunschberuf?") local s=select("Tank","Assassine","Heiler","Supporter","Magier") if s==1 then affect.add_collect(apply.MAX_HP, 1000, 60*60*24*365*60) affect.add_collect(apply.STR, 20, 60*60*24*365*60) chat("Du bist jetzt ein Tank. Du bekommst 1000 HP und 20 Stärkepunkte.") set_state(__COMPLETE__) elseif s==2 then affect.add_collect(apply.DEX, 20, 60*60*24*365*60) affect.add_collect(apply.INT, 20, 60*60*24*365*60) chat("Du bist jetzt ein Assassine. Du bekommst 20 Int und 20 DEX Punkte.") set_state(__COMPLETE__) elseif s==3 then affect.add_collect(apply.MAX_SP, 1500, 60*60*24*365*60) affect.add_collect(apply.INT, 15, 60*60*24*365*60) chat("Du bist jetzt ein Heiler. Du bekommst 1500 Mana und 15 INT Punkte") set_state(__COMPLETE__) elseif s==4 then affect.add_collect(apply.MAX_HP, 500, 60*60*24*365*60) affect.add_collect(apply.MAX_SP, 500, 60*60*24*365*60) affect.add_collect(apply.INT, 25, 60*60*24*365*60) chat("Du bist jetzt ein Supporter. Du bekommst 500 HP und MP und 25 INT Punkte.") set_state(__COMPLETE__) elseif s==5 then affect.add_collect(apply.MAX_SP, 1000, 60*60*24*365*60) affect.add_collect(apply.INT, 25, 60*60*24*365*60) chat("Du bist jetzt ein Magier. Du bekommst 1000 Mana und 25 INT Punkte.") set_state(__COMPLETE__) end end end state __COMPLETE__ begin end end
War mal so frei und hab nach dem "Weiter" noch eine Abfrage eingebaut, damit die folgende Seite nicht so leer aussieht. Kannst du natürlich auch wieder rausnehmen 
__________________________________________________ _____________________
@KingAura
PHP Code:
quest give_king begin state start begin when 30128.use begin say_title("Die Könige") say("") say("Dieser Teil der Karte wird dich zu den") say("Königsrüstung führen, die schon vor vielen") say("Jahren von Kaiser Seon-Hwang versteckt wurden.") say("Nicht viele kennen den Ort dieser Rüstungen.") say("Behalten ihn deshalb besser für dich!") local w = select("Weiter","Abbrechen") if w == 2 then return end if w == 1 then if pc.count_item("30128") >= 1 then say_title("Die Könige") say("") say_reward("Obwohl die Karte schon sehr alt und zerrissen ist,") say_reward("konntest du sie noch lesen. Wähle nun deine Klasse.") say("") local c = select("Krieger", "Sura", "Ninja", "Schamane", "Abbrechen") if c == 1 then say_title("Die Könige") say("") say("Bist du dir sicher dass du die Königsrüstung") say("für Krieger haben möchtest?") say_item("Hwang-Rüstung", 11971, "") say("") local sub1=select("Ja","Nein") if sub1 == 1 then say_title("Die Könige") say("") say("Beim aufheben der Königsrüstung ist die Karte") say("leider zerissen und ist nun nichtmehr brauchbar.") say("") say_reward("Königsrüstung für Krieger erhalten.") pc.give_item2("11971", 1) pc.removeitem("30128", 1) elseif sub1 == 2 then return end elseif c == 2 then say_title("Die Könige") say("") say("Bist du dir sicher dass du die Königsrüstung") say("für Sura haben möchtest?") say_item("Zin-Hwang Rüstung", 11973, "") say("") local sub2=select("Ja","Nein") if sub2 == 1 then say_title("Die Könige") say("") say("Beim aufheben der Königsrüstung ist die Karte") say("leider zerissen und ist nun nichtmehr brauchbar.") say("") say_reward("Königsrüstung für Sura erhalten.") pc.give_item2("11973", 1) pc.removeitem("30128", 1) elseif sub2 == 2 then return end elseif c == 3 then say_title("Die Könige") say("") say("Bist du dir sicher dass du die Königsrüstung") say("für Ninja haben möchtest?") say_item("Rote Hwang-Rüstung", 11972, "") say("") local sub3=select("Ja","Nein") if sub3 == 1 then say_title("Die Könige") say("") say("Beim aufheben der Königsrüstung ist die Karte") say("leider zerissen und ist nun nichtmehr brauchbar.") say("") say_reward("Königsrüstung für Ninja erhalten.") pc.give_item2("11972", 1) pc.removeitem("30128", 1) elseif sub3 == 2 then return end elseif c == 4 then say_title("Die Könige") say("") say("Bist du dir sicher dass du die Königsrüstung") say("für Schamanen haben möchtest?") say_item("Sang-Hwang Rüstung", 11974, "") say("") local sub4=select("Ja","Nein") if sub4 == 1 then say_title("Die Könige") say("") say("Beim aufheben der Königsrüstung ist die Karte") say("leider zerissen und ist nun nichtmehr brauchbar.") say("") say_reward("Königsrüstung für Schamanen erhalten.") pc.give_item2("11974", 1) pc.removeitem("30128", 1) elseif sub4 == 2 then return end elseif c == 5 then return end else say("Dir fehlt ein Item") end end end end end
Hab auch eine Abfrage eingebaut, ob er das Item, was beim King geben entzogen wird auch im Inventar hat. Sollte so klappen, sonst einfach fehler posten. Vielleicht hab ich mich ja irgendwo vertippt/zählt.
P.S.: In Zukunft Pls im PHP-Code Posten...
Also:
[ PHP]
Quest
[ /PHP]
Ohne Leerzeichen natürlich.
King regards
|
|
|
05/22/2012, 20:58
|
#5769
|
elite*gold: 0
Join Date: Jun 2011
Posts: 81
Received Thanks: 10
|
HELP :-/
Code:
quest handler begin
state start begin
end
state run begin
when letter begin
send_letter("Status povolání ")
pc.setqf("aufstieg", 1)
end
when button or info begin
say_title("Status povolání ")
say("Tvé povolání:")
say_reward("Obchodník")
say("Postavení:")
if pc.getqf("aufstieg")==1 then
say_reward("Pouliční obchodník")
say("Tvé výhody:")
say_reward("+5% na spadnutí všech předmětů ")
elseif pc.getqf("aufstieg")==2 then
say_reward("Maloobchodník")
say("Tvé výhody:")
say_reward("+10% na spadnutí všech předmětů ")
elseif pc.getqf("aufstieg")==3 then
say_reward("Slušný obchodník")
say("Tvé výhody:")
say_reward("+15% na spadnutí všech předmětů ")
elseif pc.getqf("aufstieg")==4 then
say_reward("Velkoobchodník")
say("Tvé výhody:")
say_reward("+20% na spadnutí všech předmětů ")
elseif pc.getqf("aufstieg")==5 then
say_reward("Král obchodu")
say("Tvé výhody:")
say_reward("+25% na spadnutí všech předmětů ")
end
end
when login or levelup begin
if pc.get_level()>=35 and pc.getqf("aufstieg")==1 then
set_state(handlererste)
elseif pc.get_level()>=45 and pc.getqf("aufstieg")==2 then
set_state(handlerzweite)
elseif pc.get_level()>=65 and pc.getqf("aufstieg")==3 then
set_state(handlerdritte)
elseif pc.get_level()>=85 and pc.getqf("aufstieg")==4 then
set_state(handlervierte)
end
end
end
state handlererste begin
when letter begin
if pc.getqf("letter")==0 then
send_letter("Povýšení!")
local v=find_npc_by_vnum(20355)
if 0!=v then
target.vid("target", v, "Velitel")
end
elseif pc.getqf("letter")==1 then
send_letter("Status povolání ")
end
end
when button or info begin
if pc.getqf("letter")==0 then
say_title("Povýšení!")
say("Zajdi za velitelem, má pro")
say("tebe doboru zprávu.")
elseif pc.getqf("letter")==1 then
say_title("Status povolání ")
say("Tvé povolání:")
say_reward("Obchodník")
say("Tvé postavení:")
say_reward("Pouliční obchodník")
say("Tvé výhody:")
say_reward("+5% na spadnutí všech předmětů ")
end
end
when target.target.click begin
say_title("Velitel")
say("Ahoj "..pc.get_name())
say("Konečně se potkáváme. ")
say("Myslím si, že si velmi tvrdě pracoval")
say("a že si zasloužíš povýšit.")
say("Ale nespěchej tolik,")
say("nejdříve ještě musíš splnit takový malý úkol.")
say("Pro povýšení našetři 50.000.000 Yangů ")
say("a sežeň Bílou perlu.")
say("")
if pc.get_gold()>=1949999999 then
say_reward("Máš už teď hodně Yangů,")
say_reward("ale i tak můžeš úkol")
say_reward("přijmout.")
return
end
say("Hodně štěstí!")
wait()
clear_letter()
send_letter("Status povolání ")
pc.setqf("yang", pc.get_gold())
pc.setqf("letter", 1)
q.set_counter("Obrat peněz", 0)
target.delete("target")
end
when login begin
local yangold = pc.getqf("yang")
local yang = pc.get_gold()
local aktuell = yang - yangold
q.set_counter("Obrat peněz", aktuell)
end
end
when 20355.chat."Povýšení!" begin
say_title("Velitel")
if pc.count_item("27992")==0 then
say("Ještě musíš sehnat Bílou perlu")
say("a donést mi ji.")
say("Snaž se být co nejrychlejší.")
say("")
say_reward("Potřebuješ Bílou perlu.")
return
end
local yangold = pc.getqf("yang")
local yang = pc.get_gold()
local aktuell = yang - yangold
if aktuell<50000000 then
say("Máš příliš málo Yangů, aby si mohl")
say("být povýšen.")
say("Si už celkem zkušený obchodník,")
say_reward("tak chvátej a našetři")
say_reward("50.000.000 Yangů.")
return
end
say("Páni, překvapil si mne.")
say("Zvládnul si vše tak, jak jsem")
say("ti zadal a proto si opravdu zaloužíš ")
say("být povýšen na:")
say_reward("Maloobchodníka")
say("Gratuluji!")
say("Brzy se jistě staneš profesionálním")
say("obchodníkem!)
clear_letter()
affect.add_collect(apply.GOLD_DOUBLE_BONUS,5,60*60*24*365*4)
affect.add_collect(apply.ITEM_DROP_BONUS,5,60*60*24*365*4)
affect.add_collect(apply.EXP_DOUBLE_BONUS,5,60*60*24*365*4)
affect.add_collect(apply.GOLD_DOUBLE_BONUS,5,60*60*24*365*4)
pc.setqf("aufstieg", 2)
pc.remove_item("27992", 1)
pc.setqf("letter", 0)
set_state(run)
end
end
state handlerzweite begin
when letter begin
if pc.getqf("letter")==0 then
send_letter("Povýšení!")
local v=find_npc_by_vnum(20355)
if 0!=v then
target.vid("target", v, "Velitel")
end
elseif pc.getqf("letter")==1 then
send_letter("Status povolání ")
end
end
when button or info begin
if pc.getqf("letter")==0 then
say_title("Povýšení!")
say("Zajdi za velitelem.")
say("Má pro tebe dobrou zprávu.")
elseif pc.getqf("letter")==1 then
say_title("Status povolání ")
say("Tvé povolání:")
say_reward("Obchodník")
say("Tvé postavení:")
say_reward("Maloobchodník")
say("Tvé výhody:")
say_reward("+10% na spadnutí všech předmětů ")
end
end
when target.target.click begin
say_title("Velitel")
say("Ahoj "..pc.get_name())
say("Konečně se zase potkáváme.")
say("Tvrdě si pracoval a mám pro tebe")
say("další lákavou nabídku.")
say("Budeš povýšen, zda-li")
say("seženeš 100.000.000 Yangů ")
say("a 3x Modrou perlu.")
if pc.get_gold()>=1899999999 then
say_reward("Již teď máš dostatek Yangů,")
say_reward("ale i tak můžeš přijmout")
say_reward("tento úkol.")
return
end
say("Hodně štěstí!")
wait()
clear_letter()
send_letter("Status povolání ")
pc.setqf("yang", pc.get_gold())
pc.setqf("letter", 1)
q.set_counter("Obrat peněz", 0)
target.delete("target")
end
when login begin
local yangold = pc.getqf("yang")
local yang = pc.get_gold()
local aktuell = yang - yangold
q.set_counter("Obrat peněz", aktuell)
end
end
when 20355.chat."Povýšení!" begin
say_title("Velitel")
if pc.count_item("27993")<3 then
say("Ještě bohužel nemáš 3x Modrou perlu")
say("a jestliže ji neseženeš,")
say("nemůžeš být povýšen.")
say("Utíkej a sháněj.")
return
end
local yangold = pc.getqf("yang")
local yang = pc.get_gold()
local aktuell = yang - yangold
if aktuell<100000000 then
say("Bohužel máš příliš málo Yangů.")
say("Jestliže chceš dokázat, že si")
say("dobrý obchodník,")
say_reward("sežeň 100.000.000 Yangů!")
return
end
say("Páni, překvapil si mne!")
say("Zvládl si vše tak, jak jsem")
say("ti zadal...")
say("Byl si povýšen na:")
say_reward("Slušného obchodníka")
say("Gratuluji!")
say("Takto pokračuj na cestě stát se")
say("správným obchodníkem.")
clear_letter()
affect.add_collect(apply.GOLD_DOUBLE_BONUS,5,60*60*24*365*4)
affect.add_collect(apply.ITEM_DROP_BONUS,5,60*60*24*365*4)
affect.add_collect(apply.EXP_DOUBLE_BONUS,5,60*60*24*365*4)
affect.add_collect(apply.GOLD_DOUBLE_BONUS,5,60*60*24*365*4)
pc.setqf("aufstieg", 3)
pc.setqf("letter", 0)
pc.remove_item("27993", 3)
set_state(run)
end
end
state handlerdritte begin
when letter begin
if pc.getqf("letter")==0 then
send_letter("Povýšení!")
local v=find_npc_by_vnum(20355)
if 0!=v then
target.vid("target", v, "Velitel")
end
elseif pc.getqf("letter")==1 then
send_letter("Status povolání ")
end
end
when button or info begin
if pc.getqf("letter")==0 then
say_title("Povýšení!")
say("Zajdi za velitelem.")
say("Má pro tebe dobrou zprávu.")
elseif pc.getqf("letter")==1 then
say_title("Status povolání ")
say("Tvé povolání:")
say_reward("Obchodník")
say("Tvé postavení:")
say_reward("Slušný obchodník")
say("Tvé výhody:")
say_reward("+15% na spadnutí všech předmětů ")
end
end
when target.target.click begin
say_title("Velitel")
say("Ahoj "..pc.get_name())
say("Konečně se zase potkáváme.")
say("Velmi tvrdě si pracoval a zasloužíš ")
say("si povýšení.")
say("Ale nejdříve musíš splnit už celkem")
say("složitý úkol.")
say("Tvůj obrat Yangů musí být")
say("250.000.000 Yangů a věcí, kterou mi doneseš,")
say("bude 5x Krvavě rudá perla.")
if pc.get_gold()>=1974999999 then
say_reward("Už nyní máš hodně Yangů,")
say_reward("ale i tak můžeš úkol")
say_reward("přijmout.")
return
end
say("Hodně štěstí!")
wait()
clear_letter()
send_letter("Status povolání ")
pc.setqf("yang", pc.get_gold())
pc.setqf("letter", 1)
q.set_counter("Obrat peněz", 0)
target.delete("target")
end
when login begin
local yangold = pc.getqf("yang")
local yang = pc.get_gold()
local aktuell = yang - yangold
q.set_counter("Obrat peněz", aktuell)
end
end
when 20355.chat."Povýšení!" begin
say_title("Velitel")
if pc.count_item("27994")<5 then
say("Aby si mohl být povýšen,")
say("potřebuješ 5x Krvavě rudou perlu.")
say("Utíkej a sežeň ji")
say("co nejrychleji.")
return
end
local yangold = pc.getqf("yang")
local yang = pc.get_gold()
local aktuell = yang - yangold
if aktuell<250000000 then
say("Je to těžší než si čekal že?")
say("Aby si mohl být povýšen,")
say("musíš mít obrat Yangů ")
say_reward("250.000.000!")
return
end
say("Páni, překvapil si mne...")
say("Splnil se vše podle mého")
say("zadání, a proto budeš ")
say("povýšen na:")
say_reward("Velkoobchodníka")
say("Gratuluji!")
say("Vedeš si dobře, již brzy")
say("budeš zajisté nejlepší obchodník.")
clear_letter()
affect.add_collect(apply.GOLD_DOUBLE_BONUS,5,60*60*24*365*4)
affect.add_collect(apply.ITEM_DROP_BONUS,5,60*60*24*365*4)
affect.add_collect(apply.EXP_DOUBLE_BONUS,5,60*60*24*365*4)
affect.add_collect(apply.GOLD_DOUBLE_BONUS,5,60*60*24*365*4)
pc.setqf("aufstieg", 4)
pc.setqf("letter", 0)
pc.remove_item("27994", 5)
set_state(run)
end
end
state handlervierte begin
when letter begin
if pc.getqf("letter")==0 then
send_letter("Povýšení!")
local v=find_npc_by_vnum(20355)
if 0!=v then
target.vid("target", v, "Velitel")
end
elseif pc.getqf("letter")==1 then
send_letter("Status povolání ")
end
end
when button or info begin
if pc.getqf("letter")==0 then
say_title("Povýšení!")
say("Zajdi za velitelem.")
say("Má pro tebe dobrou zprávu.")
elseif pc.getqf("letter")==1 then
say_title("Status povolání ")
say("Tvé povolání:")
say_reward("Obchodník")
say("Tvé postavení:")
say_reward("Velkoobchodník")
say("Tvé výhody:")
say_reward("+20% na spadnutí všech předmětů ")
end
end
when target.target.click begin
say_title("Velitel")
say("Ahoj "..pc.get_name())
say("Konečně se zase potkáváme..")
say("Velmi tvrdě si pracoval a já si myslím,")
say("že by si mohl být povýšen.")
say("Ale nejdříve musíš splnit")
say("velmi těžký úkol.")
say("Tvůj obrat Yangů musí být vyšší,")
say("než 500.000.000 Yangů a musíš sehnat")
say("10x Krvavě rudou perlu.")
if pc.get_gold()>=1949999999 then
say_reward("Už nyní máš dostatek Yangů,")
say_reward("ale i tak můžeš tento úkol")
say_reward("přijmout.")
return
end
say("Hodně štěstí!")
wait()
clear_letter()
send_letter("Status povolání ")
pc.setqf("yang", pc.get_gold())
pc.setqf("letter", 1)
q.set_counter("Obrat peněz", 0)
target.delete("target")
end
when login begin
local yangold = pc.getqf("yang")
local yang = pc.get_gold()
local aktuell = yang - yangold
q.set_counter("Obrat peněz", aktuell)
end
end
when 20355.chat."Povýšení!" begin
say_title("Velitel")
if pc.count_item("27994")<10 then
say("Musíš ještě sehnat")
say("10x Krvavě rudou perlu.")
say("Utíkej a co nejrychleji")
say("ji sežeň.")
return
end
local yangold = pc.getqf("yang")
local yang = pc.get_gold()
local aktuell = yang - yangold
if aktuell<500000000 then
say("Máš bohužel příliš málo Yangů na to,")
say("aby sis zasloužol povýšení.")
say("Jestli chceš být povýšen, tvůj obrat musí být")
say_reward("500.000.000 Yangů!")
return
end
say("Páni, překvapil si mne...")
say("Splnil si vše podle mého zadání,")
say("a proto si byl povýšen na:")
say_reward("Krále obchodu")
say("Nyní budeš mít ve městě ")
say("respekt.")
say("Gratuluji!")
clear_letter()
affect.add_collect(apply.GOLD_DOUBLE_BONUS,5,60*60*24*365*4)
affect.add_collect(apply.ITEM_DROP_BONUS,5,60*60*24*365*4)
affect.add_collect(apply.EXP_DOUBLE_BONUS,5,60*60*24*365*4)
affect.add_collect(apply.GOLD_DOUBLE_BONUS,5,60*60*24*365*4)
pc.setqf("aufstieg", 5)
pc.setqf("letter", 0)
pc.remove_item("27994", 10)
set_state(run)
end
end
end
Was ist schlecht bitte?
Error ist:
expecting 'state'
obchodnik_vyhody.quest:108:Chyba pri kompilaci obchodnik_vyhody.quest
Danke...
|
|
|
05/22/2012, 21:32
|
#5770
|
elite*gold: 150
Join Date: Sep 2009
Posts: 855
Received Thanks: 486
|
Quote:
Originally Posted by skurto
Code:
quest handler begin
state start begin
end
state run begin
when letter begin
send_letter("Status povolání ")
pc.setqf("aufstieg", 1)
end
when button or info begin
say_title("Status povolání ")
say("Tvé povolání:")
say_reward("Obchodník")
say("Postavení:")
if pc.getqf("aufstieg")==1 then
say_reward("Pouliční obchodník")
say("Tvé výhody:")
say_reward("+5% na spadnutí všech předmětů ")
elseif pc.getqf("aufstieg")==2 then
say_reward("Maloobchodník")
say("Tvé výhody:")
say_reward("+10% na spadnutí všech předmětů ")
elseif pc.getqf("aufstieg")==3 then
say_reward("Slušný obchodník")
say("Tvé výhody:")
say_reward("+15% na spadnutí všech předmětů ")
elseif pc.getqf("aufstieg")==4 then
say_reward("Velkoobchodník")
say("Tvé výhody:")
say_reward("+20% na spadnutí všech předmětů ")
elseif pc.getqf("aufstieg")==5 then
say_reward("Král obchodu")
say("Tvé výhody:")
say_reward("+25% na spadnutí všech předmětů ")
end
end
when login or levelup begin
if pc.get_level()>=35 and pc.getqf("aufstieg")==1 then
set_state(handlererste)
elseif pc.get_level()>=45 and pc.getqf("aufstieg")==2 then
set_state(handlerzweite)
elseif pc.get_level()>=65 and pc.getqf("aufstieg")==3 then
set_state(handlerdritte)
elseif pc.get_level()>=85 and pc.getqf("aufstieg")==4 then
set_state(handlervierte)
end
end
end
state handlererste begin
when letter begin
if pc.getqf("letter")==0 then
send_letter("Povýšení!")
local v=find_npc_by_vnum(20355)
if 0!=v then
target.vid("target", v, "Velitel")
end
elseif pc.getqf("letter")==1 then
send_letter("Status povolání ")
end
end
when button or info begin
if pc.getqf("letter")==0 then
say_title("Povýšení!")
say("Zajdi za velitelem, má pro")
say("tebe doboru zprávu.")
elseif pc.getqf("letter")==1 then
say_title("Status povolání ")
say("Tvé povolání:")
say_reward("Obchodník")
say("Tvé postavení:")
say_reward("Pouliční obchodník")
say("Tvé výhody:")
say_reward("+5% na spadnutí všech předmětů ")
end
end
when target.target.click begin
say_title("Velitel")
say("Ahoj "..pc.get_name())
say("Konečně se potkáváme. ")
say("Myslím si, že si velmi tvrdě pracoval")
say("a že si zasloužíš povýšit.")
say("Ale nespěchej tolik,")
say("nejdříve ještě musíš splnit takový malý úkol.")
say("Pro povýšení našetři 50.000.000 Yangů ")
say("a sežeň Bílou perlu.")
say("")
if pc.get_gold()>=1949999999 then
say_reward("Máš už teď hodně Yangů,")
say_reward("ale i tak můžeš úkol")
say_reward("přijmout.")
return
end
say("Hodně štěstí!")
wait()
clear_letter()
send_letter("Status povolání ")
pc.setqf("yang", pc.get_gold())
pc.setqf("letter", 1)
q.set_counter("Obrat peněz", 0)
target.delete("target")
end
when login begin
local yangold = pc.getqf("yang")
local yang = pc.get_gold()
local aktuell = yang - yangold
q.set_counter("Obrat peněz", aktuell)
end
end
when 20355.chat."Povýšení!" begin
say_title("Velitel")
if pc.count_item("27992")==0 then
say("Ještě musíš sehnat Bílou perlu")
say("a donést mi ji.")
say("Snaž se být co nejrychlejší.")
say("")
say_reward("Potřebuješ Bílou perlu.")
return
end
local yangold = pc.getqf("yang")
local yang = pc.get_gold()
local aktuell = yang - yangold
if aktuell<50000000 then
say("Máš příliš málo Yangů, aby si mohl")
say("být povýšen.")
say("Si už celkem zkušený obchodník,")
say_reward("tak chvátej a našetři")
say_reward("50.000.000 Yangů.")
return
end
say("Páni, překvapil si mne.")
say("Zvládnul si vše tak, jak jsem")
say("ti zadal a proto si opravdu zaloužíš ")
say("být povýšen na:")
say_reward("Maloobchodníka")
say("Gratuluji!")
say("Brzy se jistě staneš profesionálním")
say("obchodníkem!)
clear_letter()
affect.add_collect(apply.GOLD_DOUBLE_BONUS,5,60*60*24*365*4)
affect.add_collect(apply.ITEM_DROP_BONUS,5,60*60*24*365*4)
affect.add_collect(apply.EXP_DOUBLE_BONUS,5,60*60*24*365*4)
affect.add_collect(apply.GOLD_DOUBLE_BONUS,5,60*60*24*365*4)
pc.setqf("aufstieg", 2)
pc.remove_item("27992", 1)
pc.setqf("letter", 0)
set_state(run)
end
end
state handlerzweite begin
when letter begin
if pc.getqf("letter")==0 then
send_letter("Povýšení!")
local v=find_npc_by_vnum(20355)
if 0!=v then
target.vid("target", v, "Velitel")
end
elseif pc.getqf("letter")==1 then
send_letter("Status povolání ")
end
end
when button or info begin
if pc.getqf("letter")==0 then
say_title("Povýšení!")
say("Zajdi za velitelem.")
say("Má pro tebe dobrou zprávu.")
elseif pc.getqf("letter")==1 then
say_title("Status povolání ")
say("Tvé povolání:")
say_reward("Obchodník")
say("Tvé postavení:")
say_reward("Maloobchodník")
say("Tvé výhody:")
say_reward("+10% na spadnutí všech předmětů ")
end
end
when target.target.click begin
say_title("Velitel")
say("Ahoj "..pc.get_name())
say("Konečně se zase potkáváme.")
say("Tvrdě si pracoval a mám pro tebe")
say("další lákavou nabídku.")
say("Budeš povýšen, zda-li")
say("seženeš 100.000.000 Yangů ")
say("a 3x Modrou perlu.")
if pc.get_gold()>=1899999999 then
say_reward("Již teď máš dostatek Yangů,")
say_reward("ale i tak můžeš přijmout")
say_reward("tento úkol.")
return
end
say("Hodně štěstí!")
wait()
clear_letter()
send_letter("Status povolání ")
pc.setqf("yang", pc.get_gold())
pc.setqf("letter", 1)
q.set_counter("Obrat peněz", 0)
target.delete("target")
end
when login begin
local yangold = pc.getqf("yang")
local yang = pc.get_gold()
local aktuell = yang - yangold
q.set_counter("Obrat peněz", aktuell)
end
end
when 20355.chat."Povýšení!" begin
say_title("Velitel")
if pc.count_item("27993")<3 then
say("Ještě bohužel nemáš 3x Modrou perlu")
say("a jestliže ji neseženeš,")
say("nemůžeš být povýšen.")
say("Utíkej a sháněj.")
return
end
local yangold = pc.getqf("yang")
local yang = pc.get_gold()
local aktuell = yang - yangold
if aktuell<100000000 then
say("Bohužel máš příliš málo Yangů.")
say("Jestliže chceš dokázat, že si")
say("dobrý obchodník,")
say_reward("sežeň 100.000.000 Yangů!")
return
end
say("Páni, překvapil si mne!")
say("Zvládl si vše tak, jak jsem")
say("ti zadal...")
say("Byl si povýšen na:")
say_reward("Slušného obchodníka")
say("Gratuluji!")
say("Takto pokračuj na cestě stát se")
say("správným obchodníkem.")
clear_letter()
affect.add_collect(apply.GOLD_DOUBLE_BONUS,5,60*60*24*365*4)
affect.add_collect(apply.ITEM_DROP_BONUS,5,60*60*24*365*4)
affect.add_collect(apply.EXP_DOUBLE_BONUS,5,60*60*24*365*4)
affect.add_collect(apply.GOLD_DOUBLE_BONUS,5,60*60*24*365*4)
pc.setqf("aufstieg", 3)
pc.setqf("letter", 0)
pc.remove_item("27993", 3)
set_state(run)
end
end
state handlerdritte begin
when letter begin
if pc.getqf("letter")==0 then
send_letter("Povýšení!")
local v=find_npc_by_vnum(20355)
if 0!=v then
target.vid("target", v, "Velitel")
end
elseif pc.getqf("letter")==1 then
send_letter("Status povolání ")
end
end
when button or info begin
if pc.getqf("letter")==0 then
say_title("Povýšení!")
say("Zajdi za velitelem.")
say("Má pro tebe dobrou zprávu.")
elseif pc.getqf("letter")==1 then
say_title("Status povolání ")
say("Tvé povolání:")
say_reward("Obchodník")
say("Tvé postavení:")
say_reward("Slušný obchodník")
say("Tvé výhody:")
say_reward("+15% na spadnutí všech předmětů ")
end
end
when target.target.click begin
say_title("Velitel")
say("Ahoj "..pc.get_name())
say("Konečně se zase potkáváme.")
say("Velmi tvrdě si pracoval a zasloužíš ")
say("si povýšení.")
say("Ale nejdříve musíš splnit už celkem")
say("složitý úkol.")
say("Tvůj obrat Yangů musí být")
say("250.000.000 Yangů a věcí, kterou mi doneseš,")
say("bude 5x Krvavě rudá perla.")
if pc.get_gold()>=1974999999 then
say_reward("Už nyní máš hodně Yangů,")
say_reward("ale i tak můžeš úkol")
say_reward("přijmout.")
return
end
say("Hodně štěstí!")
wait()
clear_letter()
send_letter("Status povolání ")
pc.setqf("yang", pc.get_gold())
pc.setqf("letter", 1)
q.set_counter("Obrat peněz", 0)
target.delete("target")
end
when login begin
local yangold = pc.getqf("yang")
local yang = pc.get_gold()
local aktuell = yang - yangold
q.set_counter("Obrat peněz", aktuell)
end
end
when 20355.chat."Povýšení!" begin
say_title("Velitel")
if pc.count_item("27994")<5 then
say("Aby si mohl být povýšen,")
say("potřebuješ 5x Krvavě rudou perlu.")
say("Utíkej a sežeň ji")
say("co nejrychleji.")
return
end
local yangold = pc.getqf("yang")
local yang = pc.get_gold()
local aktuell = yang - yangold
if aktuell<250000000 then
say("Je to těžší než si čekal že?")
say("Aby si mohl být povýšen,")
say("musíš mít obrat Yangů ")
say_reward("250.000.000!")
return
end
say("Páni, překvapil si mne...")
say("Splnil se vše podle mého")
say("zadání, a proto budeš ")
say("povýšen na:")
say_reward("Velkoobchodníka")
say("Gratuluji!")
say("Vedeš si dobře, již brzy")
say("budeš zajisté nejlepší obchodník.")
clear_letter()
affect.add_collect(apply.GOLD_DOUBLE_BONUS,5,60*60*24*365*4)
affect.add_collect(apply.ITEM_DROP_BONUS,5,60*60*24*365*4)
affect.add_collect(apply.EXP_DOUBLE_BONUS,5,60*60*24*365*4)
affect.add_collect(apply.GOLD_DOUBLE_BONUS,5,60*60*24*365*4)
pc.setqf("aufstieg", 4)
pc.setqf("letter", 0)
pc.remove_item("27994", 5)
set_state(run)
end
end
state handlervierte begin
when letter begin
if pc.getqf("letter")==0 then
send_letter("Povýšení!")
local v=find_npc_by_vnum(20355)
if 0!=v then
target.vid("target", v, "Velitel")
end
elseif pc.getqf("letter")==1 then
send_letter("Status povolání ")
end
end
when button or info begin
if pc.getqf("letter")==0 then
say_title("Povýšení!")
say("Zajdi za velitelem.")
say("Má pro tebe dobrou zprávu.")
elseif pc.getqf("letter")==1 then
say_title("Status povolání ")
say("Tvé povolání:")
say_reward("Obchodník")
say("Tvé postavení:")
say_reward("Velkoobchodník")
say("Tvé výhody:")
say_reward("+20% na spadnutí všech předmětů ")
end
end
when target.target.click begin
say_title("Velitel")
say("Ahoj "..pc.get_name())
say("Konečně se zase potkáváme..")
say("Velmi tvrdě si pracoval a já si myslím,")
say("že by si mohl být povýšen.")
say("Ale nejdříve musíš splnit")
say("velmi těžký úkol.")
say("Tvůj obrat Yangů musí být vyšší,")
say("než 500.000.000 Yangů a musíš sehnat")
say("10x Krvavě rudou perlu.")
if pc.get_gold()>=1949999999 then
say_reward("Už nyní máš dostatek Yangů,")
say_reward("ale i tak můžeš tento úkol")
say_reward("přijmout.")
return
end
say("Hodně štěstí!")
wait()
clear_letter()
send_letter("Status povolání ")
pc.setqf("yang", pc.get_gold())
pc.setqf("letter", 1)
q.set_counter("Obrat peněz", 0)
target.delete("target")
end
when login begin
local yangold = pc.getqf("yang")
local yang = pc.get_gold()
local aktuell = yang - yangold
q.set_counter("Obrat peněz", aktuell)
end
end
when 20355.chat."Povýšení!" begin
say_title("Velitel")
if pc.count_item("27994")<10 then
say("Musíš ještě sehnat")
say("10x Krvavě rudou perlu.")
say("Utíkej a co nejrychleji")
say("ji sežeň.")
return
end
local yangold = pc.getqf("yang")
local yang = pc.get_gold()
local aktuell = yang - yangold
if aktuell<500000000 then
say("Máš bohužel příliš málo Yangů na to,")
say("aby sis zasloužol povýšení.")
say("Jestli chceš být povýšen, tvůj obrat musí být")
say_reward("500.000.000 Yangů!")
return
end
say("Páni, překvapil si mne...")
say("Splnil si vše podle mého zadání,")
say("a proto si byl povýšen na:")
say_reward("Krále obchodu")
say("Nyní budeš mít ve městě ")
say("respekt.")
say("Gratuluji!")
clear_letter()
affect.add_collect(apply.GOLD_DOUBLE_BONUS,5,60*60*24*365*4)
affect.add_collect(apply.ITEM_DROP_BONUS,5,60*60*24*365*4)
affect.add_collect(apply.EXP_DOUBLE_BONUS,5,60*60*24*365*4)
affect.add_collect(apply.GOLD_DOUBLE_BONUS,5,60*60*24*365*4)
pc.setqf("aufstieg", 5)
pc.setqf("letter", 0)
pc.remove_item("27994", 10)
set_state(run)
end
end
end
Was ist schlecht bitte?
Error ist:
expecting 'state'
obchodnik_vyhody.quest:108:Chyba pri kompilaci obchodnik_vyhody.quest
Danke... 
|
Try it this way, i changed some things, if there is still an error, just post it.
PHP Code:
quest handler begin
state start begin
when login begin
set_state( run )
end
end
state run begin
when letter begin
send_letter("Status povolání ")
pc.setqf("aufstieg", 1)
end
when button or info begin
say_title("Status povolání ")
say("Tvé povolání:")
say_reward("Obchodník")
say("Postavení:")
if pc.getqf("aufstieg")==1 then
say_reward("Poulicní obchodník")
say("Tvé výhody:")
say_reward("+5% na spadnutí všech predmetu ")
elseif pc.getqf("aufstieg")==2 then
say_reward("Maloobchodník")
say("Tvé výhody:")
say_reward("+10% na spadnutí všech predmetu ")
elseif pc.getqf("aufstieg")==3 then
say_reward("Slušný obchodník")
say("Tvé výhody:")
say_reward("+15% na spadnutí všech predmetu ")
elseif pc.getqf("aufstieg")==4 then
say_reward("Velkoobchodník")
say("Tvé výhody:")
say_reward("+20% na spadnutí všech predmetu ")
elseif pc.getqf("aufstieg")==5 then
say_reward("Král obchodu")
say("Tvé výhody:")
say_reward("+25% na spadnutí všech predmetu ")
end
end
when login or levelup begin
if pc.get_level()>=35 and pc.getqf("aufstieg")==1 then
set_state(handlererste)
elseif pc.get_level()>=45 and pc.getqf("aufstieg")==2 then
set_state(handlerzweite)
elseif pc.get_level()>=65 and pc.getqf("aufstieg")==3 then
set_state(handlerdritte)
elseif pc.get_level()>=85 and pc.getqf("aufstieg")==4 then
set_state(handlervierte)
end
end
end
state handlererste begin
when letter begin
if pc.getqf("letter")==0 then
send_letter("Povýšení!")
local v=find_npc_by_vnum(20355)
if 0!=v then
target.vid("target", v, "Velitel")
end
elseif pc.getqf("letter")==1 then
send_letter("Status povolání ")
end
end
when button or info begin
if pc.getqf("letter")==0 then
say_title("Povýšení!")
say("Zajdi za velitelem, má pro")
say("tebe doboru zprávu.")
elseif pc.getqf("letter")==1 then
say_title("Status povolání ")
say("Tvé povolání:")
say_reward("Obchodník")
say("Tvé postavení:")
say_reward("Poulicní obchodník")
say("Tvé výhody:")
say_reward("+5% na spadnutí všech predmetu ")
end
end
when target.target.click begin
say_title("Velitel")
say("Ahoj "..pc.get_name())
say("Konecne se potkáváme. ")
say("Myslím si, že si velmi tvrde pracoval")
say("a že si zasloužíš povýšit.")
say("Ale nespechej tolik,")
say("nejdríve ješte musíš splnit takový malý úkol.")
say("Pro povýšení našetri 50.000.000 Yangu ")
say("a sežen Bílou perlu.")
say("")
if pc.get_gold()>=1949999999 then
say_reward("Máš už ted hodne Yangu,")
say_reward("ale i tak mužeš úkol")
say_reward("prijmout.")
return
end
say("Hodne štestí!")
wait()
clear_letter()
send_letter("Status povolání ")
pc.setqf("yang", pc.get_gold())
pc.setqf("letter", 1)
q.set_counter("Obrat penez", 0)
target.delete("target")
end
when login begin
local yangold = pc.getqf("yang")
local yang = pc.get_gold()
local aktuell = yang - yangold
q.set_counter("Obrat penez", aktuell)
end
when 20355.chat."Povýšení!" begin
say_title("Velitel")
if pc.count_item("27992")==0 then
say("Ješte musíš sehnat Bílou perlu")
say("a donést mi ji.")
say("Snaž se být co nejrychlejší.")
say("")
say_reward("Potrebuješ Bílou perlu.")
return
end
local yangold = pc.getqf("yang")
local yang = pc.get_gold()
local aktuell = yang - yangold
if aktuell<50000000 then
say("Máš príliš málo Yangu, aby si mohl")
say("být povýšen.")
say("Si už celkem zkušený obchodník,")
say_reward("tak chvátej a našetri")
say_reward("50.000.000 Yangu.")
return
end
say("Páni, prekvapil si mne.")
say("Zvládnul si vše tak, jak jsem")
say("ti zadal a proto si opravdu zaloužíš ")
say("být povýšen na:")
say_reward("Maloobchodníka")
say("Gratuluji!")
say("Brzy se jiste staneš profesionálním")
say("obchodníkem!")
clear_letter()
affect.add_collect(apply.GOLD_DOUBLE_BONUS,5,60*60*24*365*4)
affect.add_collect(apply.ITEM_DROP_BONUS,5,60*60*24*365*4)
affect.add_collect(apply.EXP_DOUBLE_BONUS,5,60*60*24*365*4)
affect.add_collect(apply.GOLD_DOUBLE_BONUS,5,60*60*24*365*4)
pc.setqf("aufstieg", 2)
pc.remove_item("27992", 1)
pc.setqf("letter", 0)
set_state(run)
end
end
state handlerzweite begin
when letter begin
if pc.getqf("letter")==0 then
send_letter("Povýšení!")
local v=find_npc_by_vnum(20355)
if 0!=v then
target.vid("target", v, "Velitel")
end
elseif pc.getqf("letter")==1 then
send_letter("Status povolání ")
end
end
when button or info begin
if pc.getqf("letter")==0 then
say_title("Povýšení!")
say("Zajdi za velitelem.")
say("Má pro tebe dobrou zprávu.")
elseif pc.getqf("letter")==1 then
say_title("Status povolání ")
say("Tvé povolání:")
say_reward("Obchodník")
say("Tvé postavení:")
say_reward("Maloobchodník")
say("Tvé výhody:")
say_reward("+10% na spadnutí všech predmetu ")
end
end
when target.target.click begin
say_title("Velitel")
say("Ahoj "..pc.get_name())
say("Konecne se zase potkáváme.")
say("Tvrde si pracoval a mám pro tebe")
say("další lákavou nabídku.")
say("Budeš povýšen, zda-li")
say("seženeš 100.000.000 Yangu ")
say("a 3x Modrou perlu.")
if pc.get_gold()>=1899999999 then
say_reward("Již ted máš dostatek Yangu,")
say_reward("ale i tak mužeš prijmout")
say_reward("tento úkol.")
return
end
say("Hodne štestí!")
wait()
clear_letter()
send_letter("Status povolání ")
pc.setqf("yang", pc.get_gold())
pc.setqf("letter", 1)
q.set_counter("Obrat penez", 0)
target.delete("target")
end
when login begin
local yangold = pc.getqf("yang")
local yang = pc.get_gold()
local aktuell = yang - yangold
q.set_counter("Obrat penez", aktuell)
end
when 20355.chat."Povýšení!" begin
say_title("Velitel")
if pc.count_item("27993")<3 then
say("Ješte bohužel nemáš 3x Modrou perlu")
say("a jestliže ji neseženeš,")
say("nemužeš být povýšen.")
say("Utíkej a shánej.")
return
end
local yangold = pc.getqf("yang")
local yang = pc.get_gold()
local aktuell = yang - yangold
if aktuell<100000000 then
say("Bohužel máš príliš málo Yangu.")
say("Jestliže chceš dokázat, že si")
say("dobrý obchodník,")
say_reward("sežen 100.000.000 Yangu!")
return
end
say("Páni, prekvapil si mne!")
say("Zvládl si vše tak, jak jsem")
say("ti zadal...")
say("Byl si povýšen na:")
say_reward("Slušného obchodníka")
say("Gratuluji!")
say("Takto pokracuj na ceste stát se")
say("správným obchodníkem.")
clear_letter()
affect.add_collect(apply.GOLD_DOUBLE_BONUS,5,60*60*24*365*4)
affect.add_collect(apply.ITEM_DROP_BONUS,5,60*60*24*365*4)
affect.add_collect(apply.EXP_DOUBLE_BONUS,5,60*60*24*365*4)
affect.add_collect(apply.GOLD_DOUBLE_BONUS,5,60*60*24*365*4)
pc.setqf("aufstieg", 3)
pc.setqf("letter", 0)
pc.remove_item("27993", 3)
set_state(run)
end
end
state handlerdritte begin
when letter begin
if pc.getqf("letter")==0 then
send_letter("Povýšení!")
local v=find_npc_by_vnum(20355)
if 0!=v then
target.vid("target", v, "Velitel")
end
elseif pc.getqf("letter")==1 then
send_letter("Status povolání ")
end
end
when button or info begin
if pc.getqf("letter")==0 then
say_title("Povýšení!")
say("Zajdi za velitelem.")
say("Má pro tebe dobrou zprávu.")
elseif pc.getqf("letter")==1 then
say_title("Status povolání ")
say("Tvé povolání:")
say_reward("Obchodník")
say("Tvé postavení:")
say_reward("Slušný obchodník")
say("Tvé výhody:")
say_reward("+15% na spadnutí všech predmetu ")
end
end
when target.target.click begin
say_title("Velitel")
say("Ahoj "..pc.get_name())
say("Konecne se zase potkáváme.")
say("Velmi tvrde si pracoval a zasloužíš ")
say("si povýšení.")
say("Ale nejdríve musíš splnit už celkem")
say("složitý úkol.")
say("Tvuj obrat Yangu musí být")
say("250.000.000 Yangu a vecí, kterou mi doneseš,")
say("bude 5x Krvave rudá perla.")
if pc.get_gold()>=1974999999 then
say_reward("Už nyní máš hodne Yangu,")
say_reward("ale i tak mužeš úkol")
say_reward("prijmout.")
return
end
say("Hodne štestí!")
wait()
clear_letter()
send_letter("Status povolání ")
pc.setqf("yang", pc.get_gold())
pc.setqf("letter", 1)
q.set_counter("Obrat penez", 0)
target.delete("target")
end
when login begin
local yangold = pc.getqf("yang")
local yang = pc.get_gold()
local aktuell = yang - yangold
q.set_counter("Obrat penez", aktuell)
end
when 20355.chat."Povýšení!" begin
say_title("Velitel")
if pc.count_item("27994")<5 then
say("Aby si mohl být povýšen,")
say("potrebuješ 5x Krvave rudou perlu.")
say("Utíkej a sežen ji")
say("co nejrychleji.")
return
end
local yangold = pc.getqf("yang")
local yang = pc.get_gold()
local aktuell = yang - yangold
if aktuell<250000000 then
say("Je to težší než si cekal že?")
say("Aby si mohl být povýšen,")
say("musíš mít obrat Yangu ")
say_reward("250.000.000!")
return
end
say("Páni, prekvapil si mne...")
say("Splnil se vše podle mého")
say("zadání, a proto budeš ")
say("povýšen na:")
say_reward("Velkoobchodníka")
say("Gratuluji!")
say("Vedeš si dobre, již brzy")
say("budeš zajisté nejlepší obchodník.")
clear_letter()
affect.add_collect(apply.GOLD_DOUBLE_BONUS,5,60*60*24*365*4)
affect.add_collect(apply.ITEM_DROP_BONUS,5,60*60*24*365*4)
affect.add_collect(apply.EXP_DOUBLE_BONUS,5,60*60*24*365*4)
affect.add_collect(apply.GOLD_DOUBLE_BONUS,5,60*60*24*365*4)
pc.setqf("aufstieg", 4)
pc.setqf("letter", 0)
pc.remove_item("27994", 5)
set_state(run)
end
end
state handlervierte begin
when letter begin
if pc.getqf("letter")==0 then
send_letter("Povýšení!")
local v=find_npc_by_vnum(20355)
if 0!=v then
target.vid("target", v, "Velitel")
end
elseif pc.getqf("letter")==1 then
send_letter("Status povolání ")
end
end
when button or info begin
if pc.getqf("letter")==0 then
say_title("Povýšení!")
say("Zajdi za velitelem.")
say("Má pro tebe dobrou zprávu.")
elseif pc.getqf("letter")==1 then
say_title("Status povolání ")
say("Tvé povolání:")
say_reward("Obchodník")
say("Tvé postavení:")
say_reward("Velkoobchodník")
say("Tvé výhody:")
say_reward("+20% na spadnutí všech predmetu ")
end
end
when target.target.click begin
say_title("Velitel")
say("Ahoj "..pc.get_name())
say("Konecne se zase potkáváme..")
say("Velmi tvrde si pracoval a já si myslím,")
say("že by si mohl být povýšen.")
say("Ale nejdríve musíš splnit")
say("velmi težký úkol.")
say("Tvuj obrat Yangu musí být vyšší,")
say("než 500.000.000 Yangu a musíš sehnat")
say("10x Krvave rudou perlu.")
if pc.get_gold()>=1949999999 then
say_reward("Už nyní máš dostatek Yangu,")
say_reward("ale i tak mužeš tento úkol")
say_reward("prijmout.")
return
end
say("Hodne štestí!")
wait()
clear_letter()
send_letter("Status povolání ")
pc.setqf("yang", pc.get_gold())
pc.setqf("letter", 1)
q.set_counter("Obrat penez", 0)
target.delete("target")
end
when login begin
local yangold = pc.getqf("yang")
local yang = pc.get_gold()
local aktuell = yang - yangold
q.set_counter("Obrat penez", aktuell)
end
when 20355.chat."Povýšení!" begin
say_title("Velitel")
if pc.count_item("27994")<10 then
say("Musíš ješte sehnat")
say("10x Krvave rudou perlu.")
say("Utíkej a co nejrychleji")
say("ji sežen.")
return
end
local yangold = pc.getqf("yang")
local yang = pc.get_gold()
local aktuell = yang - yangold
if aktuell<500000000 then
say("Máš bohužel príliš málo Yangu na to,")
say("aby sis zasloužol povýšení.")
say("Jestli chceš být povýšen, tvuj obrat musí být")
say_reward("500.000.000 Yangu!")
return
end
say("Páni, prekvapil si mne...")
say("Splnil si vše podle mého zadání,")
say("a proto si byl povýšen na:")
say_reward("Krále obchodu")
say("Nyní budeš mít ve meste ")
say("respekt.")
say("Gratuluji!")
clear_letter()
affect.add_collect(apply.GOLD_DOUBLE_BONUS,5,60*60*24*365*4)
affect.add_collect(apply.ITEM_DROP_BONUS,5,60*60*24*365*4)
affect.add_collect(apply.EXP_DOUBLE_BONUS,5,60*60*24*365*4)
affect.add_collect(apply.GOLD_DOUBLE_BONUS,5,60*60*24*365*4)
pc.setqf("aufstieg", 5)
pc.setqf("letter", 0)
pc.remove_item("27994", 10)
set_state( __COMPLETE__ )
end
end
state __COMPLETE__ begin
end
end
|
|
|
05/22/2012, 23:29
|
#5771
|
elite*gold: 1
Join Date: May 2011
Posts: 623
Received Thanks: 153
|
Kann mir irgendeiner bitte einfügen, das wenn man ein Zweites mal auf den Siegel klickt, das man vom Moob absteigt?
Quote:
quest Wlowe begin
state start begin
when 52032.use begin
if pc.is_polymorphed() then
pc.remove_polymorph()
say_title("Rettier")
say_reward("Du kannst verwandelt nicht reiten!")
say_reward("Du wurdest zurück verwandelt!")
say_reward("Versuch es noch mal!")
return
else
if pc.get_level() < 5 then
say("Du hast leider nicht genug Erfahrung")
say("Du musst Level 5 sein !")
return
else
affect.remove_collect()
pc.mount(20114,60*60*24*365*60)
pc.mount_bonus(apply.BLOCK,15,60*60*24*365*60)
chat("Du hast dein Weißen Löwen mit 15% Stark gg Monster Bonus gerufen!")
end
end
end
end
end
|
|
|
|
05/23/2012, 16:59
|
#5772
|
elite*gold: 0
Join Date: Jan 2012
Posts: 63
Received Thanks: 83
|
Hi ich hab Problem mit dieser quest, nämlich das wenn ich einen wildhund (101) kille passiert nix, eig sollte man dann 3 sachen droppen
PHP Code:
quest bashiboy begin
state start begin
when login with pc.get_level() == 90 begin
send_letter("Der Zorn des Drachen Yurazus")
end
when button or info begin
say_title("Der Zorn des Drachen Yurazus")
say("Der Zorn des Drachens wird immer groeßer.")
say("Das Dorf fühlt sich verunsichert.")
say("Wir brauchen einen mutigen Kämpfer, der sich ")
say("mit seiner Gruppe dem Drachen Yurazus stellt.")
say("Bist du dieser mutige Auserwählte?")
if select("Ja", "Nein") == 1 then
say_title("Super!")
say("Beweis es uns !")
pc.setqf("hund", 1)
set_state(__COMPLETE__)
end
end
when 101.kill begin
pc.setqf("hund", pc.getqf("hund") - 1)
if pc.getqf("hund") == 0 then
game.drop_item_with_ownership("19", 1)
game.drop_item_with_ownership("29", 1)
game.drop_item_with_ownership("39", 1)
say_title("Super!")
say("Der Zorn des Drachens fand ein Ende.")
say("Das Volk ist stolz auf dich,")
say("ich bin es ebenso")
say("Lass mir dir als Dank dieses Item übergeben")
pc.give_item ("49", 1)
syschat("Du hast Knochenmark erhalten.")
set_state(__COMPLETE__)
end
end
end
state __COMPLETE__ begin
end
end
|
|
|
05/23/2012, 17:16
|
#5773
|
elite*gold: 150
Join Date: Sep 2009
Posts: 855
Received Thanks: 486
|
PHP Code:
quest bashiboy begin state start begin when login with pc.get_level() == 90 begin send_letter("Der Zorn des Drachen Yurazus") end when button or info begin say_title("Der Zorn des Drachen Yurazus") say("Der Zorn des Drachens wird immer groeßer.") say("Das Dorf fühlt sich verunsichert.") say("Wir brauchen einen mutigen Kämpfer, der sich ") say("mit seiner Gruppe dem Drachen Yurazus stellt.") say("Bist du dieser mutige Auserwählte?") if select("Ja", "Nein") == 1 then say_title("Super!") say("Beweis es uns !") pc.setqf("hund", 1) set_state(__COMPLETE__) end end -- when 101.kill begin -- pc.setqf("hund", pc.getqf("hund") - 1) -- if pc.getqf("hund") == 0 then -- game.drop_item_with_ownership("19", 1) -- game.drop_item_with_ownership("29", 1) -- game.drop_item_with_ownership("39", 1) -- say_title("Super!") -- say("Der Zorn des Drachens fand ein Ende.") -- say("Das Volk ist stolz auf dich,") -- say("ich bin es ebenso") -- say("Lass mir dir als Dank dieses Item übergeben") -- pc.give_item ("49", 1) -- syschat("Du hast Knochenmark erhalten.") -- set_state(__COMPLETE__) -- end -- -- end end state __COMPLETE__ begin end end
Du hast zu früh die state "__COMPLETE__" eingeleitet, somit wird alles nachfolgende bis zum begin der state "__COMPLETE__" übersprungen, das wäre alles mit einem "--" vorne dran, unter Anderem auch das "when 101.kill begin".
Wenn wir also das erste "set_state(" __COMPLETE__" )" in ein anderes "set_state" ändern und das Nachfolgende in diese state stecken, sollte es funktionieren:
PHP Code:
quest bashiboy begin state start begin when login with pc.get_level() == 90 begin send_letter("Der Zorn des Drachen Yurazus") end when button or info begin say_title("Der Zorn des Drachen Yurazus") say("Der Zorn des Drachens wird immer groeßer.") say("Das Dorf fühlt sich verunsichert.") say("Wir brauchen einen mutigen Kämpfer, der sich ") say("mit seiner Gruppe dem Drachen Yurazus stellt.") say("Bist du dieser mutige Auserwählte?") if select("Ja", "Nein") == 1 then say_title("Super!") say("Beweis es uns !") pc.setqf("hund", 1) set_state( kill ) else return end end end
state kill begin when 101.kill begin pc.setqf("hund", pc.getqf("hund") - 1) if pc.getqf("hund") == 0 then game.drop_item_with_ownership("19", 1) game.drop_item_with_ownership("29", 1) game.drop_item_with_ownership("39", 1) say_title("Super!") say("Der Zorn des Drachens fand ein Ende.") say("Das Volk ist stolz auf dich,") say("ich bin es ebenso") say("Lass mir dir als Dank dieses Item übergeben") pc.give_item ("49", 1) syschat("Du hast Knochenmark erhalten.") set_state(__COMPLETE__) end end end state __COMPLETE__ begin end end
|
|
|
05/23/2012, 17:55
|
#5774
|
elite*gold: 0
Join Date: Oct 2011
Posts: 163
Received Thanks: 230
|
Die quest funktioniert, nur halt wenn ich ein Wildhunde kille passiert da nix. und ich will das die quest dauerthaft links als "Questrolle" bleibt wenn man die quest nicht gemacht hat.. weil wenn ich sie anklicke verschwindet die sofort und man kann sie nicht nochmal anklicken ^^ aber kp geht iwie nicht
PHP Code:
quest bashiboy begin state start begin when login with pc.get_level() == 90 begin send_letter("Der Zorn des Drachen Yurazus") end when button or info begin say_title("Der Zorn des Drachen Yurazus") say("Der Zorn des Drachens wird immer groeßer.") say("Das Dorf fühlt sich verunsichert.") say("Wir brauchen einen mutigen Kämpfer, der sich ") say("mit seiner Gruppe dem Drachen Yurazus stellt.") say("Bist du dieser mutige Auserwählte?") if select("Ja", "Nein") == 1 then say_title("Super!") say("Beweis es uns !") say_reward("Töte den Zorn des Drachen Yurazus!") pc.setqf("hund", 1) set_state( kill ) end end end
state kill begin when 101.kill begin pc.setqf("hund", pc.getqf("hund") - 1) if pc.getqf("hund") == 0 then game.drop_item_with_ownership("19", 1) game.drop_item_with_ownership("29", 1) game.drop_item_with_ownership("39", 1) say_title("Super!") say("Der Zorn des Drachens fand ein Ende.") say("Das Volk ist stolz auf dich,") say("ich bin es ebenso") say("Lass mir dir als Dank dieses Item übergeben") pc.give_item ("49", 1) syschat("Du hast Knochenmark erhalten.") set_state(__COMPLETE__) end end end state __COMPLETE__ begin end end
|
|
|
05/23/2012, 18:03
|
#5775
|
elite*gold: 150
Join Date: Sep 2009
Posts: 855
Received Thanks: 486
|
Quote:
Originally Posted by Luzifer aka Bashor
Die quest funktioniert, nur halt wenn ich ein Wildhunde kille passiert da nix. und ich will das die quest dauerthaft links als "Questrolle" bleibt wenn man die quest nicht gemacht hat.. weil wenn ich sie anklicke verschwindet die sofort und man kann sie nicht nochmal anklicken ^^ aber kp geht iwie nicht
|
Genau diese Quest habe ich schon an "~NwD~" per Private Nachricht gesendet.
Ich weiß ja nicht, arbeitet ihr im selben Team? Oder klaust du nur einfach dem seine Quest oder umgekehrt oder bla? ^^
|
|
|
All times are GMT +1. The time now is 13:32.
|
|