Administrator
Administrator
  • Mesaje: 4965
    Membru din: 07 Aug 2024, 18:53
  • Reacții: 125368
  • Mesaje utile: 47
  • Status: Pe aici.. 🤠
    Server: Saga2 - Soon
  • Regat: Jinno
  • [ID Discord]
  • *Descriere:

    Adauga o imbunatatire QoL de pe serverul Oficial de Metin2:
    - Un checkbox care apare pe fereastra popup de confirmare atunci cand vrei sa vinzi un item la NPC.
    - Daca este bifat acest checkbox, nu va mai aparea fereastra de confirmare atunci cand vei vinde un item.

    Mai exact, jucatorul poate bifa o optiune pentru a sari peste fereastra de confirmare la sell, iar sistemul va retine alegerea.

    *Poze / Video:
    [Py] Official popup confirm checkbox - Mesaj 1 - Imagine 1
    04-23-2026, 11-59-55.png (1008.41 KiB) Vizualizat de 989 ori
    *Link download / Code:

    Deschide uiInventory.py si cauta:

    Cod: Selectaţi tot

    	def __SellItem(self, window_type, itemSlotPos):
    		if not player.IsEquipmentSlot(window_type, itemSlotPos):
    			itemIndex = player.GetItemIndex(window_type, itemSlotPos)
    			itemCount = player.GetItemCount(window_type, itemSlotPos)
    
    			self.sellingSlotWindow = window_type
    			self.sellingSlotNumber = itemSlotPos
    			self.sellingSlotitemIndex = itemIndex
    			self.sellingSlotitemCount = itemCount
    
    			item.SelectItem(itemIndex)
    			## ¾ÈƼ Ç÷¹±× °Ë»ç ºüÁ®¼­ Ãß°¡
    			## 20140220
    			if item.IsAntiFlag(item.ANTIFLAG_SELL):
    				popup = uiCommon.PopupDialog()
    				popup.SetText(localeInfo.SHOP_CANNOT_SELL_ITEM)
    				popup.SetAcceptEvent(self.__OnClosePopupDialog)
    				popup.Open()
    				self.pop = popup
    				return
    
    Adauga sub:
    Conținut: Ascuns
    Reacționează ❤️ la acest mesaj și conținutul se va afișa automat.


    Deschide uiInventory.py si cauta:

    Cod: Selectaţi tot

    			self.questionDialog.Open()
    
    Inlocuieste cu:
    Conținut: Ascuns
    Reacționează ❤️ la acest mesaj și conținutul se va afișa automat.


    Deschide uiInventory.py si cauta:

    Cod: Selectaţi tot

    	def SellItem(self):
    
    Inlocuieste cu:
    Conținut: Ascuns
    Reacționează ❤️ la acest mesaj și conținutul se va afișa automat.


    Deschide uiInventory.py si cauta:

    Cod: Selectaţi tot

    	def OnCloseQuestionDialog(self):
    
    Inlocuieste cu:
    Conținut: Ascuns
    Reacționează ❤️ la acest mesaj și conținutul se va afișa automat.


    Deschide uiShop.py si cauta:

    Cod: Selectaţi tot

    	def SellAttachedItem(self):
    
    In aceasta functie cauta:

    Cod: Selectaţi tot

    			if localeInfo.IsBRAZIL():
    				itemIndex = player.GetItemIndex(attachedSlotWindow, attachedSlotPos)
    				item.SelectItem(itemIndex)
    			else:
    				item.SelectItem(attachedItemIndex)
    
    			if item.IsAntiFlag(item.ANTIFLAG_SELL):
    				popup = uiCommon.PopupDialog()
    				popup.SetText(localeInfo.SHOP_CANNOT_SELL_ITEM)
    				popup.SetAcceptEvent(self.__OnClosePopupDialog)
    				popup.Open()
    				self.popup = popup
    				return
    
    			if player.IsValuableItem(attachedSlotWindow, attachedSlotPos):
    
    Adauga sub:
    Conținut: Ascuns
    Reacționează ❤️ la acest mesaj și conținutul se va afișa automat.


    Deschide uiShop.py si cauta:

    Cod: Selectaţi tot

    				questionDialog.Open()
    
    Inlocuieste cu:
    Conținut: Ascuns
    Reacționează ❤️ la acest mesaj și conținutul se va afișa automat.


    Deschide uiCommon.py si cauta:

    Cod: Selectaţi tot

    class QuestionDialog(ui.ScriptWindow):
    
    Adauga sub:
    Conținut: Ascuns
    Reacționează ❤️ la acest mesaj și conținutul se va afișa automat.


    Deschide uiCommon.py si cauta:

    Cod: Selectaţi tot

    	def __init__(self, layer = "UI"):
    		ui.ScriptWindow.__init__(self)
    		self.__CreateDialog()
    
    Adauga sub:
    Conținut: Ascuns
    Reacționează ❤️ la acest mesaj și conținutul se va afișa automat.


    Deschide uiCommon.py si cauta:

    Cod: Selectaţi tot

    	def Open(self,
    
    Inlocuieste cu:
    Conținut: Ascuns
    Reacționează ❤️ la acest mesaj și conținutul se va afișa automat.


    In functia Open adauga:
    Conținut: Ascuns
    Reacționează ❤️ la acest mesaj și conținutul se va afișa automat.


    Deschide uiCommon.py si adauga in clasa QuestionDialog:
    Conținut: Ascuns
    Reacționează ❤️ la acest mesaj și conținutul se va afișa automat.


    Deschide ui.py si adauga:
    Conținut: Ascuns
    Reacționează ❤️ la acest mesaj și conținutul se va afișa automat.


    Deschide constInfo.py si adauga:
    Conținut: Ascuns
    Reacționează ❤️ la acest mesaj și conținutul se va afișa automat.

    Nou Cum descarc de pe TeraBox?

    Afișează detalii Ascunde detalii
    • Este asemănător cu Mega.nz
    • Instalați-vă clientul lor de Download de aici
    • Faceți-vă un cont (vă puteți loga cu Facebook / Google / etc)
    • Nou Dacă nu vreți să descărcați clientul de Download, folosiți acest site
    • Gata! Acum puteți descărca resursele rapid & simplu.

    De ce folosim TeraBox?

    • Este gratuit
    • Primești 1TB de spațiu gratuit la orice cont creat!
    • Este ușor de folosit și varianta premium este foarte ieftină
    • Fișierele nu sunt șterse niciodată
    TeraBox logo
    See full signature
    Membru Începător
    Membru Începător
    Mesaje: 14
    Membru din: 15 Mai 2026, 23:32
  • Reacții: 46
  • Mesaje utile: 0
  • Status: Pierd vremea ^.^
  • Regat: Jinno
  • [ID Discord]
  • Medalii

    Avatar utilizator - Kori
    Membru Începător
    Membru Începător

    Mesaj

    90% Official but Thanks for the release
    Premium
    Premium
  • Mesaje: 23
    Membru din: 17 Ian 2025, 15:42
  • Reacții: 7
  • Mesaje utile: 0
  • Medalii

    Avatar utilizator - Hound
    Premium
    Premium

    Mesaj

    [FIX] PopupNoticeCheckBox - SetCheckBox parametri inversați

    Salut,
    Am observat o mică eroare în tutorial care face ca checkbox-ul să nu funcționeze corect.
    Problema:
    În fișierul uiCommon.py, în funcția SetCheckBox, parametrii sunt folosiți invers.
    Când SetEvent apelează funcția, ordinea argumentelor este:
    SetCheckBox(self, "check"/"uncheck", True/False)
    Deci on_off primește string-ul "check" sau "uncheck", iar event primește valoarea booleană True sau False.
    Tutorialul original salvează on_off în constInfo.POPUP_CHECK_BOX_ON_OFF, ceea ce înseamnă că variabila va primi un string în loc de un boolean — și checkbox-ul nu va funcționa niciodată corect.

    Fix:

    Înlocuiți:

    Cod: Selectaţi tot

    def SetCheckBox(self, on_off, event):
        constInfo.POPUP_CHECK_BOX_ON_OFF = on_off
    Cu:

    Cod: Selectaţi tot

    def SetCheckBox(self, on_off, event):
        constInfo.POPUP_CHECK_BOX_ON_OFF = event
    Schimbare mică, dar esențială pentru funcționarea corectă a sistemului.
    Spor la treabă!

    Înapoi la “Îmbunătățiri”

    Informații

    Utilizatori ce navighează pe acest forum: jezzyvictor și 1 vizitator

    Discord ID copiat: