|
You last visited: Today at 20:43
Advertisement
[SERVICE] Die Questkontrolle
Discussion on [SERVICE] Die Questkontrolle within the Metin2 Private Server forum part of the Metin2 category.
07/25/2015, 15:50
|
#11791
|
elite*gold: 0
Join Date: May 2009
Posts: 33
Received Thanks: 4
|
Hallo,
kann mir eventuell jemand helfen. Diese Quest wurde von einem Freund geschrieben, die er mir zugeschickt hat. Nun klappt sie leider nicht und in der Oracle VM VirutalBox steht:
WHEN : levelup
with pc . get_level () >=20
STATE : info
WHEN: letter
expecting: "state"
tagebuchseite_1.quest:16:Error occured on compile tagebuchseite_1.quest
Ich würde mich freuen, wenn ihr mir helfen könntet.
Danke im Voraus.
PS: Ich habe nicht wirklich Ahnung davon.
Sonst bitte Laienhaft erklären.
PHP Code:
quest tagebuchseite_1 begin
state start begin
when login or levelup with pc.get_level()>= 20 begin
set_state(info)
end
end
state info begin
when letter begin
send_letter("Totes Schweigen")
local v = find_npc_by_vnum(20023)
if v != 0 then
target.vid("target1", v, "Soon")
end
end
end
when button or info begin
say_title("Totes Schweigen")
say("Gehe zu Soon, er verlangt Hilfe")
say("von dir.")
end
when target1.target.click or 20023.chat."Totes Schweigen" begin
target.delete("target1")
say_title("Soon")
say("Hallo, du siehst stark aus. Erhöre meine Bitte,")
say("ich werde dich dafür auch belohnen!")
say("Die Legende besagt, dass ein altes Buch,")
say("welches nun in den Händen furchtbarer Monster ist,")
say("früher alle drei Reiche zusammen gehalten hat.")
say("Nach dem furchtbaren Krieg vor Jahrzenten gelang es")
say("einem dunklen Ritter, dieses Buch zu zerstören,")
say("indem er die Seiten herausgerissen hatte und über")
say("das Land verteilte. Ich habe es mir zur Aufgabe gemacht,")
say("diese Seiten zu finden, doch alleine bin ich nicht stark genug.")
say("Kann ich mich auf deine Hilfe verlassen?")
say("Klasse, danke!")
wait()
end
say_title("Soon")
say("Laut einem Gerücht ist eine Seite hier auf Map1 zu finden.")
say("Wenn wir eine Seite haben, kann ich diese entziffern, um")
say("die die weiteren ausfindig zu machen....wenn wir Glück haben.")
say("Finden kannst du sie bei der Tiergottheit Tigris.")
say("Diese Gottheit war früher das Wappentier der dunklen Nation.")
say("Klingt nur allzu logisch, dass eine Seite dieses Tier in Besitz hat.")
say("Am Besten du tötest gleich mehrere, um ganz sicher zu gehen.")
say("Kehre bitte sofort zu mir zurück, falls sich was getan hat.")
say("Damit du schneller bist, gebe ich dir etwas, hier bitte!")
say_reward("Pfirsichblütensaft von Soon erhalten")
pc.give_item2(50801, 10)
clear_letter()
set_state(find_tigris)
end
end
state find_tigris begin
when letter begin
send_letter("Totes Schweigen")
end
end
when button or info begin
say_title("Totes Schweigen")
say("Töte Tigris um die erste")
say("Seite zu finden.")
end
when 194.kill begin
local pct = number(1,200)
if pct==200 then
clear_letter
pc.give_item2(30150, 1)
chat("Hey, du hast sie gefunden!")
set_state(to_soon)
end
end
end
state to_soon begin
when letter begin
send_letter("Totes Schweigen")
local v = find_npc_by_vnum(20023)
if v != 0 then
target.vid("target2", v, "Soon")
end
end
end
when button or info begin
say_title("Totes Schweigen")
say("Du hast etwas gefunden. Gehe zu Soon")
say("und berichte ihm davon.")
end
when target2.target.click or 20023.chat."Totes Schweigen" begin
target.delete("target2")
say_title("Soon")
say("Hallo, viel zutun?...Was hast du da?")
say("Du hast sie tatsächlich gefunden, dann ist es wahr!")
say("Ich werde sie sofort untersuchen, ganz vorsichtig.")
say("Das letzte Mal, als ich so viel Freude an etwas hatte,")
say("war beim letzten Betriebsausflug, als ich ein Stock")
say("ins Auge bekommen habe. Ulkig, oder?")
clear_letter()
set_state(to_soon2)
end
end
state to_soon2 begin
when letter begin
send_letter("Tagebuchseite 1")
local v = find_npc_by_vnum(20023)
if v != 0 then
target.vid("target3", v, "Soon")
end
end
end
when button or info begin
say_title("Tagebuchseite 1")
say("Gehe zu Soon,")
say("er möchte dir etwas bekannt geben.")
end
when target3.target.click or 20023.chat."Tagebuchseite 1" begin
target.delete("target3")
say_title("Soon")
say("Gut, das du gekommen bist.")
say("Gib mir nochmal die Seite zum genaueren Betrachten.")
if pc.count_item(30150)<1 or pc.count_item(30150)<0 then
say("")
say("Augenblick mal, du hast sie nicht bei dir?")
say("Geh und hole sie bitte für mich.")
return
else
pc.remove_item(30150, 1)
end
say("So, ich denke ich hab es entziffern können.")
say("Leider ist es noch zu früh, um überhaupt etwas")
say("deuten zu können und ich möchte ja auch die Spannung erhalten.")
say("Von daher muss ich dich noch etwas foltern.")
clear_letter()
set_state(to_soon3)
end
end
state to_soon3 begin
when letter begin
send_letter("Tagebuchseite 1")
local v = find_npc_by_vnum(20023)
if v != 0 then
target.vid("target4", v, "Soon")
end
end
end
when button or info begin
say_title("Tagebuchseite 1")
say("Du kannst nicht mehr länger warten.")
say("Gehe zu Soon.")
end
when target4.target.click or 20023.chat."Tagebuchseite 1" begin
target.delete("target4")
say_title("Soon")
say("Was ist los?")
say("Ich verstehe, doch leider ist das mein Ernst!")
say("Egal, wie sehr ich mich bemühe, ich bekomme nur")
say("sehr wenig voran und ich möchte nicht falsches daraus")
say("deuten. Später komme ich auf dich zurück und")
say("erkläre dir, was ich gelesen habe.")
say("Möge dein Abenteuer gerade erst angefangen haben.")
say("Deine Belohnung kann sich auf deiner Reise als nützlich erweisen.")
pc.give_item2(70038, 100)
pc.give_item2(71032, 2)
pc.give_item2(25040, 1)
clear_letter()
end
end
end
|
|
|
07/25/2015, 16:23
|
#11792
|
elite*gold: 83
Join Date: Nov 2013
Posts: 2,891
Received Thanks: 2,764
|
Quote:
Originally Posted by Niklas18
Hallo,
kann mir eventuell jemand helfen. Diese Quest wurde von einem Freund geschrieben, die er mir zugeschickt hat. Nun klappt sie leider nicht und in der Oracle VM VirutalBox steht:
WHEN : levelup
with pc . get_level () >=20
STATE : info
WHEN: letter
expecting: "state"
tagebuchseite_1.quest:16:Error occured on compile tagebuchseite_1.quest
Ich würde mich freuen, wenn ihr mir helfen könntet.
Danke im Voraus.
PS: Ich habe nicht wirklich Ahnung davon.
Sonst bitte Laienhaft erklären.
PHP Code:
quest tagebuchseite_1 begin state start begin when login or levelup with pc.get_level()>= 20 begin set_state(info) end end state info begin when letter begin send_letter("Totes Schweigen") local v = find_npc_by_vnum(20023) if v != 0 then target.vid("target1", v, "Soon") end end end when button or info begin say_title("Totes Schweigen") say("Gehe zu Soon, er verlangt Hilfe") say("von dir.") end when target1.target.click or 20023.chat."Totes Schweigen" begin target.delete("target1") say_title("Soon") say("Hallo, du siehst stark aus. Erhöre meine Bitte,") say("ich werde dich dafür auch belohnen!") say("Die Legende besagt, dass ein altes Buch,") say("welches nun in den Händen furchtbarer Monster ist,") say("früher alle drei Reiche zusammen gehalten hat.") say("Nach dem furchtbaren Krieg vor Jahrzenten gelang es") say("einem dunklen Ritter, dieses Buch zu zerstören,") say("indem er die Seiten herausgerissen hatte und über") say("das Land verteilte. Ich habe es mir zur Aufgabe gemacht,") say("diese Seiten zu finden, doch alleine bin ich nicht stark genug.") say("Kann ich mich auf deine Hilfe verlassen?") say("Klasse, danke!") wait() end say_title("Soon") say("Laut einem Gerücht ist eine Seite hier auf Map1 zu finden.") say("Wenn wir eine Seite haben, kann ich diese entziffern, um") say("die die weiteren ausfindig zu machen....wenn wir Glück haben.") say("Finden kannst du sie bei der Tiergottheit Tigris.") say("Diese Gottheit war früher das Wappentier der dunklen Nation.") say("Klingt nur allzu logisch, dass eine Seite dieses Tier in Besitz hat.") say("Am Besten du tötest gleich mehrere, um ganz sicher zu gehen.") say("Kehre bitte sofort zu mir zurück, falls sich was getan hat.") say("Damit du schneller bist, gebe ich dir etwas, hier bitte!") say_reward("Pfirsichblütensaft von Soon erhalten") pc.give_item2(50801, 10) clear_letter() set_state(find_tigris) end end state find_tigris begin when letter begin send_letter("Totes Schweigen") end end when button or info begin say_title("Totes Schweigen") say("Töte Tigris um die erste") say("Seite zu finden.") end when 194.kill begin local pct = number(1,200) if pct==200 then clear_letter pc.give_item2(30150, 1) chat("Hey, du hast sie gefunden!") set_state(to_soon) end end end state to_soon begin when letter begin send_letter("Totes Schweigen") local v = find_npc_by_vnum(20023) if v != 0 then target.vid("target2", v, "Soon") end end end when button or info begin say_title("Totes Schweigen") say("Du hast etwas gefunden. Gehe zu Soon") say("und berichte ihm davon.") end when target2.target.click or 20023.chat."Totes Schweigen" begin target.delete("target2") say_title("Soon") say("Hallo, viel zutun?...Was hast du da?") say("Du hast sie tatsächlich gefunden, dann ist es wahr!") say("Ich werde sie sofort untersuchen, ganz vorsichtig.") say("Das letzte Mal, als ich so viel Freude an etwas hatte,") say("war beim letzten Betriebsausflug, als ich ein Stock") say("ins Auge bekommen habe. Ulkig, oder?") clear_letter() set_state(to_soon2) end end state to_soon2 begin when letter begin send_letter("Tagebuchseite 1") local v = find_npc_by_vnum(20023) if v != 0 then target.vid("target3", v, "Soon") end end end when button or info begin say_title("Tagebuchseite 1") say("Gehe zu Soon,") say("er möchte dir etwas bekannt geben.") end when target3.target.click or 20023.chat."Tagebuchseite 1" begin target.delete("target3") say_title("Soon") say("Gut, das du gekommen bist.") say("Gib mir nochmal die Seite zum genaueren Betrachten.") if pc.count_item(30150)<1 or pc.count_item(30150)<0 then say("") say("Augenblick mal, du hast sie nicht bei dir?") say("Geh und hole sie bitte für mich.") return else pc.remove_item(30150, 1) end say("So, ich denke ich hab es entziffern können.") say("Leider ist es noch zu früh, um überhaupt etwas") say("deuten zu können und ich möchte ja auch die Spannung erhalten.") say("Von daher muss ich dich noch etwas foltern.") clear_letter() set_state(to_soon3) end end state to_soon3 begin when letter begin send_letter("Tagebuchseite 1") local v = find_npc_by_vnum(20023) if v != 0 then target.vid("target4", v, "Soon") end end end when button or info begin say_title("Tagebuchseite 1") say("Du kannst nicht mehr länger warten.") say("Gehe zu Soon.") end when target4.target.click or 20023.chat."Tagebuchseite 1" begin target.delete("target4") say_title("Soon") say("Was ist los?") say("Ich verstehe, doch leider ist das mein Ernst!") say("Egal, wie sehr ich mich bemühe, ich bekomme nur") say("sehr wenig voran und ich möchte nicht falsches daraus") say("deuten. Später komme ich auf dich zurück und") say("erkläre dir, was ich gelesen habe.") say("Möge dein Abenteuer gerade erst angefangen haben.") say("Deine Belohnung kann sich auf deiner Reise als nützlich erweisen.") pc.give_item2(70038, 100) pc.give_item2(71032, 2) pc.give_item2(25040, 1) clear_letter() end end end
|
1 end zu viel in zeile 15
|
|
|
07/25/2015, 16:41
|
#11793
|
elite*gold: 0
Join Date: May 2009
Posts: 33
Received Thanks: 4
|
Danke - wurde entfernt, doch der Fehler bleibt weiterhin bestehen.
|
|
|
07/25/2015, 17:14
|
#11794
|
elite*gold: 83
Join Date: Nov 2013
Posts: 2,891
Received Thanks: 2,764
|
Quote:
Originally Posted by Niklas18
Danke - wurde entfernt, doch der Fehler bleibt weiterhin bestehen.
|
ja, nur der fehler zeigt diesmal eine andere zeile an
|
|
|
07/25/2015, 18:17
|
#11795
|
elite*gold: 110
Join Date: Jun 2015
Posts: 85
Received Thanks: 22
|
Hallo Habe ein problemm wenn ich die metins von 8040 bis 8033 gekillt habe tut sicht nix ingame kommt dann naricht das ich die kreaturen töten soll kommt auch nix und ein NPC mit der value 20355 erscheint auch nicht
und wenn ich aus Skyrun mitten drin raus gehe in map 1 sagt er mir es sind noch 5 min verbleibende so zu sagen der run läuft dann weiter ich Bitte um hilfe wäre sehr nett von euch
PHP Code:
quest devildown begin state start begin when 30123.chat."Sky Run" begin if pc.get_level() < 85 then say ("Ich merke das du noch zu Schwach bist, komm zurück wenn du level 85 erreicht hast!.") else say_title("Sky - Run") say("This run is abounds with monsters killers.") say("Nur die stärksten kommen hoch zur Spitze!.") say("Sie sagen dass die meisten die es Wagen") say("die Herausforderung anzunehmen für immer Verschwunden sind") say("Nimmst du die Herausforderung wirklich an?") local s = select("JA", "NEIN") if s == 1 then pc.warp(1762200, 3535700) else return end end end
when 8041.kill with pc.get_map_index()==240 begin local jump1 = number(1, 20) if jump1 <= 10 then chat("Da ist der Goldene Ring.") chat("Bring ihn zum NPC.") game.drop_item(40001, 1) else chat("Du hast noch keinen Ring gedroppt..") end end when 30121.chat."SkyRun" begin if pc.count_item(40001) >= 1 then say_title("Sky Man:") say("Hast du den Goldenen Ring?") say("Ich schaue ihn mir genauer an") say("Respekt!, Das ist er!") pc.removeitem("40001", 1) wait() say_title("Sky Man:") say("Ich bin stolz auf dich!") say("Ich bringe dich nun weiter!") wait() d.new_jump_all(240, 17174, 35233) d.setf("devillevel", 1) local boxto7= pc.count_item(40001) pc.remove_item(40001, boxto7)
local vid = d.spawn_mob(8008, 111, 156) d.regen_file("data/dungeon/sky_run/regen.txt") d.set_unique("real", vid) d.notice("Kämpft euch durch die Monster!!."); d.notice("Bis ihr zum Meteroit der Seele gelangt."); d.notice("Diesen müsst ihr Zerstören!!!."); else say_title("Sky Man:") say("Um in die nächste Ebene zu kommen,") say("musst du den Richtigen Metin,") say("finden und zerstören.Viel Glück!") end end
when 8008.kill with pc.in_dungeon() begin if d.is_unique_dead("real") then d.setf("devillevel", 2) d.clear_regen() d.jump_all(17621, 35636) d.regen_file("data/dungeon/sky_run/metins.txt") end end
when 8040.kill with pc.in_dungeon() begin d.setf("devillevel", 3) d.spawn_mob(8023, 613, 609) end
when 8023.kill with pc.in_dungeon() begin d.setf("devillevel", 4) d.spawn_mob(8050, 621, 586) end
when 8050.kill with pc.in_dungeon() begin d.setf("devillevel", 5) d.spawn_mob(8025, 588, 609) end when 8025.kill with pc.in_dungeon() begin d.setf("devillevel", 6) d.spawn_mob(8026, 569, 636) end when 8026.kill with pc.in_dungeon() begin d.setf("devillevel", 7) d.spawn_mob(8031, 588, 665) end when 8027.kill with pc.in_dungeon() begin d.setf("devillevel", 8) d.spawn_mob(8054, 622, 686) end when 8054.kill with pc.in_dungeon() begin d.setf("devillevel", 9) d.spawn_mob(8033, 659, 668) end when 8033.kill with pc.in_dungeon() begin if d.is_unique_dead("real") then d.notice("du hast denn letzten metin2 gekillt."); d.regen_file("data/dungeon/sky_run/npc.txt") d.spawn_mob(20355, 619, 635) d.setf("devillevel", 10) end end when 20355.chat."Last floor" begin npc.purge() say_reward("Guard:") say("Go to last floor,good luck!!") wait() d.jump_all(17201, 35623) d.regen_file("data/dungeon/sky_run/end.txt") d.set_unique("real", vid) end when 2493.kill with pc.in_dungeon() begin local level = pc.get_level() chat("Glückwunsch! Du hast den Skyrun erfoglreich gemeistert!") chat("Du kehrst in kürze in dein Reich zurück") d.kill_all() d.kill_all() notice_all("Die gruppe von "..pc.get_name().." hat denn Skyrun bezwungen") timer("goout_from_dc", 60) end when dc6.timer begin chat("Du hast zu lange gebraucht, die Zeit ist um!") 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
|
|
|
07/25/2015, 18:32
|
#11796
|
elite*gold: 0
Join Date: May 2009
Posts: 33
Received Thanks: 4
|
Quote:
Originally Posted by Seחsi
ja, nur der fehler zeigt diesmal eine andere zeile an 
|
Danke für deine bisherige Mühe und Hilfe.
Dennoch brauche ich noch weitere Hilfe. Ich selbst kann mich damit nicht auseinandersetzen, da ich keine Idee habe.
Eine Lösung wäre super, ohne mit mir die Nadel im Heuhaufen zu suchen.
Jemand anderes eine Idee?
Danke im Voraus!
LG
|
|
|
07/25/2015, 21:45
|
#11797
|
elite*gold: 0
Join Date: Jun 2014
Posts: 223
Received Thanks: 43
|
Hallo,
Könnte mir jemand in diese Quest ein Function einbauen
womit ich die boni der pets einstellen kann ?
PHP Code:
quest pet_system begin
state start begin
function get_pet_info(itemVnum)
pet_info_map = {
-- [ITEM VNUM] MOB_VNUM, DEFAULT NAME, buff_idx, spawn_effect_idx
[53001] = { 20120, "'s Feuerphönix", 0},
[53002] = { 20126, "'s Bambi", 0},
[53003] = { 20123, "'s Eisphöix", 0},
[53005] = { 20129, "'s Baby Azrael", 0},
[53006] = { 20132, "'s Hund", 0},
}
itemVnum = tonumber(itemVnum)
return pet_info_map[itemVnum]
end
function get_spawn_effect_file(idx)
effect_table = {
[0] = nil,
[1] = "d:\\\\ymir work\\\\effect\\\\etc\\\\appear_die\\\\npc2_appear.mse",
}
return effect_table [idx]
end
when 53001.use or 53002.use or 53003.use or 53005.use or 53006.use begin
local pet_info = pet_system.get_pet_info(item.vnum)
if null != pet_info then
local mobVnum = pet_info[1]
local petName = pet_info[2]
local spawn_effect_file_name = pet_system.get_spawn_effect_file(pet_info[3])
if true == pet.is_summon(mobVnum) then
if spawn_effect_file_name != nil then
pet.spawn_effect (mobVnum, spawn_effect_file_name)
end
pet.unsummon(mobVnum)
syschat("Du hast dein Haustier weggeschickt.")
else
if pet.count_summoned() < 1 then
pet.summon(mobVnum, petName, false)
syschat("Du hast dein Haustier erfolgreich gerufen.")
else
syschat("Du hast schon ein Haustier gerufen.")
end
if spawn_effect_file_name != nil then
pet.spawn_effect(mobVnum, spawn_effect_file_name)
end
end -- if pet.is_summon
end -- if null != pet_info
end -- when
end -- state
end -- quest
|
|
|
07/26/2015, 09:15
|
#11798
|
elite*gold: 50
Join Date: Aug 2014
Posts: 508
Received Thanks: 201
|
Quote:
Originally Posted by x"Kazuki
Bekomme beim Compilenden Fehler:
PHP Code:
Traceback (most recent call last):
File "make_quest", line 10, in <module>
r = pre_qc.run (line)
File "/usr/home/game/share/locale/germany/quest/pre_qc.py", line 159, in run
start = MakeParameterTable (lines, parameter_table, keys)
File "/usr/home/game/share/locale/germany/quest/pre_qc.py", line 149, in MakeParameterTable
return start
UnboundLocalError: local variable 'start' referenced before assignment
|
immer noch
|
|
|
07/26/2015, 16:46
|
#11799
|
elite*gold: 0
Join Date: May 2009
Posts: 33
Received Thanks: 4
|
Quote:
Originally Posted by Niklas18
Hallo,
kann mir eventuell jemand helfen. Diese Quest wurde von einem Freund geschrieben, die er mir zugeschickt hat. Nun klappt sie leider nicht und in der Oracle VM VirutalBox steht:
WHEN : levelup
with pc . get_level () >=20
STATE : info
WHEN: letter
expecting: "state"
tagebuchseite_1.quest:16:Error occured on compile tagebuchseite_1.quest
Ich würde mich freuen, wenn ihr mir helfen könntet.
Danke im Voraus.
PS: Ich habe nicht wirklich Ahnung davon.
Sonst bitte Laienhaft erklären.
PHP Code:
quest tagebuchseite_1 begin state start begin when login or levelup with pc.get_level()>= 20 begin set_state(info) end end state info begin when letter begin send_letter("Totes Schweigen") local v = find_npc_by_vnum(20023) if v != 0 then target.vid("target1", v, "Soon") end end end when button or info begin say_title("Totes Schweigen") say("Gehe zu Soon, er verlangt Hilfe") say("von dir.") end when target1.target.click or 20023.chat."Totes Schweigen" begin target.delete("target1") say_title("Soon") say("Hallo, du siehst stark aus. Erhöre meine Bitte,") say("ich werde dich dafür auch belohnen!") say("Die Legende besagt, dass ein altes Buch,") say("welches nun in den Händen furchtbarer Monster ist,") say("früher alle drei Reiche zusammen gehalten hat.") say("Nach dem furchtbaren Krieg vor Jahrzenten gelang es") say("einem dunklen Ritter, dieses Buch zu zerstören,") say("indem er die Seiten herausgerissen hatte und über") say("das Land verteilte. Ich habe es mir zur Aufgabe gemacht,") say("diese Seiten zu finden, doch alleine bin ich nicht stark genug.") say("Kann ich mich auf deine Hilfe verlassen?") say("Klasse, danke!") wait() end say_title("Soon") say("Laut einem Gerücht ist eine Seite hier auf Map1 zu finden.") say("Wenn wir eine Seite haben, kann ich diese entziffern, um") say("die die weiteren ausfindig zu machen....wenn wir Glück haben.") say("Finden kannst du sie bei der Tiergottheit Tigris.") say("Diese Gottheit war früher das Wappentier der dunklen Nation.") say("Klingt nur allzu logisch, dass eine Seite dieses Tier in Besitz hat.") say("Am Besten du tötest gleich mehrere, um ganz sicher zu gehen.") say("Kehre bitte sofort zu mir zurück, falls sich was getan hat.") say("Damit du schneller bist, gebe ich dir etwas, hier bitte!") say_reward("Pfirsichblütensaft von Soon erhalten") pc.give_item2(50801, 10) clear_letter() set_state(find_tigris) end end state find_tigris begin when letter begin send_letter("Totes Schweigen") end end when button or info begin say_title("Totes Schweigen") say("Töte Tigris um die erste") say("Seite zu finden.") end when 194.kill begin local pct = number(1,200) if pct==200 then clear_letter pc.give_item2(30150, 1) chat("Hey, du hast sie gefunden!") set_state(to_soon) end end end state to_soon begin when letter begin send_letter("Totes Schweigen") local v = find_npc_by_vnum(20023) if v != 0 then target.vid("target2", v, "Soon") end end end when button or info begin say_title("Totes Schweigen") say("Du hast etwas gefunden. Gehe zu Soon") say("und berichte ihm davon.") end when target2.target.click or 20023.chat."Totes Schweigen" begin target.delete("target2") say_title("Soon") say("Hallo, viel zutun?...Was hast du da?") say("Du hast sie tatsächlich gefunden, dann ist es wahr!") say("Ich werde sie sofort untersuchen, ganz vorsichtig.") say("Das letzte Mal, als ich so viel Freude an etwas hatte,") say("war beim letzten Betriebsausflug, als ich ein Stock") say("ins Auge bekommen habe. Ulkig, oder?") clear_letter() set_state(to_soon2) end end state to_soon2 begin when letter begin send_letter("Tagebuchseite 1") local v = find_npc_by_vnum(20023) if v != 0 then target.vid("target3", v, "Soon") end end end when button or info begin say_title("Tagebuchseite 1") say("Gehe zu Soon,") say("er möchte dir etwas bekannt geben.") end when target3.target.click or 20023.chat."Tagebuchseite 1" begin target.delete("target3") say_title("Soon") say("Gut, das du gekommen bist.") say("Gib mir nochmal die Seite zum genaueren Betrachten.") if pc.count_item(30150)<1 or pc.count_item(30150)<0 then say("") say("Augenblick mal, du hast sie nicht bei dir?") say("Geh und hole sie bitte für mich.") return else pc.remove_item(30150, 1) end say("So, ich denke ich hab es entziffern können.") say("Leider ist es noch zu früh, um überhaupt etwas") say("deuten zu können und ich möchte ja auch die Spannung erhalten.") say("Von daher muss ich dich noch etwas foltern.") clear_letter() set_state(to_soon3) end end state to_soon3 begin when letter begin send_letter("Tagebuchseite 1") local v = find_npc_by_vnum(20023) if v != 0 then target.vid("target4", v, "Soon") end end end when button or info begin say_title("Tagebuchseite 1") say("Du kannst nicht mehr länger warten.") say("Gehe zu Soon.") end when target4.target.click or 20023.chat."Tagebuchseite 1" begin target.delete("target4") say_title("Soon") say("Was ist los?") say("Ich verstehe, doch leider ist das mein Ernst!") say("Egal, wie sehr ich mich bemühe, ich bekomme nur") say("sehr wenig voran und ich möchte nicht falsches daraus") say("deuten. Später komme ich auf dich zurück und") say("erkläre dir, was ich gelesen habe.") say("Möge dein Abenteuer gerade erst angefangen haben.") say("Deine Belohnung kann sich auf deiner Reise als nützlich erweisen.") pc.give_item2(70038, 100) pc.give_item2(71032, 2) pc.give_item2(25040, 1) clear_letter() end end end
|
Ich brauche noch immer Hilfe - Welche/r Fehler wurde noch nicht beseitigt?
Danke im Voraus! ##Kontrolle dieser Quest##
|
|
|
07/26/2015, 20:09
|
#11800
|
elite*gold: 110
Join Date: Jun 2015
Posts: 85
Received Thanks: 22
|
Hilfe bitte
Hallo brauche euere hilfe wenn ich die metine kapput mache spawnt er mir denn NPC nicht nicht bitte helfen die zeile fängt ab 8040 an
PHP Code:
quest devildown begin
state start begin
when 30123chat."Sky Run" begin
if pc.get_level() < 85 then
say ("You have not enough experience.Come back when you're level 85!!")
else
say_title("Dungeon Guard")
say("This run is abounds with monsters killers.")
say("Only the strongest can reach the top.")
say("It is said, that nobody who enters")
say("the run has left it alive.")
say("Do you still want to enter the Sky Run?")
local s = select("Yes", "No")
if s == 1 then
pc.warp(1762200, 3535700)
else
return
end
end
end
when 8041.kill with pc.get_map_index()==240 begin
local jump1 = number(1, 20)
if jump1 <= 10 then
chat("This is ring.")
chat("Bring it to Sky Man.")
game.drop_item(40001, 1)
else
chat("That was not ring..")
end
end
when 30121.chat."Part of ring" begin
if pc.count_item(40001) >= 1 then
say_title("Sky Man:")
say("You have found a ring?")
say("Let me see ring.")
say("Yes, it is really the ring.")
pc.removeitem("40001", 1)
wait()
say_title("Sky Man:")
say("Okay, I think it's now good.")
say("I will teleport you.")
wait()
d.new_jump_all(240, 17174, 35233)
d.setf("devillevel", 1)
local boxto7= pc.count_item(40001)
pc.remove_item(40001, boxto7)
local vid = d.spawn_mob(8008, 111, 156)
d.set_unique("real", vid)
d.notice("Fight through the monsters through and reach the legendary fire-power.");
d.notice("You have to destroy the power of the fire to rise.");
else
say_title("Sky Man:")
say("I've heard that one of the Metin Stone,")
say("is somewhere around there,")
say("if you destroyed metin. If you give me such a")
say("part, and i will teleport you in next area")
end
end
when 8008.kill with pc.in_dungeon() begin
if d.is_unique_dead("real") then
d.setf("devillevel", 2)
d.clear_regen()
d.jump_all(17621, 35636)
d.regen_file("data/dungeon/sky_run/metins.txt")
end
end
when 8040.kill with pc.in_dungeon() begin
d.setf("devillevel", 3)
d.spawn_mob(8023, 613, 609)
end
when 8023.kill with pc.in_dungeon() begin
d.setf("devillevel", 4)
d.spawn_mob(8024, 621, 586)
end
when 8024.kill with pc.in_dungeon() begin
d.setf("devillevel", 5)
d.spawn_mob(8025, 588, 609)
end
when 8025.kill with pc.in_dungeon() begin
d.setf("devillevel", 6)
d.spawn_mob(8026, 569, 636)
end
when 8026.kill with pc.in_dungeon() begin
d.setf("devillevel", 7)
d.spawn_mob(8031, 588, 665)
end
when 8031.kill with pc.in_dungeon() begin
d.setf("devillevel", 8)
d.spawn_mob(8054, 622, 686)
end
when 8054.kill with pc.in_dungeon() begin
d.setf("devillevel", 9)
d.spawn_mob(8055, 659, 668)
end
when 8055.kill with pc.in_dungeon() begin
if d.is_unique_dead("real") then
d.notice("The last Metin is killed,go to Guard.");
d.spawn_mob(20355, 619, 635)
d.setf("devillevel", 10)
end
end
when 20355.chat."Last floor" begin
npc.purge()
say_reward("Guard:")
say("Go to last floor,good luck!!")
wait()
d.jump_all(17201, 35623)
d.regen_file("data/dungeon/sky_run/end.txt")
d.set_unique("real", vid)
end
when 2493.kill with pc.in_dungeon() begin
local level = pc.get_level()
chat("You defeated the Sky King and you saved the Sky Run.")
chat("du wirst in 2 minuten raus Teleportiert!")
d.kill_all()
d.kill_all()
notice_all("Der Spieler "..pc.get_name().." hat denn Skyrun Boss getötet!")
timer("goout_from_dc", 120)
end
when dc6.timer begin
chat("Time has Expired!")
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
|
|
|
07/27/2015, 12:45
|
#11801
|
elite*gold: 0
Join Date: May 2009
Posts: 33
Received Thanks: 4
|
Moin, habe ein anderes Problem:
Die Quest funktioniert, keine Frage(auch wenn es komisch reinkopiert worden ist.)
Mein Problem ist nur, wenn ich die Belohnung von Yu-Hwan bekomme und ihn dann entweder erneut anklicke, oder einen Relog mache, erscheint der Pfeil wieder - will sagen, dass ich unendlich viel Belohnung von dem bekomme.
Man soll bei dieser Mini-Quest aber nur einmal eine Belohnung erhalten, mehr nicht. Wie kann ich das einstellen? Bitte um Hilfe.
PHP Code:
quest jagdaufgabe begin
---------------------------------- -- LvL 10 / Erste Seite ---------------------------------- state start begin when login or levelup with pc.level>9 begin set_state(talk_to_disciple_lv10) end end state talk_to_disciple_lv10 begin when letter begin local v = find_npc_by_vnum(20011) if v != 0 then target.vid("__TARGET__", v, "Uriel") end send_letter("Das Buch des Drachengottes") end when button or info begin say_title("Das Buch des Drachengottes") say("") say("Uriel sucht nach dir.") say("Sprich mit ihm.") say("") say_reward("Sprich mit Uriel") say("") end when __TARGET__.target.click or 20011.chat."Drachengott" begin target.delete("__TARGET__") say("Uriel:") say("") say("Wer bist du denn?") say("Oh, du scheinst neu hier zu sein.") say("Ich bin übrigens Uriel. Mir wird nachgesagt,") say("ich sei besessen auf Mythen.") say("In gewisser Weise schon, denn ich lasse mich") say("davon gerne fesseln. Ich bräuchte deine Hilfe.") say("Es geht um ein altes Buch welches ich gefunden") say("habe, doch es fehlen einige Seiten.") wait() say("Die ersten Seiten besagen folgendes:") say("Vor vielen Jahren, als die drei Kaiserreiche im") say("friedlichen Einklang miteinander lebten, fielen") say("abertausende Steine vom Himmel. Diese Steine") say("hatten starke, magnetische Wellen ausgesendet, die") say("lebten, fielen abertausende Steine vom Himmel.") say("Diese Steine, die die Tiere in freier Wildbahn") say("zu Monstern, sogenannte MOBS, werden liesen.") wait() say("Uriel:") say("Das ist total spannend, doch es geht weiter:") say("Das Unheimliche daran war, dass,nachdem diese") say("Steine das Land erreicht hatten, seltsame") say("Kreaturen auftauchten und sich vermehrt überallhin ") say("verteilten. Nirgends waren wir vor ihnen sicher.") say("Wir mussten ständig damit rechnen, dass wir") say("angegriffen werden.") wait() say("Wir wappneten uns mit starken Armeen und dann kam") say("der Tag an dem sich die Klingen der Monster mit") say("unseren kreuzten. Wir hatten diese Schlacht") say("gewonnen, aber nicht den Krieg!Wir dachten wir") say("hätten das Schlimmste überstanden, doch wie aus") say("heiterem Himmel kam ein gigantischer Drache mit") say("übergroßen, mächtigen Kriegern daher um uns das") say("Fürchten zu lehren.") wait() say("Viele unserer Krieger starben") say("an Ort und Stelle und die Schlacht sowie der Krieg") say("schien verloren, doch vier Fremde mit") say("übermenschlichen Kräften gaben Widerstand und") say("durch sie gewannen wir den Krieg.") wait() say("Gott selbst schicktediese vier Fremde zu uns und") say("wir ehrten sie mit einem großen Fest. Seitdem ist") say("es Tradition junge Krieger ab einer bestimmten") say("Grenze diese Fertigkeiten zu lehren, um das Dorf") say("vor weiteren Angriffen zu schützen.") say("Die heutigen Rassen:") say("Krieger, Schamane, Sura und Ninja!") wait() say("Uriel") say("Hier endet die Geschichte.") say("Doch leider zerstritten sich die drei Kaiserreiche.") say("Warum dies so ist, weiß ich nicht.") say("Es könnte viele Gründe haben: Der Krieg, die") say("Versorgung, das Aufbauen und neuziehen der Grenzen") say("oder gar die Steine!") wait() say("Diese Legende soll mit der Wahrheit verbunden sein.") say("Leider bin ich nicht so stark und auch") say("schon ziemlich alt und gebrechlich. Die Seiten,") say("so die Legende, sollen überall auf dem Kontinent ") say("verteilt sein und diese werden von wilden Monstern") say("jeglicher Art verteidigt. Du musst sie finden!") say("Wenn wir es schaffen sollten, könnte man erneut") say("versuchen, die drei Reiche zum Frieden zu bringen.") wait() say("Eine Möglichkeit und eine Chance, die wir nutzen") say("sollten. Eventuell stehen auf diesen Seiten etwas") say("über die Reiche und über die Grenzen usw. - Ich") say("hoffe ich kann auf deine Hilfe zählen.") say("Was meinst du dazu?") wait() say("Wirklich? Vielen Dank!") say("Dann vertraue ich dir diese Aufgabe an!") wait() say("Uriel:") say("Laut alten Schriften sei die erste Seite.") say("bei den Weißen Eid. Soldaten gelandet.") say("Vorsicht ist geboten. Sie sind nicht zu") say("unterschätzen. Pass auf,denn die Seiten.") say("können auch zerreißen. Sonst brauche ich") say("eine neue, um weiter zu forschen!") say("") set_state(collect_tagebuchseite) pc.setqf("duration",0) pc.setqf("collect_count",0) end end state collect_tagebuchseite begin when letter begin send_letter("Die erste Seite") end when button or info begin say_title("Das Geheimnis des Drachengottes") say("") say("Finde die Seite und bringe sie Uriel.") say("Zu finden ist diese bei den Weißen-Eid Clan") say("") say("Uriel zählt auf deine Hilfe!") say_item_vnum(30150) say("Ob diese Seite tatsächlich zu dem Buch gehört?") say("") end when 301.kill or 302.kill or 333.kill begin if pc.count_item(30150)<1 then local rand = number(0,99) if rand<5 then pc.give_item2(30150, 1) end end end when 20011.chat."Die verlorene Seite" begin if pc.count_item(30150)>0 then say("Uriel:") say("Dank deiner Hilfe verstehe ich nun") say("langsam die Legende um dieses Buch.") say("Du hast hart gekämpft.") say("Sprich mit Yu-Hwan, er wird dir helfen,") say("deine inneren Kräfte zu steigern.") say("") say("Komm wieder, wenn du etwas stärker geworden bist.") pc.remove_item(30150,1) set_state(tagebuch_reward) else say("Uriel:") say("Bringe mir bitte die Seite...") say("Zu finden bei dem Weißen-Eid Clan.") say("Vorsicht, sie sind nicht zu unterschätzen.") say("Sei gewappnet! ...") say("") end end end state tagebuch_reward begin when letter begin send_letter("Sprich mit Yu-Hwan") local v = find_npc_by_vnum(20017) ifv != 0 then target.vid("__TARGET__", v, "Doktor") end end when button or info begin say("Um die Belohnung von Uriel zu erhalten") say("suche mit den Informationen der") say("Seite Yu-Hwan in Map2 auf.") say("") end when __TARGET__.target.click or 20017.chat."Belohnung Yu-Hwan" begin target.delete("__TARGET__") say_title("Yu-Hwan:") say("Ich sehe ...") say("Uriel hat dich zu mir geschickt.") say("Hier ist deine Belohnung:") say("") say_reward("Du erhälst:") say_reward(" 100 Tapferkeitsumhänge und 10 Millionen Yang") say("") pc.give_item2(70038, 100) pc.change_money(10000000) end end end
|
|
|
07/27/2015, 12:56
|
#11802
|
elite*gold: 83
Join Date: Nov 2013
Posts: 2,891
Received Thanks: 2,764
|
Quote:
Originally Posted by Niklas18
Moin, habe ein anderes Problem:
Die Quest funktioniert, keine Frage(auch wenn es komisch reinkopiert worden ist.)
Mein Problem ist nur, wenn ich die Belohnung von Yu-Hwan bekomme und ihn dann entweder erneut anklicke, oder einen Relog mache, erscheint der Pfeil wieder - will sagen, dass ich unendlich viel Belohnung von dem bekomme.
Man soll bei dieser Mini-Quest aber nur einmal eine Belohnung erhalten, mehr nicht. Wie kann ich das einstellen? Bitte um Hilfe.
PHP Code:
quest jagdaufgabe begin
----------------------------------
-- LvL 10 / Erste Seite
----------------------------------
state start begin
when login or levelup with pc.level>9 begin
set_state(talk_to_disciple_lv10)
end
end
state talk_to_disciple_lv10 begin
when letter begin
local v = find_npc_by_vnum(20011)
if v != 0 then target.vid("__TARGET__", v, "Uriel")
end
send_letter("Das Buch des Drachengottes")
end
when button or info begin
say_title("Das Buch des Drachengottes")
say("")
say("Uriel sucht nach dir.")
say("Sprich mit ihm.")
say("")
say_reward("Sprich mit Uriel")
say("")
end
when __TARGET__.target.click or 20011.chat."Drachengott" begin
target.delete("__TARGET__")
say("Uriel:")
say("")
say("Wer bist du denn?")
say("Oh, du scheinst neu hier zu sein.")
say("Ich bin übrigens Uriel. Mir wird nachgesagt,")
say("ich sei besessen auf Mythen.")
say("In gewisser Weise schon, denn ich lasse mich")
say("davon gerne fesseln. Ich bräuchte deine Hilfe.")
say("Es geht um ein altes Buch welches ich gefunden")
say("habe, doch es fehlen einige Seiten.")
wait()
say("Die ersten Seiten besagen folgendes:")
say("Vor vielen Jahren, als die drei Kaiserreiche im")
say("friedlichen Einklang miteinander lebten, fielen")
say("abertausende Steine vom Himmel. Diese Steine")
say("hatten starke, magnetische Wellen ausgesendet, die")
say("lebten, fielen abertausende Steine vom Himmel.")
say("Diese Steine, die die Tiere in freier Wildbahn")
say("zu Monstern, sogenannte MOBS, werden liesen.")
wait()
say("Uriel:")
say("Das ist total spannend, doch es geht weiter:")
say("Das Unheimliche daran war, dass,nachdem diese")
say("Steine das Land erreicht hatten, seltsame")
say("Kreaturen auftauchten und sich vermehrt überallhin ")
say("verteilten. Nirgends waren wir vor ihnen sicher.")
say("Wir mussten ständig damit rechnen, dass wir")
say("angegriffen werden.")
wait()
say("Wir wappneten uns mit starken Armeen und dann kam")
say("der Tag an dem sich die Klingen der Monster mit")
say("unseren kreuzten. Wir hatten diese Schlacht")
say("gewonnen, aber nicht den Krieg!Wir dachten wir")
say("hätten das Schlimmste überstanden, doch wie aus")
say("heiterem Himmel kam ein gigantischer Drache mit")
say("übergroßen, mächtigen Kriegern daher um uns das")
say("Fürchten zu lehren.")
wait()
say("Viele unserer Krieger starben")
say("an Ort und Stelle und die Schlacht sowie der Krieg")
say("schien verloren, doch vier Fremde mit")
say("übermenschlichen Kräften gaben Widerstand und")
say("durch sie gewannen wir den Krieg.")
wait()
say("Gott selbst schicktediese vier Fremde zu uns und")
say("wir ehrten sie mit einem großen Fest. Seitdem ist")
say("es Tradition junge Krieger ab einer bestimmten")
say("Grenze diese Fertigkeiten zu lehren, um das Dorf")
say("vor weiteren Angriffen zu schützen.")
say("Die heutigen Rassen:")
say("Krieger, Schamane, Sura und Ninja!")
wait()
say("Uriel")
say("Hier endet die Geschichte.")
say("Doch leider zerstritten sich die drei Kaiserreiche.")
say("Warum dies so ist, weiß ich nicht.")
say("Es könnte viele Gründe haben: Der Krieg, die")
say("Versorgung, das Aufbauen und neuziehen der Grenzen")
say("oder gar die Steine!")
wait()
say("Diese Legende soll mit der Wahrheit verbunden sein.")
say("Leider bin ich nicht so stark und auch")
say("schon ziemlich alt und gebrechlich. Die Seiten,")
say("so die Legende, sollen überall auf dem Kontinent ")
say("verteilt sein und diese werden von wilden Monstern")
say("jeglicher Art verteidigt. Du musst sie finden!")
say("Wenn wir es schaffen sollten, könnte man erneut")
say("versuchen, die drei Reiche zum Frieden zu bringen.")
wait()
say("Eine Möglichkeit und eine Chance, die wir nutzen")
say("sollten. Eventuell stehen auf diesen Seiten etwas")
say("über die Reiche und über die Grenzen usw. - Ich")
say("hoffe ich kann auf deine Hilfe zählen.")
say("Was meinst du dazu?")
wait()
say("Wirklich? Vielen Dank!")
say("Dann vertraue ich dir diese Aufgabe an!")
wait()
say("Uriel:")
say("Laut alten Schriften sei die erste Seite.")
say("bei den Weißen Eid. Soldaten gelandet.")
say("Vorsicht ist geboten. Sie sind nicht zu")
say("unterschätzen. Pass auf,denn die Seiten.")
say("können auch zerreißen. Sonst brauche ich")
say("eine neue, um weiter zu forschen!")
say("")
set_state(collect_tagebuchseite)
pc.setqf("duration",0)
pc.setqf("collect_count",0)
end
end
state collect_tagebuchseite begin
when letter begin
send_letter("Die erste Seite")
end
when button or info begin
say_title("Das Geheimnis des Drachengottes")
say("")
say("Finde die Seite und bringe sie Uriel.")
say("Zu finden ist diese bei den Weißen-Eid Clan")
say("")
say("Uriel zählt auf deine Hilfe!")
say_item_vnum(30150)
say("Ob diese Seite tatsächlich zu dem Buch gehört?")
say("")
end
when 301.kill or 302.kill or 333.kill begin
if pc.count_item(30150)<1 then
local rand = number(0,99)
if rand<5 then pc.give_item2(30150, 1)
end
end
end
when 20011.chat."Die verlorene Seite" begin
if pc.count_item(30150)>0 then
say("Uriel:")
say("Dank deiner Hilfe verstehe ich nun")
say("langsam die Legende um dieses Buch.")
say("Du hast hart gekämpft.")
say("Sprich mit Yu-Hwan, er wird dir helfen,")
say("deine inneren Kräfte zu steigern.")
say("")
say("Komm wieder, wenn du etwas stärker geworden bist.")
pc.remove_item(30150,1)
set_state(tagebuch_reward)
else
say("Uriel:")
say("Bringe mir bitte die Seite...")
say("Zu finden bei dem Weißen-Eid Clan.")
say("Vorsicht, sie sind nicht zu unterschätzen.")
say("Sei gewappnet! ...")
say("")
end
end
end
state tagebuch_reward begin
when letter begin
send_letter("Sprich mit Yu-Hwan")
local v = find_npc_by_vnum(20017)
ifv != 0 then target.vid("__TARGET__", v, "Doktor")
end
end
when button or info begin
say("Um die Belohnung von Uriel zu erhalten")
say("suche mit den Informationen der")
say("Seite Yu-Hwan in Map2 auf.")
say("")
end
when __TARGET__.target.click or 20017.chat."Belohnung Yu-Hwan" begin
target.delete("__TARGET__")
say_title("Yu-Hwan:")
say("Ich sehe ...")
say("Uriel hat dich zu mir geschickt.")
say("Hier ist deine Belohnung:")
say("")
say_reward("Du erhälst:")
say_reward(" 100 Tapferkeitsumhänge und 10 Millionen Yang")
say("")
pc.give_item2(70038, 100)
pc.change_money(10000000)
end
end
end
|
Stell dir die states als den Speicherstand des Spielers vor. Du bist also mit deinem Spieler am Speicherstand "tabebuch_reward".
Jetzt musst du natürlich auch nach abholen der Belohnung sagen, dass dieser Speicherstand nun abgeschlossen ist und er in den letzten (abgeschlossen) kommt. Schau dir bei anderen Quests einfach mal an wie es da gemacht wurde
|
|
|
07/27/2015, 13:41
|
#11803
|
elite*gold: 0
Join Date: May 2009
Posts: 33
Received Thanks: 4
|
Quote:
Originally Posted by Seחsi
Stell dir die states als den Speicherstand des Spielers vor. Du bist also mit deinem Spieler am Speicherstand "tabebuch_reward".
Jetzt musst du natürlich auch nach abholen der Belohnung sagen, dass dieser Speicherstand nun abgeschlossen ist und er in den letzten (abgeschlossen) kommt. Schau dir bei anderen Quests einfach mal an wie es da gemacht wurde 
|
Ah super, danke - habe es wohl hinbekommen.
In meinem Fall nach den Rewards einfach "complete_quest(jagdaufgabe)", 3x dieses "end" und fertig
|
|
|
07/28/2015, 17:56
|
#11804
|
elite*gold: 0
Join Date: Oct 2009
Posts: 13
Received Thanks: 0
|
Abend,
mein Problem ist das in der 3. Ebene der Metin des Teufels unterhalb der "karte" spawnt.
Wie kann ich den auf die richtige Position bringen, was genau muss ich ändern?
Ich sposte noch unten den Screen.
/edit als ich Schwertschlag auf metin des Teufel gemacht habe ist er wieder oben gespawnt.
Wie kann ich einstellen das er sofort auf seiner Position bleibt ?
Deviltower4_regen.txd
ma 372 631 0 0 0 0 0s 100 1 8016
PHP Code:
quest deviltower_zone begin state start begin when login begin if pc.get_map_index() == 66 then if pc.get_x() < 2048+88 or pc.get_y() < 6656+577 or pc.get_x() > 2048+236 or pc.get_y() > 6656+737 then pc.warp((5376+532)*100, (512+596+4)*100, 65) end pc.set_warp_location(65, 5376+532, 512+596+4) elseif pc.get_map_index() > 660000 and pc.get_map_index() < 670000 then pc.set_warp_location(65, 5376+532, 512+596+4) end end when 20348.click begin if pc.get_level() < 30 then say_title("Wächter des Dämonenturmes") say("") say("Du hast noch nicht genügend Kampferfahrung") say("gesammelt!") say("") say_reward("Komme wieder wenn du Level 30 erreicht hast.") return end if pc.get_level() > 29 then say_title("Wächter des Dämonenturmes") say("") say("Der Dämonenturm ist die Heimat von schrecklichen") say("Kreaturen, die nichts lieber tun, als dich zu töten.") say("Die Boni 'Stark gegen Untote' und 'Pfeilwiderstand'") say("könnten dir sehr hilfreich sein!") say("") say_reward("Ab Level 75 hast du die Möglichkeit den Dämonenturm") say_reward("mit einer Gruppe zu betreten.") local betreten = select("Dämonenturm normal betreten", "Dämonenturm als Gruppe betreten", "Abbrechen") if betreten == 1 then pc.warp(216500, 727000) end if betreten == 2 and pc.get_level() > 74 then if party.is_party() then say_title("Wächter des Dämonenturmes") say("") say("Bitte achte darauf, dass sich alle Gruppenmitglieder") say("im Tempel befinden!") say("") say_reward("Möchtest du den Dungeon wirklich mit deiner Gruppe") say_reward("betreten?") local gruppe_betreten = select("Dämonenturm als Gruppe betreten", "Abbrechen") if gruppe_betreten == 1 then d.join(66, special.devil_tower[1][1], special.devil_tower[1][2]) d.spawn_mob(8015, 120, 615) end if gruppe_betreten == 2 then return end end if not party.is_party() then say_title("Wächter des Dämonenturmes") say("") say("Du kannst diese Option nur ausführen wenn du dich") say("in einer Gruppe befindest.") say("") say_reward("Du befindest dich in keiner Gruppe.") return end end if betreten == 2 and pc.get_level() < 75 then say_title("Wächter des Dämonenturmes") say("") say_reward("Du kannst diese Option erst mit Level 75 nutzen.") return end if betreten == 3 then return end end end when 8015.kill begin timer("zeit_bis_port", 10) d.notice("Ihr habt den Metin der Härte zerstört!") d.notice("In 10 Sekunden werdet ihr in die erste Ebene teleportiert.") end when zeit_bis_port.timer begin d.new_jump_all(66, special.devil_tower[1][1], special.devil_tower[1][2]) d.regen_file("data/dungeon/deviltower2_regen.txt") d.set_warp_at_eliminate(4, d.get_map_index(), special.devil_tower[2][1], special.devil_tower[2][2], "data/dungeon/deviltower3_regen.txt") end --when devil_stone2.kill begin --d.jump_all_local(special.devil_tower[2][1], special.devil_tower[2][2]) --end when devil_stone3.kill begin --d.jump_all_local(special.devil_tower[3][1], special.devil_tower[3][2]) --d.set_exit_all_at_eliminate(6) --d.set_warp_at_eliminate(6, d.get_map_index(), 100, 100) --d.set_warp_at_eliminate(4, 65, 5376+532, 512+596+4) d.set_warp_at_eliminate(4, d.get_map_index(), special.devil_tower[3][1], special.devil_tower[3][2], "data/dungeon/deviltower4_regen.txt") d.check_eliminated() --d.exit_all() end function get_4floor_stone_pos() local positions = { {368, 629}, {419, 630}, {428, 653}, {422, 679}, {395, 689}, {369, 679}, {361, 658}, } for i = 1, 6 do local j = number(i, 7) if i != j then local t = positions[i]; positions[i] = positions[j]; positions[j] = t; end end --for i = 1, 7 do -- positions[i][1] = positions[i][1] * 100 -- positions[i][2] = positions[i][2] * 100 -- end return positions end when 8016.kill with pc.in_dungeon() and pc.get_map_index() >= 660000 and pc.get_map_index() < 670000 begin d.setf("level", 4) -- ¦A²{¤j¶q©Çª«¤Î»s³y¯u¥ÛÀY©M°²¥ÛÀY --d.regen_file("data/dungeon/deviltower4_regen.txt") local positions = deviltower_zone.get_4floor_stone_pos() for i = 1, 6 do chat(positions[i][1], positions[i][2]) d.set_unique("fake" .. i , d.spawn_mob(8017, positions[i][1], positions[i][2])) end chat(positions[7][1], positions[7][2]) local vid = d.spawn_mob(8017, positions[7][1], positions[7][2]) chat(vid) d.set_unique("real", vid) server_loop_timer('devil_stone4_update', 10, pc.get_map_index()) server_timer('devil_stone4_fail1', 5*60, pc.get_map_index())
d.notice("Findet den richtigen Metinstein und zerstört ihn."); d.notice("Die falschen Metinsteine werden verschwinden!"); d.notice("Ihr habt 15 Minuten zeit!"); end
when devil_stone4_fail1.server_timer begin if d.select(get_server_timer_arg()) then d.notice("Verbleibende Zeit: 10 Minuten") server_timer('devil_stone4_fail2', 5*60, get_server_timer_arg()) end end
when devil_stone4_fail2.server_timer begin if d.select(get_server_timer_arg()) then d.notice("Verbleibende Zeit: 5 Minuten") server_timer('devil_stone4_fail', 5*60, get_server_timer_arg()) end end
when devil_stone4_fail.server_timer begin if d.select(get_server_timer_arg()) then d.notice("Die Zeit ist abgelaufen") d.notice("Ihr werdet nun nach draußen teleportiert") d.exit_all() clear_server_timer('devil_stone4_update', get_server_timer_arg()) end end
when devil_stone4_update.server_timer begin if d.select(get_server_timer_arg()) then if not d.is_unique_dead("real") then for i = 1, 6 do if d.getf("fakedead" .. i) == 0 then if d.unique_get_hp_perc("fake" .. i) < 50 then d.purge_unique("fake" .. i) d.setf("fakedead" .. i, 1) d.notice("Der falsche Metinstein ist verschwunden.."); end end end else --d.clear_regen() --d.regen_file("data/dungeon/deviltower5_regen.txt") server_timer("devil_stone4_end", 5, get_server_timer_arg()) d.notice("Ihr habt den richtigen Metinstein zerstört."); d.notice("Ihr werdet nun in die nächste Ebene teleportiert") clear_server_timer('devil_stone4_fail1', get_server_timer_arg()) clear_server_timer('devil_stone4_fail2', get_server_timer_arg()) clear_server_timer('devil_stone4_fail', get_server_timer_arg()) end else server_timer('devil_stone4_stop_timer', 1, get_server_timer_arg()) end end
when devil_stone4_stop_timer.server_timer begin clear_server_timer('devil_stone4_update', get_server_timer_arg()) end
when devil_stone4_end.server_timer begin if d.select(get_server_timer_arg()) then d.setf("level", 5) d.setf("stone_count", 5) d.notice("Du bist nun in der 5. Ebene") d.notice("Öffne alle Alten Siegel um in die nächste Ebene zu gelangen.") d.notice("Du hast 20 Minuten Zeit um alle Siegel zu öffnen.") d.jump_all(special.devil_tower[4][1], special.devil_tower[4][2]) server_timer('devil_stone5_fail1', 5*60, get_server_timer_arg()) clear_server_timer('devil_stone4_update', get_server_timer_arg())
d.set_regen_file("data/dungeon/deviltower5_regen.txt")
d.spawn_mob(20073, 421, 452) d.spawn_mob(20073, 380, 460) d.spawn_mob(20073, 428, 414) d.spawn_mob(20073, 398, 392) d.spawn_mob(20073, 359, 426) end end when devil_stone5_fail1.server_timer begin if d.select(get_server_timer_arg()) then d.notice("Verbleibende Zeit: 15 Minuten") server_timer('devil_stone5_fail2', 5*60, get_server_timer_arg()) end end
when devil_stone5_fail2.server_timer begin if d.select(get_server_timer_arg()) then d.notice("Verbleibende Zeit: 10 Minuten") server_timer('devil_stone5_fail3', 5*60, get_server_timer_arg()) end end
when devil_stone5_fail3.server_timer begin if d.select(get_server_timer_arg()) then d.notice("Verbleibende Zeit: 5 Minuten") server_timer('devil_stone5_fail', 5*60, get_server_timer_arg()) end end
when devil_stone5_fail.server_timer begin if d.select(get_server_timer_arg()) then d.notice("Die Zeit ist abgelaufen") d.notice("Ihr werdet nun nach draußen teleportiert") d.exit_all() end end
--when devil_stone4.kill begin --d.setf("level", 5) --d.setf("stone_count", 4) --d.clear_regen() --d.regen_file("data/dungeon/deviltower5_regen.txt") --d.jump_all_local(special.devil_tower[4][1], special.devil_tower[4][2]) --end
when 1062.kill with pc.in_dungeon() and d.getf("level") == 5 begin local KILL_COUNT_FOR_DROP_KEY = 5 --if is_test_server() then --KILL_COUNT_FOR_DROP_KEY = 1 --end local n =d.getf("count") + 1 d.setf("count", n) if n == KILL_COUNT_FOR_DROP_KEY then -- bla bla 3 game.drop_item(50084, 1) d.setf("count", 0) end end when devil_stone5.take with item.vnum == 50084 begin npc.purge() item.remove() d.setf("stone_count", d.getf("stone_count") - 1) if d.getf("stone_count") <= 0 then d.setf("level", 6) d.clear_regen() d.regen_file("data/dungeon/deviltower6_regen.txt")
d.notice("Ihr habt alle alten Siegel geöffnet. Ihr werdet nun") d.notice("in die 6. Ebene teleportiert.") d.jump_all(special.devil_tower[5][1], special.devil_tower[5][2]) clear_server_timer('devil_stone5_fail1', get_server_timer_arg()) clear_server_timer('devil_stone5_fail2', get_server_timer_arg()) clear_server_timer('devil_stone5_fail3', get_server_timer_arg()) clear_server_timer('devil_stone5_fail', get_server_timer_arg()) else d.notice("Es verbleibt eine Anzahl von "..d.getf("stone_count").." Siegeln") end end
when devil_stone6.kill begin --d.jump_all(special.devil_tower[6][1], special.devil_tower[6][2]) d.kill_all() -- d.set_warp_at_eliminate(3*60, 65, 5376+532, 512+596+4) d.check_eliminated() timer("stolzerking_killed", 5) end when stolzerking_killed.timer begin cmdchat("CMD1") d.spawn_mob(9012, 395, 200) d.spawn_mob(20074, 392, 209) d.spawn_mob(20075, 405, 209) d.spawn_mob(20076, 399, 209) d.spawn_mob(9003, 402, 200) d.setqf("can_refine", 1) d.notice("Du hast den Stolzen Dämonenkönig getötet und damit den 1. Teil des Dungeons abgeschlossen.") d.notice("Als Belohnung darfst du einen Gegenstand bei den dämonischen Schmieden verbessern.") d.notice("Falls du für den 2. Teil des Dungeons etwas benötigst kannst du es bei der Gemischtwarenhändlerin kaufen.") d.notice("Du wirst in 2 Minuten automatisch auf die nächste Ebene teleportiert.") timer("zeit_zum_uppen", 110) end when zeit_zum_uppen.timer begin d.notice("In 10 Sekunden wirst du auf die nächste Ebene teleportiert.") timer("zeit_bis_mordesebene", 10) end
when zeit_bis_mordesebene.timer begin d.clear_regen()
d.spawn_mob(8018, 639, 658) d.spawn_mob(8018, 611, 637) d.spawn_mob(8018, 596, 674) d.spawn_mob(8018, 629, 670)
d.setf("level", 7)
d.jump_all(2048+590, 6656+638) end when 8018.kill with pc.in_dungeon() and pc.get_map_index() >= 660000 and pc.get_map_index() < 670000 begin local cont = d.getf("7_stone_kill") + 1 d.setf("7_stone_kill", cont)
if cont >= 4 then d.setf("7_stone_kill", 0) d.set_regen_file("data/dungeon/deviltower7_regen.txt") end end
when 8019.kill with pc.in_dungeon() and pc.get_map_index() >= 660000 and pc.get_map_index() < 670000 begin game.drop_item(30300, 1) end
when 30300.use with pc.in_dungeon() and pc.get_map_index() >= 660000 and pc.get_map_index() < 670000 begin pc.remove_item("30300", 1)
local pct = number(1,10)
if pct == 1 then -- bla bla 7 game.drop_item(30302, 1) d.clear_regen() else -- bla bla 8 game.drop_item(30301, 1) end end
when 30302.use with pc.in_dungeon() and pc.get_map_index() >= 660000 and pc.get_map_index() < 670000 begin -- bla bla 9 say_title("Karte der Zin-Grotte") say("") say("Herzlichen Glückwunsch! Du hast die richtige Karte") say("gefunden.") say("") say_reward("Du wirst jetzt in die nächste Ebene teleportiert.") pc.remove_item("30302", 1) timer("devil_jump_8", 6) d.clear_regen() end when devil_jump_8.timer begin d.setf("level", 8) d.jump_all(2048+590, 6656+403) d.set_regen_file("data/dungeon/deviltower8_regen.txt") d.spawn_mob(20366, 640, 460) local _count= pc.count_item(30302)-- bla bla 11 pc.remove_item(30302,_count) end
when 1040.kill with pc.in_dungeon() and pc.get_map_index() >= 660000 and pc.get_map_index() < 670000 begin local pct1 = number(1, 5) if pct1 == 1 then local pct2 = number(1, 10) if pct2 == 1 then -- bla bla 12 game.drop_item(30304, 1) else -- bla bla 13 game.drop_item(30304, 1) end else return end end
when 20366.take with item.vnum == 30304 begin -- bla bla 14 npc.purge() item.remove() d.kill_all() timer("devil_jump_9", 6) end when devil_jump_9.timer begin d.setf("level", 9) d.jump_all(2048+590, 6656+155) d.regen_file("data/dungeon/deviltower9_regen.txt") end when 1093.kill with pc.in_dungeon() and pc.get_map_index() >= 660000 and pc.get_map_index() < 670000 begin d.kill_all() timer("sensi_killed", 5) end when sensi_killed.timer begin cmdchat("CMD1") d.kill_all() d.spawn_mob(9012, 618, 187) d.spawn_mob(20074, 611, 179) d.spawn_mob(20075, 620, 170) d.spawn_mob(20076, 628, 179) d.spawn_mob(9003, 621, 187) d.setqf("can_refine", 1) d.notice("Du hast den Sensenmann getötet und damit den 2. Teil des Dungeons abgeschlossen.") d.notice("Als Belohnung darfst du einen Gegenstand bei den dämonischen Schmieden verbessern.") d.notice("Falls du den Dungeon fortführen möchtest, kannst du dir bei der Gemischtwarenhändlerin") d.notice("erneut Tränke kaufen. Du wirst in 2 Minuten automatisch auf die nächste Ebene teleportiert.") timer("zeit_nach_sensi", 110) end when zeit_nach_sensi.timer begin d.notice("In 10 Sekunden wirst du auf die nächste Ebene teleportiert.") timer("zeit_bis_gemeinerking", 10) end when zeit_bis_gemeinerking.timer begin d.jump_all(2048+590, 6656+155) d.kill_all() d.spawn_mob(1094, 620, 170) d.notice("Der Gemeine Dämonenkönig treibt hier sein Unwesen.") d.notice("Töte ihn, um auf die nächste Ebene zu gelangen.") end when 1094.kill with pc.in_dungeon() and pc.get_map_index() >= 660000 and pc.get_map_index() < 670000 begin timer("zeit_bis_bt", 10) d.notice("Du hast den Gemeinen Dämonenkönig getötet.") d.notice("In 10 Sekunden wirst du auf die letzte Ebene teleportiert.") end when zeit_bis_bt.timer begin d.jump_all(2048+590, 6656+155) d.kill_all() d.spawn_mob(1095, 620, 170) d.notice("Du befindest dich auf der letzten Ebene des Dämonenturmes.") d.notice("Töte den Blauen Tod und du wirst reich belohnt!") end when 1095.kill with pc.in_dungeon() and pc.get_map_index() >= 660000 and pc.get_map_index() < 670000 begin cmdchat("CMD1") d.kill_all() d.spawn_mob(9012, 618, 187) d.spawn_mob(20074, 611, 179) d.spawn_mob(20075, 620, 170) d.spawn_mob(20076, 628, 179) d.spawn_mob(9003, 621, 187) d.setqf("can_refine", 1) d.notice("Du hast den Blauen Tod getötet und damit den Dämonenturm abgeschlossen.") d.notice("Herzlichen Glückwunsch!") d.notice("Du darfst erneut einen Gegenstand bei den dämonischen Schmieden verbessern. Viel Glück!") notice_all("".. pc.get_name() .." hat den Blauen Tod getötet und damit den Dämonenturm abgeschlossen.") end end end
|
|
|
07/28/2015, 18:16
|
#11805
|
elite*gold: 83
Join Date: Nov 2013
Posts: 2,891
Received Thanks: 2,764
|
Quote:
Originally Posted by 38momo38
Abend,
mein Problem ist das in der 3. Ebene der Metin des Teufels unterhalb der "karte" spawnt.
Wie kann ich den auf die richtige Position bringen, was genau muss ich ändern?
Ich sposte noch unten den Screen.
/edit als ich Schwertschlag auf metin des Teufel gemacht habe ist er wieder oben gespawnt.
Wie kann ich einstellen das er sofort auf seiner Position bleibt ?
Deviltower4_regen.txd
ma 372 631 0 0 0 0 0s 100 1 8016
PHP Code:
quest deviltower_zone begin
state start begin
when login begin
if pc.get_map_index() == 66 then
if pc.get_x() < 2048+88 or pc.get_y() < 6656+577 or pc.get_x() > 2048+236 or pc.get_y() > 6656+737 then
pc.warp((5376+532)*100, (512+596+4)*100, 65)
end
pc.set_warp_location(65, 5376+532, 512+596+4)
elseif pc.get_map_index() > 660000 and pc.get_map_index() < 670000 then
pc.set_warp_location(65, 5376+532, 512+596+4)
end
end
when 20348.click begin
if pc.get_level() < 30 then
say_title("Wächter des Dämonenturmes")
say("")
say("Du hast noch nicht genügend Kampferfahrung")
say("gesammelt!")
say("")
say_reward("Komme wieder wenn du Level 30 erreicht hast.")
return
end
if pc.get_level() > 29 then
say_title("Wächter des Dämonenturmes")
say("")
say("Der Dämonenturm ist die Heimat von schrecklichen")
say("Kreaturen, die nichts lieber tun, als dich zu töten.")
say("Die Boni 'Stark gegen Untote' und 'Pfeilwiderstand'")
say("könnten dir sehr hilfreich sein!")
say("")
say_reward("Ab Level 75 hast du die Möglichkeit den Dämonenturm")
say_reward("mit einer Gruppe zu betreten.")
local betreten = select("Dämonenturm normal betreten", "Dämonenturm als Gruppe betreten", "Abbrechen")
if betreten == 1 then
pc.warp(216500, 727000)
end
if betreten == 2 and pc.get_level() > 74 then
if party.is_party() then
say_title("Wächter des Dämonenturmes")
say("")
say("Bitte achte darauf, dass sich alle Gruppenmitglieder")
say("im Tempel befinden!")
say("")
say_reward("Möchtest du den Dungeon wirklich mit deiner Gruppe")
say_reward("betreten?")
local gruppe_betreten = select("Dämonenturm als Gruppe betreten", "Abbrechen")
if gruppe_betreten == 1 then
d.join(66, special.devil_tower[1][1], special.devil_tower[1][2])
d.spawn_mob(8015, 120, 615)
end
if gruppe_betreten == 2 then
return
end
end
if not party.is_party() then
say_title("Wächter des Dämonenturmes")
say("")
say("Du kannst diese Option nur ausführen wenn du dich")
say("in einer Gruppe befindest.")
say("")
say_reward("Du befindest dich in keiner Gruppe.")
return
end
end
if betreten == 2 and pc.get_level() < 75 then
say_title("Wächter des Dämonenturmes")
say("")
say_reward("Du kannst diese Option erst mit Level 75 nutzen.")
return
end
if betreten == 3 then
return
end
end
end
when 8015.kill begin
timer("zeit_bis_port", 10)
d.notice("Ihr habt den Metin der Härte zerstört!")
d.notice("In 10 Sekunden werdet ihr in die erste Ebene teleportiert.")
end
when zeit_bis_port.timer begin
d.new_jump_all(66, special.devil_tower[1][1], special.devil_tower[1][2])
d.regen_file("data/dungeon/deviltower2_regen.txt")
d.set_warp_at_eliminate(4, d.get_map_index(), special.devil_tower[2][1], special.devil_tower[2][2], "data/dungeon/deviltower3_regen.txt")
end
--when devil_stone2.kill begin
--d.jump_all_local(special.devil_tower[2][1], special.devil_tower[2][2])
--end
when devil_stone3.kill begin
--d.jump_all_local(special.devil_tower[3][1], special.devil_tower[3][2])
--d.set_exit_all_at_eliminate(6)
--d.set_warp_at_eliminate(6, d.get_map_index(), 100, 100)
--d.set_warp_at_eliminate(4, 65, 5376+532, 512+596+4)
d.set_warp_at_eliminate(4, d.get_map_index(), special.devil_tower[3][1], special.devil_tower[3][2], "data/dungeon/deviltower4_regen.txt")
d.check_eliminated()
--d.exit_all()
end
function get_4floor_stone_pos()
local positions = {
{368, 629},
{419, 630},
{428, 653},
{422, 679},
{395, 689},
{369, 679},
{361, 658},
}
for i = 1, 6 do
local j = number(i, 7)
if i != j then
local t = positions[i];
positions[i] = positions[j];
positions[j] = t;
end
end
--for i = 1, 7 do
-- positions[i][1] = positions[i][1] * 100
-- positions[i][2] = positions[i][2] * 100
-- end
return positions
end
when 8016.kill with pc.in_dungeon() and pc.get_map_index() >= 660000 and pc.get_map_index() < 670000 begin
d.setf("level", 4)
-- ¦A²{¤j¶q©Çª«¤Î»s³y¯u¥ÛÀY©M°²¥ÛÀY
--d.regen_file("data/dungeon/deviltower4_regen.txt")
local positions = deviltower_zone.get_4floor_stone_pos()
for i = 1, 6 do
chat(positions[i][1], positions[i][2])
d.set_unique("fake" .. i , d.spawn_mob(8017, positions[i][1], positions[i][2]))
end
chat(positions[7][1], positions[7][2])
local vid = d.spawn_mob(8017, positions[7][1], positions[7][2])
chat(vid)
d.set_unique("real", vid)
server_loop_timer('devil_stone4_update', 10, pc.get_map_index())
server_timer('devil_stone4_fail1', 5*60, pc.get_map_index())
d.notice("Findet den richtigen Metinstein und zerstört ihn.");
d.notice("Die falschen Metinsteine werden verschwinden!");
d.notice("Ihr habt 15 Minuten zeit!");
end
when devil_stone4_fail1.server_timer begin
if d.select(get_server_timer_arg()) then
d.notice("Verbleibende Zeit: 10 Minuten")
server_timer('devil_stone4_fail2', 5*60, get_server_timer_arg())
end
end
when devil_stone4_fail2.server_timer begin
if d.select(get_server_timer_arg()) then
d.notice("Verbleibende Zeit: 5 Minuten")
server_timer('devil_stone4_fail', 5*60, get_server_timer_arg())
end
end
when devil_stone4_fail.server_timer begin
if d.select(get_server_timer_arg()) then
d.notice("Die Zeit ist abgelaufen")
d.notice("Ihr werdet nun nach draußen teleportiert")
d.exit_all()
clear_server_timer('devil_stone4_update', get_server_timer_arg())
end
end
when devil_stone4_update.server_timer begin
if d.select(get_server_timer_arg()) then
if not d.is_unique_dead("real") then
for i = 1, 6 do
if d.getf("fakedead" .. i) == 0 then
if d.unique_get_hp_perc("fake" .. i) < 50 then
d.purge_unique("fake" .. i)
d.setf("fakedead" .. i, 1)
d.notice("Der falsche Metinstein ist verschwunden..");
end
end
end
else
--d.clear_regen()
--d.regen_file("data/dungeon/deviltower5_regen.txt")
server_timer("devil_stone4_end", 5, get_server_timer_arg())
d.notice("Ihr habt den richtigen Metinstein zerstört.");
d.notice("Ihr werdet nun in die nächste Ebene teleportiert")
clear_server_timer('devil_stone4_fail1', get_server_timer_arg())
clear_server_timer('devil_stone4_fail2', get_server_timer_arg())
clear_server_timer('devil_stone4_fail', get_server_timer_arg())
end
else
server_timer('devil_stone4_stop_timer', 1, get_server_timer_arg())
end
end
when devil_stone4_stop_timer.server_timer begin
clear_server_timer('devil_stone4_update', get_server_timer_arg())
end
when devil_stone4_end.server_timer begin
if d.select(get_server_timer_arg()) then
d.setf("level", 5)
d.setf("stone_count", 5)
d.notice("Du bist nun in der 5. Ebene")
d.notice("Öffne alle Alten Siegel um in die nächste Ebene zu gelangen.")
d.notice("Du hast 20 Minuten Zeit um alle Siegel zu öffnen.")
d.jump_all(special.devil_tower[4][1], special.devil_tower[4][2])
server_timer('devil_stone5_fail1', 5*60, get_server_timer_arg())
clear_server_timer('devil_stone4_update', get_server_timer_arg())
d.set_regen_file("data/dungeon/deviltower5_regen.txt")
d.spawn_mob(20073, 421, 452)
d.spawn_mob(20073, 380, 460)
d.spawn_mob(20073, 428, 414)
d.spawn_mob(20073, 398, 392)
d.spawn_mob(20073, 359, 426)
end
end
when devil_stone5_fail1.server_timer begin
if d.select(get_server_timer_arg()) then
d.notice("Verbleibende Zeit: 15 Minuten")
server_timer('devil_stone5_fail2', 5*60, get_server_timer_arg())
end
end
when devil_stone5_fail2.server_timer begin
if d.select(get_server_timer_arg()) then
d.notice("Verbleibende Zeit: 10 Minuten")
server_timer('devil_stone5_fail3', 5*60, get_server_timer_arg())
end
end
when devil_stone5_fail3.server_timer begin
if d.select(get_server_timer_arg()) then
d.notice("Verbleibende Zeit: 5 Minuten")
server_timer('devil_stone5_fail', 5*60, get_server_timer_arg())
end
end
when devil_stone5_fail.server_timer begin
if d.select(get_server_timer_arg()) then
d.notice("Die Zeit ist abgelaufen")
d.notice("Ihr werdet nun nach draußen teleportiert")
d.exit_all()
end
end
--when devil_stone4.kill begin
--d.setf("level", 5)
--d.setf("stone_count", 4)
--d.clear_regen()
--d.regen_file("data/dungeon/deviltower5_regen.txt")
--d.jump_all_local(special.devil_tower[4][1], special.devil_tower[4][2])
--end
when 1062.kill with pc.in_dungeon() and d.getf("level") == 5 begin
local KILL_COUNT_FOR_DROP_KEY = 5
--if is_test_server() then
--KILL_COUNT_FOR_DROP_KEY = 1
--end
local n =d.getf("count") + 1
d.setf("count", n)
if n == KILL_COUNT_FOR_DROP_KEY then
-- bla bla 3
game.drop_item(50084, 1)
d.setf("count", 0)
end
end
when devil_stone5.take with item.vnum == 50084 begin
npc.purge()
item.remove()
d.setf("stone_count", d.getf("stone_count") - 1)
if d.getf("stone_count") <= 0 then
d.setf("level", 6)
d.clear_regen()
d.regen_file("data/dungeon/deviltower6_regen.txt")
d.notice("Ihr habt alle alten Siegel geöffnet. Ihr werdet nun")
d.notice("in die 6. Ebene teleportiert.")
d.jump_all(special.devil_tower[5][1], special.devil_tower[5][2])
clear_server_timer('devil_stone5_fail1', get_server_timer_arg())
clear_server_timer('devil_stone5_fail2', get_server_timer_arg())
clear_server_timer('devil_stone5_fail3', get_server_timer_arg())
clear_server_timer('devil_stone5_fail', get_server_timer_arg())
else
d.notice("Es verbleibt eine Anzahl von "..d.getf("stone_count").." Siegeln")
end
end
when devil_stone6.kill begin
--d.jump_all(special.devil_tower[6][1], special.devil_tower[6][2])
d.kill_all()
-- d.set_warp_at_eliminate(3*60, 65, 5376+532, 512+596+4)
d.check_eliminated()
timer("stolzerking_killed", 5)
end
when stolzerking_killed.timer begin
cmdchat("CMD1")
d.spawn_mob(9012, 395, 200)
d.spawn_mob(20074, 392, 209)
d.spawn_mob(20075, 405, 209)
d.spawn_mob(20076, 399, 209)
d.spawn_mob(9003, 402, 200)
d.setqf("can_refine", 1)
d.notice("Du hast den Stolzen Dämonenkönig getötet und damit den 1. Teil des Dungeons abgeschlossen.")
d.notice("Als Belohnung darfst du einen Gegenstand bei den dämonischen Schmieden verbessern.")
d.notice("Falls du für den 2. Teil des Dungeons etwas benötigst kannst du es bei der Gemischtwarenhändlerin kaufen.")
d.notice("Du wirst in 2 Minuten automatisch auf die nächste Ebene teleportiert.")
timer("zeit_zum_uppen", 110)
end
when zeit_zum_uppen.timer begin
d.notice("In 10 Sekunden wirst du auf die nächste Ebene teleportiert.")
timer("zeit_bis_mordesebene", 10)
end
when zeit_bis_mordesebene.timer begin
d.clear_regen()
d.spawn_mob(8018, 639, 658)
d.spawn_mob(8018, 611, 637)
d.spawn_mob(8018, 596, 674)
d.spawn_mob(8018, 629, 670)
d.setf("level", 7)
d.jump_all(2048+590, 6656+638)
end
when 8018.kill with pc.in_dungeon() and pc.get_map_index() >= 660000 and pc.get_map_index() < 670000 begin
local cont = d.getf("7_stone_kill") + 1
d.setf("7_stone_kill", cont)
if cont >= 4 then
d.setf("7_stone_kill", 0)
d.set_regen_file("data/dungeon/deviltower7_regen.txt")
end
end
when 8019.kill with pc.in_dungeon() and pc.get_map_index() >= 660000 and pc.get_map_index() < 670000 begin
game.drop_item(30300, 1)
end
when 30300.use with pc.in_dungeon() and pc.get_map_index() >= 660000 and pc.get_map_index() < 670000 begin
pc.remove_item("30300", 1)
local pct = number(1,10)
if pct == 1 then
-- bla bla 7
game.drop_item(30302, 1)
d.clear_regen()
else
-- bla bla 8
game.drop_item(30301, 1)
end
end
when 30302.use with pc.in_dungeon() and pc.get_map_index() >= 660000 and pc.get_map_index() < 670000 begin
-- bla bla 9
say_title("Karte der Zin-Grotte")
say("")
say("Herzlichen Glückwunsch! Du hast die richtige Karte")
say("gefunden.")
say("")
say_reward("Du wirst jetzt in die nächste Ebene teleportiert.")
pc.remove_item("30302", 1)
timer("devil_jump_8", 6)
d.clear_regen()
end
when devil_jump_8.timer begin
d.setf("level", 8)
d.jump_all(2048+590, 6656+403)
d.set_regen_file("data/dungeon/deviltower8_regen.txt")
d.spawn_mob(20366, 640, 460)
local _count= pc.count_item(30302)-- bla bla 11
pc.remove_item(30302,_count)
end
when 1040.kill with pc.in_dungeon() and pc.get_map_index() >= 660000 and pc.get_map_index() < 670000 begin
local pct1 = number(1, 5)
if pct1 == 1 then
local pct2 = number(1, 10)
if pct2 == 1 then
-- bla bla 12
game.drop_item(30304, 1)
else
-- bla bla 13
game.drop_item(30304, 1)
end
else
return
end
end
when 20366.take with item.vnum == 30304 begin
-- bla bla 14
npc.purge()
item.remove()
d.kill_all()
timer("devil_jump_9", 6)
end
when devil_jump_9.timer begin
d.setf("level", 9)
d.jump_all(2048+590, 6656+155)
d.regen_file("data/dungeon/deviltower9_regen.txt")
end
when 1093.kill with pc.in_dungeon() and pc.get_map_index() >= 660000 and pc.get_map_index() < 670000 begin
d.kill_all()
timer("sensi_killed", 5)
end
when sensi_killed.timer begin
cmdchat("CMD1")
d.kill_all()
d.spawn_mob(9012, 618, 187)
d.spawn_mob(20074, 611, 179)
d.spawn_mob(20075, 620, 170)
d.spawn_mob(20076, 628, 179)
d.spawn_mob(9003, 621, 187)
d.setqf("can_refine", 1)
d.notice("Du hast den Sensenmann getötet und damit den 2. Teil des Dungeons abgeschlossen.")
d.notice("Als Belohnung darfst du einen Gegenstand bei den dämonischen Schmieden verbessern.")
d.notice("Falls du den Dungeon fortführen möchtest, kannst du dir bei der Gemischtwarenhändlerin")
d.notice("erneut Tränke kaufen. Du wirst in 2 Minuten automatisch auf die nächste Ebene teleportiert.")
timer("zeit_nach_sensi", 110)
end
when zeit_nach_sensi.timer begin
d.notice("In 10 Sekunden wirst du auf die nächste Ebene teleportiert.")
timer("zeit_bis_gemeinerking", 10)
end
when zeit_bis_gemeinerking.timer begin
d.jump_all(2048+590, 6656+155)
d.kill_all()
d.spawn_mob(1094, 620, 170)
d.notice("Der Gemeine Dämonenkönig treibt hier sein Unwesen.")
d.notice("Töte ihn, um auf die nächste Ebene zu gelangen.")
end
when 1094.kill with pc.in_dungeon() and pc.get_map_index() >= 660000 and pc.get_map_index() < 670000 begin
timer("zeit_bis_bt", 10)
d.notice("Du hast den Gemeinen Dämonenkönig getötet.")
d.notice("In 10 Sekunden wirst du auf die letzte Ebene teleportiert.")
end
when zeit_bis_bt.timer begin
d.jump_all(2048+590, 6656+155)
d.kill_all()
d.spawn_mob(1095, 620, 170)
d.notice("Du befindest dich auf der letzten Ebene des Dämonenturmes.")
d.notice("Töte den Blauen Tod und du wirst reich belohnt!")
end
when 1095.kill with pc.in_dungeon() and pc.get_map_index() >= 660000 and pc.get_map_index() < 670000 begin
cmdchat("CMD1")
d.kill_all()
d.spawn_mob(9012, 618, 187)
d.spawn_mob(20074, 611, 179)
d.spawn_mob(20075, 620, 170)
d.spawn_mob(20076, 628, 179)
d.spawn_mob(9003, 621, 187)
d.setqf("can_refine", 1)
d.notice("Du hast den Blauen Tod getötet und damit den Dämonenturm abgeschlossen.")
d.notice("Herzlichen Glückwunsch!")
d.notice("Du darfst erneut einen Gegenstand bei den dämonischen Schmieden verbessern. Viel Glück!")
notice_all("".. pc.get_name() .." hat den Blauen Tod getötet und damit den Dämonenturm abgeschlossen.")
end
end
end

|
Das ist auf jedem Server so, sogar auf DE. Du musst einfach aufs Pferd steigen bzw absteigen 1x
|
|
|
All times are GMT +1. The time now is 20:44.
|
|