Poodletooth-iLand/otp/level/AmbientSound.py
John 35b646c4e6 Revert "Spring cleaning"
This reverts commit 1e4bad8c6b.
2015-06-16 20:26:44 +03:00

33 lines
No EOL
979 B
Python
Executable file

from direct.interval.IntervalGlobal import *
import BasicEntities
import random
class AmbientSound(BasicEntities.NodePathEntity):
def __init__(self, level, entId):
BasicEntities.NodePathEntity.__init__(self, level, entId)
self.initSound()
def destroy(self):
self.destroySound()
BasicEntities.NodePathEntity.destroy(self)
def initSound(self):
if not self.enabled:
return
if self.soundPath == '':
return
self.sound = base.loadSfx(self.soundPath)
if self.sound is None:
return
self.soundIval = SoundInterval(self.sound, node=self, volume=self.volume)
self.soundIval.loop()
self.soundIval.setT(random.random() * self.sound.length())
return
def destroySound(self):
if hasattr(self, 'soundIval'):
self.soundIval.pause()
del self.soundIval
if hasattr(self, 'sound'):
del self.sound