Çok eski bir web tarayıcısı kullanıyorsunuz. Bu veya diğer siteleri görüntülemekte sorunlar yaşayabilirsiniz.. Tarayıcınızı güncellemeli veya alternatif bir tarayıcı kullanmalısınız.
Bu konu çözüme ulaştırılmıştır. Çözüm için konuya yazılan tüm yorumları okumayı unutmayın. Eğer konudaki yorumlar sorununuzu çözmediyse yeni bir konu açabilirsiniz.
Durum
İçerik kilitlendiği için mesaj gönderimine kapatıldı.
1- OnClickedNPC zaten yok normalde, ben ekledim.
2- Npc mi diye kontrol etmeye gerek yok, zaten npc ise bu fonksiyon çağrılıyor.
3- Sonrasında vnum kontrolü yaptığınız blokta sürekli yeni bir nesne oluşturuyorsunuz ve sürekli Show ediyorsunuz.
Bir Toggle metodu yazmanız gerekiyor.
Madem vnum kontrolü yapmanız gerekiyor, virtual id yerine direkt vnum'ı geçirecek şekilde değiştirdim.
hocam onclickednpc yoktu bende böyle bir şey yaptım:
class GameWindow(ui.ScriptWindow): içine şunu ekledim:
def OnClickedNPC(self, vid, name):
import chr
if not chr.IsNPC(vid):
return
npcVnum = chr.GetRace(vid)
if npcVnum == 20381: # Bu VNUM yalnizdag NPC'sine ait
import uiyalnizdagarena
if not hasattr(self, "yalnizDagArenaDialog"):
self.yalnizDagArenaDialog = uiyalnizdagarena.YalnizDagArenaDialog()
self.yalnizDagArenaDialog.Show()
1- OnClickedNPC zaten yok normalde, ben ekledim.
2- Npc mi diye kontrol etmeye gerek yok, zaten npc ise bu fonksiyon çağrılıyor.
3- Sonrasında vnum kontrolü yaptığınız blokta sürekli yeni bir nesne oluşturuyorsunuz ve sürekli Show ediyorsunuz.
Bir Toggle metodu yazmanız gerekiyor.
Madem vnum kontrolü yapmanız gerekiyor, virtual id yerine direkt vnum'ı geçirecek şekilde değiştirdim.
self.wndYalnizDag isminde bir değişken oluşturup envanter penceresinden örnek alarak gerekli pencere düzenlemelerini yapın.
initialize etmek, destroy etmek vs.
Temelde böyle bir Toggle metodu ihtiyacınızı karşılayacaktır.
interfacemodule.py:
def ToggleYalnizDagArenaDialog(self):
if self.wndYalnizDag.IsShow():
self.wndYalnizDag.Hide()
else:
self.wndYalnizDag.Show()
1- OnClickedNPC zaten yok normalde, ben ekledim.
2- Npc mi diye kontrol etmeye gerek yok, zaten npc ise bu fonksiyon çağrılıyor.
3- Sonrasında vnum kontrolü yaptığınız blokta sürekli yeni bir nesne oluşturuyorsunuz ve sürekli Show ediyorsunuz.
Bir Toggle metodu yazmanız gerekiyor.
Madem vnum kontrolü yapmanız gerekiyor, virtual id yerine direkt vnum'ı geçirecek şekilde değiştirdim.
self.wndYalnizDag isminde bir değişken oluşturup envanter penceresinden örnek alarak gerekli pencere düzenlemelerini yapın.
initialize etmek, destroy etmek vs.
Temelde böyle bir Toggle metodu ihtiyacınızı karşılayacaktır.
interfacemodule.py:
def ToggleYalnizDagArenaDialog(self):
if self.wndYalnizDag.IsShow():
self.wndYalnizDag.Hide()
else:
self.wndYalnizDag.Show()