i have two timers, one that listens for certain keyboard input, and another that makes a person walk around in my world. I want the first one to be always on, but is there a way to make the second one start after a certain elapsed time, say 5 seconds or so? here's what my timer function looks like:
Code:
def mytimer(num):
if num == 0:
brake = 0
if viz.iskeydown(viz.KEY_TAB):
brake = 1
if viz.iskeydown(viz.KEY_UP) and brake != 1:
view.move(0,0,MOVE_SPEED*viz.elapsed(),viz.BODY_ORI)
car2.translate(0,0,MOVE_SPEED*viz.elapsed(),viz.RELATIVE)
elif viz.iskeydown(viz.KEY_DOWN):
view.move(0,0,-MOVE_SPEED*viz.elapsed(),viz.BODY_ORI)
car2.translate(0,0,-MOVE_SPEED*viz.elapsed(),viz.RELATIVE)
if viz.iskeydown(viz.KEY_RIGHT):
view.rotate(0,1,0,TURN_SPEED*viz.elapsed(),viz.BODY_ORI,viz.RELATIVE_WORLD)
elif viz.iskeydown(viz.KEY_LEFT):
view.rotate(0,1,0,-TURN_SPEED*viz.elapsed(),viz.BODY_ORI,viz.RELATIVE_WORLD)
updatecar()
# puts the walker on the screen
if num == 1:
walker.visible(viz.ON)
global walkerX, walkerY, walkerZ, walkerAngle
walker.rotate(0,1,0,90)
# calculate components of motion w.r.t X and Z axis
walkerZ = walkerZ - 0.00002 * math.sin(math.radians(walkerAngle))
walkerX = walkerX + 0.00002 * math.cos(math.radians(walkerAngle))
# move the walker
walker.translate(walkerX,walkerY,walkerZ,viz.RELATIVE)
viz.callback(viz.TIMER_EVENT,mytimer)
viz.starttimer(0,0.01,viz.FOREVER)
viz.starttimer(1,0,viz.PERPETUAL)