Marty-v58/client/pack/root/uisystem.py
2024-10-25 00:07:46 -05:00

177 lines
4.3 KiB
Python

import net
import app
import ui
import uiOption
import uiSystemOption
import uiGameOption
import uiScriptLocale
import networkModule
import constInfo
import localeInfo
import uiMoveChannel
SYSTEM_MENU_FOR_PORTAL = False
###################################################################################################
## System
class SystemDialog(ui.ScriptWindow):
def __init__(self):
ui.ScriptWindow.__init__(self)
self.__Initialize()
def __del__(self):
ui.ScriptWindow.__del__(self)
def __Initialize(self):
self.eventOpenHelpWindow = None
self.systemOptionDlg = None
self.gameOptionDlg = None
self.interface = None
def BindInterface(self, interface):
self.interface = interface
def LoadDialog(self):
if SYSTEM_MENU_FOR_PORTAL:
self.__LoadSystemMenu_ForPortal()
else:
self.__LoadSystemMenu_Default()
def __LoadSystemMenu_Default(self):
pyScrLoader = ui.PythonScriptLoader()
pyScrLoader.LoadScriptFile(self, "uiscript/systemdialog.py")
self.GetChild("system_option_button").SAFE_SetEvent(self.__ClickSystemOptionButton)
self.GetChild("game_option_button").SAFE_SetEvent(self.__ClickGameOptionButton)
self.GetChild("change_button").SAFE_SetEvent(self.__ClickChangeCharacterButton)
self.GetChild("logout_button").SAFE_SetEvent(self.__ClickLogOutButton)
self.GetChild("exit_button").SAFE_SetEvent(self.__ClickExitButton)
self.GetChild("help_button").SAFE_SetEvent(self.__ClickHelpButton)
self.GetChild("cancel_button").SAFE_SetEvent(self.Close)
if constInfo.IN_GAME_SHOP_ENABLE:
self.GetChild("mall_button").SAFE_SetEvent(self.__ClickInGameShopButton)
if app.ENABLE_MOVE_CHANNEL:
self.GetChild("movechannel_button").SAFE_SetEvent(self.__ClickMoveChannelButton)
def __LoadSystemMenu_ForPortal(self):
pyScrLoader = ui.PythonScriptLoader()
pyScrLoader.LoadScriptFile(self, "uiscript/systemdialog_forportal.py")
self.GetChild("system_option_button").SAFE_SetEvent(self.__ClickSystemOptionButton)
self.GetChild("game_option_button").SAFE_SetEvent(self.__ClickGameOptionButton)
self.GetChild("change_button").SAFE_SetEvent(self.__ClickChangeCharacterButton)
self.GetChild("exit_button").SAFE_SetEvent(self.__ClickExitButton)
self.GetChild("help_button").SAFE_SetEvent(self.__ClickHelpButton)
self.GetChild("cancel_button").SAFE_SetEvent(self.Close)
@ui.WindowDestroy
def Destroy(self):
self.ClearDictionary()
if self.gameOptionDlg:
self.gameOptionDlg.Destroy()
if self.systemOptionDlg:
self.systemOptionDlg.Destroy()
self.__Initialize()
def SetOpenHelpWindowEvent(self, event):
self.eventOpenHelpWindow = event
def OpenDialog(self):
self.Show()
def __ClickChangeCharacterButton(self):
self.Close()
net.ExitGame()
def __OnClosePopupDialog(self):
self.popup = None
def __ClickLogOutButton(self):
if SYSTEM_MENU_FOR_PORTAL:
if app.loggined:
self.Close()
net.ExitApplication()
else:
self.Close()
net.LogOutGame()
else:
self.Close()
net.LogOutGame()
def __ClickExitButton(self):
self.Close()
net.ExitApplication()
def __ClickSystemOptionButton(self):
self.Close()
if not self.systemOptionDlg:
self.systemOptionDlg = uiSystemOption.OptionDialog()
self.systemOptionDlg.Show()
def __ClickGameOptionButton(self):
self.Close()
if not self.gameOptionDlg:
self.gameOptionDlg = uiGameOption.OptionDialog()
self.gameOptionDlg.Show()
if app.ENABLE_MOVE_CHANNEL:
def __ClickMoveChannelButton(self):
self.Close()
if self.interface:
self.interface.ToggleMoveChannelWindow()
def __ClickHelpButton(self):
self.Close()
if None != self.eventOpenHelpWindow:
self.eventOpenHelpWindow()
def __ClickInGameShopButton(self):
self.Close()
net.SendChatPacket("/in_game_mall")
def Close(self):
self.Hide()
return True
def OnBlockMode(self, mode):
uiGameOption.blockMode = mode
if self.gameOptionDlg:
self.gameOptionDlg.OnBlockMode(mode)
def OnChangePKMode(self):
if self.gameOptionDlg:
self.gameOptionDlg.OnChangePKMode()
def OnPressExitKey(self):
self.Close()
return True
def OnPressEscapeKey(self):
self.Close()
return True
if app.__BL_MULTI_LANGUAGE__:
def LanguageChange(self):
if self.systemOptionDlg:
self.systemOptionDlg.LanguageChange()
if app.__BL_MULTI_LANGUAGE_ULTIMATE__:
def LanguageChangeAnonymous(self):
if self.systemOptionDlg:
self.systemOptionDlg.LanguageChangeAnonymous()