Пример #1
0
    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)
Пример #2
0
	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()
Пример #3
0
	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()
Пример #4
0
    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()
Пример #5
0
    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()
Пример #6
0
	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()
Пример #7
0
	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()
Пример #8
0
	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()
Пример #10
0
	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()
Пример #11
0
	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()