|
You last visited: Today at 03:24
Advertisement
[SERVICE] Die Questkontrolle
Discussion on [SERVICE] Die Questkontrolle within the Metin2 Private Server forum part of the Metin2 category.
03/15/2014, 12:56
|
#9841
|
elite*gold: 0
Join Date: May 2010
Posts: 294
Received Thanks: 157
|
Quote:
Originally Posted by MrTherzon
Ist die Quest so richtig?
PHP Code:
qquest willkommen begin
state start begin
when login with pc.getqf("firstlogin") == 0 begin
notice_all("Wir begrüßen "..pc.get_name().." auf Servername")
setbgimage('level_bg.tga')
say_title(" Willkommen auf Servername, "..pc.get_name().." .")
say(" Viel Spaß auf Servername")
say("")
say(" Dein Servername Team.")
chat("--Chatnachricht--, kannste aber auch weg machen!")
pc.setqf("firstlogin", 1)
end
when 50187.use begin
if pc . job == 0 then
pc . give_item2 ( "19" , 1 )
pc . give_item2 ( "3009" , 1 )
pc . give_item2 ( "11209" , 1 )
pc . give_item2 ( "12209" , 1 )
pc . give_item2 ( "13009" , 1 )
pc . give_item2 ( "17009" , 1 )
pc . give_item2 ( "14009" , 1 )
pc . give_item2 ( "15009" , 1 )
pc . give_item2 ( "16009" , 1 )
pc . give_item2 ( "50053" , 1 )
pc.give_item2(27003, 200) --Roter Trank(G)
pc.give_item2(27003, 200) --Roter Trank(G)
pc.give_item2(27006, 200) --Blauer Trank(G)
pc.give_item2(27112, 200) --Grüner Trank(G)
pc.give_item2(27115, 200) --Violetter Trank(G)
horse.set_level(21)
pc.set_skill_level(131,59)
pc.set_skill_level(137,59)
pc.set_skill_level(138,59)
pc.set_skill_level(139,59)
elseif pc . job == 1 then
pc . give_item2 ( "1009" , 1 )
pc . give_item2 ( "2009" , 1 )
pc . give_item2 ( "8009" , 200 )
pc . give_item2 ( "11409" , 1 )
pc . give_item2 ( "12349" , 1 )
pc . give_item2 ( "13009" , 1 )
pc . give_item2 ( "17009" , 1 )
pc . give_item2 ( "14009" , 1 )
pc . give_item2 ( "15009" , 1 )
pc . give_item2 ( "16009" , 1 )
pc . give_item2 ( "50053" , 1 )
pc.give_item2(27003, 200) --Roter Trank(G)
pc.give_item2(27003, 200) --Roter Trank(G)
pc.give_item2(27006, 200) --Blauer Trank(G)
pc.give_item2(27112, 200) --Grüner Trank(G)
pc.give_item2(27115, 200) --Violetter Trank(G)
horse.set_level(21)
pc.set_skill_level(131,59)
pc.set_skill_level(137,59)
pc.set_skill_level(138,59)
pc.set_skill_level(139,59)
pc.set_skill_level(140,59
elseif pc . job == 2 then
pc . give_item2 ( "19" , 1 )
pc . give_item2 ( "12489" , 1 )
pc . give_item2 ( "11609" , 1 )
pc . give_item2 ( "13009" , 1 )
pc . give_item2 ( "17009" , 1 )
pc . give_item2 ( "14009" , 1 )
pc . give_item2 ( "15009" , 1 )
pc . give_item2 ( "16009" , 1 )
pc . give_item2 ( "50053" , 1 )
pc.give_item2(27003, 200) --Roter Trank(G)
pc.give_item2(27003, 200) --Roter Trank(G)
pc.give_item2(27006, 200) --Blauer Trank(G)
pc.give_item2(27112, 200) --Grüner Trank(G)
pc.give_item2(27115, 200) --Violetter Trank(G)
horse.set_level(21)
pc.set_skill_level(131,59)
pc.set_skill_level(137,59)
pc.set_skill_level(138,59)
pc.set_skill_level(139,59)
elseif pc . job == 3 then
pc . give_item2 ( "7009" , 1 )
pc . give_item2 ( "12629" , 1 )
pc . give_item2 ( "11809" , 1 )
pc . give_item2 ( "13009" , 1 )
pc . give_item2 ( "17009" , 1 )
pc . give_item2 ( "14009" , 1 )
pc . give_item2 ( "15009" , 1 )
pc . give_item2 ( "16009" , 1 )
pc . give_item2 ( "50053" , 1 )
pc.give_item2(27003, 200) --Roter Trank(G)
pc.give_item2(27003, 200) --Roter Trank(G)
pc.give_item2(27006, 200) --Blauer Trank(G)
pc.give_item2(27112, 200) --Grüner Trank(G)
pc.give_item2(27115, 200) --Violetter Trank(G)
horse.set_level(21)
pc.set_skill_level(131,59)
pc.set_skill_level(137,59)
pc.set_skill_level(138,59)
pc.set_skill_level(139,59)
end
end
end
|
PHP Code:
quest willkommen begin
state start begin
when login with pc.getqf("firstlogin") == 0 begin
notice_all("Wir begrüßen "..pc.get_name().." auf Servername")
setbgimage('level_bg.tga')
say_title(" Willkommen auf Servername, "..pc.get_name().." .")
say(" Viel Spaß auf Servername")
say("")
say(" Dein Servername Team.")
chat("--Chatnachricht--, kannste aber auch weg machen!")
pc.setqf("firstlogin", 1)
pc.give_item2("50187", 1)
end
when 50187.use begin
if pc.get_job() == 0 then
pc.give_item2 ( "19" , 1 )
pc.give_item2 ( "3009" , 1 )
pc.give_item2 ( "11209" , 1 )
pc.give_item2 ( "12209" , 1 )
pc.give_item2 ( "13009" , 1 )
pc.give_item2 ( "17009" , 1 )
pc.give_item2 ( "14009" , 1 )
pc.give_item2 ( "15009" , 1 )
pc.give_item2 ( "16009" , 1 )
pc.give_item2 ( "50053" , 1 )
pc.give_item2(27003, 200) --Roter Trank(G)
pc.give_item2(27003, 200) --Roter Trank(G)
pc.give_item2(27006, 200) --Blauer Trank(G)
pc.give_item2(27112, 200) --Grüner Trank(G)
pc.give_item2(27115, 200) --Violetter Trank(G)
horse.set_level(21)
pc.set_skill_level(131,59)
pc.set_skill_level(137,59)
pc.set_skill_level(138,59)
pc.set_skill_level(139,59)
elseif pc.get_job() == 1 then
pc.give_item2( "1009" , 1 )
pc.give_item2( "2009" , 1 )
pc.give_item2( "8009" , 200 )
pc.give_item2( "11409" , 1 )
pc.give_item2( "12349" , 1 )
pc.give_item2( "13009" , 1 )
pc.give_item2( "17009" , 1 )
pc.give_item2( "14009" , 1 )
pc.give_item2( "15009" , 1 )
pc.give_item2( "16009" , 1 )
pc.give_item2( "50053" , 1 )
pc.give_item2(27003, 200) --Roter Trank(G)
pc.give_item2(27003, 200) --Roter Trank(G)
pc.give_item2(27006, 200) --Blauer Trank(G)
pc.give_item2(27112, 200) --Grüner Trank(G)
pc.give_item2(27115, 200) --Violetter Trank(G)
horse.set_level(21)
pc.set_skill_level(131,59)
pc.set_skill_level(137,59)
pc.set_skill_level(138,59)
pc.set_skill_level(139,59)
pc.set_skill_level(140,59
elseif pc.get_job() == 2 then
pc.give_item2( "19" , 1 )
pc.give_item2( "12489" , 1 )
pc.give_item2( "11609" , 1 )
pc.give_item2( "13009" , 1 )
pc.give_item2( "17009" , 1 )
pc.give_item2( "14009" , 1 )
pc.give_item2( "15009" , 1 )
pc.give_item2( "16009" , 1 )
pc.give_item2( "50053" , 1 )
pc.give_item2(27003, 200) --Roter Trank(G)
pc.give_item2(27003, 200) --Roter Trank(G)
pc.give_item2(27006, 200) --Blauer Trank(G)
pc.give_item2(27112, 200) --Grüner Trank(G)
pc.give_item2(27115, 200) --Violetter Trank(G)
horse.set_level(21)
pc.set_skill_level(131,59)
pc.set_skill_level(137,59)
pc.set_skill_level(138,59)
pc.set_skill_level(139,59)
elseif pc.get_job() == 3 then
pc.give_item2( "7009" , 1 )
pc.give_item2( "12629" , 1 )
pc.give_item2( "11809" , 1 )
pc.give_item2( "13009" , 1 )
pc.give_item2( "17009" , 1 )
pc.give_item2( "14009" , 1 )
pc.give_item2( "15009" , 1 )
pc.give_item2( "16009" , 1 )
pc.give_item2( "50053" , 1 )
pc.give_item2(27003, 200) --Roter Trank(G)
pc.give_item2(27003, 200) --Roter Trank(G)
pc.give_item2(27006, 200) --Blauer Trank(G)
pc.give_item2(27112, 200) --Grüner Trank(G)
pc.give_item2(27115, 200) --Violetter Trank(G)
horse.set_level(21)
pc.set_skill_level(131,59)
pc.set_skill_level(137,59)
pc.set_skill_level(138,59)
pc.set_skill_level(139,59)
end
end
end
end
|
|
|
03/15/2014, 19:41
|
#9842
|
elite*gold: 15
Join Date: May 2013
Posts: 1,718
Received Thanks: 245
|
Hallo, habe ein kleines Problem vielleicht kann mir jemand helfen.
Wenn ich den Halbmondring anziehe, erhalte ich 1k TP aber diese werden nicht wieder abgezogen. Wie kann ich das machen?
PHP Code:
quest buffs begin
state start begin
when 71135.use begin
affect.add_collect(apply.MAX_HP, 1000, 60*60*24*365*60)
cmdchat("buff1")
end
end
end
Danke
|
|
|
03/15/2014, 20:51
|
#9843
|
elite*gold: 0
Join Date: Sep 2012
Posts: 815
Received Thanks: 627
|
Quote:
Originally Posted by Skyui
Hallo, habe ein kleines Problem vielleicht kann mir jemand helfen.
Wenn ich den Halbmondring anziehe, erhalte ich 1k TP aber diese werden nicht wieder abgezogen. Wie kann ich das machen?
PHP Code:
quest buffs begin
state start begin
when 71135.use begin
affect.add_collect(apply.MAX_HP, 1000, 60*60*24*365*60)
cmdchat("buff1")
end
end
end
Danke
|
Du hast vergessen den Affect zu entfernen, wenn der Ring abgezogen wird
PHP Code:
quest buffs begin
state start begin
when 71135.use begin
if pc.getqf("use_ring") == 0 then
affect.add_collect(apply.MAX_HP, 1000, 60*60*24*365*60)
cmdchat("buff1")
pc.setqf("use_ring", 1)
elseif pc.getqf("use_ring") == 1 then
affect.remove_collect(apply.MAX_HP, 1000, 60*60*24*365*60)
pc.setqf("use_ring", 0)
end
end
end
end
|
|
|
03/15/2014, 21:29
|
#9844
|
elite*gold: 0
Join Date: Aug 2013
Posts: 145
Received Thanks: 1
|
ich habe eine frage ich möchte knuud und bao bao in der quest einfügen aber wie mache ich das sie auch kommen ich habe alles ein gefügt aber die quest geht nicht
uest pet_system begin
state start begin
function get_pet_info(itemVnum)
pet_info_map = {
-- [ITEM VNUM] MOB_VNUM, DEFAULT NAME, buff_idx, spawn_effect_idx
[53014] = { 34011, "'s Knuud", 0}, -- Knuud
[53015] = { 34012, "'s Bao Bao", 0}, -- Bao Bao
}
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 53014.use or 53015.use begin
local pet_info = pet_system.get_pet_info(item.vnum)
if null != pet_info then
local mobVnum = pet_info[1]
local petName = pet_info[2]
local spawn_effect_file_name = pet_system.get_spawn_effect_file(pet_info[3])
if true == pet.is_summon(mobVnum) then
if spawn_effect_file_name != nil then
pet.spawn_effect (mobVnum, spawn_effect_file_name)
end
pet.unsummon(mobVnum)
else
if pet.count_summoned() < 1 then
pet.summon(mobVnum, petName, false)
else
syschat("Du hast bereits ein Haustier gerufen.")
end
if spawn_effect_file_name != nil then
pet.spawn_effect(mobVnum, spawn_effect_file_name)
end
end -- if pet.is_summon
end -- if null != pet_info
end -- when
end -- state
end -- quest
kann man das nicht in dieser quest einbauen
uest official_pets begin
state start begin
when 53001.use with pc.getqf("icephoenix") == 0 and pc.getqf("reindeer") == 0 and pc.getqf("pwahuang") == 0 and pc.getqf("dog") == 0 and pc.getqf("lion") == 0 and pc.getqf("pig") == 0 and pc.getqf("tiger") == 0 begin
if pc.getqf("firephoenix_use") == 0 then
local old_horse_name = horse.get_name() ;
if string.len(old_horse_name) == 0 then
chat("Dein Haustier hat noch keinen Namen!")
end
cmdchat("buff8")
chat("Dein Haustier wurde gerufen!")
local your_horse_level = horse.get_level()
pc.setqf("horse_level_save", your_horse_level)
pc.setqf("firephoenix_use", 1)
pc.setqf("firephoenix", 1)
affect.add_collect(apply.ATT_GRADE_BONUS, 100, 60*60*8)
affect.add_collect(apply.MAX_HP, 5000, 60*60*8)
horse.set_level("22")
horse.unsummon() horse.summon()
local horse_settings = pc.getqf("horse_level_save")
horse.set_level(horse_settings)
else
chat("Dein Haustier verabschiedet sich nun von dir!")
affect.remove_collect(apply.ATT_GRADE_BONUS, 100, 60*60*8)
affect.remove_collect(apply.MAX_HP, 5000, 60*60*8)
horse.unsummon()
pc.setqf("firephoenix_use", 0)
pc.setqf("firephoenix", 0)
local horse_settings = pc.getqf("horse_level_save")
horse.set_level(horse_settings)
end
end
when logout or login with pc.getqf("firephoenix_use") == 1 begin
pc.setqf("firephoenix_use", 0)
pc.setqf("firephoenix", 0)
local horse_settings = pc.getqf("horse_level_save")
horse.set_level(horse_settings)
chat("Dein Haustier ging alleine fort!")
affect.remove_collect(apply.ATT_GRADE_BONUS, 100, 60*60*8)
affect.remove_collect(apply.MAX_HP, 5000, 60*60*8)
end
when 53003.use with pc.getqf("firephoenix") == 0 and pc.getqf("reindeer") == 0 and pc.getqf("pwahuang") == 0 and pc.getqf("dog") == 0 and pc.getqf("lion") == 0 and pc.getqf("pig") == 0 and pc.getqf("tiger") == 0 begin
if pc.getqf("icephoenix_use") == 0 then
local old_horse_name = horse.get_name() ;
if string.len(old_horse_name) == 0 then
chat("Dein Haustier hat noch keinen Namen!")
end
cmdchat("buff10")
chat("Dein Haustier wurde gerufen!")
local your_horse_level = horse.get_level()
pc.setqf("horse_level_save", your_horse_level)
pc.setqf("icephoenix_use", 1)
pc.setqf("icephoenix", 1)
affect.add_collect(apply.CRITICAL_PCT, 20, 60*60*8)
affect.add_collect(apply.MAX_HP, 5000, 60*60*8)
horse.set_level("23")
horse.unsummon() horse.summon()
local horse_settings = pc.getqf("horse_level_save")
horse.set_level(horse_settings)
else
chat("Dein Haustier verabschiedet sich nun von dir!")
affect.remove_collect(apply.CRITICAL_PCT, 20, 60*60*8)
affect.remove_collect(apply.MAX_HP, 5000, 60*60*8)
horse.unsummon()
pc.setqf("icephoenix_use", 0)
pc.setqf("icephoenix", 0)
local horse_settings = pc.getqf("horse_level_save")
horse.set_level(horse_settings)
end
end
when logout or login with pc.getqf("icephoenix_use") == 1 begin
pc.setqf("icephoenix_use", 0)
pc.setqf("icephoenix", 0)
local horse_settings = pc.getqf("horse_level_save")
horse.set_level(horse_settings)
chat("Dein Eisphönix verlässt dich nun!")
affect.remove_collect(apply.CRITICAL_PCT, 20, 60*60*8)
affect.remove_collect(apply.MAX_HP, 5000, 60*60*8)
end
when 53002.use with pc.getqf("firephoenix") == 0 and pc.getqf("icephoenix") == 0 and pc.getqf("pwahuang") == 0 and pc.getqf("dog") == 0 and pc.getqf("lion") == 0 and pc.getqf("pig") == 0 and pc.getqf("tiger") == 0 begin
if pc.getqf("reindeer") == 0 then
local old_horse_name = horse.get_name() ;
if string.len(old_horse_name) == 0 then
chat("Dein Haustier hat noch keinen Namen!")
end
cmdchat("buff9")
chat("Dein Haustier wurde gerufen!")
local your_horse_level = horse.get_level()
pc.setqf("horse_level_save", your_horse_level)
pc.setqf("reindeer_use", 1)
pc.setqf("reindeer", 1)
affect.add_collect(apply.ATT_BONUS_TO_MONSTER, 25, 60*60*8)
affect.add_collect(apply.ATT_SPEED, 50, 60*60*8)
horse.set_level("24")
horse.unsummon() horse.summon()
local horse_settings = pc.getqf("horse_level_save")
horse.set_level(horse_settings)
else
chat("Dein Haustier verabschiedet sich nun von dir!")
affect.remove_collect(apply.ATT_BONUS_TO_MONSTER, 25, 60*60*8)
affect.remove_collect(apply.ATT_SPEED, 50, 60*60*8)
horse.unsummon()
pc.setqf("reindeer_use", 0)
pc.setqf("reindeer", 0)
local horse_settings = pc.getqf("horse_level_save")
horse.set_level(horse_settings)
end
end
when logout or login with pc.getqf("reindeer_use") == 1 begin
pc.setqf("reindeer_use", 0)
pc.setqf("reindeer", 0)
local horse_settings = pc.getqf("horse_level_save")
horse.set_level(horse_settings)
chat("Dein Haustier verlässt dich nun!")
affect.remove_collect(apply.ATT_BONUS_TO_MONSTER, 20, 60*60*8)
affect.remove_collect(apply.ATT_SPEED, 50, 60*60*8)
end
when 53005.use with pc.getqf("firephoenix") == 0 and pc.getqf("icephoenix") == 0 and pc.getqf("reindeer") == 0 and pc.getqf("dog") == 0 and pc.getqf("lion") == 0 and pc.getqf("pig") == 0 and pc.getqf("tiger") == 0 begin
if pc.getqf("pwahuang") == 0 then
local old_horse_name = horse.get_name() ;
if string.len(old_horse_name) == 0 then
chat("Dein Haustier hat noch keinen Namen!")
end
cmdchat("buff11")
chat("Dein Haustier wurde gerufen!")
local your_horse_level = horse.get_level()
pc.setqf("horse_level_save", your_horse_level)
pc.setqf("pwahuang_use", 1)
pc.setqf("pwahuang", 1)
affect.add_collect(apply.ATTBONUS_HUMAN, 30, 60*60*8)
affect.add_collect(apply.MAX_HP, 10000, 60*60*8)
horse.set_level("25")
horse.unsummon() horse.summon()
local horse_settings = pc.getqf("horse_level_save")
horse.set_level(horse_settings)
else
chat("Dein Haustier verabschiedet sich nun von dir!")
affect.remove_collect(apply.ATTBONUS_HUMAN, 30, 60*60*8)
affect.remove_collect(apply.MAX_HP, 10000, 60*60*8)
horse.unsummon()
pc.setqf("pwahuang_use", 0)
pc.setqf("pwahuang", 0)
local horse_settings = pc.getqf("horse_level_save")
horse.set_level(horse_settings)
end
end
when logout or login with pc.getqf("pwahuang_use") == 1 begin
pc.setqf("pwahuang_use", 0)
pc.setqf("pwahuang", 0)
local horse_settings = pc.getqf("horse_level_save")
horse.set_level(horse_settings)
chat("Dein Haustier verlässt dich nun!")
affect.remove_collect(apply.ATTBONUS_HUMAN, 30, 60*60*8)
affect.remove_collect(apply.MAX_HP, 10000, 60*60*8)
end
when 53006.use with pc.getqf("lion") == 0 and pc.getqf("pig") == 0 and pc.getqf("tiger") == 0 and pc.getqf("firephoenix") == 0 and pc.getqf("icephoenix") == 0 and pc.getqf("reindeer") == 0 and pc.getqf("pwahuang") == 0 begin
if pc.getqf("dog_use") == 0 then
local old_horse_name = horse.get_name() ;
if string.len(old_horse_name) == 0 then
chat("Dein Haustier hat noch keinen Namen!")
end
cmdchat("buff12")
chat("Dein Haustier wurde gerufen!")
local your_horse_level = horse.get_level()
pc.setqf("horse_level_save", your_horse_level)
pc.setqf("dog_use", 1)
pc.setqf("dog", 1)
affect.add_collect(apply.ATT_SPEED, 25, 60*60*8)
affect.add_collect(apply.MAX_HP, 3000, 60*60*8)
horse.set_level("26")
horse.unsummon() horse.summon()
local horse_settings = pc.getqf("horse_level_save")
horse.set_level(horse_settings)
else
chat("Dein Haustier verabschiedet sich nun von dir!")
affect.remove_collect(apply.ATT_SPEED, 25, 60*60*8)
affect.remove_collect(apply.MAX_HP, 3000, 60*60*8)
horse.unsummon()
pc.setqf("dog_use", 0)
pc.setqf("dog", 0)
local horse_settings = pc.getqf("horse_level_save")
horse.set_level(horse_settings)
end
end
when logout or login with pc.getqf("dog_use") == 1 begin
pc.setqf("dog_use", 0)
pc.setqf("dog", 0)
local horse_settings = pc.getqf("horse_level_save")
horse.set_level(horse_settings)
chat("Dein Haustier verlässt dich nun!")
affect.remove_collect(apply.ATT_SPEED, 25, 60*60*8)
affect.remove_collect(apply.MAX_HP, 3000, 60*60*8)
end
when 53007.use with pc.getqf("dog") == 0 and pc.getqf("pig") == 0 and pc.getqf("tiger") == 0 and pc.getqf("firephoenix") == 0 and pc.getqf("icephoenix") == 0 and pc.getqf("reindeer") == 0 and pc.getqf("pwahuang") == 0 begin
if pc.getqf("lion_use") == 0 then
local old_horse_name = horse.get_name() ;
if string.len(old_horse_name) == 0 then
chat("Dein Haustier hat noch keinen Namen!")
end
cmdchat("buff13")
chat("Dein Haustier wurde gerufen!")
local your_horse_level = horse.get_level()
pc.setqf("horse_level_save", your_horse_level)
pc.setqf("lion_use", 1)
pc.setqf("lion", 1)
affect.add_collect(apply.STR, 20, 60*60*8)
affect.add_collect(apply.MAX_HP, 3000, 60*60*8)
horse.set_level("27")
horse.unsummon() horse.summon()
local horse_settings = pc.getqf("horse_level_save")
horse.set_level(horse_settings)
else
chat("Dein Haustier verabschiedet sich nun von dir!")
affect.remove_collect(apply.STR, 20, 60*60*8)
affect.remove_collect(apply.MAX_HP, 3000, 60*60*8)
horse.unsummon()
pc.setqf("lion_use", 0)
pc.setqf("lion", 0)
local horse_settings = pc.getqf("horse_level_save")
horse.set_level(horse_settings)
end
end
when logout or login with pc.getqf("lion_use") == 1 begin
pc.setqf("lion_use", 0)
pc.setqf("lion", 0)
local horse_settings = pc.getqf("horse_level_save")
horse.set_level(horse_settings)
chat("Dein Haustier verlässt dich nun!")
affect.remove_collect(apply.STR, 20, 60*60*8)
affect.remove_collect(apply.MAX_HP, 3000, 60*60*8)
end
when 53008.use with pc.getqf("dog") == 0 and pc.getqf("lion") == 0 and pc.getqf("tiger") == 0 and pc.getqf("firephoenix") == 0 and pc.getqf("icephoenix") == 0 and pc.getqf("reindeer") == 0 and pc.getqf("pwahuang") == 0 begin
if pc.getqf("pig") == 0 then
local old_horse_name = horse.get_name() ;
if string.len(old_horse_name) == 0 then
chat("Dein Haustier hat noch keinen Namen!")
end
cmdchat("buff14")
chat("Dein Haustier wurde gerufen!")
local your_horse_level = horse.get_level()
pc.setqf("horse_level_save", your_horse_level)
pc.setqf("pig_use", 1)
pc.setqf("pig", 1)
affect.add_collect(apply.DEX, 20, 60*60*8)
affect.add_collect(apply.MAX_HP, 3000, 60*60*8)
horse.set_level("28")
horse.unsummon() horse.summon()
local horse_settings = pc.getqf("horse_level_save")
horse.set_level(horse_settings)
else
chat("Dein Haustier verabschiedet sich nun von dir!")
affect.remove_collect(apply.DEX, 20, 60*60*8)
affect.remove_collect(apply.MAX_HP, 3000, 60*60*8)
horse.unsummon()
pc.setqf("pig_use", 0)
pc.setqf("pig", 0)
local horse_settings = pc.getqf("horse_level_save")
horse.set_level(horse_settings)
end
end
when logout or login with pc.getqf("pig_use") == 1 begin
pc.setqf("pig_use", 0)
pc.setqf("pig", 0)
local horse_settings = pc.getqf("horse_level_save")
horse.set_level(horse_settings)
chat("Dein Haustier verlässt dich nun!")
affect.remove_collect(apply.DEX, 20, 60*60*8)
affect.remove_collect(apply.MAX_HP, 3000, 60*60*8)
end
when 53009.use with pc.getqf("dog") == 0 and pc.getqf("lion") == 0 and pc.getqf("pig") == 0 and pc.getqf("firephoenix") == 0 and pc.getqf("icephoenix") == 0 and pc.getqf("reindeer") == 0 and pc.getqf("pwahuang") == 0 begin
if pc.getqf("tiger") == 0 then
local old_horse_name = horse.get_name() ;
if string.len(old_horse_name) == 0 then
chat("Dein Haustier hat noch keinen Namen!")
end
cmdchat("buff15")
chat("Dein Haustier wurde gerufen!")
local your_horse_level = horse.get_level()
pc.setqf("horse_level_save", your_horse_level)
pc.setqf("tiger_use", 1)
pc.setqf("tiger", 1)
affect.add_collect(apply.INT, 20, 60*60*8)
affect.add_collect(apply.MAX_HP, 3000, 60*60*8)
horse.set_level("29")
horse.unsummon() horse.summon()
local horse_settings = pc.getqf("horse_level_save")
horse.set_level(horse_settings)
else
chat("Dein Haustier verabschiedet sich nun von dir!")
affect.remove_collect(apply.INT, 20, 60*60*8)
affect.remove_collect(apply.MAX_HP, 3000, 60*60*8)
horse.unsummon()
pc.setqf("tiger_use", 0)
pc.setqf("tiger", 0)
local horse_settings = pc.getqf("horse_level_save")
horse.set_level(horse_settings)
end
end
when logout or login with pc.getqf("tiger_use") == 1 begin
pc.setqf("tiger_use", 0)
pc.setqf("tiger", 0)
local horse_settings = pc.getqf("horse_level_save")
horse.set_level(horse_settings)
chat("Dein Haustier verlässt dich nun!")
affect.remove_collect(apply.INT, 20, 60*60*8)
affect.remove_collect(apply.MAX_HP, 3000, 60*60*8)
end
end
end
bitte um hilfe
|
|
|
03/16/2014, 13:10
|
#9845
|
elite*gold: 1
Join Date: Dec 2013
Posts: 3,467
Received Thanks: 720
|
Brauche Hilfe bei der Quest beim ersten abschnitt wenn man auf Ja drück geht es nicht weiter ... und es wird nicht in Player Datenbank übertragen ... könnte noch jemand die Funktion Codes posten damit es übertragen wird ...
Code:
quest vipname begin
state start begin
when 30205.use begin
say_title("Hallo "..pc.get_name().."!")
say("Mit diesem Item kannst du den KING Status aktivieren.")
say("")
say("")
say("Möchtest du?")
say(pc.get_name(), " -----------> (KING)", pc.get_name())
local aw = select("Ja", "Nein")
if aw == 2 then
return
end
name = pc.get_name()
zahl = string.len(name)
if aw == 1 and zahl <= 6 then
mysql_query("UPDATE player.player SET name='[KING]"..pc.get_name().."' WHERE name='"..pc.get_name().."'")
say_title("Erfolgreich!")
say("Herzlichen Glückwunsch, du bist nun KING auf")
say("Cibera2!")
say("")
say("")
say("Info")
say_reward("Die Änderung des (KING) kann 10-20 Minuten dauern.")
pc.removeitem(30205, 1)
elseif zahl > 6 then
say_title("Deine Name!")
say("Deine Name ist zu lang.")
say("Er darf nicht mehr als 6 Buchstaben haben.")
say("Es könnte sonst zum verschlingen von Buchtstaben")
say("kommen, z.B. Apfelsaft --> (KING)Apfelsa")
say("")
say("")
say_reward("Möchtest du ihn ändern um KING zuwerden?")
local a = select("Ja", "Nein")
if a == 2 then
return
end
say_title("Name wechseln")
say("Gib bitte deinen Wunschnamen ein:")
say_reward("Beachte! Nicht mehr als 6 Buchstaben.")
local inp = input()
if string.len(inp) > 6 or inp == "" then
say("Dein neuer Name hat mehr als 6 Buchstaben.")
say("Tut mir echt leid.")
return
else
say_title("Ok")
say("Dein Name erfüllt alle Voraussetzungen.")
say("")
say("Letzter Check, möchtest du wirklich mit dem")
say("Namen (KING)", inp," dein KING status aktivieren?")
local b = select("Ja", "Nein")
if b == 2 then
return
else
mysql_query("UPDATE player.player SET name='[KING]"..inp.."' WHERE name='"..pc.get_name().."'")
say_title("Erfolgreich!")
say("Herzlichen Glückwunsch, du bist nun KING auf")
say("Cibera2!")
say("")
say("")
say("Info")
say_reward("Die Änderung des (KING) kann 10-20 Minuten dauern.")
say_reward("Bitte für 20 Minuten ausloggen.")
pc.removeitem(30205, 1)
end
end
end
end
end
end
|
|
|
03/16/2014, 13:38
|
#9846
|
elite*gold: 0
Join Date: Oct 2013
Posts: 132
Received Thanks: 3
|
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
PHP Code:
syntax error : [string "start"]:10: `)' expected near `"..pc.get_name.."' Vip1.quest:23:Error occured on compile Vip1.quest
kann mir wer helfen ?
|
|
|
03/16/2014, 14:06
|
#9847
|
elite*gold: 0
Join Date: Sep 2011
Posts: 188
Received Thanks: 99
|
Quote:
Originally Posted by Lightbox
Brauche Hilfe bei der Quest beim ersten abschnitt wenn man auf Ja drück geht es nicht weiter ... und es wird nicht in Player Datenbank übertragen ... könnte noch jemand die Funktion Codes posten damit es übertragen wird ...
Code:
quest vipname begin
state start begin
when 30205.use begin
say_title("Hallo "..pc.get_name().."!")
say("Mit diesem Item kannst du den KING Status aktivieren.")
say("")
say("")
say("Möchtest du?")
say(pc.get_name(), " -----------> (KING)", pc.get_name())
local aw = select("Ja", "Nein")
if aw == 2 then
return
end
name = pc.get_name()
zahl = string.len(name)
if aw == 1 and zahl <= 6 then
mysql_query("UPDATE player.player SET name='[KING]"..pc.get_name().."' WHERE name='"..pc.get_name().."'")
say_title("Erfolgreich!")
say("Herzlichen Glückwunsch, du bist nun KING auf")
say("Cibera2!")
say("")
say("")
say("Info")
say_reward("Die Änderung des (KING) kann 10-20 Minuten dauern.")
pc.removeitem(30205, 1)
elseif zahl > 6 then
say_title("Deine Name!")
say("Deine Name ist zu lang.")
say("Er darf nicht mehr als 6 Buchstaben haben.")
say("Es könnte sonst zum verschlingen von Buchtstaben")
say("kommen, z.B. Apfelsaft --> (KING)Apfelsa")
say("")
say("")
say_reward("Möchtest du ihn ändern um KING zuwerden?")
local a = select("Ja", "Nein")
if a == 2 then
return
end
say_title("Name wechseln")
say("Gib bitte deinen Wunschnamen ein:")
say_reward("Beachte! Nicht mehr als 6 Buchstaben.")
local inp = input()
if string.len(inp) > 6 or inp == "" then
say("Dein neuer Name hat mehr als 6 Buchstaben.")
say("Tut mir echt leid.")
return
else
say_title("Ok")
say("Dein Name erfüllt alle Voraussetzungen.")
say("")
say("Letzter Check, möchtest du wirklich mit dem")
say("Namen (KING)", inp," dein KING status aktivieren?")
local b = select("Ja", "Nein")
if b == 2 then
return
else
mysql_query("UPDATE player.player SET name='[KING]"..inp.."' WHERE name='"..pc.get_name().."'")
say_title("Erfolgreich!")
say("Herzlichen Glückwunsch, du bist nun KING auf")
say("Cibera2!")
say("")
say("")
say("Info")
say_reward("Die Änderung des (KING) kann 10-20 Minuten dauern.")
say_reward("Bitte für 20 Minuten ausloggen.")
pc.removeitem(30205, 1)
end
end
end
end
end
end
|
Quote:
Originally Posted by flampy1
Hi habe ein problem habe eine quest item zerstörer aber die zerstört immer nur 1 sache und das dauer einfach zu lange wenn man 200 zerstören will
PHP Code:
quest eimer begin
state start begin
when 30103.take with item.get_id() begin
vnum = item.get_vnum()
say_title("Mülleimer")
say_item_vnum(vnum)
say("Willst du wirklich "..item.get_name().." zerstören?")
local s = select("Ja","Nein")
if s == 1 then
pc.remove_item(vnum)
elseif s == 2 then
return
end
end
when 30103.chat begin
say_title("Mülleimer")
say("Bei uns gibt es auch einen Mülleimer")
say("bei diesem Mülleimer könnt ihr alle Sachen zerstören lassen.")
say("Zieh einfach das Item auf mich drauf !.")
end
end
end
|
@Lightbox:
PHP Code:
quest vipname begin
state start begin
when 30205.use begin
say_title("Hallo "..pc.get_name().."!")
say("Mit diesem Item kannst du den KING Status aktivieren.")
say("")
say("")
say("Möchtest du?")
say(pc.get_name(), " -----------> (KING)", pc.get_name())
local aw = select("Ja", "Nein")
if aw == 2 then
return
else
name = pc.get_name()
zahl = string.len(name)
if aw == 1 and zahl <= 6 then
mysql_query("UPDATE player.player SET name='[KING]"..pc.get_name().."' WHERE name='"..pc.get_name().."'")
say_title("Erfolgreich!")
say("Herzlichen Glückwunsch, du bist nun KING auf")
say("Cibera2!")
say("")
say("")
say("Info")
say_reward("Die Änderung des (KING) kann 10-20 Minuten dauern.")
pc.removeitem(30205, 1)
elseif zahl > 6 then
say_title("Deine Name!")
say("Deine Name ist zu lang.")
say("Er darf nicht mehr als 6 Buchstaben haben.")
say("Es könnte sonst zum verschlingen von Buchtstaben")
say("kommen, z.B. Apfelsaft --> (KING)Apfelsa")
say("")
say("")
say_reward("Möchtest du ihn ändern um KING zuwerden?")
local a = select("Ja", "Nein")
if a == 2 then
return
else
say_title("Name wechseln")
say("Gib bitte deinen Wunschnamen ein:")
say_reward("Beachte! Nicht mehr als 6 Buchstaben.")
local inp = input()
if string.len(inp) > 6 or inp == "" then
say("Dein neuer Name hat mehr als 6 Buchstaben.")
say("Tut mir echt leid.")
return
else
say_title("Ok")
say("Dein Name erfüllt alle Voraussetzungen.")
say("")
say("Letzter Check, möchtest du wirklich mit dem")
say("Namen (KING)", inp," dein KING status aktivieren?")
local b = select("Ja", "Nein")
if b == 2 then
return
else
mysql_query("UPDATE player.player SET name='[KING]"..inp.."' WHERE name='"..pc.get_name().."'")
say_title("Erfolgreich!")
say("Herzlichen Glückwunsch, du bist nun KING auf")
say("Cibera2!")
say("")
say("")
say("Info")
say_reward("Die Änderung des (KING) kann 10-20 Minuten dauern.")
say_reward("Bitte für 20 Minuten ausloggen.")
pc.removeitem(30205, 1)
end
end
end
end
end
end
end
end
@ flampy1:
PHP Code:
quest eimer begin
state start begin
when 30103.take with item.get_id() begin
vnum = item.get_vnum()
anzahl = item.get_count(vnum)
say_title("Mülleimer")
say_item_vnum(vnum)
say("Willst du wirklich "..item.get_name().." zerstören?")
local s = select("Ja","Nein")
if s == 1 then
pc.remove_item(vnum, anzahl)
elseif s == 2 then
return
end
end
when 30103.chat begin
say_title("Mülleimer")
say("Bei uns gibt es auch einen Mülleimer")
say("bei diesem Mülleimer könnt ihr alle Sachen zerstören lassen.")
say("Zieh einfach das Item auf mich drauf !.")
end
end
end
|
|
|
03/16/2014, 17:07
|
#9848
|
elite*gold: 0
Join Date: Jan 2010
Posts: 416
Received Thanks: 95
|
Quote:
Originally Posted by KillHumans
#request!
|
Request again! Please!
|
|
|
03/16/2014, 17:53
|
#9849
|
elite*gold: 0
Join Date: Mar 2014
Posts: 99
Received Thanks: 36
|
Hallo ich wollte diese Quest einfügen
quest premium_user begin
state start begin
when login with pc.getqf("premium_user")==1 and not npc.is_pc() begin
end
when 70010.use with pc.getqf("premium_user")==0 begin
say_title("Treptan - Team:")
say("")
say("Mit diesem Item kannst du den Premium Status")
say("aktivieren. Der Premium Status bleibt")
say("permanent! Du Kannst dieses Item nur einmal")
say("benutzen.")
say("")
say_title("Willst du den Premium Status Aktivieren?")
local s = select("Ja", "Nein")
if s == 1 then
pc.remove_item(70010, 1)
pc.setqf("premium_user", 1)
syschat("Premium-Status aktiviert.")
else
return
end
end
end
end
Den Premium-Status aktivieren kann, also die Quest startet kein zweites Mal.
Nachdem aktivieren, kann man genau 1mal den Premium-Shop öffenen, danach ist der Status widerweg, jedoch durch erneutes klicken auf das Premium-Item, obwohl keine Quest kommt,
hat man wieder einen Versuch gut.
D.h. ich kann zwar das Premium Item kein zweites Mal benutzen, aber
Funktionen wie z.B:
PHP-Code:
when 9010.chat."Premium-Shop" with pc.getqf("premium_user")==1 begin
Muss ich noch irgendwo etwas dafür ergänzen ?
(Bei den Bio Quest ist es halt genau dasselbe Problem, die Quest erkennt den Premium-Status nicht.)
kann mir jemand helfen?
|
|
|
03/16/2014, 20:06
|
#9850
|
elite*gold: 17
Join Date: Mar 2009
Posts: 135
Received Thanks: 30
|
Hi habe ein problem mit der quest möchte das spieler ab lvl 100 von der map geportet werden und gms trotzdem auf die map können wäre das machbar?
habe hier die quest
quest farmmap begin
state start begin
when login with pc.get_map_index() == 42 begin
if pc.get_level() > 100 then
warp_to_village()
end
end
end
end
|
|
|
03/16/2014, 20:24
|
#9851
|
elite*gold: 0
Join Date: Sep 2011
Posts: 188
Received Thanks: 99
|
Quote:
Originally Posted by .Namikaze
Hi habe ein problem mit der quest möchte das spieler ab lvl 100 von der map geportet werden und gms trotzdem auf die map können wäre das machbar?
habe hier die quest
quest farmmap begin
state start begin
when login with pc.get_map_index() == 42 begin
if pc.get_level() > 100 then
warp_to_village()
end
end
end
end
|
PHP Code:
quest farmmap begin
state start begin
when login with pc.get_map_index() == 42 begin
if pc.get_level() > 100 then
warp_to_village()
elseif pc.is_gm() then
chat("Als GM darfst du auch auf die Map wenn du Level 100 überschritten hast.")
end
end
end
end
|
|
|
03/16/2014, 21:22
|
#9852
|
elite*gold: 0
Join Date: Jun 2011
Posts: 3,382
Received Thanks: 1,796
|
PHP Code:
quest bossrufrollen begin
state start begin
when 54000.use or 54001.use or 54002.use or 54003.use or 54004.use or 54005.use or 54006.use or 54007.use or 54008.use begin
local available = {95} -- Mid'spawn
local boss = {}
boss [54000] = {691}
boss [54001] = {1901}
boss [54002] = {1304}
boss [54003] = {2206}
boss [54004] = {2291}
boss [54005] = {1192}
boss [54005] = {1192}
boss [54006] = {11508}
boss [54007] = {8026}
boss [54008] = {8027}
for i = 1, table.getn(available) do
if pc.get_map_index() == available[i] then
mob.spawn(boss[item.get_vnum()][1],pc.get_local_x()+number(5,10),pc.get_local_y()-number(5,10),1,1,1)
end
end
end
bossrufrollen.lua:22:assertion failure : nested==0
Error occured on compile bossrufrollen.lua
|
|
|
03/16/2014, 22:07
|
#9853
|
elite*gold: 0
Join Date: May 2010
Posts: 294
Received Thanks: 157
|
Onlyx3™
Quote:
Originally Posted by [NYN].Onlyx3™
PHP Code:
quest bossrufrollen begin
state start begin
when 54000.use or 54001.use or 54002.use or 54003.use or 54004.use or 54005.use or 54006.use or 54007.use or 54008.use begin
local available = {95} -- Mid'spawn
local boss = {}
boss [54000] = {691}
boss [54001] = {1901}
boss [54002] = {1304}
boss [54003] = {2206}
boss [54004] = {2291}
boss [54005] = {1192}
boss [54005] = {1192}
boss [54006] = {11508}
boss [54007] = {8026}
boss [54008] = {8027}
for i = 1, table.getn(available) do
if pc.get_map_index() == available[i] then
mob.spawn(boss[item.get_vnum()][1],pc.get_local_x()+number(5,10),pc.get_local_y()-number(5,10),1,1,1)
end
end
end
bossrufrollen.lua:22:assertion failure : nested==0
Error occured on compile bossrufrollen.lua
|
PHP Code:
quest bossrufrollen begin
state start begin
when 54000.use or 54001.use or 54002.use or 54003.use or 54004.use or 54005.use or 54006.use or 54007.use or 54008.use begin
local available = {95} -- Midspawn
local boss = {
[54000] = {691}
[54001] = {1901}
[54002] = {1304}
[54003] = {2206}
[54004] = {2291}
[54005] = {1192}
[54005] = {1192}
[54006] = {11508}
[54007] = {8026}
[54008] = {8027}
}
for i = 1, table.getn(available) do
if pc.get_map_index() == available[i] then
mob.spawn(boss[item.get_vnum()][1],pc.get_local_x()+number(5,10),pc.get_local_y()-number(5,10),1,1,1)
end
end
end
keine Garantie, kenne mich mit Tabellen nicht so gut aus
123Crusher123
Fals das nicht klapt, was ich glaube, weil er erst guckt ob man lvl 100 ist und der gm dann auch über 100 ist hier ne andere möglichkeit
PHP Code:
quest farmmap begin
state start begin
when login with pc.get_map_index() == 42 begin
if pc.get_level() > 100 then
if pc.is_gm() then
chat("Als GM darfst du auch auf die Map wenn du Level 100 überschritten hast.")
else
warp_to_village()
end
end
end
end
end
flampy1
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, 08:47
|
#9854
|
elite*gold: 0
Join Date: Jan 2014
Posts: 64
Received Thanks: 6
|
PHP Code:
quest deviltower_zone begin
state start begin
when login begin
if pc.get_map_index() == 66 then
-- 並非在1樓時, 送返外面.
-- 層數 範圍
-- 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 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 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) -- 消滅不知是否存在的真亡靈塔
pc.remove_item(30302,mapto7)
local boxto7= pc.count_item(30300) -- 消滅不知是否存在的不知名的箱子
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)
-- 再現大量怪物及製造真石頭和假石頭
--d.regen_file("data/dungeon/deviltower4_regen.txt")
local positions = deviltower_zone.get_4floor_stone_pos()
for i = 1, 6 do
chat(positions[i][1], positions[i][2])
d.set_unique("fake" .. i , d.spawn_mob(8017, positions[i][1], positions[i][2]))
end
chat(positions[7][1], positions[7][2])
local vid = d.spawn_mob(8017, positions[7][1], positions[7][2])
chat(vid)
d.set_unique("real", vid)
server_loop_timer('devil_stone4_update', 10, pc.get_map_index())
server_timer('devil_stone4_fail1', 5*60, pc.get_map_index())
d.notice("Findet den richtigen Metinstein");
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*60, get_server_timer_arg())
end
end
when devil_stone4_fail2.server_timer begin
if d.select(get_server_timer_arg()) then
d.notice("Verbleibende Zeit: 5 Minuten")
server_timer('devil_stone4_fail', 5*60, get_server_timer_arg())
end
end
when devil_stone4_fail.server_timer begin
if d.select(get_server_timer_arg()) then
d.notice("Die Zeit ist abgelaufen")
d.notice("Ihr werdet nun nach drau絽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 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("Die falschen Metinsteine verschwinden..");
end
end
end
else
--d.clear_regen()
--d.regen_file("data/dungeon/deviltower5_regen.txt")
server_timer("devil_stone4_end", 5, get_server_timer_arg())
d.notice("Ihr habt den richtigen Metinstein")
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', 1, get_server_timer_arg())
end
end
when devil_stone4_stop_timer.server_timer begin
clear_server_timer('devil_stone4_update', get_server_timer_arg())
end
when devil_stone4_end.server_timer begin
if d.select(get_server_timer_arg()) then
d.setf("level", 5)
d.setf("stone_count", 5)
d.notice("Du bist nun in der 5. Ebene ")
d.notice("猈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*60, get_server_timer_arg())
clear_server_timer('devil_stone4_update', get_server_timer_arg())
-- 5樓繼續再現
d.set_regen_file("data/dungeon/deviltower5_regen.txt")
-- 5樓封印石再現
d.spawn_mob(20073, 421, 452)
d.spawn_mob(20073, 380, 460)
d.spawn_mob(20073, 428, 414)
d.spawn_mob(20073, 398, 392)
d.spawn_mob(20073, 359, 426)
end
end
when devil_stone5_fail1.server_timer begin
if d.select(get_server_timer_arg()) then
d.notice("Verbleibende Zeit: 15 Minuten")
server_timer('devil_stone5_fail2', 5*60, get_server_timer_arg())
end
end
when devil_stone5_fail2.server_timer begin
if d.select(get_server_timer_arg()) then
d.notice("Verbleibende Zeit: 10 Minuten")
server_timer('devil_stone5_fail3', 5*60, get_server_timer_arg())
end
end
when devil_stone5_fail3.server_timer begin
if d.select(get_server_timer_arg()) then
d.notice("Verbleibende Zeit: 5 Minuten")
server_timer('devil_stone5_fail', 5*60, get_server_timer_arg())
end
end
when devil_stone5_fail.server_timer begin
if d.select(get_server_timer_arg()) then
d.notice("Die Zeit ist abgelaufen")
d.notice("Ihr werdet nun nach drau絽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 n == KILL_COUNT_FOR_DROP_KEY then
-- 掉下鎖匙
game.drop_item(50084, 1)
d.setf("count", 0)
end
end
when devil_stone5.take with item.vnum == 50084 begin
npc.purge()
item.remove()
d.setf("stone_count", d.getf("stone_count") - 1)
if d.getf("stone_count") <= 0 then
d.setf("level", 6)
d.clear_regen()
d.regen_file("data/dungeon/deviltower6_regen.txt")
d.notice("Ihr habt alle alten Siegel ge鐪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
-- 傳送到煉聖所在的地圖
-- 否則,開設一個新煉聖
--d.jump_all(special.devil_tower[6][1], special.devil_tower[6][2])
d.kill_all()
-- d.set_warp_at_eliminate(3*60, 65, 5376+532, 512+596+4)
d.check_eliminated()
local reward_alchemist = {20074, 20075, 20076}
d.spawn_mob(reward_alchemist[number(1,3)], 425, 216);
d.setqf("can_refine", 1)
end
--------------------------------------
-- 由進入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 Glk! Heute erlaube ich es ihnen vielleicht!")
say("")
say("Aber voher muss ich euch noch pren..")
say("Mal sehen..")
wait()
if pc.level >=75 then
say("Ich erlaube euch weiterzugehen!")
say("Viel Glk 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(590500, 110500)
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 Glk! Heute erlaube ich es ihnen vielleicht!")
say("")
say("Aber voher muss ich euch noch pren..")
say("Mal sehen..")
wait()
if pc.level >=75 then
say("Ich erlaube euch weiterzugehen!")
say("Viel Glk 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(590500, 110500)
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 Glk! Heute erlaube ich es ihnen vielleicht!")
say("")
say("Aber voher muss ich euch noch pren..")
say("Mal sehen..")
wait()
if pc.level >=75 then
say("Ich erlaube euch weiterzugehen!")
say("Viel Glk 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(590500, 110500)
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
-- 掉下真地圖
game.drop_item(30302, 1)
d.clear_regen()
else
-- 掉下假地圖
game.drop_item(30301, 1)
end
end
when 30302.use with pc.in_dungeon() and pc.get_map_index() >= 660000 and pc.get_map_index() < 670000 begin
-- 傳送到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
--------------------------------------------
-- 由進入8樓至到達9樓之前
--------------------------------------------
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)-- 消滅真亡靈塔
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
-- 掉下真鎖匙
game.drop_item(30304, 1)
else
-- 掉下假鎖匙
game.drop_item(30303, 1)
end
else
return
end
end
when 20366.take with item.vnum == 30304 begin
-- 9樓封印解除
npc.purge()
item.remove()
timer("devil_jump_9", 6)
end
---------------------------------------------
-- 由進入9樓至結束
---------------------------------------------
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()
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', 60, pc.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.
|
|
|
03/17/2014, 14:19
|
#9855
|
elite*gold: 0
Join Date: Aug 2013
Posts: 145
Received Thanks: 1
|
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
bitte um hilfe
|
|
|
All times are GMT +1. The time now is 03:26.
|
|