def __SelectGender(self, gender): for button in self.genderButton: button.SetUp() self.genderButton[gender].Down() self.gender = gender if gender == MAN: for i in xrange(SLOT_COUNT): chr.SelectInstance(self.__GetSlotChrID(0, i)) chr.Show() for i in xrange(SLOT_COUNT): chr.SelectInstance(self.__GetSlotChrID(1, i)) chr.Hide() else: for i in xrange(SLOT_COUNT): chr.SelectInstance(self.__GetSlotChrID(0, i)) chr.Hide() for i in xrange(SLOT_COUNT): chr.SelectInstance(self.__GetSlotChrID(1, i)) chr.Show() for id in xrange(BASE_CHR_ID + SLOT_COUNT * PAGE_COUNT): chr.DeleteInstance(id) chr_id = self.__GetSlotChrID(self.gender, self.slot) self.__MakeCharacter(chr_id, self.characters[self.gender][self.slot]) self.__SelectShape(self.shape)
def __SelectGender(self, gender): for button in self.genderButtonList: button.SetUp() self.genderButtonList[gender].Down() self.gender = gender self.genderTextLine.SetText(GENDER_NAME[gender]) chr.SelectInstance(self.__GetSlotChrID(0, 0)) chr.Hide() chr.SelectInstance(self.__GetSlotChrID(0, 1)) chr.Hide() chr.SelectInstance(self.__GetSlotChrID(0, 2)) chr.Hide() chr.SelectInstance(self.__GetSlotChrID(0, 3)) chr.Hide() chr.SelectInstance(self.__GetSlotChrID(1, 0)) chr.Hide() chr.SelectInstance(self.__GetSlotChrID(1, 1)) chr.Hide() chr.SelectInstance(self.__GetSlotChrID(1, 2)) chr.Hide() chr.SelectInstance(self.__GetSlotChrID(1, 3)) chr.Hide() if gender == MAN: if constInfo.SLOTCH == 0 : chr.SelectInstance(self.__GetSlotChrID(0, 0)) chr.Show() elif constInfo.SLOTCH == 1 : chr.SelectInstance(self.__GetSlotChrID(0, 1)) chr.Show() elif constInfo.SLOTCH == 2 : chr.SelectInstance(self.__GetSlotChrID(0, 2)) chr.Show() elif constInfo.SLOTCH == 3 : chr.SelectInstance(self.__GetSlotChrID(0, 3)) chr.Show() else: if constInfo.SLOTCH == 0 : chr.SelectInstance(self.__GetSlotChrID(1, 0)) chr.Show() elif constInfo.SLOTCH == 1 : chr.SelectInstance(self.__GetSlotChrID(1, 1)) chr.Show() elif constInfo.SLOTCH == 2 : chr.SelectInstance(self.__GetSlotChrID(1, 2)) chr.Show() elif constInfo.SLOTCH == 3 : chr.SelectInstance(self.__GetSlotChrID(1, 3)) chr.Show()
def __SelectSlot(self, slot): if slot < 0: return if slot >= SLOT_COUNT: return if self.slot == slot: return self.slot = slot constInfo.SLOTCH = slot self.ResetStat() for i in xrange(SLOT_COUNT): self.destNameAlpha[i] = 0.0 self.destNameAlpha[slot] = 1.0 for i in xrange(SLOT_COUNT): self.destRotation[(i+self.slot)%SLOT_COUNT] = self.SLOT_ROTATION[i] if self.IsShow(): snd.PlaySound("sound/ui/click.wav") event.ClearEventSet(self.descIndex) self.descIndex = event.RegisterEventSet(self.DESCRIPTION_FILE_NAME[self.slot]) if localeInfo.IsARABIC(): event.SetEventSetWidth(self.descIndex, 170) chr.SelectInstance(self.__GetSlotChrID(0, 0)) chr.Hide() chr.SelectInstance(self.__GetSlotChrID(0, 1)) chr.Hide() chr.SelectInstance(self.__GetSlotChrID(0, 2)) chr.Hide() chr.SelectInstance(self.__GetSlotChrID(0, 3)) chr.Hide() chr.SelectInstance(self.__GetSlotChrID(1, 0)) chr.Hide() chr.SelectInstance(self.__GetSlotChrID(1, 1)) chr.Hide() chr.SelectInstance(self.__GetSlotChrID(1, 2)) chr.Hide() chr.SelectInstance(self.__GetSlotChrID(1, 3)) chr.Hide() chr_id = self.__GetSlotChrID(self.gender, slot) if chr.HasInstance(chr_id): chr.SelectInstance(chr_id) self.__SelectShape(self.shapeList[self.gender][slot]) chr.Show()
def __SelectGender(self, gender): for button in self.genderButtonList: button.SetUp() self.genderButtonList[gender].Down() self.gender = gender if gender == MAN: for i in xrange(SLOT_COUNT): chr.SelectInstance(self.__GetSlotChrID(0, i)) chr.Show() for i in xrange(SLOT_COUNT): chr.SelectInstance(self.__GetSlotChrID(1, i)) chr.Hide() else: for i in xrange(SLOT_COUNT): chr.SelectInstance(self.__GetSlotChrID(0, i)) chr.Hide() for i in xrange(SLOT_COUNT): chr.SelectInstance(self.__GetSlotChrID(1, i)) chr.Show()
def __MakeCharacter(self, chr_id, race): chr.CreateInstance(chr_id) chr.SelectInstance(chr_id) chr.SetVirtualID(chr_id) chr.SetRace(race) chr.SetArmor(0) chr.SetHair(0) chr.Refresh() chr.SetMotionMode(chr.MOTION_MODE_GENERAL) chr.SetLoopMotion(chr.MOTION_INTRO_WAIT) chr.SetRotation(0.0) chr.Hide()
def MakeCharacter(self, race): chr_id = race; chr.CreateInstance(chr_id) chr.SelectInstance(chr_id) chr.SetVirtualID(chr_id) chr.SetNameString(str(race)) chr.SetRace(race) chr.SetArmor(0) chr.SetHair(0) chr.SetMotionMode(chr.MOTION_MODE_GENERAL) chr.SetLoopMotion(chr.MOTION_INTRO_WAIT) chr.SetRotation(-7.0) #Degree value chr.Hide()
def SelectShape(self, shape): for button in self.shapeButtonList: button.SetUp() self.shape = shape self.shapeButtonList[self.shape].Down() #print "job = %s, race =%s, shape =%s" %(self.job_id, self.race, self.shape) if self.M2_INIT_VALUE == self.job_id : return chr.Hide() chr.SelectInstance(self.race) chr.ChangeShape(self.shape) chr.SetMotionMode(chr.MOTION_MODE_GENERAL) chr.SetLoopMotion(chr.MOTION_INTRO_WAIT) chr.Show()
def __MakeCharacter(self, page, slot, race): chr_id = self.__GetSlotChrID(page, slot) chr.CreateInstance(chr_id) chr.SelectInstance(chr_id) chr.SetVirtualID(chr_id) # self.instanceIDs.append(chr_id) chr.SetRace(race) chr.SetArmor(0) chr.SetHair(0) chr.Refresh() chr.SetMotionMode(chr.MOTION_MODE_GENERAL) chr.SetLoopMotion(chr.MOTION_INTRO_WAIT) chr.SetRotation(0.0) chr.Hide()
def MakeCharacter(self, slot, name, race, form, hair, acce): chr.CreateInstance(slot) chr.SelectInstance(slot) chr.SetVirtualID(slot) chr.SetNameString(name) chr.SetRace(race) chr.SetArmor(form) chr.SetHair(hair) #chr.SetAcce(acce) chr.SetMotionMode(chr.MOTION_MODE_GENERAL) chr.SetLoopMotion(chr.MOTION_INTRO_WAIT) ## 수인족만, 스케일 조금 축소. #if chr.RaceToJob(race) == JOB_WOLFMAN: # chr.SetScale(0.95,0.95,0.95) chr.SetRotation(0.0) chr.Hide()
def __SelectGender(self, gender): for button in self.genderButtonList: button.SetUp() self.genderButtonList[gender].Down() old_gender = self.gender self.gender = gender for v1 in GENDER_LIST: for i in xrange(SLOT_COUNT[v1]): chr.SelectInstance(self.__GetSlotChrID(v1, i)) if v1==self.gender: chr.Show() else: chr.Hide() self.__ResetNameList(old_gender) if self.slot >= SLOT_COUNT[self.gender]: # self.NameList[self.slot].SetAlpha(0.0) self.__SelectSlot(app.GetRandom(0, SLOT_COUNT[self.gender]-1)) return # the scene will be already updated, so return or double updated scene self.__UpdateScene()
def Open(self): print "OPEN CREATE WINDOW ----------------------------------------------------------------------------" playerSettingModule.LoadGameData("INIT") self.reservingRaceIndex = -1 self.reservingShapeIndex = -1 self.reservingStartTime = 0 self.stat = [0, 0, 0, 0] self.gender = 0 self.slot = -1 self.shapeList = [ [0, 0, 0, 0], [0, 0, 0, 0]] self.descIndex = 0 try: dlgBoard = ui.ScriptWindow() pythonScriptLoader = ui.PythonScriptLoader() pythonScriptLoader.LoadScriptFile(dlgBoard, uiScriptLocale.LOCALE_UISCRIPT_PATH + "createcharacterwindow.py") except: import exception exception.Abort("CreateCharacterWindow.Open.LoadObject") try: getChild = dlgBoard.GetChild self.NameList = [] self.NameList.append(getChild("name_warrior")) self.NameList.append(getChild("name_assassin")) self.NameList.append(getChild("name_sura")) self.NameList.append(getChild("name_shaman")) self.Listimgjex = [] self.Listimgjex.append(getChild("name_warriorimg")) self.Listimgjex.append(getChild("name_assassinimg")) self.Listimgjex.append(getChild("name_suraimg")) self.Listimgjex.append(getChild("name_shamanimg")) # self.Listdesjex = [] # self.Listdesjex.append(getChild("name_warriordes")) # self.Listdesjex.append(getChild("name_assassindes")) # self.Listdesjex.append(getChild("name_surades")) # self.Listdesjex.append(getChild("name_shamandes")) self.GaugeList = [] self.GaugeList.append(getChild("hth_gauge")) self.GaugeList.append(getChild("int_gauge")) self.GaugeList.append(getChild("str_gauge")) self.GaugeList.append(getChild("dex_gauge")) self.btnCreate = getChild("create_button") self.btnCancel = getChild("cancel_button") self.btnPrev = getChild("prev_button") self.btnNext = getChild("next_button") self.btnLeft = getChild("left_button") self.btnRight = getChild("right_button") self.textBoard = getChild("text_board") self.genderTextLine = getChild("character_gender") self.shapeTextLine = getChild("character_style") self.genderButtonList = [] self.genderButtonList.append(getChild("gender_button_01")) self.genderButtonList.append(getChild("gender_button_02")) self.shapeButtonList = [] self.shapeButtonList.append(getChild("shape_button_01")) self.shapeButtonList.append(getChild("shape_button_02")) self.editCharacterName = getChild("character_name_value") self.statValue = [] self.statValue.append(getChild("hth_value")) self.statValue.append(getChild("int_value")) self.statValue.append(getChild("str_value")) self.statValue.append(getChild("dex_value")) getChild("hth_button").ShowToolTip = lambda arg=self.STAT_CON: self.OverInStatButton(arg) getChild("hth_button").HideToolTip = lambda arg=self.STAT_CON: self.OverOutStatButton() getChild("int_button").ShowToolTip = lambda arg=self.STAT_INT: self.OverInStatButton(arg) getChild("int_button").HideToolTip = lambda arg=self.STAT_INT: self.OverOutStatButton() getChild("str_button").ShowToolTip = lambda arg=self.STAT_STR: self.OverInStatButton(arg) getChild("str_button").HideToolTip = lambda arg=self.STAT_STR: self.OverOutStatButton() getChild("dex_button").ShowToolTip = lambda arg=self.STAT_DEX: self.OverInStatButton(arg) getChild("dex_button").HideToolTip = lambda arg=self.STAT_DEX: self.OverOutStatButton() getChild("hth_button").Hide() getChild("int_button").Hide() getChild("str_button").Hide() getChild("dex_button").Hide() self.backGround = getChild("BackGround") except: import exception exception.Abort("CreateCharacterWindow.Open.BindObject") self.btnCreate.SetEvent(ui.__mem_func__(self.CreateCharacter)) self.btnCancel.SetEvent(ui.__mem_func__(self.CancelCreate)) self.btnPrev.SetEvent(ui.__mem_func__(self.PrevDescriptionPage)) self.btnNext.SetEvent(ui.__mem_func__(self.NextDescriptionPage)) self.btnLeft.SetEvent(ui.__mem_func__(self.__DecreaseSlotIndex)) self.btnRight.SetEvent(ui.__mem_func__(self.__IncreaseSlotIndex)) self.genderButtonList[0].SetEvent(ui.__mem_func__(self.__SelectGender), MAN) self.genderButtonList[1].SetEvent(ui.__mem_func__(self.__SelectGender), WOMAN) self.shapeButtonList[0].SetEvent(ui.__mem_func__(self.__SelectShape), SHAPE0) self.shapeButtonList[1].SetEvent(ui.__mem_func__(self.__SelectShape), SHAPE1) self.editCharacterName.SetReturnEvent(ui.__mem_func__(self.CreateCharacter)) self.editCharacterName.SetEscapeEvent(ui.__mem_func__(self.CancelCreate)) self.dlgBoard = dlgBoard self.curRotation = [] + self.SLOT_ROTATION self.destRotation = [] + self.SLOT_ROTATION self.curNameAlpha = [0.0, 0.0, 0.0, 0.0, 0.0] self.destNameAlpha = [0.0, 0.0, 0.0, 0.0, 0.0] self.curGauge = [0.0, 0.0, 0.0, 0.0] self.destGauge = [0.0, 0.0, 0.0, 0.0] self.descriptionBox = self.DescriptionBox() self.descriptionBox.Show() self.chrRenderer = self.CharacterRenderer() self.chrRenderer.SetParent(self.backGround) self.chrRenderer.Show() self.toolTip = uiToolTip.ToolTip() self.toolTip.ClearToolTip() self.editCharacterName.SetText("") self.EnableWindow() self.__SelectSlot(0) app.SetCamera(500.0, 10.0, 180.0, 95.0) self.__MakeCharacter(0, 0, playerSettingModule.RACE_WARRIOR_M) self.__MakeCharacter(0, 1, playerSettingModule.RACE_ASSASSIN_M) self.__MakeCharacter(0, 2, playerSettingModule.RACE_SURA_M) self.__MakeCharacter(0, 3, playerSettingModule.RACE_SHAMAN_M) self.__MakeCharacter(1, 0, playerSettingModule.RACE_WARRIOR_W) self.__MakeCharacter(1, 1, playerSettingModule.RACE_ASSASSIN_W) self.__MakeCharacter(1, 2, playerSettingModule.RACE_SURA_W) self.__MakeCharacter(1, 3, playerSettingModule.RACE_SHAMAN_W) self.btnCancel.SetText(localeInfo.CREATE_BUTTON_CANCEL) self.__SelectGender(MAN) self.__SelectShape(0) chr.SelectInstance(self.__GetSlotChrID(0, 0)) chr.Show() chr.SelectInstance(self.__GetSlotChrID(0, 1)) chr.Hide() chr.SelectInstance(self.__GetSlotChrID(0, 2)) chr.Hide() chr.SelectInstance(self.__GetSlotChrID(0, 3)) chr.Hide() chr.SelectInstance(self.__GetSlotChrID(1, 0)) chr.Hide() chr.SelectInstance(self.__GetSlotChrID(1, 1)) chr.Hide() chr.SelectInstance(self.__GetSlotChrID(1, 2)) chr.Hide() chr.SelectInstance(self.__GetSlotChrID(1, 3)) chr.Hide() self.__SelectSlot(0) self.dlgBoard.Show() self.Show() if musicInfo.createMusic != "": snd.SetMusicVolume(systemSetting.GetMusicVolume()) snd.FadeInMusic("BGM/"+musicInfo.createMusic) app.ShowCursor()
def SelectButton(self, slot): #print "self.RealSlot = %s" % self.RealSlot #slot 0 ~ 4 if slot >= self.mycharacters.GetMyCharacterCount( ) or slot == self.SelectSlot: return if self.Not_SelectMotion or self.MotionTime != 0.0: self.CharacterButtonList[slot].SetUp() self.CharacterButtonList[slot].Over() return for button in self.CharacterButtonList: button.SetUp() self.SelectSlot = slot self.CharacterButtonList[self.SelectSlot].Down() self.stream.SetCharacterSlot(self.RealSlot[self.SelectSlot]) self.select_job = self.mycharacters.GetJob(self.SelectSlot) ##Job Descirption## event.ClearEventSet(self.descIndex) self.descIndex = event.RegisterEventSet( self.DESCRIPTION_FILE_NAME[self.select_job]) #event.SetFontColor(self.descIndex, 0.7843, 0.7843, 0.7843) if localeInfo.IsARABIC(): event.SetEventSetWidth(self.descIndex, 170) else: event.SetRestrictedCount(self.descIndex, 35) if event.BOX_VISIBLE_LINE_COUNT >= event.GetTotalLineCount( self.descIndex): self.btnPrev.Hide() self.btnNext.Hide() else: self.btnPrev.Show() self.btnNext.Show() self.ResetStat() ## 한문 Setting ## for i in xrange(len(self.NameList)): if self.select_job == i: self.NameList[i].SetAlpha(1) else: self.NameList[i].SetAlpha(0) ## Face Setting & Font Color Setting ## self.select_race = self.mycharacters.GetRace(self.SelectSlot) #print "self.mycharacters.GetMyCharacterCount() = %s" % self.mycharacters.GetMyCharacterCount() for i in xrange(self.mycharacters.GetMyCharacterCount()): if slot == i: self.FaceImage[slot].LoadImage( self.RACE_FACE_PATH[self.select_race] + "1.sub") self.CharacterButtonList[slot].SetAppendTextColor( 0, self.Name_FontColor) else: self.FaceImage[i].LoadImage( self.RACE_FACE_PATH[self.mycharacters.GetRace(i)] + "2.sub") self.CharacterButtonList[i].SetAppendTextColor( 0, self.Name_FontColor_Def) ## Desc Face & raceText Setting ## self.discFace.LoadImage(self.DISC_FACE_PATH[self.select_race]) self.raceNameText.SetText(self.JOB_LIST[self.select_job]) chr.Hide() chr.SelectInstance(self.SelectSlot) chr.Show()