*** empty log message ***

This commit is contained in:
Mike Goslin 2001-03-01 03:56:19 +00:00
parent e72fcc4a9a
commit 19158dfd98
3 changed files with 30 additions and 2 deletions

View File

@ -5,8 +5,6 @@ from IntervalGlobal import *
import Mopath import Mopath
import IntervalPlayer import IntervalPlayer
#AudioManager.spawnUpdate()
boat = loader.loadModel('models/directmodels/smiley') boat = loader.loadModel('models/directmodels/smiley')
boat.reparentTo(render) boat.reparentTo(render)

View File

@ -2,6 +2,8 @@
import Interval import Interval
import Track import Track
import ClockObject
import Task
class MultiTrack(Interval.Interval): class MultiTrack(Interval.Interval):
@ -21,6 +23,7 @@ class MultiTrack(Interval.Interval):
self.duration = self.getDuration() self.duration = self.getDuration()
self.startTime = 0.0 self.startTime = 0.0
self.type = Interval.PREVIOUS_END self.type = Interval.PREVIOUS_END
self.clock = ClockObject.ClockObject.getGlobalClock()
def getDuration(self): def getDuration(self):
""" getDuration() """ getDuration()
@ -42,3 +45,29 @@ class MultiTrack(Interval.Interval):
'MultiTrack.setT(): t = %f > duration' % t) 'MultiTrack.setT(): t = %f > duration' % t)
for track in self.tlist: for track in self.tlist:
track.setT(t) track.setT(t)
def play(self, t0=0.0, duration=0.0):
""" play(t0, duration)
"""
self.startT = self.clock.getFrameTime() - t0
if (duration == 0.0):
self.playDuration = self.duration
else:
self.playDuration = duration
taskMgr.spawnMethodNamed(self.__playTask, self.name + '-play')
def stop(self):
""" stop()
"""
taskMgr.removeMethodsNamed(self.name + '-play')
def __playTask(self, task):
""" __playTask(task)
"""
t = self.clock.getFrameTime()
te = t - self.startT
if (te <= self.playDuration):
self.setT(te)
return Task.cont
else:
return Task.done

View File

@ -32,6 +32,7 @@ class SoundInterval(Interval.Interval):
if (t > self.duration): if (t > self.duration):
if (self.isPlaying == 1): if (self.isPlaying == 1):
AudioManager.stop(self.sound) AudioManager.stop(self.sound)
self.isPlaying = 0
return return
assert(t >= 0) assert(t >= 0)
if (t == 0): if (t == 0):