Calling doodles now does the call animation

This commit is contained in:
John 2015-09-04 11:25:47 +03:00
parent ec6ed0a35d
commit 17b459b00e
3 changed files with 29 additions and 39 deletions

View file

@ -40,7 +40,7 @@ SOUND = SOUND_TRACK
THROW = THROW_TRACK THROW = THROW_TRACK
SQUIRT = SQUIRT_TRACK SQUIRT = SQUIRT_TRACK
DROP = DROP_TRACK DROP = DROP_TRACK
TOON_ATTACK_TIME = 12.0 TOON_ATTACK_TIME = 14.0
SUIT_ATTACK_TIME = 12.0 SUIT_ATTACK_TIME = 12.0
TOON_TRAP_DELAY = 0.8 TOON_TRAP_DELAY = 0.8
TOON_SOUND_DELAY = 1.0 TOON_SOUND_DELAY = 1.0
@ -57,10 +57,7 @@ TOON_FIRE_SUIT_DELAY = 1.0
REWARD_TIMEOUT = 120 REWARD_TIMEOUT = 120
FLOOR_REWARD_TIMEOUT = 4 FLOOR_REWARD_TIMEOUT = 4
BUILDING_REWARD_TIMEOUT = 300 BUILDING_REWARD_TIMEOUT = 300
try: CLIENT_INPUT_TIMEOUT = config.GetFloat('battle-input-timeout', TTLocalizer.BBbattleInputTimeout)
CLIENT_INPUT_TIMEOUT = base.config.GetFloat('battle-input-timeout', TTLocalizer.BBbattleInputTimeout)
except:
CLIENT_INPUT_TIMEOUT = simbase.config.GetFloat('battle-input-timeout', TTLocalizer.BBbattleInputTimeout)
def levelAffectsGroup(track, level): def levelAffectsGroup(track, level):
return attackAffectsGroup(track, level) return attackAffectsGroup(track, level)

View file

@ -32,18 +32,14 @@ def doPetSOSs(PetSOSs):
return (track, camTrack) return (track, camTrack)
def __doPetSOS(sos):
return __healJuggle(sos)
def __healToon(toon, hp, gender, callerToonId, ineffective = 0): def __healToon(toon, hp, gender, callerToonId, ineffective = 0):
notify.debug('healToon() - toon: %d hp: %d ineffective: %d' % (toon.doId, hp, ineffective)) notify.debug('healToon() - toon: %d hp: %d ineffective: %d' % (toon.doId, hp, ineffective))
nolaughter = 0 noLaughter = 0
if ineffective == 1: if ineffective == 1:
if callerToonId == toon.doId: if callerToonId == toon.doId:
laughter = TTLocalizer.MoviePetSOSTrickFail laughter = TTLocalizer.MoviePetSOSTrickFail
else: else:
nolaughter = 1 noLaughter = 1
else: else:
maxDam = ToontownBattleGlobals.AvPropDamage[0][1][0][1] maxDam = ToontownBattleGlobals.AvPropDamage[0][1][0][1]
if callerToonId == toon.doId: if callerToonId == toon.doId:
@ -55,23 +51,33 @@ def __healToon(toon, hp, gender, callerToonId, ineffective = 0):
laughter = random.choice(TTLocalizer.MovieHealLaughterHits2) laughter = random.choice(TTLocalizer.MovieHealLaughterHits2)
else: else:
laughter = random.choice(TTLocalizer.MovieHealLaughterHits1) laughter = random.choice(TTLocalizer.MovieHealLaughterHits1)
if nolaughter == 0: if not noLaughter:
toon.setChatAbsolute(laughter, CFSpeech | CFTimeout) toon.setChatAbsolute(laughter, CFSpeech | CFTimeout)
if hp > 0 and toon.hp != None: if hp > 0 and toon.hp != None:
toon.toonUp(hp) toon.toonUp(hp)
else: else:
notify.debug('__healToon() - toon: %d hp: %d' % (toon.doId, hp)) notify.debug('__healToon() - toon: %d hp: %d' % (toon.doId, hp))
return
def __teleportIn(attack, pet, pos = Point3(0, 0, 0), hpr = Vec3(180.0, 0.0, 0.0)): def __teleportIn(attack, pet, pos = Point3(0, 0, 0), hpr = Vec3(180.0, 0.0, 0.0)):
a = Func(pet.reparentTo, attack['battle']) callSfx = loader.loadSfx('phase_5.5/audio/sfx/call_pet.ogg')
b = Func(pet.setPos, pos) toon = attack['toon']
c = Func(pet.setHpr, hpr) seq = Sequence()
d = Func(pet.pose, 'reappear', 0)
e = pet.getTeleportInTrack() seq.append(Func(toon.clearChat))
g = Func(pet.loop, 'neutral') seq.append(Func(callSfx.play))
return Sequence(a, b, c, d, e, g) seq.append(ActorInterval(toon, 'callPet'))
seq.append(Func(toon.loop, 'neutral'))
seq.append(Func(pet.reparentTo, attack['battle']))
seq.append(Func(pet.setPos, pos))
seq.append(Func(pet.setHpr, hpr))
seq.append(Func(pet.pose, 'reappear', 0))
seq.append(pet.getTeleportInTrack())
seq.append(Func(toon.setSC, 21200 + attack['level']))
seq.append(Func(pet.loop, 'neutral'))
seq.append(Func(loader.unloadSfx, callSfx))
return seq
def __teleportOut(attack, pet): def __teleportOut(attack, pet):
@ -81,14 +87,7 @@ def __teleportOut(attack, pet):
return Sequence(a, c) return Sequence(a, c)
def __doPet(attack, level, hp): def __doPetSOS(heal):
track = __doSprinkle(attack, 'suits', hp)
pbpText = attack['playByPlayText']
pbpTrack = pbpText.getShowInterval(TTLocalizer.MovieNPCSOSCogsMiss, track.getDuration())
return (track, pbpTrack)
def __healJuggle(heal):
petProxyId = heal['petId'] petProxyId = heal['petId']
pet = Pet.Pet() pet = Pet.Pet()
gender = 0 gender = 0
@ -100,16 +99,8 @@ def __healJuggle(heal):
pet.setName(petProxy.petName) pet.setName(petProxy.petName)
gender = petProxy.gender gender = petProxy.gender
else: else:
pet.setDNA([-1, pet.setDNA([-1, 0, 0, -1, 2, 0, 4, 0, 1])
0, pet.setName(TTLocalizer.DefaultDoodleName)
0,
-1,
2,
0,
4,
0,
1])
pet.setName('Smiley')
targets = heal['target'] targets = heal['target']
ineffective = heal['sidestep'] ineffective = heal['sidestep']
level = heal['level'] level = heal['level']

View file

@ -2208,7 +2208,7 @@ MovieNPCSOSThrow = 'Throw'
MovieNPCSOSSquirt = 'Squirt' MovieNPCSOSSquirt = 'Squirt'
MovieNPCSOSDrop = 'Drop' MovieNPCSOSDrop = 'Drop'
MovieNPCSOSAll = 'All' MovieNPCSOSAll = 'All'
MoviePetSOSTrickFail = 'Sigh' MoviePetSOSTrickFail = 'Sigh...'
MoviePetSOSTrickSucceedBoy = 'Good boy!' MoviePetSOSTrickSucceedBoy = 'Good boy!'
MoviePetSOSTrickSucceedGirl = 'Good girl!' MoviePetSOSTrickSucceedGirl = 'Good girl!'
MovieSuitCancelled = 'CANCELLED\nCANCELLED\nCANCELLED' MovieSuitCancelled = 'CANCELLED\nCANCELLED\nCANCELLED'
@ -8762,6 +8762,8 @@ ClothesGUICount = '%s/%s'
FpsMeterLabelOn = 'The frame rate meter is on.' FpsMeterLabelOn = 'The frame rate meter is on.'
FpsMeterLabelOff = 'The frame rate meter is off.' FpsMeterLabelOff = 'The frame rate meter is off.'
DefaultDoodleName = 'Smiley'
Blacklist = [ Blacklist = [
"$1ut", "$1ut",
"$h1t", "$h1t",