Opublikowano 6 Marca6 Mar Siema, próbowałem to dodać i mam takie coś w sysserze:0306 20:37:10452 :: Traceback (most recent call last):0306 20:37:10453 :: File "networkModule.py", line 266, in SetGamePhase0306 20:37:10453 :: File "game.py", line 115, in init0306 20:37:10453 :: File "game.py", line 1873, in __ServerCommand_Build0306 20:37:10453 :: AttributeError0306 20:37:10453 :: : 0306 20:37:10453 :: 'NoneType' object has no attribute 'Open'0306 20:37:10453 :: GAME.PY w załączniku. Miałby ktoś coś na to pomysł? game.py
Opublikowano 7 Marca7 Mar Nie dałeś żadnych plików do wglądu. Ale z doświadczeni wiem, że jego systemy przeważnie z wycieku nie są kompletne i wywalają kanały
Opublikowano 7 Marca7 Mar Autor 7 godzin temu, KoYGeR napisał(a):Tutaj masz wybór umiejętnościPróbowałem ten Twój, ale jakoś mi to nie chciało śmigać, jednak nie chciałem zawracać głowy swoimi problemami10 godzin temu, Rain94 napisał(a):Nie dałeś żadnych plików do wglądu. Ale z doświadczeni wiem, że jego systemy przeważnie z wycieku nie są kompletne i wywalają kanałyByć może packa nie jest kompletna, dlatego wyrzuca jakieś błędy.
Opublikowano 7 Marca7 Mar Sam game.py niewiele tu pomoże przydałoby się jeszcze plik uiselectskill, a najlepiej paczka systemu, który próbujesz zaimplementować.
Opublikowano 7 Marca7 Mar Po pierwsze używaj pycharm do edycji plików Pythona, to unikniesz wielu problemów. Po drugie Notepad++> ctrl+f> szukaj w plikach, ustawiasz lokalizacje na root>”nonetype” i szukasz wyniku w pliku, który edytowałeś. Jak znajdziesz to szukasz pod tym def open(). Jesli jest, to wcięcia zrypane, jeśli nie ma, to chyba wiesz co dalej.
Opublikowano 7 Marca7 Mar Rozwiązanie Błąd, mówi jasno masz niezainicjowany obiekt skillSelect i wywołujesz na nim metodę 'Open'. Sprawdzając Twój plik game.py widzę że wywołujesz inicjalizację po self.__ServerCommand_Build() if app.ENABLE_SKILL_SELECT_FEATURE: self.skillSelect = uiselectskill.SkillSelectWindow() self.skillSelect.Hide() Spróbuj przenieść ten blok kodu przed te dwa wywołania w ten sposób: def __init__(self, stream): ui.ScriptWindow.__init__(self, "GAME") self.SetWindowName("game") net.SetPhaseWindow(net.PHASE_WINDOW_GAME, self) player.SetGameWindow(self) if app.ENABLE_SKILL_SELECT_FEATURE: self.skillSelect = None self.quickSlotPageIndex = 0 self.lastPKModeSendedTime = 0 self.pressNumber = None self.guildWarQuestionDialog = None self.interface = None self.targetBoard = None self.console = None self.mapNameShower = None self.affectShower = None self.playerGauge = None if app.ENABLE_KEYBOARD_SETTINGS: self.wndKeyChange = None self.stream=stream self.interface = interfaceModule.Interface() self.interface.MakeInterface() self.interface.ShowDefaultWindows() self.curtain = uiPhaseCurtain.PhaseCurtain() self.curtain.speed = 0.03 self.curtain.Hide() self.targetBoard = uiTarget.TargetBoard() self.targetBoard.SetWhisperEvent(ui.__mem_func__(self.interface.OpenWhisperDialog)) self.targetBoard.Hide() self.console = consoleModule.ConsoleWindow() self.console.BindGameClass(self) self.console.SetConsoleSize(wndMgr.GetScreenWidth(), 200) self.console.Hide() self.mapNameShower = uiMapNameShower.MapNameShower() self.affectShower = uiAffectShower.AffectShower() self.playerGauge = uiPlayerGauge.PlayerGauge(self) self.playerGauge.Hide() if app.ENABLE_SKILL_SELECT_FEATURE: self.skillSelect = uiselectskill.SkillSelectWindow() self.skillSelect.Hide() self.__SetQuickSlotMode() self.__ServerCommand_Build() self.__ProcessPreservedServerCommand() if app.ENABLE_KEYBOARD_SETTINGS: self.wndKeyChange = uiKeyChange.KeyChangeWindow(self, self.interface) self.ADDKEYBUFFERCONTROL = player.KEY_ADDKEYBUFFERCONTROL self.ADDKEYBUFFERALT = player.KEY_ADDKEYBUFFERALT self.ADDKEYBUFFERSHIFT = player.KEY_ADDKEYBUFFERSHIFTSprawdź też, czy masz włączony w ogóle ten moduł i czy dodałeś wpis w locale_inc.h z #define ENABLE_SKILL_SELECT_FEATURE
Opublikowano 7 Marca7 Mar Autor Dziękuję za pomoc, trochę się z tym bawiłem i to nie było wszystko, żeby to ogarnąć, ale jakoś sobie poradziłem. Trzeba było również usunąć kod od likana.dziękuję @Sevence i @wojciech74 za poradę dotyczącą programu, to faktycznie bardzo dużo pomaga.
Opublikowano 7 Marca7 Mar Świetnie, że się udało. Możesz podzielić się krokami, które wykonałeś dodatkowo? Może to pomóc innym w podobnej sytuacji. @Krystian
Opublikowano 7 Marca7 Mar Autor 1 godzinę temu, Sevence napisał(a):Świetnie, że się udało. Możesz podzielić się krokami, które wykonałeś dodatkowo? Może to pomóc innym w podobnej sytuacji. @KrystianJeśli ktoś nie ma likana na swoim serwerze, trzeba po prostu usunąć kilka linijek związanych z likanem właśnie w uiselectskill.py A dokładnie:if app.ENABLE_WOLFMAN_CHARACTER: JOB_NAME_DICT.update({4 : [localeInfo.JOB_WOLFMAN1,localeInfo.JOB_WOLFMAN2],})if app.ENABLE_WOLFMAN_CHARACTER: JOB_LIST.update({4 : localeInfo.JOB_WOLFMAN,}) def EmptyJob(self): chat.AppendChat(chat.CHAT_TYPE_INFO, localeInfo.JOB_SELECT_LYCAN_ERROR)
Siema, próbowałem to dodać i mam takie coś w sysserze:
0306 20:37:10452 :: Traceback (most recent call last):
0306 20:37:10453 :: File "networkModule.py", line 266, in SetGamePhase
0306 20:37:10453 :: File "game.py", line 115, in init
0306 20:37:10453 :: File "game.py", line 1873, in __ServerCommand_Build
0306 20:37:10453 :: AttributeError
0306 20:37:10453 :: :
0306 20:37:10453 :: 'NoneType' object has no attribute 'Open'
0306 20:37:10453 ::
GAME.PY w załączniku. Miałby ktoś coś na to pomysł?
game.py