|
You last visited: Today at 06:09
Advertisement
[SERVICE] Die Questkontrolle
Discussion on [SERVICE] Die Questkontrolle within the Metin2 Private Server forum part of the Metin2 category.
04/15/2011, 01:15
|
#1951
|
elite*gold: 0
Join Date: Aug 2008
Posts: 4,585
Received Thanks: 1,695
|
Hey,
Das problem bei meiner Quest ist, das wenn ich auf die SUrafrau klicke, das nix passiert. ICh ahbe die Frau schon durch den eigentlich Wächter ausgetauscht, da ich gehofft habe das sich etwas ändert, da ich dieses Problem auch beim richtigen Wächter hatte. Aber man sieht, das gleiche Problem. Weiss Jemand vlt wieso das die mich nicht mehr in den DT porten wollen?
Die quest:
PHP Code:
quest deviltower_zone begin
state start begin
when login begin
if pc.get_map_index() == 66 then
-- ¨Ã«D¦b1¼Ó®É, °eªð¥~*±.
-- ¼h¼Æ ½d³ò
-- 1¼Ó 88 577 236 737
-- 2¼Ó 91 343 238 504
-- 3¼Ó 104 107 248 269
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 20090.chat."In den Turm" then
say ( "Moechtest du den Daemonenturm betreten?" )
local s = select ( "Betreten" , "In das Shinsoo Reich teleportieren" , "In das Chunjo Reich teleportieren" , "In das Jinno Reich teleportieren" , "Abbrechen" )
if s == 1 then
pc . warp ( 216500 , 727000 )
end
if s == 5 then
end
if s == 2 then
say ( "Du wirst nun in das Shinsoo Reich teleportiert!" )
local s = select ( "OK" )
pc . warp ( 469300 , 964200 )
end
if s == 3 then
say ( "Du wirst nun in das Chunjo Reich teleportiert!" )
local s = select ( "OK" )
pc . warp ( 55700 , 157900 )
end
if s == 4 then
say ( "Du wirst nun in das Jinno Reich teleportiert!" )
local s = select ( "OK" )
pc . warp ( 969600 , 278400 )
end
end
end
when devil_stone1.kill begin
timer("devil_stone1_1", 6)
end
when devil_stone1_1.timer begin
local mapto7= pc.count_item(30302) -- Ich weiß nicht, das wahre Tilgung der die Existenz der Seele des Turms
pc.remove_item(30302,mapto7)
local boxto7= pc.count_item(30300) -- Beseitigung des unbekannten weiß nicht, ob es sich um ein Feld
pc.remove_item(30300,boxto7)
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)
-- Reproduzieren eine gro¡¼ Anzahl von Monstern und Herstellung von wahr und falsch Steine Steine
--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("Hier ist der 4. Etage,");
d.notice("findet den Echten Metinstein");
d.notice("innerhalb von 15 Minuten,");
d.notice("Sonst werdet ihr vor die Tür gesetzt.");
end
when devil_stone4_fail1.server_timer begin
if d.select(get_server_timer_arg()) then
d.notice("Noch 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("Noch 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.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("Ein falscher Metinstein verschwindet.");
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("Glückwunsch Euch ist es geglückt den Echten Metinstein");
d.notice("zu finden... Auf in die nächste Etage.")
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("Willkommen auf der 5.ten Etage")
d.notice("Tötet alle Monster denn manche Tragen den Schlüssel")
d.notice("für die nächste Etage mit sich")
d.notice("Öffnet alle Säulen mit hilfe der Schlüsselsteine (Ihr habt 20 Minuten Zeit)")
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())
-- 5. Stock, weiter zu reproduzieren
d.set_regen_file("data/dungeon/deviltower5_regen.txt")
-- 5. Stock, Seal Stone Reproduktion
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("Noch 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("Noch 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("Noch 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.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 = 50
--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
-- Falling Tasten
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("Glückwunsch ihr habt alle Säulen Geöffnet")
d.notice("Ihr werdet in die nächste Etage aufsteigen.")
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("Säule entfernt... Noch "..d.getf("stone_count").."Viel Glück")
end
end
when devil_stone6.kill begin
-- Geschickt, um eine Karte, wo die Verfeinerung St.
-- Ansonsten ¡¼fnen Sie ein neues Lian Sheng
--d.jump_all(special.devil_tower[6][1], special.devil_tower[6][2])
d.kill_all()
when 1092.kill with pc.in_dungeon() begin
game.drop_item(70028, 1)
-- d.set_warp_at_eliminate(3*60, 65, 5376+532, 512+596+4)
d.check_eliminated()
local reward_alchemist = {20074, 20075, 20076}
d.spawn_mob(reward_alchemist[number(1,3)], 425, 216);
d.setqf("can_refine", 1)
end
--------------------------------------
-- 7 D kommt man aus dem Zugriff vor dem 8. Stock
--------------------------------------
when 20074.chat."Die Oberen Stockwerke" with pc.in_dungeon() and pc.get_map_index() >= 660000 and pc.get_map_index() < 670000 begin
say(""..mob_name(20074).."")
say("Möchtet ihr Weiter herauf")
say("und euer können weiterhin unter Beweis stellen?")
say("Ich jedenfalls bleibe hier!")
say("Aber ich kann euch auch nur Hinauf lassen,")
say("wenn ihr mir ein Notiz des Weisen bringt!")
say("")
wait()
if pc.level >=75 and pc.count_item(70028)>=1 then
say("Ihr seid zumindest gross genug.")
say("Doch seid ihr auch Tapfer genug?")
say("Es gibt nur eine möglichkeit das festzustellen.")
timer("devil_jump_7", 6)
return
end
say("Ihr seid leider noch nicht ")
say("gross genug um weiter aufzusteigen")
say("Ebenfalls fehlt euch das gewünschte Item!")
say("Es wurde vom Stolzen Dämonenkönig gedroppt!")
say("")
return
end
when 20075.chat."Die Oberen Stockwerke" with pc.in_dungeon() and pc.get_map_index() >= 660000 and pc.get_map_index() < 670000 begin
say(""..mob_name(20074).."")
say("Möchtet ihr Weiter herauf")
say("und euer können weiterhin unter Beweis stellen?")
say("Ich jedenfalls bleibe hier!")
say("Aber ich kann euch auch nur Hinauf lassen,")
say("wenn ihr mir ein Notiz des Weisen bringt!")
say("")
wait()
if pc.level >=75 and pc.count_item(70028)>=1 then
say("Ihr seid zumindest gross genug.")
say("Doch seid ihr auch Tapfer genug?")
say("Es gibt nur eine möglichkeit das festzustellen.")
timer("devil_jump_7", 6)
return
end
say("Ihr seid leider noch nicht ")
say("gross genug um weiter aufzusteigen")
say("Ebenfalls fehlt euch das gewünschte Item!")
say("Es wurde vom Stolzen Dämonenkönig gedroppt!")
say("")
return
end
when 20076.chat."Die Oberen Stockwerke" with pc.in_dungeon() and pc.get_map_index() >= 660000 and pc.get_map_index() < 670000 begin
say(""..mob_name(20074).."")
say("Möchtet ihr Weiter herauf")
say("und euer können weiterhin unter Beweis stellen?")
say("Ich jedenfalls bleibe hier!")
say("Aber ich kann euch auch nur Hinauf lassen,")
say("wenn ihr mir ein Notiz des Weisen bringt!")
say("")
wait()
if pc.level >=75 and pc.count_item(70028)>=1 then
say("Ihr seid zumindest gross genug.")
say("Doch seid ihr auch Tapfer genug?")
say("Es gibt nur eine möglichkeit das festzustellen.")
timer("devil_jump_7", 6)
return
end
say("Ihr seid leider noch nicht ")
say("gross genug um weiter aufzusteigen")
say("Ebenfalls fehlt euch das gewünschte Item!")
say("Es wurde vom Stolzen Dämonenkönig gedroppt!")
say("")
return
end
when devil_jump_7.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
-- Fall wahr Karte
game.drop_item(30302, 1)
d.clear_regen()
d.spawn_mob(20366, 639, 658)
d.notice("Bitte zieht die Karte auf Sa-Soe!")
else
-- Fall wahr Karte
game.drop_item(30301, 1)
end
end
when 20366.take with item.vnum == 30302 begin
-- An der 8th Floor
npc.purge()
item.remove()
timer("devil_jump_8", 6)
d.clear_regen()
end
--------------------------------------------
-- Von 8 F vor der Ankunft geben Sie die 9 F
--------------------------------------------
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)-- True Tilgung Dead Turm
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
-- Fall wahre Schl¡¼sel
game.drop_item(30304, 1)
else
-- Keys fiel
game.drop_item(30303, 1)
end
else
return
end
end
when 20366.take with item.vnum == 30304 begin
-- 9 F-Zeichen aufgehoben
npc.purge()
item.remove()
timer("devil_jump_9", 6)
end
---------------------------------------------
-- 9 F ein Ende, indem Sie
---------------------------------------------
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("devil_end_jump", 10)
d.notice("Glückwunsch!")
d.notice("Du hast den Sensenmann getötet!")
d.notice("Du gelangst nun in die Etage des Gemeinen Dämonenkönigs!")
end
when devil_end_jump.timer begin
d.setf("level", 7)
d.jump_all(2048+590, 6656+638)
d.clear_regen()
d.spawn_mob(1094, 639, 658)
end
when 1094.kill with pc.in_dungeon() and pc.get_map_index() >= 660000 and pc.get_map_index() < 670000 begin
d.notice("Glückwunsch!")
d.notice("Du hast den Gemeinen Dämonenkönig getötet!")
d.notice("Du gelangst nun in die Etage des Blauen Todes!")
d.kill_all()
timer("devil_end_jump_schmied", 10)
end
when devil_end_jump_schmied.timer begin
d.setf("level", 9)
d.jump_all(2048+590, 6656+155)
d.clear_regen()
d.spawn_mob(1095, 605, 178)
end
when 1095.kill with pc.in_dungeon() and pc.get_map_index() >= 660000 and pc.get_map_index() < 670000 begin
notice_all("".. pc.get_name() .." hat den Blauen Tod bezwungen!")
d.notice("Glückwunsch!")
d.notice("Du hast den Blauen Tod getötet!")
d.notice("Als belohnung spawnen nun alle 3 DT-Schmiede!")
d.check_eliminated()
local reward_alchemist = {20074, 20075, 20076}
d.spawn_mob(20074, 609, 179);
d.spawn_mob(20075, 609, 172);
d.spawn_mob(20076, 609, 185);
d.spawn_mob(9012, 619, 170);
d.setqf("can_refine", 1)
end
end
end
Mfg und Danke im vorraus
E: @ xxalbanxx3
PHP Code:
quest geldspeicher begin
state start begin
when 2.use begin
say_title("Geldspeicher")
say("")
say("Hiermit bekommst du ein Yangspeicher.")
say_reward("Falls du dein Geld loswerden willst")
say_reward("drücke dazu auf Ja.")
say_reward("Dieser Gegenstand ist auch handelbar!")
say("")
say_reward("Achtung: Rauchen ist tödlich!")
local s = select("Ja","Abbrechen")
if s == 1 then
say("Du bekommst den Speicher.")
pc.give_item2("80007", 1)
pc.changemoney(-100000000)
end
elseif s == 2 then
return
end
end
end
|
|
|
04/15/2011, 01:27
|
#1952
|
elite*gold: 238
Join Date: Sep 2009
Posts: 2,327
Received Thanks: 1,164
|
PHP Code:
quest mapname begin
state start begin
when 20092.chat."mapname" begin
if pc.level()<=49 then
say("Dein Level ist zu Niedrig")
say("um in Das Vergessene Reich")
say("zu gelangen! Du musst LvL 50 erreicht haben!")
say("")
//an dieser Stelle würde ich ein Ruturn einfügen...//
elseif pc.countitem("27994")<1 then //schreibt man Count_item nicht so??//
say_title("OT-Suras Frau")
say("")
say("Um in die MAPNAME")
say("zu gelangen benötigst du eine")
say("Rote Perle!")
say("Diese kannst du von")
say("aus den Muscheln droppen!")
say("")
setstate(need_item27994)
elseif pc.countitem("27994")>=1 and pc.level()>=50 then
say_title("OT-Suras Frau")
say("")
say("Du hast ja die Rote Perle,")
say("und LvL 50 erreicht!")
say("Das ist einfach unglaublich!")
say("Ich habe aber Angst,")
say("das dir etwas geschieht")
say("Naja..! Dein Pech!")
say("Soll ich dcih in die")
say("MAPNAME teleportieren?")
say("")
local b=select("Ja", "Nein")
if b==1 then
if pc.countitem("27994")>=1 then
pc.removeitem("27994", 1) and pc.warp(83200, 14400)
return
setstate(test)
end
elseif b==2 then
say_title("OT-Suras Frau")
say("")
say("Ist wahrscheinlich besser so")
say("")
return
end
end
end
end
end
PHP Code:
quest geldspeicher begin
state start begin
when 2.use begin
say_title("Geldspeicher")
say("")
say("Hiermit bekommst du ein Yangspeicher.")
say_reward("Falls du dein Geld loswerden willst")
say_reward("drücke dazu auf Ja.")
say_reward("Dieser Gegenstand ist auch handelbar!")
say("")
say_reward("Achtung: Rauchen ist tödlich!")
local s = select("Ja","Abbrechen")
if s == 1 then
say("Du bekommst den Speicher.")
pc.give_item2("80007", 1)
pc.changemoney(-100000000)
//* Hier würde ich noch hinzufügen dass wenn das Geld unter 1.000.000 steht der NPC sagt: "DU hast nicht genug Geld" und am Ende ein return folgt. *//
end
elseif s == 2 then
return
end
end
end
|
|
|
04/15/2011, 09:57
|
#1953
|
elite*gold: 25
Join Date: Jun 2010
Posts: 1,076
Received Thanks: 290
|
PHP Code:
quest kill_king begin
state start begin
when login or levelup or enter with pc.get_level() >= 70 begin
setstate( gotoguard )
end
when 20354.chat."Die Untoten" with pc.get_level() >=65 begin
say("Die Untoten :")
say("Bekämpfe die Plage der Untoten!")
say("Der Stadtwächter weis wie du")
say("sie bekämpfen kannst!")
say("")
end
end
state gotoguard begin
when letter begin
send_letter("Gehe zum Stadtwächter")
local v=find_npc_by_vnum(20354)
target.vid("__TARGET__", v, "Gehe zum Stadtwächter")
end
when info or button begin
say_title("Der Stadtwächter braucht dich!")
say("Gehe zum Stadtwächter er benötigt")
say("Deine Hilfe!")
say("")
end
when __TARGET__.target.click begin
target.delete("__TARGET__")
say("Stadtwächter:")
say("Die Untoten terrorisieren unser Land!")
say("Du musst die Plage vernichten!")
say("Du musst ihre Anführer die Stolzen Dämonenkönige vernichten!")
say("Sie sind stark!Also sei auf der Hut!")
say("Ziehe besser los-je eher du es erledigst,")
say("desto besser!")
say("")
say_reward("Belohnung für die Erfüllung der Aufgabe")
say_reward("1x Uppkiste" )
say("")
set_state( killking )
pc.setqf("state", 0)
q.set_counter("Stolze Dämonenkönige", 0)
end
end
state killking begin
when letter begin
send_letter("Töte Stolze Dämonenkönige")
end
when button or info begin
say_title("Töte 10 Stolze Dämonenkönige.")
say("Bis jetzt wurden 0 Stolze Dämonenkönige getötet.")
say("")
end
when 1092.kill begin
local count = pc.getqf("state") + 1
if count <= 10 then
pc.setqf("state", count)
q.set_counter("Stolze Dämonenkönige", 10 - count)
if count == 10 then
say_title("Aufgabe abgeschlossen")
say("Alle 10 Stolze Dämonenkönige wurden getöten. Kehre zum")
say("Stadtwächter zurück und kassiere deine Belohnung.")
set_state(gotoguard2)
end
end
end
when 20354.chat."Aufgabe abgeschlossen" with pc.getf("kill_king","state") < 10 begin
say("Information:")
say("Erstatte dem Stadtwächter Bericht!")
say("Los geh?")
say("")
end
when 20354.chat."sssssss" with pc.getf("kill_king","state") >= 10 begin
say("Stadtwächter:")
say("111111")
say("222222")
say("333333")
say("")
set_state(gotoguard2)
end
end
state gotoguard2 begin
when letter begin
local v=find_npc_by_vnum(20354)
if 0==v then
else
target.vid("__TARGET__", v, "Stadtwächter")
end
end
when letter begin
send_letter("Aufgabe abgeschlossen")
end
when button or info begin
say_title("Aufgabe abgeschlossen")
say("Stadtwächter zurück und erstatte im Bericht.")
end
when __TARGET__.target.click begin
target.delete("__TARGET__")
say("Stadtwächter:")
say("Du hast die Plage der Untoten eingedemmt")
say("Jetzt ist unser Land wieder sicher!")
say("Ich werde dich rufen lassen, sobald")
say("es eine weitere Aufgabe für dich gibt.")
say("")
say_reward("1x Uppkiste" )
pc.give_item2()
clear_letter()
set_state( __COMPLETE__ )
pc.setqf("state", 0)
end
end
state __COMPLETE__ begin
when 20354.chat."Die Untoten (Nochmal)" with pc.is_gm() begin
set_state( start )
end
end
end
Es funzt eig. alles Perfekt nur er zählt nich das ein
stolzer Dämonenkönig gekillt wurde.... ( ID :1092)
wenn ich statt 1092 Z.b. 102 einfüge dann funzt es
wieso ?
könnt mir vllt. jmd helfen ?
wär nett^^
thx im Voraus
|
|
|
04/15/2011, 10:43
|
#1954
|
elite*gold: 26
Join Date: Mar 2010
Posts: 3,765
Received Thanks: 2,661
|
Quote:
Originally Posted by amnesi
PHP Code:
quest kill_king begin state start begin when login or levelup or enter with pc.get_level() >= 70 begin setstate( gotoguard ) end when 20354.chat."Die Untoten" with pc.get_level() >=65 begin say("Die Untoten :") say("Bekämpfe die Plage der Untoten!") say("Der Stadtwächter weis wie du") say("sie bekämpfen kannst!") say("") end end state gotoguard begin when letter begin send_letter("Gehe zum Stadtwächter") local v=find_npc_by_vnum(20354) target.vid("__TARGET__", v, "Gehe zum Stadtwächter") end when info or button begin say_title("Der Stadtwächter braucht dich!") say("Gehe zum Stadtwächter er benötigt") say("Deine Hilfe!") say("") end when __TARGET__.target.click begin target.delete("__TARGET__") say("Stadtwächter:") say("Die Untoten terrorisieren unser Land!") say("Du musst die Plage vernichten!") say("Du musst ihre Anführer die Stolzen Dämonenkönige vernichten!") say("Sie sind stark!Also sei auf der Hut!") say("Ziehe besser los-je eher du es erledigst,") say("desto besser!") say("") say_reward("Belohnung für die Erfüllung der Aufgabe") say_reward("1x Uppkiste" ) say("") set_state( killking ) pc.setqf("state", 0) q.set_counter("Stolze Dämonenkönige", 0) end
end
state killking begin when letter begin send_letter("Töte Stolze Dämonenkönige") end when button or info begin say_title("Töte 10 Stolze Dämonenkönige.") say("Bis jetzt wurden 0 Stolze Dämonenkönige getötet.") say("") end when 1092.kill begin local count = pc.getqf("state") + 1
if count <= 10 then pc.setqf("state", count) q.set_counter("Stolze Dämonenkönige", 10 - count)
if count == 10 then say_title("Aufgabe abgeschlossen") say("Alle 10 Stolze Dämonenkönige wurden getöten. Kehre zum") say("Stadtwächter zurück und kassiere deine Belohnung.") set_state(gotoguard2) end end end when 20354.chat."Aufgabe abgeschlossen" with pc.getf("kill_king","state") < 10 begin say("Information:") say("Erstatte dem Stadtwächter Bericht!") say("Los geh?") say("") end when 20354.chat."sssssss" with pc.getf("kill_king","state") >= 10 begin say("Stadtwächter:") say("111111") say("222222") say("333333") say("") set_state(gotoguard2) end end state gotoguard2 begin when letter begin local v=find_npc_by_vnum(20354) if 0==v then else target.vid("__TARGET__", v, "Stadtwächter") end end when letter begin send_letter("Aufgabe abgeschlossen") end when button or info begin say_title("Aufgabe abgeschlossen") say("Stadtwächter zurück und erstatte im Bericht.") end when __TARGET__.target.click begin target.delete("__TARGET__")
say("Stadtwächter:") say("Du hast die Plage der Untoten eingedemmt") say("Jetzt ist unser Land wieder sicher!") say("Ich werde dich rufen lassen, sobald") say("es eine weitere Aufgabe für dich gibt.") say("") say_reward("1x Uppkiste" ) pc.give_item2() clear_letter() set_state( __COMPLETE__ )
pc.setqf("state", 0) end end state __COMPLETE__ begin when 20354.chat."Die Untoten (Nochmal)" with pc.is_gm() begin set_state( start ) end end end
Es funzt eig. alles Perfekt nur er zählt nich das ein
stolzer Dämonenkönig gekillt wurde.... ( ID :1092)
wenn ich statt 1092 Z.b. 102 einfüge dann funzt es
wieso ?
könnt mir vllt. jmd helfen ?
wär nett^^
thx im Voraus
|
liegt daran, dass der Kill befehl für den Mob 1092 schon im DT belegt ist, und zwar dauerhaft^^
Sprich die ganzen DT Mobs, also die Dämonenkönige, gemeineDämonenbogis, und Sensi ( evtl auch Blauer Tod) können nicht mehr benutzt werden, ohne dass DT bugt.
@ SuraKämpfer1
schon mal ne andere DT Quest probiert?
Oder trag die Quest mal aus der hongkong_list/locale_list aus, lad sie hoch und führ make.sh aus.
Dann trag die Quest wieder in die hongkong_list/locale_list ein, lad sie hoch und führ make.sh aus
|
|
|
04/15/2011, 10:52
|
#1955
|
elite*gold: 0
Join Date: Sep 2009
Posts: 425
Received Thanks: 45
|
PHP Code:
quest geldspeicher begin
state start begin
when 2.use begin
say_title("Geldspeicher")
say("")
say("Hiermit bekommst du ein Yangspeicher.")
say_reward("Falls du dein Geld loswerden willst")
say_reward("drücke dazu auf Ja.")
say_reward("Dieser Gegenstand ist auch handelbar!")
say("")
say_reward("Achtung: Rauchen ist tödlich!")
local s = select("Ja","Abbrechen")
if s == 1 then
say("Du bekommst den Speicher.")
pc.give_item2("80007", 1)
pc.changemoney(-100000000)
//* Hier würde ich noch hinzufügen dass wenn das Geld unter 1.000.000 steht der NPC sagt: "DU hast nicht genug Geld" und am Ende ein return folgt. *//
end
elseif s == 2 then
return
end
end
end
Mhm bei mir kommt irgendwie core dumped wenn ich das mache
|
|
|
04/15/2011, 10:55
|
#1956
|
elite*gold: 26
Join Date: Mar 2010
Posts: 3,765
Received Thanks: 2,661
|
try this
PHP Code:
quest geldspeicher begin state start begin when 2.use begin say_title("Geldspeicher") say("") say("Hiermit bekommst du ein Yangspeicher.") say_reward("Falls du dein Geld loswerden willst") say_reward("drücke dazu auf Ja.") say_reward("Dieser Gegenstand ist auch handelbar!") say("") say_reward("Achtung: Rauchen ist tödlich!") local s = select("Ja","Abbrechen") if s == 1 then if pc.get_money() < 100000000 then say("Du hast keine 100kk Yang.") say("Versuche es später nochmal.") return else say("Du bekommst den Speicher.") pc.give_item2(80007, 1) pc.changemoney(-100000000) end elseif s == 2 then return end end end end
|
|
|
04/15/2011, 11:06
|
#1957
|
elite*gold: 0
Join Date: Sep 2009
Posts: 425
Received Thanks: 45
|
Quote:
Originally Posted by Delta619
try this
PHP Code:
quest geldspeicher begin
state start begin
when 2.use begin
say_title("Geldspeicher")
say("")
say("Hiermit bekommst du ein Yangspeicher.")
say_reward("Falls du dein Geld loswerden willst")
say_reward("drücke dazu auf Ja.")
say_reward("Dieser Gegenstand ist auch handelbar!")
say("")
say_reward("Achtung: Rauchen ist tödlich!")
local s = select("Ja","Abbrechen")
if s == 1 then
if pc.get_money() < 100000000 then
say("Du hast keine 100kk Yang.")
say("Versuche es später nochmal.")
return
else
say("Du bekommst den Speicher.")
pc.give_item2(80007, 1)
pc.changemoney(-100000000)
end
elseif s == 2 then
return
end
end
end
end
|
Danke funzt zu 100% und Glückwunsch zu deinem bestandenen Abi.
|
|
|
04/15/2011, 14:12
|
#1958
|
elite*gold: 0
Join Date: Aug 2008
Posts: 4,585
Received Thanks: 1,695
|
Quote:
Originally Posted by Delta619
@ SuraKämpfer1
schon mal ne andere DT Quest probiert?
Oder trag die Quest mal aus der hongkong_list/locale_list aus, lad sie hoch und führ make.sh aus.
Dann trag die Quest wieder in die hongkong_list/locale_list ein, lad sie hoch und führ make.sh aus
|
Super  Jetzt geht die Quest nicht nur nicht, jetzt bekomme ich auch noch einen Core Fehler  DIeser lautet:
Quote:
|
syntax error : [string "start"]:2: unexpectet symbol near 'when' deviltower_zone.quest:479:Abort trap (core dumped)
|
Hier nochmal die Quest das du mal bitte schauen könntest wo es einen Core gibt
PHP Code:
quest deviltower_zone begin
state start begin
when login begin
if pc.get_map_index() == 66 then
-- Nicht in einer Etage, die wieder nach drau¡¼n .
-- Layer Range
-- 1F 88 577 236 737
-- 2F 91 343 238 504
-- 3F 104 107 248 269
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 deviltower_man.chat.locale.deviltower_man_chat begin
if pc.get_level() < 40 then
say(locale.deviltower_man_say_you_cant)
else
say(locale.deviltower_man_say)
local s = select(locale.deviltower_enter,locale.deviltower_no_enter)
if s == 1 then
-- warp into!
pc.warp(216500,727000)
end
end
end
when devil_stone1.kill begin
timer("devil_stone1_1", 6)
end
when devil_stone1_1.timer begin
local mapto7= pc.count_item(30302) -- Ich weiß nicht, das wahre Tilgung der die Existenz der Seele des Turms
pc.remove_item(30302,mapto7)
local boxto7= pc.count_item(30300) -- Beseitigung des unbekannten weiß nicht, ob es sich um ein Feld
pc.remove_item(30300,boxto7)
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)
-- Reproduzieren eine gro¡¼ Anzahl von Monstern und Herstellung von wahr und falsch Steine Steine
--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("Hier ist der 4. Etage,");
d.notice("findet den Echten Metinstein");
d.notice("innerhalb von 15 Minuten,");
d.notice("Sonst werdet ihr vor die Tür gesetzt.");
end
when devil_stone4_fail1.server_timer begin
if d.select(get_server_timer_arg()) then
d.notice("Noch 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("Noch 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.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("Ein falscher Metinstein verschwindet.");
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("Glückwunsch Euch ist es geglückt den Echten Metinstein");
d.notice("zu finden... Auf in die nächste Etage.")
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("Willkommen auf der 5.ten Etage")
d.notice("Tötet alle Monster denn manche Tragen den Schlüssel")
d.notice("für die nächste Etage mit sich")
d.notice("Öffnet alle Säulen mit hilfe der Schlüsselsteine (Ihr habt 20 Minuten Zeit)")
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())
-- 5. Stock, weiter zu reproduzieren
d.set_regen_file("data/dungeon/deviltower5_regen.txt")
-- 5. Stock, Seal Stone Reproduktion
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("Noch 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("Noch 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("Noch 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.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 = 50
--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
-- Falling Tasten
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("Glückwunsch ihr habt alle Säulen Geöffnet")
d.notice("Ihr werdet in die nächste Etage aufsteigen.")
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("Säule entfernt... Noch "..d.getf("stone_count").."Viel Glück")
end
end
when devil_stone6.kill begin
-- Geschickt, um eine Karte, wo die Verfeinerung St.
-- Ansonsten ¡¼fnen Sie ein neues Lian Sheng
--d.jump_all(special.devil_tower[6][1], special.devil_tower[6][2])
d.kill_all()
when 1092.kill with pc.in_dungeon() begin
game.drop_item(70028, 1)
-- d.set_warp_at_eliminate(3*60, 65, 5376+532, 512+596+4)
d.check_eliminated()
local reward_alchemist = {20074, 20075, 20076}
d.spawn_mob(reward_alchemist[number(1,3)], 425, 216);
d.setqf("can_refine", 1)
end
--------------------------------------
-- 7 D kommt man aus dem Zugriff vor dem 8. Stock
--------------------------------------
when 20074.chat."Die Oberen Stockwerke" with pc.in_dungeon() and pc.get_map_index() >= 660000 and pc.get_map_index() < 670000 begin
say(""..mob_name(20074).."")
say("Möchtet ihr Weiter herauf")
say("und euer können weiterhin unter Beweis stellen?")
say("Ich jedenfalls bleibe hier!")
say("Aber ich kann euch auch nur Hinauf lassen,")
say("wenn ihr mir ein Notiz des Weisen bringt!")
say("")
wait()
if pc.level >=75 and pc.count_item(70028)>=1 then
say("Ihr seid zumindest gross genug.")
say("Doch seid ihr auch Tapfer genug?")
say("Es gibt nur eine möglichkeit das festzustellen.")
timer("devil_jump_7", 6)
return
end
say("Ihr seid leider noch nicht ")
say("gross genug um weiter aufzusteigen")
say("Ebenfalls fehlt euch das gewünschte Item!")
say("Es wurde vom Stolzen Dämonenkönig gedroppt!")
say("")
return
end
when 20075.chat."Die Oberen Stockwerke" with pc.in_dungeon() and pc.get_map_index() >= 660000 and pc.get_map_index() < 670000 begin
say(""..mob_name(20074).."")
say("Möchtet ihr Weiter herauf")
say("und euer können weiterhin unter Beweis stellen?")
say("Ich jedenfalls bleibe hier!")
say("Aber ich kann euch auch nur Hinauf lassen,")
say("wenn ihr mir ein Notiz des Weisen bringt!")
say("")
wait()
if pc.level >=75 and pc.count_item(70028)>=1 then
say("Ihr seid zumindest gross genug.")
say("Doch seid ihr auch Tapfer genug?")
say("Es gibt nur eine möglichkeit das festzustellen.")
timer("devil_jump_7", 6)
return
end
say("Ihr seid leider noch nicht ")
say("gross genug um weiter aufzusteigen")
say("Ebenfalls fehlt euch das gewünschte Item!")
say("Es wurde vom Stolzen Dämonenkönig gedroppt!")
say("")
return
end
when 20076.chat."Die Oberen Stockwerke" with pc.in_dungeon() and pc.get_map_index() >= 660000 and pc.get_map_index() < 670000 begin
say(""..mob_name(20074).."")
say("Möchtet ihr Weiter herauf")
say("und euer können weiterhin unter Beweis stellen?")
say("Ich jedenfalls bleibe hier!")
say("Aber ich kann euch auch nur Hinauf lassen,")
say("wenn ihr mir ein Notiz des Weisen bringt!")
say("")
wait()
if pc.level >=75 and pc.count_item(70028)>=1 then
say("Ihr seid zumindest gross genug.")
say("Doch seid ihr auch Tapfer genug?")
say("Es gibt nur eine möglichkeit das festzustellen.")
timer("devil_jump_7", 6)
return
end
say("Ihr seid leider noch nicht ")
say("gross genug um weiter aufzusteigen")
say("Ebenfalls fehlt euch das gewünschte Item!")
say("Es wurde vom Stolzen Dämonenkönig gedroppt!")
say("")
return
end
when devil_jump_7.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
-- Fall wahr Karte
game.drop_item(30302, 1)
d.clear_regen()
d.spawn_mob(20366, 639, 658)
d.notice("Bitte zieht die Karte auf Sa-Soe!")
else
-- Fall wahr Karte
game.drop_item(30301, 1)
end
end
when 20366.take with item.vnum == 30302 begin
-- An der 8th Floor
npc.purge()
item.remove()
timer("devil_jump_8", 6)
d.clear_regen()
end
--------------------------------------------
-- Von 8 F vor der Ankunft geben Sie die 9 F
--------------------------------------------
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)-- True Tilgung Dead Turm
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
-- Fall wahre Schl¡¼sel
game.drop_item(30304, 1)
else
-- Keys fiel
game.drop_item(30303, 1)
end
else
return
end
end
when 20366.take with item.vnum == 30304 begin
-- 9 F-Zeichen aufgehoben
npc.purge()
item.remove()
timer("devil_jump_9", 6)
end
---------------------------------------------
-- 9 F ein Ende, indem Sie
---------------------------------------------
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("devil_end_jump", 10)
d.notice("Glückwunsch!!!")
d.notice("Du hast den Sensenmann getötet!!!")
d.notice("Du gelangst nun in die Etage des Gemeinen Dämonenkönigs!!!")
end
when devil_end_jump.timer begin
d.setf("level", 7)
d.jump_all(2048+590, 6656+638)
d.clear_regen()
d.spawn_mob(1094, 639, 658)
end
when 1094.kill with pc.in_dungeon() and pc.get_map_index() >= 660000 and pc.get_map_index() < 670000 begin
d.notice("Glückwunsch!!!")
d.notice("Du hast den Gemeinen Dämonenkönig getötet!!!")
d.notice("Du gelangst nun in die Etage des Blauen Todes!!!")
d.kill_all()
timer("devil_end_jump_schmied", 10)
end
when devil_end_jump_schmied.timer begin
d.setf("level", 9)
d.jump_all(2048+590, 6656+155)
d.clear_regen()
d.spawn_mob(1095, 605, 178)
end
when 1095.kill with pc.in_dungeon() and pc.get_map_index() >= 660000 and pc.get_map_index() < 670000 begin
notice_all("".. pc.get_name() .." hat den Blauen Tod bezwungen!!!")
notice_all("Wir sind alle soo stolz XDDD")
d.notice("Glückwunsch!!!")
d.notice("Du hast den Blauen Tod getötet!!!")
d.notice("Als belohnung spawnen nun alle 3 Dt-Schmiede!!!")
d.check_eliminated()
local reward_alchemist = {20074, 20075, 20076}
d.spawn_mob(20074, 609, 179);
d.spawn_mob(20075, 609, 172);
d.spawn_mob(20076, 609, 185);
d.spawn_mob(9012, 619, 170);
d.setqf("can_refine", 1)
end
end
end
Achja, ich habe das auf einer Funktionierenden Quest aufgebaut, bei welcher der Dämonenturmwächter funzte, da ich nichts an dem Geändert habe, wird der jetzt wohl auch noch Funktionieren.
Mfg und Danke
E: Von mir auch noch Glückwunsch zum bestandenen Abi
|
|
|
04/15/2011, 15:13
|
#1959
|
elite*gold: 26
Join Date: Mar 2010
Posts: 3,765
Received Thanks: 2,661
|
probiers so, hab ein end eingefügt
PHP Code:
quest deviltower_zone begin state start begin when login begin if pc.get_map_index() == 66 then -- Nicht in einer Etage, die wieder nach drau¡¼n . -- Layer Range -- 1F 88 577 236 737 -- 2F 91 343 238 504 -- 3F 104 107 248 269 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 deviltower_man.chat.locale.deviltower_man_chat begin if pc.get_level() < 40 then say(locale.deviltower_man_say_you_cant) else say(locale.deviltower_man_say) local s = select(locale.deviltower_enter,locale.deviltower_no_enter) if s == 1 then -- warp into! pc.warp(216500,727000) end end end when devil_stone1.kill begin timer("devil_stone1_1", 6) end when devil_stone1_1.timer begin local mapto7= pc.count_item(30302) -- Ich weiß nicht, das wahre Tilgung der die Existenz der Seele des Turms pc.remove_item(30302,mapto7)
local boxto7= pc.count_item(30300) -- Beseitigung des unbekannten weiß nicht, ob es sich um ein Feld pc.remove_item(30300,boxto7)
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) -- Reproduzieren eine gro¡¼ Anzahl von Monstern und Herstellung von wahr und falsch Steine Steine --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("Hier ist der 4. Etage,"); d.notice("findet den Echten Metinstein"); d.notice("innerhalb von 15 Minuten,"); d.notice("Sonst werdet ihr vor die Tür gesetzt."); end
when devil_stone4_fail1.server_timer begin if d.select(get_server_timer_arg()) then d.notice("Noch 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("Noch 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.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("Ein falscher Metinstein verschwindet."); 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("Glückwunsch Euch ist es geglückt den Echten Metinstein"); d.notice("zu finden... Auf in die nächste Etage.") 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("Willkommen auf der 5.ten Etage") d.notice("Tötet alle Monster denn manche Tragen den Schlüssel") d.notice("für die nächste Etage mit sich") d.notice("Öffnet alle Säulen mit hilfe der Schlüsselsteine (Ihr habt 20 Minuten Zeit)") 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())
-- 5. Stock, weiter zu reproduzieren d.set_regen_file("data/dungeon/deviltower5_regen.txt")
-- 5. Stock, Seal Stone Reproduktion 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("Noch 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("Noch 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("Noch 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.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 = 50 --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 -- Falling Tasten 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("Glückwunsch ihr habt alle Säulen Geöffnet") d.notice("Ihr werdet in die nächste Etage aufsteigen.") 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("Säule entfernt... Noch "..d.getf("stone_count").."Viel Glück") end end
when devil_stone6.kill begin -- Geschickt, um eine Karte, wo die Verfeinerung St. -- Ansonsten ¡¼fnen Sie ein neues Lian Sheng --d.jump_all(special.devil_tower[6][1], special.devil_tower[6][2]) d.kill_all() end when 1092.kill with pc.in_dungeon() begin game.drop_item(70028, 1) -- d.set_warp_at_eliminate(3*60, 65, 5376+532, 512+596+4) d.check_eliminated() local reward_alchemist = {20074, 20075, 20076} d.spawn_mob(reward_alchemist[number(1,3)], 425, 216); d.setqf("can_refine", 1) end
-------------------------------------- -- 7 D kommt man aus dem Zugriff vor dem 8. Stock --------------------------------------
when 20074.chat."Die Oberen Stockwerke" with pc.in_dungeon() and pc.get_map_index() >= 660000 and pc.get_map_index() < 670000 begin say(""..mob_name(20074).."") say("Möchtet ihr Weiter herauf") say("und euer können weiterhin unter Beweis stellen?") say("Ich jedenfalls bleibe hier!") say("Aber ich kann euch auch nur Hinauf lassen,") say("wenn ihr mir ein Notiz des Weisen bringt!") say("") wait() if pc.level >=75 and pc.count_item(70028)>=1 then say("Ihr seid zumindest gross genug.") say("Doch seid ihr auch Tapfer genug?") say("Es gibt nur eine möglichkeit das festzustellen.") timer("devil_jump_7", 6) return end say("Ihr seid leider noch nicht ") say("gross genug um weiter aufzusteigen") say("Ebenfalls fehlt euch das gewünschte Item!") say("Es wurde vom Stolzen Dämonenkönig gedroppt!") say("") return end when 20075.chat."Die Oberen Stockwerke" with pc.in_dungeon() and pc.get_map_index() >= 660000 and pc.get_map_index() < 670000 begin say(""..mob_name(20074).."") say("Möchtet ihr Weiter herauf") say("und euer können weiterhin unter Beweis stellen?") say("Ich jedenfalls bleibe hier!") say("Aber ich kann euch auch nur Hinauf lassen,") say("wenn ihr mir ein Notiz des Weisen bringt!") say("") wait() if pc.level >=75 and pc.count_item(70028)>=1 then say("Ihr seid zumindest gross genug.") say("Doch seid ihr auch Tapfer genug?") say("Es gibt nur eine möglichkeit das festzustellen.") timer("devil_jump_7", 6) return end say("Ihr seid leider noch nicht ") say("gross genug um weiter aufzusteigen") say("Ebenfalls fehlt euch das gewünschte Item!") say("Es wurde vom Stolzen Dämonenkönig gedroppt!") say("") return end when 20076.chat."Die Oberen Stockwerke" with pc.in_dungeon() and pc.get_map_index() >= 660000 and pc.get_map_index() < 670000 begin say(""..mob_name(20074).."") say("Möchtet ihr Weiter herauf") say("und euer können weiterhin unter Beweis stellen?") say("Ich jedenfalls bleibe hier!") say("Aber ich kann euch auch nur Hinauf lassen,") say("wenn ihr mir ein Notiz des Weisen bringt!") say("") wait() if pc.level >=75 and pc.count_item(70028)>=1 then say("Ihr seid zumindest gross genug.") say("Doch seid ihr auch Tapfer genug?") say("Es gibt nur eine möglichkeit das festzustellen.") timer("devil_jump_7", 6) return end say("Ihr seid leider noch nicht ") say("gross genug um weiter aufzusteigen") say("Ebenfalls fehlt euch das gewünschte Item!") say("Es wurde vom Stolzen Dämonenkönig gedroppt!") say("") return end
when devil_jump_7.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 -- Fall wahr Karte game.drop_item(30302, 1) d.clear_regen() d.spawn_mob(20366, 639, 658) d.notice("Bitte zieht die Karte auf Sa-Soe!") else -- Fall wahr Karte game.drop_item(30301, 1) end end
when 20366.take with item.vnum == 30302 begin -- An der 8th Floor npc.purge() item.remove() timer("devil_jump_8", 6) d.clear_regen() end -------------------------------------------- -- Von 8 F vor der Ankunft geben Sie die 9 F -------------------------------------------- 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)-- True Tilgung Dead Turm 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 -- Fall wahre Schl¡¼sel game.drop_item(30304, 1) else -- Keys fiel game.drop_item(30303, 1) end else return end end
when 20366.take with item.vnum == 30304 begin -- 9 F-Zeichen aufgehoben npc.purge() item.remove() timer("devil_jump_9", 6) end
--------------------------------------------- -- 9 F ein Ende, indem Sie --------------------------------------------- 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("devil_end_jump", 10) d.notice("Glückwunsch!!!") d.notice("Du hast den Sensenmann getötet!!!") d.notice("Du gelangst nun in die Etage des Gemeinen Dämonenkönigs!!!") end
when devil_end_jump.timer begin d.setf("level", 7) d.jump_all(2048+590, 6656+638) d.clear_regen() d.spawn_mob(1094, 639, 658) end when 1094.kill with pc.in_dungeon() and pc.get_map_index() >= 660000 and pc.get_map_index() < 670000 begin d.notice("Glückwunsch!!!") d.notice("Du hast den Gemeinen Dämonenkönig getötet!!!") d.notice("Du gelangst nun in die Etage des Blauen Todes!!!") d.kill_all() timer("devil_end_jump_schmied", 10) end
when devil_end_jump_schmied.timer begin d.setf("level", 9) d.jump_all(2048+590, 6656+155) d.clear_regen() d.spawn_mob(1095, 605, 178) end when 1095.kill with pc.in_dungeon() and pc.get_map_index() >= 660000 and pc.get_map_index() < 670000 begin notice_all("".. pc.get_name() .." hat den Blauen Tod bezwungen!!!") notice_all("Wir sind alle soo stolz XDDD") d.notice("Glückwunsch!!!") d.notice("Du hast den Blauen Tod getötet!!!") d.notice("Als belohnung spawnen nun alle 3 Dt-Schmiede!!!") d.check_eliminated() local reward_alchemist = {20074, 20075, 20076} d.spawn_mob(20074, 609, 179); d.spawn_mob(20075, 609, 172); d.spawn_mob(20076, 609, 185); d.spawn_mob(9012, 619, 170); d.setqf("can_refine", 1) end end end
|
|
|
04/15/2011, 16:41
|
#1960
|
elite*gold: 0
Join Date: Mar 2011
Posts: 57
Received Thanks: 43
|
Was ist hier falsch? Ich kann sie nicht ingame öffnen?
Code:
quest gmmap3 begin
state start begin
when login or levelup with pc.level >0 begin
set_state(gmmap3)
end
end
state gmmap3 begin
when 20359.chat."Schlangen-Map" begin
say(""..mob_name(20359)..":")
say("")
say("Sei gegrüßt!")
say("Du möchstest also in die Schlangen-Map?")
say("Ich kann dich gerne hinbringen.")
say("")
say("Moechtest du in die Schlangen-Map?")
say("")
local a= select("Ja","Nein")
if 1==a then
say(""..mob_name(20359)..":")
say("")
say("Ok.")
say("Ich wünsche dir viel Spaß. Euer [Team]")
wait()
pc.warp(8400, 7200)
return
end
say(""..mob_name(20359)..":")
say("")
say("Naja ok.")
say("Dann bleib erst einmal hier.")
say("Quest bearbeitbar in der gmmap3.quest.")
end
end
end
Ich hoffe ihr könnt mir helfen... Wenns geht auch bitte den Fehler erklären,danke.
|
|
|
04/15/2011, 16:51
|
#1961
|
elite*gold: 26
Join Date: Mar 2010
Posts: 3,765
Received Thanks: 2,661
|
versuchs, nur ich denke dein warp wird mit den koors nicht funktionieren
PHP Code:
quest gmmap3 begin state start begin when 20359.chat."Schlangen-Map" begin say(""..mob_name(20359)..":") say("") say("Sei gegrüßt!") say("Du möchstest also in die Schlangen-Map?") say("Ich kann dich gerne hinbringen.") say("") say("Moechtest du in die Schlangen-Map?") say("") local a= select("Ja","Nein") if a == 1 then say(""..mob_name(20359)..":") say("") say("Ok.") say("Ich wünsche dir viel Spaß. Euer [Team]") wait() pc.warp(8400, 7200) elseif a == 2 then say(""..mob_name(20359)..":") say("") say("Naja ok.") say("Dann bleib erst einmal hier.") say("Quest bearbeitbar in der gmmap3.quest.") return end end end end
|
|
|
04/15/2011, 16:55
|
#1962
|
elite*gold: 0
Join Date: Mar 2011
Posts: 57
Received Thanks: 43
|
Quote:
Originally Posted by Delta619
versuchs, nur ich denke dein warp wird mit den koors nicht funktionieren
PHP Code:
quest gmmap3 begin
state start begin
when 20359.chat."Schlangen-Map" begin
say(""..mob_name(20359)..":")
say("")
say("Sei gegrüßt!")
say("Du möchstest also in die Schlangen-Map?")
say("Ich kann dich gerne hinbringen.")
say("")
say("Moechtest du in die Schlangen-Map?")
say("")
local a= select("Ja","Nein")
if a == 1 then
say(""..mob_name(20359)..":")
say("")
say("Ok.")
say("Ich wünsche dir viel Spaß. Euer [Team]")
wait()
pc.warp(8400, 7200)
elseif a == 2 then
say(""..mob_name(20359)..":")
say("")
say("Naja ok.")
say("Dann bleib erst einmal hier.")
say("Quest bearbeitbar in der gmmap3.quest.")
return
end
end
end
end
|
Wieso nicht? Was sind denn die richtigen Koords? Und wo findet man die dann?
|
|
|
04/15/2011, 16:57
|
#1963
|
elite*gold: 26
Join Date: Mar 2010
Posts: 3,765
Received Thanks: 2,661
|
naja was hast du für koords genommen? einfach nur die, die in der minimap angezeigt werden?
mach ingame mal
die Koords musst du nehmen, natürlich noch 00 dranhängen.
Du kannst es gerne mit deinen Koords probieren^^
|
|
|
04/15/2011, 18:52
|
#1964
|
elite*gold: 14
Join Date: Feb 2011
Posts: 1,450
Received Thanks: 1,044
|
Hallo Leute ich hab eine Quest gemacht welche ALLE Biobelohnungen gibt, wenn man ein Item anklickt
Hier die Quest
Quote:
quest biotest begin
state start begin
when 70001.use begin
affect.add_collect(apply.MOV_SPEED, 10, 60*60*24*365*60)
affect.add_collect(apply.ATT_SPEED,6,60*60*24*365* 60)
affect.add_collect_point(POINT_ATT_BONUS,10,60*60* 24*365*60)
affect.add_collect(apply.MOV_SPEED,11,60*60*24*365 *60)
affect.add_collect_point(POINT_DEF_BONUS,10,60*60* 24*365*60)
affect.add_collect(apply.ATT_GRADE_BONUS,50,60*60* 24*365*60)
affect.add_collect(apply.DEF_GRADE_BONUS,60,60*60* 24*365*60)
pc.remove_item(70001, 1)
end
end
end
|
Geht leider nicht
mfg
Zander
|
|
|
04/15/2011, 22:14
|
#1965
|
elite*gold: 0
Join Date: Oct 2010
Posts: 385
Received Thanks: 175
|
Hallo zusammen,
ich habe mir vor ein paar tagen eine Quest geschrieben die aber meinen Testserver gedumbed hat.
Nun wollte ich euch fragen ob ihr mir dabei helfen könnt meine quest richtig zu schreiben damit sie funktioniert und meinen Server nicht schrottet.
PHP Code:
quest main_quest_lv90 begin
state start begin
end
state run begin
when login or levelup or enter with pc.get_level() >= 90 begin
setstate( gotobiologe )
end
when 20084.chat."Die aufgabe vom Biologen" with pc.get_level() < 90 begin
say("Die aufgabe vom Biologen:")
say("Ich und mein freund Uriel waren auf Reisen")
say("Als wir an den Ruinen angekommen sind")
say("sahen wir ein Biest größer als alles was man sich vorstellen kann")
say("Wir sind so schnell gerannt wie wir konnten")
say("")
end
end
state gototeacher begin
when letter begin
send_letter("Die aufgabe vom Biologen")
local v=find_npc_by_vnum(20084)
if 0==v then
else
target.vid("__TARGET__", v, "Die aufgabe vom Biologen")
end
end
when button or info begin
say_title("Die aufgabe vom Biologen")
say("Begieb dich zum Biologen")
say("Damit er dir die erste aufgabe Erläutern kann")
say("")
end
when __TARGET__.target.click begin
target.delete("__TARGET__")
say_title("Die aufgabe vom Biologen")
say("")
say("Biologe:")
--- l
say("Dir mangelt es noch immer an Disziplin.")
say("Anscheinend hast du aber immerhin gelernt, wie")
say("du mit deiner Waffe umzugehen hast. Glaubst du")
say("wirklich, dass du so weit bist, es mit Monstern")
say("aufzunehmen?")
say("Verlasse das Dorf und Töte Das biest in den Ruinen,dann")
say("komme zu mir zurück und erhalte deine")
say("Belohnung.")
say("")
wait()
say("Biologe:")
say("Sei auf der hut, das Biest ist mächtig")
say("Wenn du diese Aufgabe")
say("nicht erledigst, wirst du in dieser Gegend nicht")
say("überleben können!")
say("Ziehe besser los-je eher du es erledigst,")
say("desto besser!")
say("")
say_reward("Belohnung für die Erfüllung der Aufgabe")
say_reward("Erfahrungspunkte 743730000" )
say_reward("Yang 100.000.000")
say_reward("Gegenstand Segnen Menge:5" )
say("")
set_state( killdragon )
pc.setqf("state", 0)
q.set_counter("Roter Drache", 0)
end
end
state killdragon begin
when letter begin
send_letter("Die macht der Ruine")
end
when button or info begin
say_title("Töte den Roten Drachen.")
say("Du hast bis jetzt den Roten Drachen nicht getötet")
say("")
say_reward( "Töte ihn und komm zurück.".." "..pc.getqf("state").."°¦")
say("")
end
when 2291.kill begin
local count = pc.getqf("state") + 1
if count <= 10 then
pc.setqf("state", count)
q.set_counter("Roter Drache", 1 - count)
if count == 1 then
say_title("Glückwunsch du hast den")
say("Roten Drachen besiegt. Kehre zum")
say("Biologen zurück und erstatte im Bericht.")
set_state(gotobiologen2)
end
end
end
when 20084.chat."Aufgabe abgeschlossen" with pc.getf("main_quest_lv90","state") < 90 begin
say("Information:")
say("Bringe dem Biologen den Bericht")
say("Los geh?")
say("")
if pc.is_gm() then
wait()
say("Mission Abbrechen:")
say("Wenn du diese willst Drücke die Button")
local s = select("Ja", "Nein")
if s == 1 then
set_state(gotobiologe2)
end
end
end
when 20084.chat."sssssss" with pc.getf("main_quest_lv90","state") >= 90 begin
say("Stadtwächter:")
say("111111")
say("222222")
say("333333")
say("")
set_state(gotobiologe2)
end
end
state gotobiologe2 begin
when letter begin
local v=find_npc_by_vnum(20084)
if 0==v then
else
target.vid("__TARGET__", v, "Biologe")
end
end
when letter begin
send_letter("Auftrag abgeschlossen")
end
when button or info begin
say_title("Auftrag abgeschlossen")
say("Geh zum Biologen zurück und erstatte im Bericht.")
end
when __TARGET__.target.click begin
target.delete("__TARGET__")
say("Biologe:")
say("Du bist besser, als ich erwartet habe! aber das")
say("hätte jeder erledigen können, ha ha! Zu meiner")
say("Sei auf die nächste aufgabe gefasst")
say("Hier, du hast dir")
say("was schönes verdient, mit denen")
say("du deine Ausrüstung verbessern kannst. Ich werde")
say("dich rufen lassen, sobald es eine weitere")
say("Aufgabe für dich gibt.")
say("")
say_reward("Erfahrungspunkte: 743730000" )
say_reward("Yang: 100.000.000")
say_reward("Gegenstand: Gegenstand Segnen Menge:5" )
pc.give_exp2( 743730000 )
set_quest_state("levelup","run")
pc.change_money( 100000000 )
pc.give_item2( 71052 ,5 )
clear_letter()
set_state( __COMPLETE__ )
pc.setqf("state", 0) --¡V ¦pªG¦A³]©w¥ô°ÈÅܼƪº¸Ü, DB *t²ü¥i¥H¤U*°.
end
end
state __COMPLETE__ begin
end
end
Wäre euch sehr dankbar.
Mfg :P
|
|
|
All times are GMT +1. The time now is 06:10.
|
|