|
You last visited: Today at 09:51
Advertisement
[SERVICE] Die Questkontrolle
Discussion on [SERVICE] Die Questkontrolle within the Metin2 Private Server forum part of the Metin2 category.
08/15/2011, 22:02
|
#3091
|
elite*gold: 12
Join Date: Jun 2009
Posts: 2,621
Received Thanks: 1,239
|
hey com ,
hier habe ich eine Reittier quest . Doch wie mache ich es so , dass der Zusatz effekt ( hier deff und angriff ) nur solange hält, wie man reitet .
Außerdem kann man auf einem Reittier nur 60 sekunden reitieren . Dannach wird man zurückverwandelt .
Kann es einer so ändern , dass man für 30 min darauf reiten kann ohne dass man abgesetzt wird und dass der effekt sich bei 2 Reittieren nacheinander nicht verdoppelt , b.z.w. addiert.
PHP Code:
quest Reittier begin state start begin when 70045.use begin say_title("Hey ".. pc.get_name() ..".") say_red("Welches Reittier Willst du Benutzen ?") local s = select("Löwe","Keiler","Feuer Tieger","Wolf","Exit","Weißer Löwe") if s == 1 then say_reward("Du Hast Dein Löwen gerufen") horse.ride() pc.mount(20113, 1800) affect.add_collect(apply.ATT_GRADE_BONUS,100,120) affect.add_collect(apply.DEF_GRADE_BONUS,200,120) end if s == 2 then say_reward("Du Hast Dein Keiler gerufen") horse.ride() pc.mount(20110, 1800) affect.add_collect(apply.ATT_GRADE_BONUS,100,120) affect.add_collect(apply.DEF_GRADE_BONUS,200,120) end if s == 3 then say_reward("Du Hast Dein Feuer Tieger gerufen") horse.ride() pc.mount(20112, 1800) affect.add_collect(apply.ATT_GRADE_BONUS,100,120) affect.add_collect(apply.DEF_GRADE_BONUS,200,120) end if s == 4 then say_reward("Du Hast Dein Wolf gerufen") horse.ride() pc.mount(20111, 1800) affect.add_collect(apply.ATT_GRADE_BONUS,100,120) affect.add_collect(apply.DEF_GRADE_BONUS,200,120) end if s == 6 then say_reward("Du Hast Dein Weißen Löwen gerufen") horse.ride() pc.mount(20114, 1800) affect.add_collect(apply.ATT_GRADE_BONUS,100,120) affect.add_collect(apply.DEF_GRADE_BONUS,200,120) end if s == 7 then say_reward("Du hast dich wieder zurückverwandelt.") pc.remove_polymorph() end if s == 8 then say_reward("Du Hast Dein Dunklen Keiler gerufen") horse.ride() pc.mount(20115, 1800) affect.add_collect(apply.ATT_GRADE_BONUS,100,120) affect.add_collect(apply.DEF_GRADE_BONUS,200,120) end if s == 9 then say_reward("Du Hast Dein Feuer Tieger gerufen") horse.ride() pc.mount(20116, 1800) affect.add_collect(apply.ATT_GRADE_BONUS,100,120) affect.add_collect(apply.DEF_GRADE_BONUS,200,120) end if s == 10 then say_reward("Du Hast Dein Dunklen Wolf gerufen") horse.ride() pc.mount(20117, 1800) affect.add_collect(apply.ATT_GRADE_BONUS,100,120) affect.add_collect(apply.DEF_GRADE_BONUS,200,120) end end end end
€ : halbe stunde eingefügt
€ : Wie geht das , dass der effekt Nur für das eine reittier geht und es sich nicht beim wiederholten aufsteigen addiert ?
|
|
|
08/15/2011, 22:16
|
#3092
|
elite*gold: 0
Join Date: Jan 2011
Posts: 2,903
Received Thanks: 1,262
|
pc.mount(20116)
zu
pc.mount(20116, 9999) zB
bei dem andren kann ich net helfen
|
|
|
08/15/2011, 22:25
|
#3093
|
elite*gold: 0
Join Date: Sep 2009
Posts: 154
Received Thanks: 8
|
Nabend,
ich hätte mal eben eine Frage und zwar;
wie lautet die Abfrage in einer Quest, wenn sie herausfinden soll welche Charrasse der Spieler hat?
Sprich, ob es ein Krieger, ein Ninja, ein Sura oder ein Schamane ist.
if pc.job == 1 then - Darauf kam ich schon, nur in meiner Db finde ich auch "Jobs" wie 7, 3 usw..
Danke im vorraus :3
|
|
|
08/15/2011, 22:44
|
#3094
|
elite*gold: 119
Join Date: Oct 2009
Posts: 301
Received Thanks: 197
|
Ich versuche es noch einmal meine quest zu pushen da ich mich echt freuen würde wen sie endlich mal läuft, aber ich vertraue euch da voll und ganz =)
PHP Code:
quest upitems begin state start begin when 20097.chat."upitems" begin say_title("Hong-Hae:") say("") say("Hallo!") say("Ich habe vor einigen Tagen ein Paar Leute kennen") say("Gelernt, jetzt wei? ich das sie bei der Mafia") say("t?tig sind. Daher komme ich an alle Upitems") say("die du dir nur Vorstellen kannst.") say("aber daher das ich gerne teile w?rde ich dir") say("10x ein zuf?lliges Upitem f?r nur 2kk Zukommen lassen.") say("") say_reward("M?chtest du mein Angebot Anehmen? ") say("") local s = select("Ja", "Nein") if s == 1 then
if pc.money>=2000000 then pc.changemoney("-2000000")
local s=number(1, 2) if 1>=s then -- 50% (1/2) say("Du hast 10x") say("Unbekanter Talisman +") say("erhalten") pc.give_item2(30079, 10) elseif 2>=s then -- 50% (1/2) say("Du hast 10x") say("Unbekanter Talisman ") say("erhalten") pc.give_item2(30051, 10)
// __> usw... <__ \\ elseif pc.money<2000000 then say("Wei?t du etwa nicht mit wem du dich Anlegst?") say("wenn du das n?chste mal meine zeit verschwenden") say("willst bringe wenigstens genug Geld mit!") say_reward("komm wieder wen du es dir Leisten kannst!") say("") end elseif s == 2 then return end end end end end state __COMPLETE__ begin when enter begin q.done() end end end
|
|
|
08/15/2011, 23:11
|
#3095
|
elite*gold: 15
Join Date: Sep 2010
Posts: 844
Received Thanks: 975
|
@ Drugsii
PHP Code:
quest upitems begin state start begin when 20097.chat."upitems" begin say_title("Hong-Hae:") say("") say("Hallo!") say("Ich habe vor einigen Tagen ein Paar Leute kennen") say("Gelernt, jetzt wei? ich das sie bei der Mafia") say("t?tig sind. Daher komme ich an alle Upitems") say("die du dir nur Vorstellen kannst.") say("aber daher das ich gerne teile w?rde ich dir") say("10x ein zuf?lliges Upitem f?r nur 2kk Zukommen lassen.") say("") say_reward("M?chtest du mein Angebot Anehmen? ") say("") local s = select("Ja", "Nein") if s == 1 then if pc.money >= 2000000 then pc.changemoney("-2000000") local zufall = number(1, 2) if zufall == 1 then -- 50% (1/2) say("Du hast 10x") say("Unbekanter Talisman +") say("erhalten") pc.give_item2(30079, 10) elseif zufall == 2 then -- 50% (1/2) say("Du hast 10x") say("Unbekanter Talisman ") say("erhalten") pc.give_item2(30051, 10) end elseif pc.money < 2000000 then say("Wei?t du etwa nicht mit wem du dich Anlegst?") say("wenn du das n?chste mal meine zeit verschwenden") say("willst bringe wenigstens genug Geld mit!") say_reward("komm wieder wen du es dir Leisten kannst!") say("") end elseif s == 2 then return end end end end
So eventuell  probiers mal
|
|
|
08/15/2011, 23:39
|
#3096
|
elite*gold: 0
Join Date: Sep 2009
Posts: 154
Received Thanks: 8
|
Quote:
Originally Posted by Brodan
Nabend,
ich hätte mal eben eine Frage und zwar;
wie lautet die Abfrage in einer Quest, wenn sie herausfinden soll welche Charrasse der Spieler hat?
Sprich, ob es ein Krieger, ein Ninja, ein Sura oder ein Schamane ist.
if pc.job == 1 then - Darauf kam ich schon, nur in meiner Db finde ich auch "Jobs" wie 7, 3 usw..
Danke im vorraus :3
|
Könnte mir das bitte jemand beantworten?
Danke :3
|
|
|
08/15/2011, 23:52
|
#3097
|
elite*gold: 119
Join Date: Oct 2009
Posts: 301
Received Thanks: 197
|
Quote:
Originally Posted by Sp0ngeb0b ist cool
@ Drugsii
PHP Code:
quest upitems begin
state start begin
when 20097.chat."upitems" begin
say_title("Hong-Hae:")
say("")
say("Hallo!")
say("Ich habe vor einigen Tagen ein Paar Leute kennen")
say("Gelernt, jetzt wei? ich das sie bei der Mafia")
say("t?tig sind. Daher komme ich an alle Upitems")
say("die du dir nur Vorstellen kannst.")
say("aber daher das ich gerne teile w?rde ich dir")
say("10x ein zuf?lliges Upitem f?r nur 2kk Zukommen lassen.")
say("")
say_reward("M?chtest du mein Angebot Anehmen? ")
say("")
local s = select("Ja", "Nein")
if s == 1 then
if pc.money >= 2000000 then
pc.changemoney("-2000000")
local zufall = number(1, 2)
if zufall == 1 then -- 50% (1/2)
say("Du hast 10x")
say("Unbekanter Talisman +")
say("erhalten")
pc.give_item2(30079, 10)
elseif zufall == 2 then -- 50% (1/2)
say("Du hast 10x")
say("Unbekanter Talisman ")
say("erhalten")
pc.give_item2(30051, 10)
end
elseif pc.money < 2000000 then
say("Wei?t du etwa nicht mit wem du dich Anlegst?")
say("wenn du das n?chste mal meine zeit verschwenden")
say("willst bringe wenigstens genug Geld mit!")
say_reward("komm wieder wen du es dir Leisten kannst!")
say("")
end
elseif s == 2 then
return
end
end
end
end
So eventuell  probiers mal 
|
vielen dank klappt so wie gedacht =)
|
|
|
08/16/2011, 01:19
|
#3098
|
elite*gold: 0
Join Date: Mar 2009
Posts: 142
Received Thanks: 72
|
wollte die ox quest so umstellen, dass sie ab level 40 betretbar ist. komme aber nicht weiter <.< immer wenn ich die make.sh datei ausführe kommt in virtual box dieser fehler:
77 rechte hab ich gegebn. weiss echt nicht an was es liegt. bin sicherlich 30-mal de ganze quest durch <.<
wär echt nett wenn mir einer den fehler sagen würde <.< und am besten gleich korrigiert
vielen dank und mfg antimask
PHP Code:
quest oxevent_manager begin
state start begin
when 20011.chat."OX-Wettbewerb" begin
if game.get_event_flag("oxevent_status") == 0 then
say("Hey - du da! Ja, genau du.")
say("Du siehst recht intelligent aus. Es gibt einen")
say("Wettbewerb, der heißt OX-Wettbewerb. Dort wird")
say("dein Wissen abgefragt. Wenn du gewinnst,")
say("bekommst du eine tolle Belohnung.")
say("Aber sei gewarnt! Der OX-Wettbewerb ist")
say("nichts für unerfahrene Spieler! Du musst")
say("mindestens Level 40 erreicht haben, um den")
say("schwierigen Fragen gewachsen zu sein.")
say("Natürlich kannst du aber einfach nur zusehen")
say("und dabei von den erfahreneren Spielern")
say("lernen.")
wait()
say("Der Startzeitpunkt ist allerdings noch nicht")
say("festgelegt. Sobald es los geht gebe ich dir")
say("Bescheid. Sei also immer bereit.")
say("")
elseif game.get_event_flag("oxevent_status") == 1 then
say("Der OX-Wettbewerb ist gestartet.")
say("Du kannst nun entweder selbst teilnehmen oder")
say("einfach nur zusehen.")
say("Auf die schlausten Teilnehmer warten tolle Preise.")
say("")
say_reward("Information:")
say_reward("Der OX-Wettbewerb ist ab Level 40.")
say("")
local s = select("Mitmachen", "Zusehen", "Abbrechen")
if s == 1 and pc.get_level() >= 40 then
say("Okay ich werde dich als Teilnehmer")
say("registrieren und dich teleportieren.")
say("Bis später!")
say("")
wait()
pc.warp(896500, 24600)
elseif s == 1 and pc.get_level() < 40 then
say("Leider bist du noch zu unerfahren um")
say("an einem OX-Wettbewerb teilzunehmen.")
say("Du musst mindestens Level 40 erreicht haben.")
say("Wenn du willst kannst du aber zusehen.")
local s = select("Zusehen", "Abbrechen")
if s == 1 then
say(Eine gute Entscheidung. Durch das")
say("Zusehen wirst du später keine Probleme")
say("haben dich den Fragen des OX-Wettbewerbs")
say("zustellen.")
say("Warte ein Moment. Ich werde dich")
say("sogleich als Zuschauer anmelden")
say("und zum OX-Platz teleportieren.")
say("")
wait()
pc.warp(896300, 28900)
end
elseif s == 2 then
say("Okay du möchtest nur zusehen?")
say("Kein Problem! Ich werde dich sofort")
say("als Zuschauer anmelden und")
say("zum OX-Platz teleportieren.")
say("")
wait()
pc.warp(896300, 28900)
end
elseif game.get_event_flag("oxevent_status") == 2 then
say("Der OX-Wettbewerb wurde bereits")
say("gestartet und es sind keine freien")
say("Teilnahmeplätze mehr verfügbar.")
say("Du kannst aber dennoch zusehen!")
say("")
say_reward("Möchtest du beim OX-Wettbewerb zusehen?")
say("")
local s = select("Zusehen", "Abbrechen")
if s == 1 then
say("Okay dein Wunsch ist mir Befehl!")
say("Ich werde dich sofort")
say("als Zuschauer anmelden und")
say("zum OX-Platz teleportieren.")
say("")
wait()
pc.warp(896300, 28900)
end
end
end
when 20358.chat."OX-Wettbewerb" with pc.is_gm() begin
local stat = oxevent.get_status()
if stat == 0 then
say("Der OX-Wettbewerb wurde noch nicht gestartet")
say("")
local s = select("Starten", "Abbrechen")
if s == 1 then
local v = oxevent.open()
if v == 0 then
say("Fehler beim Starten des")
say("OX-Wettbewerbes!")
say("")
elseif v == 1 then
say("Der OX-Wettbewerb wurde")
say("erfolgreich gestartet.")
say("")
notice_all("Der OX-Wettbewerb ist gestartet!")
notice_all("Um daran teilzunehmen, begebt euch")
notice_all("zu Uriel! Tolle Preise warten auf euch!")
notice_all("Teilnahmebedingung: Der OX-Wettbewerb ist ab Level 40!")
else
say("Unbekannter Fehler!")
say("")
end
end
elseif stat == 1 then
say("Der OX-Wettbewerb ist im Moment geöffnet, sodaß")
say("noch neue Teilnehmer hinzu kommen können.")
say("Willst du die Tore des OX-Platzes schließen?")
say("")
local s = select("Schließen", "Abbrechen")
if s == 1 then
oxevent.close()
say("Der OX-Wettbewerb wurde geschlossen")
say("neue Teilnehmer werden nichtmehr akzeptiert")
say("und kommen nur noch als Zuschauer auf den Platz")
say("")
notice_all("Der OX-Wettbewerb wurde geschlossen!")
notice_all("Weitere Teilnahmen werden nichtmehr akzeptiert!")
notice_all("Die Teilnahme als Zuschauer ist weiterhin möglich!")
end
elseif stat == 2 then
say("Wähle eine der folgenden Aktionen:")
say("")
local s = select("Frage Stellen", "Wettbewerb neu starten", "Wettbewerb Beenden", "Abbrechen")
if s == 1 then
local v = oxevent.quiz(1, 30)
if v == 0 then
say("Fehler beim Stellen der Frage!")
say("")
elseif v == 1 then
say("Die Frage wurde erfolgreich gestellt.")
say("")
else
say("Unbekannter Fehler!")
say("")
end
elseif s == 2 then
oxevent.end_event()
notice_all("Der OX-Wettbewerb ist nun zu Ende.")
notice_all("Später wird es erneut einen Wettbewerb geben!")
say("Der OX-Wettbewerb ist beendet. Und wurde")
say("für Später neu angekündigt.")
say("")
elseif s == 3 then
oxevent.end_event()
notice_all("Der OX-Wettbewerb ist nun zu Ende.")
notice_all("Hoffentlich hattet ihr euren Spaß!")
notice_all("Freut euch schon auf das nächste mal.")
say("Der OX-Wettbewerb ist beendet.")
say("")
end
elseif stat == 3 then
say("Status: Keine Fragen")
say("Bitte warte.")
say("")
else
say("Es gab einen Fehler.")
say("")
end
end
end
when 20358.chat."OX Abbrechen" with pc.is_gm() begin
say("Möchtest du den OX-Wettbewerb wirklich abbrechen?")
say("das kann zu Problemen führen.")
say("Möchtest du trotzdem abbrechen?")
say("")
local s = select("Ja", "Nein")
if s == 1 then
oxevent.end_event_force()
say("OX-Wettbewerb wurde abgebrochen!")
end
end
when 20358.chat."OX-Gewinn festlegen" with pc.is_gm() begin
say("Hier kannst du den Preis für")
say("den/die Gewinner festlegen.")
say("")
say("Item ID:")
local item_vnum = input()
say("Anzahl:")
say("")
local item_count = input()
oxevent.give_item(item_vnum, item_count)
say("Der Preis"..oxevent.get_attender().." wurde verteilt.")
say("")
end
end
end
|
|
|
08/16/2011, 01:42
|
#3099
|
elite*gold: 15
Join Date: Sep 2010
Posts: 844
Received Thanks: 975
|
@ anti:
PHP Code:
quest oxevent_manager begin state start begin when 20011.chat."OX-Wettbewerb" begin if game.get_event_flag("oxevent_status") == 0 then say("Hey - du da! Ja, genau du.") say("Du siehst recht intelligent aus. Es gibt einen") say("Wettbewerb, der heißt OX-Wettbewerb. Dort wird") say("dein Wissen abgefragt. Wenn du gewinnst,") say("bekommst du eine tolle Belohnung.") say("Aber sei gewarnt! Der OX-Wettbewerb ist") say("nichts für unerfahrene Spieler! Du musst") say("mindestens Level 40 erreicht haben, um den") say("schwierigen Fragen gewachsen zu sein.") say("Natürlich kannst du aber einfach nur zusehen") say("und dabei von den erfahreneren Spielern") say("lernen.") wait() say("Der Startzeitpunkt ist allerdings noch nicht") say("festgelegt. Sobald es los geht gebe ich dir") say("Bescheid. Sei also immer bereit.") say("") elseif game.get_event_flag("oxevent_status") == 1 then say("Der OX-Wettbewerb ist gestartet.") say("Du kannst nun entweder selbst teilnehmen oder") say("einfach nur zusehen.") say("Auf die schlausten Teilnehmer warten tolle Preise.") say("") say_reward("Information:") say_reward("Der OX-Wettbewerb ist ab Level 40.") say("")
local s = select("Mitmachen", "Zusehen", "Abbrechen")
if s == 1 then if pc.get_level() >= 40 say("Okay ich werde dich als Teilnehmer") say("registrieren und dich teleportieren.") say("Bis später!") say("")
wait()
pc.warp(896500, 24600) else say("Leider bist du noch zu unerfahren um") say("an einem OX-Wettbewerb teilzunehmen.") say("Du musst mindestens Level 40 erreicht haben.") say("Wenn du willst kannst du aber zusehen.") local x = select("Zusehen", "Abbrechen") if x == 1 then say("Eine gute Entscheidung. Durch das") say("Zusehen wirst du später keine Probleme") say("haben dich den Fragen des OX-Wettbewerbs") say("zustellen.") say("Warte ein Moment. Ich werde dich") say("sogleich als Zuschauer anmelden") say("und zum OX-Platz teleportieren.") say("") wait() pc.warp(896300, 28900) elseif x == 2 then return end end elseif s == 2 then say("Okay du möchtest nur zusehen?") say("Kein Problem! Ich werde dich sofort") say("als Zuschauer anmelden und") say("zum OX-Platz teleportieren.") say("")
wait()
pc.warp(896300, 28900) elseif s == 3 then return end elseif game.get_event_flag("oxevent_status") == 2 then say("Der OX-Wettbewerb wurde bereits") say("gestartet und es sind keine freien") say("Teilnahmeplätze mehr verfügbar.") say("Du kannst aber dennoch zusehen!") say("") say_reward("Möchtest du beim OX-Wettbewerb zusehen?") say("")
local y = select("Zusehen", "Abbrechen") if y == 1 then say("Okay dein Wunsch ist mir Befehl!") say("Ich werde dich sofort") say("als Zuschauer anmelden und") say("zum OX-Platz teleportieren.") say("")
wait()
pc.warp(896300, 28900) end end end when 20358.chat."OX-Wettbewerb" with pc.is_gm() begin
local stat = oxevent.get_status()
if stat == 0 then say("Der OX-Wettbewerb wurde noch nicht gestartet") say("")
local s = select("Starten", "Abbrechen")
if s == 1 then local v = oxevent.open()
if v == 0 then say("Fehler beim Starten des") say("OX-Wettbewerbes!") say("") elseif v == 1 then say("Der OX-Wettbewerb wurde") say("erfolgreich gestartet.") say("")
notice_all("Der OX-Wettbewerb ist gestartet!") notice_all("Um daran teilzunehmen, begebt euch") notice_all("zu Uriel! Tolle Preise warten auf euch!") notice_all("Teilnahmebedingung: Der OX-Wettbewerb ist ab Level 40!") else say("Unbekannter Fehler!") say("") end end elseif stat == 1 then say("Der OX-Wettbewerb ist im Moment geöffnet, sodaß") say("noch neue Teilnehmer hinzu kommen können.") say("Willst du die Tore des OX-Platzes schließen?") say("")
local s = select("Schließen", "Abbrechen")
if s == 1 then oxevent.close() say("Der OX-Wettbewerb wurde geschlossen") say("neue Teilnehmer werden nichtmehr akzeptiert") say("und kommen nur noch als Zuschauer auf den Platz") say("") notice_all("Der OX-Wettbewerb wurde geschlossen!") notice_all("Weitere Teilnahmen werden nichtmehr akzeptiert!") notice_all("Die Teilnahme als Zuschauer ist weiterhin möglich!") end elseif stat == 2 then say("Wähle eine der folgenden Aktionen:") say("")
local s = select("Frage Stellen", "Wettbewerb neu starten", "Wettbewerb Beenden", "Abbrechen")
if s == 1 then local v = oxevent.quiz(1, 30)
if v == 0 then say("Fehler beim Stellen der Frage!") say("") elseif v == 1 then say("Die Frage wurde erfolgreich gestellt.") say("") else say("Unbekannter Fehler!") say("") end elseif s == 2 then oxevent.end_event()
notice_all("Der OX-Wettbewerb ist nun zu Ende.") notice_all("Später wird es erneut einen Wettbewerb geben!")
say("Der OX-Wettbewerb ist beendet. Und wurde") say("für Später neu angekündigt.") say("") elseif s == 3 then oxevent.end_event()
notice_all("Der OX-Wettbewerb ist nun zu Ende.") notice_all("Hoffentlich hattet ihr euren Spaß!") notice_all("Freut euch schon auf das nächste mal.")
say("Der OX-Wettbewerb ist beendet.") say("") end elseif stat == 3 then say("Status: Keine Fragen") say("Bitte warte.") say("") else say("Es gab einen Fehler.") say("") end end end when 20358.chat."OX Abbrechen" with pc.is_gm() begin say("Möchtest du den OX-Wettbewerb wirklich abbrechen?") say("das kann zu Problemen führen.") say("Möchtest du trotzdem abbrechen?") say("")
local s = select("Ja", "Nein")
if s == 1 then oxevent.end_event_force()
say("OX-Wettbewerb wurde abgebrochen!") end end
when 20358.chat."OX-Gewinn festlegen" with pc.is_gm() begin say("Hier kannst du den Preis für") say("den/die Gewinner festlegen.") say("") say("Item ID:") local item_vnum = input()
say("Anzahl:") say("")
local item_count = input()
oxevent.give_item(item_vnum, item_count)
say("Der Preis"..oxevent.get_attender().." wurde verteilt.") say("") end end end
probiers mal so
Ps: hab mir nur den oberen Teil mit der level 40 abfrage angeschaut, den rest nicht.
|
|
|
08/16/2011, 09:00
|
#3100
|
elite*gold: 0
Join Date: Mar 2009
Posts: 142
Received Thanks: 72
|
super! der obere teil geht nun nach vbox. (hast nur ein then vergessen bei einem if, aber das war ja nicht das problem ^^)
nun kommt aber in vbox diese fehlermeldung:
Hier nochmal die quest mit dem verbessertene "then" fehler^^
PHP Code:
quest oxevent_manager begin
state start begin
when 20011.chat."OX-Wettbewerb" begin
if game.get_event_flag("oxevent_status") == 0 then
say("Hey - du da! Ja, genau du.")
say("Du siehst recht intelligent aus. Es gibt einen")
say("Wettbewerb, der heißt OX-Wettbewerb. Dort wird")
say("dein Wissen abgefragt. Wenn du gewinnst,")
say("bekommst du eine tolle Belohnung.")
say("Aber sei gewarnt! Der OX-Wettbewerb ist")
say("nichts für unerfahrene Spieler! Du musst")
say("mindestens Level 40 erreicht haben, um den")
say("schwierigen Fragen gewachsen zu sein.")
say("Natürlich kannst du aber einfach nur zusehen")
say("und dabei von den erfahreneren Spielern")
say("lernen.")
wait()
say("Der Startzeitpunkt ist allerdings noch nicht")
say("festgelegt. Sobald es los geht gebe ich dir")
say("Bescheid. Sei also immer bereit.")
say("")
elseif game.get_event_flag("oxevent_status") == 1 then
say("Der OX-Wettbewerb ist gestartet.")
say("Du kannst nun entweder selbst teilnehmen oder")
say("einfach nur zusehen.")
say("Auf die schlausten Teilnehmer warten tolle Preise.")
say("")
say_reward("Information:")
say_reward("Der OX-Wettbewerb ist ab Level 40.")
say("")
local s = select("Mitmachen", "Zusehen", "Abbrechen")
if s == 1 then
if pc.get_level() >= 40 then
say("Okay ich werde dich als Teilnehmer")
say("registrieren und dich teleportieren.")
say("Bis später!")
say("")
wait()
pc.warp(896500, 24600)
else
say("Leider bist du noch zu unerfahren um")
say("an einem OX-Wettbewerb teilzunehmen.")
say("Du musst mindestens Level 40 erreicht haben.")
say("Wenn du willst kannst du aber zusehen.")
local x = select("Zusehen", "Abbrechen")
if x == 1 then
say("Eine gute Entscheidung. Durch das")
say("Zusehen wirst du später keine Probleme")
say("haben dich den Fragen des OX-Wettbewerbs")
say("zustellen.")
say("Warte ein Moment. Ich werde dich")
say("sogleich als Zuschauer anmelden")
say("und zum OX-Platz teleportieren.")
say("")
wait()
pc.warp(896300, 28900)
elseif x == 2 then
return
end
end
elseif s == 2 then
say("Okay du möchtest nur zusehen?")
say("Kein Problem! Ich werde dich sofort")
say("als Zuschauer anmelden und")
say("zum OX-Platz teleportieren.")
say("")
wait()
pc.warp(896300, 28900)
elseif s == 3 then
return
end
elseif game.get_event_flag("oxevent_status") == 2 then
say("Der OX-Wettbewerb wurde bereits")
say("gestartet und es sind keine freien")
say("Teilnahmeplätze mehr verfügbar.")
say("Du kannst aber dennoch zusehen!")
say("")
say_reward("Möchtest du beim OX-Wettbewerb zusehen?")
say("")
local y = select("Zusehen", "Abbrechen")
if y == 1 then
say("Okay dein Wunsch ist mir Befehl!")
say("Ich werde dich sofort")
say("als Zuschauer anmelden und")
say("zum OX-Platz teleportieren.")
say("")
wait()
pc.warp(896300, 28900)
end
end
end
when 20358.chat."OX-Wettbewerb" with pc.is_gm() begin
local stat = oxevent.get_status()
if stat == 0 then
say("Der OX-Wettbewerb wurde noch nicht gestartet")
say("")
local s = select("Starten", "Abbrechen")
if s == 1 then
local v = oxevent.open()
if v == 0 then
say("Fehler beim Starten des")
say("OX-Wettbewerbes!")
say("")
elseif v == 1 then
say("Der OX-Wettbewerb wurde")
say("erfolgreich gestartet.")
say("")
notice_all("Der OX-Wettbewerb ist gestartet!")
notice_all("Um daran teilzunehmen, begebt euch")
notice_all("zu Uriel! Tolle Preise warten auf euch!")
notice_all("Teilnahmebedingung: Der OX-Wettbewerb ist ab Level 40!")
else
say("Unbekannter Fehler!")
say("")
end
end
elseif stat == 1 then
say("Der OX-Wettbewerb ist im Moment geöffnet, sodaß")
say("noch neue Teilnehmer hinzu kommen können.")
say("Willst du die Tore des OX-Platzes schließen?")
say("")
local s = select("Schließen", "Abbrechen")
if s == 1 then
oxevent.close()
say("Der OX-Wettbewerb wurde geschlossen")
say("neue Teilnehmer werden nichtmehr akzeptiert")
say("und kommen nur noch als Zuschauer auf den Platz")
say("")
notice_all("Der OX-Wettbewerb wurde geschlossen!")
notice_all("Weitere Teilnahmen werden nichtmehr akzeptiert!")
notice_all("Die Teilnahme als Zuschauer ist weiterhin möglich!")
end
elseif stat == 2 then
say("Wähle eine der folgenden Aktionen:")
say("")
local s = select("Frage Stellen", "Wettbewerb neu starten", "Wettbewerb Beenden", "Abbrechen")
if s == 1 then
local v = oxevent.quiz(1, 30)
if v == 0 then
say("Fehler beim Stellen der Frage!")
say("")
elseif v == 1 then
say("Die Frage wurde erfolgreich gestellt.")
say("")
else
say("Unbekannter Fehler!")
say("")
end
elseif s == 2 then
oxevent.end_event()
notice_all("Der OX-Wettbewerb ist nun zu Ende.")
notice_all("Später wird es erneut einen Wettbewerb geben!")
say("Der OX-Wettbewerb ist beendet. Und wurde")
say("für Später neu angekündigt.")
say("")
elseif s == 3 then
oxevent.end_event()
notice_all("Der OX-Wettbewerb ist nun zu Ende.")
notice_all("Hoffentlich hattet ihr euren Spaß!")
notice_all("Freut euch schon auf das nächste mal.")
say("Der OX-Wettbewerb ist beendet.")
say("")
end
elseif stat == 3 then
say("Status: Keine Fragen")
say("Bitte warte.")
say("")
else
say("Es gab einen Fehler.")
say("")
end
end
end
when 20358.chat."OX Abbrechen" with pc.is_gm() begin
say("Möchtest du den OX-Wettbewerb wirklich abbrechen?")
say("das kann zu Problemen führen.")
say("Möchtest du trotzdem abbrechen?")
say("")
local s = select("Ja", "Nein")
if s == 1 then
oxevent.end_event_force()
say("OX-Wettbewerb wurde abgebrochen!")
end
end
when 20358.chat."OX-Gewinn festlegen" with pc.is_gm() begin
say("Hier kannst du den Preis für")
say("den/die Gewinner festlegen.")
say("")
say("Item ID:")
local item_vnum = input()
say("Anzahl:")
say("")
local item_count = input()
oxevent.give_item(item_vnum, item_count)
say("Der Preis"..oxevent.get_attender().." wurde verteilt.")
say("")
end
end
end
|
|
|
08/16/2011, 10:49
|
#3101
|
elite*gold: 26
Join Date: Mar 2010
Posts: 3,765
Received Thanks: 2,661
|
machs so, du hattest zwischendrin ein end zuviel
PHP Code:
quest oxevent_manager begin state start begin when 20011.chat."OX-Wettbewerb" begin if game.get_event_flag("oxevent_status") == 0 then say("Hey - du da! Ja, genau du.") say("Du siehst recht intelligent aus. Es gibt einen") say("Wettbewerb, der heißt OX-Wettbewerb. Dort wird") say("dein Wissen abgefragt. Wenn du gewinnst,") say("bekommst du eine tolle Belohnung.") say("Aber sei gewarnt! Der OX-Wettbewerb ist") say("nichts für unerfahrene Spieler! Du musst") say("mindestens Level 40 erreicht haben, um den") say("schwierigen Fragen gewachsen zu sein.") say("Natürlich kannst du aber einfach nur zusehen") say("und dabei von den erfahreneren Spielern") say("lernen.") wait() say("Der Startzeitpunkt ist allerdings noch nicht") say("festgelegt. Sobald es los geht gebe ich dir") say("Bescheid. Sei also immer bereit.") say("") elseif game.get_event_flag("oxevent_status") == 1 then say("Der OX-Wettbewerb ist gestartet.") say("Du kannst nun entweder selbst teilnehmen oder") say("einfach nur zusehen.") say("Auf die schlausten Teilnehmer warten tolle Preise.") say("") say_reward("Information:") say_reward("Der OX-Wettbewerb ist ab Level 40.") say("") local s = select("Mitmachen", "Zusehen", "Abbrechen") if s == 1 then if pc.get_level() >= 40 then say("Okay ich werde dich als Teilnehmer") say("registrieren und dich teleportieren.") say("Bis später!") say("") wait() pc.warp(896500, 24600) else say("Leider bist du noch zu unerfahren um") say("an einem OX-Wettbewerb teilzunehmen.") say("Du musst mindestens Level 40 erreicht haben.") say("Wenn du willst kannst du aber zusehen.") local x = select("Zusehen", "Abbrechen") if x == 1 then say("Eine gute Entscheidung. Durch das") say("Zusehen wirst du später keine Probleme") say("haben dich den Fragen des OX-Wettbewerbs") say("zustellen.") say("Warte ein Moment. Ich werde dich") say("sogleich als Zuschauer anmelden") say("und zum OX-Platz teleportieren.") say("") wait() pc.warp(896300, 28900) elseif x == 2 then return end end elseif s == 2 then say("Okay du möchtest nur zusehen?") say("Kein Problem! Ich werde dich sofort") say("als Zuschauer anmelden und") say("zum OX-Platz teleportieren.") say("") wait() pc.warp(896300, 28900) elseif s == 3 then return end elseif game.get_event_flag("oxevent_status") == 2 then say("Der OX-Wettbewerb wurde bereits") say("gestartet und es sind keine freien") say("Teilnahmeplätze mehr verfügbar.") say("Du kannst aber dennoch zusehen!") say("") say_reward("Möchtest du beim OX-Wettbewerb zusehen?") say("") local y = select("Zusehen", "Abbrechen") if y == 1 then say("Okay dein Wunsch ist mir Befehl!") say("Ich werde dich sofort") say("als Zuschauer anmelden und") say("zum OX-Platz teleportieren.") say("") wait() pc.warp(896300, 28900) end end end when 20358.chat."OX-Wettbewerb" with pc.is_gm() begin local stat = oxevent.get_status() if stat == 0 then say("Der OX-Wettbewerb wurde noch nicht gestartet") say("") local s = select("Starten", "Abbrechen") if s == 1 then local v = oxevent.open() if v == 0 then say("Fehler beim Starten des") say("OX-Wettbewerbes!") say("") elseif v == 1 then say("Der OX-Wettbewerb wurde") say("erfolgreich gestartet.") say("") notice_all("Der OX-Wettbewerb ist gestartet!") notice_all("Um daran teilzunehmen, begebt euch") notice_all("zu Uriel! Tolle Preise warten auf euch!") notice_all("Teilnahmebedingung: Der OX-Wettbewerb ist ab Level 40!") else say("Unbekannter Fehler!") say("") end end elseif stat == 1 then say("Der OX-Wettbewerb ist im Moment geöffnet, sodaß") say("noch neue Teilnehmer hinzu kommen können.") say("Willst du die Tore des OX-Platzes schließen?") say("") local s = select("Schließen", "Abbrechen") if s == 1 then oxevent.close() say("Der OX-Wettbewerb wurde geschlossen") say("neue Teilnehmer werden nichtmehr akzeptiert") say("und kommen nur noch als Zuschauer auf den Platz") say("") notice_all("Der OX-Wettbewerb wurde geschlossen!") notice_all("Weitere Teilnahmen werden nichtmehr akzeptiert!") notice_all("Die Teilnahme als Zuschauer ist weiterhin möglich!") end elseif stat == 2 then say("Wähle eine der folgenden Aktionen:") say("") local s = select("Frage Stellen", "Wettbewerb neu starten", "Wettbewerb Beenden", "Abbrechen") if s == 1 then local v = oxevent.quiz(1, 30) if v == 0 then say("Fehler beim Stellen der Frage!") say("") elseif v == 1 then say("Die Frage wurde erfolgreich gestellt.") say("") else say("Unbekannter Fehler!") say("") end elseif s == 2 then oxevent.end_event() notice_all("Der OX-Wettbewerb ist nun zu Ende.") notice_all("Später wird es erneut einen Wettbewerb geben!")
say("Der OX-Wettbewerb ist beendet. Und wurde") say("für Später neu angekündigt.") say("") elseif s == 3 then oxevent.end_event() notice_all("Der OX-Wettbewerb ist nun zu Ende.") notice_all("Hoffentlich hattet ihr euren Spaß!") notice_all("Freut euch schon auf das nächste mal.")
say("Der OX-Wettbewerb ist beendet.") say("") end elseif stat == 3 then say("Status: Keine Fragen") say("Bitte warte.") say("") else say("Es gab einen Fehler.") say("") end end when 20358.chat."OX Abbrechen" with pc.is_gm() begin say("Möchtest du den OX-Wettbewerb wirklich abbrechen?") say("das kann zu Problemen führen.") say("Möchtest du trotzdem abbrechen?") say("") local s = select("Ja", "Nein") if s == 1 then oxevent.end_event_force() say("OX-Wettbewerb wurde abgebrochen!") end end when 20358.chat."OX-Gewinn festlegen" with pc.is_gm() begin say("Hier kannst du den Preis für") say("den/die Gewinner festlegen.") say("") say("Item ID:") local item_vnum = input() say("Anzahl:") say("") local item_count = input() oxevent.give_item(item_vnum, item_count) say("Der Preis"..oxevent.get_attender().." wurde verteilt.") say("") end end end
|
|
|
08/16/2011, 11:04
|
#3102
|
elite*gold: 0
Join Date: Mar 2009
Posts: 142
Received Thanks: 72
|
klappt wunderbar!
vielen vielen vielen dank an .Delta und an Sp0ngeb0b ist cool
solche leute brauchts hier
mfg antimask
edit: alles geklärt! musste es einfach nochmal neu kopieren danach gings!
nochmals vielen dank
mfg antimask
|
|
|
08/16/2011, 19:26
|
#3103
|
elite*gold: 187
Join Date: Aug 2010
Posts: 121
Received Thanks: 96
|
funktioniert auch nicht habe bei den warps coords ohne 2 nullen und mit 2nullen probiert...
PHP Code:
quest gammler begin
state start begin
when 20359.chat."Map Teleporter" begin
say_title("Map_Teleporter:")
say("Da einige Leute Schwierigkeiten haben,")
say("den langen Weg zu überstehen und zu finden,")
say("habe ich für Sie einen anderen Weg geöffnet.")
wait()
if pc.count_item(70025) >= 1 then
say_title("Map_Teleporter:")
say("Da du das Item besitzt, werde ich dich teleportieren.")
say("Aber es soll sehr gefährlich sein.")
local s = select("Farm Map","BlauerTod Run","Drachenraum","abbrechen")
if s == 1 then
pc.warp(832,0)
chat("Viel Glück")
elseif s == 2 then
pc.warp(80845,895)
chat("Viel Glück")
elseif s == 3 then
pc.warp(1719,12213)
chat("Viel Glück")
elseif s == 4 then
say("Dann nicht!")
return
end
else
say_title("MapTeleporter:")
say("Du benötigst 1 Ring der Würde zum teleportieren,")
say("ohne ihn erteile ich dir keinen Zutritt.")
say_item_vnum(70025)
end
end
end
end
|
|
|
08/16/2011, 20:48
|
#3104
|
elite*gold: 0
Join Date: Jan 2011
Posts: 2,903
Received Thanks: 1,262
|
ich habe mal eine frage an euch quest pros  ich möchte das bei der quest statts nur der name online oder offline
aber er muss auch online sein das ist das was ich nicht hinbekomme
PHP Code:
quest usercp begin state start begin when 70042.use begin say_title("Userpanel") say("") say("Mit diesem Item kannst du dein Userpanel") say("aufrufen! Viel Spaß!") say_reward("Wähle aus, was du tun willst:") say("") local a = select("Das Team","Rotes Reich","Gelbes Reich","Blaues Reich","Farmmap","Abbrechen") if a == 6 then return
elseif a == 1 then say_title("Das Team") say("") say("Das Team besteht aus:") say_reward("GM name") say_reward("GM name") say_reward("GM name") say_reward("GM name") say_reward("GM name") say_reward("GM name") elseif a == 2 then pc.warp(474300, 954800)
elseif a == 3 then pc.warp(63800, 166400) elseif a == 4 then pc.warp(959900, 269200)
elseif a == 5 then pc.warp(83200, 0) end end end end
ich hoffe ihr könnt mir helfen
|
|
|
08/16/2011, 21:36
|
#3105
|
elite*gold: 0
Join Date: May 2010
Posts: 458
Received Thanks: 486
|
hallo mein sd2 porter geht nicht ka warum er portet mich nicht xD
-------------------------------------
--Metin2 Premium Zone Pass Quest
------------------------------------
quest check_trans_ticket begin
state start begin
when login or levelup with pc.level >0 begin
set_state(zone_enter)
end
end
state zone_enter begin
when 20088.chat."Zu den Geheimen Höhlen." begin
say("")
say(""..mob_name(20088).."")
say("Sei gegrüßt, Wanderer!")
say("Ich bin der Wächter der Geheimen Spinnenhöhle.")
say("Lass mich feststellen, ob du würdig genug bist,")
say("die geheimen Höhlen zu betreten.")
say("")
wait()
say("")
say("")
if pc.get_premium_remain_sec(PREMIUM_EXP) > 0 then
say("")
say("Du erscheinst mir wircklich mutig.")
say("Mit dem 'Passierschein' darfst")
say("du passieren...")
wait()
pc.warp(704100,464100)
return
end
if pc.count_item(71095)>0 then
say("")
say(""..mob_name(20088).."")
say("Du erscheinst mir wircklich mutig.")
say("Mit dem 'Passierschein' darfst")
say("du passieren...")
say("")
pc.remove_item(71095)
char_log(0,"GO_SPIDER2","USE_ITEM(71095)")
elseif pc.count_item(71096) >0 then
say("")
say(""..mob_name(20088).."")
say("Du erscheinst mir wircklich mutig.")
say("Mit dem 'Passierschein' darfst")
say("du passieren...")
say("")
char_log(0,"GO_SPIDER2","USE_ITEM(71096)")
else
say("")
say(""..mob_name(20088).."")
say("Komm wieder, wenn du im Besitz des")
say("Passierscheins bist.")
return
end
say("...folge mir.")
wait()
pc.warp(704100, 464100)
end
end
end
|
|
|
All times are GMT +1. The time now is 09:51.
|
|