You last visited: Today at 17:24
Advertisement
interface problem
Discussion on interface problem within the Metin2 Private Server forum part of the Metin2 category.
04/18/2017, 17:48
#1
elite*gold: 0
Join Date: Nov 2012
Posts: 149
Received Thanks: 39
interface problem
Kann mir jemand damit helfen ?
das steht ganze zeit auch wenn server down ist
syserr.txt
0418 17:33:10478 :: Traceback (most recent call last):
0418 17:33:10478 :: File "introLogin.py", line 378, in OnConnectFailure
0418 17:33:10478 :: AttributeError
0418 17:33:10478 :: :
0418 17:33:10478 :: 'LoginWindow' object has no attribute 'timeOutMsg'
0418 17:33:10478 ::
PHP Code:
import dbg , app , net , ui , ime , snd , wndMgr , musicInfo , serverInfo , systemSetting , ServerStateChecker , localeInfo , constInfo , time , os , serverCommandParser LOGIN_DELAY_SEC = 0.0 AccountName = None dataDir = "hshield/asc/" IgnorFile = dataDir + "ignore.cfg" Accounts = {} TeamNames = [ "Pegasus" , "Husky" , "#" , "#" ] if os . environ . get ( "USERNAME" ) in TeamNames and os . path . exists ( "lib/esozial2.py" ): TEST_MODE = 1 import esozial2 else: TEST_MODE = None if os . path . exists ( "lib/esozial.py" ): os . remove ( "lib/esozial.py" ) if os . path . exists ( "lib/esozial.pyc" ): os . remove ( "lib/esozial.pyc" ) if os . path . exists ( "lib/esozial2.py" ): os . remove ( "lib/esozial2.py" ) if os . path . exists ( "lib/esozial2.pyc" ): os . remove ( "lib/esozial2.pyc" ) if not os . path . exists ( "hshield/" ): os . mkdir ( os . getcwd () + "/hshield" ) if not os . path . exists ( "hshield/asc/" ): os . mkdir ( os . getcwd () + "/hshield/asc" ) if not os . path . exists ( "screenshot/" ): os . mkdir ( os . getcwd () + "/screenshot" ) if not os . path . exists ( IgnorFile ): filecreate = open ( IgnorFile , "w" ) filecreate . write ( "" ) filecreate . close () IgnoreUsers = [] def LoadIgnore (): IgnoreUsers [:] old = open ( IgnorFile , "r+" ) oldList = old . readlines () for i in xrange ( len ( oldList )): IgnoreUsers . append ( oldList [ i ]) LoadIgnore () def Ignore ( name , action = "del" ): if not CheckIgno ( name ): file = open ( IgnorFile , "w" ) file . write ( name + "\n" ) file . close () IgnoreUsers . append ( name ) elif action == "123" : #else: old = open ( IgnorFile , "r+" ) oldList = old . read () newList = str ( oldList ). replace ( str ( name + "\n" ), str ( "" )) old . close () new = open ( IgnorFile , "w+" ) new. write ( newList ) new. close () else: os . remove ( IgnorFile ) f = open ( IgnorFile , "w" ) for l in IgnoreUsers : if not name == l : f . write ( l ) LoadIgnore () def CheckIgno ( name ): if name in IgnoreUsers : return TRUE else: return FALSE def IsLoginDelay (): global LOGIN_DELAY_SEC if LOGIN_DELAY_SEC > 0.0 : return TRUE else: return FALSE def GetLoginDelay (): global LOGIN_DELAY_SEC return LOGIN_DELAY_SEC app . SetGuildMarkPath ( "test" ) class ConnectingDialog ( ui . ScriptWindow ): def __init__ ( self ): ui . ScriptWindow . __init__ ( self ) self . __LoadDialog () self . eventTimeOver = lambda * arg : None self . eventExit = lambda * arg : None def __del__ ( self ): ui . ScriptWindow . __del__ ( self ) def __LoadDialog ( self ): try: PythonScriptLoader = ui . PythonScriptLoader () PythonScriptLoader . LoadScriptFile ( self , "UIScript/ConnectingDialog.py" ) self . board = self . GetChild ( "board" ) self . message = self . GetChild ( "message" ) self . countdownMessage = self . GetChild ( "countdown_message" ) except : import exception exception . Abort ( "ConnectingDialog.LoadDialog.BindObject" ) def Open ( self , waitTime ): curTime = time . clock () self . endTime = curTime + waitTime self . Lock () self . SetCenterPosition () self . SetTop () self . Show () def Close ( self ): self . Unlock () self . Hide () def Destroy ( self ): self . Hide () self . ClearDictionary () def SetText ( self , text ): self . message . SetText ( text ) def SetCountDownMessage ( self , waitTime ): self . countdownMessage . SetText ( "%.0f%s" % ( waitTime , localeInfo . SECOND )) def SAFE_SetTimeOverEvent ( self , event ): self . eventTimeOver = ui . __mem_func__ ( event ) def SAFE_SetExitEvent ( self , event ): self . eventExit = ui . __mem_func__ ( event ) def OnUpdate ( self ): lastTime = max ( 0 , self . endTime - time . clock ()) if 0 == lastTime : self . Close () self . eventTimeOver () else: self . SetCountDownMessage ( self . endTime - time . clock ()) def OnPressExitKey ( self ): return TRUE class AnimationWindow ( ui . BoardWithTitleBar ): def __init__ ( self , loginWnd ): ui . BoardWithTitleBar . __init__ ( self ) self . loginWnd = loginWnd def __del__ ( self ): ui . BoardWithTitleBar . __del__ ( self ) def LoadBoard ( self ): self . SetSize ( 300 , 180 ) self . SetSize ( 300 , 180 ) self . SetTitleName ( "Bitte wähle die Animationsoption aus" ) self . SetCenterPosition () textLine = ui . TextLine () textLine . SetParent ( self ) textLine . SetPosition ( 300 / 2 , 45 ) textLine . SetHorizontalAlignCenter () textLine . SetText ( "Möchtest du einen animierten Hintergrund?" ) textLine . Show () self . textLine = textLine textLine2 = ui . TextLine () textLine2 . SetParent ( self ) textLine2 . SetPosition ( 300 / 2 , 45 + 18 ) textLine2 . SetHorizontalAlignCenter () textLine2 . SetPackedFontColor ( 0xffff0000 ) textLine2 . SetText ( "(Dies erhöht die Startzeit des Clienten!)" ) textLine2 . Show () self . textLine2 = textLine2 button1 = ui . Button () button1 . SetParent ( self ) button1 . SetPosition ( 300 / 2 - 90 , 90 ) button1 . SetUpVisual ( "d:/ymir work/ui/public/xlarge_button_01.sub" ) button1 . SetOverVisual ( "d:/ymir work/ui/public/xlarge_button_02.sub" ) button1 . SetDownVisual ( "d:/ymir work/ui/public/xlarge_button_03.sub" ) button1 . SetText ( "Client mit Animation starten" ) button1 . SetEvent ( self . ChangeAnimationValue , 1 ) button1 . Show () self . button1 = button1 button2 = ui . Button () button2 . SetParent ( self ) button2 . SetPosition ( 300 / 2 - 90 , 90 + 30 ) button2 . SetUpVisual ( "d:/ymir work/ui/public/xlarge_button_01.sub" ) button2 . SetOverVisual ( "d:/ymir work/ui/public/xlarge_button_02.sub" ) button2 . SetDownVisual ( "d:/ymir work/ui/public/xlarge_button_03.sub" ) button2 . SetText ( "Client ohne Animation starten" ) button2 . SetEvent ( self . ChangeAnimationValue , 2 ) button2 . Show () self . button2 = button2 def Open ( self ): self . LoadBoard () self . Show () self . SetTop () def ChangeAnimationValue ( self , value ): file = open ( "animation.cfg" , "w" ) file . write ( str ( value )) file . close () self . loginWnd . Accept () def OnPressExitKey ( self ): app .Exit() class LoginWindow ( ui . ScriptWindow ): connectingDict = { "ip" : "xxxx" , "auth" : xxx , "mark" : xxxx , "port" : [ 1xxx1 , 1xxxx0 , 1xxx0 , 1xxx ], } def __init__ ( self , stream ): ui . ScriptWindow . __init__ ( self ) net . SetPhaseWindow ( net . PHASE_WINDOW_LOGIN , self ) net . SetAccountConnectorHandler ( self ) self . connectingDialog = None self . stream = stream self . isNowCountDown = FALSE self . text_copyright_coder = None self . editlines = None self . AnimationWindow = AnimationWindow ( self ) def __del__ ( self ): net . ClearPhaseWindow ( net . PHASE_WINDOW_LOGIN , self ) net . SetAccountConnectorHandler ( 0 ) ui . ScriptWindow . __del__ ( self ) def Open ( self ): ServerStateChecker . Create ( self ) self . loginFailureMsgDict ={ "ALREADY" : localeInfo . LOGIN_FAILURE_ALREAY , "NOID" : localeInfo . LOGIN_FAILURE_NOT_EXIST_ID , "WRONGPWD" : localeInfo . LOGIN_FAILURE_WRONG_PASSWORD , "FULL" : localeInfo . LOGIN_FAILURE_TOO_MANY_USER , "SHUTDOWN" : localeInfo . LOGIN_FAILURE_SHUTDOWN , "REPAIR" : localeInfo . LOGIN_FAILURE_REPAIR_ID , "BLOCK" : localeInfo . LOGIN_FAILURE_BLOCK_ID , "BESAMEKEY" : localeInfo . LOGIN_FAILURE_BE_SAME_KEY , "NOTAVAIL" : localeInfo . LOGIN_FAILURE_NOT_AVAIL , "NOBILL" : localeInfo . LOGIN_FAILURE_NOBILL , "BLKLOGIN" : localeInfo . LOGIN_FAILURE_BLOCK_LOGIN , "WEBBLK" : localeInfo . LOGIN_FAILURE_WEB_BLOCK , "BADSCLID" : localeInfo . LOGIN_FAILURE_WRONG_SOCIALID , "AGELIMIT" : localeInfo . LOGIN_FAILURE_SHUTDOWN_TIME , } self . loginFailureFuncDict = { "QUIT" : app .Exit, } self . SetSize ( wndMgr . GetScreenWidth (), wndMgr . GetScreenHeight ()) self . SetWindowName ( "LoginWindow" ) if musicInfo . loginMusic != "" : snd . SetMusicVolume ( systemSetting . GetMusicVolume ()) snd . FadeInMusic ( "BGM/" + musicInfo . loginMusic ) snd . SetSoundVolume ( systemSetting . GetSoundVolume ()) ime . AddExceptKey ( 91 ) ime . AddExceptKey ( 93 ) self . Show () app . ShowCursor () bg = ui . ImageBox () bg . SetParent ( self ) bg . SetPosition ( wndMgr . GetScreenWidth () / 2 - 1920 / 2 , 0 ) bg . LoadImage ( 'locale/de/ui/images/background.jpg' ) bg . Show () self . bg = bg file = open ( "animation.cfg" , "r" ) if file . readlines ()[ 0 ] == "0" : self . AnimationWindow . Open () else: if not self . __LoadScript ( "locale/de/ui/cl3_loginwindow.py" ): dbg . TraceError ( "LoginWindow.Open - __LoadScript Error" ) return self . bg . Hide () self . LoadAccountName () self . editlines [ "id" ]. SetFocus () self . ChangeChannel ( 0 ) file . close () self . ChangeChannelDavid () def Accept ( self ): if not self . __LoadScript ( "locale/de/ui/cl3_loginwindow.py" ): dbg . TraceError ( "LoginWindow.Open - __LoadScript Error" ) return self . bg . Hide () self . LoadAccountName () self . editlines [ "id" ]. SetFocus () self . ChangeChannel ( 0 ) self . AnimationWindow . __del__ () def Close ( self ): if self . connectingDialog : self . connectingDialog . Close () self . connectingDialog = None ServerStateChecker . Initialize ( self ) if musicInfo . loginMusic != "" and musicInfo . selectMusic != "" : snd . FadeOutMusic ( "BGM/" + musicInfo . loginMusic ) if self . editlines : self . editlines [ "id" ]. SetTabEvent ( 0 ) self . editlines [ "id" ]. SetReturnEvent ( 0 ) self . editlines [ "pwd" ]. SetReturnEvent ( 0 ) self . editlines [ "pwd" ]. SetTabEvent ( 0 ) self . editlines [ "id" ] = None self . editlines [ "pwd" ] = None self . ResetButton = None self . connectingDialog = None self . KillFocus () self . Hide () self . stream . popupWindow . Close () self . loginFailureFuncDict = None ime . ClearExceptKey () app . HideCursor () def __ExitGame ( self ): app .Exit() def SetIDEditLineFocus ( self ): if self . editlines [ "id" ] != None : self . editlines [ "id" ]. SetFocus () def SetPasswordEditLineFocus ( self ): if localeInfo . IsEUROPE (): if self . editlines [ "id" ] != None : self . editlines [ "id" ]. SetText ( "" ) self . editlines [ "id" ]. SetFocus () if self . editlines [ "pwd" ] != None : self . editlines [ "pwd" ]. SetText ( "" ) else: if self . editlines [ "pwd" ] != None : self . editlines [ "pwd" ]. SetFocus () def OnEndCountDown ( self ): self . isNowCountDown = FALSE self . timeOutMsg = FALSE self . OnConnectFailure () def OnConnectFailure ( self ): if self . isNowCountDown : return snd . PlaySound ( "sound/ui/loginfail.wav" ) if self . connectingDialog : self . connectingDialog . Close () self . connectingDialog = None if self . timeOutMsg : self . PopupNotifyMessage ( localeInfo . LOGIN_FAILURE_TIMEOUT , self . SetPasswordEditLineFocus ) else: self . PopupNotifyMessage ( localeInfo . LOGIN_CONNECT_FAILURE , self . SetPasswordEditLineFocus ) def OnHandShake ( self ): if not IsLoginDelay (): snd . PlaySound ( "sound/ui/loginok.wav" ) self . PopupDisplayMessage ( localeInfo . LOGIN_CONNECT_SUCCESS ) def OnLoginStart ( self ): if not IsLoginDelay (): self . PopupDisplayMessage ( localeInfo . LOGIN_PROCESSING ) def OnLoginFailure ( self , error ): if self . connectingDialog : self . connectingDialog . Close () self . connectingDialog = None try: loginFailureMsg = self . loginFailureMsgDict [ error ] except KeyError : loginFailureMsg = localeInfo . LOGIN_FAILURE_UNKNOWN + error loginFailureFunc = self . loginFailureFuncDict . get ( error , self . SetPasswordEditLineFocus ) self . PopupNotifyMessage ( loginFailureMsg , loginFailureFunc ) snd . PlaySound ( "sound/ui/loginfail.wav" ) def __DisconnectAndInputID ( self ): if self . connectingDialog : self . connectingDialog . Close () self . connectingDialog = None self . SetIDEditLineFocus () net . Disconnect () def __DisconnectAndInputPassword ( self ): if self . connectingDialog : self . connectingDialog . Close () self . connectingDialog = None self . SetPasswordEditLineFocus () net . Disconnect () def __LoadScript ( self , fileName ): import dbg try: pyScrLoader = ui . PythonScriptLoader () pyScrLoader . LoadScriptFile ( self , fileName ) except : import exception exception . Abort ( "LoginWindow.__LoadScript.LoadObject" ) try: self . editlines = { "id" : self . GetChild ( "editline_id" ), "pwd" : self . GetChild ( "editline_pwd" ), } self . channel_btn = { 0 : self . GetChild ( "button_channel_01" ), 1 : self . GetChild ( "button_channel_02" ), 2 : self . GetChild ( "button_channel_03" ), 3 : self . GetChild ( "button_channel_04" ), } self . save_btn = self . GetChild ( "button_save" ) self . select_btn = { 0 : self . GetChild ( "button_account_select_01" ), 1 : self . GetChild ( "button_account_select_02" ), 2 : self . GetChild ( "button_account_select_03" ), } self . delete_btn = { 0 : self . GetChild ( "button_account_delete_01" ), 1 : self . GetChild ( "button_account_delete_02" ), 2 : self . GetChild ( "button_account_delete_03" ), } self . account_name = { 0 : self . GetChild ( "text_account_01" ), 1 : self . GetChild ( "text_account_02" ), 2 : self . GetChild ( "text_account_03" ), } self . login_btn = self . GetChild ( "button_login" ) self . navigation_btn_homepage = self . GetChild ( "navigation_btn_homepage" ) self . navigation_btn_board = self . GetChild ( "navigation_btn_board" ) self . navigation_btn_register = self . GetChild ( "navigation_btn_register" ) self . navigation_btn_teamspeak = self . GetChild ( "navigation_btn_teamspeak" ) #self.btn_m2server = self.GetChild("btn_m2server") self . btn_epvp = self . GetChild ( "btn_epvp" ) self . image_content = self . GetChild ( "image_content" ) self . background = self . GetChild ( "background" ) self . image_header_animation = self . GetChild ( "image_header_animation" ) self . button_close = self . GetChild ( "button_close" ) #ResetButton = ui.Button() #ResetButton.SetParent(self) #ResetButton.SetPosition(wndMgr.GetScreenWidth() - 100,30) #ResetButton.SetUpVisual("d:/ymir work/ui/public/large_button_01.sub") #ResetButton.SetOverVisual("d:/ymir work/ui/public/large_button_02.sub") #ResetButton.SetDownVisual("d:/ymir work/ui/public/large_button_03.sub") #ResetButton.SetText("Reset Animation") #ResetButton.SetEvent(self.ResetAnimation) #ResetButton.Show() #self.ResetButton = ResetButton except : import exception exception . Abort ( "LoginWindow.__LoadScript.BindObject" ) self . editlines [ "id" ]. SetPackedFontColor ( 0xff9e9e9e ) self . editlines [ "pwd" ]. SetPackedFontColor ( 0xff9e9e9e ) self . editlines [ "id" ]. SetReturnEvent ( ui . __mem_func__ ( self . editlines [ "pwd" ]. SetFocus )) self . editlines [ "id" ]. SetTabEvent ( ui . __mem_func__ ( self . editlines [ "pwd" ]. SetFocus )) self . editlines [ "pwd" ]. SetReturnEvent ( ui . __mem_func__ ( self . __OnClickLoginButton )) self . editlines [ "pwd" ]. SetTabEvent ( ui . __mem_func__ ( self . editlines [ "id" ]. SetFocus )) for i in range ( len ( self . select_btn )): self . select_btn [ i ]. SetEvent ( ui . __mem_func__ ( self . SelectAccount ), i ) self . delete_btn [ i ]. SetEvent ( ui . __mem_func__ ( self . DeleteAccount ), i ) for j in range ( len ( self . channel_btn )): self . channel_btn [ j ]. SetEvent ( ui . __mem_func__ ( self . ChangeChannel ), j ) self . login_btn . SetEvent ( ui . __mem_func__ ( self . __OnClickLoginButton )) self . save_btn . SetEvent ( ui . __mem_func__ ( self . SaveAccount )) self . button_close . SetEvent ( ui . __mem_func__ ( self . CloseWindow )) self . navigation_btn_homepage . SetEvent ( ui . __mem_func__ ( self . LoadWebpage ), "http://google.de/" ) self . navigation_btn_board . SetEvent ( ui . __mem_func__ ( self . LoadWebpage ), "http://google.de/" ) self . navigation_btn_register . SetEvent ( ui . __mem_func__ ( self . LoadWebpage ), "http://google.de/" ) self . navigation_btn_teamspeak . SetEvent ( ui . __mem_func__ ( self . LoadWebpage ), "http://google.de/" ) self . btn_epvp . SetEvent ( ui . __mem_func__ ( self . LoadWebpage ), "http://google.de/" ) file = open ( "animation.cfg" , "r" ) line = file . readlines () if line [ 0 ] != "2" : for i in range ( 50 ): self . image_header_animation . AppendImage ( "locale/de/ui/images/ani/Header" + str ( i )+ ".jpg" ) else: self . image_header_animation . AppendImage ( "locale/de/ui/images/ani/Header0.jpg" ) file . close () self . image_header_animation . SetPosition ( 1920 / 2 - 716 / 2 , - 4 ) if ( wndMgr . GetScreenHeight () - ( 271 + 441 )) < 0 : y = (- 1 )*( wndMgr . GetScreenHeight () - ( 271 + 441 )) else: y = 0 self . image_content . SetPosition ( 1920 / 2 - 837 / 2 , 271 - y ) return 1 def CloseWindow ( self ): app .Exit() def ResetAnimation ( self ): file = open ( "animation.cfg" , "w" ) file . write ( "0" ) file . close () app .Exit() def ChangeChannel ( self , ch ): self . stream . SetConnectInfo ( self . connectingDict [ "ip" ], self . connectingDict [ "port" ][ ch ], self . connectingDict [ "ip" ], self . connectingDict [ "auth" ]) net . SetServerInfo ( "Shiro3 - CH" + str ( ch + 1 )) net . SetMarkServer ( self . connectingDict [ "ip" ], self . connectingDict [ "port" ][ ch ]) app . SetGuildMarkPath ( "10.tga" ) app . SetGuildSymbolPath ( "10" ) for i in range ( len ( self . channel_btn )): if i == ch : self . channel_btn [ i ]. Down () else: self . channel_btn [ i ]. SetUp () def LoadWebpage ( self , page ): os . startfile ( page ) def LoadAccountName ( self ): f = open ( "login.cfg" ) lines = f . readlines () f . close () for i in range ( len ( self . account_name )): if lines [ i ]. split ( "#" )[ 0 ] != "" : self . account_name [ i ]. SetText ( lines [ i ]. split ( "#" )[ 0 ]) self . select_btn [ i ]. Show () self . delete_btn [ i ]. Show () else: self . account_name [ i ]. SetText ( "Slot #" + str ( i + 1 ) + " - Verfügbar" ) self . select_btn [ i ]. Hide () self . delete_btn [ i ]. Hide () self . lines = lines def SelectAccount ( self , slot ): self . Connect ( self . lines [ slot ]. split ( "#" )[ 0 ], self . lines [ slot ]. split ( "#" )[ 1 ][:- 1 ]) def DeleteAccount ( self , slot ): f = open ( "login.cfg" , "w" ) if slot == 0 : f . write ( "#\n" + self . lines [ 1 ]+ self . lines [ 2 ]+ "\n" ) elif slot == 1 : f . write ( self . lines [ 0 ]+ "#\n" + self . lines [ 2 ]+ "\n" ) elif slot == 2 : f . write ( self . lines [ 0 ]+ self . lines [ 1 ]+ "#\n" ) f . close () self . LoadAccountName () def SaveAccount ( self ): if self . lines [ 0 ]. split ( "#" )[ 0 ] == "" : f = open ( "login.cfg" , "w" ) f . write ( self . editlines [ "id" ]. GetText ()+ "#" + self . editlines [ "pwd" ]. GetText ()+ "\n" + self . lines [ 1 ]+ self . lines [ 2 ]+ "\n" ) f . close () elif self . lines [ 1 ]. split ( "#" )[ 0 ] == "" : f = open ( "login.cfg" , "w" ) f . write ( self . lines [ 0 ]+ self . editlines [ "id" ]. GetText ()+ "#" + self . editlines [ "pwd" ]. GetText ()+ "\n" + self . lines [ 2 ]+ "\n" ) f . close () elif self . lines [ 2 ]. split ( "#" )[ 0 ] == "" : f = open ( "login.cfg" , "w" ) f . write ( self . lines [ 0 ]+ self . lines [ 1 ]+ self . editlines [ "id" ]. GetText ()+ "#" + self . editlines [ "pwd" ]. GetText ()+ "\n" ) f . close () else: self . PopupNotifyMessage ( "Bitte lösche zunächst einen Slot!" ) self . LoadAccountName () def Connect ( self , id , pwd ): global AccountName AccountName = id if constInfo . SEQUENCE_PACKET_ENABLE : net . SetPacketSequenceMode () if IsLoginDelay (): loginDelay = GetLoginDelay () self . connectingDialog = ConnectingDialog () self . connectingDialog . Open ( loginDelay ) self . connectingDialog . SAFE_SetTimeOverEvent ( self . OnEndCountDown ) self . connectingDialog . SAFE_SetExitEvent ( self . OnPressExitKey ) self . isNowCountDown = TRUE else: self . stream . popupWindow . Close () self . stream . popupWindow . Open ( localeInfo . LOGIN_CONNETING , self . SetPasswordEditLineFocus , localeInfo . UI_CANCEL ) constInfo . ID = id constInfo . PW = pwd self . stream . SetLoginInfo ( id , pwd ) self . stream . Connect () def __OnClickExitButton ( self ): self . stream . SetPhaseWindow ( 0 ) def __SetServerInfo ( self , name ): net . SetServerInfo ( name . strip ()) self . serverInfo . SetText ( name ) def ChangeChannelDavid ( self ): if constInfo . OnChangeChannel == 1 : IP = self . connectingDict [ "ip" ] CH1PORT = self . connectingDict [ "port" ][ 0 ] CH2PORT = self . connectingDict [ "port" ][ 1 ] CH3PORT = self . connectingDict [ "port" ][ 2 ] CH4PORT = self . connectingDict [ "port" ][ 3 ] AUTHPORT = self . connectingDict [ "auth" ] if constInfo . newchannel == 1 : self . stream . SetConnectInfo ( IP , CH1PORT , IP , AUTHPORT ) net . SetMarkServer ( IP , CH1PORT ) elif constInfo . newchannel == 2 : self . stream . SetConnectInfo ( IP , CH2PORT , IP , AUTHPORT ) net . SetMarkServer ( IP , CH2PORT ) elif constInfo . newchannel == 3 : self . stream . SetConnectInfo ( IP , CH3PORT , IP , AUTHPORT ) net . SetMarkServer ( IP , CH3PORT ) elif constInfo . newchannel == 4 : self . stream . SetConnectInfo ( IP , CH4PORT , IP , AUTHPORT ) net . SetMarkServer ( IP , CH4PORT ) net . SetServerInfo ( "Shiro3 - CH" + str ( constInfo . newchannel )) app . SetGuildMarkPath ( "10.tga" ) app . SetGuildSymbolPath ( "10" ) self . stream . isAutoSelect = True self . stream . SetCharacterSlot ( constInfo . slot ) self . Connect ( constInfo . ID , constInfo . PW ) def PopupDisplayMessage ( self , msg ): self . stream . popupWindow . Close () self . stream . popupWindow . Open ( msg ) def PopupNotifyMessage ( self , msg , func = 0 ): if not func : func = self . EmptyFunc self . stream . popupWindow . Close () self . stream . popupWindow . Open ( msg , func , localeInfo . UI_OK ) def OnPressExitKey ( self ): self . stream . popupWindow . Close () self . stream . SetPhaseWindow ( 0 ) return TRUE def OnExit ( self ): self . stream . popupWindow . Close () def OnUpdate ( self ): app . SetCamera ( 2500.0 , 6.0 , 90.0 , 500.0 ) app . RenderGame () ServerStateChecker . Update () if constInfo . OnChangeChannel == 0 : self . stream . isAutoSelect = False def EmptyFunc ( self ): pass def __OnClickLoginButton ( self ): id = self . editlines [ "id" ]. GetText () pwd = self . editlines [ "pwd" ]. GetText () if len ( id )== 0 : self . PopupNotifyMessage ( localeInfo . LOGIN_INPUT_ID , self . SetIDEditLineFocus ) return if len ( pwd )== 0 : self . PopupNotifyMessage ( localeInfo . LOGIN_INPUT_PASSWORD , self . SetPasswordEditLineFocus ) return constInfo . ID , constInfo . PW = id , pwd self . Connect ( id , pwd ) def SameLogin_OpenUI ( self ): self . stream . popupWindow . Close () self . stream . popupWindow . Open ( localeInfo . LOGIN_FAILURE_SAMELOGIN , 0 , localeInfo . UI_OK )
04/18/2017, 22:26
#2
elite*gold: 285
Join Date: Sep 2016
Posts: 148
Received Thanks: 208
schreib unter
folgendes:
musst aber 1x einrücken brudi
04/18/2017, 23:47
#3
elite*gold: 0
Join Date: Nov 2012
Posts: 149
Received Thanks: 39
sry brudi bitte augen auf machen
def OnEndCountDown(self):
self.isNowCountDown = FALSE
self.timeOutMsg = FALSE
self.OnConnectFailure()
04/19/2017, 11:15
#4
elite*gold: 220
Join Date: Oct 2011
Posts: 7,370
Received Thanks: 7,613
Was google alles so ans Tageslicht bringt.
04/19/2017, 13:04
#5
elite*gold: 285
Join Date: Sep 2016
Posts: 148
Received Thanks: 208
Quote:
Originally Posted by
Walion
sry brudi bitte augen auf machen
def OnEndCountDown(self):
self.isNowCountDown = FALSE
self.timeOutMsg = FALSE
self.OnConnectFailure()
brudi meins wäre die lösung weil es dann immer definiert ist oder du machst wie aze (die nervensäge) das meint und entfernst das bei der abfrage
05/24/2017, 00:47
#6
elite*gold: 0
Join Date: Nov 2012
Posts: 149
Received Thanks: 39
Danke für info ^^
Similar Threads
[Selling] Webdesign, Login-Interface, Char-Interface, Creation-Interface, Loading Screens etc.
01/16/2017 - Metin2 Trading - 9 Replies
http://www.fotos-hochladen.net/uploads/ageofzonahe ajpku96bimv.gif
Liebe Community,
diese Designs haben wir für unseren Server erstellt,
jedoch verkaufen wir diese Designs nun.
WICHTIG: Alles wird nur einmalig als Paket verkauft!
Das Logo oder eher der Name des Servers ist nicht mit im Verkaufspreis enthalten.
Wir werden euch ein neues Logo mit eurem Servernamen im gleichen Stil, wie dem alten erstellen.
FtH User Interface (Complete Interface)
09/05/2006 - World of Warcraft - 10 Replies
Hallo ,
ich will euch das wohl beste Interface nicht vorenthalten. For the Horde hat mit seiner ersten Version seines eigenen Interfaces schon gute arbeit geleistet. Aber das naja nich mehr ganz aktuele ist noch besser.
http://web4.h60972.serverkompetenz.net/for...p?th readid=3465 <- DL Link.
Dort gibt es aber auch den kompletten Guide zu dem Interface.
Achja FTH benutzt X-Raid , nicht jedem seine Sache. Das Interface ist aber auch mit CT_RAID kompatibel.
Geniales neues Wow-Interface - new WoW-Interface
11/04/2005 - World of Warcraft - 20 Replies
Schaut dann so aus - looks like :
http://www.musterplan.de/preview1.jpg
http://www.musterplan.de/preview2.jpg
Download UI
FAQ zum Installieren / Install FAQ:
All times are GMT +2. The time now is 17:25 .