mirror of
https://github.com/Sneed-Group/Poodletooth-iLand
synced 2024-10-30 16:27:54 +00:00
VP talks a lot more now
This commit is contained in:
parent
32a26abd79
commit
4ca9255561
6 changed files with 52 additions and 10 deletions
|
@ -87,7 +87,7 @@ class NewsManagerAI(DistributedObjectAI):
|
|||
if id == ToontownGlobals.FISH_BINGO or id == ToontownGlobals.SILLY_SATURDAY:
|
||||
messenger.send('checkBingoState')
|
||||
elif id in [ToontownGlobals.SUMMER_FIREWORKS, ToontownGlobals.NEW_YEAR_FIREWORKS]:
|
||||
self.fireworkTasks.append(taskMgr.doMethodLater((60 - datetime.datetime.now().minute) * 60, self.startFireworkTask))
|
||||
self.fireworkTasks.append(taskMgr.doMethodLater((60 - datetime.datetime.now().minute) * 60, self.startFireworkTask, 'initialFireworkTask-%s' % id))
|
||||
|
||||
def endSpecialHoliday(self, id):
|
||||
if id == ToontownGlobals.FISH_BINGO or id == ToontownGlobals.SILLY_SATURDAY:
|
||||
|
@ -97,7 +97,7 @@ class NewsManagerAI(DistributedObjectAI):
|
|||
|
||||
def startFireworkTask(self, id, task=None):
|
||||
self.startFireworks(id)
|
||||
self.fireworkTasks.append(taskMgr.doMethodLater(3600, self.startFireworks, extraArgs=[id]))
|
||||
self.fireworkTasks.append(taskMgr.doMethodLater(3600, self.startFireworks, 'fireworkTask-%s' % id, extraArgs=[id]))
|
||||
return Task.done
|
||||
|
||||
def startFireworks(self, type, task=None):
|
||||
|
|
|
@ -92,8 +92,10 @@ class DistributedBattleFinal(DistributedBattleBase.DistributedBattleBase):
|
|||
if self.bossCog == None:
|
||||
return
|
||||
|
||||
random.seed(suits[0].doId)
|
||||
bossTaunt = Func(self.bossCog.setChatAbsolute, random.choice(TTLocalizer.BossTaunts), CFSpeech | CFTimeout)
|
||||
bossDept = self.bossCog.dna.dept
|
||||
|
||||
if bossDept in TTLocalizer.SendCogBossTaunts:
|
||||
self.bossCog.setChatAbsolute(random.choice(TTLocalizer.SendCogBossTaunts[bossDept]), CFSpeech | CFTimeout)
|
||||
|
||||
if self.battleSide:
|
||||
openDoor = Func(self.bossCog.doorB.request, 'open')
|
||||
|
@ -127,7 +129,7 @@ class DistributedBattleFinal(DistributedBattleBase.DistributedBattleBase):
|
|||
else:
|
||||
base.camera.setPosHpr(-20, -4, 7, -60, 0, 0)
|
||||
done = Func(callback)
|
||||
track = Sequence(bossTaunt, openDoor, suitTrack, closeDoor, done, name=name)
|
||||
track = Sequence(openDoor, suitTrack, closeDoor, done, name=name)
|
||||
track.start(ts)
|
||||
self.storeInterval(track, name)
|
||||
return
|
||||
|
|
|
@ -6,15 +6,15 @@ from direct.interval.IntervalGlobal import *
|
|||
from direct.showbase.PythonUtil import Functor
|
||||
from direct.task.Task import Task
|
||||
from panda3d.core import *
|
||||
import string
|
||||
import types
|
||||
|
||||
import random
|
||||
import Suit
|
||||
import SuitDNA
|
||||
from otp.avatar import Avatar
|
||||
from toontown.battle import BattleParticles
|
||||
from toontown.battle import BattleProps
|
||||
from otp.nametag.NametagGroup import NametagGroup
|
||||
from otp.nametag.NametagConstants import *
|
||||
from toontown.toonbase import TTLocalizer
|
||||
from toontown.toonbase import ToontownGlobals
|
||||
|
||||
|
@ -536,7 +536,7 @@ class BossCog(Avatar.Avatar):
|
|||
ival = Sequence(Func(self.reverseHead), ActorInterval(self, 'Bb2Ff_spin'), Func(self.forwardHead))
|
||||
if self.forward:
|
||||
ival = Sequence(Func(self.reverseBody), ParallelEndTogether(ival, self.pelvis.hprInterval(0.5, self.pelvisForwardHpr, blendType='easeInOut')))
|
||||
ival = Sequence(Track((0, ival), (0, SoundInterval(self.spinSfx, node=self)), (0.9, Parallel(SoundInterval(self.rainGearsSfx, node=self), ParticleInterval(pe, self.frontAttack, worldRelative=0, duration=1.5, cleanup=True), duration=0)), (1.9, Func(self.bubbleF.unstash))), Func(self.bubbleF.stash))
|
||||
ival = Sequence(Track((0, ival), (0, Sequence(Func(self.setChatAbsolute, random.choice(TTLocalizer.VPSpinMessages), CFSpeech | CFTimeout), SoundInterval(self.spinSfx, node=self))), (0.9, Parallel(SoundInterval(self.rainGearsSfx, node=self), ParticleInterval(pe, self.frontAttack, worldRelative=0, duration=1.5, cleanup=True), duration=0)), (1.9, Func(self.bubbleF.unstash))), Func(self.bubbleF.stash))
|
||||
self.forward = 1
|
||||
self.happy = 0
|
||||
self.raised = 1
|
||||
|
@ -545,7 +545,7 @@ class BossCog(Avatar.Avatar):
|
|||
self.doAnimate(None, raised=1, happy=0, queueNeutral=0)
|
||||
else:
|
||||
self.doAnimate(None, raised=1, happy=1, queueNeutral=1)
|
||||
ival = Parallel(ActorInterval(self, 'Fb_jump'), Sequence(SoundInterval(self.swishSfx, duration=1.1, node=self), SoundInterval(self.boomSfx, duration=1.9)), Sequence(Wait(1.21), Func(self.announceAreaAttack)))
|
||||
ival = Parallel(ActorInterval(self, 'Fb_jump'), Sequence(Func(self.setChatAbsolute, random.choice(TTLocalizer.JumpBossTaunts[self.dna.dept]), CFSpeech | CFTimeout), SoundInterval(self.swishSfx, duration=1.1, node=self), SoundInterval(self.boomSfx, duration=1.9)), Sequence(Wait(1.21), Func(self.announceAreaAttack)))
|
||||
if self.twoFaced:
|
||||
self.happy = 0
|
||||
else:
|
||||
|
|
|
@ -23,6 +23,7 @@ from direct.controls.ControlManager import CollisionHandlerRayStart
|
|||
from direct.showbase import PythonUtil
|
||||
import random
|
||||
from otp.nametag import NametagGlobals
|
||||
from otp.nametag.NametagConstants import *
|
||||
|
||||
class DistributedBossCog(DistributedAvatar.DistributedAvatar, BossCog.BossCog):
|
||||
notify = DirectNotifyGlobal.directNotify.newCategory('DistributedBossCog')
|
||||
|
@ -921,7 +922,7 @@ class DistributedBossCog(DistributedAvatar.DistributedAvatar, BossCog.BossCog):
|
|||
extraAnim = Sequence()
|
||||
if attackCode == ToontownGlobals.BossCogSlowDirectedAttack:
|
||||
extraAnim = ActorInterval(self, neutral)
|
||||
seq = Sequence(ParallelEndTogether(self.pelvis.hprInterval(1, VBase3(toToonH, 0, 0)), neutral1Anim), extraAnim, Parallel(Sequence(Wait(0.19), gearTrack, Func(gearRoot.detachNode), self.pelvis.hprInterval(0.2, VBase3(0, 0, 0))), Sequence(throwAnim, neutral2Anim)))
|
||||
seq = Sequence(ParallelEndTogether(self.pelvis.hprInterval(1, VBase3(toToonH, 0, 0)), neutral1Anim), extraAnim, Parallel(Sequence(Wait(0.19), gearTrack, Func(gearRoot.detachNode), self.pelvis.hprInterval(0.2, VBase3(0, 0, 0))), Sequence(Func(self.setChatAbsolute, random.choice(TTLocalizer.DirectedAttackBossTaunts[self.dna.dept]) % {'toon': toon.getName()}, CFSpeech | CFTimeout), throwAnim, neutral2Anim)))
|
||||
self.doAnimate(seq, now=1, raised=1)
|
||||
|
||||
def announceAreaAttack(self):
|
||||
|
|
|
@ -380,6 +380,7 @@ class DistributedSellbotBoss(DistributedBossCog.DistributedBossCog, FSM.FSM):
|
|||
battlePos = Point3(ToontownGlobals.SellbotBossBattleTwoPosHpr[0], ToontownGlobals.SellbotBossBattleTwoPosHpr[1], ToontownGlobals.SellbotBossBattleTwoPosHpr[2])
|
||||
battleHpr = VBase3(ToontownGlobals.SellbotBossBattleTwoPosHpr[3], ToontownGlobals.SellbotBossBattleTwoPosHpr[4], ToontownGlobals.SellbotBossBattleTwoPosHpr[5])
|
||||
bossTrack = Sequence()
|
||||
bossTrack.append(Func(self.setChatAbsolute, TTLocalizer.VPRampMessage, CFSpeech | CFTimeout))
|
||||
bossTrack.append(Func(self.getGeomNode().setH, 180))
|
||||
bossTrack.append(Func(self.loop, 'Fb_neutral'))
|
||||
track, hpr = self.rollBossToPoint(startPos, None, topRampPos, None, 0)
|
||||
|
@ -970,6 +971,7 @@ class DistributedSellbotBoss(DistributedBossCog.DistributedBossCog, FSM.FSM):
|
|||
self.happy = 0
|
||||
self.raised = 0
|
||||
self.forward = 1
|
||||
self.setChatAbsolute(TTLocalizer.VPDeathTaunt, CFSpeech | CFTimeout)
|
||||
self.doAnimate('Fb_fall', now=1)
|
||||
self.acceptOnce(self.animDoneEvent, self.__continueVictory)
|
||||
base.playMusic(self.battleThreeMusic, looping=1, volume=0.9, time=self.battleThreeMusicTime)
|
||||
|
|
|
@ -8524,6 +8524,43 @@ BossLocations = {
|
|||
'm': 'Cashbot Treasury Vault',
|
||||
's': 'Sellbot Towers\nRooftop'
|
||||
}
|
||||
SendCogBossTaunts = {
|
||||
's': [
|
||||
"We're going door to door to give you an dedious offer.",
|
||||
"It's time for your estimated cost.",
|
||||
'You toons never learn when to snatch up a great deal.',
|
||||
"Call now and we'll reduce your laff, absolutely free.",
|
||||
'Sell, sell, sell!',
|
||||
'Let us Sellbots give you a helping hand.',
|
||||
'The deal has only just begun.',
|
||||
'Going sad already? How about we settle a retirement plan.',
|
||||
'Get them! Get them all!'
|
||||
]
|
||||
}
|
||||
VPRampMessage = "I don't have time for this, I'm late for my meeting!"
|
||||
VPDeathTaunt = "WAAAH! YOU HAVEN'T SEEN THE LAST OF ME!"
|
||||
DirectedAttackBossTaunts = {
|
||||
's': [
|
||||
'Have a free sample!',
|
||||
'I see you over there!',
|
||||
'My products beat out all of Toontown!',
|
||||
"Don't think I skipped you, %(toon)s!"
|
||||
]
|
||||
}
|
||||
VPSpinMessages = [
|
||||
"Let's get these ideas going!",
|
||||
"I wouldn't get too close. My patents protect these gears.",
|
||||
'Why worry about problems when you can shake them off?',
|
||||
"I may be old, but I'm still reliable."
|
||||
]
|
||||
JumpBossTaunts = {
|
||||
's': [
|
||||
'STOP!',
|
||||
'Pay attention to my pitch!',
|
||||
'This is a waste of my time!',
|
||||
'Time to send you back to the playground!'
|
||||
]
|
||||
}
|
||||
BossTaunts = [
|
||||
"You can't stop this. We'll just keep on coming.",
|
||||
'Break time is over.',
|
||||
|
|
Loading…
Reference in a new issue