I'm fairly new to Python and Vizard, so the answer to this may be strikingly obvious to some.
I'm trying to stop my pedestrian avatar from walking to a final location as soon as I enter within the bounds of its proximity sensor.
My current code is as follows You can assume I've done all necessary module imports:
Code:
def set_avatar_proximity_sensor():
global manager, sensor
manager = vizproximity.Manager()
manager.setDebug(viz.ON)
target = vizproximity.Target(Me)
manager.addTarget(target)
sensor = vizproximity.addBoundingSphereSensor(pedestrian,scale=2)
manager.addSensor(sensor)
vizact.onkeydown('d',manager.setDebug,viz.TOGGLE)
def pedestrian_actions():
runAction = vizact.walkTo( [-12, 0, 3] )
pedestrian.addAction (runAction)
def enter_proximity(e):
runAction = vizact.walkTo( [-12, 0, 3] )
pedestrian.addAction (runAction)
set_avatar_proximity_sensor()
vizact.ontimer(0, pedestrian_actions)
manager.onEnter(sensor, enter_proximity)
So, right now, the enter_proximity function is obeyed only after the pedestrian_action function has ended. How do I interrupt the pedestrian_action function however?