Metin2 pc.give_item2 200'den Fazla Eşya Vermeme Sorunu Çözümü

Whistle

Ruhsuz :/
Kurucu
Geliştirici
Yardımsever Üye
Mesaj
12.283
Çözümler
573
Beğeni
15.645
Puan
6.281
Ticaret Puanı
2
Merhaba arkadaşlar,
Oyma taş etkinliğini düzenlerken bi sorun ile karşılaştım ve kendime göre nasıl çözdüğümü de anlatmak istiyorum.

Sorun şu;
pc.give_item2() ile bir eşyayı 200'den fazla vermek istediğiniz zaman belirtildiği miktar kadar vermiyor daha az veriyor.

Bende bunun için şöyle bir çözüm yolu gerçekleştirdim.
Lua (Quest):
Genişlet Daralt Kopyala
        -- pc.give_item2 ile 200den fazla esya verilmiyor. Bu fonksiyon ile o sorunu cozmus olacagiz.
        function giveItemStack(vnum, amount)
            local stack = math.floor(amount/200)
            --200 ile stack sayısı carpilir. ve miktar ile cikarilir.
            -- 1218 - (200*6)
            local kalan = amount - (200*stack)
        
            for i=1, stack do
                pc.give_item2(vnum, 200)
            end
        
            if kalan > 0 then
                pc.give_item2(vnum, kalan)
            end
        end

Questinizin içine bu fonksiyonu yapıştırdıktan sonra 200den fazla item vermek istediğiniz satırı şu şekilde değiştirin;
Kod:
Genişlet Daralt Kopyala
questAdi.giveItemStack(30178, 1218)

questAdi kısmına quest yazarken ilk satırdaki quest adını yazmalısınız.
Örnek;
Kod:
Genişlet Daralt Kopyala
quest pre_event_heavens_cave begin
questimiz bu diyelim.

Bu şekilde kullanmanız gerekli.
Kod:
Genişlet Daralt Kopyala
pre_event_heavens_cave.giveItemStack(30178, 1218)

200den fazla item verme.webp


Not: Bu sorunu kaynak kodu ile de çözebilirsiniz lakin direk lua kodlarıyla çözüm yolu olarak bunu buldum.
 
Son düzenleme:
Uyarı: Bu konu açıldığından bu yana baya zaman geçmiş.
Muhtemelen daha fazla tartışma gerekli değildir ki bu durumda yeni bir konu başlatmayı öneririz. Eğer yine de cevabınızın gerekli olduğunu düşünüyorsanız buna rağmen cevap verebilirsiniz.
Geri
Üst