[SERVICE] Die Questkontrolle

03/17/2014 16:22 flampy1#9856
Rofelmau Funkt immer noch nicht

PHP Code:
syntax error : [string "start"]:10unexpected symbol near `)'
Vip1.quest:23:Error occured on compile Vip1.quest 
PHP Code:
quest vipchange begin
    state start begin
        when xxxx
.use begin
            say_title
("[VIP] Name")
            
say("")
            
say("Möchtest du ein [VIP] vor deinem")
            
say("Namen haben?")
                
local change select("Ja""Nein")
                    if 
change == 2 then
                        
return
                        
                    elseif 
change == 1 then
                        local name 
pc.get_name()
                        
                        
pc.name_change("[VIP]"..pc.get_name..)
                        
                        
say_title("[VIP] Name")
                        
say("")
                        
say("Bitte logge dich nun für 10 Minuten aus.")
                        
say("Loggst du dich eher wieder ein, werden die")
                        
say("änderungen nicht wirksam.")
                    
end
        end
    end
end 
03/17/2014 16:37 nOa##9857
Quote:
Originally Posted by Antara-mt2 View Post
hallo ich habe eine frage ich habe ne quest gemacht aber geht nicht was ist falsch
quest blauertot begin
state start begin
when 1095.kill begin
notice_all (pc.get_name().." hat den Blauen Tod besiegt!")
notice_all (pc.get_name().." hat dafür das Item 38053 und 2000000 Yang bekommen!")
pc.get_item (38053, 1)
pc.change_money (2000000)
end
end
@Antra-mt2:

Quote:
Originally Posted by flampy1 View Post
Rofelmau Funkt immer noch nicht

PHP Code:
syntax error : [string "start"]:10unexpected symbol near `)'
Vip1.quest:23:Error occured on compile Vip1.quest 
PHP Code:
quest vipchange begin
    state start begin
        when xxxx
.use begin
            say_title
("[VIP] Name")
            
say("")
            
say("Möchtest du ein [VIP] vor deinem")
            
say("Namen haben?")
                
local change select("Ja""Nein")
                    if 
change == 2 then
                        
return
                        
                    elseif 
change == 1 then
                        local name 
pc.get_name()
                        
                        
pc.name_change("[VIP]"..pc.get_name..)
                        
                        
say_title("[VIP] Name")
                        
say("")
                        
say("Bitte logge dich nun für 10 Minuten aus.")
                        
say("Loggst du dich eher wieder ein, werden die")
                        
say("änderungen nicht wirksam.")
                    
end
        end
    end
end 
@flampy1
03/17/2014 16:58 Antara-mt2#9858
Quote:
Originally Posted by 123Crusher123 View Post
@Antra-mt2:



@flampy1
immer noch fehler

calls undeclared function! :
pc.get_item2
error occured on complie pvm11.quest
03/17/2014 17:19 Getreidekuchen66#9859
Mehrere Shops in einen NPC / VB sagt error.. Was ist falsch? :S
PHP Code:
quest shops begin
state start begin
when 20086.chat
."Krieger-Frisuren" begin
say_title
("Frisuren:")
say("")
say("Möchtest du den Frisuren-Shop öffnen?")
local s select("Ja""Nein")

if 
== 1 then
npc
.open_shop(13)
else
return
end


end

when 20086.chat
."Ninja-Frisuren" begin
say_title
("Frisuren:")
say("")
say("Möchtest du den Frisuren-Shop öffnen?")
local s select("Ja""Nein")

if 
== 1 then
npc
.open_shop(14)
else
return
end
end 

when 20086.chat
."Sura-Frisuren" begin
say_title
("Frisuren:")
say("")
say("Möchtest du den Frisuren-Shop öffnen?")
local s select("Ja""Nein")

if 
== 1 then
npc
.open_shop(16)
else
return
end
end 

when 20086.chat
."Schamie-Frisuren" begin
say_title
("Frisuren:")
say("")
say("Möchtest du den Frisuren-Shop öffnen?")
local s select("Ja""Nein")

if 
== 1 then
npc
.open_shop(17)
else
return
end
end 
end 
[/QUOTE]
03/17/2014 17:41 Rofelmau#9860
Quote:
Originally Posted by Getreidekuchen66 View Post
Mehrere Shops in einen NPC / VB sagt error.. Was ist falsch? :S
PHP Code:
quest shops begin
state start begin
when 20086.chat
."Krieger-Frisuren" begin
say_title
("Frisuren:")
say("")
say("Möchtest du den Frisuren-Shop öffnen?")
local s select("Ja""Nein")

if 
== 1 then
npc
.open_shop(13)
else
return
end


end

when 20086.chat
."Ninja-Frisuren" begin
say_title
("Frisuren:")
say("")
say("Möchtest du den Frisuren-Shop öffnen?")
local s select("Ja""Nein")

if 
== 1 then
npc
.open_shop(14)
else
return
end
end 

when 20086.chat
."Sura-Frisuren" begin
say_title
("Frisuren:")
say("")
say("Möchtest du den Frisuren-Shop öffnen?")
local s select("Ja""Nein")

if 
== 1 then
npc
.open_shop(16)
else
return
end
end 

when 20086.chat
."Schamie-Frisuren" begin
say_title
("Frisuren:")
say("")
say("Möchtest du den Frisuren-Shop öffnen?")
local s select("Ja""Nein")

if 
== 1 then
npc
.open_shop(17)
else
return
end
end 
end 
[/QUOTE]

Quote:
Originally Posted by Antara-mt2 View Post
immer noch fehler

calls undeclared function! :
pc.get_item2
error occured on complie pvm11.quest
mach aus pc.get_item2 pc.give_item2
03/17/2014 20:15 Cynaide™#9861
Hey,
hast du auch

if s == 1 then
npc.open_shop(13)
else
return
end

hast du die (13) umgeändert auf die VNUM nummer deines Shops?
z.B Gemi hat den VNUM 3 dann musst du die (13) in eine 3 ändern


if s == 1 then
npc.open_shop(3)
else
return
end

Nur so ein kleines bespiel wie ich das meinte^^

mfg
03/17/2014 23:03 eMsentryy.#9862
Warpring Quest Funktioniert nicht!

Das sollte die quest machen;

Quest Code;
PHP Code:
quest warpring begin
    state start begin
        when 70007.
use begin
            local reich 
pc.get_empire()
            
say_title("Warpring:"
            
say("Willst du dich auf die Reichs Map Teleportieren?")
            
local dev select("Ja, bitte""Nein, danke")
            if 
dev == 2 then
                say
("Oke, vielleicht später.")
                return
            elseif 
dev == 1 then
                
if pc.get_level() >= 50 then
                    
if reich == 1 then
                        pc
.warp(392144)
                    elseif 
reich == 2 then
                        pc
.warp(99339)
                    elseif 
reich == 3 then
                        pc
.warp(335424)
                    
end
                
else
                    
say("Du bist leider noch nicht Level 50.")
                    
say("Komm wieder wenn du stärker bist!")
                    return
                
end
            end            
        end
    end
end 
Wenn ich InGame
/warp 392 144
/warp 99 339
/warp 335 424

Eingebe passiert auch nichts, wie bei der Quest...

Wenn ich InGame
/warp 2560 8192
Eingebe dann komme ich auf die Map,
ich will aber wie Oben beschrieben auf verschiedene Gebiete spawnen.

Wie kann ich das machen?

Lg.
03/18/2014 16:50 Noa_#9863
Quote:
Originally Posted by eMsentryy. View Post
Warpring Quest Funktioniert nicht!

Das sollte die quest machen;

Quest Code;
PHP Code:
quest warpring begin
    state start begin
        when 70007.
use begin
            local reich 
pc.get_empire()
            
say_title("Warpring:"
            
say("Willst du dich auf die Reichs Map Teleportieren?")
            
local dev select("Ja, bitte""Nein, danke")
            if 
dev == 2 then
                say
("Oke, vielleicht später.")
                return
            elseif 
dev == 1 then
                
if pc.get_level() >= 50 then
                    
if reich == 1 then
                        pc
.warp(392144)
                    elseif 
reich == 2 then
                        pc
.warp(99339)
                    elseif 
reich == 3 then
                        pc
.warp(335424)
                    
end
                
else
                    
say("Du bist leider noch nicht Level 50.")
                    
say("Komm wieder wenn du stärker bist!")
                    return
                
end
            end            
        end
    end
end 
Wenn ich InGame
/warp 392 144
/warp 99 339
/warp 335 424

Eingebe passiert auch nichts, wie bei der Quest...

Wenn ich InGame
/warp 2560 8192
Eingebe dann komme ich auf die Map,
ich will aber wie Oben beschrieben auf verschiedene Gebiete spawnen.

Wie kann ich das machen?

Lg.
gebe das ingame ein

/warp 392 144

wenn du dann erfolgreich teleportiert wurdest, guckst du im chat verlauf und suchst dir die richtigen koordis raus
03/18/2014 17:11 eMsentryy.#9864
Quote:
Originally Posted by Noa_ View Post
gebe das ingame ein

/warp 392 144

wenn du dann erfolgreich teleportiert wurdest, guckst du im chat verlauf und suchst dir die richtigen koordis raus

Wie gesagt, da passiert NICHTS. :)
03/18/2014 17:31 EisTee,#9865
Quote:
Originally Posted by eMsentryy. View Post
Wie gesagt, da passiert NICHTS. :)
Nimm mich mal in Skype an
03/18/2014 20:42 kingkong13579#9866
Bringt fehler


PHP Code:
quest pet_system begin
    state start begin
        
function get_pet_info(itemVnum)
            
pet_info_map = {
            --  [
ITEM VNUMMOB_VNUM, DEFAULT NAMEbuff_idxspawn_effect_idx
                
[53001]        = { 34001"'s Feuerphönix"0},    -- Feuerphönix
                
[53002]        = { 34002"'s Baby Rentier"0},    -- Baby Rentier
                
[53003]        = { 34003"'s Eisphönix"0},        -- Eisphönix
                
[53004]        = { 34001"'s Feuerphönix"0},    -- Feuerphönix
                
[53005]        = { 34004"'s Baby Azrael"0},    -- Baby Azrael
                
[53006]        = { 34009"'s Baby Azrael"0},    -- Baby Azrael (gold)
                [
53007]        = { 34010"'s Bambi"0},            -- Bambi
                
[53008]        = { 34011"'s Knuud"0},            -- Knuud
                
[53009]        = { 34012"'s Bao Bao"0},        -- Bao Bao
                
[53010]        = { 34008"'s Leonidas"0},        -- Leonidas
                
[53011]        = { 34007"'s Khan"0},            -- Khan
                
[53012]        = { 34005"'s Porkie"0},            -- Porkie
                
[53013]        = { 34006"'s Rufus"0},            -- Rufus
            
}

            
itemVnum tonumber(itemVnum)

            return 
pet_info_map[itemVnum]
        
end
        
function get_spawn_effect_file(idx)
            
effect_table = {
                [
0] = nil,
                [
1] = "d:\\\\ymir work\\\\effect\\\\etc\\\\appear_die\\\\npc2_appear.mse",
            }
            return 
effect_table [idx]
        
end
        when 53001.
use or 53002.use or 53003.use or 53004.use or 53005.use or 53006.use or 53007.use or 53008.use or 53009.use or 53010.use or 53011.use or 53012.use or 53013.use begin
            local pet_info 
pet_system.get_pet_info(item.vnum)

            if 
null != pet_info then

                local mobVnum 
pet_info[1]
                
local petName pet_info[2]
                
local spawn_effect_file_name pet_system.get_spawn_effect_file(pet_info[3])

                if 
true == pet.is_summon(mobVnumthen
                    
if spawn_effect_file_name != nil then
                        pet
.spawn_effect (mobVnumspawn_effect_file_name)
                    
end
                    pet
.unsummon(mobVnum)
                else
                    if 
pet.count_summoned() < 1 then
                        pet
.summon(mobVnumpetNamefalse)
                    else
                        
syschat("Du hast bereits ein Haustier gerufen.")
                    
end
                    
if spawn_effect_file_name != nil then
                        pet
.spawn_effect(mobVnumspawn_effect_file_name)
                    
end
                end 
-- if pet.is_summon
            end  
-- if null != pet_info
        end 
-- when
    end 
-- state
end 
-- quest 
03/18/2014 20:59 EisTee,#9867
Quote:
Originally Posted by kingkong13579 View Post
Bringt fehler


PHP Code:
quest pet_system begin
    state start begin
        
function get_pet_info(itemVnum)
            
pet_info_map = {
            --  [
ITEM VNUMMOB_VNUM, DEFAULT NAMEbuff_idxspawn_effect_idx
                
[53001]        = { 34001"'s Feuerphönix"0},    -- Feuerphönix
                
[53002]        = { 34002"'s Baby Rentier"0},    -- Baby Rentier
                
[53003]        = { 34003"'s Eisphönix"0},        -- Eisphönix
                
[53004]        = { 34001"'s Feuerphönix"0},    -- Feuerphönix
                
[53005]        = { 34004"'s Baby Azrael"0},    -- Baby Azrael
                
[53006]        = { 34009"'s Baby Azrael"0},    -- Baby Azrael (gold)
                [
53007]        = { 34010"'s Bambi"0},            -- Bambi
                
[53008]        = { 34011"'s Knuud"0},            -- Knuud
                
[53009]        = { 34012"'s Bao Bao"0},        -- Bao Bao
                
[53010]        = { 34008"'s Leonidas"0},        -- Leonidas
                
[53011]        = { 34007"'s Khan"0},            -- Khan
                
[53012]        = { 34005"'s Porkie"0},            -- Porkie
                
[53013]        = { 34006"'s Rufus"0},            -- Rufus
            
}

            
itemVnum tonumber(itemVnum)

            return 
pet_info_map[itemVnum]
        
end
        
function get_spawn_effect_file(idx)
            
effect_table = {
                [
0] = nil,
                [
1] = "d:\\\\ymir work\\\\effect\\\\etc\\\\appear_die\\\\npc2_appear.mse",
            }
            return 
effect_table [idx]
        
end
        when 53001.
use or 53002.use or 53003.use or 53004.use or 53005.use or 53006.use or 53007.use or 53008.use or 53009.use or 53010.use or 53011.use or 53012.use or 53013.use begin
            local pet_info 
pet_system.get_pet_info(item.vnum)

            if 
null != pet_info then

                local mobVnum 
pet_info[1]
                
local petName pet_info[2]
                
local spawn_effect_file_name pet_system.get_spawn_effect_file(pet_info[3])

                if 
true == pet.is_summon(mobVnumthen
                    
if spawn_effect_file_name != nil then
                        pet
.spawn_effect (mobVnumspawn_effect_file_name)
                    
end
                    pet
.unsummon(mobVnum)
                else
                    if 
pet.count_summoned() < 1 then
                        pet
.summon(mobVnumpetNamefalse)
                    else
                        
syschat("Du hast bereits ein Haustier gerufen.")
                    
end
                    
if spawn_effect_file_name != nil then
                        pet
.spawn_effect(mobVnumspawn_effect_file_name)
                    
end
                end 
-- if pet.is_summon
            end  
-- if null != pet_info
        end 
-- when
    end 
-- state
end 
-- quest 
Was für einen?
03/18/2014 23:25 [SA]Hiz#9868
Quote:
Originally Posted by [SA]Hiz View Post
PHP Code:
quest deviltower_zone begin
    state start begin
    when login begin
        
if pc.get_map_index() == 66 then
        
-- &#20006;非在1樓時, 送返外面.
        
-- &#23652;數 範圍
        
-- 1&#27155;  88  577  236 737
        
-- 2&#27155;  91  343  238 504
        
-- 3&#27155; 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 deviltower_man
.chat.locale.deviltower_man_chat begin
if pc get_level ( ) < 50 then 
say 
"Du hast noch nicht genuegend Erfahrung gesammelt. Komme wieder, wenn du Level 50 bist!" 
else 
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 
== 1 then 
pc 
warp 216500 727000 
end 
if == 5 then 
end 
if == 2 then 
say 
"Du wirst nun in das Shinsoo Reich teleportiert!" )
local s select "OK" )
pc warp 469300 964200 )
end
if == 3 then 
say 
"Du wirst nun in das Chunjo Reich teleportiert!" )
local s select "OK" )
pc warp 55700 157900 
end 
if == 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)  -- &#28040;滅不知是否存在的真亡靈塔
        
pc.remove_item(30302,mapto7)

        
local boxto7pc.count_item(30300)  -- &#28040;滅不知是否存在的不知名的箱子
        
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)
        -- &
#20877;現大量怪物及製造真石頭和假石頭
        
--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("Findet den richtigen Metinstein");
        
d.notice("und zerst顤t ihn. Die falschen");
        
d.notice("Metinsteine werden verschwinden!");
        
d.notice("Ihr habt 15 Minuten zeit!");

    
end

    when devil_stone4_fail1
.server_timer begin
        
if d.select(get_server_timer_arg()) then
        d
.notice("Verbleibende Zeit: 10 Minuten")
        
server_timer('devil_stone4_fail2'5*60get_server_timer_arg())
        
end
    end

    when devil_stone4_fail2
.server_timer begin
        
if d.select(get_server_timer_arg()) then
        d
.notice("Verbleibende Zeit: 5 Minuten")
        
server_timer('devil_stone4_fail'5*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.notice("Ihr werdet nun nach drau絽n teleportiert")
        
d.exit_all()
        
clear_server_timer('devil_stone4_update'get_server_timer_arg())
        
end
    end

    when devil_stone4_update
.server_timer begin
        
if d.select(get_server_timer_arg()) then
        
if not d.is_unique_dead("real"then
            
for 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("Die falschen Metinsteine verschwinden..");
                
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("Ihr habt den richtigen Metinstein")
            
d.notice("zerst顤t. Ihr werdet nun in die n踄hste")
            
d.notice("Etage teleportiert")
            
clear_server_timer('devil_stone4_fail1'get_server_timer_arg())
            
clear_server_timer('devil_stone4_fail2'get_server_timer_arg())
            
clear_server_timer('devil_stone4_fail'get_server_timer_arg())
        
end
        
else
        
server_timer('devil_stone4_stop_timer'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("Du bist nun in der 5. Ebene ")
        
d.notice("猈fne alle Alten Siegel um in die n踄hste Ebene zu gelangen.")
        
d.notice("Du hast 20 Minuten Zeit um alle Siegel zu 鐪fnen.")
        
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&#27155;繼續再現
        
d.set_regen_file("data/dungeon/deviltower5_regen.txt")

        -- 
5&#27155;封印石再現
        
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("Verbleibende Zeit: 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("Verbleibende Zeit: 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("Verbleibende Zeit: 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
        d
.notice("Die Zeit ist abgelaufen")
        
d.notice("Ihr werdet nun nach drau絽n teleportiert")
        
d.exit_all()
        
end
    end

    
--when devil_stone4.kill begin
        
--d.setf("level"5)
        --
d.setf("stone_count"4)
        --
d.clear_regen()
        --
d.regen_file("data/dungeon/deviltower5_regen.txt")
        --
d.jump_all_local(special.devil_tower[4][1], special.devil_tower[4][2])
    --
end

    when 1062.kill with pc
.in_dungeon() and d.getf("level") == 5 begin
        local KILL_COUNT_FOR_DROP_KEY 
50
        
--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
        
-- &#25481;下鎖匙
        
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("Ihr habt alle alten Siegel ge鐪fnet. Ihr  werdet nun")
        
d.notice("in die 6. Ebene teleportiert.")
        
d.jump_all(special.devil_tower[5][1], special.devil_tower[5][2])
        
clear_server_timer('devil_stone5_fail1'get_server_timer_arg())
        
clear_server_timer('devil_stone5_fail2'get_server_timer_arg())
        
clear_server_timer('devil_stone5_fail3'get_server_timer_arg())
        
clear_server_timer('devil_stone5_fail'get_server_timer_arg())
        else
        
d.notice("Es verbleibt eine Anzahl von "..d.getf("stone_count").." Siegeln")
        
end
    end

    when devil_stone6
.kill begin
        
-- &#20659;送到煉聖所在的地圖
        
-- &#21542;則,開設一個新煉聖
        
--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

    
--------------------------------------
    -- &
#30001;進入7樓至到達8樓之前
    
--------------------------------------

    
when 20074.chat."Die h鐬eren Etagen.." with pc.in_dungeon() and pc.get_map_index() >= 660000 and pc.get_map_index() < 670000 begin
        say_title
(""..mob_name(20074).."")
        
say("Ihr m鐼htet in die 7.Etage?")
        
say("Ihr haben Glk! Heute erlaube ich es ihnen vielleicht!")
        
say("")
        
say("Aber voher muss ich euch noch pren..")
        
say("Mal sehen..")
        
wait()
        if 
pc.level >=75 then
            say
("Ich erlaube euch weiterzugehen!")
            
say("Viel Glk und passt auf euch auf da oben!")
            
timer("devil_jump_7"6)
            return
        
end
        say_reward
("Betreten der 7.Etage nicht erlaubt!")
        
say("")
        
say("Ihr seid nicht qualifiziert genug!")
        
say("Erreicht LvL 75 oder h鐬er,")
        
say("damit ihr eure Fertigkeiten steigern k霵nt")
        
say("und kommt dann wieder!")
        
say("")
        
wait()
        
pc.warp(590500110500)
        return
    
end
    when 20075.chat
."Die h鐬eren Etagen.." with pc.in_dungeon() and pc.get_map_index() >= 660000 and pc.get_map_index() < 670000 begin
        say_title
(""..mob_name(20075).."")
        
say("Ihr m鐼htet in die 7.Etage?")
        
say("Ihr haben Glk! Heute erlaube ich es ihnen vielleicht!")
        
say("")
        
say("Aber voher muss ich euch noch pren..")
        
say("Mal sehen..")
        
wait()
        if 
pc.level >=75 then
            say
("Ich erlaube euch weiterzugehen!")
            
say("Viel Glk und passt auf euch auf da oben!")
            
timer("devil_jump_7"6)
            return
        
end
        say_reward
("Betreten der 7.Etage nicht erlaubt!")
        
say("")
        
say("Ihr seid nicht qualifiziert genug!")
        
say("Erreicht LvL 75 oder h鐬er,")
        
say("damit ihr eure Fertigkeiten steigern k霵nt")
        
say("und kommt dann wieder!")
        
say("")
        
wait()
        
pc.warp(590500110500)
        return
    
end
    when 20076.chat
."Die h鐬eren Etagen.." with pc.in_dungeon() and pc.get_map_index() >= 660000 and pc.get_map_index() < 670000 begin
        say_title
(""..mob_name(20076).."")
        
say("Ihr m鐼htet in die 7.Etage?")
        
say("Ihr haben Glk! Heute erlaube ich es ihnen vielleicht!")
        
say("")
        
say("Aber voher muss ich euch noch pren..")
        
say("Mal sehen..")
        
wait()
        if 
pc.level >=75 then
            say
("Ich erlaube euch weiterzugehen!")
            
say("Viel Glk und passt auf euch auf da oben!")
            
timer("devil_jump_7"6)
            return
        
end
        say_reward
("Betreten der 7.Etage nicht erlaubt!")
        
say("")
        
say("Ihr seid nicht qualifiziert genug!")
        
say("Erreicht LvL 75 oder h鐬er,")
        
say("damit ihr eure Fertigkeiten steigern k霵nt")
        
say("und kommt dann wieder!")
        
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
            
-- &#25481;下真地圖
            
game.drop_item(303021)
            
d.clear_regen()
        else
            -- &
#25481;下假地圖
            
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
        
-- &#20659;送到8樓
        
say("Die Karte wird euch alle in die n踄hste Ebene")
        
say("des D鄝onenturms bringen.")
        
pc.remove_item("30302"1)
        
timer("devil_jump_8"6)
        
d.clear_regen()
    
end
                        
    
--------------------------------------------
    -- &
#30001;進入8樓至到達9樓之前
    
--------------------------------------------
    
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)-- &#28040;滅真亡靈塔
        
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
                
-- &#25481;下真鎖匙
                
game.drop_item(303041)
            else
                -- &
#25481;下假鎖匙
                
game.drop_item(303031)
            
end
        
else
            return
        
end
    end

    when 20366.take with item
.vnum == 30304 begin
        
-- 9&#27155;封印解除
        
npc.purge()
        
item.remove()
        
timer("devil_jump_9"6)
    
end

    
---------------------------------------------
    -- &
#30001;進入9樓至結束
    
---------------------------------------------
    
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()
        
d.notice("Ihr habt den Sensenmann get飆et..");
        
d.notice("Ihr werdet in einer Minute aus dem Run teleportiert.");
        
notice_all(pc.get_name().." hat den Sensenmann bezwungen.")
        

            
server_timer('dragonlair_exit'60pc.get_map_index())

            
pc.setqf("dragon_lair"get_time()+60*10)
        
end

        when dragonlair_exit
.server_timer begin
            
if d.select(get_server_timer_arg()) then
                d
.exit_all()
            
end
        end
        



end
end 
Ich möchte das bei jedem die Zin-Karten nach dem benutzen einer Zin-Karte entfernt werden. Das Funktioniert leider nur bei dem Charakter, der die Zin-Karte aktiviert. Der zweite Charakter kann alle Karten behalten.

Hat niemand eine Lösung dafür?
03/19/2014 00:35 eMsentryy.#9869
Quest:

Fehler:
PHP Code:
syntax error : [string "start"]:32: <eofexpected near `elseif'
warpring2.quest:120:Error occured on compile warpring2.quest 
03/19/2014 15:47 ArsMartialis#9870
Quote:
Originally Posted by eMsentryy. View Post
Quest:

Fehler:
PHP Code:
syntax error : [string "start"]:32: <eofexpected near `elseif'
warpring2.quest:120:Error occured on compile warpring2.quest 
Versuch mit dieser überarbeiteten Version. Nicht getestet.