< ÇÖZÜLDÜ > Mob ölünce düşen eşya listesi

SFKY

Kızıltaş Madencisi
En iyi cevaplar
0
Merhaba ben bir eklenti üzerinde çalışıyorum mob ölünce yapılandırma dosyasındaki eşyalar düşecek;
PHP:
        List<String> dusenEsya = ana.bu.getConfig().getStringList("patron.dusen-esyalar");
        if (dusenEsya.contains(olay.getDrops())) {
            olay.getDrops().clear();
            olay.getDrops().add(new ItemStack(Material.getMaterial(dusenEsya.toString())));
            System.out.printIn("CALISTI!");
        }
böyle bir kod yazdım ne işe yaradı nede hata verdi sorun nerede olabilir @IRFN, @Schaffer79 ? yardım
 

IRFN

Sonoyuncu.Network
En iyi cevaplar
0
Öncelikle patron.dusen-esyalar'da yazan listenin getMaterial() methotuna uygun olduğundan emin ol.
Ayrıca olay.getDrops().add() methotuna tüm listeyi teker teker döndürmen lazım. Bunu for döngüsüyle yapabilirsin, yani dusenEsya.toString()'in işe yarayacağını sanmıyorum.

Kulanabileceğin bir iki for döngüsü örneği vereyim;
Basit bir istifleme methodu;
PHP:
for(int i =0; i < dusenEsya.size(); i++){
olay.getDrops().add(new ItemStack(Material.getMaterial(dusenEsya.get(i))));
}

Iterator methotu;
PHP:
for(Iterator<E> iter = list.iterator(); iter.hasNext();){
olay.getDrops().add(new ItemStack(Material.getMaterial(iter.next())));
}

Bunlar en basitleri, daha ayrıntılı istifleme metotlarına bakmak için;
Linki görebilmek için üye olmanız gerekiyor. Giriş yap veya üye ol.
 

SFKY

Kızıltaş Madencisi
En iyi cevaplar
0
Öncelikle patron.dusen-esyalar'da yazan listenin getMaterial() methotuna uygun olduğundan emin ol.
Ayrıca olay.getDrops().add() methotuna tüm listeyi teker teker döndürmen lazım. Bunu for döngüsüyle yapabilirsin, yani dusenEsya.toString()'in işe yarayacağını sanmıyorum.

Kulanabileceğin bir iki for döngüsü örneği vereyim;
Basit bir istifleme methodu;
PHP:
for(int i =0; i < dusenEsya.size(); i++){
olay.getDrops().add(new ItemStack(Material.getMaterial(dusenEsya.get(i))));
}

Iterator methotu;
PHP:
for(Iterator<E> iter = list.iterator(); iter.hasNext();){
olay.getDrops().add(new ItemStack(Material.getMaterial(iter.next())));
}

Bunlar en basitleri, daha ayrıntılı istifleme metotlarına bakmak için;
Linki görebilmek için üye olmanız gerekiyor. Giriş yap veya üye ol.
Anladım çok teşekkürler.
Edit: Denedim olmadı :/
 
Son düzenleme:

IRFN

Sonoyuncu.Network
En iyi cevaplar
0
Anladım çok teşekkürler.
Edit: Denedim olmadı :/
Debug yap o halde. Yapılan her işleme System.pringln(".... aşaması başarıyla gerçekleşti"); şeklinde bir konsol çıktısı ekle, konsoldan işlemi takip et, nerede takıldığını tespit edersen, çözüme daha çabuk ulaşırız.
 

SFKY

Kızıltaş Madencisi
En iyi cevaplar
0
Debug yap o halde. Yapılan her işleme System.pringln(".... aşaması başarıyla gerçekleşti"); şeklinde bir konsol çıktısı ekle, konsoldan işlemi takip et, nerede takıldığını tespit edersen, çözüme daha çabuk ulaşırız.
Teşekkürler sorunu çözdüm.
 
Üst