Çözüldü Login ekledim ancak başarısız oldum

Bu konu çözüme ulaştırılmıştır. Çözüm için konuya yazılan tüm yorumları okumayı unutmayın. Eğer konudaki yorumlar sorununuzu çözmediyse yeni bir konu açabilirsiniz.
Durum
İçerik kilitlendiği için mesaj gönderimine kapatıldı.

Whiterose

Sanane be kardeş...
Grafiker
MT Üye
Editör
Merhabalar alt kısımda gördüğüz gibi sunucu ile bağlantı kuramıyorum login ekledim herhangi bir anlatım mevcut değildi dosyaları attım ve bu şekilde oldu herhangi bir sysser vermiyor FTP üzerinden ch kısmında sysser düşmüyor. Yardımcı olabilir misiniz?
8aksxne.PNG
 
şunu bir dene

Python:
import ui
import net
import app
import dbg
import player
import background
import localeInfo
import playerSettingModule
import chrmgr
import colorInfo
import emotion
import stringCommander

class LoadingWindow(ui.ScriptWindow):
    def __init__(self, stream):
        print "NEW LOADING WINDOW -------------------------------------------------------------------------------"
        ui.Window.__init__(self)
        net.SetPhaseWindow(net.PHASE_WINDOW_LOAD, self)
        self.stream=stream
        self.errMsg=0
        self.update=0
        self.playerX=0
        self.playerY=0
        self.loadStepList=[]

    def __del__(self):
        print "---------------------------------------------------------------------------- DELETE LOADING WINDOW"
        net.SetPhaseWindow(net.PHASE_WINDOW_LOAD, 0)
        ui.Window.__del__(self)

    def Open(self):
        print "OPEN LOADING WINDOW -------------------------------------------------------------------------------"

        imgFileName = imgFileNameDict[app.GetRandom(0, len(imgFileNameDict) - 1)]
        if constInfo.LOAD_CURTAIN == 1:
            self.loadingImage.LoadImage(imgFileName)
            self.GetChild("GageBoard").Show()
            self.GetChild("Top_Line").Show() ## Eğer bu blokları kullanmıyorsanız silin.
            self.GetChild("Bottom_Line").Show() ## Eğer bu blokları kullanmıyorsanız silin.
        else:
            self.loadingImage.Hide()
            self.GetChild("GageBoard").Hide()
            self.GetChild("Top_Line").Hide() ## Eğer bu blokları kullanmıyorsanız silin.
            self.GetChild("Bottom_Line").Hide() ## Eğer bu blokları kullanmıyorsanız silin.
        try:
            pyScrLoader = ui.PythonScriptLoader()
            pyScrLoader.LoadScriptFile(self, "uiscript/LoadingWindow1.py")
        except:
            import exception
            exception.Abort("LodingWindow.Open - LoadScriptFile Error")

        try:
            self.errMsg=self.GetChild("ErrorMessage")
        except:
            import exception
            exception.Abort("LodingWindow.Open - LoadScriptFile Error")

        self.errMsg.Hide()

        self.Show()
        chrSlot=self.stream.GetCharacterSlot()
        net.SendSelectCharacterPacket(chrSlot)
        app.SetFrameSkip(0)

    def Close(self):
        print "---------------------------------------------------------------------------- CLOSE LOADING WINDOW"
        app.SetFrameSkip(1)
        self.loadStepList=[]
        self.errMsg=0
        self.ClearDictionary()
        self.Hide()

    def OnPressEscapeKey(self):
        app.SetFrameSkip(1)
        self.stream.SetLoginPhase()
        return True

    def __SetNext(self, next):
        if next:
            self.update=ui.__mem_func__(next)
        else:
            self.update=0

    # def __SetProgress(self, p):
        # if self.loadingGage:
            # self.loadingGage.SetPercentage(2+98*p/100, 100)

    def LoadData(self, playerX, playerY):
        self.playerX=playerX
        self.playerY=playerY

        self.__RegisterDungeonMapName()
        self.__RegisterSkill()
        self.__RegisterTitleName()
#        if app.ENABLE_GUILD_LEADER_GRADE_NAME:
#            self.__RegisterGuildLeaderGradeName()
        self.__RegisterColor()
        self.__RegisterEmotionIcon()

        self.loadStepList=[
            (0, ui.__mem_func__(self.__InitData)),
            (10, ui.__mem_func__(self.__LoadMap)),
            (30, ui.__mem_func__(self.__LoadSound)),
            (40, ui.__mem_func__(self.__LoadEffect)),
            (50, ui.__mem_func__(self.__LoadWarrior)),
            (60, ui.__mem_func__(self.__LoadAssassin)),
            (70, ui.__mem_func__(self.__LoadSura)),
            (80, ui.__mem_func__(self.__LoadShaman)),
            (90, ui.__mem_func__(self.__LoadSkill)),
            (93, ui.__mem_func__(self.__LoadEnemy)),
            (97, ui.__mem_func__(self.__LoadNPC)),

            # GUILD_BUILDING
            (98, ui.__mem_func__(self.__LoadGuildBuilding)),
            # END_OF_GUILD_BUILDING

            (100, ui.__mem_func__(self.__StartGame)),
        ]
#        if app.ENABLE_WOLFMAN_CHARACTER:
#            self.loadStepList+=[(100, ui.__mem_func__(self.__LoadWolfman)),]

        # self.__SetProgress(0)

    def OnUpdate(self):
        if len(self.loadStepList)>0:
            (progress, runFunc)=self.loadStepList[0]

            try:
                runFunc()

            except:
                self.errMsg.Show()
                self.loadStepList=[]

                dbg.TraceError(" !!! Failed to load game data : STEP [%d]" % (progress))
                app.Exit()

                return

            self.loadStepList.pop(0)
            # self.__SetProgress(progress)


    def __InitData(self):
        playerSettingModule.LoadGameData("INIT")

    def __RegisterDungeonMapName(self):
        background.RegisterDungeonMapName("metin2_map_spiderdungeon")
        background.RegisterDungeonMapName("metin2_map_monkeydungeon")
        background.RegisterDungeonMapName("metin2_map_monkeydungeon_02")
        background.RegisterDungeonMapName("metin2_map_monkeydungeon_03")
        background.RegisterDungeonMapName("metin2_map_deviltower1")

    def __RegisterSkill(self):

        race = net.GetMainActorRace()
        group = net.GetMainActorSkillGroup()
        empire = net.GetMainActorEmpire()

        playerSettingModule.RegisterSkill(race, group, empire)

    def __RegisterTitleName(self):
        for i in xrange(len(localeInfo.TITLE_NAME_LIST)):
            chrmgr.RegisterTitleName(i, localeInfo.TITLE_NAME_LIST[i])

#    if app.ENABLE_GUILD_LEADER_GRADE_NAME:
#        def __RegisterGuildLeaderGradeName(self):
#            for i in xrange(len(localeInfo.GUILD_LEADER_GRADE_NAME_LIST)):
#                chrmgr.RegisterGuildLeaderGradeName(i, localeInfo.GUILD_LEADER_GRADE_NAME_LIST[i])


    def __RegisterColor(self):

        ## Name
        NAME_COLOR_DICT = {
            chrmgr.NAMECOLOR_PC : colorInfo.CHR_NAME_RGB_PC,
            chrmgr.NAMECOLOR_NPC : colorInfo.CHR_NAME_RGB_NPC,
            chrmgr.NAMECOLOR_MOB : colorInfo.CHR_NAME_RGB_MOB,
            chrmgr.NAMECOLOR_PVP : colorInfo.CHR_NAME_RGB_PVP,
            chrmgr.NAMECOLOR_PK : colorInfo.CHR_NAME_RGB_PK,
            chrmgr.NAMECOLOR_PARTY : colorInfo.CHR_NAME_RGB_PARTY,
            chrmgr.NAMECOLOR_WARP : colorInfo.CHR_NAME_RGB_WARP,
            chrmgr.NAMECOLOR_WAYPOINT : colorInfo.CHR_NAME_RGB_WAYPOINT,

            chrmgr.NAMECOLOR_EMPIRE_MOB : colorInfo.CHR_NAME_RGB_EMPIRE_MOB,
            chrmgr.NAMECOLOR_EMPIRE_NPC : colorInfo.CHR_NAME_RGB_EMPIRE_NPC,
            chrmgr.NAMECOLOR_EMPIRE_PC+1 : colorInfo.CHR_NAME_RGB_EMPIRE_PC_A,
            chrmgr.NAMECOLOR_EMPIRE_PC+2 : colorInfo.CHR_NAME_RGB_EMPIRE_PC_B,
            chrmgr.NAMECOLOR_EMPIRE_PC+3 : colorInfo.CHR_NAME_RGB_EMPIRE_PC_C,
        }
        for name, rgb in NAME_COLOR_DICT.items():
            chrmgr.RegisterNameColor(name, rgb[0], rgb[1], rgb[2])

        ## Title
        TITLE_COLOR_DICT = (    colorInfo.TITLE_RGB_GOOD_4,
                                colorInfo.TITLE_RGB_GOOD_3,
                                colorInfo.TITLE_RGB_GOOD_2,
                                colorInfo.TITLE_RGB_GOOD_1,
                                colorInfo.TITLE_RGB_NORMAL,
                                colorInfo.TITLE_RGB_EVIL_1,
                                colorInfo.TITLE_RGB_EVIL_2,
                                colorInfo.TITLE_RGB_EVIL_3,
                                colorInfo.TITLE_RGB_EVIL_4,    )
        count = 0
        for rgb in TITLE_COLOR_DICT:
            chrmgr.RegisterTitleColor(count, rgb[0], rgb[1], rgb[2])
            count += 1

    def __RegisterEmotionIcon(self):
        emotion.RegisterEmotionIcons()

    def __LoadMap(self):
        net.Warp(self.playerX, self.playerY)

    def __LoadSound(self):
        playerSettingModule.LoadGameData("SOUND")

    def __LoadEffect(self):
        playerSettingModule.LoadGameData("EFFECT")

    def __LoadWarrior(self):
        playerSettingModule.LoadGameData("WARRIOR")

    def __LoadAssassin(self):
        playerSettingModule.LoadGameData("ASSASSIN")

    def __LoadSura(self):
        playerSettingModule.LoadGameData("SURA")

    def __LoadShaman(self):
        playerSettingModule.LoadGameData("SHAMAN")

#    if app.ENABLE_WOLFMAN_CHARACTER:
#        def __LoadWolfman(self):
#            playerSettingModule.LoadGameData("WOLFMAN")

    def __LoadSkill(self):
        playerSettingModule.LoadGameData("SKILL")

    def __LoadEnemy(self):
        playerSettingModule.LoadGameData("ENEMY")

    def __LoadNPC(self):
        playerSettingModule.LoadGameData("NPC")

    # GUILD_BUILDING
    def __LoadGuildBuilding(self):
        playerSettingModule.LoadGuildBuildingList(localeInfo.GUILD_BUILDING_LIST_TXT)
    # END_OF_GUILD_BUILDING

    def __StartGame(self):
        background.SetViewDistanceSet(background.DISTANCE0, 9999999)
        background.SelectViewDistanceNum(background.DISTANCE0)
        app.SetGlobalCenterPosition(self.playerX, self.playerY)
        net.StartGame()
Sysser:
0109 22:17:08254 :: Traceback (most recent call last):

0109 22:17:08255 ::   File "uiPhaseCurtain.py", line 61, in OnUpdate

0109 22:17:08255 ::   File "networkModule.py", line 150, in __ChangePhaseWindow

0109 22:17:08255 ::   File "introLoading.py", line 34, in Open

0109 22:17:08255 :: NameError
0109 22:17:08255 :: :
0109 22:17:08255 :: global name 'imgFileNameDict' is not defined
0109 22:17:08255 ::

böyle bir hata verdi
 
Python girintileri 4 boşluk olarak değil, TAB karakteri olarak kabul ediyor. Notepad'e copy paste yaptığımda TAB karakteri yoktu. Dolayısıyla henüz 15. satırdayken hata alman gerekirdi. Ama yukarıda 43. satırda aldığını söyledin. Yani bu paylaştığın kod tam olarak senin dosyanın kopyası değil. Direkt dosyayı ekle.
edit: Ya da çözüp ben vereyim:
buyrun ekledim.
 

Dosya Eklentileri

  • introloading.rar
    2,1 KB · Gösterim: 3
Sysser:
0109 22:17:08254 :: Traceback (most recent call last):

0109 22:17:08255 ::   File "uiPhaseCurtain.py", line 61, in OnUpdate

0109 22:17:08255 ::   File "networkModule.py", line 150, in __ChangePhaseWindow

0109 22:17:08255 ::   File "introLoading.py", line 34, in Open

0109 22:17:08255 :: NameError
0109 22:17:08255 :: :
0109 22:17:08255 :: global name 'imgFileNameDict' is not defined
0109 22:17:08255 ::

böyle bir hata verdi
şu eklediğin sistemin linkini verirmisin
 
aeldranın loading sistemini indirdim @ggns7 söylediğini şimdi anladım o sistemle bendeki introloading.py deki kodlarla alakası yok bendeki apayrı birşey :D araştırdım bir kaç farklı konuya baktım ama eklediğim loadingle alakası yok yani bulamadım onun konusunu @TheAdmin33 özür dilerim.
 
print ifadelerini
print "NEW LOADING WINDOW -------------------------------------------------------------------------------"
yerine
print("NEW LOADING WINDOW -------------------------------------------------------------------------------")
olarak düzenleyip tekrar dener misin? tab hatasından kasıt oradaki boşluğu hatalı okuyorsa eğer belirttiğim şekilde çözüm olabilir.
introloading dosyasının içinde imgFileNameDict eksik.

örnek söyle bir şey olması lazım;
Python:
        imgFileNameDict = {
            0 : "d:/ymir work/ui/intro/loading/1.jpg",
            1 : "d:/ymir work/ui/intro/loading/3.jpg",
            2 : "d:/ymir work/ui/intro/loading/4.jpg",
            3 : "d:/ymir work/ui/intro/loading/5.jpg",
            4 : "d:/ymir work/ui/intro/loading/2.jpg",
            5 : "d:/ymir work/ui/intro/loading/0.jpg",
        }
 
Evet şuan login ile alakalı bir durum değil, daha önceden bu logini eklemeden önce sorunsuz giriyordum herhangi bir sysser'de vermiyordu o zaman bu login kısmını burada noktalıyorum aldığım hata içinse aeldrayı tekrar kurup denerim çözemezsem yine sizlere danışırım yardımlarınız için çok teşekkür ederim allah razı olsun hakkınızı helal edin sağolun emekleriniz için :loveya:
Çözebilirdik ama sen bilirsin :)
 
Durum
İçerik kilitlendiği için mesaj gönderimine kapatıldı.
Geri