drachenraum quest

07/03/2017 22:20 Kiyoshi2#1
kann mir einer helfen das ein user nur jede stunde den raum betretten darf

PHP Code:
----------------------------------------------------
--
Tempel des Drachen
----------------------------------------------------
quest Tempel_of_dragon begin
state start begin
        
        when 30121.chat
."Tempel des Drachen" with pc.get_map_index() == 73 begin
        
if get_time() > game.get_event_flag("Grotte_time") then
        game
.set_event_flag("Grotte_zugang",0)
        
end
        
if pc.is_gm() or pc.count_item(80041) >= 1 then
        say_title
(""..mob_name(30121).."")
        
say("")
        
say("Hallo Gamemaster, "..pc.get_name().."")
        
say("Ich lasse dich auch ohne die Schlüssel und")
        
say("das Passwort passieren.")
        
wait()
        
pc.warp(843200, 1066900)
        return
        
end
        
if game.get_event_flag("Grotte_zugang") == 0 and pc.count_item(30179) < 3 then
        say_title
(""..mob_name(30121).."")
        
say("")
        
say("Dir fehlen "..item_name(30179).."")
        
say_item_vnum(30179)
        
say("Komme wieder wenn du 3 besitzt.")
        return
        
end
        
if game.get_event_flag("Grotte_zugang") == 1 then
        say_title
(""..mob_name(30121).."")
        
say("")
        
pc.setqf("grotte_passworto", 078954687921)
        if 
pc.getqf("abgabe") == 1 then
        pc
.setqf("abgabe",0)
        
say("Du hast bereits deine 3 Schlüssel abgeben.")
        
say("Ich lasse dich passieren.")
        
pc.setqf("erlaubt",1)
        
wait()
        
pc.warp(843200, 1066900)
        return
        
end
        say
("Tut mir Leid, der Raum ist reseviert.")
        
say("Wenn du ein die Kennzahl hast für den Zugang,")
        
say("gebe sie jetzt bitte ein.")
        
local passwort = tonumber(input(""))
        --
pc.setqf("grotte_passworto", passwort) 
        if 
game.get_event_flag("Grotte_passwort") == passwort then
        say_title
(""..mob_name(30121).."")
        
say("")
        
say("Die Kennzahl stimmt überein.")
        if 
pc.count_item(30179) < 3 then
        say
("Ich kann dir den zutritt nicht gewähren")
        
say("Dir fehlt "..item_name(30179).."")
        
say_item_vnum(30179)
        
say("Komme wieder wenn du 3 besitzt.")
        return
        
end
        say
("Ich gewähre dir den zutritt!")
        
pc.setqf("erlaubt",1)
        
wait()
        if 
pc.can_warp() then    pc.remove_item("30179",3) end
        pc
.warp(843200, 1066900)
        elseif 
passi != pc.getqf("grotte_passworto") then
        say_title
(""..mob_name(30121).."")
        
say("")
        
say("Die Kennzahl ist leider falsch.")
        return
        
end
        end
        
if game.get_event_flag("Grotte_zugang") == 0 and pc.count_item(30179) >= 3 then
        say_title
(""..mob_name(30121).."")
        
say("")
        
say("Du bist der erste der den Eintritt in den Tempel")
        
say("des Drachens verlangt. Ich werde dich passieren")
        
say("lassen, sofern du einen gewunden Schlüssel")
        
say("besitzt. Bevor du den Raum betreten darfst")
        
say("musst du eine geheime Zahl eingeben.")
        
say("Diese kannst du innerhalb von 5 Minuten an")
        
say("deine Mitstreiter weitergeben, so das auch")
        
say("sie den Raum betreten können. ")
        
say("")
        
say("Bedenke auch das die Macht der Schlüssel nur")
        
say("30 Minuten lang hält. In dieser Zeit müsst")
        
say("ihr den Drachen besiegt haben.")
        
local i = select("Ich bin Bereit", "Abbrechen")
        if 
1 == i then
        say_title
(""..mob_name(30121).."")
        
say("Dann Lege jetzt die kennzahl fest.")
        
local passwort = tonumber(input(""))
        if 
passwort and passwort <= 999999999 and pc.count_item(30179)>=1 then
        game
.set_event_flag("Grotte_zugang",1)
        
game.set_event_flag("Grotte_passwort",passwort)
        
local times = get_time() + 300 --Wartezeit
        game
.set_event_flag("Grotte_time", times)
        
say_title(""..mob_name(30121).."")
        
pc.setqf("abgabe",1)
        
say("")
        
say("Die Kennzahl lautet:")
        
chat("Die Kennzahl lautet für den Tempel des Drachen: "..passwort.."")
        
say_reward(""..passwort.."")
        
say("Gib die Kennzahl deinen Mitstreitern weiter")
        
pc.remove_item("30179",3)
        else 
        
say_title(""..mob_name(30121).."")
        
say("")
        
say("Beim Kennzahl setzen ist ein fehler aufgetreten, versuche es erneut.")
        
say("Bitte gebe nur Ziffern ein.")
        
end
        end
        end
        end
    when login with pc
.get_map_index() == 208 and not pc.is_gm() begin
        
if pc.count_item("80041") >= 1 then chat("Tempel des Drachen: Du hast das GM-Item, prüfungen werden geblockt!") return end
        
if pc.get_level() < 75 or pc.getqf("erlaubt") == 0 and pc.get_map_index() == 208 then
         chat
("Dir ist es nicht erlaubt diese Map zu betreten. "..pc.get_level().." "..pc.getqf("erlaubt").." "..pc.get_map_index().." ")
            
warp_to_village()
        
end
        chat
("Willkommen, zerstört schnell den Stein um zu dem Drachen zu gelangen.")
        
chat("Aber beeilt euch, sonst fliegt ihr raus")
        
local sekunden = game.get_event_flag("Grotte_time") - get_time()
        
notice_in_map("Verbleibende Zeit bis ihr rausfliegt: "..sekunden.." Sekunden")
        
timer("skipia_boss_ende", sekunden)
        
pc.set_warp_location(73 , 1825, 12207)
        
end
    when 8023.kill with pc
.get_map_index() == 208 begin
        timer
("skipia_boss_goo", 2)
        
notice_in_map("Ihr hab den Stein zerstört ihr werden nun in die nächste Ebene gebracht")
        
end
    when skipia_boss_goo
.timer begin
        game
.set_event_flag("Grotte_zugang",0)
        
d.new_jump_all(208, 8436, 10669)
        
d.setf("grotte_boss", 1)
        
d.spawn_mob(9012, 239, 173)
        
end
    when 8031.kill 
or 8032.kill or 8033.kill or 8034.kill with pc.in_dungeon() and d.getf("grotte_boss") == 2 begin
    local n 
=d.getf("count") + 1
    d
.setf("count", n) 
    --
notice_all("Metin killed "..n.."")
    if 
n > 2 then
    local t 
= number(1,4)
    --
notice_all("Spawn Metin")
    if 
1 == t then
    d
.regen_file("data/dungeon/skia_boss1.txt")
    elseif 
2 == t then
    d
.regen_file("data/dungeon/skia_boss2.txt")
    elseif 
3 == t then
    d
.regen_file("data/dungeon/skia_boss3.txt")
    else
    
d.regen_file("data/dungeon/skia_boss4.txt")
    
end
    end
    end
    when 2493.kill with pc
.in_dungeon() and d.getf("grotte_boss") == 2 begin
        d
.setf("grotte_boss", 3)
        
notice_all("Die Gruppe von "..pc.get_name().." hat Beran-Setaou getötet.")
        
d.notice("Beeindruckend, ihr habt ihn tatsächlich besiegt.") -- Als Abschluss könnt ihr noch die Metins zerstören")
        d.notice("
ihr werdet in 60 Sekunden zurück in Grotte 2 gebracht.")
        timer("
skipia_boss_end", 60)
        d.kill_all()
        d.spawn_mob(9012, 239, 173)
        d.clear_regen()
        end
    when login with pc.in_dungeon() and d.getf("
grotte_boss") == 2 begin
    pc.set_warp_location(73 , 1825, 12207)
    end
    when login with pc.in_dungeon() and d.getf("
grotte_boss") == 1 begin
        timer("
skipia_boss_end", 3600)    
        d.set_regen_file("
data/dungeon/skia_boss.txt")
        local t = number(1,4)
        if 1 == t then
            d.regen_file("
data/dungeon/skia_boss1.txt")
            elseif 2 == t then
            d.regen_file("
data/dungeon/skia_boss2.txt")
            elseif 3 == t then
            d.regen_file("
data/dungeon/skia_boss3.txt")
            else
            d.regen_file("
data/dungeon/skia_boss4.txt")
        end
        local o = number(1,4)
        if 1 == o then
            d.regen_file("
data/dungeon/skia_boss1.txt")
            elseif 2 == o then
            d.regen_file("
data/dungeon/skia_boss2.txt")
            elseif 3 == o then
            d.regen_file("
data/dungeon/skia_boss3.txt")
            else
            d.regen_file("
data/dungeon/skia_boss4.txt")
            end    
        d.setf("
grotte_boss", 2)
        d.notice("
Willkommen im Tempel des Drachen, ihr habt maximal 1 Stunde Zeit Beran-Setaou zu besiegen, Viel Erfolg")
        d.setf("
count", 0)
        pc.set_warp_location(73 , 1825, 12207)
        end
    when login with pc.in_dungeon() and d.getf("
grotte_boss") == 3 begin -- begin
    --pc.warp(181700, 1220600)
    end
    when skipia_boss_end.timer begin
        d.exit_all()
        end
    when skipia_boss_ende.timer begin
        kill_all_in_map(208)
        game.set_event_flag("
Grotte_zugang",0)
        d.setf("
grotte_boss", 1)
        d.exit_all()
    end
    when login with pc.get_map_index() != 208 or not pc.in_dungeon() begin
    pc.setqf("
erlaubt",0)
    end
    end
end 
07/04/2017 07:24 andii#2
Dafür haben wir einen Sammelthread:
[Only registered and activated users can see links. Click Here To Register...]
[Only registered and activated users can see links. Click Here To Register...]
Poste am Besten direkt da rein
07/04/2017 08:57 Who dis?#3
^ clsd