def addAvatar(self, avId, name, damage): if self.currentIndex == 0: self.addLeaderboardLabel() self.avId2Names[avId] = name self.avId2Damage[avId] = damage text = TextNode('leaderboard-%d' % avId) text.setAlign(TextNode.ACenter) text.setFlattenFlags(TextNode.FFMedium) text.setFont(getSuitFont()) text.setTextScale(0.05) text.setTextColor(*TEXT_WHITE) text.setText(name + ': ' + str(damage)) textNodePath = aspect2d.attachNewNode(text) textNodePath.reparentTo(base.a2dTopRight) if self.currentIndex: self.index2Pos[self.currentIndex] = ( -0.35, 0.0, (TEXT_HEIGHT * self.currentIndex) - 0.1) textNodePath.setPos(*self.index2Pos[self.currentIndex]) else: self.index2Pos[0] = (-0.35, 0.0, -0.20) textNodePath.setPos(*self.index2Pos[0]) self.currentIndex += 1 self.avId2Nodes[avId] = [textNodePath, text]
def addAvatar(self, avId, name, damage): if self.currentIndex == 0: self.addLeaderboardLabel() self.avId2Names[avId] = name self.avId2Damage[avId] = damage text = TextNode('leaderboard-%d' % avId) text.setAlign(TextNode.ACenter) text.setFlattenFlags(TextNode.FFMedium) text.setFont(getSuitFont()) text.setTextScale(0.05) text.setTextColor(*TEXT_WHITE) text.setText(name + ': ' + str(damage)) textNodePath = aspect2d.attachNewNode(text) textNodePath.reparentTo(base.a2dTopRight) if self.currentIndex: self.index2Pos[self.currentIndex] = (-0.35, 0.0, (TEXT_HEIGHT * self.currentIndex) - 0.1) textNodePath.setPos(*self.index2Pos[self.currentIndex]) else: self.index2Pos[0] = (-0.35, 0.0, -0.20) textNodePath.setPos(*self.index2Pos[0]) self.currentIndex += 1 self.avId2Nodes[avId] = [textNodePath, text]
def load(self): self.text = TextNode('BossBattleTimer') self.text.setAlign(TextNode.ACenter) self.text.setFlattenFlags(TextNode.FFMedium) self.text.setFont(getSuitFont()) self.text.setTextScale(0.075) self.text.setTextColor(*TEXT_WHITE) self.textNodePath = aspect2d.attachNewNode(self.text) self.textNodePath.reparentTo(base.a2dBottomLeft) self.textNodePath.setPos(0.60, 0.0, 0.15)
def addLeaderboardLabel(self): self.leaderboardLabel = TextNode('leaderboardLabel') self.leaderboardLabel.setAlign(TextNode.ACenter) self.leaderboardLabel.setFlattenFlags(TextNode.FFMedium) self.leaderboardLabel.setFont(getSuitFont()) self.leaderboardLabel.setTextScale(0.075) self.leaderboardLabel.setTextColor(*TEXT_WHITE) self.leaderboardLabel.setText(BossLeaderboardLabel) self.leaderboardLabelNP = aspect2d.attachNewNode(self.leaderboardLabel) self.leaderboardLabelNP.reparentTo(base.a2dTopRight) self.leaderboardLabelNP.setPos(-0.35, 0.0, -0.1)
def load(self): self.head = loader.loadModel(self.filePrefix + '-head-zero') for anim in AnimList: self.animDict[anim] = '%s-%s-%s' % (GenericModel, 'head', anim) self.headActor = Actor(self.head, self.animDict) self.headActor.hide() self.headActor.setBin("fixed", 40) self.headActor.setDepthTest(True) self.headActor.setDepthWrite(True) self.headActor.reparentTo(self) self.headActor.setHpr(-90, 0, 270) self.headActor.setScale(0.021) self.headActor.setPos(-0.25, 0.0, 0.75) self.headActor.setPlayRate(2.0, 'turn2Fb') self.headActor.loop('Ff_neutral') self.eyes = loader.loadModel('phase_10/models/cogHQ/CashBotBossEyes.bam') self.eyes.setPosHprScale(4.5, 0, -2.5, 90, 90, 0, 0.4, 0.4, 0.4) self.eyes.reparentTo(self.headActor) self.eyes.hide() self.stars = globalPropPool.getProp('stun') self.stars.setPosHprScale(7, 0, 0, 0, 0, -90, 3, 3, 3) self.stars.loop('stun') self.safe = loader.loadModel('phase_10/models/cogHQ/CBSafe.bam') self.safe.reparentTo(self.headActor) self.safe.setPosHpr(-1, 0, 0.2, 0, -90, 90) self.safe.setBin("fixed", 40) self.safe.setDepthTest(True) self.safe.setDepthWrite(True) self.safe.hide() self.headActor.show() self.healthBar = DirectWaitBar(parent=self, pos=(0, 0, 0.85), relief=DGG.SUNKEN, frameSize=(-1.75, 1.75, -0.3, 0.3), borderWidth=(0.02, 0.02), scale=0.1, range=1, sortOrder=50, frameColor=(0.5, 0.5, 0.5, 0.5), barColor=(0.75, 0.75, 1.0, 0.8), text='', text_scale=0.35, text_fg=(1, 1, 1, 1), text_align=TextNode.ACenter, text_pos=(0, -0.05), text_font=getSuitFont()) self.updateHealthBar(self.maxHp)