|
You last visited: Today at 02:28
Advertisement
[SERVICE] Die Questkontrolle
Discussion on [SERVICE] Die Questkontrolle within the Metin2 Private Server forum part of the Metin2 category.
06/12/2011, 21:21
|
#2551
|
elite*gold: 0
Join Date: Jun 2011
Posts: 45
Received Thanks: 0
|
ey delta
kannst du mir ma schnell eine kleine warp quest schreiben mit einem warp
?
|
|
|
06/13/2011, 02:09
|
#2552
|
elite*gold: 0
Join Date: Sep 2010
Posts: 58
Received Thanks: 1
|
PHP Code:
quest scharfstein begin state start begin when 30064.use begin say_title("Handel mit dem magischen Stein") say("") say("Hallo!") say("Ich suche folgende Waren,") say("kannst du mir da weiterhelfen?") local s = select("Segenschriftrolle","Verwandlungskugel","+4er Steine","Waffen") if s == 1 then say("Ah, genau das suche ich.") say("Ich gebe dir dafür 2.000.000 Yang.") say("Na, wie siehts aus?") local t = select("Hier, bitte.","Ich behalte meine Ware.") if t == 1 then say("Dankesehr, ich hoffe wir sehen uns bald wieder.") say("") pc.change_money(2000000) pc.removeitem(25040, 1) say_reward("Du hast 2.000.000 Yang erhalten.") elseif t == 2 then say("Schade.") end elseif s == 2 then say("Ah, genau das suche ich.") say("Ich gebe dir dafür 2.500.000 Yang.") say("Na, wie siehts aus?") local t = select("Hier, bitte.","Ich behalte meine Ware.") if t == 1 then say("Dankesehr, ich hoffe wir sehen uns bald wieder.") say("") pc.change_money(2500000) pc.removeitem(70104, 1) say_reward("Du hast 2.500.000 Yang erhalten.") elseif t == 2 then say("Schade.") end elseif s == 3 then say("Ich suche jegliche Art von Geiststeinen,") say("welchen möchtest du mir verkaufen?") local u = select("Durchbruch","Todesstoß","Wiederkehr","Krieger","Ninja","Sura","ein anderer...") if u == 1 then say("Ah, genau das suche ich.") say("Ich gebe dir dafür 1.500.000 Yang.") say("Na, wie siehts aus?") local v = select("Hier, bitte.","Ich behalte meine Ware.") if v == 1 then say("Dankesehr, ich hoffe wir sehen uns bald wieder.") say("") pc.change_money(1500000) pc.removeitem(28430, 1) say_reward("Du hast 1.500.000 Yang erhalten.") elseif v == 2 then say("Schade.") end elseif u == 2 then say("Ah, genau das suche ich.") say("Ich gebe dir dafür 7.500.000 Yang.") say("Na, wie siehts aus?") local v = select("Hier, bitte.","Ich behalte meine Ware.") if v == 1 then say("Dankesehr, ich hoffe wir sehen uns bald wieder.") say("") pc.change_money(7500000) pc.removeitem(28431, 1) say_reward("Du hast 7.500.000 Yang erhalten.") elseif v == 2 then say("Schade.") end elseif u == 3 then say("Ah, genau das suche ich.") say("Ich gebe dir dafür 1.500.000 Yang.") say("Na, wie siehts aus?") local v = select("Hier, bitte.","Ich behalte meine Ware.") if v == 1 then say("Dankesehr, ich hoffe wir sehen uns bald wieder.") say("") pc.change_money(1500000) pc.removeitem(28432, 1) say_reward("Du hast 1.500.000 Yang erhalten.") elseif v == 2 then say("Schade.") end elseif u == 4 then say("Ah, genau das suche ich.") say("Ich gebe dir dafür 19.500.000 Yang.") say("Na, wie siehts aus?") local v = select("Hier, bitte.","Ich behalte meine Ware.") if v == 1 then say("Dankesehr, ich hoffe wir sehen uns bald wieder.") say("") pc.change_money(19500000) pc.removeitem(28433, 1) say_reward("Du hast 19.500.000 Yang erhalten.") elseif v == 2 then say("Schade.") end elseif u == 5 then say("Ah, genau das suche ich.") say("Ich gebe dir dafür 1.000.000 Yang.") say("Na, wie siehts aus?") local v = select("Hier, bitte.","Ich behalte meine Ware.") if v == 1 then say("Dankesehr, ich hoffe wir sehen uns bald wieder.") say("") pc.change_money(1000000) pc.removeitem(28434, 1) say_reward("Du hast 1.000.000 Yang erhalten.") elseif v == 2 then say("Schade.") end elseif u == 6 then say("Ah, genau das suche ich.") say("Ich gebe dir dafür 500.000 Yang.") say("Na, wie siehts aus?") local v = select("Hier, bitte.","Ich behalte meine Ware.") if v == 1 then say("Dankesehr, ich hoffe wir sehen uns bald wieder.") say("") pc.change_money(500000) pc.removeitem(28435, 1) say_reward("Du hast 500.000 Yang erhalten.") elseif v == 2 then say("Schade.") end elseif u == 7 then local w = select("Schamane","Monster","Ausweichen","Ducken","Magie","Vitalität","Schutz","Hast","Schließen") if w == 1 then say("Ah, genau das suche ich.") say("Ich gebe dir dafür 100.000 Yang.") say("Na, wie siehts aus?") local v = select("Hier, bitte.","Ich behalte meine Ware.") if v == 1 then say("Dankesehr, ich hoffe wir sehen uns bald wieder.") say("") pc.change_money(100000) pc.removeitem(28436, 1) say_reward("Du hast 100.000 Yang erhalten.") elseif v == 2 then say("Schade.") end elseif w == 2 then say("Ah, genau das suche ich.") say("Ich gebe dir dafür 500.000 Yang.") say("Na, wie siehts aus?") local v = select("Hier, bitte.","Ich behalte meine Ware.") if v == 1 then say("Dankesehr, ich hoffe wir sehen uns bald wieder.") say("") pc.change_money(500000) pc.removeitem(28437, 1) say_reward("Du hast 500.000 Yang erhalten.") elseif v == 2 then say("Schade.") end elseif w == 3 then say("Ah, genau das suche ich.") say("Ich gebe dir dafür 4.500.000 Yang.") say("Na, wie siehts aus?") local v = select("Hier, bitte.","Ich behalte meine Ware.") if v == 1 then say("Dankesehr, ich hoffe wir sehen uns bald wieder.") say("") pc.change_money(4500000) pc.removeitem(28438, 1) say_reward("Du hast 4.500.000 Yang erhalten.") elseif v == 2 then say("Schade.") end elseif w == 4 then say("Ah, genau das suche ich.") say("Ich gebe dir dafür 100.000 Yang.") say("Na, wie siehts aus?") local v = select("Hier, bitte.","Ich behalte meine Ware.") if v == 1 then say("Dankesehr, ich hoffe wir sehen uns bald wieder.") say("") pc.change_money(100000) pc.removeitem(28439, 1) say_reward("Du hast 100.000 Yang erhalten.") elseif v == 2 then say("Schade.") end elseif w == 5 then say("Ah, genau das suche ich.") say("Ich gebe dir dafür 100.000 Yang.") say("Na, wie siehts aus?") local v = select("Hier, bitte.","Ich behalte meine Ware.") if v == 1 then say("Dankesehr, ich hoffe wir sehen uns bald wieder.") say("") pc.change_money(100000) pc.removeitem(28440, 1) say_reward("Du hast 100.000 Yang erhalten.") elseif v == 2 then say("Schade.") end elseif w == 6 then say("Ah, genau das suche ich.") say("Ich gebe dir dafür 100.000 Yang.") say("Na, wie siehts aus?") local v = select("Hier, bitte.","Ich behalte meine Ware.") if v == 1 then say("Dankesehr, ich hoffe wir sehen uns bald wieder.") say("") pc.change_money(100000) pc.removeitem(28441, 1) say_reward("Du hast 100.000 Yang erhalten.") elseif v == 2 then say("Schade.") end elseif w == 7 then say("Ah, genau das suche ich.") say("Ich gebe dir dafür 14.500.000 Yang.") say("Na, wie siehts aus?") local v = select("Hier, bitte.","Ich behalte meine Ware.") if v == 1 then say("Dankesehr, ich hoffe wir sehen uns bald wieder.") say("") pc.change_money(14500000) pc.removeitem(28442, 1) say_reward("Du hast 14.500.000 Yang erhalten.") elseif v == 2 then say("Schade.") end elseif w == 8 then say("Ah, genau das suche ich.") say("Ich gebe dir dafür 19.500.000 Yang.") say("Na, wie siehts aus?") local v = select("Hier, bitte.","Ich behalte meine Ware.") if v == 1 then say("Dankesehr, ich hoffe wir sehen uns bald wieder.") say("") pc.change_money(19500000) pc.removeitem(28443, 1) say_reward("Du hast 19.500.000 Yang erhalten.") elseif v == 2 then say("Schade.") end elseif w == 9 then say("Auf bald.") end end elseif s == 4 then say("Ich muss erstmal meine Lagerräume erweitern,") say("bevor ich deine Waffen aufkaufen kann!") say("") say("Komm erneut zu mir, wenn es soweit ist.") end end end end
Es passiert nichts beim Rechtsklick auf Item 30064.
Ich habe alle types in der item_proto von 30064 von 1 bis 24 durchprobiert und nichts hat so geklappt, wie es sollte.
Die Quest ist ziemlich lang, aber ich hoffe, dass mir trotzdem jemand helfen kann. ^^ make.sh zeigt keine Fehler an.
Gruß
|
|
|
06/13/2011, 10:45
|
#2553
|
elite*gold: 30
Join Date: Jul 2010
Posts: 1,627
Received Thanks: 1,450
|
Ich nehm mir mal die Erlaubnnis hier zu fragen..
Ihr kennt ja alle das Problem, wenn man Gehandelt hat oder what ever.
Und will Porten, kommt ja die Meldung du kannst 10 Sekunden nicht wo anders hingehen..
Der Aktuelle bug den jeder Pserver hat ist: Das der Blutstein oder what ever trotzdem abgezogen wird.
Hab hier jemand einen fixx oder idee? Hab schon einiges ausprobiert. Alles Fail.
Einzig Sinnvolle wäre nur noch ewig langer text in der Quest zu machen..
|
|
|
06/13/2011, 12:28
|
#2554
|
elite*gold: 32
Join Date: Dec 2010
Posts: 1,294
Received Thanks: 862
|
Quote:
Originally Posted by Risan
Ich nehm mir mal die Erlaubnnis hier zu fragen..
Ihr kennt ja alle das Problem, wenn man Gehandelt hat oder what ever.
Und will Porten, kommt ja die Meldung du kannst 10 Sekunden nicht wo anders hingehen..
Der Aktuelle bug den jeder Pserver hat ist: Das der Blutstein oder what ever trotzdem abgezogen wird.
Hab hier jemand einen fixx oder idee? Hab schon einiges ausprobiert. Alles Fail.
Einzig Sinnvolle wäre nur noch ewig langer text in der Quest zu machen..
|
Wär evtl nicht die konfortabelste Lösung aber nunja^^
Setz wenn er sich portet ne Variable hoch und frag dann ab:
PHP Code:
when login or enter with pc.get_map_index()==xy and pc.getqf("variable")==1 begin
Dann lässt du den Blutstein nehmen und setzt die Variable wieder runter, damit man nicht, wenn man reloggt, noch einen verliert.
Würde er jetzt nicht geportet werden ists egal, Variable bleibt zwar oben aber er will ja trotzdem durch...
|
|
|
06/13/2011, 15:29
|
#2555
|
elite*gold: 30
Join Date: Jul 2010
Posts: 1,627
Received Thanks: 1,450
|
Jo, wäre ne idee.
Aber es muss auch einfacher gehen..
beispiel: when pc_get_ready() xD
|
|
|
06/13/2011, 16:58
|
#2556
|
elite*gold: 15
Join Date: Mar 2010
Posts: 4,270
Received Thanks: 2,499
|
hab eine Frage :
gibts Befehlt der anzeigt wieviele Player ingesammt vom Blauen-, Roten-, Gelbenreich und ingesammt online sind?
mfg
|
|
|
06/13/2011, 20:04
|
#2557
|
elite*gold: 0
Join Date: Nov 2010
Posts: 53
Received Thanks: 6
|
Wo kann ich überhaupt Quests schreiben lernen,
um sie danach hier berichtigen zu lassen?
|
|
|
06/13/2011, 20:07
|
#2558
|
elite*gold: 26
Join Date: Mar 2010
Posts: 3,765
Received Thanks: 2,661
|
Quote:
Originally Posted by xeNoNx3
Wo kann ich überhaupt Quests schreiben lernen,
um sie danach hier berichtigen zu lassen?
|
bestehende Quests anschauen, versuchen zu verstehen und nachzuscripten^^
Gibt auch schöne Tutorials von .Alessa
|
|
|
06/13/2011, 23:23
|
#2559
|
elite*gold: 0
Join Date: Sep 2010
Posts: 58
Received Thanks: 1
|
Quote:
Originally Posted by xeNoNx3
Wo kann ich überhaupt Quests schreiben lernen,
um sie danach hier berichtigen zu lassen?
|
Es ist von Vorteil, wenn du schon eine Skriptsprache beherrschst, da die Logik zu anderen Sprachen (PHP, Perl, ...) sehr ähnlich ist.
Aber allgemein ist es auch logisch (if x == 2 then, pc.give_item(), ... => spricht wohl für sich).
Wie mein VP schon sagt, schau dir die bereits bestehenden an.
Gruß, aquis
PS: Wäre nett, wenn sich jemand nochmal die Zeit nehmen würde, meine Quest auf der Vorseite anzuschauen und auf Fehler zu überprüfen...
|
|
|
06/14/2011, 10:24
|
#2560
|
elite*gold: 33
Join Date: May 2011
Posts: 93
Received Thanks: 24
|
Problem: Er zählt die Flammenkönige nicht runter.
PHP Code:
quest hammerdiamant begin
state start begin
when login or levelup with pc.level >= 75 begin
local v=find_npc_by_vnum(20016)
if 0==v then
else
target.vid("__TARGET__",v,"Der Schmied braucht dich")
end
set_state("infos")
end
end
state infos begin
when letter begin
send_letter("Der Schmied braucht dich")
end
when info or button begin
say_title("Der Schmied braucht deine Hilfe!")
say("Hey Abenteurer!")
say("Bitte komm sofort zum Schmied!")
say("Er benötigt dringend deine Hilfe!")
end
when __TARGET__.target.click or
20016.chat."Der Schmied braucht dich" begin
target.delete("__TARGET__")
say_title("Der Schmied braucht dich!")
say("Hallo junger Abenteurer!")
say("Vielen Dank das du gekommen bist.")
say("Ein Flammenkönig hat meinen Hammer geklaut! Ich bin")
say("sofort vor ihm geflüchtet da er mir hinterherlief...")
wait()
say("Ich kann aber ohne meinen Hammer nicht wirklich")
say("Schmieden... Könntest du ihn mir wieder holen?")
say("Du bekommst auch eine Super Belohnung!")
local s=select("Ja","Nein")
if s == 2 then
say("Oh... sehr Schade.")
set_state("__COMPLETE__")
else
say("Vielen Dank das du mir helfen wilst!")
set_state("accept")
end
end
end
state accept begin
when letter begin
send_letter("Hole den Hammer!")
end
when info or button begin
say_title("Hole den Hammer!")
say("Der Schmied hat dich gebeten seinen Hammer zu holen!")
say("Töte also 3 Flammenkönige und komm dann zum Schmied zurück")
say_reward("Töte 3 Flammenkönige!")
pc.setqf("state1", 0)
q.set_counter("Flammenkönige", 3)
set_state("mob")
end
end
state mob begin
when letter begin
send_letter("Töte die Flammenkönige!")
end
when info or button begin
say_title("Töte die Flammenkönige")
say("Deine Aufgabe:")
say_reward("Töte 3 Flammenkönige!")
say_reward("Du hast schon "..pc.getqf("state1").." von 3 getötet.")
end
when 2206.kill begin
local count1 = pc.getqf("state1") + 1
if count1 <= 3 then
pc.setqf("state1", count1)
q.set_counter("Flammenkönige", 3 - count1)
end
if pc.getqf("state1") >= 3 then
set_state("find1")
end
end
end
state find1 begin
when letter begin
local v=find_npc_by_vnum(20016)
if 0==v then
else
target.vid("__TARGET__",v,"Ich habe den Hammer!")
end
end
when letter begin
send_letter("Ich habe den Hammer")
end
when button or info begin
say_title("Geh zum Schmied!")
say("Ich habe den Hammer gefunden. Ich sollte jetzt zum")
say("Schmied gehen!")
end
when __TARGET__.target.click or
20016.chat."Ich habe den Hammer!" begin
target.delete("__TARGET__")
say_title("Der Hammer des Schmiedes")
say("Du bist wieder zurück?")
say("Hast du etwa auch meinen Hamemr mitgebracht?!")
say("Ich hätte ehrlich nicht gedacht das du das schaffst!")
wait()
say("Ich danke dir von Herzen, aber...")
say("Der Hammer alleine ist nicht wirklich nützlich...")
say("Ich brauch einen besonderen Kristall um den Hammer,")
say("benutzten zu können. Doch diesen findet man nur")
say("tief im Roten Wald. Ich brauche ihn sofort!")
say("Würdest du mir helfen?")
local s = select("Ja","Nein")
if s == 2 then
say("Oh... wie Schade.")
say("Trotzdem danke für deine Mühe.")
say("Ich kann dir jedoch nur 1kk Exp und Yang geben...")
say_reward("1.000.000 Exp erhalten")
say_reward("1.000.000 Yang erhalten")
pc.change_money(1000000)
pc.give_exp2(1000000)
clear_letter()
set_state("__COMPLETE__")
else
say("Sehr schön das du hilfst!")
say("Du droppst den Edelstein von den Roten bösen Bäumen,")
say("von den Dryaden und von den Roten Geisterbaum-")
say("stümpfen!")
set_state("collkristall")
end
end
end
state collkristall begin
when letter begin
send_letter("Besorge den Kristall")
end
when button or info begin
say_title("Der Kristall des Schmieds")
say("Töte solange Rote Geisterbaumstümpfe, Rote Böse")
say("Bäume und rote Dryaden bis du einen Kristall hast")
say_reward("Beschaffe einen Kristall.")
end
when 2312.kill begin
local pct = number(1,100)
if pct == 1 then
pc.give_item2(5590,1)
if pc.count_item(5590) >= 1 then
set_state("kristallfertig")
end
end
end
when 2313.kill begin
local pct = number (1,100)
if pct == 1 then
pc.give_item2(5590,1)
if pc.count_item(5590) >= 1 then
set_state("kristallfertig")
end
end
end
when 2315.kill begin
local pct = number (1,50)
if pct == 1 then
pc.give_item2(5590,1)
if pc.count_item(5590) >= 1 then
set_state("kristallfertig")
end
end
end
end
state kristallfertig begin
when letter begin
local v=find_npc_by_vnum(20016)
if 0==v then
else
target.vid("__TARGET__",v,"Kristall gefunden!")
end
end
when letter begin
send_letter("Ich habe den Kristall gefunden!")
end
when button or info begin
say_title("Ich habe den Kristall!")
say("Ich habe den magischen Kristall gefunden von")
say("dem der Schmied sprach. Ich sollte ihm den")
say("Kristall bringen!")
end
when __TARGET__.target.click or
20016.chat."Ich habe den Kristall!" begin
target.delete("__TARGET__")
say_title("Kristall gefunden!")
say("Hallo Abenteurer!")
say("Wie ich sehe hast du meinen Kristall gefunden!")
say("Dies ist einer der seltesten Gegenstände überhaupt!")
say("Ich danke dir von ganzem Herzen.")
say("Nun kann ich endlich wieder richtig schmieden!")
say("Hier ist deine Belohnung:")
say_reward("Muschel erhalten!")
say_reward("66er Rüstung +2 erhalten!")
say_reward("1.000.000 Yang erhalten!")
pc.change_money(1000000)
pc.give_item2(27987)
if pc.job==0 then
pc.give_item2(11292)
end
if pc.job==1 then
pc.give_item2(11492)
end
if pc.job==2 then
pc.give_item2(11692)
end
if pc.job==3 then
pc.give_item2(11892)
end
if pc.job==4 then
pc.give_item2(11292)
end
if pc.job==5 then
pc.give_item2(11492)
end
if pc.job==6 then
pc.give_item2(11692)
end
if pc.job==7 then
pc.give_item2(11892)
end
clear_letter()
set_state("__COMPLETE__")
end
end
state __COMPLETE__ begin
end
end
|
|
|
06/14/2011, 18:45
|
#2561
|
elite*gold: 5
Join Date: Dec 2010
Posts: 356
Received Thanks: 181
|
Quote:
Originally Posted by ProtoX>
Problem: Er zählt die Flammenkönige nicht runter.
PHP Code:
quest hammerdiamant begin
state start begin
when login or levelup with pc.level >= 75 begin
local v=find_npc_by_vnum(20016)
if 0==v then
else
target.vid("__TARGET__",v,"Der Schmied braucht dich")
end
set_state("infos")
end
end
state infos begin
when letter begin
send_letter("Der Schmied braucht dich")
end
when info or button begin
say_title("Der Schmied braucht deine Hilfe!")
say("Hey Abenteurer!")
say("Bitte komm sofort zum Schmied!")
say("Er benötigt dringend deine Hilfe!")
end
when __TARGET__.target.click or
20016.chat."Der Schmied braucht dich" begin
target.delete("__TARGET__")
say_title("Der Schmied braucht dich!")
say("Hallo junger Abenteurer!")
say("Vielen Dank das du gekommen bist.")
say("Ein Flammenkönig hat meinen Hammer geklaut! Ich bin")
say("sofort vor ihm geflüchtet da er mir hinterherlief...")
wait()
say("Ich kann aber ohne meinen Hammer nicht wirklich")
say("Schmieden... Könntest du ihn mir wieder holen?")
say("Du bekommst auch eine Super Belohnung!")
local s=select("Ja","Nein")
if s == 2 then
say("Oh... sehr Schade.")
set_state("__COMPLETE__")
else
say("Vielen Dank das du mir helfen wilst!")
set_state("accept")
end
end
end
state accept begin
when letter begin
send_letter("Hole den Hammer!")
end
when info or button begin
say_title("Hole den Hammer!")
say("Der Schmied hat dich gebeten seinen Hammer zu holen!")
say("Töte also 3 Flammenkönige und komm dann zum Schmied zurück")
say_reward("Töte 3 Flammenkönige!")
pc.setqf("state1", 0)
q.set_counter("Flammenkönige", 3)
set_state("mob")
end
end
state mob begin
when letter begin
send_letter("Töte die Flammenkönige!")
end
when info or button begin
say_title("Töte die Flammenkönige")
say("Deine Aufgabe:")
say_reward("Töte 3 Flammenkönige!")
say_reward("Du hast schon "..pc.getqf("state1").." von 3 getötet.")
end
when 2206.kill begin
local count1 = pc.getqf("state1") + 1
if count1 <= 3 then
pc.setqf("state1", count1)
q.set_counter("Flammenkönige", 3 - count1)
end
if pc.getqf("state1") >= 3 then
set_state("find1")
end
end
end
state find1 begin
when letter begin
local v=find_npc_by_vnum(20016)
if 0==v then
else
target.vid("__TARGET__",v,"Ich habe den Hammer!")
end
end
when letter begin
send_letter("Ich habe den Hammer")
end
when button or info begin
say_title("Geh zum Schmied!")
say("Ich habe den Hammer gefunden. Ich sollte jetzt zum")
say("Schmied gehen!")
end
when __TARGET__.target.click or
20016.chat."Ich habe den Hammer!" begin
target.delete("__TARGET__")
say_title("Der Hammer des Schmiedes")
say("Du bist wieder zurück?")
say("Hast du etwa auch meinen Hamemr mitgebracht?!")
say("Ich hätte ehrlich nicht gedacht das du das schaffst!")
wait()
say("Ich danke dir von Herzen, aber...")
say("Der Hammer alleine ist nicht wirklich nützlich...")
say("Ich brauch einen besonderen Kristall um den Hammer,")
say("benutzten zu können. Doch diesen findet man nur")
say("tief im Roten Wald. Ich brauche ihn sofort!")
say("Würdest du mir helfen?")
local s = select("Ja","Nein")
if s == 2 then
say("Oh... wie Schade.")
say("Trotzdem danke für deine Mühe.")
say("Ich kann dir jedoch nur 1kk Exp und Yang geben...")
say_reward("1.000.000 Exp erhalten")
say_reward("1.000.000 Yang erhalten")
pc.change_money(1000000)
pc.give_exp2(1000000)
clear_letter()
set_state("__COMPLETE__")
else
say("Sehr schön das du hilfst!")
say("Du droppst den Edelstein von den Roten bösen Bäumen,")
say("von den Dryaden und von den Roten Geisterbaum-")
say("stümpfen!")
set_state("collkristall")
end
end
end
state collkristall begin
when letter begin
send_letter("Besorge den Kristall")
end
when button or info begin
say_title("Der Kristall des Schmieds")
say("Töte solange Rote Geisterbaumstümpfe, Rote Böse")
say("Bäume und rote Dryaden bis du einen Kristall hast")
say_reward("Beschaffe einen Kristall.")
end
when 2312.kill begin
local pct = number(1,100)
if pct == 1 then
pc.give_item2(5590,1)
if pc.count_item(5590) >= 1 then
set_state("kristallfertig")
end
end
end
when 2313.kill begin
local pct = number (1,100)
if pct == 1 then
pc.give_item2(5590,1)
if pc.count_item(5590) >= 1 then
set_state("kristallfertig")
end
end
end
when 2315.kill begin
local pct = number (1,50)
if pct == 1 then
pc.give_item2(5590,1)
if pc.count_item(5590) >= 1 then
set_state("kristallfertig")
end
end
end
end
state kristallfertig begin
when letter begin
local v=find_npc_by_vnum(20016)
if 0==v then
else
target.vid("__TARGET__",v,"Kristall gefunden!")
end
end
when letter begin
send_letter("Ich habe den Kristall gefunden!")
end
when button or info begin
say_title("Ich habe den Kristall!")
say("Ich habe den magischen Kristall gefunden von")
say("dem der Schmied sprach. Ich sollte ihm den")
say("Kristall bringen!")
end
when __TARGET__.target.click or
20016.chat."Ich habe den Kristall!" begin
target.delete("__TARGET__")
say_title("Kristall gefunden!")
say("Hallo Abenteurer!")
say("Wie ich sehe hast du meinen Kristall gefunden!")
say("Dies ist einer der seltesten Gegenstände überhaupt!")
say("Ich danke dir von ganzem Herzen.")
say("Nun kann ich endlich wieder richtig schmieden!")
say("Hier ist deine Belohnung:")
say_reward("Muschel erhalten!")
say_reward("66er Rüstung +2 erhalten!")
say_reward("1.000.000 Yang erhalten!")
pc.change_money(1000000)
pc.give_item2(27987)
if pc.job==0 then
pc.give_item2(11292)
end
if pc.job==1 then
pc.give_item2(11492)
end
if pc.job==2 then
pc.give_item2(11692)
end
if pc.job==3 then
pc.give_item2(11892)
end
if pc.job==4 then
pc.give_item2(11292)
end
if pc.job==5 then
pc.give_item2(11492)
end
if pc.job==6 then
pc.give_item2(11692)
end
if pc.job==7 then
pc.give_item2(11892)
end
clear_letter()
set_state("__COMPLETE__")
end
end
state __COMPLETE__ begin
end
end
|
Hey
Ersetz mal den Teil
PHP Code:
state accept begin
when letter begin
send_letter("Hole den Hammer!")
end
when info or button begin
say_title("Hole den Hammer!")
say("Der Schmied hat dich gebeten seinen Hammer zu holen!")
say("Töte also 3 Flammenkönige und komm dann zum Schmied zurück")
say_reward("Töte 3 Flammenkönige!")
pc.setqf("state1", 0)
q.set_counter("Flammenkönige", 3)
set_state("mob")
end
end
state mob begin
when letter begin
send_letter("Töte die Flammenkönige!")
end
when info or button begin
say_title("Töte die Flammenkönige")
say("Deine Aufgabe:")
say_reward("Töte 3 Flammenkönige!")
say_reward("Du hast schon "..pc.getqf("state1").." von 3 getötet.")
end
when 2206.kill begin
local count1 = pc.getqf("state1") + 1
if count1 <= 3 then
pc.setqf("state1", count1)
q.set_counter("Flammenkönige", 3 - count1)
end
if pc.getqf("state1") >= 3 then
set_state("find1")
end
end
end
durch das:
PHP Code:
state accept begin
when letter begin
send_letter("Hole den Hammer!")
end
when info or button begin
say_title("Hole den Hammer!")
say("Der Schmied hat dich gebeten seinen Hammer zu holen!")
say("Töte also 3 Flammenkönige und komm dann zum Schmied zurück")
say_reward("Töte 3 Flammenkönige!")
set_state("mob")
end
end
state mob begin
when letter begin
send_letter("Töte die Flammenkönige!")
end
when info or button begin
say_title("Töte die Flammenkönige")
say("Deine Aufgabe:")
say_reward("Töte 3 Flammenkönige!")
if pc.getqf("state1") == 0 then
say_reward("Du hast noch keinen Flammenkönig getötet.")
elseif pc.getqf("state1") > 0 then
say_reward("Du hast schon "..pc.getqf("state1").." von 3 getötet.")
end
end
when 2206.kill begin
local count1 = pc.getqf("state1") + 1
if pc.getqf("state1") < 3 then
pc.setqf("state1", count1)
elseif pc.getqf("state1") >= 3 then
set_state("find1")
end
end
end
Mehr hab ich noch nicht durchgschaut, test es mal & sag Bescheid, wenn noch etwas nicht funktioniert.
|
|
|
06/14/2011, 22:19
|
#2562
|
elite*gold: 33
Join Date: May 2011
Posts: 93
Received Thanks: 24
|
okay danke hat geklappt habe allerdings noch eine...
PHP Code:
----------------------------------------------------------------------
-- Special Item Drop Quest für Mondlichtschatztruhe --
-- Eventflag/e mondlicht_drop 1 --
----------------------------------------------------------------------
quest special_drop begin
state start begin
when 101.kill or 102.kill or 103.kill or 104.kill or 105.kill or 106.kill or 107.kill or 108.kill or 109.kill or 110.kill or 111.kill or
112.kill or 113.kill or 114.kill or 115.kill or 171.kill or 172.kill or 173.kill or 174.kill or 175.kill or 176.kill or 178.kill or
179.kill or 180.kill or 181.kill or 182.kill or 183.kill or 184.kill or 185.kill or 301.kill or 302.kill or 303.kill or 304.kill or
331.kill or 332.kill or 333.kill or 334.kill or 351.kill or 352.kill or 353.kill or 354.kill or 401.kill or 402.kill or 403.kill or
404.kill or 405.kill or 406.kill or 431.kill or 432.kill or 433.kill or 434.kill or 435.kill or 436.kill or 451.kill or 452.kill or
453.kill or 454.kill or 455.kill or 456.kill or 501.kill or 502.kill or 503.kill or 504.kill or 551.kill or 552.kill or 553.kill or
554.kill or 601.kill or 602.kill or 603.kill or 604.kill or 631.kill or 632.kill or 633.kill or 634.kill or 635.kill or 636.kill or
637.kill or 651.kill or 652.kill or 653.kill or 654.kill or 655.kill or 656.kill or 657.kill or 701.kill or 702.kill or 703.kill or
704.kill or 705.kill or 706.kill or 707.kill or 731.kill or 732.kill or 733.kill or 734.kill or 735.kill or 736.kill or 737.kill or
751.kill or 752.kill or 753.kill or 754.kill or 755.kill or 756.kill or 757.kill or 771.kill or 772.kill or 773.kill or 774.kill or
775.kill or 776.kill or 777.kill or 795.kill or 901.kill or 902.kill or 903.kill or 904.kill or 905.kill or 906.kill or 907.kill or
931.kill or 932.kill or 933.kill or 934.kill or 935.kill or 936.kill or 937.kill or 1001.kill or 1002.kill or 1003.kill or 1004.kill or
1061.kill or 1062.kill or 1063.kill or 1064.kill or 1065.kill or 1066.kill or 1067.kill or 1068.kill or 1069.kill or 1070.kill or
1071.kill or 1101.kill or 1102.kill or 1103.kill or 1104.kill or 1105.kill or 1106.kill or 1107.kill or 1131.kill or 1132.kill or
1134.kill or 1135.kill or 1136.kill or 1137.kill or 1171.kill or 1172.kill or 1173.kill or 1174.kill or 1175.kill or 1176.kill or
1177.kill or 1301.kill or 1302.kill or 1303.kill or 1305.kill or 1331.kill or 1332.kill or 1333.kill or 1334.kill or 1335.kill or
2001.kill or 2002.kill or 2003.kill or 2004.kill or 2005.kill or 2031.kill or 2032.kill or 2033.kill or 2034.kill or 2035.kill or
2036.kill or 2061.kill or 2062.kill or 2063.kill or 2064.kill or 2065.kill or 2051.kill or 2052.kill or 2053.kill or 2054.kill or
2055.kill or 2071.kill or 2072.kill or 2073.kill or 2074.kill or 2075.kill or 2076.kill or 2101.kill or 2102.kill or 2103.kill or
2104.kill or 2105.kill or 2106.kill or 2107.kill or 2108.kill or 2131.kill or 2132.kill or 2133.kill or 2134.kill or 2135.kill or
2151.kill or 2152.kill or 2152.kill or 2153.kill or 2154.kill or 2155.kill or 2156.kill or 2157.kill or 2158.kill or 2201.kill or
2202.kill or 2203.kill or 2204.kill or 2205.kill or 2231.kill or 2232.kill or 2233.kill or 2234.kill or 2235.kill or 2291.kill or
1401.kill or 1402.kill or 1403.kill or 1501.kill or 1502.kill or 1503.kill or 1601.kill or 1602.kill or 1603.kill or 2301.kill or
2302.kill or 2303.kill or 2304.kill or 2305.kill or 2311.kill or 2312.kill or 2313.kill or 2314.kill or 2315.kill or 2306.kill or
2307.kill or 7013.kill or 7014.kill or 7015.kill or 7016.kill or 7017.kill or 7018.kill or 1151.kill or 1152.kill or 1153.kill or
1154.kill or 1155.kill or 1156.kill or 1157.kill with game.get_event_flag("mondlicht_drop") >0 begin
local s = number(1, 350)
if pc.get_level() >= 1 and pc.get_level() <= 20 then
if s <= 20 then
game.drop_item(50011)
end
elseif pc.get_level() >= 21 and pc.get_level() <= 40 then
if s <= 18 then
game.drop_item(50011)
end
elseif pc.get_level() >= 41 and pc.get_level() <= 50 then
if s <= 16 then
game.drop_item(50011)
end
elseif pc.get_level() >= 51 and pc.get_level() <= 60 then
if s <= 15 then
game.drop_item(50011)
end
elseif pc.get_level() >= 61 and pc.get_level() <= 150 then
if s <= 14 then
game.drop_item(50011)
end
end
end
end
end
wenn ich hier /e mondlicht_drop 1 eingebe droppe ich keine mondlichtschatztruhen... egal welches lvl egal welches mob...
|
|
|
06/15/2011, 09:54
|
#2563
|
elite*gold: 30
Join Date: Jul 2010
Posts: 1,627
Received Thanks: 1,450
|
Mondlicht schatztruhen brauchst keine Quest hierfür, dies ist bereits in der Gamefile eingetragen gebe ingame ein /e moon_drop 1 und schon ist das Mondlichttruhen event aktiv.
|
|
|
06/15/2011, 10:40
|
#2564
|
elite*gold: 33
Join Date: May 2011
Posts: 93
Received Thanks: 24
|
droppe so allerdings mit level 75 bei roter geisterweise nichts...
|
|
|
06/15/2011, 10:56
|
#2565
|
elite*gold: 10
Join Date: Jan 2010
Posts: 3,880
Received Thanks: 808
|
Die Quest sollte sich automatisch "neu" laden.
Dh. wenn ich die einmal anklicke ist sie auch für immer weg.
PHP Code:
quest gmverwaltung begin state start begin when login with pc.is_gm() begin set_state(information) end end state information begin when letter begin send_letter("Gamemaster-Panel") end when info or button begin say_title("Was willst du machen?") local s = select("Rate´s","Ox","Event Planer","Monster","Beenden") if s == 2 then say("Möchtest du OX Starten?") local ox = select("Ja", "Nein") if ox == 2 then return elseif ox == 1 then oxevent.open() command("go ox") end elseif s == 4 then say("Möchtest du ein Monster Spawn?") local sp = select("Ja", "Nein") if sp == 2 then return elseif sp == 1 then say("Welches Monster Soll Gespawnt werden?") local how = input() say("Wie oft? bei 0 wird 1 monster gespwnt") local many = input() say(" Jetzt die Monster spawn?") local bes = select("Ja", "Nein") if bes == 2 then return elseif bes == 1 then mob.spawn(how, many) end end elseif s == 1 then say("Rate´s") say("") say("Was Soll Erhöht werden?") local eboni = select("Item", "Yang", "Exp", "Nichts") say("um Wv %?") local emuch = input() say("Wie lange") local elong = input() if eboni == 4 then return elseif eboni == 1 then command("priv_empire 0 1:item_drop "..emuch.." "..elong.."") elseif eboni == 2 then command("priv_empire 0 2:gold_drop "..emuch.." "..elong.."") elseif eboni == 3 then command("priv_empire 0 4:exp "..emuch.." "..elong.."") end elseif s == 5 then return end end end end
Und bei dieser erhalten einige nicht die Belohnung.
PHP Code:
quest metin40 begin state start begin when login with pc.level >= 80 begin set_state(information) end end
state information begin when letter begin send_letter("Vernichtung der Metinsteine") end
when info or button begin say("Vernichtung der Metinsteine") say("Vernichtung der Metinsteine") say("Ich brauche deine Hilfe um das vergessene Land von den Bössen") say_reward("Zerstöre 80 Level 90er Metins und werde reich belohnt") say("") pc.setqf("state", 80) q.set_counter("90ger Metin", 80) set_state (metin) end end state metin begin when letter begin send_letter("Zerstöre Metins") end when button or info begin say_title("90er Metins:") say_reward( "Du musst noch ".." "..pc.getqf("state").."von 80 zerstören") say("") end
when 8027.kill begin local count = pc.getqf("state") - 1 if count <= 80 then pc.setqf("state", count) q.set_counter("90ger Metin", count) end if count == 0 then say_title("Vernichtung der Metinsteine") say("Du hast die Quest erfolgreich abgeschlossen!") say("Du erhälst:") say_reward("2x Jede Perle") say_reward("Außerdem:") say_reward("20kk Yang") say_reward("Zudem einen Regenbogenstein") pc.change_money(20000000) pc.give_item2(27992, 1) pc.give_item2(27993, 1) pc.give_item2(27994, 1) pc.give_item2(27992, 1) pc.give_item2(27993, 1) pc.give_item2(27994, 1) pc.give_item2(50512, 1) clear_letter() set_state(__COMPLETE__)
end end end
state __COMPLETE__ begin end end
|
|
|
All times are GMT +1. The time now is 02:29.
|
|