Agora Metin2 1
Agora Metin2
Karan2offical 1
Karan2offical
mavzermete 1
mavzermete
M 1
m2referencee
Fethi Polat 1
Fethi Polat
InfernoShade 1
InfernoShade
farkmt2official 1
farkmt2official
romegames 1
romegames
bikral 1
bikral
PrimeAC 1
PrimeAC
Hikaye Ekle

Cevaplanmadı Bossun Rastgele item atması

  • Konuyu başlatan Konuyu başlatan detasxd
  • Başlangıç tarihi Başlangıç tarihi
  • Cevaplar Cevaplar 5
  • Görüntüleme Görüntüleme 346

detasxd

Level 3
Telefon Numarası Onaylanmış Üye TC Kimlik Numarası Doğrulanmış Üye
TM Üye
Üye
Katılım
12 Nis 2024
Konular
16
Mesajlar
248
Çözüm
4
Online süresi
1mo 5d
Reaksiyon Skoru
94
Altın Konu
0
TM Yaşı
2 Yıl 2 Ay 5 Gün
Başarım Puanı
63
MmoLira
962
DevLira
3
Ticaret - 0%
0   0   0

HERAKLES Otomatik Avlı kalıcı sunucu. 19 Haziran'da açılıyor. Atius & Wizard güvencesiyle hemen kayıt ol, ön kayıt ödülleri aktif. HEMEN TIKLA!

Serverimdeki bir boss itemleri damageye göre değil de rastgele atıyor yani biri gelip 2 3 düz vursa bile en değerli itemi ona atabiliyor bunun ile ilgili uğraştım ama bir çözüme kavuşamadım aklında bir çözüm yolu olan yardımcı olursa sevinirim
 
Serverimdeki bir boss itemleri damageye göre değil de rastgele atıyor yani biri gelip 2 3 düz vursa bile en değerli itemi ona atabiliyor bunun ile ilgili uğraştım ama bir çözüme kavuşamadım aklında bir çözüm yolu olan yardımcı olursa sevinirim
Kod:
quest boss_damage begin
    state start begin
        when LOGIN begin
            -- Oyuncu giriş yaptığında değişkeni sıfırla
            pc.setqf("boss_damage", 0)
        end

        when BOSS_ID.take_damage begin
            -- Oyuncunun boss'a verdiği hasarı kaydet
            local damage = npc.get_damage()
            pc.setqf("boss_damage", pc.getqf("boss_damage") + damage)
        end

        when BOSS_ID.kill begin
            -- Boss öldüğünde en çok damage veren oyuncuyu belirle
            local players = npc.get_nearby_pc()
            local top_damage = 0
            local top_player = nil

            for _, player in ipairs(players) do
                local damage = player.getqf("boss_damage")
                if damage > top_damage then
                    top_damage = damage
                    top_player = player
                end
            end

            -- En çok damage veren oyuncuya ödül ver
            if top_player then
                top_player.give_item(ITEM_ID, 1)
                top_player.setqf("boss_damage", 0)  -- Değişkeni sıfırla
            end
        end
    end
end

Nasıl Kullanılır?

BOSS_ID → Boss'un race ID'si ile değiştir.​

ITEM_ID → Boss'tan düşecek itemin ID'si ile değiştir.
 
Kod:
quest boss_damage begin
    state start begin
        when LOGIN begin
            -- Oyuncu giriş yaptığında değişkeni sıfırla
            pc.setqf("boss_damage", 0)
        end

        when BOSS_ID.take_damage begin
            -- Oyuncunun boss'a verdiği hasarı kaydet
            local damage = npc.get_damage()
            pc.setqf("boss_damage", pc.getqf("boss_damage") + damage)
        end

        when BOSS_ID.kill begin
            -- Boss öldüğünde en çok damage veren oyuncuyu belirle
            local players = npc.get_nearby_pc()
            local top_damage = 0
            local top_player = nil

            for _, player in ipairs(players) do
                local damage = player.getqf("boss_damage")
                if damage > top_damage then
                    top_damage = damage
                    top_player = player
                end
            end

            -- En çok damage veren oyuncuya ödül ver
            if top_player then
                top_player.give_item(ITEM_ID, 1)
                top_player.setqf("boss_damage", 0)  -- Değişkeni sıfırla
            end
        end
    end
end

Nasıl Kullanılır?

BOSS_ID → Boss'un race ID'si ile değiştir.​

ITEM_ID → Boss'tan düşecek itemin ID'si ile değiştir.
Calls undeclared function! :
npc.get_damage
npc.get_nearby_pc
player.getqf
top_player.give_item
top_player.setqf
Abort (core dumped)
 
Kod:
quest boss_damage begin
    state start begin
        when LOGIN begin
            -- Oyuncu giriş yaptığında değişkeni sıfırla
            pc.setqf("boss_damage", 0)
        end

        when BOSS_ID.take_damage begin
            -- Oyuncunun boss'a verdiği hasarı kaydet
            local damage = npc.get_damage()
            pc.setqf("boss_damage", pc.getqf("boss_damage") + damage)
        end

        when BOSS_ID.kill begin
            -- Boss öldüğünde en çok damage veren oyuncuyu belirle
            local players = npc.get_nearby_pc()
            local top_damage = 0
            local top_player = nil

            for _, player in ipairs(players) do
                local damage = player.getqf("boss_damage")
                if damage > top_damage then
                    top_damage = damage
                    top_player = player
                end
            end

            -- En çok damage veren oyuncuya ödül ver
            if top_player then
                top_player.give_item(ITEM_ID, 1)
                top_player.setqf("boss_damage", 0)  -- Değişkeni sıfırla
            end
        end
    end
end

Nasıl Kullanılır?

BOSS_ID → Boss'un race ID'si ile değiştir.​

ITEM_ID → Boss'tan düşecek itemin ID'si ile değiştir.
Bu questin çalışması için src'ye bu questte verilen functionların tamamı işlenmeli
 
Bu questin çalışması için src'ye bu questte verilen functionların tamamı işlenmeli
Kişide ekli değilse zaten çalısmaz src tabanlı eklentileri eklemesi gerekli kişi yazarsa yardımcı olalım
 

Şu an konuyu görüntüleyenler (Toplam : 0, Üye: 0, Misafir: 0)

Geri
Üst