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

Whistle

Ruhsuz Filozof
Site yetkilisi
Kurucu
Kurumsal Üye
Geliştirici
Yardımsever Üye
Mesaj
11.567
Çözümler
551
Beğeni
12.236
Puan
5.915
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):
        -- 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:
questAdi.giveItemStack(30178, 1218)

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

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

200den fazla item verme.jpg


Not: Bu sorunu kaynak kodu ile de çözebilirsiniz lakin direk lua kodlarıyla çözüm yolu olarak bunu buldum.
 
Son düzenleme:
Geri
Üst