def parseLoadChar(self, line): token, name, charType = line char = Char.Char() dna = CharDNA.CharDNA() dna.newChar(charType) char.setDNA(dna) if charType == 'mk' or charType == 'mn': char.startEarTask() char.nametag.manage(base.marginManager) char.addActive() char.hideName() self.setVar(name, char)
def parseLoadClassicChar(self, line): token, name = line char = Char.Char() dna = CharDNA.CharDNA() if self.toon.getStyle().gender == 'm': charType = 'mk' else: charType = 'mn' dna.newChar(charType) char.setDNA(dna) char.startEarTask() char.nametag.manage(base.marginManager) char.addActive() char.hideName() self.setVar(name, char) self.chars.append(char)
def load(self): self.notify.debug('load') DistributedMinigame.load(self) self.timer = ToontownTimer.ToontownTimer() self.timer.posInTopRightCorner() self.timer.hide() self.room = loader.loadModel('phase_4/models/minigames/matching_room') self.buttonSounds = [] for soundName in self.ButtonSoundNames: self.buttonSounds.append(base.loader.loadSfx(soundName)) self.correctSound = base.loader.loadSfx('phase_4/audio/sfx/MG_pos_buzzer.ogg') self.incorrectSound = base.loader.loadSfx('phase_4/audio/sfx/MG_neg_buzzer.ogg') self.perfectSound = base.loader.loadSfx('phase_4/audio/sfx/MG_win.ogg') self.fallSound = base.loader.loadSfx('phase_4/audio/sfx/MG_Tag_A.ogg') self.music = base.loader.loadMusic(self.bgm) self.waitingText = DirectLabel(text=self.strPleaseWait, text_fg=(0.9, 0.9, 0.9, 1.0), frameColor=(1, 1, 1, 0), text_font=ToontownGlobals.getSignFont(), pos=(0, 0, -.78), scale=0.12) self.roundText = DirectLabel(text=self.strRound % 1, text_fg=self.normalTextColor, frameColor=(1, 1, 1, 0), text_font=ToontownGlobals.getSignFont(), pos=(0.014, 0, -.84), scale=0.12) self.roundText.hide() self.waitingText.hide() matchingGameGui = loader.loadModel('phase_3.5/models/gui/matching_game_gui') minnieArrow = matchingGameGui.find('**/minnieArrow') minnieX = matchingGameGui.find('**/minnieX') minnieCircle = matchingGameGui.find('**/minnieCircle') self.arrows = [None] * 5 for x in range(0, 5): self.arrows[x] = minnieArrow.copyTo(hidden) self.arrows[x].hide() self.xs = [None] * 5 for x in range(0, 5): self.xs[x] = minnieX.copyTo(hidden) self.xs[x].hide() self.statusBalls = [] self.totalMoves = PatternGameGlobals.INITIAL_ROUND_LENGTH + PatternGameGlobals.ROUND_LENGTH_INCREMENT * (PatternGameGlobals.NUM_ROUNDS - 1) for x in range(0, 4): self.statusBalls.append([None] * self.totalMoves) for x in range(0, 4): for y in range(0, self.totalMoves): self.statusBalls[x][y] = minnieCircle.copyTo(hidden) self.statusBalls[x][y].hide() minnieArrow.removeNode() minnieX.removeNode() minnieCircle.removeNode() matchingGameGui.removeNode() self.minnie = Char.Char() m = self.minnie dna = CharDNA.CharDNA() dna.newChar('mn') m.setDNA(dna) m.setName(TTLocalizer.Minnie) m.reparentTo(hidden) self.backRowHome = Point3(3, 11, 0) self.backRowXSpacing = 1.8 self.frontRowHome = Point3(0, 18, 0) self.frontRowXSpacing = 3.0 self.stdNumDanceStepPingFrames = self.minnie.getNumFrames(self.minnieAnimNames[0]) self.stdNumDanceStepPingPongFrames = self.__numPingPongFrames(self.stdNumDanceStepPingFrames) self.buttonPressDelayPercent = (self.stdNumDanceStepPingFrames - 1.0) / self.stdNumDanceStepPingPongFrames self.animPlayRates = [] animPlayRate = 1.4 animPlayRateMult = 1.06 for i in range(PatternGameGlobals.NUM_ROUNDS): self.animPlayRates.append(animPlayRate) animPlayRate *= animPlayRateMult return
def load(self): gui = loader.loadModelOnce('phase_3/models/gui/create_a_toon_gui') self.guiTopBar = DirectFrame(relief=None, image=gui.find('**/CrtATn_TopBar'), text=TTLocalizer.CreateYourToon, text_font=ToontownGlobals.getSignFont(), text_fg=(0.0, 0.65000000000000002, 0.34999999999999998, 1), text_scale=0.17999999999999999, text_pos=(0, -0.029999999999999999), pos=(0, 0, 0.85999999999999999)) self.guiTopBar.hide() self.guiBottomBar = DirectFrame( relief=None, image=gui.find('**/CrtATn_BtmBar'), image_scale=( (base.win.getXSize() / 948.14814814814814814814814814815) * 0.98765432098765432098765432098765, 1, 1), pos=(0, 0, -0.85999999999999999)) self.guiBottomBar.hide() self.guiCheckButton = DirectButton( parent=self.guiBottomBar, relief=None, image=(gui.find('**/CrtAtoon_Btn1_UP'), gui.find('**/CrtAtoon_Btn1_DOWN'), gui.find('**/CrtAtoon_Btn1_RLLVR')), pos=(base.a2dRight - 0.165, 0, -0.017999999999999999), command=self._MakeAToon__handleNext, text=('', TTLocalizer.MakeAToonDone, TTLocalizer.MakeAToonDone), text_font=ToontownGlobals.getInterfaceFont(), text_scale=0.080000000000000002, text_pos=(0, -0.029999999999999999), text_fg=(1, 1, 1, 1), text_shadow=(0, 0, 0, 1)) self.guiCheckButton.hide() self.guiCancelButton = DirectButton( parent=self.guiBottomBar, relief=None, image=(gui.find('**/CrtAtoon_Btn2_UP'), gui.find('**/CrtAtoon_Btn2_DOWN'), gui.find('**/CrtAtoon_Btn2_RLLVR')), pos=(base.a2dLeft + 0.179, 0, -0.010999999999999999), command=self._MakeAToon__handleCancel, text=('', TTLocalizer.MakeAToonCancel, TTLocalizer.MakeAToonCancel), text_font=ToontownGlobals.getInterfaceFont(), text_scale=0.080000000000000002, text_pos=(0, -0.029999999999999999), text_fg=(1, 1, 1, 1), text_shadow=(0, 0, 0, 1)) self.guiCancelButton.hide() self.guiNextButton = DirectButton( parent=self.guiBottomBar, relief=None, image=(gui.find('**/CrtAtoon_Btn3_UP'), gui.find('**/CrtAtoon_Btn3_DN'), gui.find('**/CrtAtoon_Btn3_RLVR')), pos=(base.a2dRight - 0.165, 0, -0.017999999999999999), command=self._MakeAToon__handleNext, text=('', TTLocalizer.MakeAToonNext, TTLocalizer.MakeAToonNext), text_font=ToontownGlobals.getInterfaceFont(), text_scale=0.080000000000000002, text_pos=(0, -0.029999999999999999), text_fg=(1, 1, 1, 1), text_shadow=(0, 0, 0, 1)) self.guiNextButton.hide() self.guiLastButton = DirectButton( parent=self.guiBottomBar, relief=None, image=(gui.find('**/CrtAtoon_Btn3_UP'), gui.find('**/CrtAtoon_Btn3_DN'), gui.find('**/CrtAtoon_Btn3_RLVR')), image_scale=(-1, 1, 1), pos=(base.a2dRight - 0.505, 0, -0.017999999999999999), command=self._MakeAToon__handleLast, text=('', TTLocalizer.MakeAToonLast, TTLocalizer.MakeAToonLast), text_font=ToontownGlobals.getInterfaceFont(), text_scale=0.080000000000000002, text_pos=(0, -0.029999999999999999), text_fg=(1, 1, 1, 1), text_shadow=(0, 0, 0, 1)) self.guiLastButton.hide() gui.removeNode() self.room = loader.loadModel('phase_3/models/gui/create_a_toon') self.roomWalls = self.room.find('**/wall_floor') self.draftingTable = self.room.find('**/drafting_table') self.easel = self.room.find('**/easel') self.sewingMachine = self.room.find('**/sewing_machine') ee = DirectFrame(pos=(-1, 1, 1), frameSize=(-0.01, 0.01, -0.01, 0.01), frameColor=(0, 0, 0, 0.050000000000000003), state='normal') ee.bind(DGG.B1PRESS, lambda x, ee=ee: self.toggleSlide()) self.eee = ee self.stool = self.room.find('**/stool') self.stool.hide() self.draftingTable.hide() self.easel.hide() self.sewingMachine.hide() if not (self.warp): self.dna = ToonDNA.ToonDNA() animal = random.choice(ToonDNA.toonHeadAnimalIndices) head = ToonDNA.toonHeadTypes[animal] torso = random.choice(ToonDNA.toonTorsoTypes[-3:]) leg = random.choice(ToonDNA.toonLegTypes) self.dna.newToon((head, torso, leg, 'm')) else: self.dna = ToonDNA.ToonDNA() self.dna.makeFromNetString(self.namelessPotAv.dna) self.toon = Toon.Toon() self.toon.setDNA(self.dna) self.toon.useLOD(1000) self.toon.setNameVisible(0) self.toon.startBlink() self.toon.startLookAround() self.mickey = Char.Char() mickeyDNA = CharDNA.CharDNA() mickeyDNA.newChar('mk') self.mickey.setDNA(mickeyDNA) self.mickey.addActive() self.mickey.startEarTask() self.mickey.setNametagScale(0.80000000000000004) self.mickey.hideName() self.mickey.setPickable(1) #self.mickey.nametag.getNametag3d().setChatWordwrap(8) self.minnie = Char.Char() minnieDNA = CharDNA.CharDNA() minnieDNA.newChar('mn') self.minnie.setDNA(minnieDNA) self.minnie.addActive() self.minnie.startEarTask() self.minnie.setNametagScale(0.80000000000000004) self.minnie.hideName() self.minnie.setPickable(1) #self.minnie.nametag.getNametag3d().setChatWordwrap(8) self.gs.load() self.bs.load() self.cos.load() self.cls.load() self.ns.load() self.music = base.loadMusic('phase_3/audio/bgm/create_a_toon.ogg') self.soundBack = base.loadSfx( 'phase_3/audio/sfx/GUI_create_toon_back.ogg') return None
def load(self): SafeZoneLoader.load(self) # Flippy self.flippy = NPCToons.createLocalNPC(2001) self.flippy.reparentTo(render) self.flippy.setPickable(0) self.flippy.setPos(178.6, -265.6, 5.2) self.flippy.setH(100) self.flippy.initializeBodyCollisions('toon') self.flippy.addActive() self.flippy.startBlink() self.flippyBlatherSequence = Sequence( Wait(10), Func(self.flippy.setChatAbsolute, 'Hey, how\'s it going?', CFSpeech | CFTimeout), Wait(5), Func( self.flippy.setChatAbsolute, "I'm fine myself, given how I've had to code ToonFest into RTTIM.", CFSpeech | CFTimeout), Wait(8), Func(self.flippy.setChatAbsolute, "Thanks, Bill.", CFSpeech | CFTimeout), Wait(5), Func(self.flippy.setChatAbsolute, "Anyway, I hope you enjoy it.", CFSpeech | CFTimeout), Wait(7), Func(self.flippy.setChatAbsolute, 'I didn\'t do it for nothing.', CFSpeech | CFTimeout)) self.flippyBlatherSequence.start() # Fluffy self.mickey = Char.Char() self.mickeyDNA = CharDNA.CharDNA() self.mickeyDNA.newChar('mk') self.mickey.setDNA(self.mickeyDNA) self.mickey.addActive() self.mickey.startEarTask() self.mickey.reparentTo(render) self.mickey.setPos(180.382, -271.073, 5.621) self.mickey.setH(67.684) # Bill self.bill = NPCToons.createLocalNPC(2001) self.bill.reparentTo(render) self.bill.setPickable(0) self.bill.setPos(112.799, -19.293, 4.597) self.bill.setH(-164.953) self.bill.initializeBodyCollisions('toon') self.bill.addActive() self.bill.startBlink() self.billRun = Sequence( Func(self.bill.loop, 'run'), self.bill.posInterval(8.1, (154.792, -175.501, 4.597)), Func(self.bill.loop, 'walk'), self.bill.hprInterval(1.0, (-344.953, 0, 0)), Func(self.bill.loop, 'run'), self.bill.posInterval(8.1, (112.799, -19.293, 4.597)), Func(self.bill.loop, 'walk'), self.bill.hprInterval(1.0, (-164.953, 0, 0))) self.billRun.loop() self.bfs = Suit.Suit() self.bfsDNA = SuitDNA.SuitDNA() self.bfsDNA.newSuit('bfs') self.bfs.setDNA(self.bfsDNA) self.bfs.setPickable(0) self.bfs.addActive() self.bfs.reparentTo(render) self.bfs.initializeBodyCollisions('suit') self.bfs.setPos(207, -164, 4.597) self.bfs.setH(-240.097) self.bfs.pingpong('slip-forward', 30, 40) #BossCog self.vp = BossCog.BossCog() self.vpDNA = SuitDNA.SuitDNA() self.vpDNA.newBossCog('s') self.vp.setDNA(self.vpDNA) self.vp.addActive() self.vp.reparentTo(render) self.vp.initializeBodyCollisions('bosscog') self.vp.setPos(302.777, -370.352, 14.446) self.vp.setH(-126.356) self.vp.happy = 0 self.vp.doAnimate(self.vp.getAnim(None)) # Find the bases - base1 is largest try: self.towerGeom = self.geom.find('**/toonfest_tower_DNARoot') self.towerGeom.find('**/itsclosed').removeNode() self.base1 = self.towerGeom.find('**/base1') self.base2 = self.towerGeom.find('**/base2') self.base3 = self.towerGeom.find('**/base3') except: self.notify.warning("Something messed up loading the tower bases!") self.confetti = None self.confettiRender = None self.confettiFade = None self.loadConfetti()
def load(self): self.notify.debug("load") DistributedMinigame.load(self) # create the timer self.timer = ToontownTimer.ToontownTimer() self.timer.posInTopRightCorner() self.timer.hide() # load the room self.room = loader.loadModel("phase_4/models/minigames/matching_room") # load sounds self.buttonSounds = [] for soundName in self.ButtonSoundNames: self.buttonSounds.append(base.loadSfx(soundName)) self.correctSound = base.loadSfx("phase_4/audio/sfx/MG_pos_buzzer.wav") self.incorrectSound = base.loadSfx(\ "phase_4/audio/sfx/MG_neg_buzzer.wav") self.perfectSound = base.loadSfx("phase_4/audio/sfx/MG_win.mp3") self.fallSound = base.loadSfx("phase_4/audio/sfx/MG_Tag_A.mp3") # load music self.music = base.loadMusic(self.bgm) # create the onscreen text messages self.waitingText = DirectLabel( text = self.strPleaseWait, text_fg = (.9,.9,.9,1.), frameColor = (1,1,1,0), text_font = ToontownGlobals.getSignFont(), pos = (0,0,-.78), scale = .12) self.roundText = DirectLabel( text = self.strRound % 1, text_fg = self.normalTextColor, frameColor = (1,1,1,0), text_font = ToontownGlobals.getSignFont(), pos = (0.014, 0, -.84), scale = .12) self.roundText.hide() self.waitingText.hide() matchingGameGui = loader.loadModel( 'phase_3.5/models/gui/matching_game_gui') minnieArrow = matchingGameGui.find("**/minnieArrow") minnieX = matchingGameGui.find("**/minnieX") minnieCircle = matchingGameGui.find("**/minnieCircle") # Load the arrows for above the toons' heads self.arrows = [None] * 5 for x in range(0,5): self.arrows[x] = minnieArrow.copyTo(hidden) self.arrows[x].hide() # Load the X's for above the toons' heads self.xs = [None] * 5 for x in range(0,5): self.xs[x] = minnieX.copyTo(hidden) self.xs[x].hide() # Load the status balls for above the toons' heads self.statusBalls = [] self.totalMoves = PatternGameGlobals.INITIAL_ROUND_LENGTH + \ (PatternGameGlobals.ROUND_LENGTH_INCREMENT * \ (PatternGameGlobals.NUM_ROUNDS-1)) for x in range(0,4): self.statusBalls.append([None]*self.totalMoves) for x in range(0,4): for y in range(0,self.totalMoves): self.statusBalls[x][y] = minnieCircle.copyTo(hidden) self.statusBalls[x][y].hide() minnieArrow.removeNode() minnieX.removeNode() minnieCircle.removeNode() matchingGameGui.removeNode() # make Minnie self.minnie = Char.Char() m = self.minnie dna = CharDNA.CharDNA() dna.newChar('mn') m.setDNA(dna) m.setName(TTLocalizer.Minnie) m.reparentTo(hidden) self.backRowHome = Point3(3,11,0) self.backRowXSpacing = 1.8 #3 moose self.frontRowHome = Point3(0,18,0) self.frontRowXSpacing = 3. # all dance step animations may not necessarily have the same # number of frames; pick minnie's first animation to be the # standard, scale other animations so that they take the same # amount of time to ping-pong self.stdNumDanceStepPingFrames = \ self.minnie.getNumFrames(self.minnieAnimNames[0]) self.stdNumDanceStepPingPongFrames = \ self.__numPingPongFrames(self.stdNumDanceStepPingFrames) # how far into a played-back dance step the button gets pressed self.buttonPressDelayPercent = ((self.stdNumDanceStepPingFrames-1.) / self.stdNumDanceStepPingPongFrames) # speed up the animations with each successive round self.animPlayRates = [] animPlayRate = 1.4 animPlayRateMult = 1.06 for i in range(PatternGameGlobals.NUM_ROUNDS): self.animPlayRates.append(animPlayRate) animPlayRate *= animPlayRateMult
def load(self): gui = loader.loadModel("phase_3/models/gui/create_a_toon_gui") self.guiTopBar = DirectFrame( relief=None, image=gui.find("**/CrtATn_TopBar"), text=TTLocalizer.CreateYourToon, text_font=ToontownGlobals.getSignFont(), text_fg=(0.0, 0.65, 0.35, 1), text_scale=0.18, text_pos=(0, -0.03), pos=(0, 0, 0.86), ) self.guiTopBar.hide() self.guiBottomBar = DirectFrame( relief=None, image=gui.find("**/CrtATn_BtmBar"), image_scale=(1.25, 1, 1), pos=(0.01, 0, -0.86), ) self.guiBottomBar.hide() self.guiCheckButton = DirectButton( parent=self.guiBottomBar, relief=None, image=( gui.find("**/CrtAtoon_Btn1_UP"), gui.find("**/CrtAtoon_Btn1_DOWN"), gui.find("**/CrtAtoon_Btn1_RLLVR"), ), pos=(1.165, 0, -0.018), command=self.__handleNext, text=("", TTLocalizer.MakeAToonDone, TTLocalizer.MakeAToonDone), text_font=ToontownGlobals.getInterfaceFont(), text_scale=0.08, text_pos=(0, -0.03), text_fg=(1, 1, 1, 1), text_shadow=(0, 0, 0, 1), ) self.guiCheckButton.hide() self.guiCancelButton = DirectButton( parent=self.guiBottomBar, relief=None, image=( gui.find("**/CrtAtoon_Btn2_UP"), gui.find("**/CrtAtoon_Btn2_DOWN"), gui.find("**/CrtAtoon_Btn2_RLLVR"), ), pos=(-1.179, 0, -0.011), command=self.__handleCancel, text=("", TTLocalizer.MakeAToonCancel, TTLocalizer.MakeAToonCancel), text_font=ToontownGlobals.getInterfaceFont(), text_scale=0.08, text_pos=(0, -0.03), text_fg=(1, 1, 1, 1), text_shadow=(0, 0, 0, 1), ) self.guiCancelButton.hide() self.guiNextButton = DirectButton( parent=self.guiBottomBar, relief=None, image=( gui.find("**/CrtAtoon_Btn3_UP"), gui.find("**/CrtAtoon_Btn3_DN"), gui.find("**/CrtAtoon_Btn3_RLVR"), ), pos=(1.165, 0, -0.018), command=self.__handleNext, text=("", TTLocalizer.MakeAToonNext, TTLocalizer.MakeAToonNext), text_font=ToontownGlobals.getInterfaceFont(), text_scale=0.08, text_pos=(0, -0.03), text_fg=(1, 1, 1, 1), text_shadow=(0, 0, 0, 1), ) self.guiNextButton.hide() self.guiLastButton = DirectButton( parent=self.guiBottomBar, relief=None, image=( gui.find("**/CrtAtoon_Btn3_UP"), gui.find("**/CrtAtoon_Btn3_DN"), gui.find("**/CrtAtoon_Btn3_RLVR"), ), image_scale=(-1.0, 1, 1), pos=(0.825, 0, -0.018), command=self.__handleLast, text=("", TTLocalizer.MakeAToonLast, TTLocalizer.MakeAToonLast), text_font=ToontownGlobals.getInterfaceFont(), text_scale=0.08, text_pos=(0, -0.03), text_fg=(1, 1, 1, 1), text_shadow=(0, 0, 0, 1), ) self.guiLastButton.hide() gui.removeNode() self.room = loader.loadModel("phase_3/models/gui/create_a_toon") self.roomWalls = self.room.find("**/wall_floor") self.draftingTable = self.room.find("**/drafting_table") self.easel = self.room.find("**/easel") self.sewingMachine = self.room.find("**/sewing_machine") ee = DirectFrame(pos=(-1, 1, 1), frameSize=(-.01, .01, -.01, .01), frameColor=(0, 0, 0, .05), state='normal') ee.bind(DGG.B1PRESS, lambda x, ee=ee: self.toggleSlide()) self.eee = ee # Get rid of the stool for now until we integrate it properly self.stool = self.room.find("**/stool") self.stool.hide() self.draftingTable.hide() self.easel.hide() self.sewingMachine.hide() # create an initial random, naked, grey toon if not self.warp: self.dna = ToonDNA.ToonDNA() animalIndicesToUse = ToonDNA.toonHeadAnimalIndices animal = random.choice(animalIndicesToUse) head = ToonDNA.toonHeadTypes[animal] torso = random.choice(ToonDNA.toonTorsoTypes[-3:]) leg = random.choice(ToonDNA.toonLegTypes) self.dna.newToon((head, torso, leg, 'm')) else: self.dna = ToonDNA.ToonDNA() self.dna.makeFromNetString(self.namelessPotAv.dna) self.toon = Toon.Toon() self.toon.setDNA(self.dna) # make sure the avatar uses its highest LOD self.toon.useLOD(1000) # make sure his name doesn't show up self.toon.setNameVisible(0) self.toon.startBlink() self.toon.startLookAround() # Create Mickey self.mickey = Char.Char() mickeyDNA = CharDNA.CharDNA() mickeyDNA.newChar('mk') self.mickey.setDNA(mickeyDNA) # Activate Mickey's nametag, so we can see what he's saying. #self.mickey.nametag.manage(base.marginManager) self.mickey.addActive() self.mickey.startEarTask() # Choose a suitable scale for his chat balloon. self.mickey.setNametagScale(0.8) # But we don't want to see his name or anything. self.mickey.hideName() # But we do want to be able to click on him. self.mickey.setPickable(1) # And we don't want his speech bubble to extend offscreen. self.mickey.nametag.getNametag3d().setChatWordwrap(8) # Create Minnie self.minnie = Char.Char() minnieDNA = CharDNA.CharDNA() minnieDNA.newChar('mn') self.minnie.setDNA(minnieDNA) # Activate Minnie's nametag, so we can see what she's saying. #self.minnie.nametag.manage(base.marginManager) self.minnie.addActive() self.minnie.startEarTask() # Choose a suitable scale for her chat balloon. self.minnie.setNametagScale(0.8) # But we don't want to see her name or anything. self.minnie.hideName() # But we do want to be able to click on him. self.minnie.setPickable(1) # And we don't want her speech bubble to be too big self.minnie.nametag.getNametag3d().setChatWordwrap(8) self.gs.load() self.bs.load() self.cos.load() self.cls.load() self.ns.load() self.music = base.loadMusic("phase_3/audio/bgm/create_a_toon.mid") self.musicVolume = base.config.GetFloat("makeatoon-music-volume", 0.5) print self.musicVolume self.soundBack = base.loadSfx( "phase_3/audio/sfx/GUI_create_toon_back.mp3") if base.config.GetString("language", "english") == "japanese": self.mickeyDialogueArray = [ base.loadSfx("phase_3/audio/dial/CC_mickey_create01.mp3"), base.loadSfx("phase_3/audio/dial/CC_mickey_create02.mp3"), base.loadSfx("phase_3/audio/dial/CC_mickey_create03.mp3") ] else: self.mickeyDialogueArray = [None, None, None] if base.config.GetString("language", "english") == "japanese": self.minnieDialogueArray = [ base.loadSfx("phase_3/audio/dial/CC_minnie_create01.mp3"), base.loadSfx("phase_3/audio/dial/CC_minnie_create02.mp3"), base.loadSfx("phase_3/audio/dial/CC_minnie_create03.mp3") ] else: self.minnieDialogueArray = [None, None, None]
def load(self): gui = loader.loadModel('phase_3/models/gui/create_a_toon_gui') self.guiTopBar = DirectFrame(relief=None, image=gui.find('**/CrtATn_TopBar'), text=TTLocalizer.CreateYourToon, text_font=ToontownGlobals.getSignFont(), text_fg=(0.0, 0.65, 0.35, 1), text_scale=0.03, text_pos=(0, -0.03), pos=(0, 0, 0.86)) self.guiTopBar.hide() self.guiBottomBar = DirectFrame(relief=None, image=gui.find('**/CrtATn_BtmBar'), image_scale=( base.getAspectRatio() - 4.0 / 3.0 % 1.25, 1, 1), pos=(0.01, 0, -0.86)) self.accept('aspectRatioChanged', self.aspectRatioChanged) self.guiBottomBar.hide() self.guiCheckButton = DirectButton(parent=self.guiBottomBar, relief=None, image=( gui.find('**/CrtAtoon_Btn1_UP'), gui.find('**/CrtAtoon_Btn1_DOWN'), gui.find('**/CrtAtoon_Btn1_RLLVR')), pos=(1.165, 0, -0.018), command=self.__handleNext, text=( '', TTLocalizer.MakeAToonDone, TTLocalizer.MakeAToonDone), text_font=ToontownGlobals.getInterfaceFont(), text_scale=0.08, text_pos=(0, -0.03), text_fg=(1, 1, 1, 1), text_shadow=(0, 0, 0, 1)) self.guiCheckButton.hide() self.guiCancelButton = DirectButton(parent=self.guiBottomBar, relief=None, image=( gui.find('**/CrtAtoon_Btn2_UP'), gui.find('**/CrtAtoon_Btn2_DOWN'), gui.find('**/CrtAtoon_Btn2_RLLVR')), pos=(-1.179, 0, -0.011), command=self.__handleCancel, text=( '', TTLocalizer.MakeAToonCancel, TTLocalizer.MakeAToonCancel), text_font=ToontownGlobals.getInterfaceFont(), text_scale=TTLocalizer.MATnextButtonScale, text_pos=(0, -0.03), text_fg=(1, 1, 1, 1), text_shadow=(0, 0, 0, 1)) self.guiCancelButton.hide() self.guiNextButton = DirectButton(parent=self.guiBottomBar, relief=None, image=( gui.find('**/CrtAtoon_Btn3_UP'), gui.find('**/CrtAtoon_Btn3_DN'), gui.find('**/CrtAtoon_Btn3_RLVR')), pos=(1.165, 0, -0.018), command=self.__handleNext, text=( '', TTLocalizer.MakeAToonNext, TTLocalizer.MakeAToonNext), text_font=ToontownGlobals.getInterfaceFont(), text_scale=TTLocalizer.MATnextButtonScale, text_pos=(0, -0.03), text_fg=(1, 1, 1, 1), text_shadow=(0, 0, 0, 1)) self.guiNextButton.hide() self.guiLastButton = DirectButton(parent=self.guiBottomBar, relief=None, image=( gui.find('**/CrtAtoon_Btn3_UP'), gui.find('**/CrtAtoon_Btn3_DN'), gui.find('**/CrtAtoon_Btn3_RLVR')), image_scale=(-1.0, 1, 1), pos=(0.825, 0, -0.018), command=self.__handleLast, text=( '', TTLocalizer.MakeAToonLast, TTLocalizer.MakeAToonLast), text_font=ToontownGlobals.getInterfaceFont(), text_scale=0.08, text_pos=(0, -0.03), text_fg=(1, 1, 1, 1), text_shadow=(0, 0, 0, 1)) self.guiLastButton.hide() gui.removeNode() self.room = loader.loadModel('phase_3/models/gui/create_a_toon') self.roomWalls = self.room.find('**/wall_floor') self.draftingTable = self.room.find('**/drafting_table') self.easel = self.room.find('**/easel') self.sewingMachine = self.room.find('**/sewing_machine') ee = DirectFrame(pos=(-1, 1, 1), frameSize=(-0.01, 0.01, -0.01, 0.01), frameColor=(0, 0, 0, 0.05), state='normal') ee.bind(DGG.B1PRESS, lambda x, ee=ee: self.toggleSlide()) self.eee = ee self.stool = self.room.find('**/stool') self.stool.hide() self.draftingTable.hide() self.easel.hide() self.sewingMachine.hide() if not self.warp: self.dna = ToonDNA.ToonDNA() animalIndicesToUse = ToonDNA.toonHeadAnimalIndices[0:8] animal = random.choice(animalIndicesToUse) head = ToonDNA.toonHeadTypesMAT[animal] torso = random.choice(ToonDNA.toonTorsoTypes[-3:]) leg = random.choice(ToonDNA.toonLegTypes) self.dna.newToon((head, torso, leg, 'm')) else: self.dna = ToonDNA.ToonDNA() self.dna.makeFromNetString(self.namelessPotAv.dna) self.toon = Toon.Toon() self.toon.setDNA(self.dna) self.toon.useLOD(1000) self.toon.setNameVisible(0) self.toon.startBlink() self.toon.startLookAround() self.mickey = Char.Char() mickeyDNA = CharDNA.CharDNA() mickeyDNA.newChar('mk') self.mickey.setDNA(mickeyDNA) self.mickey.addActive() self.mickey.startEarTask() self.mickey.setNametagScale(0.8) self.mickey.hideName() self.mickey.setPickable(1) self.mickey.nametag.getNametag3d().setChatWordwrap(8) self.minnie = Char.Char() minnieDNA = CharDNA.CharDNA() minnieDNA.newChar('mn') self.minnie.setDNA(minnieDNA) self.minnie.addActive() self.minnie.startEarTask() self.minnie.setNametagScale(0.8) self.minnie.hideName() self.minnie.setPickable(1) self.minnie.nametag.getNametag3d().setChatWordwrap(8) self.gs.load() self.bs.load() self.cos.load() self.cls.load() self.ns.load() self.music = base.loader.loadMusic('phase_3/audio/bgm/create_a_toon.ogg') self.musicVolume = base.config.GetFloat('makeatoon-music-volume', 0.5) print self.musicVolume self.soundBack = base.loader.loadSfx('phase_3/audio/sfx/GUI_create_toon_back.ogg') if base.config.GetString('language', 'english') == 'japanese': self.mickeyDialogueArray = [base.loader.loadSfx('phase_3/audio/dial/CC_mickey_create01.ogg'), base.loader.loadSfx('phase_3/audio/dial/CC_mickey_create02.ogg'), base.loader.loadSfx('phase_3/audio/dial/CC_mickey_create03.ogg')] else: self.mickeyDialogueArray = [ None, None, None] if base.config.GetString('language', 'english') == 'japanese': self.minnieDialogueArray = [base.loader.loadSfx('phase_3/audio/dial/CC_minnie_create01.ogg'), base.loader.loadSfx('phase_3/audio/dial/CC_minnie_create02.ogg'), base.loader.loadSfx('phase_3/audio/dial/CC_minnie_create03.ogg')] else: self.minnieDialogueArray = [ None, None, None] return