YukiPowa 5 Posted April 13, 2015 Share Posted April 13, 2015 (edited) Hi ! I upgrade max number caracter per account, 4 to 5. Bug ...: https://metin2.download/picture/4l66Fj5bLyvkz7h26JZTBuE94X6rSZlv/.jpg Help me ;( Introselect : import chr import grp import app import math import wndMgr import snd import net import systemSetting import localeInfo import chr import ui import uiScriptLocale import networkModule import musicInfo import playerSettingModule #################################### # 빠른 실행을 위한 모듈 로딩 분담 #################################### import uiCommon import uiMapNameShower import uiAffectShower import uiPlayerGauge import uiCharacter import uiTarget import consoleModule import interfaceModule import uiTaskBar import uiInventory ################################### LEAVE_BUTTON_FOR_POTAL = FALSE NOT_NEED_DELETE_CODE = FALSE ENABLE_ENGNUM_DELETE_CODE = FALSE if localeInfo.IsJAPAN(): NOT_NEED_DELETE_CODE = TRUE elif localeInfo.IsHONGKONG(): ENABLE_ENGNUM_DELETE_CODE = TRUE elif localeInfo.IsNEWCIBN() or localeInfo.IsCIBN10(): ENABLE_ENGNUM_DELETE_CODE = TRUE elif localeInfo.IsEUROPE(): ENABLE_ENGNUM_DELETE_CODE = TRUE ################################### class SelectCharacterWindow(ui.Window): #SLOT3 #SLOT_ROTATION = ( 140.0, 260.0, 20.0 ) #SLOT_COUNT = 3 #SLOT4 #SLOT_ROTATION = [135.0, 225.0, 315.0, 45.0] #SLOT_COUNT = 4 #SLOT5 SLOT_ROTATION = [130.0, 190.0, 250.0, 310.0, 70.0] SLOT_COUNT = 5 CHARACTER_TYPE_COUNT = 5 EMPIRE_NAME = { net.EMPIRE_A : localeInfo.EMPIRE_A, net.EMPIRE_B : localeInfo.EMPIRE_B, net.EMPIRE_C : localeInfo.EMPIRE_C } class CharacterRenderer(ui.Window): def OnRender(self): grp.ClearDepthBuffer() grp.SetGameRenderState() grp.PushState() grp.SetOmniLight() screenWidth = wndMgr.GetScreenWidth() screenHeight = wndMgr.GetScreenHeight() newScreenWidth = float(screenWidth - 270) newScreenHeight = float(screenHeight) grp.SetViewport(270.0/screenWidth, 0.0, newScreenWidth/screenWidth, newScreenHeight/screenHeight) app.SetCenterPosition(0.0, 0.0, 0.0) app.SetCamera(1550.0, 15.0, 180.0, 95.0) grp.SetPerspective(10.0, newScreenWidth/newScreenHeight, 1000.0, 3000.0) (x, y) = app.GetCursorPosition() grp.SetCursorPosition(x, y) chr.Deform() chr.Render() grp.RestoreViewport() grp.PopState() grp.SetInterfaceRenderState() def __init__(self, stream): ui.Window.__init__(self) net.SetPhaseWindow(net.PHASE_WINDOW_SELECT, self) self.stream=stream self.slot = self.stream.GetCharacterSlot() self.openLoadingFlag = FALSE self.startIndex = -1 self.startReservingTime = 0 self.flagDict = {} self.curRotation = [] self.destRotation = [] for rot in self.SLOT_ROTATION: self.curRotation.append(rot) self.destRotation.append(rot) self.curNameAlpha = [] self.destNameAlpha = [] for i in xrange(self.CHARACTER_TYPE_COUNT): self.curNameAlpha.append(0.0) self.destNameAlpha.append(0.0) self.curGauge = [0.0, 0.0, 0.0, 0.0, 0.0] self.destGauge = [0.0, 0.0, 0.0, 0.0, 0.0] self.dlgBoard = 0 self.changeNameFlag = FALSE self.nameInputBoard = None self.sendedChangeNamePacket = FALSE self.startIndex = -1 self.isLoad = 0 def __del__(self): ui.Window.__del__(self) net.SetPhaseWindow(net.PHASE_WINDOW_SELECT, 0) def Open(self): if not self.__LoadBoardDialog(uiScriptLocale.LOCALE_UISCRIPT_PATH + "selectcharacterwindow.py"): dbg.TraceError("SelectCharacterWindow.Open - __LoadScript Error") return if not self.__LoadQuestionDialog("uiscript/questiondialog.py"): return playerSettingModule.LoadGameData("INIT") self.InitCharacterBoard() self.btnStart.Enable() self.btnCreate.Enable() self.btnDelete.Enable() self.btnExit.Enable() self.btnLeft.Enable() self.btnRight.Enable() self.dlgBoard.Show() self.SetWindowName("SelectCharacterWindow") self.Show() if self.slot>=0: self.SelectSlot(self.slot) if musicInfo.selectMusic != "": snd.SetMusicVolume(systemSetting.GetMusicVolume()) snd.FadeInMusic("BGM/"+musicInfo.selectMusic) app.SetCenterPosition(0.0, 0.0, 0.0) app.SetCamera(1550.0, 15.0, 180.0, 95.0) self.isLoad=1 self.Refresh() if self.stream.isAutoSelect: chrSlot=self.stream.GetCharacterSlot() self.SelectSlot(chrSlot) self.StartGame() self.HideAllFlag() self.SetEmpire(net.GetEmpireID()) app.ShowCursor() def Close(self): if musicInfo.selectMusic != "": snd.FadeOutMusic("BGM/"+musicInfo.selectMusic) self.stream.popupWindow.Close() if self.dlgBoard: self.dlgBoard.ClearDictionary() self.empireName = None self.flagDict = {} self.dlgBoard = None self.btnStart = None self.btnCreate = None self.btnDelete = None self.btnExit = None self.btnLeft = None self.btnRight = None self.backGround = None self.dlgQuestion.ClearDictionary() self.dlgQuestion = None self.dlgQuestionText = None self.dlgQuestionAcceptButton = None self.dlgQuestionCancelButton = None self.privateInputBoard = None self.nameInputBoard = None chr.DeleteInstance(0) chr.DeleteInstance(1) chr.DeleteInstance(2) chr.DeleteInstance(3) chr.DeleteInstance(4) self.Hide() self.KillFocus() app.HideCursor() def SetEmpire(self, id): self.empireName.SetText(self.EMPIRE_NAME.get(id, "")) if self.flagDict.has_key(id): self.flagDict[id].Show() def HideAllFlag(self): for flag in self.flagDict.values(): flag.Hide() def Refresh(self): if not self.isLoad: return # SLOT5 indexArray = (4, 3, 2, 1, 0) for index in indexArray: id=net.GetAccountCharacterSlotDataInteger(index, net.ACCOUNT_CHARACTER_SLOT_ID) race=net.GetAccountCharacterSlotDataInteger(index, net.ACCOUNT_CHARACTER_SLOT_RACE) form=net.GetAccountCharacterSlotDataInteger(index, net.ACCOUNT_CHARACTER_SLOT_FORM) name=net.GetAccountCharacterSlotDataString(index, net.ACCOUNT_CHARACTER_SLOT_NAME) hair=net.GetAccountCharacterSlotDataInteger(index, net.ACCOUNT_CHARACTER_SLOT_HAIR) if id: self.MakeCharacter(index, id, name, race, form, hair) self.SelectSlot(index) self.SelectSlot(self.slot) def GetCharacterSlotID(self, slotIndex): return net.GetAccountCharacterSlotDataInteger(slotIndex, net.ACCOUNT_CHARACTER_SLOT_ID) def __LoadQuestionDialog(self, fileName): self.dlgQuestion = ui.ScriptWindow() try: pyScrLoader = ui.PythonScriptLoader() pyScrLoader.LoadScriptFile(self.dlgQuestion, fileName) except: import exception exception.Abort("SelectCharacterWindow.LoadQuestionDialog.LoadScript") try: GetObject=self.dlgQuestion.GetChild self.dlgQuestionText=GetObject("message") self.dlgQuestionAcceptButton=GetObject("accept") self.dlgQuestionCancelButton=GetObject("cancel") except: import exception exception.Abort("SelectCharacterWindow.LoadQuestionDialog.BindObject") self.dlgQuestionText.SetText(localeInfo.SELECT_DO_YOU_DELETE_REALLY) self.dlgQuestionAcceptButton.SetEvent(ui.__mem_func__(self.RequestDeleteCharacter)) self.dlgQuestionCancelButton.SetEvent(ui.__mem_func__(self.dlgQuestion.Hide)) return 1 def __LoadBoardDialog(self, fileName): self.dlgBoard = ui.ScriptWindow() try: pyScrLoader = ui.PythonScriptLoader() pyScrLoader.LoadScriptFile(self.dlgBoard, fileName) except: import exception exception.Abort("SelectCharacterWindow.LoadBoardDialog.LoadScript") try: GetObject=self.dlgBoard.GetChild self.btnStart = GetObject("start_button") self.btnCreate = GetObject("create_button") self.btnDelete = GetObject("delete_button") self.btnExit = GetObject("exit_button") self.CharacterName = GetObject("character_name_value") self.CharacterLevel = GetObject("character_level_value") self.PlayTime = GetObject("character_play_time_value") self.CharacterHTH = GetObject("character_hth_value") self.CharacterINT = GetObject("character_int_value") self.CharacterSTR = GetObject("character_str_value") self.CharacterDEX = GetObject("character_dex_value") self.GuildName = GetObject("GuildName") self.NameList = [] self.NameList.append(GetObject("name_warrior")) self.NameList.append(GetObject("name_assassin")) self.NameList.append(GetObject("name_sura")) self.NameList.append(GetObject("name_shaman")) self.GaugeList = [] self.GaugeList.append(GetObject("gauge_hth")) self.GaugeList.append(GetObject("gauge_int")) self.GaugeList.append(GetObject("gauge_str")) self.GaugeList.append(GetObject("gauge_dex")) self.btnLeft = GetObject("left_button") self.btnRight = GetObject("right_button") self.empireName = GetObject("EmpireName") self.flagDict[net.EMPIRE_A] = GetObject("EmpireFlag_A") self.flagDict[net.EMPIRE_B] = GetObject("EmpireFlag_B") self.flagDict[net.EMPIRE_C] = GetObject("EmpireFlag_C") self.backGround = GetObject("BackGround") except: import exception exception.Abort("SelectCharacterWindow.LoadBoardDialog.BindObject") for name in self.NameList: name.SetAlpha(0.0) self.btnStart.SetEvent(ui.__mem_func__(self.StartGame)) self.btnCreate.SetEvent(ui.__mem_func__(self.CreateCharacter)) self.btnExit.SetEvent(ui.__mem_func__(self.ExitSelect)) if NOT_NEED_DELETE_CODE: self.btnDelete.SetEvent(ui.__mem_func__(self.PopupDeleteQuestion)) else: self.btnDelete.SetEvent(ui.__mem_func__(self.InputPrivateCode)) self.btnLeft.SetEvent(ui.__mem_func__(self.DecreaseSlotIndex)) self.btnRight.SetEvent(ui.__mem_func__(self.IncreaseSlotIndex)) self.chrRenderer = self.CharacterRenderer() self.chrRenderer.SetParent(self.backGround) self.chrRenderer.Show() return 1 def MakeCharacter(self, index, id, name, race, form, hair): if 0 == id: return chr.CreateInstance(index) chr.SelectInstance(index) chr.SetVirtualID(index) chr.SetNameString(name) chr.SetRace(race) chr.SetArmor(form) chr.SetHair(hair) chr.Refresh() chr.SetMotionMode(chr.MOTION_MODE_GENERAL) chr.SetLoopMotion(chr.MOTION_INTRO_WAIT) chr.SetRotation(0.0) ## Manage Character def StartGame(self): if self.sendedChangeNamePacket: return if self.changeNameFlag: self.OpenChangeNameDialog() return if -1 != self.startIndex: return if musicInfo.selectMusic != "": snd.FadeLimitOutMusic("BGM/"+musicInfo.selectMusic, systemSetting.GetMusicVolume()*0.05) self.btnStart.SetUp() self.btnCreate.SetUp() self.btnDelete.SetUp() self.btnExit.SetUp() self.btnLeft.SetUp() self.btnRight.SetUp() self.btnStart.Disable() self.btnCreate.Disable() self.btnDelete.Disable() self.btnExit.Disable() self.btnLeft.Disable() self.btnRight.Disable() self.dlgQuestion.Hide() self.stream.SetCharacterSlot(self.slot) self.startIndex = self.slot self.startReservingTime = app.GetTime() for i in xrange(self.SLOT_COUNT): if FALSE == chr.HasInstance(i): continue chr.SelectInstance(i) if i == self.slot: self.slot=self.slot chr.PushOnceMotion(chr.MOTION_INTRO_SELECTED, 0.1) continue chr.PushOnceMotion(chr.MOTION_INTRO_NOT_SELECTED, 0.1) def OpenChangeNameDialog(self): import uiCommon nameInputBoard = uiCommon.InputDialogWithDescription() nameInputBoard.SetTitle(localeInfo.SELECT_CHANGE_NAME_TITLE) nameInputBoard.SetAcceptEvent(ui.__mem_func__(self.AcceptInputName)) nameInputBoard.SetCancelEvent(ui.__mem_func__(self.CancelInputName)) nameInputBoard.SetMaxLength(chr.PLAYER_NAME_MAX_LEN) nameInputBoard.SetBoardWidth(200) nameInputBoard.SetDescription(localeInfo.SELECT_INPUT_CHANGING_NAME) nameInputBoard.Open() nameInputBoard.slot = self.slot self.nameInputBoard = nameInputBoard def OnChangeName(self, id, name): self.SelectSlot(id) self.sendedChangeNamePacket = FALSE self.PopupMessage(localeInfo.SELECT_CHANGED_NAME) def AcceptInputName(self): changeName = self.nameInputBoard.GetText() if not changeName: return self.sendedChangeNamePacket = TRUE net.SendChangeNamePacket(self.nameInputBoard.slot, changeName) return self.CancelInputName() def CancelInputName(self): self.nameInputBoard.Close() self.nameInputBoard = None return TRUE def OnCreateFailure(self, type): self.sendedChangeNamePacket = FALSE if 0 == type: self.PopupMessage(localeInfo.SELECT_CHANGE_FAILURE_STRANGE_NAME) elif 1 == type: self.PopupMessage(localeInfo.SELECT_CHANGE_FAILURE_ALREADY_EXIST_NAME) elif 100 == type: self.PopupMessage(localeInfo.SELECT_CHANGE_FAILURE_STRANGE_INDEX) def CreateCharacter(self): id = self.GetCharacterSlotID(self.slot) if 0==id: self.stream.SetCharacterSlot(self.slot) EMPIRE_MODE = 1 if EMPIRE_MODE: if self.__AreAllSlotEmpty(): self.stream.SetReselectEmpirePhase() else: self.stream.SetCreateCharacterPhase() else: self.stream.SetCreateCharacterPhase() def __AreAllSlotEmpty(self): for iSlot in xrange(self.SLOT_COUNT): if 0!=net.GetAccountCharacterSlotDataInteger(iSlot, net.ACCOUNT_CHARACTER_SLOT_ID): return 0 return 1 def PopupDeleteQuestion(self): id = self.GetCharacterSlotID(self.slot) if 0 == id: return self.dlgQuestion.Show() self.dlgQuestion.SetTop() def RequestDeleteCharacter(self): self.dlgQuestion.Hide() id = self.GetCharacterSlotID(self.slot) if 0 == id: self.PopupMessage(localeInfo.SELECT_EMPTY_SLOT) return net.SendDestroyCharacterPacket(self.slot, "1234567") self.PopupMessage(localeInfo.SELECT_DELEING) def InputPrivateCode(self): import uiCommon privateInputBoard = uiCommon.InputDialogWithDescription() privateInputBoard.SetTitle(localeInfo.INPUT_PRIVATE_CODE_DIALOG_TITLE) privateInputBoard.SetAcceptEvent(ui.__mem_func__(self.AcceptInputPrivateCode)) privateInputBoard.SetCancelEvent(ui.__mem_func__(self.CancelInputPrivateCode)) if ENABLE_ENGNUM_DELETE_CODE: pass else: privateInputBoard.SetNumberMode() privateInputBoard.SetSecretMode() privateInputBoard.SetMaxLength(7) privateInputBoard.SetBoardWidth(250) privateInputBoard.SetDescription(localeInfo.INPUT_PRIVATE_CODE_DIALOG_DESCRIPTION) privateInputBoard.Open() self.privateInputBoard = privateInputBoard def AcceptInputPrivateCode(self): privateCode = self.privateInputBoard.GetText() if not privateCode: return id = self.GetCharacterSlotID(self.slot) if 0 == id: self.PopupMessage(localeInfo.SELECT_EMPTY_SLOT) return net.SendDestroyCharacterPacket(self.slot, privateCode) self.PopupMessage(localeInfo.SELECT_DELEING) self.CancelInputPrivateCode() return TRUE def CancelInputPrivateCode(self): self.privateInputBoard = None return TRUE def OnDeleteSuccess(self, slot): self.PopupMessage(localeInfo.SELECT_DELETED) self.DeleteCharacter(slot) def OnDeleteFailure(self): self.PopupMessage(localeInfo.SELECT_CAN_NOT_DELETE) def DeleteCharacter(self, index): chr.DeleteInstance(index) self.SelectSlot(self.slot) def ExitSelect(self): self.dlgQuestion.Hide() if LEAVE_BUTTON_FOR_POTAL: if app.loggined: self.stream.SetPhaseWindow(0) else: self.stream.setloginphase() else: self.stream.SetLoginPhase() self.Hide() def GetSlotIndex(self): return self.slot def DecreaseSlotIndex(self): slotIndex = (self.GetSlotIndex() - 1 + self.SLOT_COUNT) % self.SLOT_COUNT self.SelectSlot(slotIndex) def IncreaseSlotIndex(self): slotIndex = (self.GetSlotIndex() + 1) % self.SLOT_COUNT self.SelectSlot(slotIndex) def SelectSlot(self, index): if index < 0: return if index >= self.SLOT_COUNT: return self.slot = index chr.SelectInstance(self.slot) for i in xrange(self.CHARACTER_TYPE_COUNT): self.destNameAlpha = 0.0 for i in xrange(self.SLOT_COUNT): self.destRotation[(i+self.slot)%self.SLOT_COUNT] = self.SLOT_ROTATION self.destGauge = [0.0, 0.0, 0.0, 0.0, 0.0] id=net.GetAccountCharacterSlotDataInteger(self.slot, net.ACCOUNT_CHARACTER_SLOT_ID) if 0 != id: self.btnStart.Show() self.btnDelete.Show() self.btnCreate.Hide() playTime=net.GetAccountCharacterSlotDataInteger(self.slot, net.ACCOUNT_CHARACTER_SLOT_PLAYTIME) level=net.GetAccountCharacterSlotDataInteger(self.slot, net.ACCOUNT_CHARACTER_SLOT_LEVEL) race=net.GetAccountCharacterSlotDataInteger(self.slot, net.ACCOUNT_CHARACTER_SLOT_RACE) valueHTH=net.GetAccountCharacterSlotDataInteger(self.slot, net.ACCOUNT_CHARACTER_SLOT_HTH) valueINT=net.GetAccountCharacterSlotDataInteger(self.slot, net.ACCOUNT_CHARACTER_SLOT_INT) valueSTR=net.GetAccountCharacterSlotDataInteger(self.slot, net.ACCOUNT_CHARACTER_SLOT_STR) valueDEX=net.GetAccountCharacterSlotDataInteger(self.slot, net.ACCOUNT_CHARACTER_SLOT_DEX) name=net.GetAccountCharacterSlotDataString(self.slot, net.ACCOUNT_CHARACTER_SLOT_NAME) guildID=net.GetAccountCharacterSlotDataInteger(self.slot, net.ACCOUNT_CHARACTER_SLOT_GUILD_ID) guildName=net.GetAccountCharacterSlotDataString(self.slot, net.ACCOUNT_CHARACTER_SLOT_GUILD_NAME) self.changeNameFlag=net.GetAccountCharacterSlotDataInteger(self.slot, net.ACCOUNT_CHARACTER_SLOT_CHANGE_NAME_FLAG) job = chr.RaceToJob(race) if job >= 0 and job < self.CHARACTER_TYPE_COUNT: self.destNameAlpha[job] = 1.0 self.CharacterName.SetText(name) self.CharacterLevel.SetText(str(level)) self.PlayTime.SetText(str(playTime)) self.CharacterHTH.SetText(str(valueHTH)) self.CharacterINT.SetText(str(valueINT)) self.CharacterSTR.SetText(str(valueSTR)) self.CharacterDEX.SetText(str(valueDEX)) if guildName: self.GuildName.SetText(guildName) else: self.GuildName.SetText(localeInfo.SELECT_NOT_JOIN_GUILD) statesSummary = float(valueHTH + valueINT + valueSTR + valueDEX) if statesSummary > 0.0: self.destGauge = [ float(valueHTH) / statesSummary, float(valueINT) / statesSummary, float(valueSTR) / statesSummary, float(valueDEX) / statesSummary ] else: self.InitCharacterBoard() def InitCharacterBoard(self): self.btnStart.Hide() self.btnDelete.Hide() self.btnCreate.Show() self.CharacterName.SetText("") self.CharacterLevel.SetText("") self.PlayTime.SetText("") self.CharacterHTH.SetText("") self.CharacterINT.SetText("") self.CharacterSTR.SetText("") self.CharacterDEX.SetText("") self.GuildName.SetText(localeInfo.SELECT_NOT_JOIN_GUILD) ## Event def OnKeyDown(self, key): if 1 == key: self.ExitSelect() if 2 == key: self.SelectSlot(0) if 3 == key: self.SelectSlot(1) if 4 == key: self.SelectSlot(2) if 5 == key: self.SelectSlot(3) if 28 == key: id = net.GetAccountCharacterSlotDataInteger(self.slot, net.ACCOUNT_CHARACTER_SLOT_ID) if 0 == id: self.CreateCharacter() else: self.StartGame() if 203 == key: self.slot = (self.GetSlotIndex() - 1 + self.SLOT_COUNT) % self.SLOT_COUNT self.SelectSlot(self.slot) if 205 == key: self.slot = (self.GetSlotIndex() + 1) % self.SLOT_COUNT self.SelectSlot(self.slot) return TRUE def OnUpdate(self): chr.Update() for i in xrange(4): self.curGauge += (self.destGauge - self.curGauge) / 10.0 if abs(self.curGauge - self.destGauge) < 0.005: self.curGauge = self.destGauge self.GaugeList.SetPercentage(self.curGauge, 1.0) for i in xrange(self.CHARACTER_TYPE_COUNT): self.curNameAlpha += (self.destNameAlpha - self.curNameAlpha) / 10.0 self.NameList.SetAlpha(self.curNameAlpha) for i in xrange(self.SLOT_COUNT): if FALSE == chr.HasInstance(i): continue chr.SelectInstance(i) distance = 50.0 rotRadian = self.curRotation * (math.pi*2) / 360.0 x = distance*math.sin(rotRadian) + distance*math.cos(rotRadian) y = distance*math.cos(rotRadian) - distance*math.sin(rotRadian) chr.SetPixelPosition(int(x), int(y), 30) ##### dir = app.GetRotatingDirection(self.destRotation, self.curRotation) rot = app.GetDegreeDifference(self.destRotation, self.curRotation) if app.DEGREE_DIRECTION_RIGHT == dir: self.curRotation += rot / 10.0 elif app.DEGREE_DIRECTION_LEFT == dir: self.curRotation -= rot / 10.0 self.curRotation = (self.curRotation + 360.0) % 360.0 ####################################################### if -1 != self.startIndex: ## Temporary ## BackGroundLoading이 지원 될때까지 임시로.. if app.GetTime() - self.startReservingTime > 3.0: if FALSE == self.openLoadingFlag: chrSlot=self.stream.GetCharacterSlot() net.DirectEnter(chrSlot) self.openLoadingFlag = TRUE playTime=net.GetAccountCharacterSlotDataInteger(self.slot, net.ACCOUNT_CHARACTER_SLOT_PLAYTIME) import player player.SetPlayTime(playTime) import chat chat.Clear() ## 들어갈때 Chat 을 초기화. 임시 Pos. ## Temporary ####################################################### def EmptyFunc(self): pass def PopupMessage(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.ExitSelect() return TRUE Edited August 30, 2022 by Metin2 Dev Core X - External 2 Internal Link to comment Share on other sites More sharing options...
AlexxD 124 Posted April 13, 2015 Share Posted April 13, 2015 syserr? "Don't be a scammer. Don't be a hacker. Don't be a motherfucker. Karma is a bitch" Link to comment Share on other sites More sharing options...
YukiPowa 5 Posted April 13, 2015 Author Share Posted April 13, 2015 0413 19:15:20740 :: Traceback (most recent call last): 0413 19:15:20740 :: File "introSelect.py", line 707, in OnUpdate 0413 19:15:20740 :: IndexError 0413 19:15:20740 :: : 0413 19:15:20740 :: list index out of range 0413 19:15:20740 :: Link to comment Share on other sites More sharing options...
AlexxD 124 Posted April 13, 2015 Share Posted April 13, 2015 Give me your introselect.py with mega.. "Don't be a scammer. Don't be a hacker. Don't be a motherfucker. Karma is a bitch" Link to comment Share on other sites More sharing options...
YukiPowa 5 Posted April 13, 2015 Author Share Posted April 13, 2015 http://uptobox.com/52ce7ur5cf16 Link to comment Share on other sites More sharing options...
AlexxD 124 Posted April 13, 2015 Share Posted April 13, 2015 Try this: http://mega.co.nz/#!yd8ETCAA!7tOcF8NJnOjyNWhTgI2xxRYkeCHONKZgCmWALNmCYno "Don't be a scammer. Don't be a hacker. Don't be a motherfucker. Karma is a bitch" Link to comment Share on other sites More sharing options...
YukiPowa 5 Posted April 13, 2015 Author Share Posted April 13, 2015 No, 0413 19:37:22456 :: Traceback (most recent call last): 0413 19:37:22456 :: File "introSelect.py", line 705, in OnUpdate 0413 19:37:22456 :: IndexError 0413 19:37:22456 :: : 0413 19:37:22456 :: list index out of range 0413 19:37:22456 :: Link to comment Share on other sites More sharing options...
AlexxD 124 Posted April 13, 2015 Share Posted April 13, 2015 Get this introselect... : http://mega.co.nz/#!iR9yjYTZ!d561enct_Ff3RLS28HFLIp_lzPabFtnF1zhuJyruvw0 "Don't be a scammer. Don't be a hacker. Don't be a motherfucker. Karma is a bitch" Link to comment Share on other sites More sharing options...
YukiPowa 5 Posted April 13, 2015 Author Share Posted April 13, 2015 No, 0413 19:59:14567 :: Traceback (most recent call last): 0413 19:59:14567 :: File "introSelect.py", line 698, in OnUpdate 0413 19:59:14567 :: IndexError 0413 19:59:14567 :: : 0413 19:59:14567 :: list index out of range 0413 19:59:14567 :: Link to comment Share on other sites More sharing options...
AlexxD 124 Posted April 13, 2015 Share Posted April 13, 2015 http://mega.co.nz/#!jBsRADAb!moA_6_hbVLTllyN9IB02ry5PpLVcxqHpo7knHRgJg1w .... the last one. "Don't be a scammer. Don't be a hacker. Don't be a motherfucker. Karma is a bitch" Link to comment Share on other sites More sharing options...
YukiPowa 5 Posted April 13, 2015 Author Share Posted April 13, 2015 Fix. CHARACTER_TYPE_COUNT = 5 to CHARACTER_TYPE_COUNT = 4 New problem : [135.0, 225.0, 315.0, 45.0, -110.0] Not good. When I turn the character, some not go in the same direction. Link to comment Share on other sites More sharing options...
zolika57 0 Posted March 15, 2021 Share Posted March 15, 2021 (edited) in source too.. Edited March 15, 2021 by zolika57 Link to comment Share on other sites More sharing options...
Recommended Posts
Please sign in to comment
You will be able to leave a comment after signing in
Sign In Now