|
You last visited: Today at 08:29
Advertisement
[SERVICE] Die Questkontrolle
Discussion on [SERVICE] Die Questkontrolle within the Metin2 Private Server forum part of the Metin2 category.
12/15/2014, 18:58
|
#10741
|
elite*gold: 0
Join Date: Sep 2014
Posts: 58
Received Thanks: 4
|
Quote:
Originally Posted by .Delta
Ist beides mal die gleiche Quest.
Lass mich raten, die Anzahl wurde bei jedem Login zurückgesetzt?
Ich habe da mal noch n zusätzlichen state reingepackt.
PHP Code:
quest halbmondring begin
state start begin
when login or levelup with pc.get_level() >= 30 begin
set_state(information)
end
end
state information begin
when letter begin
send_letter("Zerstöre 300 Metin-Steine!")
end
when info or button begin
say_title("Zerstöre 300 Metin-Steine!")
say("")
pc.setqf("state", 0)
q.set_counter("Verbleibend",300)
set_state(killmonster)
end
end
state killmonster begin
when letter begin
send_letter("Zerstöre die Metin-Steine!")
end
when info or button begin
say_title("Zerstöre die Metin-Steine!")
say_reward( "Es fehlen noch " .. 300 - pc.getqf("state") .. " Metin-Steine .")
say("")
end
when kill with npc.get_race() == 8007 begin
local count = pc.getqf("state") + 1
pc.setqf("state", count)
q.set_counter("Verbleibend", 300 - count)
if count == 300 then
say_title("Aufgabe abgeschlossen!")
say("Alle 300 Metin-Steine wurden zerstört.")
say("Erhalte deine Belohnung:")
say_reward("Halbmondring erhalten")
say_reward("1.000.000 Yang erhalten")
pc.give_gold(1000000)
pc.give_item2(71135, 1)
set_state( __COMPLETE__ )
end
end
end
state __COMPLETE__ begin
end
end
|
Die funktioniert erst gar nicht.
Sprich ab Level 30 hat man die Quest nicht.
|
|
|
12/15/2014, 20:15
|
#10742
|
elite*gold: 250
Join Date: Dec 2012
Posts: 652
Received Thanks: 195
|
Quote:
quest restart begin
state start begin
when login with pc.get_name() == "[SL]XY", "[SA]XY" begin
when letter begin
send_letter("Server Reboot")
say_title("Reboot:")
say("")
say("Möchtest du deinen Server neustarten?")
local v = select ("Ja", "Nein")
if v == 2 then return
elseif v == 1 then
say_title("Neustartsequenz eingeleitet:")
say("")
say("Es wurde eine Ankündigung an die Spieler")
say("bekanntgegeben, reboot folgt in 5 Minuten.")
say("")
notice_all("In 5 Minuten erfolgt auf dem Server ein Reboot / Neustart")
notice_all("Bitte loggt euch alle Rechtzeitig aus um Itemverluste zu vermeiden.")
timer("boottime", 60*5) -- 5 Minuten Timer
end
end
when boottime.timer begin
os.execute("cd /usr/home/game && sh restart.sh")
end
end
end
|
Möchte das diese Quest bei den 2 genannten Namen dauerhaft als Questrolle erscheint nur funkt die quest nicht :/
Quote:
restarter.quest:3:syntax error : [string "startpc . get_name ( ) == "[SL]XY" , "[SA]XY""]:1: `then' expected near `,'
Error occured on compile restarter.quest
|
|
|
|
12/16/2014, 09:21
|
#10743
|
elite*gold: 35
Join Date: Aug 2014
Posts: 336
Received Thanks: 267
|
Quote:
Originally Posted by .Aecho.
Möchte das diese Quest bei den 2 genannten Namen dauerhaft als Questrolle erscheint nur funkt die quest nicht :/
|
Probiers mal damit
#untested
______
Beachte bitte das die Namensabfrage nicht die optimale Lösung ist.
Code:
quest restart begin
state start begin
when login with pc.get_name() == "[SL]XY" begin
set_state(information)
end
when login with pc.get_name() == "[SA]XY" begin
set_state(information)
end
end
state information begin
when letter begin
send_letter("Reboot")
end
when button or info begin
say_title("Reboot:")
say("Möchtest du den Server rebooten?")
local v = select("Ja","Nein")
if v == 2 then return end
if v == 1 then
say_title("Neustartsequenz eingeleitet:")
say("")
say("Es wurde eine Ankündigung an die Spieler")
say("bekanntgegeben, Reboot erfolgt in 5 Minuten.")
say("")
notice_all("In 5 Minuten erfolgt auf dem Server ein Neustart/Reboot")
notice_all("Loggt euch bitte rechtzeitig aus um Itemverluste zu vermeiden.")
timer("boottime", 60*5)
end
end
when boottime.timer begin
os.execute("cd /usr/home/game && sh restart.sh")
end
end
end
Quote:
Originally Posted by exi9987
Danke , aber funktioniert leider immer noch nicht , als GM wenn ich auf Level 25 Setze bekomme ich ein Kampfgaul , und das Pferdebild aber level Steigt nur ganz Kurz auf 1 danah direkt wieder Level 0
Bei anderen Spieler (frisch erstellt) ebenfalls mit dem Befehl
/a XXX 25 gemacht keinerlei reaktion da passiert nix.
|
Code:
quest pony begin
state start begin
when login or levelup with pc.get_level() >= 20 and pc.getqf("pferdbekommen") == 0 begin
pc.setqf("pferdbekommen") == 1
set_state(pony)
end
end
state pony begin
when levelup with pc.get_level() >= 24 begin
pc.set_skill_level(131, 1) --Pferderufen Stufe 1
horse.set_level(1) --Pferdlvl
horse.summon()
horse.ride()
chat("Anfänger Pferd erhalten.")
if pc.count_item(50051) == 0 then
pc.give_item2(50051, 1)
end
end
end
end
Probier es damit. Sollte gehen. Ich habe dir noch eingebaut das man es einmal bekommt, dann nie wieder.
Denke mal das du das auch so wolltest. Ansonsten pack die pc.getqf / setqf pferdbekommen raus
|
|
|
12/16/2014, 10:11
|
#10744
|
elite*gold: 0
Join Date: Jun 2012
Posts: 842
Received Thanks: 112
|
Kann sich jemand mal die Quest anschauen & sagen, ob alles passt?
Habe das Gefühl, dass sich die Quest's irgendwie in die Quere kommen, wenn ich beide gleichzeitig aktiviert habe.
PHP Code:
quest mondi begin state start begin when 20011.chat."Mondlichttruhen-Event" with pc.get_name() == "[SL]X" begin
if game.get_event_flag("event_mondi") != 1 then say_title("Mondlichttruhen-Event") say("") say_reward("Das Mondlichttruhen Event ist Aus") say_reward("Möchtest du es Starten?") local a = select("Ja", "Nein") if a == 1 then say_title("Mondlichttruhen-Event") say_reward("Wie lange soll das Event gehen?") say_reward("Länge in Minuten eingeben: ") zeit = input() if zeit == '' then return else zeit_m = tonumber(zeit) say_title("Mondlichttruhen Event") say("") say_reward("Möchtest du das Event für "..zeit_m.." Minuten laufen lassen?") local b = select("Ja", "Nein") if b == 1 then server_timer("event_mondi", zeit_m*60) game.set_event_flag("event_mondi", 1) notice_all("Das Mondlichttruhen-Event hat gestartet") else return end end else return end else say_title("Mondlichttruhen-Event") say("") say_reward("Das Mondlichttruhen-Event ist An") say_reward("Möchtest du es Anhalten?") local c = select("Ja", "Nein") if c == 1 then game.set_event_flag("event_mondi", 0) notice_all("Das Mondlichttruhen-Event wurde beendet") else return end end end when event_zeit.server_timer with game.get_event_flag("event_mondi") != 0 begin game.set_event_flag("event_mondi", 0) notice_all("Das Mondlichttruhen-Event wurde beendet") end when kill with game.get_event_flag("event_mondi") == 1 and not npc.is_pc() begin local s=number(1, 250) if 5 == s then game.drop_item_with_ownership(50011,1) end end when 20011.chat."Fußball-Event" with pc.get_name() == "[SL]Celinei" begin if game.get_event_flag("event_fußball") != 1 then say_title("Fußball-Event") say("") say_reward("Das Fußball Event ist Aus") say_reward("Möchtest du es Starten?") local a = select("Ja", "Nein") if a == 1 then say_title("Fußball-Event") say_reward("Wie lange soll das Event gehen?") say_reward("Länge in Minuten eingeben: ") zeit = input() if zeit == '' then return else zeit_m = tonumber(zeit) say_title("Fußball Event") say("") say_reward("Möchtest du das Event für "..zeit_m.." Minuten laufen lassen?") local b = select("Ja", "Nein") if b == 1 then server_timer("event_zeit", zeit_m*60) game.set_event_flag("event_fußball", 1) notice_all("Das Fußball-Drop-Event hat gestartet") else return end end else return end else say_title("Fußball-Event") say("") say_reward("Das Fußball-Event ist An") say_reward("Möchtest du es Anhalten?") local c = select("Ja", "Nein") if c == 1 then game.set_event_flag("event_fußball", 0) notice_all("Das Fußball-Drop-Event wurde beendet") else return end end end when event_zeit.server_timer with game.get_event_flag("event_fußball") != 0 begin game.set_event_flag("event_fußball", 0) notice_all("Das Fußball-Drop-Event wurde beendet") end when kill with game.get_event_flag("event_fußball") == 1 and not npc.is_pc() begin local s=number(1, 250) if 5 == s then game.drop_item_with_ownership(50096,1) end end end end
|
|
|
12/16/2014, 10:19
|
#10745
|
elite*gold: 83
Join Date: Nov 2013
Posts: 2,891
Received Thanks: 2,764
|
Quote:
Originally Posted by IceCreamx3
Kann sich jemand mal die Quest anschauen & sagen, ob alles passt?
Habe das Gefühl, dass sich die Quest's irgendwie in die Quere kommen, wenn ich beide gleichzeitig aktiviert habe.
PHP Code:
quest mondi begin
state start begin
when 20011.chat."Mondlichttruhen-Event" with pc.get_name() == "[SL]X" begin
if game.get_event_flag("event_mondi") != 1 then
say_title("Mondlichttruhen-Event")
say("")
say_reward("Das Mondlichttruhen Event ist Aus")
say_reward("Möchtest du es Starten?")
local a = select("Ja", "Nein")
if a == 1 then
say_title("Mondlichttruhen-Event")
say_reward("Wie lange soll das Event gehen?")
say_reward("Länge in Minuten eingeben: ")
zeit = input()
if zeit == '' then
return
else
zeit_m = tonumber(zeit)
say_title("Mondlichttruhen Event")
say("")
say_reward("Möchtest du das Event für "..zeit_m.." Minuten laufen lassen?")
local b = select("Ja", "Nein")
if b == 1 then
server_timer("event_mondi", zeit_m*60)
game.set_event_flag("event_mondi", 1)
notice_all("Das Mondlichttruhen-Event hat gestartet")
else
return
end
end
else
return
end
else
say_title("Mondlichttruhen-Event")
say("")
say_reward("Das Mondlichttruhen-Event ist An")
say_reward("Möchtest du es Anhalten?")
local c = select("Ja", "Nein")
if c == 1 then
game.set_event_flag("event_mondi", 0)
notice_all("Das Mondlichttruhen-Event wurde beendet")
else
return
end
end
end
when event_zeit.server_timer with game.get_event_flag("event_mondi") != 0 begin
game.set_event_flag("event_mondi", 0)
notice_all("Das Mondlichttruhen-Event wurde beendet")
end
when kill with game.get_event_flag("event_mondi") == 1 and not npc.is_pc() begin
local s=number(1, 250)
if 5 == s then
game.drop_item_with_ownership(50011,1)
end
end
when 20011.chat."Fußball-Event" with pc.get_name() == "[SL]Celinei" begin
if game.get_event_flag("event_fußball") != 1 then
say_title("Fußball-Event")
say("")
say_reward("Das Fußball Event ist Aus")
say_reward("Möchtest du es Starten?")
local a = select("Ja", "Nein")
if a == 1 then
say_title("Fußball-Event")
say_reward("Wie lange soll das Event gehen?")
say_reward("Länge in Minuten eingeben: ")
zeit = input()
if zeit == '' then
return
else
zeit_m = tonumber(zeit)
say_title("Fußball Event")
say("")
say_reward("Möchtest du das Event für "..zeit_m.." Minuten laufen lassen?")
local b = select("Ja", "Nein")
if b == 1 then
server_timer("event_zeit", zeit_m*60)
game.set_event_flag("event_fußball", 1)
notice_all("Das Fußball-Drop-Event hat gestartet")
else
return
end
end
else
return
end
else
say_title("Fußball-Event")
say("")
say_reward("Das Fußball-Event ist An")
say_reward("Möchtest du es Anhalten?")
local c = select("Ja", "Nein")
if c == 1 then
game.set_event_flag("event_fußball", 0)
notice_all("Das Fußball-Drop-Event wurde beendet")
else
return
end
end
end
when event_zeit.server_timer with game.get_event_flag("event_fußball") != 0 begin
game.set_event_flag("event_fußball", 0)
notice_all("Das Fußball-Drop-Event wurde beendet")
end
when kill with game.get_event_flag("event_fußball") == 1 and not npc.is_pc() begin
local s=number(1, 250)
if 5 == s then
game.drop_item_with_ownership(50096,1)
end
end
end
end
|
sollten sich nicht in die quere kommen. aber man sollte nicht nach namen abfragen sondern lieber nach der charakter id
|
|
|
12/16/2014, 10:23
|
#10746
|
elite*gold: 0
Join Date: Jun 2012
Posts: 842
Received Thanks: 112
|
Quote:
Originally Posted by [Sensenmann]
sollten sich nicht in die quere kommen. aber man sollte nicht nach namen abfragen sondern lieber nach der charakter id
|
Danke
pc.get_name muss ich dann ändern in  ?
|
|
|
12/16/2014, 10:29
|
#10747
|
elite*gold: 83
Join Date: Nov 2013
Posts: 2,891
Received Thanks: 2,764
|
(ich glaube) pc.get_vid()
|
|
|
12/17/2014, 10:03
|
#10748
|
elite*gold: 0
Join Date: Apr 2013
Posts: 161
Received Thanks: 20
|
Code:
quest pony begin
state start begin
when login or levelup with pc.get_level() == 20 begin
set_state(pony)
end
end
state pony begin
when levelup with pc.get_level() >= 25 begin
pc.set_skill_level(131, 1)
horse.set_level(9)
horse.advance()
horse.summon()
chat("Anfänger Pferd erhalten.")
if pc.count_item(50051) == 0 then
pc.give_item2(50051, 1)
end
set_state(ende)
end
end
state ende begin
end
end
Hab das Problem mittlerweile selbst gelöst , quest hab ich rein gepackt :P falls sie wer brauch :P
Trotzdem Danke an alle die geholfen haben xD
|
|
|
12/17/2014, 11:14
|
#10749
|
elite*gold: 83
Join Date: Nov 2013
Posts: 2,891
Received Thanks: 2,764
|
Quote:
Originally Posted by exi9987
Code:
quest pony begin
state start begin
when login or levelup with pc.get_level() == 20 begin
set_state(pony)
end
end
state pony begin
when levelup with pc.get_level() >= 25 begin
pc.set_skill_level(131, 1)
horse.set_level(9)
horse.advance()
horse.summon()
chat("Anfänger Pferd erhalten.")
if pc.count_item(50051) == 0 then
pc.give_item2(50051, 1)
end
set_state(ende)
end
end
state ende begin
end
end
Hab das Problem mittlerweile selbst gelöst , quest hab ich rein gepackt :P falls sie wer brauch :P
Trotzdem Danke an alle die geholfen haben xD
|
PHP Code:
quest pferdebild begin state start begin when 50051.use begin if horse.get_level() >= 1 and horse.get_level() <= 10 then horse.summon() chat("Du hast dein Pferd erfolgreich gerufen.") elseif horse.get_level() >= 11 then say_title("Pferdebild") say("") say("Du benutzt das falsche Pferdebild!") say("") if horse.get_level() <= 20 then say_reward("Bitte benutze das Kampf-Pferdebuch!") else say_reward("Bitte benutze das Militär-Pferdebuch!") end say("") else say_title("Pferdebild") say("") say("Du besitzt kein Pferd.") say("") say_reward("Versuche es erneut, wenn dein Pferdelevel mindest") say_reward("auf 1 gestiegen ist.") say("") end end end end
Pferdebild auf Type 18 stellen, kann dir die Quest auch für Kampf- und Militärpferdebuch erweitern falls du das nicht selbst kannst
|
|
|
12/17/2014, 11:26
|
#10750
|
elite*gold: 0
Join Date: Apr 2013
Posts: 161
Received Thanks: 20
|
Quote:
Originally Posted by [Sensenmann]
PHP Code:
quest pferdebild begin
state start begin
when 50051.use begin
if horse.get_level() >= 1 and horse.get_level() <= 10 then
horse.summon()
chat("Du hast dein Pferd erfolgreich gerufen.")
elseif horse.get_level() >= 11 then
say_title("Pferdebild")
say("")
say("Du benutzt das falsche Pferdebild!")
say("")
if horse.get_level() <= 20 then
say_reward("Bitte benutze das Kampf-Pferdebuch!")
else
say_reward("Bitte benutze das Militär-Pferdebuch!")
end
say("")
else
say_title("Pferdebild")
say("")
say("Du besitzt kein Pferd.")
say("")
say_reward("Versuche es erneut, wenn dein Pferdelevel mindest")
say_reward("auf 1 gestiegen ist.")
say("")
end
end
end
end
Pferdebild auf Type 18 stellen, kann dir die Quest auch für Kampf- und Militärpferdebuch erweitern falls du das nicht selbst kannst 
|
Dank dir xD , aber hab das Problem mittlerweile gelöst bekommen , es funzt nun so wie ich das Möchte , falls jemand die Quest brauch habe sie trotzdem mal in den Spoiler gesetzt
hab mal wieder einen Fehler in meinen Quests
Quest : 1 Anfänger Pferd
PHP Code:
quest pony begin
state start begin
when login or levelup with pc.get_level() == 20 begin
set_state(pony)
end
end
state pony begin
when levelup with pc.get_level() >= 25 begin
pc.set_skill_level(131, 1)
horse.set_level(9)
horse.advance()
horse.summon()
chat("Anfänger Pferd erhalten.")
if pc.count_item(50051) == 0 then
pc.give_item2(50051, 1)
end
set_state(ende)
end
end
state ende begin
end
end
Diese Funktioniert wie sie soll.
Quest 2 : Kampfgaul
PHP Code:
quest kampfgaul begin
state start begin
when login or levelup with pc.get_level() == 30 begin
set_state(gaul)
end
end
state gaul begin
when levelup with pc.get_level() >= 35 begin
pc.set_skill_level(131, 5)
horse.set_level(19)
horse.advance()
horse.summon()
chat("Kampfpferd erhalten , du kannst nun vom Pferd aus Kämpfen.")
pc.remove_item(50051, 1)
if pc.count_item(50052) == 0 then
pc.give_item2(50052, 1)
end
set_state(ende)
end
end
state ende begin
end
end
Funktioniert ebenfalls wie gewünscht.
Quest 3 : MG
PHP Code:
quest mg begin
state start begin
when login or levelup with pc.get_level() == 45 begin
set_state(mg)
end
end
state mg begin
when levelup with pc.get_level() >= 50 begin
pc.set_skill_level(131, 10)
horse.set_level(20)
horse.advance()
horse.summon()
chat("Glückwunsch dein Pferd hat die Maximale Stufe erreicht!")
pc.remove_item(50052, 1)
if pc.count_item(50053) == 0 then
pc.give_item2(50053, 1)
end
set_state(ende)
end
end
state ende begin
end
end
Funktioniert nicht , bekomme weder Pferd noch Das Buch dazu , level bleibt auf 20.. schon einiges Probiert aber geht nicht. Weiss jemand Rat ?
|
|
|
12/17/2014, 14:08
|
#10751
|
elite*gold: 0
Join Date: Jan 2010
Posts: 416
Received Thanks: 95
|
NPC who teleport player 95+ to the map for 1 hour, and after teleport to pc.warp(3812585, 3799162)
BUGS all over the quest
Code:
quest event1 begin
state start begin
when login with (pc.get_map_index()==103 and pc.getqf("timeacess1")<=get_time()) or (pc.get_level()<95 and pc.get_map_index()==103) begin
if pc.get_level()<95 then
chat("You need to be at least level 95, you will be warped")
else if pc.get_level()>=95 then
chat("Your time period has ended.")
chat("Back later!")
end
if pc.get_empire()==1 then
pc.warp(3812585, 3799162)
elseif pc.get_empire()==2 then
pc.warp(3812585, 3799162)
else
pc.warp(3812585, 3799162)
end
end
end
when 20090.chat."Akapo Map (LV.95)" with pc.getqf("timeacess")<=get_time() begin
local remaining = pc.getqf("timeacess")-get_time()
pc.setqf("timeacess",24*60*60)
say("You need to wait.")
wait()
if pc.getqf("timeacess") >= get_time() then
say("You can't teleport now please wait.")
chat("You need to wait "..remaining.." seconds.")
elseif pc.get_level()<95 then
say("You need to be at least level 95")
else
pc.setqf("timeacess1",3600)
say("You can go now, have fun.")
pc.warp(45600,45600)
end
end
end
end
|
|
|
12/18/2014, 00:04
|
#10752
|
elite*gold: 0
Join Date: Jul 2011
Posts: 25
Received Thanks: 1
|
Devils Catacomb Run verändern
Ich will die 4.te Ebene Labyrinth überspringen oder das die Teleports gehen in der Map (weil sie funktionieren nicht) oder den Runenpfahl gleich so positionieren da wo ich geportet bin
Code:
quest devilscave begin
state start begin
--Konfiguration
when 20351.chat."DC Configuration!" with game.get_event_flag("block_dc_config") == 0 and pc.is_gm begin
game.set_event_flag("dc_is_ok",1)
game.set_event_flag("block_dc_config",1)
game.set_event_flag("dc_versuche",1)
end
--Eintritt fehlgeschlagen
--when 20351.chat."The Devils Catacomb" with game.get_event_flag("dc_is_ok") == 1 and pc.getqf("can_in_dc") == 0 and pc.get_level() > 80 begin
--say_title("Wächter der Katakombe")
--say("")
--say_reward("Du darfst noch nicht in die Devils Catacomb!")
--say("")
--say_reward("Bring mir ein Sensenmannrelikt zieh es einfach auf mich!")
--say_reward("und du darfst Passieren!")
--end
--when 20351.chat."Devils Catacomb (lv.80)" with game.get_event_flag("dc_is_ok") == 1 and pc.getqf("can_in_dc") == 1 and pc.get_level() < 80 begin
--say_title("Wächter der Katakombe")
--say("")
--say_reward("Du bist noch zu Schwach!")
--say("")
--end
--Sensenmannrelikt Abgabe!
--when 20351.take with item.vnum == 30315 and pc.getqf("can_in_dc") == 0 begin
--if pc.get_level() < 80 then
--say_title("Wächter der Katakombe")
--say("")
--say_reward("Du musst lv.80 sein um ein Sensenmannrelikt abzugeben!")
--say("")
--else
--item.remove()
--say_title("Wächter der Katakombe")
--say("")
--say_reward("Du darfst nun die Devils Catacomb betreten!")
--say("")
--pc.setqf("can_in_dc", 1)
--end
--end
--Eintritt
when 20351.chat."The Devils Catacomb" with game.get_event_flag("dc_is_ok") == 1 and pc.getqf("can_in_dc") == 0 begin
if pc.get_level() < 80 then
say_title("Wächter der Katakombe")
say("")
say_reward("Du bist noch zu schwach für die Katakomben!")
say("")
else
say_title("Wächter der Katakombe")
say("")
say("Bisher haben "..game.get_event_flag("dcgamer").." Soldaten es versucht ")
say("und "..game.get_event_flag("dc_geschaft").." haben es tatsächlich geschaft")
say("Azrael zu besiegen!")
wait()
say_title("Wächter der Katakombe")
say("")
say_reward("Willst du es versuchen?")
say_reward("du wärst der "..game.get_event_flag("dc_versuche")..". Kämpfer der es")
say_reward("versucht!")
say("")
pc.setqf("Ebene", 1)
local dc_login = select("Betreten", "Abbrechen")
if dc_login == 1 then
pc.warp(415200, 4209200)
elseif dc_login == 2 then
return
end
end
end
--Ebene 1
when login with pc.get_map_index() == 209 begin
game.set_event_flag(("dcgamer"), game.get_event_flag("dcgamer")+1)
game.set_event_flag(("dc_versuche"), game.get_event_flag("dc_versuche")+1)
if pc.getqf("Ebene") == 1 then
say_title("Devils Catacomb")
say("Um in die 2.Ebene zu kommen, musst du")
say_item("Seelenkristall-Schlüssel", 30311, "")
say("auf die Statue des Kud ziehen!")
say("Du droppst ihn bei den Monstern.")
say("Ihr habt ingesamt 90 Minuten Zeit!")
say("")
say_reward("Viel Glück!")
say("")
timer("dc10", 600)
pc.setqf("sksgedroppt", 0)
else
warp_all_to_village()
end
end
when kill with not npc.is_pc() and pc.get_map_index() == 209 begin
local sks = number(1,15)
if sks==1 and pc.getqf("sksgedroppt")==0 then
pc.setqf("sksgedroppt", 1)
chat("Du hast den Seelenkristall-Schlüssel gedroppt!")
game.drop_item(30311, 1)
else
chat("Dieses Monster hatte keinen Schlüssel.")
end
end
when 30101.take with item.vnum == 30311 begin
chat("Du wirst jetzt in die 2. Ebene gebracht.")
pc.remove_item("30311")
d.new_jump_all(209, 4632, 42082)
d.regen_file("data/dungeon/devilcave/dc_regen_ebene2.txt")
d.regen_file("data/dungeon/devilcave/dc_regen_tore_unten.txt")
d.regen_file("data/dungeon/devilcave/dc_regen_tore_left.txt")
d.spawn_mob(30103, 741, 221)
d.setf("Ebene", 2)
end
when login with pc.in_dungeon() begin
if d.getf("Ebene") == 2 then
chat("Ihr befindet euch jetzt in der 2. Ebene!")
chat("Schlagt euch zum Schildkrötenfels durch!")
chat("Ihr habt nur 10 minuten Zeit!")
timer("dc1", 600)
end
if d.getf("Ebene") == 3 then
chat("Findet und zerstört den richtigen Metin der Vergeltung.")
chat("Ihr habt 20 Minuten Zeit.")
timer("dc2", 1200)
end
if d.getf("Ebene") == 4 then
chat("Findet den Weg aus dem Labyrinth.")
chat("Und findet die Inschrift am Runenpfahl.")
chat("Ihr habt 15 Minuten Zeit.")
timer("dc3", 900)
d.spawn_mob(30104, 500, 800)
d.spawn_mob(10800, 328, 779)
d.spawn_mob(10801, 70, 672)
d.spawn_mob(10802, 142, 865)
d.spawn_mob(10803, 433, 935)
d.spawn_mob(10804, 243, 854)
d.spawn_mob(10805, 182, 667)
end
if d.getf("Ebene") == 5 then
chat("Findet und tötet Tartaros um das Fratzen-Totem zu bekommen!")
chat("Zieht es anschließend auf den Basalt-Obelisk auf dem Berg.")
chat("Ihr habt 15 Minuten Zeit.")
timer("dc4", 900)
d.spawn_mob(30104, 500, 800)
end
if d.getf("Ebene") == 6 then
chat("Tötet Charon um zur letzten Ebene zu kommen!")
chat("Ihr habt 15 Minuten Zeit.")
timer("dc5", 900)
d.spawn_mob(30104, 500, 800)
end
if d.getf("Ebene") == 7 then
chat("Tötet Azrael und setzt dem Unheil ein Ende!")
chat("Ihr habt 15 Minuten Zeit!")
timer("dc6", 900)
d.spawn_mob(30104, 500, 800)
end
end
when dc1.timer begin
chat("Die Zeit ist Abgelaufen!")
warp_all_to_village( pc.get_map_index() , 5 )
end
when dc10.timer begin
chat("Ihr habt noch 80 Minuten Zeit, Azrael zu finden und zu töten!")
timer("dc20", 600)
end
when dc20.timer begin
chat("Ihr habt noch 70 Minuten zeit!")
timer("dc30", 600)
end
when dc30.timer begin
chat("Ihr habt noch 60 Minuten zeit!")
timer("dc40", 600)
end
when dc40.timer begin
chat("Ihr habt noch 50 Minuten zeit!")
timer("dc50", 600)
end
when dc50.timer begin
chat("Ihr habt noch 40 Minuten zeit!")
timer("dc60", 600)
end
when dc60.timer begin
chat("Ihr habt noch 30 Minuten zeit!")
timer("dc70", 600)
end
when dc70.timer begin
chat("Ihr habt noch 20 Minuten zeit!")
timer("dc80", 600)
end
when dc80.timer begin
chat("Ihr habt noch 10 Minuten zeit!")
timer("dc110", 600)
end
when dc110.timer begin
chat("Die Zeit ist Abgelaufen!")
warp_all_to_village( pc.get_map_index() , 5 )
end
--Ebene 2
when 30103.chat."Weiter zur 3. Ebene" begin
npc.purge()
say_reward("Inschrift:")
say("Es ist noch ein weiter weg.")
wait()
d.new_jump_all(209, 5427, 42282)
d.setf("Ebene", 3)
d.regen_file("data/dungeon/devilcave/dc_regen_ebene3.txt")
local metindv = number(1,4)
if metindv==1 then
d.spawn_mob(8029, 1351, 348)
d.spawn_mob(8029, 1148, 350)
d.spawn_mob(8029, 1151, 155)
d.spawn_mob(8032, 1351, 149)
end
if metindv==2 then
d.spawn_mob(8029, 1351, 348)
d.spawn_mob(8029, 1148, 350)
d.spawn_mob(8032, 1151, 155)
d.spawn_mob(8029, 1351, 149)
end
if metindv==3 then
d.spawn_mob(8029, 1351, 348)
d.spawn_mob(8032, 1148, 350)
d.spawn_mob(8029, 1151, 155)
d.spawn_mob(8029, 1351, 149)
end
if metindv==4 then
d.spawn_mob(8032, 1351, 348)
d.spawn_mob(8029, 1148, 350)
d.spawn_mob(8029, 1151, 155)
d.spawn_mob(8029, 1351, 149)
end
end
when 8029.kill with pc.in_dungeon() begin
chat("Ein Falscher Metin wurde zerstört.")
end
when 8032.kill with pc.in_dungeon() begin
chat("Der richtige Metin wurde zerstört.")
chat("Ihr kommt nun in die 4. Ebene.")
timer("devils_catacomb_goto_ebene4", 2)
end
when dc2.timer begin
chat("Die Zeit ist Abgelaufen!")
warp_all_to_village( pc.get_map_index() , 5 )
end
--Ebene 4 (Labyrinth)
when devils_catacomb_goto_ebene4.timer begin
d.new_jump_all(209, 4143, 42657)
d.setf("Ebene", 4)
end
when 30104.chat."Inschrift" with pc.in_dungeon() begin
say_title("Ihr seid schon ziemlich weit gekommen.")
timer("dc3", 6000)
chat("Ihr habt den richtigen Weg gefunden.")
chat("Ihr kommt jetzt in die 5. Ebene.")
timer("devils_catacomb_goto_ebene5", 5)
end
when dc3.timer begin
chat("Die Zeit ist Abgelaufen!")
warp_all_to_village( pc.get_map_index() , 5 )
end
--Ebene 6 (Tartaros)
when devils_catacomb_goto_ebene5.timer begin
d.new_jump_all(209, 4917, 42925)
d.spawn_mob(30102, 848, 739)
d.setf("Ebene", 5)
d.regen_file("data/dungeon/devilcave/dc_regen_ebene5.txt")
local tartaros = number(1,4)
if tartaros==1 then
d.spawn_mob(2593, 991, 848)
end
if tartaros==2 then
d.spawn_mob(2593, 999, 652)
end
if tartaros==3 then
d.spawn_mob(2593, 848, 577)
end
if tartaros==4 then
d.spawn_mob(2593, 703, 644)
end
if tartaros==5 then
d.spawn_mob(2593, 692, 817)
end
end
when 2593.kill with pc.in_dungeon() begin
chat("Tartaros wurde besiegt und das Fratzen-Totem wurde Fallengelassen!")
chat("Begebt euch mit dem Fratzen-Totem auf den Berg in der Mitte.")
game.drop_item(30313, 1)
end
when 30102.take with item.vnum == 30313 begin
timer("dc4", 6000)
item.remove()
npc.purge()
say_reward("...")
chat("Ihr werdet jetzt in die 6. Ebene gebracht.")
timer("devils_catacomb_goto_ebene6", 5)
end
when dc4.timer begin
chat("Die Zeit ist Abgelaufen!")
warp_all_to_village( pc.get_map_index() , 5 )
end
--Ebene 7 (Charon)
when devils_catacomb_goto_ebene6.timer begin
d.new_jump_all(209, 5422, 42782)
d.setf("Ebene", 6)
d.regen_file("data/dungeon/devilcave/dc_regen_ebene6.txt")
end
when 2597.kill with pc.in_dungeon() begin
timer("dc5", 6000)
d.kill_all()
chat("Ihr habt Charon besiegt!")
chat("Bereitet euch auf den Kampf mit Azrael vor!")
timer("devils_catacomb_goto_ebene7", 10)
end
when dc5.timer begin
chat("Die Zeit ist Abgelaufen!")
warp_all_to_village( pc.get_map_index() , 5 )
end
--Ebene 8 (Azrael)
when devils_catacomb_goto_ebene7.timer begin
d.new_jump_all(209, 4147, 43191)
d.setf("Ebene", 7)
d.regen_file("data/dungeon/devilcave/dc_regen_ebene7.txt")
end
when 2598.kill with pc.in_dungeon() begin
game.set_event_flag(("dc_geschaft"), game.get_event_flag("dc_geschaft")+1)
local level = pc.get_level()
chat("Ihr habt ihn Besiegt und das Böse vertrieben.")
chat("Ihr werdet in 2 Minuten herrausteleportiert!")
chat("Sammelt schnell die Schätze ein, bevor es zu spät ist.")
d.kill_all()
d.kill_all()
notice_all("Die Gruppe von "..pc.get_name().." hat Azrael besiegt!")
timer("goout_from_dc", 120)
d.spawn_mob(9012, 74, 1159)
end
when dc6.timer begin
chat("Die Zeit ist Abgelaufen!")
warp_all_to_village( pc.get_map_index() , 5 )
end
when goout_from_dc.timer begin
warp_all_to_village( pc.get_map_index() , 3 )
end
end
end
PS falls ihr ein fehler findet bitte schnell melden
Das mit dem Sensenmannrelikt funktioniert leider auch nicht also abgeben
|
|
|
12/18/2014, 07:26
|
#10753
|
elite*gold: 0
Join Date: Jun 2008
Posts: 23
Received Thanks: 3
|
hey ho hab folgendes porblem:
Ich hab das starterset etwas bearbeitet und neu eingefügt und auch make.py ausgeführt.
jetzt kommt aber die Fehlermeldung Error occurred on copile give_basic_weapon.quest.
Ich bin schon als am suchen aber finde keine lösung kann mir da jm helfen?? ist in der quest was falsch?
quest give_basic_weapon begin
state start begin
when login begin
local item_vnum = 19
local item_vnum2 = 11209
local item_vnum3 = 12209
if pc.get_job() == 1 then
item_vnum = 1009
item_vnum2 = 11409
item_vnum3 = 12349
elseif pc.get_job() == 2 then
item_vnum2 = 11609
item_vnum3 = 12489
elseif pc.get_job() == 3 then
item_vnum = 7009
item_vnum2 = 11809
item_vnum3 = 12629
end
pc.give_item2(item_vnum)
pc.give_item2(item_vnum2)
pc.give_item2(item_vnum3)
pc.give_item2(71084, 200)
pc.give_item2(71085, 200)
pc.give_item2(70024, 10)
pc.give_item2(72702)
pc.give_item2(71050, 20)
pc.give_item2(70038, 20)
pc.give_item2(13009)
pc.give_item2(14009)
pc.give_item2(15009)
pc.give_item2(16009)
pc.give_item2(17009)
pc.give_item2(72723)
pc.give_item2(72727)
set_state(weiter)
end
end
state weiter begin
when letter begin
send_letter("Willkommen auf ZymeniaMt2!")
end
when button or info begin
say_title("Willkommen "..pc.get_name())
say(Willkommen auf ZymeniaMt2
Ab hier begibst du dich auf eine unendliche Reise.
Verbessere dein Equipment,
stelle dich deinen Gegnern und werde der Beste.
Viel Spaß wünscht euch [SA]Exos)
set_state(ende)
end
end
state ende begin
end
end
|
|
|
12/18/2014, 08:35
|
#10754
|
elite*gold: 83
Join Date: Nov 2013
Posts: 2,891
Received Thanks: 2,764
|
Quote:
Originally Posted by SuperBleifrei90
hey ho hab folgendes porblem:
Ich hab das starterset etwas bearbeitet und neu eingefügt und auch make.py ausgeführt.
jetzt kommt aber die Fehlermeldung Error occurred on copile give_basic_weapon.quest.
Ich bin schon als am suchen aber finde keine lösung kann mir da jm helfen?? ist in der quest was falsch?
quest give_basic_weapon begin
state start begin
when login begin
local item_vnum = 19
local item_vnum2 = 11209
local item_vnum3 = 12209
if pc.get_job() == 1 then
item_vnum = 1009
item_vnum2 = 11409
item_vnum3 = 12349
elseif pc.get_job() == 2 then
item_vnum2 = 11609
item_vnum3 = 12489
elseif pc.get_job() == 3 then
item_vnum = 7009
item_vnum2 = 11809
item_vnum3 = 12629
end
pc.give_item2(item_vnum)
pc.give_item2(item_vnum2)
pc.give_item2(item_vnum3)
pc.give_item2(71084, 200)
pc.give_item2(71085, 200)
pc.give_item2(70024, 10)
pc.give_item2(72702)
pc.give_item2(71050, 20)
pc.give_item2(70038, 20)
pc.give_item2(13009)
pc.give_item2(14009)
pc.give_item2(15009)
pc.give_item2(16009)
pc.give_item2(17009)
pc.give_item2(72723)
pc.give_item2(72727)
set_state(weiter)
end
end
state weiter begin
when letter begin
send_letter("Willkommen auf ZymeniaMt2!")
end
when button or info begin
say_title("Willkommen "..pc.get_name())
say(Willkommen auf ZymeniaMt2
Ab hier begibst du dich auf eine unendliche Reise.
Verbessere dein Equipment,
stelle dich deinen Gegnern und werde der Beste.
Viel Spaß wünscht euch [SA]Exos)
set_state(ende)
end
end
state ende begin
end
end
|
Probiers mal so:
PHP Code:
quest give_basic_weapon begin
state start begin
when login begin
if pc.get_job() == 0 then
local item_vnum = 19
local item_vnum2 = 11209
local item_vnum3 = 12209
elseif pc.get_job() == 1 then
local item_vnum = 1009
local item_vnum2 = 11409
local item_vnum3 = 12349
elseif pc.get_job() == 2 then
local item_vnum2 = 11609
local item_vnum3 = 12489
elseif pc.get_job() == 3 then
local item_vnum = 7009
local item_vnum2 = 11809
local item_vnum3 = 12629
end
pc.give_item2(item_vnum, 1)
pc.give_item2(item_vnum2, 1)
pc.give_item2(item_vnum3, 1)
pc.give_item2(71084, 200)
pc.give_item2(71085, 200)
pc.give_item2(70024, 10)
pc.give_item2(72702, 1)
pc.give_item2(71050, 20)
pc.give_item2(70038, 20)
pc.give_item2(13009, 1)
pc.give_item2(14009, 1)
pc.give_item2(15009, 1)
pc.give_item2(16009, 1)
pc.give_item2(17009, 1)
pc.give_item2(72723, 1)
pc.give_item2(72727, 1)
set_state(weiter)
end
end
state weiter begin
when letter begin
send_letter("Willkommen auf ZymeniaMt2!")
end
when button or info begin
say_title("Willkommen ".. pc.get_name() .."")
say("Willkommen auf ZymeniaMt2")
say("")
say("Ab hier begibst du dich auf eine unendliche Reise.")
say("Verbessere dein Equipment,")
say("stelle dich deinen Gegnern und werde der Beste.")
say("")
say("Viel Spaß wünscht euch [SA]Exos")
set_state(ende)
end
end
state ende begin
end
end
je 4 leerzeichen durch einen tab ersetzen (einen tab machen -> markieren -> strg + c -> strg + f -> ersetzen -> suchen nach: [4 leerzeichen] -> ersetzen durch: [TAB] -> alle ersetzen
|
|
|
12/18/2014, 09:12
|
#10755
|
elite*gold: 0
Join Date: Jun 2008
Posts: 23
Received Thanks: 3
|
Geil vielen Dank hat Funktioniert.
Wie mache ich jetzt zb in dem Satz viel spaß wünscht euch...
das ß und das ü werden nicht so angezeigt wie die sollen^^
is aber jetzt überall so.
|
|
|
All times are GMT +1. The time now is 08:30.
|
|