Yardım herhangi bir iteme süre limiti eklemek

Konu sahibi bu konuda soru soruyor. Sorusu ile ilgili bilgisi olanların yanıtlamasını bekliyor.

coskun66

Üye
Üye
Mesaj
105
Çözümler
4
Beğeni
30
Puan
699
arkadaslar yıne ben ama arastırdıkca kafama takılıyor ben etp ye mesela zaman koymak ıstıyorum koydugum zamandan sonrada kaybolmasını ıstıyorum falan farklı bırkac yol denedım olmadı mesela navıcattan ve ıtem_proto.txt den degıstırdım yıne olmadı ve bunu afrodıt yardımcı samanda denedım bu seferde ortadan kayboldu bunları questle falan sure sınırı koyamazmıyız
 
protolardan real_time değerini ayarlamanız gerekiyor. Süreli eşyalardaki değerleri kontrol ederek nasıl yapılacağını bulabilirsiniz.
Bu değişiklikleri yaptıktan sonra envanterinizde bulunan eski eşyalara süre olayı gelmez. Tekrardan eşyayı almanız gerekli. :)
 
protolardan real_time değerini ayarlamanız gerekiyor. Süreli eşyalardaki değerleri kontrol ederek nasıl yapılacağını bulabilirsiniz.
Bu değişiklikleri yaptıktan sonra envanterinizde bulunan eski eşyalara süre olayı gelmez. Tekrardan eşyayı almanız gerekli. :)
zaten o dediginizi yapiyorum fakat sure gelmiyor etp ye yardimci samana ise yaptigimda tiklayinca kayip oluyor
 
Kod:
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

boyle bı quest var elımde fakat bende 53002 bambı muhru bu questle normal calsıyor 53001(yardımcı saman) fakat o 53002 lerı 53001 yapınca tıklıyorum saman gelıyor gerı gıdıyor. bambı oldugunda ıse bambı muhrune tıkladıgımda zaman kavramı ıslıyor şu kadar kaldı dıyor fakat ben onu 53001 e yapmak ıstıyorum tıkladıgımda zamanını da soyleyecek
 
ETP dediğiniz eşyayı biraz daha açar mısınız? Binek ve petlerdeki süreleri questlerde. Tam olarak hangi eşyaya süre eklemek istiyorsunuz?
 
Afrodid ne bilmiyorum ama benim protodaki etp bilgilerini veriyim;
Kod:
30270    Á¶°¢³ ¿ëÈ¥¼®    ITEM_QUEST    0    1    NONE    ITEM_STACKABLE    NONE    NONE    0    0    0    0    0    REAL_TIME    86400    LIMIT_NONE    0    APPLY_NONE    0    APPLY_NONE    0    APPLY_NONE    0    0    0    0    0    0    0    0    0    0
 
@coskun66 hocam real time karşısına değeri saniye olarak veriyorsunuz. 86400 saniye 1 güne tekabül ediyor yukarıdaki örnekteki gibi.
Onu biliyorum zaten kardeş her itemde oluyor tabi ama yardımcı zamanda olmuyor kayboluyor saman. Bide bunu iten_protodan yapınca zamanı görünmez ama kaybolur bunu pack taki item protlya eklemeniz gerekli bi alt bilgi olsun
 
Onu biliyorum zaten kardeş her itemde oluyor tabi ama yardımcı zamanda olmuyor kayboluyor saman. Bide bunu iten_protodan yapınca zamanı görünmez ama kaybolur bunu pack taki item protlya eklemeniz gerekli bi alt bilgi olsun
item proto yu ne ile kapatıyorsun ? Dump proto mu ? Bu çok şey fark ettirir.İstersen uğraşmak istemiyorsan şöyle bir şey yapabiliriz. Bir quest yazarız, sandık içinden sürelerini rastgele şekilde çıkartır.Yardımcı olabilirim. Skype: by-ros3@hot.
 
Geri
Üst