Bu hata Metin2 client'ındaki bir Python UI dosyasından geliyor ve şu satır çok önemli:
bash
GemShopWindow.__LoadWindow.BindObject - <type 'exceptions.KeyError'>: 'CurrentPageBack'
Hatanın Anlamı:
uiChestDrop.py dosyasındaki __LoadWindow fonksiyonu içinde, ui.py dosyasının 3081. satırında bir GetChild çağrısı yapılıyor ve bu çağrıda "CurrentPageBack" isimli bir child (UI elemanı) bulunamıyor.
Muhtemel Sebep:
- CurrentPageBack adında bir UI öğesi XML (.wnd dosyası) içinde tanımlı değil.
- uiChestDrop.py veya GemShopWindow sınıfı bir pencereyi yüklüyor ama bu pencereye ait XML eksik veya yanlış tanımlı.
Çözüm Adımları:
- İlgili .wnd dosyasını aç(uiscript/chestdropwindow.py ya da uiscript/gemshopwindow.py olabilir).
- İçinde "CurrentPageBack" isimli bir nesne (örneğin Name = "CurrentPageBack") olduğundan emin ol.
- Eğer yoksa, bu elemanı manuel olarak tanımlaman gerekiyor.
- Geçici olarak hatayı engellemek için:
Eğer bu element gerçekten kullanılmıyorsa ve kodda hata veriyorsa, GetChild("CurrentPageBack") satırını:
python
try:
self.CurrentPageBack = self.GetChild("CurrentPageBack")
except:
self.CurrentPageBack = None
şeklinde hata yakalama (try-except) bloğu ile sarabilirsin.
- Tam olarak hangi pencere açılmaya çalışılıyor?
uiChestDrop.py içinde .LoadWindow("...") satırını bul ve hangi UI dosyasını yüklüyor bak. Ona göre eksik olan kısmı tamamla.