dediğiniz gibi yaptım devam ediyor yine aynı hata
Düzenlenmiş hali:
[CODE title="Lua"]quest orc_maze begin
state start begin
------ fonksiyonlar ----------------
function get_settings()
local orc_maze_dungeon_settings = {}
orc_maze_dungeon_settings.map_index = 352 --Mapindex
orc_maze_dungeon_settings.girisitem = 71130 --Mapindex
orc_maze_dungeon_settings.girisitemadet = 1 --Mapindex
orc_maze_dungeon_settings.base_cord = {12170,8100} --Base Kordinaten
orc_maze_dungeon_settings.outside_entry_pos = {64,3343,7750} --Mapindex, Exit Position (Eisland)
orc_maze_dungeon_settings.need_level = 30 --Ab wann ist der Dungeon betretbar.
orc_maze_dungeon_settings.max_level = 60 --Ab wann ist der Dungeon betretbar.
orc_maze_dungeon_settings.DurationLoopTimer = 10 --Welchen intervall die Level und Missionen gepruft werden sollen. (Empfohlen 45)
orc_maze_dungeon_settings.key_level_2 = 30312 --KeyVnum fur die 2.Ebene --Frostschlussel
orc_maze_dungeon_settings.FakeBossVnum = 6209 --MobVnum von 10.Ebene --orc_maze(6191)
orc_maze_dungeon_settings.BossVnum = 693 --MobVnum von 10.Ebene --orc_maze(6191)
orc_maze_dungeon_settings.Position_level_10 = { 73,1145 } --Position ebene 10 (BossZone) --Besiege orc_maze, den Konig uber Frost und Eis.
return orc_maze_dungeon_settings
end
function GrupKontrol()
local user_fail_level = {}
local user_fail_level2 = {}
local user_fail_cd = {}
local user_fail_cr = {}
local pids = {party.get_member_pids()}
local set = orc_maze.get_settings()
local need_level = set.need_level
local max_level = set.max_level
local girisitemadet = set.girisitemadet
for i = 1, table.getn(pids), 1 do
q.begin_other_pc_block(pids
)
if pc.get_level() < need_level then
table.insert(user_fail_level, table.getn(user_fail_level) +1, pc.get_name())
end
if pc.get_level() > max_level then
table.insert(user_fail_level2, table.getn(user_fail_level2) +1, pc.get_name())
end
if (pc.getf("orc_maze","dungeon_time") or 0) > get_time() then
table.insert(user_fail_cd, table.getn(user_fail_cd) +1, pc.get_name())
end
if pc.getqf("orc_maze_regis") != 1 then
table.insert(user_fail_cr, table.getn(user_fail_cr) +1, pc.get_name())
end
q.end_other_pc_block()
end
if table.getn(user_fail_level) == 0 and table.getn(user_fail_level2) == 0 and table.getn(user_fail_cd) == 0 and table.getn(user_fail_cr) == 0 then
return true
end
say_npc()
say("Grubun bazı üyeleri ")
say("içeriye girmeye uygun değil.")
if table.getn(user_fail_level) >= 1 then
say(need_level.." seviyeye ulaşmamış:")
for x = 1, table.getn(user_fail_level), 1 do
say(color(1,1,0), " "..user_fail_level[x])
end
end
if table.getn(user_fail_level2) >= 1 then
say(max_level.." seviyeye ulaşmamış:")
for x = 1, table.getn(user_fail_level2), 1 do
say(color(1,1,0), " "..user_fail_level2[x])
end
end
if table.getn(user_fail_cd) >= 1 then
say("Giriş süresi dolmayanlar :")
for x = 1, table.getn(user_fail_cd), 1 do
say(color(1,1,0), " "..user_fail_cd[x])
end
end
if table.getn(user_fail_cr) >= 1 then
say("Kayıt olmayanlar :")
for x = 1, table.getn(user_fail_cr), 1 do
say(color(1,1,0), " "..user_fail_cr[x])
end
end
return false
end
function Temizle()
local d_index = d.get_map_index()
clear_server_timer("orc_maze_timeup",d_index)
clear_server_timer("orc_maze_15left",d_index)
clear_server_timer("orc_maze_10left",d_index)
clear_server_timer("orc_maze_5left",d_index)
clear_server_timer("orc_maze_out",d_index)
clear_server_timer("orc_maze_slotcounter",d_index)
clear_server_timer("orc_maze_lv2",d_index)
clear_server_timer("orc_maze_lv3",d_index)
clear_server_timer("orc_maze_lv4",d_index)
d.setf("party_leader_pid",0)
d.setf("dungeon_endtime",0)
d.setf("orc_maze_dead",0)
d.setf("orc_maze_key1",0)
d.setf("level",0)
d.setf("sure_doldu",0)
d.clear_regen()
d.kill_all()
end
------------------------------------
when 20394.chat."Kayıt Ol!" begin
local regis = select("Kayıt ol", "Daha sonra")
if regis == 1 then
if pc.getqf("orc_maze_regis") == 1 then
say_npc()
say("")
say("Ork Labirenti'ne zaten kayıt yapmışsınız.")
return
end
if pc.count_item(71130) < 1 then
say_npc()
say("")
say_item_vnum(71130)
say("1 adet "..item_name(71130).." ihtiyacın var.")
return
end
say_npc()
say("Ork Labirenti'ne gerekli kaydın yapıldı.")
say("Artık içeri girebilirsin.")
pc.remove_item(71130,1)
pc.setqf("orc_maze_regis",1)
else
return
end
end
when 20394.chat."Ork Labirenti" begin
if game.get_event_flag("orc_maze_open") == 0 then
if pc.is_gm() then
say_title("Event Flag : orc_maze_open ")
end
say("Dungeon henüz aktif değil!")
return
end
local set = orc_maze.get_settings()
local girisitem = set.girisitem
local girisitemadet = set.girisitemadet
local need_level = set.need_level
local max_level = set.max_level
local isparty = false
if party.is_party() then
isparty = true
end
if isparty then
if not party.is_leader() then
say("Bu işlemi sadece grup lideri yapabilir.")
return
end
say_npc()
say("")
say("Ork Labirenti'ne girmek ")
say("istediğinize emin misiniz ?")
say("")
local gir = select(locale.yes,locale.no)
if gir == 1 then
if orc_maze.GrupKontrol() == false then
return
else
--orc_maze.GrupSok()
--pc.remove_item(71130,1)
timer("orc_maze_grupgiris",2)
end
else
return
end
else
if pc.get_level() < need_level then
say_npc()
say("")
say("İçeriye sadece "..need_level.." seviye ve üstü oyuncular girebilir.")
return
end
if pc.get_level() > max_level then
say_npc()
say("")
say("İçeriye sadece "..max_level.." seviye ve altı oyuncular girebilir.")
return
end
if pc.getqf("orc_maze_regis") != 1 then
say_npc()
say("")
say("Ork Labirenti'ne kayıt yapmamışsınız.")
say("Lütfen Kayıt Ol kısmını kullanın.")
return
end
if (pc.getf("orc_maze","dungeon_time") or 0) > get_time() then
say_npc()
say("")
say("Henüz odaya giremezsin.")
say("Bekleme süren dolunca tekrar gel.")
say("")
say_reward("Kalan Süre : "..LIB_duration((pc.getf("orc_maze","dungeon_time") or 0)-get_time()))
return
end
say_npc()
say("")
say("Ork Labirenti'ne girmek ")
say("istediğine emin misin ?")
say("")
local gir = select(locale.yes,locale.no)
if gir == 1 then
--pc.remove_item(71130,1)
timer("orc_maze_sologiris",2)
else
return
end
end
end
-- [diğer kodlar aynı şekilde devam eder, sadece pc.getf("orc_maze","dungeon_time") veya benzeri satırlarda or 0 eklenmiştir]
when orc_maze_sologiris.timer begin
local set = orc_maze.get_settings()
local cord = set.base_cord
local start_pos = set.Position_level_10
local girisitemadet = set.girisitemadet
local girisitem = set.girisitem
d.join_coords(set.map_index,(cord[1]),(cord[2]))
orc_maze.Temizle()
d.setf("party_leader_pid",pc.get_player_id())
d.setf("dungeon_endtime",get_global_time()+60*30*1)
server_timer("orc_maze_timeup",60*30*1,d.get_map_index())
server_timer("orc_maze_15left",15*60*1,d.get_map_index())
d.spawn_mob_dir(30103, 138, 918,1)
end
when orc_maze_grupgiris.timer begin
local set = orc_maze.get_settings()
local cord = set.base_cord
local start_pos = set.Position_level_10
local girisitemadet = set.girisitemadet
local girisitem = set.girisitem
d.new_jump_party(set.map_index,(cord[1]),(cord[2]))
orc_maze.Temizle()
d.setf("party_leader_pid",pc.get_player_id())
party.setf("orc_maze_mapindex",d.get_map_index())
server_timer("orc_maze_timeup",60*30*1,d.get_map_index())
server_timer("orc_maze_15left",15*60*1,d.get_map_index())
d.setf("dungeon_endtime",get_global_time()+60*30*1)
d.spawn_mob_dir(30103, 138, 918,1)
end
-- ve diğer kısımlar aynen devam ediyor --
end
end
[/CODE]