From fb24918dd6c156d818857a6fe2c7edd598830d5b Mon Sep 17 00:00:00 2001 From: Samir Naik Date: Wed, 27 Oct 2004 01:45:30 +0000 Subject: [PATCH] set ship.worldVelocity to zero when cleaning up physics --- direct/src/controls/ShipPilot.py | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/direct/src/controls/ShipPilot.py b/direct/src/controls/ShipPilot.py index ad530aef62..f3b269667e 100755 --- a/direct/src/controls/ShipPilot.py +++ b/direct/src/controls/ShipPilot.py @@ -62,6 +62,7 @@ class ShipPilot(PhysicsWalker.PhysicsWalker): self.isAirborne = 0 self.highMark = 0 + self.ship = None def setWalkSpeed(self, forward, jump, reverse, rotate): assert(self.debugPrint("setWalkSpeed()")) @@ -75,13 +76,14 @@ class ShipPilot(PhysicsWalker.PhysicsWalker): return (self.__speed, self.__rotationSpeed) def setAvatar(self, ship): - self.ship = ship if ship is None: self.takedownPhysics() + self.ship = None else: #self.setupShip() print "setAvatar, wallbitmask = %s" % self.wallBitmask self.setupPhysics(ship) + self.ship = ship #*# Debug: if not hasattr(ship, "acceleration"): @@ -221,7 +223,9 @@ class ShipPilot(PhysicsWalker.PhysicsWalker): del self.phys for i in self.nodes: i.removeNode() - + if self.ship != None: + self.ship.worldVelocity = Vec3.zero() + def setupPhysics(self, avatarNodePath): assert(self.debugPrint("setupPhysics()")) if avatarNodePath is None: