diff --git a/toontown/battle/MovieLure.py b/toontown/battle/MovieLure.py index f94932a1..6bec5aed 100755 --- a/toontown/battle/MovieLure.py +++ b/toontown/battle/MovieLure.py @@ -11,6 +11,7 @@ from toontown.toonbase import ToontownBattleGlobals import BattleParticles import BattleProps import MovieNPCSOS +import random notify = DirectNotifyGlobal.directNotify.newCategory('MovieLures') def safeWrtReparentTo(nodePath, parent): @@ -379,7 +380,7 @@ def __createSuitDamageTrack(battle, suit, hp, lure, trapProp): explosionTrack = Sequence(Wait(2.3), createTNTExplosionTrack(battle, trapProp=trapProp, relativeTo=parent)) suitTrack = Sequence(ActorInterval(suit, 'flail', duration=0.7), ActorInterval(suit, 'flail', startTime=0.7, endTime=0.0), ActorInterval(suit, 'neutral', duration=0.4), ActorInterval(suit, 'flail', startTime=0.6, endTime=0.7), Wait(0.4), ActorInterval(suit, 'slip-forward', startTime=2.48, duration=0.1), Func(battle.movie.needRestoreColor), Func(suit.setColorScale, Vec4(0.2, 0.2, 0.2, 1)), Func(trapProp.reparentTo, hidden), ActorInterval(suit, 'slip-forward', startTime=2.58), Func(suit.clearColorScale), Func(trapProp.sparksEffect.cleanup), Func(battle.movie.clearRestoreColor)) damageTrack = Sequence(Wait(2.3), Func(suit.showHpText, -hp, openEnded=0), Func(suit.updateHealthBar, hp)) - explosionSound = base.loadSfx('phase_3.5/audio/sfx/ENC_cogfall_apart.ogg') + explosionSound = base.loadSfx('phase_3.5/audio/sfx/ENC_cogfall_apart_%s.ogg' % random.randint(1, 6)) soundTrack = Sequence(SoundInterval(globalBattleSoundCache.getSound('TL_dynamite.ogg'), duration=2.0, node=suit), SoundInterval(explosionSound, duration=0.6, node=suit)) result.append(Parallel(tntTrack, suitTrack, damageTrack, explosionTrack, soundTrack)) elif trapName == 'traintrack': diff --git a/toontown/battle/MovieUtil.py b/toontown/battle/MovieUtil.py index a8f2e0ef..9d471241 100755 --- a/toontown/battle/MovieUtil.py +++ b/toontown/battle/MovieUtil.py @@ -267,7 +267,7 @@ def createSuitReviveTrack(suit, toon, battle, npcs = []): suitTrack.append(Func(suit.loop, 'neutral')) suitTrack.append(Func(messenger.send, suit.uniqueName('hpChange'))) spinningSound = base.loadSfx('phase_3.5/audio/sfx/Cog_Death.ogg') - deathSound = base.loadSfx('phase_3.5/audio/sfx/ENC_cogfall_apart.ogg') + deathSound = base.loadSfx('phase_3.5/audio/sfx/ENC_cogfall_apart_%s.ogg' % random.randint(1, 6)) deathSoundTrack = Sequence(Wait(0.8), SoundInterval(spinningSound, duration=1.2, startTime=1.5, volume=0.2), SoundInterval(spinningSound, duration=3.0, startTime=0.6, volume=0.8), SoundInterval(deathSound, volume=0.32)) BattleParticles.loadParticles() smallGears = BattleParticles.createParticleEffect(file='gearExplosionSmall') @@ -312,7 +312,7 @@ def createSuitDeathTrack(suit, toon, battle, npcs = []): suitTrack.append(Func(removeDeathSuit, suit, deathSuit, name='remove-death-suit')) suitTrack.append(Func(notify.debug, 'after removeDeathSuit')) spinningSound = base.loadSfx('phase_3.5/audio/sfx/Cog_Death.ogg') - deathSound = base.loadSfx('phase_3.5/audio/sfx/ENC_cogfall_apart.ogg') + deathSound = base.loadSfx('phase_3.5/audio/sfx/ENC_cogfall_apart_%s.ogg' % random.randint(1, 6)) deathSoundTrack = Sequence(Wait(0.8), SoundInterval(spinningSound, duration=1.2, startTime=1.5, volume=0.2), SoundInterval(spinningSound, duration=3.0, startTime=0.6, volume=0.8), SoundInterval(deathSound, volume=0.32)) BattleParticles.loadParticles() smallGears = BattleParticles.createParticleEffect(file='gearExplosionSmall') diff --git a/toontown/cogdominium/CogdoMazeGameGlobals.py b/toontown/cogdominium/CogdoMazeGameGlobals.py index 638f2736..53da6449 100755 --- a/toontown/cogdominium/CogdoMazeGameGlobals.py +++ b/toontown/cogdominium/CogdoMazeGameGlobals.py @@ -180,7 +180,7 @@ SfxFiles = {'toonHitByDrop': 'phase_5/audio/sfx/tt_s_ara_cmg_toonHit.ogg', 'throw': 'phase_3.5/audio/sfx/AA_pie_throw_only.ogg', 'splat': 'phase_5/audio/sfx/SA_watercooler_spray_only.ogg', 'cogSpin': 'phase_3.5/audio/sfx/Cog_Death.ogg', - 'cogDeath': 'phase_3.5/audio/sfx/ENC_cogfall_apart.ogg', + 'cogDeath': 'phase_3.5/audio/sfx/ENC_cogfall_apart_1.ogg', 'bossCogAngry': 'phase_5/audio/sfx/tt_s_ara_cmg_bossCogAngry.ogg', 'cogStomp': 'phase_5/audio/sfx/tt_s_ara_cmg_cogStomp.ogg', 'quake': 'phase_5/audio/sfx/tt_s_ara_cmg_groundquake.ogg', diff --git a/toontown/coghq/DistributedBanquetTable.py b/toontown/coghq/DistributedBanquetTable.py index 2d3ca4eb..fdb8d76c 100755 --- a/toontown/coghq/DistributedBanquetTable.py +++ b/toontown/coghq/DistributedBanquetTable.py @@ -374,7 +374,7 @@ class DistributedBanquetTable(DistributedObject.DistributedObject, FSM.FSM, Banq deathSuit = diner.getLoseActor() ival = Sequence(Func(self.notify.debug, 'before actorinterval sit-lose'), ActorInterval(diner, 'sit-lose'), Func(self.notify.debug, 'before deathSuit.setHpr'), Func(deathSuit.setHpr, diner.getHpr()), Func(self.notify.debug, 'before diner.hide'), Func(diner.hide), Func(self.notify.debug, 'before deathSuit.reparentTo'), Func(deathSuit.reparentTo, self.chairLocators[chairIndex]), Func(self.notify.debug, 'befor ActorInterval lose'), ActorInterval(deathSuit, 'lose', duration=MovieUtil.SUIT_LOSE_DURATION), Func(self.notify.debug, 'before remove deathsuit'), Func(removeDeathSuit, diner, deathSuit, name='remove-death-suit-%d-%d' % (chairIndex, self.index)), Func(self.notify.debug, 'diner.stash'), Func(diner.stash)) spinningSound = base.loadSfx('phase_3.5/audio/sfx/Cog_Death.ogg') - deathSound = base.loadSfx('phase_3.5/audio/sfx/ENC_cogfall_apart.ogg') + deathSound = base.loadSfx('phase_3.5/audio/sfx/ENC_cogfall_apart_%s.ogg' % random.randint(1, 6)) deathSoundTrack = Sequence(Wait(0.8), SoundInterval(spinningSound, duration=1.2, startTime=1.5, volume=0.2, node=deathSuit), SoundInterval(spinningSound, duration=3.0, startTime=0.6, volume=0.8, node=deathSuit), SoundInterval(deathSound, volume=0.32, node=deathSuit)) intervalName = 'dinerDie-%d-%d' % (self.index, chairIndex) deathIval = Parallel(ival, deathSoundTrack) diff --git a/toontown/minigame/TwoDEnemy.py b/toontown/minigame/TwoDEnemy.py index ad62545f..a311f917 100755 --- a/toontown/minigame/TwoDEnemy.py +++ b/toontown/minigame/TwoDEnemy.py @@ -11,7 +11,7 @@ from toontown.battle.BattleProps import * from toontown.battle import MovieUtil from toontown.battle import BattleParticles, BattleProps from direct.particles import ParticleEffect -import math +import math, random COLOR_RED = VBase4(1, 0, 0, 0.3) class TwoDEnemy(DirectObject): @@ -232,7 +232,7 @@ class TwoDEnemy(DirectObject): treasureSpawnPoint = Point3(self.suit.getX(), self.suit.getY(), self.suit.getZ() + self.suit.height / 2.0) gearPoint = Point3(0, 0, self.suit.height / 2.0 + 2.0) spinningSound = base.loadSfx('phase_3.5/audio/sfx/Cog_Death.ogg') - deathSound = base.loadSfx('phase_3.5/audio/sfx/ENC_cogfall_apart.ogg') + deathSound = base.loadSfx('phase_3.5/audio/sfx/ENC_cogfall_apart_%s.ogg' % random.randint(1, 6)) smallGears = BattleParticles.createParticleEffect(file='gearExplosionSmall') singleGear = BattleParticles.createParticleEffect('GearExplosion', numParticles=1) smallGearExplosion = BattleParticles.createParticleEffect('GearExplosion', numParticles=10) diff --git a/toontown/suit/BossCog.py b/toontown/suit/BossCog.py index a6007a71..a3d861a2 100755 --- a/toontown/suit/BossCog.py +++ b/toontown/suit/BossCog.py @@ -90,7 +90,7 @@ class BossCog(Avatar.Avatar): self.spinSfx = loader.loadSfx('phase_9/audio/sfx/CHQ_VP_spin.ogg') self.rainGearsSfx = loader.loadSfx('phase_9/audio/sfx/CHQ_VP_raining_gears.ogg') self.swishSfx = loader.loadSfx('phase_5/audio/sfx/General_throw_miss.ogg') - self.boomSfx = loader.loadSfx('phase_3.5/audio/sfx/ENC_cogfall_apart.ogg') + self.boomSfx = loader.loadSfx('phase_3.5/audio/sfx/ENC_cogfall_apart_%s.ogg' % random.randint(1, 6)) self.deathSfx = loader.loadSfx('phase_9/audio/sfx/CHQ_VP_big_death.ogg') self.upSfx = loader.loadSfx('phase_9/audio/sfx/CHQ_VP_raise_up.ogg') self.downSfx = loader.loadSfx('phase_9/audio/sfx/CHQ_VP_collapse.ogg') diff --git a/toontown/suit/DistributedCashbotBoss.py b/toontown/suit/DistributedCashbotBoss.py index c990a973..2b89025c 100755 --- a/toontown/suit/DistributedCashbotBoss.py +++ b/toontown/suit/DistributedCashbotBoss.py @@ -497,7 +497,7 @@ class DistributedCashbotBoss(DistributedBossCog.DistributedBossCog, FSM.FSM): car1 = loader.loadModel('phase_10/models/cogHQ/CashBotBoxCar') car2 = loader.loadModel('phase_10/models/cogHQ/CashBotTankCar') trainPassingSfx = base.loadSfx('phase_10/audio/sfx/CBHQ_TRAIN_pass.ogg') - boomSfx = loader.loadSfx('phase_3.5/audio/sfx/ENC_cogfall_apart.ogg') + boomSfx = loader.loadSfx('phase_3.5/audio/sfx/ENC_cogfall_apart_%s.ogg' % random.randint(1, 6)) rollThroughDoor = self.rollBossToPoint(fromPos=Point3(120, -280, 0), fromHpr=None, toPos=Point3(120, -250, 0), toHpr=None, reverse=0) rollTrack = Sequence(Func(self.getGeomNode().setH, 180), rollThroughDoor[0], Func(self.getGeomNode().setH, 0)) g = 80.0 / 300.0 diff --git a/toontown/suit/GoonDeath.py b/toontown/suit/GoonDeath.py index a48c1fec..6bd3198c 100755 --- a/toontown/suit/GoonDeath.py +++ b/toontown/suit/GoonDeath.py @@ -2,6 +2,7 @@ from direct.interval.IntervalGlobal import * from panda3d.core import * from direct.particles import ParticleEffect from toontown.battle import BattleParticles +import random def createExplosionTrack(parent, deathNode, scale): explosion = loader.loadModel('phase_3.5/models/props/explosion.bam') @@ -19,5 +20,5 @@ def createGoonExplosion(parent, explosionPoint, scale): explosion = createExplosionTrack(parent, deathNode, scale) smallGearExplosion = BattleParticles.createParticleEffect('GearExplosion', numParticles=10) bigGearExplosion = BattleParticles.createParticleEffect('WideGearExplosion', numParticles=30) - deathSound = base.loadSfx('phase_3.5/audio/sfx/ENC_cogfall_apart.ogg') + deathSound = base.loadSfx('phase_3.5/audio/sfx/ENC_cogfall_apart_%s.ogg' % random.randint(1, 6)) return Parallel(explosion, SoundInterval(deathSound), ParticleInterval(smallGearExplosion, deathNode, worldRelative=0, duration=4.3, cleanup=True), ParticleInterval(bigGearExplosion, deathNode, worldRelative=0, duration=1.0, cleanup=True), name='gears2MTrack')