diff --git a/direct/src/controls/GravityWalker.py b/direct/src/controls/GravityWalker.py index 5552168860..7c232e55f4 100755 --- a/direct/src/controls/GravityWalker.py +++ b/direct/src/controls/GravityWalker.py @@ -179,9 +179,9 @@ class GravityWalker(DirectObject.DirectObject): # a higher or lower value depending on whether you want an avatar # that is outside of the world to step up to the floor when they # get under valid floor: - cRay = CollisionRay(0.0, 0.0, CollisionHandlerRayStart, 0.0, 0.0, -1.0) + self.cRay = CollisionRay(0.0, 0.0, CollisionHandlerRayStart, 0.0, 0.0, -1.0) cRayNode = CollisionNode('GW.cRayNode') - cRayNode.addSolid(cRay) + cRayNode.addSolid(self.cRay) self.cRayNodePath = self.avatarNodePath.attachNewNode(cRayNode) cRayNode.setFromCollideMask(bitmask) cRayNode.setIntoCollideMask(BitMask32.allOff()) @@ -697,8 +697,4 @@ class GravityWalker(DirectObject.DirectObject): # There are sometimes issues if the collision ray height is # so tall that it collides with multiple levels of floors. def setCollisionRayHeight(self, height): - oldNode = self.avatarNodePath.getNode(0) - cRayNode = oldNode.getChild(2) - cRayNode.removeSolid(0) - cRay = CollisionRay(0.0, 0.0, height, 0.0, 0.0, -1.0) - cRayNode.addSolid(cRay) \ No newline at end of file + self.cRay.setOrigin(0.0, 0.0, height)