def __SetSkillGroupName(self, race, group): job = chr.RaceToJob(race) if not self.SKILL_GROUP_NAME_DICT.has_key(job): return nameList = self.SKILL_GROUP_NAME_DICT[job] if 0 == group: self.skillGroupButton1.SetText(nameList[1]) self.skillGroupButton2.SetText(nameList[2]) self.skillGroupButton1.Show() self.skillGroupButton2.Show() self.activeSkillGroupName.Hide() else: if self.__CanUseHorseSkill(): self.activeSkillGroupName.Hide() self.skillGroupButton1.SetText(nameList.get(group, "Noname")) self.skillGroupButton2.SetText(localeInfo.SKILL_GROUP_HORSE) self.skillGroupButton1.Show() self.skillGroupButton2.Show() else: self.activeSkillGroupName.SetText(nameList.get(group, "Noname")) self.activeSkillGroupName.Show() self.skillGroupButton1.Hide() self.skillGroupButton2.Hide()
def RegisterSkillAt(race, group, pos, num): DefineSkillIndexDict() job = chr.RaceToJob(race) tmp = list(SKILL_INDEX_DICT[job][group]) tmp[pos] = num SKILL_INDEX_DICT[job][group] = tuple(tmp) player.SetSkill(pos + 1, num)
def SetSortingData(self, slot, race, guildname, playtime, pStr, pDex, pHth, pInt, changename): self.HowManyChar += 1 self.Race[slot] = race self.Job[slot] = chr.RaceToJob(race) self.Guild_Name[slot] = guildname self.Play_Time[slot] = playtime self.Change_Name[slot] = changename self.Stat_Point[slot] = [pHth, pInt, pStr, pDex]
def RegisterSkill(race, group, empire=0): DefineSkillIndexDict() job = chr.RaceToJob(race) ## Character Skill if SKILL_INDEX_DICT.has_key(job): if SKILL_INDEX_DICT[job].has_key(group): activeSkillList = SKILL_INDEX_DICT[job][group] for i in xrange(len(activeSkillList)): skillIndex = activeSkillList[i] ## 7�� 8�� ��ų�� ���⼭ �����ϸ� �ȵ� if i != 6 and i != 7: player.SetSkill(i + 1, skillIndex) supportSkillList = SKILL_INDEX_DICT[job]["SUPPORT"] for i in xrange(len(supportSkillList)): player.SetSkill(i + 100 + 1, supportSkillList[i]) ## Language Skill if 0 != empire: languageSkillList = [] for i in xrange(3): if (i + 1) != empire: languageSkillList.append(player.SKILL_INDEX_LANGUAGE1 + i) for i in xrange(len(languageSkillList)): player.SetSkill(107 + i, languageSkillList[i]) ## Guild Skill for i in xrange(len(PASSIVE_GUILD_SKILL_INDEX_LIST)): player.SetSkill(200 + i, PASSIVE_GUILD_SKILL_INDEX_LIST[i]) for i in xrange(len(ACTIVE_GUILD_SKILL_INDEX_LIST)): player.SetSkill(210 + i, ACTIVE_GUILD_SKILL_INDEX_LIST[i])
def RefreshCharacter(self): if self.isLoaded==0: return ## Name try: characterName = player.GetName() guildName = player.GetGuildName() self.characterNameValue.SetText(characterName) self.guildNameValue.SetText(guildName) if not guildName: if localeInfo.IsARABIC(): self.characterNameSlot.SetPosition(190, 34) else: self.characterNameSlot.SetPosition(109, 34) self.guildNameSlot.Hide() else: if localeInfo.IsJAPAN(): self.characterNameSlot.SetPosition(143, 34) else: self.characterNameSlot.SetPosition(153, 34) self.guildNameSlot.Show() except: import exception exception.Abort("CharacterWindow.RefreshCharacter.BindObject") race = net.GetMainActorRace() group = net.GetMainActorSkillGroup() empire = net.GetMainActorEmpire() ## Job Text job = chr.RaceToJob(race) self.__SetJobText(job, group) ## FaceImage try: faceImageName = FACE_IMAGE_DICT[race] try: self.faceImage.LoadImage(faceImageName) except: print "CharacterWindow.RefreshCharacter(race=%d, faceImageName=%s)" % (race, faceImageName) self.faceImage.Hide() except KeyError: self.faceImage.Hide() ## GroupName self.__SetSkillGroupName(race, group) ## Skill if 0 == group: self.__SelectSkillGroup(0) else: self.__SetSkillSlotData(race, group, empire) if self.__CanUseHorseSkill(): self.__SelectSkillGroup(0)
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[i] = 0.0 for i in xrange(self.SLOT_COUNT): self.destRotation[(i + self.slot) % self.SLOT_COUNT] = self.SLOT_ROTATION[i] self.destGauge = [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()