Honorable Member Mali 41832 Posted December 18, 2022 Honorable Member Share Posted December 18, 2022 (edited) This is the hidden content, please Sign In or Sign Up This is the hidden content, please Sign In or Sign Up Mouse wheel moves relative to the top window, not the window the mouse is pointing to. Reversed from 22.2.7.0 Official Binary. Edited December 18, 2022 by Mali 271 2 1 1 1 1 53 7 128 Link to comment Share on other sites More sharing options...
Active Member hachiwari 138 Posted December 18, 2022 Active Member Share Posted December 18, 2022 Your repo is not public 1 Link to comment Share on other sites More sharing options...
Honorable Member Mali 41832 Posted December 18, 2022 Author Honorable Member Share Posted December 18, 2022 (edited) Just now, hachiwari said: Your repo is not public I know, use metin2download Edited December 18, 2022 by Mali 1 1 3 Link to comment Share on other sites More sharing options...
Kafa 153 Posted December 18, 2022 Share Posted December 18, 2022 @ Mali What's next ? Reversed Binary Source ? XD 1 Link to comment Share on other sites More sharing options...
Honorable Member Mali 41832 Posted December 18, 2022 Author Honorable Member Share Posted December 18, 2022 (edited) 3 minutes ago, Kafa said: @ Mali What's next ? Reversed Binary Source ? XD loot filter. I wouldn't normally share these but they are required for the loot filter. Clip mask was reversed at summer, this is reversed today. Edited December 18, 2022 by Mali 1 1 Link to comment Share on other sites More sharing options...
Kafa 153 Posted December 18, 2022 Share Posted December 18, 2022 1 minute ago, Mali said: loot filter I love you, from the deapest of my heart. 1 Link to comment Share on other sites More sharing options...
CristalForce 0 Posted January 7, 2023 Share Posted January 7, 2023 thanks for sharning . . Link to comment Share on other sites More sharing options...
Deso 721 Posted January 14, 2023 Share Posted January 14, 2023 We should check for nullptr in this place: //Find in void CWindowManager::SetTopUIWindow() (PythonWindowManager.cpp) #if defined(__BL_MOUSE_WHEEL_TOP_WINDOW__) m_pTopWindow = pTopWindow; #endif ///Replace #if defined(__BL_MOUSE_WHEEL_TOP_WINDOW__) if (m_pTopWindow) { m_pTopWindow = pTopWindow; } #endif Link to comment Share on other sites More sharing options...
Honorable Member Mali 41832 Posted January 14, 2023 Author Honorable Member Share Posted January 14, 2023 34 minutes ago, Deso said: We should check for nullptr in this place: //Find in void CWindowManager::SetTopUIWindow() (PythonWindowManager.cpp) #if defined(__BL_MOUSE_WHEEL_TOP_WINDOW__) m_pTopWindow = pTopWindow; #endif ///Replace #if defined(__BL_MOUSE_WHEEL_TOP_WINDOW__) if (m_pTopWindow) { m_pTopWindow = pTopWindow; } #endif Please don't comment on things you don't know 1 1 Link to comment Share on other sites More sharing options...
Premium TAUMP 838 Posted January 14, 2023 Premium Share Posted January 14, 2023 1 hour ago, Deso said: We should check for nullptr in this place: //Find in void CWindowManager::SetTopUIWindow() (PythonWindowManager.cpp) #if defined(__BL_MOUSE_WHEEL_TOP_WINDOW__) m_pTopWindow = pTopWindow; #endif ///Replace #if defined(__BL_MOUSE_WHEEL_TOP_WINDOW__) if (m_pTopWindow) { m_pTopWindow = pTopWindow; } #endif Nice, unfix. 3 Link to comment Share on other sites More sharing options...
Premium msnas 1417 Posted January 14, 2023 Premium Share Posted January 14, 2023 4 hours ago, Deso said: We should check for nullptr in this place: //Find in void CWindowManager::SetTopUIWindow() (PythonWindowManager.cpp) #if defined(__BL_MOUSE_WHEEL_TOP_WINDOW__) m_pTopWindow = pTopWindow; #endif ///Replace #if defined(__BL_MOUSE_WHEEL_TOP_WINDOW__) if (m_pTopWindow) { m_pTopWindow = pTopWindow; } #endif I understand the objective of checking but m_pTopWindow is considered NULL by default. Meaning the code wouldn't work without wndMgr.SetWheelTopWindow There's no reason to use that piece of code. Link to comment Share on other sites More sharing options...
Deso 721 Posted January 15, 2023 Share Posted January 15, 2023 (edited) 4 hours ago, msnas said: I understand the objective of checking but m_pTopWindow is considered NULL by default. Meaning the code wouldn't work without wndMgr.SetWheelTopWindow There's no reason to use that piece of code. For me my Client crashed there when i used the wheel on character details, thats why i put the check. Edited January 15, 2023 by Deso 1 Link to comment Share on other sites More sharing options...
Honorable Member Mali 41832 Posted January 15, 2023 Author Honorable Member Share Posted January 15, 2023 (edited) 2 hours ago, Deso said: For me my Client crashed there when i used the wheel on character details, thats why i put the check. It's funny that you keep repeating your mistake. With your “Fix” Edited January 15, 2023 by Mali 1 Link to comment Share on other sites More sharing options...
bl1nd3r 42 Posted February 21, 2023 Share Posted February 21, 2023 Thank you, will try it. Link to comment Share on other sites More sharing options...
Raviel 34 Posted April 4, 2023 Share Posted April 4, 2023 Hi, unfortunately, since I'm new, it's difficult for me to understand some things. That's why I wanted to ask: where exactly should I add the code from the .py file inside the root folder in the downloaded file? Thank you also for your sharing. Link to comment Share on other sites More sharing options...
Active Member nazox 213 Posted August 3, 2023 Active Member Share Posted August 3, 2023 (edited) Thanks @ Malí for the system, work great. Sorry if this isn't the right section, but think it's silly to open a post for this, still, if it's not right, delete it and apologise. With your permission, seeing that there are many people who don't know how to make it work and such would like to port what have achieved after trial and error, sorry if there is something wrong. 1.Normal Character: Spoiler 1.Search your last Import, in my case is; import uiCharacterDetails and add: Spoiler from ui import ScrollBar 2.Now Search in Class CharacterWindow this: Spoiler def Show(self): self.__LoadWindow() if app.DETAILS_UI: self.__InitCharacterDetailsUIButton() if self.chDetailsWnd and self.isOpenedDetailsWnd: self.chDetailsWnd.Show() ui.ScriptWindow.Show(self) 3.Add After ui.ScriptWindow.Show(self): Spoiler if app.MOUSE_WHEEL_TOP_WINDOW: wndMgr.SetWheelTopWindow(self.hWnd) 4.Now search in the same Class this function: Spoiler def Close(self): if 0 != self.toolTipSkill: self.toolTipSkill.Hide() if app.DETAILS_UI: if self.chDetailsWnd and self.chDetailsWnd.IsShow(): self.chDetailsWnd.Hide() self.Hide() 5.And after self.Hide() add: Spoiler if app.MOUSE_WHEEL_TOP_WINDOW: wndMgr.ClearWheelTopWindow() 6.Now search: Spoiler def GetState(self): return self.state 7.And after, add: Spoiler if app.MOUSE_WHEEL_TOP_WINDOW: def OnMouseWheelButtonUp(self): if self.GetState() == "STATUS": self.SetState("SKILL") elif self.GetState() == "SKILL": self.SetState("EMOTICON") elif self.GetState() == "EMOTICON": self.SetState("QUEST") if self.ScrollBar: self.ScrollBar.OnUp() return True return False def OnMouseWheelButtonDown(self): if self.GetState() == "SKILL": self.SetState("STATUS") elif self.GetState() == "EMOTICON": self.SetState("SKILL") elif self.GetState() == "QUEST": self.SetState("EMOTICON") if self.ScrollBar: self.ScrollBar.OnDown() return True return False Result: https://metin2.download/picture/Myh5nKeTsS6uSY6YDg2Kz8R1q9lunne0/.gif 2.Bonus Board Like GF (Mali version) special thanks to @ Owsap for code: Spoiler 1.Open UiCharacterDetails.py and search; Spoiler def Show(self): ui.ScriptWindow.Show(self) self.SetTop() 2.Replace wit this: Spoiler def Show(self): ui.ScriptWindow.Show(self) self.SetTop() if app.MOUSE_WHEEL_TOP_WINDOW: wndMgr.SetWheelTopWindow(self.hWnd) 3.Now search; Spoiler def OnScroll(self): self.RefreshLabel() 4.Add now: Spoiler if app.MOUSE_WHEEL_TOP_WINDOW: def OnMouseWheelButtonUp(self): if self.ScrollBar: self.ScrollBar.OnUp() return True return False def OnMouseWheelButtonDown(self): if self.ScrollBar: self.ScrollBar.OnDown() return True return False Result: https://metin2.download/picture/lsqz2B7A20m2Mj0D30oNL7bj7fa7409q/.gif 3.Special Storage: Spoiler 1.Add imports and ScrollBar Spoiler import wndMgr from ui import ScrollBar 2.Search; Spoiler class ExtendedInventoryWindow(ui.ScriptWindow): add after def __init Spoiler self.ScrollBar = ScrollBar() 3.Now Search in the same clas: Spoiler def show(self): add after: Spoiler if app.MOUSE_WHEEL_TOP_WINDOW: wndMgr.SetWheelTopWindow(self.hWnd) 4.Now search: Spoiler def close(self): add: Spoiler if app.MOUSE_WHEEL_TOP_WINDOW: wndMgr.ClearWheelTopWindow() 5.Now search : Spoiler def SetInventoryPage(self, page): self.inventoryPageIndex = page for y in range(0,len(self.inventoryTab)): self.inventoryTab[y].SetUp() self.inventoryTab[page].Down() self.RefreshBagSlotWindow() Add now: Spoiler if app.MOUSE_WHEEL_TOP_WINDOW: def OnMouseWheelButtonUp(self): if self.inventoryType in [0, 1, 2, 3, 4]: self.SetInventoryType(self.inventoryType + 1) elif self.inventoryType == 5: # El 1 tipo de inventario pass elif self.ScrollBar: self.ScrollBar.OnUp() def OnMouseWheelButtonDown(self): if self.inventoryType in [5, 4, 3, 2, 1]: self.SetInventoryType(self.inventoryType - 1) elif self.inventoryType == 0: # Límite superior, no permitir decrementar más allá de 6 pass elif self.ScrollBar: self.ScrollBar.OnDown() Now you can move in special storage like this; https://metin2.download/picture/rFXz6EN5Pt84nF4wtV70EHI7Zaz186Eu/.gif edit1: If you have more brain than me, you can use : Spoiler self.SetInventoryPage(self.inventoryPageIndex + 1) self.SetInventoryPage(self.inventoryPageIndex - 1) To move in space 1, 2 and 3. Sorry if you found some problems or don't like the code, thanks again edit2: don't know because ycant use the normal "y" so, change in the last update the "y". Spoiler def SetInventoryPage(self, page): [....] Edited August 3, 2023 by Metin2 Dev International Core X - External 2 Internal 5 Nicks: Nazox™ Krone™ Nagato™ Yahiko™ Yakiro™ Proyecto: Trabajando en el. Compañeros & firma: DreamHQ - 2009-2015 [Nostalgia] Link to comment Share on other sites More sharing options...
Active+ Member HFWhite 497 Posted May 23 Active+ Member Share Posted May 23 (edited) Edited May 23 by Metin2 Dev International Core X - External 2 Internal Link to comment Share on other sites More sharing options...
Recommended Posts