[PY] Premium Affect Göster/Gizle

therasmus

Üye
Üye
Mesaj
119
Çözümler
10
Beğeni
67
Puan
729
Ticaret Puanı
0
Sol üstteki iconları gösterip gizlemeye yarar.

root/game.py içinde

arat;
Python:
player.SetGameWindow(self)

altına ekle;
Python:
        self.AffectShowHideBtn = ui.CheckBox()
        self.AffectShowHideBtn.SetEvent(ui.__mem_func__(self.__AffectShow), "ON_CHECK", True)
        self.AffectShowHideBtn.SetEvent(ui.__mem_func__(self.__AffectHide), "ON_UNCKECK", False)
        self.AffectShowHideBtn.SetCheckStatus(constInfo.AffectShowHide)
        self.AffectShowHideBtn.SetPosition(0, 0)
        self.AffectShowHideBtn.Show()

game.py en alta ya da müsait bir yere ekle;
Python:
    def __AffectShow(self):
        constInfo.AffectShowHide = 1
        if constInfo.AffectShowHide == 1:
            self.affectShower.Show()
        chat.AppendChat(chat.CHAT_TYPE_INFO, "<Sistem> Ikonlar gosterildi.")

    def __AffectHide(self):
        constInfo.AffectShowHide = 0
        if constInfo.AffectShowHide == 0:
            self.affectShower.Hide()
        chat.AppendChat(chat.CHAT_TYPE_INFO, "<Sistem> Ikonlar gizlendi.")

root/costinfo.py müsait bir yere ekle;
Python:
AffectShowHide = 1

KANIT;

17-AffectShow.PNG


17-AffectHide.PNG


Dosyalarınızda CheckBox ekli olmayabilir. ui.py'de CheckBox'ı aratıp kontrol edebilirsiniz.
Eğer yoksa altan dosyayı indirip ekleyin.

Linkleri görebilmek için giriş yap veya kayıt ol.

Linkleri görebilmek için giriş yap veya kayıt ol.
 
En son bir moderatör tarafından düzenlenmiş:
Bunun bana chat'ı gizlemelisi lazım :D basınca sohbet satırı gizlenecek basınca açılacak
 
çok basit. chat gizleme zaten oyun seçeneklerinde var. kodlara bakarak checkbox a entegre et
self.viewChatButtonList.append(GetObject("view_chat_on_button"))
self.viewChatButtonList.append(GetObject("view_chat_off_button")) Bunları buldum da oraya affectShower yerine ne yazacağım viewChat mı?
 
Bu sistemi eklemeye çalışıyorum ancak checkbox hatası alıyorum ve link kırık yenileyebilecek varmı acaba ?
 
Bu sistemi eklemeye çalışıyorum ancak checkbox hatası alıyorum ve link kırık yenileyebilecek varmı acaba ?
ui.py'ye bunu ekle image yolunu kendine göre ayarla.
Python:
class CheckBox(Window):
    def __init__(self):
        Window.__init__(self)
        
        self.backgroundImage = None
        self.checkImage = None

        self.eventFunc = { "ON_CHECK" : None, "ON_UNCKECK" : None, }
        self.eventArgs = { "ON_CHECK" : None, "ON_UNCKECK" : None, }
    
        self.CreateElements()
        
    def __del__(self):
        Window.__del__(self)
        
        self.backgroundImage = None
        self.checkImage = None
        
        self.eventFunc = { "ON_CHECK" : None, "ON_UNCKECK" : None, }
        self.eventArgs = { "ON_CHECK" : None, "ON_UNCKECK" : None, }
        
    def CreateElements(self):
        self.backgroundImage = ImageBox()
        self.backgroundImage.SetParent(self)
        self.backgroundImage.AddFlag("not_pick")
        self.backgroundImage.LoadImage("d:/ymir work/ui/NitridCustom/refine/checkbox.tga")
        self.backgroundImage.Show()
        
        self.checkImage = ImageBox()
        self.checkImage.SetParent(self)
        self.checkImage.AddFlag("not_pick")
        self.checkImage.SetPosition(0, -4)
        self.checkImage.LoadImage("d:/ymir work/ui/NitridCustom/refine/checked.tga")
        self.checkImage.Hide()
        
        self.textInfo = TextLine()
        self.textInfo.SetParent(self)
        self.textInfo.SetPosition(20, -2)
        self.textInfo.Show()
        
        self.SetSize(self.backgroundImage.GetWidth() + self.textInfo.GetTextSize()[0], self.backgroundImage.GetHeight() + self.textInfo.GetTextSize()[1])
        
    def SetTextInfo(self, info):
        if self.textInfo:
            self.textInfo.SetText(info)
            
        self.SetSize(self.backgroundImage.GetWidth() + self.textInfo.GetTextSize()[0], self.backgroundImage.GetHeight() + self.textInfo.GetTextSize()[1])
        
    def SetCheckStatus(self, flag):
        if flag:
            self.checkImage.Show()
        else:
            self.checkImage.Hide()
    
    def GetCheckStatus(self):
        if self.checkImage:
            return self.checkImage.IsShow()
            
        return False
        
    def SetEvent(self, func, *args) :
        result = self.eventFunc.has_key(args[0])       
        if result :
            self.eventFunc[args[0]] = func
            self.eventArgs[args[0]] = args
        else :
            print "[ERROR] ui.py SetEvent, Can`t Find has_key : %s" % args[0]
    def OnMouseLeftButtonUp(self):
        if self.checkImage:
            if self.checkImage.IsShow():
                self.checkImage.Hide()

                if self.eventFunc["ON_UNCKECK"]:
                    apply(self.eventFunc["ON_UNCKECK"], self.eventArgs["ON_UNCKECK"])
            else:
                self.checkImage.Show()

                if self.eventFunc["ON_CHECK"]:
                    apply(self.eventFunc["ON_CHECK"], self.eventArgs["ON_CHECK"])

rardaki tgaları da istediğin bi yere atıp o yolu yazarsın.
 

Dosya Eklentileri

  • checkbox.rar
    806 byte · Gösterim: 8
ui.py'ye bunu ekle image yolunu kendine göre ayarla.
Python:
class CheckBox(Window):
    def __init__(self):
        Window.__init__(self)
      
        self.backgroundImage = None
        self.checkImage = None

        self.eventFunc = { "ON_CHECK" : None, "ON_UNCKECK" : None, }
        self.eventArgs = { "ON_CHECK" : None, "ON_UNCKECK" : None, }
  
        self.CreateElements()
      
    def __del__(self):
        Window.__del__(self)
      
        self.backgroundImage = None
        self.checkImage = None
      
        self.eventFunc = { "ON_CHECK" : None, "ON_UNCKECK" : None, }
        self.eventArgs = { "ON_CHECK" : None, "ON_UNCKECK" : None, }
      
    def CreateElements(self):
        self.backgroundImage = ImageBox()
        self.backgroundImage.SetParent(self)
        self.backgroundImage.AddFlag("not_pick")
        self.backgroundImage.LoadImage("d:/ymir work/ui/NitridCustom/refine/checkbox.tga")
        self.backgroundImage.Show()
      
        self.checkImage = ImageBox()
        self.checkImage.SetParent(self)
        self.checkImage.AddFlag("not_pick")
        self.checkImage.SetPosition(0, -4)
        self.checkImage.LoadImage("d:/ymir work/ui/NitridCustom/refine/checked.tga")
        self.checkImage.Hide()
      
        self.textInfo = TextLine()
        self.textInfo.SetParent(self)
        self.textInfo.SetPosition(20, -2)
        self.textInfo.Show()
      
        self.SetSize(self.backgroundImage.GetWidth() + self.textInfo.GetTextSize()[0], self.backgroundImage.GetHeight() + self.textInfo.GetTextSize()[1])
      
    def SetTextInfo(self, info):
        if self.textInfo:
            self.textInfo.SetText(info)
          
        self.SetSize(self.backgroundImage.GetWidth() + self.textInfo.GetTextSize()[0], self.backgroundImage.GetHeight() + self.textInfo.GetTextSize()[1])
      
    def SetCheckStatus(self, flag):
        if flag:
            self.checkImage.Show()
        else:
            self.checkImage.Hide()
  
    def GetCheckStatus(self):
        if self.checkImage:
            return self.checkImage.IsShow()
          
        return False
      
    def SetEvent(self, func, *args) :
        result = self.eventFunc.has_key(args[0])     
        if result :
            self.eventFunc[args[0]] = func
            self.eventArgs[args[0]] = args
        else :
            print "[ERROR] ui.py SetEvent, Can`t Find has_key : %s" % args[0]
    def OnMouseLeftButtonUp(self):
        if self.checkImage:
            if self.checkImage.IsShow():
                self.checkImage.Hide()

                if self.eventFunc["ON_UNCKECK"]:
                    apply(self.eventFunc["ON_UNCKECK"], self.eventArgs["ON_UNCKECK"])
            else:
                self.checkImage.Show()

                if self.eventFunc["ON_CHECK"]:
                    apply(self.eventFunc["ON_CHECK"], self.eventArgs["ON_CHECK"])

rardaki tgaları da istediğin bi yere atıp o yolu yazarsın.
Hocam aslında bende checkbox varmış anladığım kadarıyla otomatik refine sistemi için eklenmiş ama checkbox2 olarak eklenmiş senin paylaştığın anlatımda checkbox yazan yerleri checkbox2 şeklinde düzenlesem bir sorun çıkarırmı acaba ?

Edit : Yukarı da bahsettiğim gibi yaptım bir sorun çıkmadı teşekkür ederim konu için.
 
Son düzenleme:
Geri
Üst