Çözüldü Costume Mount Sistemi Ekledim Binekten Hemen Atıyor

  • Konuyu açan Konuyu açan Reached
  • Açılış Tarihi Açılış Tarihi
  • Yanıt Yanıt 11
  • Gösterim Gösterim 590
Bu konu çözüme ulaştırılmıştır. Çözüm için konuya yazılan tüm yorumları okumayı unutmayın. Eğer konudaki yorumlar sorununuzu çözmediyse yeni bir konu açabilirsiniz.
Durum
İçerik kilitlendiği için mesaj gönderimine kapatıldı.

Reached

Geliştirici
Geliştirici
Emekli Üye
Editör
Mesaj
811
Çözümler
28
Beğeni
745
Puan
839
Ticaret Puanı
0
Sizler için hazırladığım files'e costume_mount sistemi ekledim fakat şöyle bir sıkıntım var. Summon başarılı fakat do_ride çalıştığı zaman unmount yapıyor. Costume mount kullanan biri protosundan bir bineğin kodunu atabilir mi ?

Bkz.
Linkleri görebilmek için giriş yap veya kayıt ol.
 
Çözüm
Elimle ayarladım buraları büyük ihtimal burda bir hata var

Kod:
Genişlet Daralt Kopyala
71230    ¹é»çÀÚÀÌ¿ë±Ç    ITEM_COSTUME    COSTUME_MOUNT    1    ANTI_DROP | ANTI_SELL | ANTI_GIVE | ANTI_MYSHOP    QUEST_USE_MULTIPLE | LOG    WEAR_COSTUME_MOUNT    NONE    0    0    0    0    0    LEVEL    0    LIMIT_NONE    0    APPLY_NONE    0    APPLY_NONE    0    APPLY_NONE    0    0    34025    0    0    0    0    0    0    0
71231    ¹é»çÀÚÀÌ¿ë±Ç    ITEM_COSTUME    COSTUME_MOUNT    1    ANTI_DROP | ANTI_SELL | ANTI_GIVE | ANTI_MYSHOP    QUEST_USE_MULTIPLE | LOG    WEAR_COSTUME_MOUNT    NONE    0    0    0    0    0    LEVEL    0    LIMIT_NONE    0    APPLY_NONE    0    APPLY_NONE    0    APPLY_NONE    0    0    34026    0    0    0    0    0    0    0
...
Yanlış hatırlamıyorsam costume mount ile birlikte bineklerin zaman değerlerinin tutulduğu socket değişiyordu.
Ride quest dosyanızı ekleyebilir misiniz?
 
Elimle ayarladım buraları büyük ihtimal burda bir hata var

Kod:
Genişlet Daralt Kopyala
71230    ¹é»çÀÚÀÌ¿ë±Ç    ITEM_COSTUME    COSTUME_MOUNT    1    ANTI_DROP | ANTI_SELL | ANTI_GIVE | ANTI_MYSHOP    QUEST_USE_MULTIPLE | LOG    WEAR_COSTUME_MOUNT    NONE    0    0    0    0    0    LEVEL    0    LIMIT_NONE    0    APPLY_NONE    0    APPLY_NONE    0    APPLY_NONE    0    0    34025    0    0    0    0    0    0    0
71231    ¹é»çÀÚÀÌ¿ë±Ç    ITEM_COSTUME    COSTUME_MOUNT    1    ANTI_DROP | ANTI_SELL | ANTI_GIVE | ANTI_MYSHOP    QUEST_USE_MULTIPLE | LOG    WEAR_COSTUME_MOUNT    NONE    0    0    0    0    0    LEVEL    0    LIMIT_NONE    0    APPLY_NONE    0    APPLY_NONE    0    APPLY_NONE    0    0    34026    0    0    0    0    0    0    0
 
Şuan bilgisayar başında değilim. Quest içeriğini kod bloguna ekleyebilir misiniz?
 
Tabi

Lua (Quest):
Genişlet Daralt Kopyala
quest ride begin
    state start begin
        function Ride( vnum, remain_time )
            ride_info = {
                [71114] = { 20110,    5*60,                    apply.DEF_GRADE_BONUS,    75,        75,    true    },
                [71115] = { 20110,    item.get_socket(2)*60,    apply.DEF_GRADE_BONUS,    100,    75,    false    },
                [71116] = { 20111,    5*60,                    apply.DEF_GRADE_BONUS,    100,    80,    true    },
                [71117] = { 20111,    item.get_socket(2)*60,    apply.DEF_GRADE_BONUS,    150,    80,    false    },
                [71118] = { 20112,    5*60,                    apply.DEF_GRADE_BONUS,    125,    85,    true    },
                [71119] = { 20112,    item.get_socket(2)*60,    apply.DEF_GRADE_BONUS,    200,    85,    false    },
                [71120] = { 20113,    5*60,                    apply.ATT_GRADE_BONUS,    200,    85,    true    },
                [71121] = { 20113,    item.get_socket(2)*60,    apply.ATT_GRADE_BONUS,    300,    85,    false    },
                [71171] = { 20227,    item.get_socket(2)*60,    apply.MOV_SPEED,    60,        1,    false,    false,    false},
                [71172] = { 20226,    item.get_socket(2)*60,    apply.MOV_SPEED,    60,        1,    false,    false,    false},
                [71176] = { 20231,    item.get_socket(2)*60,    apply.MOV_SPEED,    60,        1,    false,    false,    false},
                [71177] = { 20232,    item.get_socket(2)*60,    apply.MOV_SPEED,    60,        1,    false,    false,    false},
                }

            if pc.level < ride_info[vnum][5] then
                say("")
                say("Bineği kullanabilmek için seviyeniz yeterli değil.")
                say("")
            else
                if 112 == pc.get_map_index() then
                    return
                end
                if ride_info[vnum][2] == 0 and remain_time != 0 then
                    pc.mount( ride_info[vnum][1], remain_time*60 )
                    pc.mount_bonus( ride_info[vnum][3], ride_info[vnum][4], remain_time*60 )
                else
                    pc.mount( ride_info[vnum][1], ride_info[vnum][2] )
                    pc.mount_bonus( ride_info[vnum][3], ride_info[vnum][4], ride_info[vnum][2] )
                end

                if true == ride_info[vnum][6] then
                    pc.remove_item(vnum, 1)
                end    
            end    
        end

        when login begin
            local vnum, remain_time = pc.get_special_ride_vnum()
            if vnum <=  71113 or vnum >71121 then
                return
            end
            if 0 != vnum then
                ride.Ride(vnum, remain_time)
            end
        end

        when 71114.use or 71115.use or 71116.use or 71117.use or 71118.use or 71119.use or 71120.use or 71121.use 
                or 71171.use or 71172.use or 71176.use or 71177.use begin
             if pc.is_polymorphed() then
                 say("")
                 say("Dönüşmüş haldeyken binek kullanamazsın.")
                 say("")
            elseif false == pc.is_riding() then
                 if true == horse.is_summon() then
                    horse.unsummon()
                end
                 ride.Ride(item.vnum, 0)
             else
                say("")
                 say("Zaten bir binek kullanıyorsun.")
                 say("")
             end
        end
    end
end
 
Elimle ayarladım buraları büyük ihtimal burda bir hata var

Kod:
Genişlet Daralt Kopyala
71230    ¹é»çÀÚÀÌ¿ë±Ç    ITEM_COSTUME    COSTUME_MOUNT    1    ANTI_DROP | ANTI_SELL | ANTI_GIVE | ANTI_MYSHOP    QUEST_USE_MULTIPLE | LOG    WEAR_COSTUME_MOUNT    NONE    0    0    0    0    0    LEVEL    0    LIMIT_NONE    0    APPLY_NONE    0    APPLY_NONE    0    APPLY_NONE    0    0    34025    0    0    0    0    0    0    0
71231    ¹é»çÀÚÀÌ¿ë±Ç    ITEM_COSTUME    COSTUME_MOUNT    1    ANTI_DROP | ANTI_SELL | ANTI_GIVE | ANTI_MYSHOP    QUEST_USE_MULTIPLE | LOG    WEAR_COSTUME_MOUNT    NONE    0    0    0    0    0    LEVEL    0    LIMIT_NONE    0    APPLY_NONE    0    APPLY_NONE    0    APPLY_NONE    0    0    34026    0    0    0    0    0    0    0
LIMIT_NONE 0 olan yeri şöyle değiştirip tekrar deneyebilir misiniz?
REAL_TIME 604800
 
Çözüm
Önemli değil. :) Açtığınız konu sayesinde aynı sorunu yaşayanlar için rehber niteliğinde oldu.
Quest kodlarınızda bi sorun göremedim bu arada. pc.get_special_ride_vnum() fonksiyonu kalan zamanı doğru veriyorsa bi sıkıntı çıkmayacaktır.

Protolar için ise 604800 yazan yeri bineğin kullanım süresine göre değiştirebilirsiniz. Saniye cinsinden hesap yapılıyor.
2 gün vermek istiyorsunuz diyelim. Saniyeyi hesaplamak için: 60*60*24*2
Formül: saniye*dakika*saat*gun
 
Önemli değil. :) Açtığınız konu sayesinde aynı sorunu yaşayanlar için rehber niteliğinde oldu.
Quest kodlarınızda bi sorun göremedim bu arada. pc.get_special_ride_vnum() fonksiyonu kalan zamanı doğru veriyorsa bi sıkıntı çıkmayacaktır.

Protolar için ise 604800 yazan yeri bineğin kullanım süresine göre değiştirebilirsiniz. Saniye cinsinden hesap yapılıyor.
2 gün vermek istiyorsunuz diyelim. Saniyeyi hesaplamak için: 60*60*24*2
Formül: saniye*dakika*saat*gun
Ek bilgi için teşekkürler. Filesi forumda paylaşacağım için 4-4'lük olmasını istiyorum ve ona göre hazırlıyorum. Tüm questleri 0'dan ekledim ve bazılarını kendim yazmak, eklemek zorunda kaldım.
 
Sitemizin içeriğine sunduğunuz tüm katkılardan dolayı teşekkür ederim. Filesinizin son halini sabırsızlıkla bekliyorum. İyi çalışmalar dilerim. :)
 
Durum
İçerik kilitlendiği için mesaj gönderimine kapatıldı.
Üst