Ayyıldız2 | 2008 TR Yapısı • 1-99 Orta Emek Destan • Oto Avsız • 10 Temmuz 21:00 HEMEN TIKLA!
Bildiğiniz gibi şaman sistemi kullanan arkadaşlarımız navicattan şaman mührünü süreli yapmaya çalıştığında oyunda şaman mührü kaybolabiliyor yada çok değişik sorunlar ortaya çıkabiliyor. Yani navicatta hiçbir şekilde şaman mührüne süre tanıyamıyoruz. Süre sınırı item ile şaman mührüne koyamıyorlar bende bu duruma çözüm bulup işi quest ile halletim ve bir quest yazdım ve artık onunla yardımcı şamana 3 günlük bir süre tanıyabiliyorsunuz.
Kod:
-- Shaman Sistemi
-- Skype: dream-fancy
-- Website: turkmmo.com
quest support_system begin
state start begin
function get_pet_info(itemVnum)
pet_info_map = {
-- [ITEM VNUM] MOB_VNUM, DEFAULT NAME, buff_idx, spawn_effect_idx
[53001] = { 34001, "Support System", 0},
[53002] = { 34001, "Support System", 0},
}
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 begin
local any_info = support_system.get_pet_info(item.vnum)
if null != any_info then
local mobVnum = any_info[1]
local petName = any_info[2]
local spawn_effect_file_name = support_system.get_spawn_effect_file(any_info[3])
if true == supports.is_summon(mobVnum) then
if spawn_effect_file_name != nil then
supports.spawn_effect (mobVnum, spawn_effect_file_name)
end
supports.unsummon(mobVnum)
else
if supports.count_summoned() < 1 then
supports.summon(mobVnum, petName, false)
else
syschat("<Sistem> Şamanın zaten yanında! ")
end
if spawn_effect_file_name != nil then
supports.spawn_effect (mobVnum, spawn_effect_file_name)
end
end
end
end
when 53002.use begin
--BURADA 1 KEZ KAYIT YAPIYORUZ VE SURE VERIYORUZ
if pc.getqf("saman_sure") == 0 then
pc.setqf("saman_sure", 1)
pc.setqf("delay", 288 * 10 + pc.get_playtime())
end
--BURADA DEVAM EDERKEN VE SURE BITTIGINDE YAZAN
if pc.getqf("delay") > pc.get_playtime() then
local delay = pc.getqf("delay") - pc.get_playtime()
local any_info = support_system.get_pet_info(item.vnum)
if null != any_info then
local mobVnum = any_info[1]
local petName = any_info[2]
local spawn_effect_file_name = support_system.get_spawn_effect_file(any_info[3])
if true == supports.is_summon(mobVnum) then
if spawn_effect_file_name != nil then
supports.spawn_effect (mobVnum, spawn_effect_file_name)
end
supports.unsummon(mobVnum)
else
if supports.count_summoned() < 1 then
supports.summon(mobVnum, petName, false)
syschat("Şamanın vakit dolduğunda seni terkedecek. ")
syschat("Kalan zaman: "..delay.." dakika ")
else
syschat("<Sistem> Şamanın zaten yanında! ")
end
if spawn_effect_file_name != nil then
supports.spawn_effect (mobVnum, spawn_effect_file_name)
end
end
end
return
else
say_title("Şaman: ")
say(" ")
say("Üzgünüm, artık seni terkediyorum. ")
say("2 gün boyunca seni takip ettim artık ")
say("yoruldum ve dinlenmek hakkım. Elveda! ")
say_reward("Bana süresiz olarak sahip olmak ")
say_reward("istersen nesne markette duruyorum. ")
say(" ")
pc.remove_item(53002)
end
end
end
end