def __healJuggle(heal): petProxyId = heal['petId'] pet = Pet.Pet() gender = 0 if petProxyId in base.cr.doId2do: petProxy = base.cr.doId2do[petProxyId] if petProxy == None: return pet.setDNA(petProxy.style) pet.setName(petProxy.petName) gender = petProxy.gender else: pet.setDNA([-1, 0, 0, -1, 2, 0, 4, 0, 1]) pet.setName('Smiley') targets = heal['target'] ineffective = heal['sidestep'] level = heal['level'] track = Sequence(__teleportIn(heal, pet)) if ineffective: trickTrack = Parallel(Wait(1.0), Func(pet.loop, 'neutralSad'), Func(pet.showMood, 'confusion')) else: trickTrack = PetTricks.getTrickIval(pet, level) track.append(trickTrack) delay = 4.0 first = 1 targetTrack = Sequence() for target in targets: targetToon = target['toon'] hp = target['hp'] callerToonId = heal['toonId'] reactIval = Func(__healToon, targetToon, hp, gender, callerToonId, ineffective) if first == 1: first = 0 targetTrack.append(reactIval) mtrack = Parallel(Wait(2.0), targetTrack) track.append(mtrack) track.append(Sequence(Func(pet.clearMood))) track.append(__teleportOut(heal, pet)) for target in targets: targetToon = target['toon'] track.append(Func(targetToon.clearChat)) track.append(Func(pet.delete)) return track
def getPicture(self, avatar): from src.toontown.pets import PetDNA, Pet pet = Pet.Pet(forGui=1) dna = avatar.getPetDNA() if dna == None: dna = PetDNA.getRandomPetDNA() pet.setDNA(dna) pet.setH(180) pet.setScale(1.25) model, ival = self.makeFrameModel(pet, 0) pet.setP(-40) track = PetTricks.getTrickIval(pet, self.trickId) name = 'petTrick-item-%s' % self.sequenceNumber CatalogPetTrickItem.sequenceNumber += 1 if track != None: track = Sequence(Sequence(track), ActorInterval(pet, 'neutral', duration=2), name=name) else: pet.animFSM.request('neutral') track = Sequence(Wait(4), name=name) self.petPicture = pet self.hasPicture = True return (model, track)