Closed bilinenkisi closed 1 year ago
Kodu sıfırdan ben yazdığımda .addUserOption satırında .setRequired kullanmayıp opsiyonel bırakmıştım ID kısmı da çalışması için, yazılan kodda böyle bir düzenleme neden yaptıklarını anlamaya çalıştım düzenledikleri gibi çalıştırıp kodu denemeye başladığımda, .addUserOption da girilen değeri id değişkenine interaction.options.getUser('kullanıcı').id
olarak yani son satıra .id
yazıp id olarak eklediğimden dolayı hem kullanıcı isimleriyle yani etiketlenerek hem de ID ile gönderebiliyorsun bu yüzden ID opsiyonuna gerek kalmıyor ama durum böyle olunca boş değer gönderilemez
olarak eklediğim if koşulu gereksiz oluyor ve hali hazırda duran interaction.options.getString('id')
ve .addStringOption opsiyonu da gereksiz oluyor. Ben bu UserOption hem ID hem kullanıcı etiketlemesi ile çalıştığını anladıkları için böyle yaptıklarını düşündüğümden bir gönderi açmamıştım. Diğer türlü setRequired kaldırılırsa da sorunsuz çalışacaktır.
sorunlu çalışacaktır, istenilen, komuta işlev kazandıran gerekli iki argümandan biri bile required olmayınca çok dışına çıkıyoruz, az sonra tüm komuta refactor atacağım.
@abtonc Anladım, yardım edebileceğim bir şey varsa discord dan bana ulaşabilirsin discord: Aquila#0294
Her şey tamamlandı, cache yerine fetchliyoruz, id ile çekmeyi kaldırdık çünkü id ile etiketleme yapılabiliyor zaten, bknz: <@id> teşekkürler <3
Karşılaştığınız hatayı Açıklayın https://github.com/acikkaynak/discord-it-yardim-bot/blob/81e77435d5b91dae38b1d3e61a0bfcdb759799ea/commands/sescek.js#L9 bu satırda kullanıcı opsiyonu
setRequired(true)
ile düzenlendiğinden dolayı sescek komutunun özelliklerinden birisi olan etiketlenemeyen (chat odasını görememe vb. yetki kısıtlamalarından dolayı) kullancıları id bilgisi ile çekme özelliğini kullanılamaz hale getiriyor. Hatayı Tekrar Üretmek İçin Gerekli Adımlar Örneğin:Beklenen Davranış Hem kullanıcı hem de id opsiyonlarının opsiyonel bırakılması gerekmektedir.