Dämonenturm Quest

02/19/2012 16:47 RealMadrid94rk#1
Hat jemand eine funktionstüchtige Dämonenturm Quest?
02/19/2012 16:52 .iXream.#2
Teleport Quest:
PHP Code:
quest teleport_damonenturm begin
    state start begin    
    when 20348.chat
."Dämonenturm" begin
        say
(""..mob_name(20348).."")
        
say("Willkommen junger Krieger im Dämonenturm")
        
say("Hier erwarten dich spannende Run´s.")
        
say_red("Du wirst nun in den Dämonenturm teleportiert")
        
pc.warp (216500,727000
        
set_quest_state(deviltower_zone,start)
        
end
    end
end 



Dämonenturm quest:
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)*10065)
        
end
        pc
.set_warp_location(655376+532512+596+4)
        elseif 
pc.get_map_index() >= 660000 and pc.get_map_index() < 670000 then
        pc
.set_warp_location(655376+532512+596+4)
        
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ß nichtdas wahre Tilgung der die Existenz der Seele des Turms 
        pc
.remove_item(30302,mapto7)

        
local boxto7pc.count_item(30300)  -- Beseitigung des unbekannten weiß nichtob es sich um ein Feld 
        pc
.remove_item(30300,boxto7)

        
d.new_jump_all(66special.devil_tower[1][1], special.devil_tower[1][2])
        
d.regen_file("data/dungeon/deviltower2_regen.txt")
        
d.set_warp_at_eliminate(4d.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(6d.get_map_index(), 100100)
        --
d.set_warp_at_eliminate(4655376+532512+596+4)
        
d.set_warp_at_eliminate(4d.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 = {
        {
368629},
        {
419630},
        {
428653},
        {
422679},
        {
395689},
        {
369679},
        {
361658},
        }
        for 
1do
        
local j number(i7)
        if 
!= j then
            local t 
positions[i];
            
positions[i] = positions[j];
            
positions[j] = t;
        
end
        end
        
--for 1do
    --    
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 
1do
        
chat(positions[i][1], positions[i][2])
        
d.set_unique("fake" .. d.spawn_mob(8017positions[i][1], positions[i][2]))
        
end
        chat
(positions[7][1], positions[7][2])
        
local vid d.spawn_mob(8017positions[7][1], positions[7][2])
        
chat(vid)
        
d.set_unique("real"vid)
        
server_loop_timer('devil_stone4_update'10pc.get_map_index())
        
server_timer('devil_stone4_fail1'5*60pc.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*60get_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*60get_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 1do
            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" .. i1)
                
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"5get_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'1get_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*60get_server_timer_arg())
        
clear_server_timer('devil_stone4_update'get_server_timer_arg())

        -- 
5. Stockweiter zu reproduzieren 
        d
.set_regen_file("data/dungeon/deviltower5_regen.txt")

        -- 
5. StockSeal Stone Reproduktion 
        d
.spawn_mob(20073421452)
        
d.spawn_mob(20073380460)
        
d.spawn_mob(20073428414)
        
d.spawn_mob(20073398392)
        
d.spawn_mob(20073359426)
        
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*60get_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*60get_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*60get_server_timer_arg())
        
end
    end

    when devil_stone5_fail
.server_timer begin
        
if d.select(get_server_timer_arg()) then
        
if d.getf("level") == 5 then
        d
.notice("Die Zeit ist abgelaufen.")
        
d.exit_all()
        
end
        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 
35
        
--if is_test_server() then
        
--KILL_COUNT_FOR_DROP_KEY 1
        
--end
        local n 
=d.getf("count") + 1
        d
.setf("count"n
        if 
>= KILL_COUNT_FOR_DROP_KEY then
        
-- Falling Tasten 
        game
.drop_item(500841)
        
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
        
-- Geschicktum eine Kartewo 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()
       -- 
d.set_warp_at_eliminate(3*60655376+532512+596+4)
        
d.check_eliminated()
        
local reward_alchemist = {200742007520076}
        
d.spawn_mob(reward_alchemist[number(1,3)], 425216);
        
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 herrauf")
        
say("und euer können weiterhin unter Beweiss stellen?")
        
say("Ich jedenfalls bleibe hier")
        
say("")
        
wait()
        if 
pc.level >=75 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("Übt noch ein wenig und kommt dann wieder.")
        
say("Viel Glück auf eurer Reise.")
        
say("")
        
wait()
        
pc.warp(590500110500)
        return
    
end
    when 20075.chat
."Mit Bezug auf den oberen Turm .." with pc.in_dungeon() and pc.get_map_index() >= 660000 and pc.get_map_index() < 670000 begin
        say
(""..mob_name(20075).."")
        
say("Möchtet ihr Weiter herrauf")
        
say("und euer können weiterhin unter Beweiss stellen?")
        
say("Ich jedenfalls bleibe hier")
        
say("")
        
wait()
        if 
pc.level >=75 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("Übt noch ein wenig und kommt dann wieder.")
        
say("Viel Glück auf eurer Reise.")
        
say("")
        
wait()
        
pc.warp(590500110500)
        return
    
end
    when 20076.chat
."Mit Bezug auf den oberen Turm .." with pc.in_dungeon() and pc.get_map_index() >= 660000 and pc.get_map_index() < 670000 begin
        say
(""..mob_name(20076).."")
        
say("Möchtet ihr Weiter herrauf")
        
say("und euer können weiterhin unter Beweiss stellen?")
        
say("Ich jedenfalls bleibe hier")
        
say("")
        
wait()
        if 
pc.level >=75 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("Übt noch ein wenig und kommt dann wieder.")
        
say("Viel Glück auf eurer Reise.")
        
say("")
        
wait()
        
pc.warp(590500110500)
        return
    
end

   when devil_jump_7
.timer begin
        d
.clear_regen()

        
d.spawn_mob(8018639658)
        
d.spawn_mob(8018611637)
        
d.spawn_mob(8018596674)
        
d.spawn_mob(8018629670)

        
d.setf("level"7)

        
d.jump_all(2048+5906656+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(303001)
    
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(303021)
            
d.clear_regen()
        else
            -- 
Fall wahr Karte
            game
.drop_item(303011)
            
        
end
    end

    when 30302.
use with pc.in_dungeon() and pc.get_map_index() >= 660000 and pc.get_map_index() < 670000 begin
        
-- An der 8th Floor 
        say
("Du wirst in die Zin Grotte teleportiert. Viel Glück.")
        
pc.remove_item("30302"1)
        
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+5906656+403)
        
d.set_regen_file("data/dungeon/deviltower8_regen.txt")
        
d.spawn_mob(20366640460)
        
local _countpc.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(15)
        if 
pct1 == 1 then
            local pct2 
number(110)
            if 
pct2 == 1 then
                
-- Fall wahre Schl¡¼sel 
                game
.drop_item(303041)
            else
                -- 
Keys fiel 
                game
.drop_item(303031)
            
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 Endeindem Sie 
    
---------------------------------------------
    
when devil_jump_9.timer begin
        d
.setf("level"9)
        
d.jump_all(2048+5906656+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+5906656+638)
        
d.clear_regen()
        
d.spawn_mob(1094639658)
    
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+5916657+156)
        
d.clear_regen()
        
d.spawn_mob(1095605178)
    
end
    
    when 1095.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 Blauen Tod getötet!!!")
        
d.notice("Als belohnung spawnen nun alle 3 Dt-Schmiede!!!")
        
d.check_eliminated()
        
d.spawn_mob(9012619170);
    
end
end
end 
10/09/2013 11:38 LordJused#3
da kann ich net teln sry da stimmt was bei dir net :/
10/09/2013 20:47 Zevion#4
Quote:
Originally Posted by LordJused View Post
da kann ich net teln sry da stimmt was bei dir net :/
Bitte keine alten Threads hochpushen.
Zudem kann man auch diesen Sammelthread benutzen, um seine Quest individuell erstellen zu lassen.
-> [Only registered and activated users can see links. Click Here To Register...]

#closerequest