def __init__(self, parent, model): PhysicalNode.__init__(self, parent, model, "scenario") self.addCollisionGeometry(model) self._forces = {} self._angularVelocity = 0.01
def __init__(self, parent, model): PhysicalNode.__init__(self, parent, model, "equismo") self.mass = 500.0 self.addCollisionSphere(1.2) self._impulseIncrement = 4.0 self._speedLimit = 5.0 self._turningSpeed = 0.2 self._hit = False self._currentDirection = Vec3.forward() self._currentAngle = 0 self.setScale(0.8) # Little "hack" to fix orientation # Seems that the model has its eyes in the back?! self.actor.setH(180) #----------------------------------------------------------------------- # KeyboardEventHandler initialization #----------------------------------------------------------------------- self.keys = dict.fromkeys("left right up down".split(), 0) set_key = self.keys.__setitem__ self.bindings = ( ("w", set_key, ["up", 1]), ("a", set_key, ["left", 1]), ("s", set_key, ["down", 1]), ("d", set_key, ["right", 1]), ("w-up", set_key, ["up", 0]), ("a-up", set_key, ["left", 0]), ("s-up", set_key, ["down", 0]), ("d-up", set_key, ["right", 0]), ("arrow_up", set_key, ["up", 1]), ("arrow_left", set_key, ["left", 1]), ("arrow_down", set_key, ["down", 1]), ("arrow_right", set_key, ["right", 1]), ("arrow_up-up", set_key, ["up", 0]), ("arrow_left-up", set_key, ["left", 0]), ("arrow_down-up", set_key, ["down", 0]), ("arrow_right-up", set_key, ["right", 0]), )
def __init__(self, parent, model, name, ai_world, mass, movt_force, max_force): PhysicalNode.__init__(self, parent, model, name) self.mass = mass self.addCollisionSphere(1.25) self.toggleWalkAnimation() #----------------------------------------------------------------------- # Initialize Artificial Intelligence #----------------------------------------------------------------------- self.ai_char = AICharacter("ai_%s" % name, self.actor, mass, movt_force, max_force) ai_world.addAiChar(self.ai_char) aiBehaviors = self.ai_char.getAiBehaviors() equismo = base.gameState.currentState.objects['equismo'] aiBehaviors.pursue(equismo.actor)