def showPosts(self): self.hidePosts() self.posts = [Toon.Toon(), Toon.Toon(), Toon.Toon(), Toon.Toon()] for i in xrange(len(self.posts)): tree = self.posts[i] tree.reparentTo(render) x = self.StageHalfWidth y = self.StageHalfHeight if i > 1: x = -x if i % 2: y = -y tree.setPos(x + self.x, y + self.y, 0)
def load(self): Toon.loadMinigameAnims() self.defaultSignModel = loader.loadModel('phase_13/models/parties/eventSign') self.activityIconsModel = loader.loadModel('phase_4/models/parties/eventSignIcons') model = loader.loadModel('phase_4/models/parties/partyStickerbook') self.partyHat = model.find('**/Stickerbook_PartyIcon') self.partyHat.setPos(0.0, 0.1, 2.5) self.partyHat.setHpr(0.0, 0.0, -50.0) self.partyHat.setScale(4.0) self.partyHat.setBillboardAxis() self.partyHat.reparentTo(hidden) model.removeNode() self.defaultLeverModel = loader.loadModel('phase_13/models/parties/partyLeverBase') self.defaultStickModel = loader.loadModel('phase_13/models/parties/partyLeverStick')
def showPosts(self): self.hidePosts() self.posts = [Toon.Toon(), Toon.Toon(), Toon.Toon(), Toon.Toon()] for i in xrange(len(self.posts)): toon = self.posts[i] toon.setDNA(base.localAvatar.getStyle()) toon.reparentTo(render) x = self.StageHalfWidth y = self.StageHalfHeight if i > 1: x = -x if i % 2: y = -y toon.setPos(x, y, 0)
def getPicture(self, avatar): from src.toontown.toon import Toon self.hasPicture = True dna = ToonDNA.ToonDNA(type='t', dna=avatar.style) str = ClothingTypes[self.clothingType][CTString] if self.isShirt(): defn = ToonDNA.ShirtStyles[str] dna.topTex = defn[0] dna.topTexColor = defn[2][self.colorIndex][0] dna.sleeveTex = defn[1] dna.sleeveTexColor = defn[2][self.colorIndex][1] pieceNames = ('**/1000/**/torso-top', '**/1000/**/sleeves') else: defn = ToonDNA.BottomStyles[str] dna.botTex = defn[0] dna.botTexColor = defn[1][self.colorIndex] pieceNames = ('**/1000/**/torso-bot',) toon = Toon.Toon() toon.setDNA(dna) model = NodePath('clothing') for name in pieceNames: for piece in toon.findAllMatches(name): piece.wrtReparentTo(model) model.setH(180) toon.delete() return self.makeFrameModel(model)
def getPicture(self, avatar): from src.toontown.toon import Toon from src.toontown.toon import ToonHead from src.toontown.toon import TTEmote from src.otp.avatar import Emote self.hasPicture = True if self.emoteIndex in Emote.globalEmote.getHeadEmotes(): toon = ToonHead.ToonHead() toon.setupHead(avatar.style, forGui=1) else: toon = Toon.Toon() toon.setDNA(avatar.style) toon.loop('neutral') toon.setH(180) model, ival = self.makeFrameModel(toon, 0) track, duration = Emote.globalEmote.doEmote(toon, self.emoteIndex, volume=self.volume) if duration == None: duration = 0 name = 'emote-item-%s' % self.sequenceNumber CatalogEmoteItem.sequenceNumber += 1 if track != None: track = Sequence(Sequence(track, duration=0), Wait(duration + 2), name=name) else: track = Sequence(Func(Emote.globalEmote.doEmote, toon, self.emoteIndex), Wait(duration + 4), name=name) self.pictureToon = toon return (model, track)
def __makeResistanceToon(self): if self.resistanceToon: return npc = Toon.Toon() npc.setName(TTLocalizer.ResistanceToonName) npc.setPickable(0) npc.setPlayerType(NametagGroup.CCNonPlayer) dna = ToonDNA.ToonDNA() dna.newToonRandom(11237, 'f', 1) dna.head = 'pls' npc.setDNAString(dna.makeNetString()) npc.animFSM.request('neutral') self.resistanceToon = npc self.resistanceToon.setPosHpr(*ToontownGlobals.CashbotRTBattleOneStartPosHpr) state = random.getstate() random.seed(self.doId) self.resistanceToon.suitType = SuitDNA.getRandomSuitByDept('m') random.setstate(state) self.fakeGoons = [] for i in xrange(self.numFakeGoons): goon = DistributedCashbotBossGoon.DistributedCashbotBossGoon(base.cr) goon.doId = -1 - i goon.setBossCogId(self.doId) goon.generate() goon.announceGenerate() self.fakeGoons.append(goon) self.__hideFakeGoons()
def copyLocalAvatarToon(self): self.toon = Toon.Toon() self.toon.reparentTo(render) self.toon.setDNA(base.localAvatar.style) self.toon.setPos(base.localAvatar, 0, 0, 0) self.toon.pose('victory', 30) self.toon.setH(180) self.speciesType = self.toon.style.getAnimal() self.gender = self.toon.style.gender
def unload(self): if hasattr(self, 'decorationsList') and self.decorationsList: for decor in self.decorationsList: decor.unload() del self.decorationsList self.stopPartyClock() self.grassRoot.removeNode() del self.grassRoot if hasattr(self, 'testGrid'): self.testGrid.removeNode() del self.testGrid self.ignoreAll() Toon.unloadMinigameAnims() self.partyHat.removeNode() del self.partyHat if hasattr(base, 'partyHasJukebox'): del base.partyHasJukebox
def __addToonModel(self): toon = Toon.Toon() toon.setDNA(self.avatar.style) toon.reparentTo(self) toon.setPos(0.45, 0, 0.3) toon.setH(180) toon.setScale(0.11) toon.loop('neutral') toon.setDepthWrite(True) toon.setDepthTest(True)
def getIntroToon(toonProperties, parent, pos): toon = Toon.Toon() dna = ToonDNA.ToonDNA() dna.newToonFromProperties(*toonProperties) toon.setDNA(dna) toon.reparentTo(parent) toon.setPos(*pos) toon.setH(180) toon.startBlink() return toon
def makeToon(self): if not self.toon: self.toon = Toon.Toon() self.toon.setDNA(base.localAvatar.getStyle()) self.toon.getGeomNode().setDepthWrite(1) self.toon.getGeomNode().setDepthTest(1) self.toon.useLOD(500) self.toon.reparentTo(self.frame) self.toon.setPosHprScale(0, 10, -0.25, 210, 0, 0, 0.12, 0.12, 0.12) self.ignore('nametagAmbientLightChanged')
def load(self): self.notify.debug('load()') CogdoGameMovie.load(self) backgroundGui = loader.loadModel('phase_5/models/cogdominium/tt_m_gui_csa_flyThru') self.bg = backgroundGui.find('**/background') self.chatBubble = backgroundGui.find('**/chatBubble') self.chatBubble.setScale(6.5, 6.5, 7.3) self.chatBubble.setPos(0.32, 0, -0.78) self.bg.setScale(5.2) self.bg.setPos(0.14, 0, -0.6667) self.bg.reparentTo(aspect2d) self.chatBubble.reparentTo(aspect2d) self.frame = DirectFrame(geom=self.bg, relief=None, pos=(0.2, 0, -0.6667)) self.bg.wrtReparentTo(self.frame) self.gameTitleText = DirectLabel(parent=self.frame, text=TTLocalizer.CogdoExecutiveSuiteTitle, scale=TTLocalizer.MRPgameTitleText * 0.8, text_align=TextNode.ACenter, text_font=getSignFont(), text_fg=(1.0, 0.33, 0.33, 1.0), pos=TTLocalizer.MRgameTitleTextPos, relief=None) self.chatBubble.wrtReparentTo(self.frame) self.frame.hide() backgroundGui.removeNode() self.toonDNA = ToonDNA.ToonDNA() self.toonDNA.newToonFromProperties('dss', 'ss', 'm', 'm', 2, 0, 2, 2, 1, 8, 1, 8, 1, 14, 0) self.toonHead = Toon.Toon() self.toonHead.setDNA(self.toonDNA) self.makeSuit('sc') self.toonHead.getGeomNode().setDepthWrite(1) self.toonHead.getGeomNode().setDepthTest(1) self.toonHead.loop('neutral') self.toonHead.setPosHprScale(-0.73, 0, -1.27, 180, 0, 0, 0.18, 0.18, 0.18) self.toonHead.reparentTo(hidden) self.toonHead.startBlink() self.clipPlane = self.toonHead.attachNewNode(PlaneNode('clip')) self.clipPlane.node().setPlane(Plane(0, 0, 1, 0)) self.clipPlane.setPos(0, 0, 2.45) self._toonDialogueSfx = loader.loadSfx('phase_3.5/audio/dial/AV_dog_long.ogg') self._camHelperNode = NodePath('CamHelperNode') self._camHelperNode.reparentTo(render) dialogue = TTLocalizer.CogdoExecutiveSuiteIntroMessage def start(): self.frame.show() base.setCellsAvailable(base.bottomCells + base.leftCells + base.rightCells, 0) def showShopOwner(): self._setCamTarget(self._shopOwner, -10, offset=Point3(0, 0, 5)) def end(): self._dialogueLabel.reparentTo(hidden) self.toonHead.reparentTo(hidden) self.frame.hide() base.setCellsAvailable(base.bottomCells + base.leftCells + base.rightCells, 1) self._stopUpdateTask() self._ival = Sequence(Func(start), Func(self.displayLine, dialogue), Func(showShopOwner), ParallelEndTogether(camera.posInterval(self.cameraMoveDuration, Point3(8, 0, 13), blendType='easeInOut'), camera.hprInterval(0.5, self._camHelperNode.getHpr(), blendType='easeInOut')), Wait(self.introDuration), Func(end)) self._startUpdateTask() return
def showDropGrid(self): self.hideDropGrid() self.dropMarkers = [] for row in xrange(self.DropRows): self.dropMarkers.append([]) rowList = self.dropMarkers[row] for column in xrange(self.DropColumns): toon = Toon.Toon() toon.setDNA(base.localAvatar.getStyle()) toon.reparentTo(self.root) toon.setScale(1.0 / 3) x, y = self.grid2world(column, row) toon.setPos(x, y, 0) rowList.append(toon)
def createPreviewToon(self, dna): if hasattr(self, 'previewToon'): self.previewToon.delete() self.dnaSelected = dna self.previewToon = Toon.Toon() self.previewToon.setDNA(dna) self.previewToon.loop('neutral') self.previewToon.setH(180) self.previewToon.setPos(-0.3, 0, -0.3) self.previewToon.setScale(0.13) self.previewToon.reparentTo(self) self.previewToon.startBlink() self.previewToon.startLookAround() self.previewToon.getGeomNode().setDepthWrite(1) self.previewToon.getGeomNode().setDepthTest(1)
def setupStoneToon(self, dna): self.toon = Toon.Toon() self.toon.setPos(0, 0, 0) self.toon.setDNA(dna) self.toon.initializeBodyCollisions('toonStatue') self.toon.stopBlink() self.toon.stopLookAround() self.gender = self.toon.style.gender self.speciesType = self.toon.style.getAnimal() self.headType = self.toon.style.head self.removeTextures() self.setStoneTexture() self.toon.dropShadow.hide() self.toon.setZ(70) self.toon.setScale(20 / 1.5, 20 / 1.5, 20)
def _createRandomToon(self, gender): if self.toon: self.toon.stopBlink() self.toon.stopLookAroundNow() self.toon.delete() self.dna = ToonDNA.ToonDNA() self.dna.newToonRandom(gender=gender, stage=1) self.toon = Toon.Toon() self.toon.setDNA(self.dna) self.toon.useLOD(1000) self.toon.setNameVisible(0) self.toon.startBlink() self.toon.startLookAround() self.toon.reparentTo(render) self.toon.setPos(self.makeAToon.toonPosition) self.toon.setHpr(self.makeAToon.toonHpr) self.toon.setScale(self.makeAToon.toonScale) self.toon.loop('neutral') self.makeAToon.setNextButtonState(DGG.NORMAL) self.makeAToon.setToon(self.toon) messenger.send('MAT-newToonCreated')
def unloadBattleAnims(self): Toon.unloadBattleAnims()
def unloadBattleAnims(self): Toon.unloadTutorialBattleAnims()
def load(self): Place.Place.load(self) Toon.loadBattleAnims()
def unload(self): CogHQLoader.CogHQLoader.unload(self) Toon.unloadCashbotHQAnims()
def load(self, zoneId): CogHQLoader.CogHQLoader.load(self, zoneId) Toon.loadCashbotHQAnims()
def loadBattleAnims(self): Toon.loadBattleAnims()
def load(self, zoneId): CogHQLoader.CogHQLoader.load(self, zoneId) Toon.loadBossbotHQAnims()
def unload(self): self.notify.debug('BASE: unload') if hasattr(base, 'curMinigame'): del base.curMinigame Toon.unloadMinigameAnims()
def begin(self, range, label, gui, tipCategory, zoneId): self.defaultTex = 'phase_3.5/maps/loading/default.jpg' self.defaultFont = ToontownGlobals.getInterfaceFont() self.defaultFontColor = (0, 0, 0.5, 1) self.zone2picture = { ToontownGlobals.GoofySpeedway: 'phase_3.5/maps/loading/toon.jpg', ToontownGlobals.ToontownCentral: 'phase_3.5/maps/loading/toon.jpg', ToontownGlobals.SillyStreet: 'phase_3.5/maps/loading/toon.jpg', ToontownGlobals.LoopyLane: 'phase_3.5/maps/loading/toon.jpg', ToontownGlobals.PunchlinePlace: 'phase_3.5/maps/loading/toon.jpg', ToontownGlobals.DonaldsDock: 'phase_3.5/maps/loading/toon.jpg', ToontownGlobals.BarnacleBoulevard: 'phase_3.5/maps/loading/toon.jpg', ToontownGlobals.SeaweedStreet: 'phase_3.5/maps/loading/toon.jpg', ToontownGlobals.LighthouseLane: 'phase_3.5/maps/loading/toon.jpg', ToontownGlobals.DaisyGardens: 'phase_3.5/maps/loading/toon.jpg', ToontownGlobals.ElmStreet: 'phase_3.5/maps/loading/toon.jpg', ToontownGlobals.MapleStreet: 'phase_3.5/maps/loading/toon.jpg', ToontownGlobals.OakStreet: 'phase_3.5/maps/loading/toon.jpg', ToontownGlobals.MinniesMelodyland: 'phase_3.5/maps/loading/toon.jpg', ToontownGlobals.AltoAvenue: 'phase_3.5/maps/loading/toon.jpg', ToontownGlobals.BaritoneBoulevard: 'phase_3.5/maps/loading/toon.jpg', ToontownGlobals.TenorTerrace: 'phase_3.5/maps/loading/toon.jpg', ToontownGlobals.TheBrrrgh: 'phase_3.5/maps/loading/toon.jpg', ToontownGlobals.WalrusWay: 'phase_3.5/maps/loading/toon.jpg', ToontownGlobals.SleetStreet: 'phase_3.5/maps/loading/toon.jpg', ToontownGlobals.PolarPlace: 'phase_3.5/maps/loading/toon.jpg', ToontownGlobals.DonaldsDreamland: 'phase_3.5/maps/loading/toon.jpg', ToontownGlobals.LullabyLane: 'phase_3.5/maps/loading/toon.jpg', ToontownGlobals.PajamaPlace: 'phase_3.5/maps/loading/toon.jpg', ToontownGlobals.OutdoorZone: 'phase_3.5/maps/loading/toon.jpg', ToontownGlobals.GolfZone: 'phase_3.5/maps/loading/toon.jpg', ToontownGlobals.SellbotHQ: 'phase_3.5/maps/loading/toon.jpg', ToontownGlobals.SellbotFactoryExt: 'phase_3.5/maps/loading/toon.jpg', ToontownGlobals.SellbotFactoryInt: 'phase_3.5/maps/loading/toon.jpg', ToontownGlobals.SellbotMegaCorpInt: 'phase_3.5/maps/loading/toon.jpg', ToontownGlobals.CashbotHQ: 'phase_3.5/maps/loading/toon.jpg', ToontownGlobals.LawbotHQ: 'phase_3.5/maps/loading/toon.jpg', ToontownGlobals.BossbotHQ: 'phase_3.5/maps/loading/toon.jpg' } self.zone2font = { #Toontown Central Loader Fonts ToontownGlobals.GoofySpeedway: ToontownGlobals.getSignFont(), ToontownGlobals.ToontownCentral: ToontownGlobals.getCentralFont(), ToontownGlobals.SillyStreet: ToontownGlobals.getCentralFont(), ToontownGlobals.LoopyLane: ToontownGlobals.getCentralFont(), ToontownGlobals.PunchlinePlace: ToontownGlobals.getCentralFont(), #Donalds Dock Loader Fonts ToontownGlobals.DonaldsDock: ToontownGlobals.getDockFont(), ToontownGlobals.BarnacleBoulevard: ToontownGlobals.getDockFont(), ToontownGlobals.SeaweedStreet: ToontownGlobals.getDockFont(), ToontownGlobals.LighthouseLane: ToontownGlobals.getDockFont(), #Daisys Gardens Loader Fonts ToontownGlobals.DaisyGardens: ToontownGlobals.getGardenFont(), ToontownGlobals.ElmStreet: ToontownGlobals.getGardenFont(), ToontownGlobals.MapleStreet: ToontownGlobals.getGardenFont(), ToontownGlobals.OakStreet: ToontownGlobals.getGardenFont(), #Minnies Melodyland Loader Fonts ToontownGlobals.MinniesMelodyland: ToontownGlobals.getMelodyFont(), ToontownGlobals.AltoAvenue: ToontownGlobals.getMelodyFont(), ToontownGlobals.BaritoneBoulevard: ToontownGlobals.getMelodyFont(), ToontownGlobals.TenorTerrace: ToontownGlobals.getMelodyFont(), #Brghhh Loader Fonts ToontownGlobals.TheBrrrgh: ToontownGlobals.getFrostFont(), ToontownGlobals.WalrusWay: ToontownGlobals.getFrostFont(), ToontownGlobals.SleetStreet: ToontownGlobals.getFrostFont(), ToontownGlobals.PolarPlace: ToontownGlobals.getFrostFont(), #Donalds Dreamland Loader Fonts ToontownGlobals.DonaldsDreamland: ToontownGlobals.getDreamFont(), ToontownGlobals.LullabyLane: ToontownGlobals.getDreamFont(), ToontownGlobals.PajamaPlace: ToontownGlobals.getDreamFont(), #Other Zone Fonts ToontownGlobals.OutdoorZone: ToontownGlobals.getSignFont(), ToontownGlobals.GolfZone: ToontownGlobals.getSignFont(), #Cog Loader Fonts (Never edit, they are good as they currently are) ToontownGlobals.SellbotHQ: ToontownGlobals.getSuitFont(), ToontownGlobals.SellbotFactoryExt: ToontownGlobals.getSuitFont(), ToontownGlobals.SellbotFactoryInt: ToontownGlobals.getSuitFont(), ToontownGlobals.SellbotMegaCorpInt: ToontownGlobals.getSuitFont(), ToontownGlobals.CashbotHQ: ToontownGlobals.getSuitFont(), ToontownGlobals.LawbotHQ: ToontownGlobals.getSuitFont(), ToontownGlobals.BossbotHQ: ToontownGlobals.getSuitFont() } self.zone2fontcolor = { ToontownGlobals.GoofySpeedway: VBase4(0.2, 0.6, 0.9, 1.0), ToontownGlobals.ToontownCentral: VBase4(0.9803921568627451, 0.8235294117647059, 0.0392156862745098, 1.0), ToontownGlobals.SillyStreet: VBase4(0.9803921568627451, 0.8235294117647059, 0.0392156862745098, 1.0), ToontownGlobals.LoopyLane: VBase4(0.9803921568627451, 0.8235294117647059, 0.0392156862745098, 1.0), ToontownGlobals.PunchlinePlace: VBase4(0.9803921568627451, 0.8235294117647059, 0.0392156862745098, 1.0), ToontownGlobals.DonaldsDock: VBase4(0.6901960784313725, 0.4274509803921569, 0.0549019607843137, 1.0), ToontownGlobals.BarnacleBoulevard: VBase4(0.6901960784313725, 0.4274509803921569, 0.0549019607843137, 1.0), ToontownGlobals.SeaweedStreet: VBase4(0.6901960784313725, 0.4274509803921569, 0.0549019607843137, 1.0), ToontownGlobals.LighthouseLane: VBase4(0.6901960784313725, 0.4274509803921569, 0.0549019607843137, 1.0), ToontownGlobals.DaisyGardens: VBase4(0.1647058823529412, 0.7490196078431373, 0.4509803921568627, 1.0), ToontownGlobals.ElmStreet: VBase4(0.1647058823529412, 0.7490196078431373, 0.4509803921568627, 1.0), ToontownGlobals.MapleStreet: VBase4(0.1647058823529412, 0.7490196078431373, 0.4509803921568627, 1.0), ToontownGlobals.OakStreet: VBase4(0.1647058823529412, 0.7490196078431373, 0.4509803921568627, 1.0), ToontownGlobals.MinniesMelodyland: VBase4(0.9294117647058824, 0.0196078431372549, 0.7333333333333333, 1.0), ToontownGlobals.AltoAvenue: VBase4(0.9294117647058824, 0.0196078431372549, 0.7333333333333333, 1.00), ToontownGlobals.BaritoneBoulevard: VBase4(0.9294117647058824, 0.0196078431372549, 0.7333333333333333, 1.0), ToontownGlobals.TenorTerrace: VBase4(0.9294117647058824, 0.0196078431372549, 0.7333333333333333, 1.0), ToontownGlobals.TheBrrrgh: VBase4(0.792156862745098, 0.8823529411764706, 1.0, 1.0), ToontownGlobals.WalrusWay: VBase4(0.792156862745098, 0.8823529411764706, 1.0, 1.0), ToontownGlobals.SleetStreet: VBase4(0.792156862745098, 0.8823529411764706, 1.0, 1.0), ToontownGlobals.PolarPlace: VBase4(0.792156862745098, 0.8823529411764706, 1.0, 1.0), ToontownGlobals.DonaldsDreamland: VBase4(0.4313725490196078, 0.196078431372549, 0.7607843137254902, 1.0), ToontownGlobals.LullabyLane: VBase4(0.4313725490196078, 0.196078431372549, 0.7607843137254902, 1.0), ToontownGlobals.PajamaPlace: VBase4(0.4313725490196078, 0.196078431372549, 0.7607843137254902, 1.0), ToontownGlobals.OutdoorZone: VBase4(0.4313725490196078, 0.196078431372549, 0.7607843137254902, 1.0), ToontownGlobals.GolfZone: VBase4(0.2, 0.6, 0.9, 1.0), ToontownGlobals.SellbotHQ: (0.0056754360035471, 0.0666666666666667, 0.9607843137254902, 1.0), ToontownGlobals.SellbotFactoryExt: (0.0056754360035471, 0.0666666666666667, 0.9607843137254902, 1.0), ToontownGlobals.SellbotFactoryInt: (0.0056754360035471, 0.0666666666666667, 0.9607843137254902, 1.0), ToontownGlobals.SellbotMegaCorpInt: ((0.0056754360035471, 0.0666666666666667, 0.9607843137254902, 1.0)), ToontownGlobals.CashbotHQ: (0.2274509803921569, 0.7215686274509804, 0.0509803921568627, 1.0), ToontownGlobals.LawbotHQ: (0.1294117647058824, 0.2549019607843137, 0.8705882352941176, 1.0), ToontownGlobals.BossbotHQ: (0.7215686274509804, 0.5098039215686275, 0.2509803921568627, 1.0) } self.waitBar['range'] = range self.title['text'] = label self.loadingScreenTex = self.zone2picture.get( ZoneUtil.getBranchZone(zoneId), self.defaultTex) self.loadingScreenFont = self.zone2font.get( ZoneUtil.getBranchZone(zoneId), self.defaultFont) self.loadingScreenFontColor = self.zone2fontcolor.get( ZoneUtil.getBranchZone(zoneId), self.defaultFontColor) self.background = loader.loadTexture(self.loadingScreenTex) self.__count = 0 self.__expectedCount = range if gui: if base.localAvatarStyle: from src.toontown.toon import Toon wave = {'emote': 'wave', 'frame': 25} shrug = {'emote': 'shrug', 'frame': 30} duck = {'emote': 'duck', 'frame': 40} up = {'emote': 'up', 'frame': 60} pushup = {'emote': 'down', 'frame': 23} bow = {'emote': 'bow', 'frame': 45} bored = {'emote': 'bored', 'frame': 135} run = {'emote': 'run', 'frame': 7} victory = {'emote': 'victory', 'frame': 10} applause = {'emote': 'applause', 'frame': 23} dust = {'emote': 'sprinkle-dust', 'frame': 40} hypno = {'emote': 'hypnotize', 'frame': 25} cringe = {'emote': 'cringe', 'frame': 25} emotelist = [ wave, shrug, duck, up, pushup, bow, bored, run, victory, applause, dust, hypno, cringe ] emotechosen = random.choice(emotelist) self.toon = Toon.Toon() self.toon.setDNA(base.localAvatarStyle) self.toon.pose(emotechosen['emote'], emotechosen['frame']) self.toon.getGeomNode().setDepthWrite(1) self.toon.getGeomNode().setDepthTest(1) self.toon.setHpr(205, 0, 0) self.toon.setScale(0.18) self.toon.setPos(base.a2dBottomRight.getX() / 1.25, 0, -0.034) self.toon.reparentTo(self.waitBar) self.waitBar['frameSize'] = (base.a2dLeft + (base.a2dRight / 4.95), base.a2dRight - (base.a2dRight / 4.95), -0.03, 0.03) self.title['text_font'] = self.loadingScreenFont self.title['text_fg'] = self.loadingScreenFontColor self.title.reparentTo(base.a2dpBottomLeft, LOADING_SCREEN_SORT_INDEX) self.title.setPos(base.a2dRight / 5, 0, 0.235) self.tip['text'] = self.getTip(tipCategory) self.gui.setPos(0, -0.1, 0) self.gui.reparentTo(aspect2d, LOADING_SCREEN_SORT_INDEX) self.gui.setTexture(self.background, 1) #if self.loadingScreenTex == self.defaultTex: # self.logo.reparentTo(base.a2dpTopCenter, LOADING_SCREEN_SORT_INDEX) self.logo.reparentTo(base.a2dpTopCenter, LOADING_SCREEN_SORT_INDEX) else: self.title.reparentTo(base.a2dpBottomLeft, LOADING_SCREEN_SORT_INDEX) self.gui.reparentTo(hidden) self.logo.reparentTo(hidden) self.tip.reparentTo(base.a2dpBottomCenter, LOADING_SCREEN_SORT_INDEX) self.waitBar.reparentTo(base.a2dpBottomCenter, LOADING_SCREEN_SORT_INDEX) self.waitBar.update(self.__count)
def load(self): self.notify.debug('BASE: load') Toon.loadMinigameAnims()
def load(self): CogdoGameMovie.load(self) self.toonDNA = ToonDNA.ToonDNA() self.toonDNA.newToonFromProperties('dss', 'ss', 'm', 'm', 2, 0, 2, 2, 1, 8, 1, 8, 1, 14, 0) self.toonHead = Toon.Toon() self.toonHead.setDNA(self.toonDNA) self.makeSuit('sc') self.toonHead.getGeomNode().setDepthWrite(1) self.toonHead.getGeomNode().setDepthTest(1) self.toonHead.loop('neutral') self.toonHead.setPosHprScale(-0.73, 0, -1.27, 180, 0, 0, 0.18, 0.18, 0.18) self.toonHead.reparentTo(hidden) self.toonHead.startBlink() self.cogHead = Suit.Suit() self.cogDNA = SuitDNA.SuitDNA() self.cogDNA.newSuit('le') self.cogHead.setDNA(self.cogDNA) self.cogHead.getGeomNode().setDepthWrite(1) self.cogHead.getGeomNode().setDepthTest(1) self.cogHead.loop('neutral') self.cogHead.setPosHprScale(-0.74, 0, -1.79, 180, 0, 0, 0.12, 0.14, 0.14) self.cogHead.reparentTo(hidden) self.cogHead.nametag3d.hide() self.clipPlane = self.toonHead.attachNewNode(PlaneNode('clip')) self.clipPlane.node().setPlane(Plane(0, 0, 1, 0)) self.clipPlane.setPos(0, 0, 2.45) audioMgr = base.cogdoGameAudioMgr self._cogDialogueSfx = audioMgr.createSfx('cogDialogue') self._toonDialogueSfx = audioMgr.createSfx('toonDialogue') def start(): camera.wrtReparentTo(render) self._startUpdateTask() def end(): self._stopUpdateTask() introDuration = Globals.Gameplay.IntroDurationSeconds dialogue = TTLocalizer.CogdoFlyingIntroMovieDialogue waitDur = introDuration / len(dialogue) flyDur = introDuration - waitDur * 0.5 flyThroughIval = Parallel( camera.posInterval(flyDur, self._exit.getPos(render) + Point3(0, -22, 1), blendType='easeInOut'), camera.hprInterval(flyDur, Point3(0, 5, 0), blendType='easeInOut')) self._ival = Sequence( Func(start), Parallel( flyThroughIval, Sequence( Func(self.displayLine, 'cog', self._getRandomLine(dialogue[0])), Wait(waitDur), Func(self.displayLine, 'toon', self._getRandomLine(dialogue[1])), Wait(waitDur), Func(self.displayLine, 'cog', self._getRandomLine(dialogue[2])), Wait(waitDur))), Func(end))
def load(self): CogdoGameMovie.load(self) self.toonDNA = ToonDNA.ToonDNA() self.toonDNA.newToonFromProperties('dss', 'ss', 'm', 'm', 2, 0, 2, 2, 1, 8, 1, 8, 1, 14, 0) self.toonHead = Toon.Toon() self.toonHead.setDNA(self.toonDNA) self.makeSuit('sc') self.toonHead.getGeomNode().setDepthWrite(1) self.toonHead.getGeomNode().setDepthTest(1) self.toonHead.loop('neutral') self.toonHead.setPosHprScale(-0.73, 0, -1.27, 180, 0, 0, 0.18, 0.18, 0.18) self.toonHead.reparentTo(hidden) self.toonHead.startBlink() self.cogHead = Suit.Suit() self.cogDNA = SuitDNA.SuitDNA() self.cogDNA.newSuit('ms') self.cogHead.setDNA(self.cogDNA) self.cogHead.getGeomNode().setDepthWrite(1) self.cogHead.getGeomNode().setDepthTest(1) self.cogHead.loop('neutral') self.cogHead.setPosHprScale(-0.73, 0, -1.46, 180, 0, 0, 0.14, 0.14, 0.14) self.cogHead.reparentTo(hidden) self.cogHead.nametag3d.hide() self.clipPlane = self.toonHead.attachNewNode(PlaneNode('clip')) self.clipPlane.node().setPlane(Plane(0, 0, 1, 0)) self.clipPlane.setPos(0, 0, 2.45) audioMgr = base.cogdoGameAudioMgr self._cogDialogueSfx = audioMgr.createSfx('cogDialogue') self._toonDialogueSfx = audioMgr.createSfx('toonDialogue') suitData = Globals.SuitData[Globals.SuitTypes.Boss] bossSuit = Suit.Suit() d = SuitDNA.SuitDNA() d.newSuit(suitData['dnaName']) bossSuit.setDNA(d) bossSuit.nametag3d.stash() bossSuit.nametag.destroy() bossSuit.setScale(suitData['scale']) bossSuit.loop('neutral') bossSuit.reparentTo(render) bossSuit.setPos(self._exit, -5, -5, 0) bossSuit.lookAt(self._exit) self._suits.append(bossSuit) self._camHelperNode = NodePath('CamHelperNode') self._camHelperNode.reparentTo(render) dialogue = TTLocalizer.CogdoMazeIntroMovieDialogue introDuration = Globals.IntroDurationSeconds waitDuration = introDuration / len(dialogue) def start(): camera.wrtReparentTo(render) self._exit.open(animate=False) def showBoss(): self._setCamTarget(bossSuit, 20, offset=Point3(0, 0, 7), angle=Point3(0, 15, 0)) bossSuit.loop('victory') self._state = 1 def showExit(): self._setCamTarget(self._exit, 10, offset=Point3(0, 0, 0), angle=Point3(0, 60, 0)) self._exit.close() self._state = 2 showExitIval = Parallel( camera.posInterval(waitDuration * 0.5, (10, -25, 20), other=self._exit, blendType='easeInOut'), Sequence( Wait(waitDuration * 0.25), Func(bossSuit.play, 'effort'), camera.hprInterval(waitDuration * 0.25, (30, -30, 0), blendType='easeInOut'), Func(self._exit.close), Wait(waitDuration * 0.5))) def showWaterCooler(): wc = self._maze.getWaterCoolers()[0] self._setCamTarget(wc, 25, angle=Point3(-30, 60, 0)) camera.wrtReparentTo(self._camHelperNode) self._state = 3 def end(): self._stopUpdateTask() self._ival = Sequence( Func(start), Func(self.displayLine, 'toon', self._getRandomLine(dialogue[0])), showExitIval, Func(showWaterCooler), Func(self.displayLine, 'toon', self._getRandomLine(dialogue[1])), Wait(waitDuration), Func(showBoss), bossSuit.hprInterval(1.0, bossSuit.getHpr() + Point3(180, 0, 0), blendType='easeInOut'), Func(self.displayLine, 'toon', self._getRandomLine(dialogue[2])), Wait(waitDuration - 1.0), Func(end)) self._startUpdateTask()
def loadBattleAnims(self): Toon.loadTutorialBattleAnims()
def __doToggleTrueFriends(self): messenger.send("wakeup") settings["trueFriends"] = not settings["trueFriends"] Toon.reconsiderAllToonsUnderstandable() self.settingsChanged = 1 self.__setTrueFriendsButton()
def load(self): gui = loader.loadModel('phase_3/models/gui/tt_m_gui_mat_mainGui') gui.flattenMedium() guiAcceptUp = gui.find('**/tt_t_gui_mat_okUp') guiAcceptUp.flattenStrong() guiAcceptDown = gui.find('**/tt_t_gui_mat_okDown') guiAcceptDown.flattenStrong() guiCancelUp = gui.find('**/tt_t_gui_mat_closeUp') guiCancelUp.flattenStrong() guiCancelDown = gui.find('**/tt_t_gui_mat_closeDown') guiCancelDown.flattenStrong() guiNextUp = gui.find('**/tt_t_gui_mat_nextUp') guiNextUp.flattenStrong() guiNextDown = gui.find('**/tt_t_gui_mat_nextDown') guiNextDown.flattenStrong() guiNextDisabled = gui.find('**/tt_t_gui_mat_nextDisabled') guiNextDisabled.flattenStrong() skipTutorialUp = gui.find('**/tt_t_gui_mat_skipUp') skipTutorialUp.flattenStrong() skipTutorialDown = gui.find('**/tt_t_gui_mat_skipDown') skipTutorialDown.flattenStrong() rotateUp = gui.find('**/tt_t_gui_mat_arrowRotateUp') rotateUp.flattenStrong() rotateDown = gui.find('**/tt_t_gui_mat_arrowRotateDown') rotateDown.flattenStrong() self.guiTopBar = DirectFrame(relief=None, 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_scale=(1.25, 1, 1), pos=(0.01, 0, -0.86)) self.guiBottomBar.hide() self.guiCheckButton = DirectButton( parent=self.guiBottomBar, relief=None, image=(guiAcceptUp, guiAcceptDown, guiAcceptUp, guiAcceptDown), image_scale=halfButtonScale, image1_scale=halfButtonHoverScale, image2_scale=halfButtonHoverScale, pos=(1.165, 0, -0.018), command=self.__handleNext, text=('', TTLocalizer.MakeAToonDone, TTLocalizer.MakeAToonDone), text_font=ToontownGlobals.getInterfaceFont(), text_scale=0.08, text_align=TextNode.ARight, text_pos=(0.075, 0.13), text_fg=(1, 1, 1, 1), text_shadow=(0, 0, 0, 1)) self.guiCheckButton.setPos(-0.13, 0, 0.13) self.guiCheckButton.reparentTo(base.a2dBottomRight) self.guiCheckButton.hide() self.guiCancelButton = DirectButton( parent=self.guiBottomBar, relief=None, image=(guiCancelUp, guiCancelDown, guiCancelUp, guiCancelDown), image_scale=halfButtonScale, image1_scale=halfButtonHoverScale, image2_scale=halfButtonHoverScale, pos=(-1.179, 0, -0.011), command=self.__handleCancel, text=('', TTLocalizer.MakeAToonCancel, TTLocalizer.MakeAToonCancel), text_font=ToontownGlobals.getInterfaceFont(), text_scale=TTLocalizer.MATguiCancelButton, text_pos=(0, 0.115), text_fg=(1, 1, 1, 1), text_shadow=(0, 0, 0, 1)) self.guiCancelButton.setPos(0.13, 0, 0.13) self.guiCancelButton.reparentTo(base.a2dBottomLeft) self.guiCancelButton.hide() self.guiNextButton = DirectButton( parent=self.guiBottomBar, relief=None, image=(guiNextUp, guiNextDown, guiNextUp, guiNextDisabled), image_scale=(0.3, 0.3, 0.3), image1_scale=(0.35, 0.35, 0.35), image2_scale=(0.35, 0.35, 0.35), pos=(1.165, 0, -0.018), command=self.__handleNext, text=('', TTLocalizer.MakeAToonNext, TTLocalizer.MakeAToonNext, ''), text_font=ToontownGlobals.getInterfaceFont(), text_scale=TTLocalizer.MATguiNextButton, text_pos=(0, 0.115), text_fg=(1, 1, 1, 1), text_shadow=(0, 0, 0, 1)) self.guiNextButton.setPos(-0.13, 0, 0.13) self.guiNextButton.reparentTo(base.a2dBottomRight) self.guiNextButton.hide() self.guiLastButton = DirectButton( parent=self.guiBottomBar, relief=None, image=(guiNextUp, guiNextDown, guiNextUp, guiNextDown), image3_color=Vec4(0.5, 0.5, 0.5, 0.75), image_scale=(-0.3, 0.3, 0.3), image1_scale=(-0.35, 0.35, 0.35), image2_scale=(-0.35, 0.35, 0.35), 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.115), text_fg=(1, 1, 1, 1), text_shadow=(0, 0, 0, 1)) self.guiLastButton.setPos(-0.37, 0, 0.13) self.guiLastButton.reparentTo(base.a2dBottomRight) self.guiLastButton.hide() self.rotateLeftButton = DirectButton(parent=self.guiBottomBar, relief=None, image=(rotateUp, rotateDown, rotateUp, rotateDown), image_scale=(-0.4, 0.4, 0.4), image1_scale=(-0.5, 0.5, 0.5), image2_scale=(-0.5, 0.5, 0.5), pos=(-0.355, 0, 0.36)) self.rotateLeftButton.flattenMedium() self.rotateLeftButton.reparentTo(base.a2dBottomCenter) self.rotateLeftButton.hide() self.rotateLeftButton.bind(DGG.B1PRESS, self.rotateToonLeft) self.rotateLeftButton.bind(DGG.B1RELEASE, self.stopToonRotateLeftTask) self.rotateRightButton = DirectButton(parent=self.guiBottomBar, relief=None, image=(rotateUp, rotateDown, rotateUp, rotateDown), image_scale=(0.4, 0.4, 0.4), image1_scale=(0.5, 0.5, 0.5), image2_scale=(0.5, 0.5, 0.5), pos=(0.355, 0, 0.36)) self.rotateRightButton.flattenStrong() self.rotateRightButton.reparentTo(base.a2dBottomCenter) self.rotateRightButton.hide() self.rotateRightButton.bind(DGG.B1PRESS, self.rotateToonRight) self.rotateRightButton.bind(DGG.B1RELEASE, self.stopToonRotateRightTask) gui.removeNode() self.roomDropActor = Actor() self.roomDropActor.loadModel('phase_3/models/makeatoon/roomAnim_model') self.roomDropActor.loadAnims( {'drop': 'phase_3/models/makeatoon/roomAnim_roomDrop'}) self.roomDropActor.reparentTo(render) self.dropJoint = self.roomDropActor.find('**/droppingJoint') self.roomSquishActor = Actor() self.roomSquishActor.loadModel( 'phase_3/models/makeatoon/roomAnim_model') self.roomSquishActor.loadAnims( {'squish': 'phase_3/models/makeatoon/roomAnim_roomSquish'}) self.roomSquishActor.reparentTo(render) self.squishJoint = self.roomSquishActor.find('**/scalingJoint') self.propSquishActor = Actor() self.propSquishActor.loadModel( 'phase_3/models/makeatoon/roomAnim_model') self.propSquishActor.loadAnims( {'propSquish': 'phase_3/models/makeatoon/roomAnim_propSquish'}) self.propSquishActor.reparentTo(render) self.propSquishActor.pose('propSquish', 0) self.propJoint = self.propSquishActor.find('**/propJoint') self.spotlightActor = Actor() self.spotlightActor.loadModel( 'phase_3/models/makeatoon/roomAnim_model') self.spotlightActor.loadAnims({ 'spotlightShake': 'phase_3/models/makeatoon/roomAnim_spotlightShake' }) self.spotlightActor.reparentTo(render) self.spotlightJoint = self.spotlightActor.find('**/spotlightJoint') ee = DirectFrame(pos=(-1, 1, 1), frameSize=(-.01, 0.01, -.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.room = loader.loadModel( 'phase_3/models/makeatoon/tt_m_ara_mat_room') self.room.flattenMedium() self.genderWalls = self.room.find('**/genderWalls') self.genderWalls.flattenStrong() self.genderProps = self.room.find('**/genderProps') self.genderProps.flattenStrong() self.bodyWalls = self.room.find('**/bodyWalls') self.bodyWalls.flattenStrong() self.bodyProps = self.room.find('**/bodyProps') self.bodyProps.flattenStrong() self.colorWalls = self.room.find('**/colorWalls') self.colorWalls.flattenStrong() self.colorProps = self.room.find('**/colorProps') self.colorProps.flattenStrong() self.clothesWalls = self.room.find('**/clothWalls') self.clothesWalls.flattenMedium() self.clothesProps = self.room.find('**/clothProps') self.clothesProps.flattenMedium() self.nameWalls = self.room.find('**/nameWalls') self.nameWalls.flattenStrong() self.nameProps = self.room.find('**/nameProps') self.nameProps.flattenStrong() self.background = self.room.find('**/background') self.background.flattenStrong() self.background.reparentTo(render) self.floor = self.room.find('**/floor') self.floor.flattenStrong() self.floor.reparentTo(render) self.spotlight = self.room.find('**/spotlight') self.spotlight.reparentTo(self.spotlightJoint) self.spotlight.setColor(1, 1, 1, 0.3) self.spotlight.setPos(1.18, -1.27, 0.41) self.spotlight.setScale(2.6) self.spotlight.setHpr(0, 0, 0) smokeSeqNode = SequenceNode('smoke') smokeModel = loader.loadModel( 'phase_3/models/makeatoon/tt_m_ara_mat_smoke') smokeFrameList = list(smokeModel.findAllMatches('**/smoke_*')) smokeFrameList.reverse() for smokeFrame in smokeFrameList: smokeSeqNode.addChild(smokeFrame.node()) smokeSeqNode.setFrameRate(12) self.smoke = render.attachNewNode(smokeSeqNode) self.smoke.setScale(1, 1, 0.75) self.smoke.hide() if self.warp: 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.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.musicVolume = base.config.GetFloat('makeatoon-music-volume', 1) self.sfxVolume = base.config.GetFloat('makeatoon-sfx-volume', 1) self.soundBack = base.loadSfx( 'phase_3/audio/sfx/GUI_create_toon_back.ogg') self.crashSounds = map(base.loadSfx, [ 'phase_3/audio/sfx/tt_s_ara_mat_crash_boing.ogg', 'phase_3/audio/sfx/tt_s_ara_mat_crash_glassBoing.ogg', 'phase_3/audio/sfx/tt_s_ara_mat_crash_wood.ogg', 'phase_3/audio/sfx/tt_s_ara_mat_crash_woodBoing.ogg', 'phase_3/audio/sfx/tt_s_ara_mat_crash_woodGlass.ogg' ])
def unload(self): CogHQLoader.CogHQLoader.unload(self) Toon.unloadSellbotHQAnims()